diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 895871decf..ffb65dcd34 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -17,4 +17,4 @@ spellcheck: fixed a few typos experiment: added an experimental thingy /:cl: -[]: # (Please add a short description of why you think these changes would benefit the game. If you can't justify it in words, it might not be worth adding:) +[why]: # (Please add a short description [on the next line] of why you think these changes would benefit the game. If you can't justify it in words, it might not be worth adding:) diff --git a/.gitignore b/.gitignore index e02ec4c1f0..f0dec2981e 100644 --- a/.gitignore +++ b/.gitignore @@ -185,3 +185,10 @@ Temporary Items .apdisk *.before + +#Sublime +*.sublime-project +*.sublime-workspace + +#Visual studio stuff +*.vscode/* diff --git a/.travis.yml b/.travis.yml index 73732e3083..cc507814c9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,7 +20,6 @@ cache: - $HOME/BYOND-${BYOND_MAJOR}.${BYOND_MINOR} - addons: apt: packages: diff --git a/README.md b/README.md index 83a226ffef..3e75ca8252 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,6 @@ ##/tg/station v1.0.1 -[![Build Status](https://travis-ci.org/tgstation/tgstation.png)](https://travis-ci.org/tgstation/tgstation) - +[![Build Status](https://travis-ci.org/tgstation/tgstation.png)](https://travis-ci.org/tgstation/tgstation) [![Krihelimeter](http://www.krihelinator.xyz/badge/tgstation/tgstation)](http://www.krihelinator.xyz) **Website:** http://www.tgstation13.org
**Code:** https://github.com/tgstation/tgstation
@@ -86,19 +85,18 @@ the new version. ##MAPS -/tg/station currently comes equipped with seven maps. +/tg/station currently comes equipped with five maps. * [tgstation2 (default)](http://tgstation13.org/wiki/Boxstation) * [MetaStation](https://tgstation13.org/wiki/MetaStation) -* [BirdStation](https://tgstation13.org/wiki/BirdStation) * [DeltaStation](https://tgstation13.org/wiki/DeltaStation) * [OmegaStation](https://tgstation13.org/wiki/OmegaStation) * [PubbyStation](https://tgstation13.org/wiki/PubbyStation) -All maps have their own code file that is in the base of the _maps directory. Instead of loading the map directly we instead use a code file to include the map and then include any other code changes that are needed for it. Follow this guideline when adding your own map, to your fork, for easy compatibility. +All maps have their own code file that is in the base of the _maps directory. Maps are loaded dynamically when the game starts. Follow this guideline when adding your own map, to your fork, for easy compatibility. -If you want to load a different map, just open the corresponding map's code file in Dream Maker, make sure all of the other map code files are unticked in the file tree, in the left side of the screen, and then make sure the map code file you want is ticked. +The map that will be loaded for the upcoming round is determined by reading data/next_map.json, which is a copy of the json files found in the _maps tree. If this file does not exist, the default map from config/maps.txt will be loaded. Failing that, tgstation2 will be loaded. If you want to set a specific map to load next round you can use the Change Map verb in game before restarting the server or copy a json from _maps to data/next_map.json before starting the server. Also, for debugging purposes, ticking a corresponding map's code file in Dream Maker will force that map to load every round. If you are hosting a server, and want randomly picked maps to be played each round, you can enable map rotation in [config.txt](config/config.txt) and then set the maps to be picked in the [maps.txt](config/maps.txt) file. diff --git a/SQL/database_changelog.txt b/SQL/database_changelog.txt index 4c4638295b..c34c6b694b 100644 --- a/SQL/database_changelog.txt +++ b/SQL/database_changelog.txt @@ -1,3 +1,15 @@ +10 March 2017, by Jordie0608 + +Modified table 'death', adding the columns 'toxloss', 'cloneloss', and 'staminaloss' and table 'legacy_population', adding the columns 'server_ip' and 'server_port'. + +ALTER TABLE `feedback`.`death` ADD COLUMN `toxloss` SMALLINT(5) UNSIGNED NOT NULL AFTER `oxyloss`, ADD COLUMN `cloneloss` SMALLINT(5) UNSIGNED NOT NULL AFTER `toxloss`, ADD COLUMN `staminaloss` SMALLINT(5) UNSIGNED NOT NULL AFTER `cloneloss`; + +ALTER TABLE `feedback`.`legacy_population` ADD COLUMN `server_ip` INT(10) UNSIGNED NOT NULL AFTER `time`, ADD COLUMN `server_port` SMALLINT(5) UNSIGNED NOT NULL AFTER `server_ip`; + +Remember to add a prefix to the table name if you use them. + +---------------------------------------------------- + 19 February 2017, by Jordie0608 Optimised and indexed significant portions of the schema. diff --git a/SQL/optimisations_2017-02-19.sql b/SQL/optimisations_2017-02-19.sql index bcfd102801..674cbcf9c6 100644 --- a/SQL/optimisations_2017-02-19.sql +++ b/SQL/optimisations_2017-02-19.sql @@ -11,6 +11,28 @@ UPDATE `[database]`.`[table]` SET `[column]` = LEAST(`[column]`, [max column siz To truncate a text field you would have to use SUBSTRING(), however I don't suggest you truncate any text fields. If you wish to instead preserve this data you will need to modify the schema and queries to accomodate. +Additionally, you may encounter the error "Error Code: 1411. Incorrect string value: '[query]' for function inet_aton". +This is due to a bug with the default sql_mode in MySQL version 5.7, wherein a value of '' cannot be passed to INET_ATON() without error, see here for reference: https://bugs.mysql.com/bug.php?id=82280 +The INET_ATON() function inteprets any abnormal data as being '', examples are: +' 127.0.0.1' - contains a whitespace character such as space, tab or newline. +'127.a.$,1' - contains non-numeric characters +'300.0.0.1' - ipv4 octets must be within a range of 0 to 255 +Note that '127.0.1' and '127.0..1' are both valid data formats but will not equate to the correct ip address. + +If you get this error there are steps you can take to deal with the invalid data: +To get a list of all unique fields that aren't valid ipv4 addresses, run the query: +SELECT DISTINCT [column] FROM [table] WHERE [column] NOT REGEXP '^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$' +Note this will only retrieve the first 1000 results, if you want more append to the query: +LIMIT 0, [max result] +Now inspect your results for any data that is invalid and correct them. +If you prefer, you can also automatically replace invalid data with 0 using a similar query: +UPDATE [table] SET [column] = '0' WHERE [column] NOT REGEXP '^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$' +This will replace all invalid data, even data that could potentially be corrected. +Finally, per the bug report, you can have MySQL ignore the errors and instead produce warnings while continuing with the query. +To do so, run the query: +SET @@sql_mode='' +Do not use this method unless you are sure about it; This setting will persist until your MySQL server is restarted, potentially affecting the data integrity of this and future queries. + Take note some columns have been renamed, removed or changed type. Any services relying on these columns will have to be updated per changes. ----------------------------------------------------*/ @@ -30,11 +52,11 @@ ALTER TABLE `feedback`.`ban` , ADD COLUMN `unbanned_ipTEMP` INT UNSIGNED NULL DEFAULT NULL AFTER `unbanned_ip`; SET SQL_SAFE_UPDATES = 0; UPDATE `feedback`.`ban` - SET `server_ip` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`serverip`, ':', 1)), ''), INET_ATON('0.0.0.0')) + SET `server_ip` = INET_ATON(SUBSTRING_INDEX(IF(`serverip` = '', '0', IF(SUBSTRING_INDEX(`serverip`, ':', 1) LIKE '%_._%', `serverip`, '0')), ':', 1)) , `server_port` = IF(`serverip` LIKE '%:_%', CAST(SUBSTRING_INDEX(`serverip`, ':', -1) AS UNSIGNED), '0') -, `ipTEMP` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`ip`, ':', 1)), ''), INET_ATON('0.0.0.0')) -, `a_ipTEMP` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`a_ip`, ':', 1)), ''), INET_ATON('0.0.0.0')) -, `unbanned_ipTEMP` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`unbanned_ip`, ':', 1)), ''), INET_ATON('0.0.0.0')); +, `ipTEMP` = INET_ATON(IF(`ip` LIKE '%_._%', `ip`, '0')) +, `a_ipTEMP` = INET_ATON(IF(`a_ip` LIKE '%_._%', `a_ip`, '0')) +, `unbanned_ipTEMP` = INET_ATON(IF(`unbanned_ip` LIKE '%_._%', `unbanned_ip`, '0')); SET SQL_SAFE_UPDATES = 1; ALTER TABLE `feedback`.`ban` DROP COLUMN `unbanned_ip` @@ -53,9 +75,9 @@ ALTER TABLE `feedback`.`connection_log` , ADD COLUMN `ipTEMP` INT UNSIGNED NOT NULL AFTER `ip`; SET SQL_SAFE_UPDATES = 0; UPDATE `feedback`.`connection_log` - SET `server_ip` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`serverip`, ':', 1)), ''), INET_ATON('0.0.0.0')) + SET `server_ip` = INET_ATON(SUBSTRING_INDEX(IF(`serverip` = '', '0', IF(SUBSTRING_INDEX(`serverip`, ':', 1) LIKE '%_._%', `serverip`, '0')), ':', 1)) , `server_port` = IF(`serverip` LIKE '%:_%', CAST(SUBSTRING_INDEX(`serverip`, ':', -1) AS UNSIGNED), '0') -, `ipTEMP` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`ip`, ':', 1)), ''), INET_ATON('0.0.0.0')); +, `ipTEMP` = INET_ATON(IF(`ip` LIKE '%_._%', `ip`, '0')); SET SQL_SAFE_UPDATES = 1; ALTER TABLE `feedback`.`connection_log` DROP COLUMN `ip` @@ -88,7 +110,7 @@ ALTER TABLE `feedback`.`death` , ADD COLUMN `server_ip` INT UNSIGNED NOT NULL AFTER `server` , ADD COLUMN `server_port` SMALLINT UNSIGNED NOT NULL AFTER `server_ip`; UPDATE `feedback`.`death` - SET `server_ip` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`server`, ':', 1)), ''), INET_ATON('0.0.0.0')) + SET `server_ip` = INET_ATON(SUBSTRING_INDEX(IF(`server` = '', '0', IF(SUBSTRING_INDEX(`server`, ':', 1) LIKE '%_._%', `server`, '0')), ':', 1)) , `server_port` = IF(`server` LIKE '%:_%', CAST(SUBSTRING_INDEX(`server`, ':', -1) AS UNSIGNED), '0'); SET SQL_SAFE_UPDATES = 1; ALTER TABLE `feedback`.`death` @@ -111,7 +133,7 @@ ALTER TABLE `feedback`.`player` ADD COLUMN `ipTEMP` INT UNSIGNED NOT NULL AFTER `ip`; SET SQL_SAFE_UPDATES = 0; UPDATE `feedback`.`player` - SET `ipTEMP` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`ip`, ':', 1)), ''), INET_ATON('0.0.0.0')); + SET `ipTEMP` = INET_ATON(IF(`ip` LIKE '%_._%', `ip`, '0')); SET SQL_SAFE_UPDATES = 1; ALTER TABLE `feedback`.`player` DROP COLUMN `ip` @@ -128,7 +150,7 @@ ALTER TABLE `feedback`.`poll_question` , DROP COLUMN `for_trialmin`; SET SQL_SAFE_UPDATES = 0; UPDATE `feedback`.`poll_question` - SET `createdby_ipTEMP` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`createdby_ip`, ':', 1)), ''), INET_ATON('0.0.0.0')); + SET `createdby_ipTEMP` = INET_ATON(IF(`createdby_ip` LIKE '%_._%', `createdby_ip`, '0')); SET SQL_SAFE_UPDATES = 1; ALTER TABLE `feedback`.`poll_question` DROP COLUMN `createdby_ip` @@ -141,7 +163,7 @@ ALTER TABLE `feedback`.`poll_textreply` , ADD COLUMN `ipTEMP` INT UNSIGNED NOT NULL AFTER `ip`; SET SQL_SAFE_UPDATES = 0; UPDATE `feedback`.`poll_textreply` - SET `ipTEMP` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`ip`, ':', 1)), ''), INET_ATON('0.0.0.0')); + SET `ipTEMP` = INET_ATON(IF(`ip` LIKE '%_._%', `ip`, '0')); SET SQL_SAFE_UPDATES = 1; ALTER TABLE `feedback`.`poll_textreply` DROP COLUMN `ip` @@ -154,7 +176,7 @@ ALTER TABLE `feedback`.`poll_vote` , ADD COLUMN `ipTEMP` INT UNSIGNED NOT NULL AFTER `ip`; SET SQL_SAFE_UPDATES = 0; UPDATE `feedback`.`poll_vote` - SET `ipTEMP` = COALESCE(NULLIF(INET_ATON(SUBSTRING_INDEX(`ip`, ':', 1)), ''), INET_ATON('0.0.0.0')); + SET `ipTEMP` = INET_ATON(IF(`ip` LIKE '%_._%', `ip`, '0')); SET SQL_SAFE_UPDATES = 1; ALTER TABLE `feedback`.`poll_vote` DROP COLUMN `ip` @@ -204,4 +226,4 @@ ALTER TABLE `feedback`.`poll_vote` , ADD INDEX `idx_pvote_optionid_ckey` (`optionid` ASC, `ckey` ASC); ALTER TABLE `feedback`.`poll_textreply` - ADD INDEX `idx_ptext_pollid_ckey` (`pollid` ASC, `ckey` ASC); \ No newline at end of file + ADD INDEX `idx_ptext_pollid_ckey` (`pollid` ASC, `ckey` ASC); diff --git a/SQL/tgstation_schema.sql b/SQL/tgstation_schema.sql index f1945a4ddb..77e9b9429e 100644 --- a/SQL/tgstation_schema.sql +++ b/SQL/tgstation_schema.sql @@ -145,6 +145,9 @@ CREATE TABLE `death` ( `brainloss` smallint(5) unsigned NOT NULL, `fireloss` smallint(5) unsigned NOT NULL, `oxyloss` smallint(5) unsigned NOT NULL, + `toxloss` smallint(5) unsigned NOT NULL, + `cloneloss` smallint(5) unsigned NOT NULL, + `staminaloss` smallint(5) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; @@ -195,6 +198,8 @@ CREATE TABLE `legacy_population` ( `playercount` int(11) DEFAULT NULL, `admincount` int(11) DEFAULT NULL, `time` datetime NOT NULL, + `server_ip` int(10) unsigned NOT NULL, + `server_port` smallint(5) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; @@ -366,4 +371,4 @@ CREATE TABLE `poll_vote` ( /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; \ No newline at end of file +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; diff --git a/SQL/tgstation_schema_prefixed.sql b/SQL/tgstation_schema_prefixed.sql index b5af607fb1..be27384ea5 100644 --- a/SQL/tgstation_schema_prefixed.sql +++ b/SQL/tgstation_schema_prefixed.sql @@ -145,6 +145,9 @@ CREATE TABLE `SS13_death` ( `brainloss` smallint(5) unsigned NOT NULL, `fireloss` smallint(5) unsigned NOT NULL, `oxyloss` smallint(5) unsigned NOT NULL, + `toxloss` smallint(5) unsigned NOT NULL, + `cloneloss` smallint(5) unsigned NOT NULL, + `staminaloss` smallint(5) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; @@ -195,6 +198,8 @@ CREATE TABLE `SS13_legacy_population` ( `playercount` int(11) DEFAULT NULL, `admincount` int(11) DEFAULT NULL, `time` datetime NOT NULL, + `server_ip` int(10) unsigned NOT NULL, + `server_port` smallint(5) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*!40101 SET character_set_client = @saved_cs_client */; @@ -366,4 +371,4 @@ CREATE TABLE `SS13_poll_vote` ( /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; \ No newline at end of file +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm index beeaacd9a4..d3209424b5 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm @@ -1,217 +1,3043 @@ -"aa" = (/turf/template_noop,/area/template_noop) -"ab" = (/turf/open/floor/plating/lava/smooth/lava_land_surface,/area/lavaland/surface/outdoors) -"ac" = (/turf/open/floor/plating/asteroid/basalt/lava_land_surface,/area/lavaland/surface/outdoors) -"ad" = (/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"ae" = (/obj/structure/closet/secure_closet/bar{req_access = null; req_access_txt = "150"},/turf/open/floor/plasteel/podhatch{dir = 10},/area/ruin/powered/syndicate_lava_base) -"af" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/syndicake,/obj/item/weapon/reagent_containers/food/snacks/syndicake,/obj/item/weapon/reagent_containers/food/snacks/syndicake,/obj/structure/sign/barsign{pixel_y = 32; req_access = null; req_access_txt = "150"},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"ag" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/salad/validsalad,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"ah" = (/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi'; icon_state = "minibar_left"; name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"ai" = (/obj/structure/rack{icon = 'icons/obj/stationobjs.dmi'; icon_state = "minibar_right"; name = "skeletal minibar"},/obj/item/weapon/reagent_containers/food/drinks/bottle/gin,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aj" = (/obj/structure/dresser,/obj/structure/mirror{desc = "Mirror mirror on the wall, who is the most robust of them all?"; pixel_x = -26},/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"ak" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"al" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"am" = (/obj/structure/table/wood,/obj/item/weapon/clipboard,/obj/item/toy/figure/syndie,/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"an" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"ao" = (/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"ap" = (/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aq" = (/obj/item/stack/sheet/mineral/plastitanium{amount = 30},/obj/item/stack/rods{amount = 50},/obj/structure/table/reinforced,/turf/open/floor/plasteel/podhatch{dir = 9},/area/ruin/powered/syndicate_lava_base) -"ar" = (/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"as" = (/obj/effect/mob_spawn/human/lavaland_syndicate{tag = "icon-sleeper_s (EAST)"; icon_state = "sleeper_s"; dir = 4},/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"at" = (/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"au" = (/obj/effect/mob_spawn/human/lavaland_syndicate{tag = "icon-sleeper_s (WEST)"; icon_state = "sleeper_s"; dir = 8},/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"av" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"aw" = (/obj/item/stack/cable_coil/white,/obj/item/stack/cable_coil/white,/obj/item/stack/packageWrap,/obj/item/weapon/hand_labeler,/obj/structure/table/reinforced,/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"ax" = (/obj/structure/table/wood,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"ay" = (/obj/structure/table/wood,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/m10mm,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/obj/item/ammo_box/magazine/sniper_rounds,/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"az" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"aA" = (/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/structure/table/reinforced,/obj/item/weapon/wrench,/turf/open/floor/plasteel/podhatch{dir = 10},/area/ruin/powered/syndicate_lava_base) -"aB" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/wood{icon_state = "wood-broken4"},/area/ruin/powered/syndicate_lava_base) -"aC" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/drinkingglasses,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aD" = (/obj/structure/table/wood,/obj/item/toy/nuke,/obj/item/weapon/book/manual/nuclear,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aE" = (/obj/structure/table/wood,/obj/item/weapon/lighter{pixel_y = 3},/obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aF" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aG" = (/obj/structure/extinguisher_cabinet{pixel_x = 26},/turf/open/floor/wood,/area/ruin/powered/syndicate_lava_base) -"aH" = (/obj/effect/mob_spawn/human/lavaland_syndicate/comms{tag = "icon-sleeper_s (EAST)"; icon_state = "sleeper_s"; dir = 4},/turf/open/floor/plasteel/grimy,/area/ruin/powered/syndicate_lava_base) -"aI" = (/obj/structure/sign/nosmoking_2,/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"aJ" = (/obj/structure/closet/crate/bin,/obj/item/trash/syndi_cakes,/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"aK" = (/obj/structure/chair/stool/bar,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aL" = (/obj/structure/chair/stool/bar,/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"aM" = (/obj/structure/table/wood,/obj/item/weapon/lipstick/random{pixel_x = 3; pixel_y = 3},/obj/item/weapon/lipstick/random{pixel_x = -3; pixel_y = -3},/obj/item/weapon/lipstick/random,/obj/item/weapon/soap/syndie,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aN" = (/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aO" = (/obj/structure/dresser,/obj/structure/mirror{desc = "Mirror mirror on the wall, who is the most robust of them all?"; pixel_x = 26},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aP" = (/obj/item/target,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aQ" = (/obj/structure/closet/emcloset{anchored = 1},/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/device/flashlight/seclite,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aR" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aS" = (/obj/machinery/syndicatebomb/badmin/varplosion{can_unanchor = 0; name = "self destruct device"},/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"aT" = (/obj/machinery/door/airlock/hatch{name = "Dormitories"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aU" = (/obj/structure/closet/emcloset,/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/device/flashlight/seclite,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"aV" = (/obj/machinery/door/airlock/hatch{name = "Storage Closet"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aW" = (/obj/machinery/door/airlock/hatch{name = "Restroom"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aX" = (/obj/structure/mirror{desc = "Mirror mirror on the wall, who is the most robust of them all?"; pixel_x = 28},/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"aY" = (/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"aZ" = (/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"ba" = (/obj/structure/closet/emcloset{anchored = 1},/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/device/flashlight/seclite,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"bb" = (/obj/machinery/syndicatebomb/badmin/varplosion{can_unanchor = 0; name = "self destruct device"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bc" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bd" = (/obj/structure/bookcase/random,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"be" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"bf" = (/obj/structure/bookcase/random,/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"bg" = (/obj/structure/toilet{tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bh" = (/obj/machinery/door/airlock/hatch{name = "Lounge"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bi" = (/obj/machinery/chem_dispenser,/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bj" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"bk" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"bl" = (/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/reagentgrinder{desc = "Used to grind things up into raw materials and liquids."; pixel_y = 5},/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bm" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/folder/white,/obj/item/weapon/book/manual/wiki/chemistry,/obj/item/weapon/book/manual/wiki/chemistry,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/voice,/obj/item/device/assembly/voice,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bn" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/beakers{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/syringes,/obj/item/weapon/gun/syringe/syndicate,/obj/item/weapon/storage/box/beakers,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bo" = (/turf/open/floor/plasteel/podhatch{dir = 9},/area/ruin/powered/syndicate_lava_base) -"bp" = (/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bq" = (/obj/structure/table/reinforced,/obj/machinery/reagentgrinder{desc = "Used to grind things up into raw materials and liquids."; pixel_y = 5},/obj/structure/noticeboard{pixel_y = 32},/turf/open/floor/plasteel/podhatch/corner,/area/ruin/powered/syndicate_lava_base) -"br" = (/obj/structure/reagent_dispensers/virusfood{pixel_y = 32},/obj/structure/table/reinforced,/obj/item/device/healthanalyzer,/obj/item/stack/sheet/mineral/plasma{amount = 5; layer = 3.1},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"bs" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = 32},/obj/machinery/computer/pandemic,/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"bt" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/beakers{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/syringes,/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"bu" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"bv" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ruin/powered/syndicate_lava_base) -"bw" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bx" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"by" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bz" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bA" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bB" = (/obj/machinery/door/window/brigdoor,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bC" = (/obj/machinery/chem_heater,/obj/structure/extinguisher_cabinet{pixel_x = -26},/turf/open/floor/plasteel/podhatch{dir = 10},/area/ruin/powered/syndicate_lava_base) -"bD" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"bE" = (/obj/structure/closet/crate/bin,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"bF" = (/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"bG" = (/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/igniter,/obj/item/device/assembly/timer{pixel_x = 3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = 3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = 3; pixel_y = 3},/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bH" = (/obj/structure/table/reinforced,/obj/item/weapon/book/manual/wiki/infections,/obj/item/stack/sheet/mineral/silver{amount = 10},/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"bI" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bJ" = (/obj/machinery/door/airlock/hatch{name = "Monkey Pen"; req_access_txt = "150"},/turf/open/floor/plasteel/black,/area/ruin/powered/syndicate_lava_base) -"bK" = (/obj/structure/table/reinforced,/obj/item/weapon/gun/ballistic/automatic/c20r/toy/unrestricted,/obj/item/weapon/gun/ballistic/automatic/c20r/toy/unrestricted,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bL" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bM" = (/obj/structure/table/reinforced,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/suit/toggle/labcoat,/obj/item/clothing/suit/toggle/labcoat,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bN" = (/obj/machinery/smartfridge/chemistry/virology,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"bO" = (/obj/machinery/iv_drip,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bP" = (/obj/structure/closet/crate/bin,/turf/open/floor/plasteel/podhatch{dir = 9},/area/ruin/powered/syndicate_lava_base) -"bQ" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"bR" = (/obj/machinery/chem_heater,/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bS" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/glass/beaker/large,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"bT" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bU" = (/obj/machinery/door/airlock/hatch{name = "Monkey Pen"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"bV" = (/obj/structure/table/reinforced,/obj/item/weapon/folder,/obj/item/clothing/ears/earmuffs,/obj/item/clothing/ears/earmuffs,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bW" = (/obj/structure/table/reinforced,/obj/item/weapon/suppressor/specialoffer,/obj/item/weapon/gun/ballistic/automatic/toy/pistol/unrestricted,/obj/item/weapon/gun/ballistic/automatic/toy/pistol/unrestricted,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bX" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"bY" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"bZ" = (/obj/machinery/chem_dispenser,/obj/structure/extinguisher_cabinet{pixel_x = 26},/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"ca" = (/obj/structure/table/reinforced,/obj/item/clothing/suit/bio_suit/general,/obj/item/clothing/mask/surgical,/obj/item/clothing/head/bio_hood/general,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/science,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"cb" = (/obj/machinery/shower{dir = 4; icon_state = "shower"; name = "emergency shower"},/obj/machinery/shower{dir = 8; icon_state = "shower"; name = "emergency shower"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cc" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"cd" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/white,/obj/item/stack/sheet/mineral/gold{amount = 10},/obj/item/stack/sheet/mineral/uranium{amount = 10},/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"ce" = (/obj/structure/bed/roller,/mob/living/carbon/monkey,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cf" = (/obj/structure/sign/securearea,/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"cg" = (/obj/machinery/door/airlock/hatch{name = "Firing Range"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"ch" = (/obj/machinery/door/airlock/hatch{name = "Chemistry Lab"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"ci" = (/obj/structure/sign/chemistry,/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"cj" = (/obj/machinery/syndicatebomb/badmin/varplosion{can_unanchor = 0; name = "self destruct device"},/turf/open/floor/plasteel/podhatch{dir = 8},/area/ruin/powered/syndicate_lava_base) -"ck" = (/obj/structure/sign/biohazard,/turf/closed/wall/mineral/plastitanium,/area/ruin/powered/syndicate_lava_base) -"cl" = (/obj/machinery/door/airlock/hatch{name = "Virology Lab"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cm" = (/obj/structure/rack,/obj/item/ammo_box/foambox{pixel_x = -3; pixel_y = 3},/obj/item/ammo_box/foambox,/obj/item/ammo_box/foambox{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cn" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/turf/open/floor/plasteel/podhatch{dir = 9},/area/ruin/powered/syndicate_lava_base) -"co" = (/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"cp" = (/turf/open/floor/plasteel/podhatch/corner{tag = "icon-podhatchcorner (EAST)"; icon_state = "podhatchcorner"; dir = 4},/area/ruin/powered/syndicate_lava_base) -"cq" = (/turf/open/floor/plasteel/podhatch/corner{tag = "icon-podhatchcorner (WEST)"; icon_state = "podhatchcorner"; dir = 8},/area/ruin/powered/syndicate_lava_base) -"cr" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21"; layer = 4.1},/turf/open/floor/plasteel/podhatch{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cs" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/bluecross_2,/turf/open/floor/plating,/area/ruin/powered/syndicate_lava_base) -"ct" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/vault,/area/ruin/powered/syndicate_lava_base) -"cu" = (/obj/machinery/sleeper/syndie{dir = 8},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cv" = (/obj/structure/closet/crate/secure,/obj/item/target,/obj/item/target,/obj/item/target/alien,/obj/item/target/alien,/obj/item/target/clown,/obj/item/target/clown,/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"cw" = (/turf/open/floor/plasteel/podhatch{dir = 10},/area/ruin/powered/syndicate_lava_base) -"cx" = (/obj/machinery/syndicatebomb/badmin/varplosion{can_unanchor = 0; name = "self destruct device"},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"cy" = (/obj/structure/extinguisher_cabinet{pixel_y = -32},/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"cz" = (/turf/open/floor/plasteel/podhatch,/area/ruin/powered/syndicate_lava_base) -"cA" = (/turf/open/floor/plasteel/podhatch/corner{tag = "icon-podhatchcorner (NORTH)"; icon_state = "podhatchcorner"; dir = 1},/area/ruin/powered/syndicate_lava_base) -"cB" = (/turf/open/floor/plasteel/podhatch/corner,/area/ruin/powered/syndicate_lava_base) -"cC" = (/turf/open/floor/plasteel/podhatch{tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6},/area/ruin/powered/syndicate_lava_base) -"cD" = (/obj/machinery/door/airlock/hatch{name = "Infirmary"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cE" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cF" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "lavalandsyndi"; name = "Syndicate Research Experimentor Shutters"},/turf/open/floor/plating,/area/ruin/powered/syndicate_lava_base) -"cG" = (/obj/machinery/door/airlock/hatch{name = "Experimentation Room"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cH" = (/obj/machinery/door/airlock/hatch{name = "Telecommunications Control"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cI" = (/turf/open/floor/engine,/area/ruin/powered/syndicate_lava_base) -"cJ" = (/obj/structure/noticeboard{pixel_y = 32},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cK" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/device/multitool,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cL" = (/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cM" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 30},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cN" = (/obj/item/stack/cable_coil/white{pixel_x = 3; pixel_y = 3},/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/stack/cable_coil/white,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cO" = (/obj/structure/table/reinforced,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cP" = (/obj/structure/table/reinforced,/obj/item/device/radio/intercom{broadcasting = 0; dir = 8; freerange = 1; listening = 1; name = "Pirate Radio Listening Channel"; pixel_x = 0},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cQ" = (/obj/machinery/computer/camera_advanced,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cR" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cS" = (/obj/item/weapon/cautery,/obj/item/weapon/scalpel,/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cT" = (/obj/structure/table/optable,/obj/item/weapon/surgical_drapes,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cU" = (/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cV" = (/obj/structure/sign/nosmoking_2{pixel_x = 32},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cW" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/obj/structure/extinguisher_cabinet{pixel_x = -26},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"cX" = (/obj/structure/table/reinforced,/obj/item/device/radio/intercom{broadcasting = 1; dir = 8; freerange = 1; listening = 0; name = "Pirate Radio Broadcast Channel"; pixel_x = 0},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"cY" = (/obj/structure/sign/fire{pixel_x = -32},/turf/open/floor/engine,/area/ruin/powered/syndicate_lava_base) -"cZ" = (/obj/structure/table/reinforced,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/voice,/obj/item/device/assembly/voice,/obj/item/weapon/screwdriver/nuke,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"da" = (/obj/structure/table/reinforced,/obj/item/stack/sheet/plasteel{amount = 15},/obj/item/device/electropack,/obj/item/device/taperecorder,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"db" = (/obj/structure/filingcabinet/security,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"dc" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dd" = (/obj/machinery/computer/message_monitor,/obj/item/weapon/paper/monitorkey,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"de" = (/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; dir = 5},/area/ruin/powered/syndicate_lava_base) -"df" = (/obj/effect/baseturf_helper,/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; dir = 5},/area/ruin/powered/syndicate_lava_base) -"dg" = (/obj/machinery/button/door{id = "lavalandsyndi"; name = "Syndicate Experimentor Lockdown Control"; pixel_x = 26; req_access_txt = "150"},/turf/open/floor/engine,/area/ruin/powered/syndicate_lava_base) -"dh" = (/obj/machinery/button/door{id = "lavalandsyndi"; name = "Syndicate Experimentor Lockdown Control"; pixel_x = -26; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"di" = (/obj/item/stack/sheet/mineral/plastitanium{amount = 30},/obj/item/stack/rods{amount = 50},/obj/structure/table/reinforced,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dj" = (/obj/structure/filingcabinet/medical,/turf/open/floor/plasteel/vault{dir = 5},/area/ruin/powered/syndicate_lava_base) -"dk" = (/turf/open/floor/plasteel/circuit/gcircuit,/area/ruin/powered/syndicate_lava_base) -"dl" = (/obj/machinery/door/poddoor/preopen{id = "lavalandsyndi"; name = "Syndicate Research Experimentor Shutters"},/obj/machinery/door/airlock/hatch{name = "Experimentation Room"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dm" = (/obj/item/stack/sheet/metal{amount = 50},/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/structure/table/reinforced,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/obj/item/weapon/grenade/chem_grenade/large,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dn" = (/obj/machinery/telecomms/relay/preset/ruskie{use_power = 0},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)"; dir = 5},/area/ruin/powered/syndicate_lava_base) -"do" = (/obj/machinery/door/airlock/hatch{name = "Syndicate Recon Outpost"; req_access_txt = "150"},/obj/structure/fans/tiny,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dp" = (/obj/machinery/door/airlock/hatch{name = "Monkey Pen"; req_access_txt = "150"},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dq" = (/obj/structure/sign/vacuum{pixel_x = -32},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dr" = (/obj/structure/sign/xeno_warning_mining{pixel_x = 32},/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"ds" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/mob/living/carbon/monkey,/turf/open/floor/plasteel/vault{dir = 8},/area/ruin/powered/syndicate_lava_base) -"dt" = (/obj/structure/sign/securearea{pixel_y = 32},/turf/open/floor/plating/lava/smooth/lava_land_surface,/area/lavaland/surface/outdoors) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/template_noop, +/area/template_noop) +"ab" = ( +/turf/open/floor/plating/lava/smooth/lava_land_surface, +/area/lavaland/surface/outdoors) +"ac" = ( +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"ad" = ( +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"ae" = ( +/obj/structure/closet/secure_closet/bar{ + req_access = null; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/ruin/powered/syndicate_lava_base) +"af" = ( +/obj/structure/table/wood, +/obj/item/weapon/reagent_containers/food/snacks/syndicake, +/obj/item/weapon/reagent_containers/food/snacks/syndicake, +/obj/item/weapon/reagent_containers/food/snacks/syndicake, +/obj/structure/sign/barsign{ + pixel_y = 32; + req_access = null; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/podhatch, +/area/ruin/powered/syndicate_lava_base) +"ag" = ( +/obj/structure/table/wood, +/obj/item/weapon/reagent_containers/food/snacks/salad/validsalad, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/ruin/powered/syndicate_lava_base) +"ah" = ( +/obj/structure/rack{ + icon = 'icons/obj/stationobjs.dmi'; + icon_state = "minibar_left"; + name = "skeletal minibar" + }, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka, +/turf/open/floor/wood, +/area/ruin/powered/syndicate_lava_base) +"ai" = ( +/obj/structure/rack{ + icon = 'icons/obj/stationobjs.dmi'; + icon_state = "minibar_right"; + name = "skeletal minibar" + }, +/obj/item/weapon/reagent_containers/food/drinks/bottle/gin, +/turf/open/floor/wood, +/area/ruin/powered/syndicate_lava_base) +"aj" = ( +/obj/structure/dresser, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = -26 + }, +/turf/open/floor/plasteel/vault, +/area/ruin/powered/syndicate_lava_base) +"ak" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/vault, +/area/ruin/powered/syndicate_lava_base) +"al" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/vault, +/area/ruin/powered/syndicate_lava_base) +"am" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/syndie, +/turf/open/floor/plasteel/vault, +/area/ruin/powered/syndicate_lava_base) +"an" = ( +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"ao" = ( +/turf/open/floor/plasteel/black, +/area/ruin/powered/syndicate_lava_base) +"ap" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"aq" = ( +/obj/item/stack/sheet/mineral/plastitanium{ + amount = 30 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/podhatch{ + dir = 9 + }, +/area/ruin/powered/syndicate_lava_base) +"ar" = ( +/turf/open/floor/wood, +/area/ruin/powered/syndicate_lava_base) +"as" = ( +/obj/effect/mob_spawn/human/lavaland_syndicate{ + tag = "icon-sleeper_s (EAST)"; + icon_state = "sleeper_s"; + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ruin/powered/syndicate_lava_base) +"at" = ( +/turf/open/floor/plasteel/grimy, +/area/ruin/powered/syndicate_lava_base) +"au" = ( +/obj/effect/mob_spawn/human/lavaland_syndicate{ + tag = "icon-sleeper_s (WEST)"; + icon_state = "sleeper_s"; + dir = 8 + }, +/turf/open/floor/plasteel/grimy, +/area/ruin/powered/syndicate_lava_base) +"av" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/ruin/powered/syndicate_lava_base) +"aw" = ( +/obj/item/stack/cable_coil/white, +/obj/item/stack/cable_coil/white, +/obj/item/stack/packageWrap, +/obj/item/weapon/hand_labeler, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/podhatch{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"ax" = ( +/obj/structure/table/wood, +/obj/item/ammo_box/magazine/m10mm, +/obj/item/ammo_box/magazine/m10mm, +/obj/item/ammo_box/magazine/m10mm, +/obj/item/ammo_box/magazine/m10mm, +/obj/item/ammo_box/magazine/sniper_rounds, +/obj/item/ammo_box/magazine/sniper_rounds, +/obj/item/ammo_box/magazine/sniper_rounds, +/turf/open/floor/plasteel/grimy, +/area/ruin/powered/syndicate_lava_base) +"ay" = ( +/obj/structure/table/wood, +/obj/item/ammo_box/magazine/m10mm, +/obj/item/ammo_box/magazine/m10mm, +/obj/item/ammo_box/magazine/m10mm, +/obj/item/ammo_box/magazine/m10mm, +/obj/item/ammo_box/magazine/sniper_rounds, +/obj/item/ammo_box/magazine/sniper_rounds, +/obj/item/ammo_box/magazine/sniper_rounds, +/obj/item/ammo_box/magazine/sniper_rounds, +/obj/item/ammo_box/magazine/sniper_rounds, +/obj/item/ammo_box/magazine/sniper_rounds, +/turf/open/floor/plasteel/grimy, +/area/ruin/powered/syndicate_lava_base) +"az" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/ruin/powered/syndicate_lava_base) +"aA" = ( +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/structure/table/reinforced, +/obj/item/weapon/wrench, +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/ruin/powered/syndicate_lava_base) +"aB" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/wood{ + icon_state = "wood-broken4" + }, +/area/ruin/powered/syndicate_lava_base) +"aC" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/box/drinkingglasses, +/turf/open/floor/wood, +/area/ruin/powered/syndicate_lava_base) +"aD" = ( +/obj/structure/table/wood, +/obj/item/toy/nuke, +/obj/item/weapon/book/manual/nuclear, +/turf/open/floor/wood, +/area/ruin/powered/syndicate_lava_base) +"aE" = ( +/obj/structure/table/wood, +/obj/item/weapon/lighter{ + pixel_y = 3 + }, +/obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate, +/turf/open/floor/wood, +/area/ruin/powered/syndicate_lava_base) +"aF" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/wood, +/area/ruin/powered/syndicate_lava_base) +"aG" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/turf/open/floor/wood, +/area/ruin/powered/syndicate_lava_base) +"aH" = ( +/obj/effect/mob_spawn/human/lavaland_syndicate/comms{ + tag = "icon-sleeper_s (EAST)"; + icon_state = "sleeper_s"; + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ruin/powered/syndicate_lava_base) +"aI" = ( +/obj/structure/sign/nosmoking_2, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"aJ" = ( +/obj/structure/closet/crate/bin, +/obj/item/trash/syndi_cakes, +/turf/open/floor/plasteel/black, +/area/ruin/powered/syndicate_lava_base) +"aK" = ( +/obj/structure/chair/stool/bar, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"aL" = ( +/obj/structure/chair/stool/bar, +/turf/open/floor/plasteel/black, +/area/ruin/powered/syndicate_lava_base) +"aM" = ( +/obj/structure/table/wood, +/obj/item/weapon/lipstick/random{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/lipstick/random{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/weapon/lipstick/random, +/obj/item/weapon/soap/syndie, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"aN" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"aO" = ( +/obj/structure/dresser, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = 26 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"aP" = ( +/obj/item/target, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"aQ" = ( +/obj/structure/closet/emcloset{ + anchored = 1 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/engi, +/obj/item/device/flashlight/seclite, +/obj/item/clothing/mask/gas, +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"aR" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"aS" = ( +/turf/open/floor/plasteel/black, +/area/ruin/powered/syndicate_lava_base) +"aT" = ( +/obj/machinery/door/airlock/hatch{ + name = "Dormitories"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"aU" = ( +/obj/structure/closet/emcloset, +/obj/item/weapon/tank/internals/emergency_oxygen/engi, +/obj/item/device/flashlight/seclite, +/obj/item/clothing/mask/gas, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/ruin/powered/syndicate_lava_base) +"aV" = ( +/obj/machinery/door/airlock/hatch{ + name = "Storage Closet"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"aW" = ( +/obj/machinery/door/airlock/hatch{ + name = "Restroom"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"aX" = ( +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = 28 + }, +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"aY" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"aZ" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/ruin/powered/syndicate_lava_base) +"ba" = ( +/obj/structure/closet/emcloset{ + anchored = 1 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/engi, +/obj/item/device/flashlight/seclite, +/obj/item/clothing/mask/gas, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/ruin/powered/syndicate_lava_base) +"bb" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bc" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bd" = ( +/obj/structure/bookcase/random, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"be" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/black, +/area/ruin/powered/syndicate_lava_base) +"bf" = ( +/obj/structure/bookcase/random, +/turf/open/floor/plasteel/black, +/area/ruin/powered/syndicate_lava_base) +"bg" = ( +/obj/structure/toilet{ + tag = "icon-toilet00 (WEST)"; + icon_state = "toilet00"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bh" = ( +/obj/machinery/door/airlock/hatch{ + name = "Lounge"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bi" = ( +/obj/machinery/chem_dispenser, +/turf/open/floor/plasteel/podhatch{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bj" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker, +/obj/item/weapon/reagent_containers/dropper, +/obj/item/weapon/reagent_containers/syringe, +/obj/structure/sign/nosmoking_2{ + pixel_y = 32 + }, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/ruin/powered/syndicate_lava_base) +"bk" = ( +/obj/machinery/chem_master, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/ruin/powered/syndicate_lava_base) +"bl" = ( +/obj/structure/noticeboard{ + pixel_y = 32 + }, +/obj/machinery/reagentgrinder{ + desc = "Used to grind things up into raw materials and liquids."; + pixel_y = 5 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bm" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/white, +/obj/item/weapon/book/manual/wiki/chemistry, +/obj/item/weapon/book/manual/wiki/chemistry, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/voice, +/obj/item/device/assembly/voice, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bn" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/beakers{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/syringes, +/obj/item/weapon/gun/syringe/syndicate, +/obj/item/weapon/storage/box/beakers, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bo" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 9 + }, +/area/ruin/powered/syndicate_lava_base) +"bp" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bq" = ( +/obj/structure/table/reinforced, +/obj/machinery/reagentgrinder{ + desc = "Used to grind things up into raw materials and liquids."; + pixel_y = 5 + }, +/obj/structure/noticeboard{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/podhatch/corner, +/area/ruin/powered/syndicate_lava_base) +"br" = ( +/obj/structure/reagent_dispensers/virusfood{ + pixel_y = 32 + }, +/obj/structure/table/reinforced, +/obj/item/device/healthanalyzer, +/obj/item/stack/sheet/mineral/plasma{ + amount = 5; + layer = 3.1 + }, +/turf/open/floor/plasteel/podhatch, +/area/ruin/powered/syndicate_lava_base) +"bs" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/machinery/computer/pandemic, +/turf/open/floor/plasteel/podhatch, +/area/ruin/powered/syndicate_lava_base) +"bt" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/beakers{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/syringes, +/turf/open/floor/plasteel/podhatch, +/area/ruin/powered/syndicate_lava_base) +"bu" = ( +/obj/structure/bed/roller, +/obj/machinery/iv_drip, +/obj/item/weapon/reagent_containers/blood/random, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/ruin/powered/syndicate_lava_base) +"bv" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ruin/powered/syndicate_lava_base) +"bw" = ( +/mob/living/carbon/monkey, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bx" = ( +/obj/structure/bed/roller, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"by" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bz" = ( +/mob/living/carbon/monkey, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bA" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bB" = ( +/obj/machinery/door/window/brigdoor, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bC" = ( +/obj/machinery/chem_heater, +/obj/structure/extinguisher_cabinet{ + pixel_x = -26 + }, +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/ruin/powered/syndicate_lava_base) +"bD" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/turf/open/floor/plasteel/podhatch, +/area/ruin/powered/syndicate_lava_base) +"bE" = ( +/obj/structure/closet/crate/bin, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/ruin/powered/syndicate_lava_base) +"bF" = ( +/turf/open/floor/plasteel/vault, +/area/ruin/powered/syndicate_lava_base) +"bG" = ( +/obj/item/device/assembly/igniter, +/obj/item/device/assembly/igniter, +/obj/item/device/assembly/igniter, +/obj/item/device/assembly/timer{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/device/assembly/timer{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/device/assembly/timer{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bH" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/book/manual/wiki/infections, +/obj/item/stack/sheet/mineral/silver{ + amount = 10 + }, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/ruin/powered/syndicate_lava_base) +"bI" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bJ" = ( +/obj/machinery/door/airlock/hatch{ + name = "Monkey Pen"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/black, +/area/ruin/powered/syndicate_lava_base) +"bK" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/gun/ballistic/automatic/c20r/toy/unrestricted, +/obj/item/weapon/gun/ballistic/automatic/c20r/toy/unrestricted, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bL" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bM" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/gloves/color/latex, +/obj/item/clothing/gloves/color/latex, +/obj/item/clothing/suit/toggle/labcoat, +/obj/item/clothing/suit/toggle/labcoat, +/obj/item/clothing/glasses/science, +/obj/item/clothing/glasses/science, +/obj/item/clothing/glasses/hud/health, +/obj/item/clothing/glasses/hud/health, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bN" = ( +/obj/machinery/smartfridge/chemistry/virology, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/ruin/powered/syndicate_lava_base) +"bO" = ( +/obj/machinery/iv_drip, +/obj/item/weapon/reagent_containers/blood/random, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bP" = ( +/obj/structure/closet/crate/bin, +/turf/open/floor/plasteel/podhatch{ + dir = 9 + }, +/area/ruin/powered/syndicate_lava_base) +"bQ" = ( +/obj/structure/chair/office/dark, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/ruin/powered/syndicate_lava_base) +"bR" = ( +/obj/machinery/chem_heater, +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bS" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker, +/obj/item/weapon/reagent_containers/dropper, +/obj/item/weapon/reagent_containers/syringe, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/ruin/powered/syndicate_lava_base) +"bT" = ( +/obj/structure/chair/office/dark, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bU" = ( +/obj/machinery/door/airlock/hatch{ + name = "Monkey Pen"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"bV" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder, +/obj/item/clothing/ears/earmuffs, +/obj/item/clothing/ears/earmuffs, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bW" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/suppressor/specialoffer, +/obj/item/weapon/gun/ballistic/automatic/toy/pistol/unrestricted, +/obj/item/weapon/gun/ballistic/automatic/toy/pistol/unrestricted, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bX" = ( +/obj/machinery/chem_master, +/turf/open/floor/plasteel/podhatch{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"bY" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker, +/obj/item/weapon/reagent_containers/dropper, +/obj/item/weapon/reagent_containers/syringe, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/turf/open/floor/plasteel/podhatch, +/area/ruin/powered/syndicate_lava_base) +"bZ" = ( +/obj/machinery/chem_dispenser, +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/ruin/powered/syndicate_lava_base) +"ca" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/suit/bio_suit/general, +/obj/item/clothing/mask/surgical, +/obj/item/clothing/head/bio_hood/general, +/obj/item/clothing/glasses/hud/health, +/obj/item/clothing/glasses/science, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/ruin/powered/syndicate_lava_base) +"cb" = ( +/obj/machinery/shower{ + dir = 4; + icon_state = "shower"; + name = "emergency shower" + }, +/obj/machinery/shower{ + dir = 8; + icon_state = "shower"; + name = "emergency shower" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"cc" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/ruin/powered/syndicate_lava_base) +"cd" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/white, +/obj/item/stack/sheet/mineral/gold{ + amount = 10 + }, +/obj/item/stack/sheet/mineral/uranium{ + amount = 10 + }, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/ruin/powered/syndicate_lava_base) +"ce" = ( +/obj/structure/bed/roller, +/mob/living/carbon/monkey, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cf" = ( +/obj/structure/sign/securearea, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"cg" = ( +/obj/machinery/door/airlock/hatch{ + name = "Firing Range"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"ch" = ( +/obj/machinery/door/airlock/hatch{ + name = "Chemistry Lab"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"ci" = ( +/obj/structure/sign/chemistry, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"cj" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"ck" = ( +/obj/structure/sign/biohazard, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"cl" = ( +/obj/machinery/door/airlock/hatch{ + name = "Virology Lab"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cm" = ( +/obj/structure/rack, +/obj/item/ammo_box/foambox{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/ammo_box/foambox, +/obj/item/ammo_box/foambox{ + pixel_x = 3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"cn" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/podhatch{ + dir = 9 + }, +/area/ruin/powered/syndicate_lava_base) +"co" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/ruin/powered/syndicate_lava_base) +"cp" = ( +/turf/open/floor/plasteel/podhatch/corner{ + tag = "icon-podhatchcorner (EAST)"; + icon_state = "podhatchcorner"; + dir = 4 + }, +/area/ruin/powered/syndicate_lava_base) +"cq" = ( +/turf/open/floor/plasteel/podhatch/corner{ + tag = "icon-podhatchcorner (WEST)"; + icon_state = "podhatchcorner"; + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cr" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"cs" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/bluecross_2, +/turf/open/floor/plating, +/area/ruin/powered/syndicate_lava_base) +"ct" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/vault, +/area/ruin/powered/syndicate_lava_base) +"cu" = ( +/obj/machinery/sleeper/syndie{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cv" = ( +/obj/structure/closet/crate/secure, +/obj/item/target, +/obj/item/target, +/obj/item/target/alien, +/obj/item/target/alien, +/obj/item/target/clown, +/obj/item/target/clown, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/ruin/powered/syndicate_lava_base) +"cw" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/ruin/powered/syndicate_lava_base) +"cx" = ( +/turf/open/floor/plasteel/podhatch, +/area/ruin/powered/syndicate_lava_base) +"cy" = ( +/obj/structure/extinguisher_cabinet{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/podhatch, +/area/ruin/powered/syndicate_lava_base) +"cz" = ( +/turf/open/floor/plasteel/podhatch, +/area/ruin/powered/syndicate_lava_base) +"cA" = ( +/turf/open/floor/plasteel/podhatch/corner{ + tag = "icon-podhatchcorner (NORTH)"; + icon_state = "podhatchcorner"; + dir = 1 + }, +/area/ruin/powered/syndicate_lava_base) +"cB" = ( +/turf/open/floor/plasteel/podhatch/corner, +/area/ruin/powered/syndicate_lava_base) +"cC" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/ruin/powered/syndicate_lava_base) +"cD" = ( +/obj/machinery/door/airlock/hatch{ + name = "Infirmary"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cE" = ( +/obj/structure/bed/roller, +/obj/machinery/iv_drip, +/obj/item/weapon/reagent_containers/blood/random, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cF" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "lavalandsyndi"; + name = "Syndicate Research Experimentor Shutters" + }, +/turf/open/floor/plating, +/area/ruin/powered/syndicate_lava_base) +"cG" = ( +/obj/machinery/door/airlock/hatch{ + name = "Experimentation Room"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cH" = ( +/obj/machinery/door/airlock/hatch{ + name = "Telecommunications Control"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cI" = ( +/turf/open/floor/engine, +/area/ruin/powered/syndicate_lava_base) +"cJ" = ( +/obj/structure/noticeboard{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"cK" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/syndicate, +/obj/item/device/multitool, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cL" = ( +/obj/item/weapon/surgicaldrill, +/obj/item/weapon/circular_saw, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cM" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = 30 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"cN" = ( +/obj/item/stack/cable_coil/white{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/structure/table/reinforced, +/obj/item/weapon/storage/toolbox/syndicate, +/obj/item/stack/cable_coil/white, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cO" = ( +/obj/structure/table/reinforced, +/obj/item/device/flashlight/lamp, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cP" = ( +/obj/structure/table/reinforced, +/obj/item/device/radio/intercom{ + broadcasting = 0; + dir = 8; + freerange = 1; + listening = 1; + name = "Pirate Radio Listening Channel"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cQ" = ( +/obj/machinery/computer/camera_advanced, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"cR" = ( +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cS" = ( +/obj/item/weapon/cautery, +/obj/item/weapon/scalpel, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cT" = ( +/obj/structure/table/optable, +/obj/item/weapon/surgical_drapes, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cU" = ( +/obj/item/weapon/retractor, +/obj/item/weapon/hemostat, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cV" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"cW" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = -26 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"cX" = ( +/obj/structure/table/reinforced, +/obj/item/device/radio/intercom{ + broadcasting = 1; + dir = 8; + freerange = 1; + listening = 0; + name = "Pirate Radio Broadcast Channel"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"cY" = ( +/obj/structure/sign/fire{ + pixel_x = -32 + }, +/turf/open/floor/engine, +/area/ruin/powered/syndicate_lava_base) +"cZ" = ( +/obj/structure/table/reinforced, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/voice, +/obj/item/device/assembly/voice, +/obj/item/weapon/screwdriver/nuke, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"da" = ( +/obj/structure/table/reinforced, +/obj/item/stack/sheet/plasteel{ + amount = 15 + }, +/obj/item/device/electropack, +/obj/item/device/taperecorder, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"db" = ( +/obj/structure/filingcabinet/security, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"dc" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"dd" = ( +/obj/machinery/computer/message_monitor, +/obj/item/weapon/paper/monitorkey, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"de" = ( +/turf/open/floor/plasteel/vault{ + tag = "icon-vault (NORTHEAST)"; + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"df" = ( +/obj/effect/baseturf_helper, +/turf/open/floor/plasteel/vault{ + tag = "icon-vault (NORTHEAST)"; + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"dg" = ( +/obj/machinery/button/door{ + id = "lavalandsyndi"; + name = "Syndicate Experimentor Lockdown Control"; + pixel_x = 26; + req_access_txt = "150" + }, +/turf/open/floor/engine, +/area/ruin/powered/syndicate_lava_base) +"dh" = ( +/obj/machinery/button/door{ + id = "lavalandsyndi"; + name = "Syndicate Experimentor Lockdown Control"; + pixel_x = -26; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"di" = ( +/obj/item/stack/sheet/mineral/plastitanium{ + amount = 30 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"dj" = ( +/obj/structure/filingcabinet/medical, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"dk" = ( +/turf/open/floor/circuit/green, +/area/ruin/powered/syndicate_lava_base) +"dl" = ( +/obj/machinery/door/poddoor/preopen{ + id = "lavalandsyndi"; + name = "Syndicate Research Experimentor Shutters" + }, +/obj/machinery/door/airlock/hatch{ + name = "Experimentation Room"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"dm" = ( +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/weapon/grenade/chem_grenade, +/obj/item/weapon/grenade/chem_grenade, +/obj/item/weapon/grenade/chem_grenade, +/obj/structure/table/reinforced, +/obj/item/weapon/grenade/chem_grenade, +/obj/item/weapon/grenade/chem_grenade/large, +/obj/item/weapon/grenade/chem_grenade/large, +/obj/item/weapon/grenade/chem_grenade/large, +/obj/item/weapon/grenade/chem_grenade/large, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"dn" = ( +/obj/machinery/telecomms/relay/preset/ruskie{ + use_power = 0 + }, +/turf/open/floor/plasteel/vault{ + tag = "icon-vault (NORTHEAST)"; + dir = 5 + }, +/area/ruin/powered/syndicate_lava_base) +"do" = ( +/obj/machinery/door/airlock/hatch{ + name = "Syndicate Recon Outpost"; + req_access_txt = "150" + }, +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"dp" = ( +/obj/machinery/door/airlock/hatch{ + name = "Monkey Pen"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"dq" = ( +/obj/structure/sign/vacuum{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"dr" = ( +/obj/structure/sign/xeno_warning_mining{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"ds" = ( +/obj/structure/bed/roller, +/obj/machinery/iv_drip, +/mob/living/carbon/monkey, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"dt" = ( +/obj/structure/sign/securearea{ + pixel_y = 32 + }, +/turf/open/floor/plating/lava/smooth/lava_land_surface, +/area/lavaland/surface/outdoors) +"du" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dv" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dw" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dx" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dy" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dz" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dA" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dB" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dC" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dD" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dE" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dF" = ( +/obj/machinery/door/airlock/hatch{ + name = "Self Destruct Control"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ruin/powered/syndicate_lava_base) +"dG" = ( +/turf/open/floor/circuit/red, +/area/ruin/powered/syndicate_lava_base) +"dH" = ( +/obj/item/weapon/bombcore/large/underwall, +/turf/closed/wall/mineral/plastitanium, +/area/ruin/powered/syndicate_lava_base) +"dI" = ( +/turf/open/floor/circuit/red, +/area/ruin/powered/syndicate_lava_base) +"dJ" = ( +/obj/machinery/syndicatebomb/self_destruct, +/turf/open/floor/circuit/red, +/area/ruin/powered/syndicate_lava_base) +"dK" = ( +/turf/open/floor/circuit/red, +/area/ruin/powered/syndicate_lava_base) +"dL" = ( +/turf/open/floor/circuit/red, +/area/ruin/powered/syndicate_lava_base) (1,1,1) = {" -aaaaaaaaabaaaaabababababababababababababababababababababababababababababaaaa -aaaaabababababababababababababababababababababababababababababababababababaa -aaaaabababababababababababababababababababababababababababababababababababab -aaaaabababababababababababababababababababababababababababababababababababaa -aaababababababababababababababababababababababababababababababababababababab -ababababababababababacababababacacadadadadadadadadadadadadadadabacababababab -abababababacababababababadadadadadadaeafagadahaiadajakadalamadababababababab -abababababababababababacadanaoapaqadararararararadasatadatauadacabababababab -abababababababacacababacadavapaoawadararararararadaxatadatayadacabababababab -abababababababacadadadadadazaoapaAadaBaCaDaEaFaGadaHatadatauadababacabababab -abababababababacadapapapadaIapaoadadaJaKaLaKaoapadaMaNadaNaOadacabacabababab -ababababababababadapaPapadaQapaoaRadapaoapaoapaSadadaTadaTadadadadababababab -abababababacababadapaNapadaUaoapapaVaoapaoapaoapaTapapapapapaWaXadababababab -abababababababacadaYaNaZadbabbaobcadbdbeapaobcbfadaRapapapaRadbgadacabababab -abababababababacadapaNapadadadadadadadadbhbhadadadadadadadadadadadadadababab -abababababababacadaYaNaZadbibjbkblbmbnadbobpadbqbrbsbtbubvbwbxbybxbzadababab -abababababacabacadbAbBbAadbCbDbEbFbFbGbvaYaZbvbHbIapapapbvbJbybybJbyadababab -abababababacababadbKaNbLadaRapapapapbMbvaYaZbvbNapaoaoaoaoaoaoaoaoaoadababab -abababababacabacadapapapadbOaoapbPbQbRbvaYaZbvbSapapbbbTbybJbybybUbyadababab -abababababababacadbVapbWadbOapapbXbYbZadaYaZadcacbbPcccdbyaNcebyaNceadababab -ababababababacabadcfcgadadcfchciadbvadadcjaZadckcladbvbvadadadadadadadababab -ababababababababadcmapaRbvcncococococococpcqcococococococrcsctapcuadabababab -aaabababababacacadcvapapcgcwcxcyczczczczcAcBczczczczczczcCcDapapcEadabababab -aaabababababacadadadcFadadadadadadcGcfadaYaZadadcHcfadadadadapapcuadabababab -abababababababadcIcIcIcIcIcIcIcfaRapapadaYaZadaRapapcJbbcKadcLapcMadabababab -abababababababadcIcIcIcIcIcIcIcFcNapapadaYaZadapaocOcPcQcRadcScTcUadabababab -abababababababadcIcIcIcIcIcIcIcFbGapcVadaYaZadcWaocXbIapaNadadadadadabababab -ababababababacadcYcIcIcIcIcIcIcFcZapdaadaYaZaddbaodcddapaNcHdedfdeadabababab -abababababababadcIcIcIcIcIcIdgaddhapdiadaYaZaddjapapapapbLaddkdkdkadabababab -ababababababacadcIcIcIcIcIcIcIdlapapdmadcwcCadadadadadadadaddkdndkadabababab -ababababababacadcIcIcIcIcIcIcIadcWapaRaddodoadacacacacacabadadadadadabababab -ababababababacadadadadadadadadadbvdpbvaddqdradacacacababababababacacabababab -ababababababacacacabababacacacaddsaNdsadaNaNadacababababacababababababababab -ababababababababababababababacadadadadaddodoadababacacababababababababababab -abababababababababababababababababababdtababdtababababababababababababababab -abababababababababababababababababababababababababababababababababababababaa -aaababababababababababababababababababababababababababababababababababababaa -aaaaabaaababababababababababababababababababababababababababababababaaaaaaaa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +aa +"} +(2,1,1) = {" +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +"} +(3,1,1) = {" +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +"} +(4,1,1) = {" +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +"} +(5,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +"} +(6,1,1) = {" +aa +ab +ab +ab +ab +ab +ac +ab +ab +ab +ab +ab +ac +ab +ab +ab +ac +ac +ac +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +"} +(7,1,1) = {" +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ac +ab +ac +ac +ab +ab +ab +ac +ab +ac +ac +ac +ac +ab +ab +ab +ab +ab +"} +(8,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ab +ac +ac +ac +ab +ab +ac +ac +ac +ac +ab +ac +ac +ab +ab +ac +ad +ad +ad +ad +ad +ad +dD +ad +ad +ac +ab +ab +ab +ab +ab +"} +(9,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ab +ac +ad +ad +ad +ad +ad +dw +ad +ad +ad +ad +ad +ad +dA +ad +ad +cI +cI +cI +cY +cI +cI +cI +ad +ac +ab +ab +ab +ab +ab +"} +(10,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ab +ab +ad +ap +ap +ap +aY +ap +aY +bA +bK +ap +bV +cf +cm +cv +ad +cI +cI +cI +cI +cI +cI +cI +ad +ab +ab +ab +ab +ab +ab +"} +(11,1,1) = {" +ab +ab +ab +ab +ab +ac +ab +ab +ab +ad +ap +aP +aN +aN +aN +aN +bB +aN +ap +ap +cg +ap +ap +cF +cI +cI +cI +cI +cI +cI +cI +ad +ab +ab +ab +ab +ab +ab +"} +(12,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ac +ac +ad +ap +ap +ap +aZ +ap +aZ +bA +bL +ap +bW +ad +aR +ap +ad +cI +cI +cI +cI +cI +cI +cI +ad +ab +ab +ab +ab +ab +ab +"} +(13,1,1) = {" +ab +ab +ab +ab +ab +ab +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +bv +cg +ad +cI +cI +cI +cI +cI +cI +cI +ad +ac +ab +ab +ab +ab +ab +"} +(14,1,1) = {" +ab +ab +ab +ab +ab +ab +ad +an +av +az +aI +aQ +aU +ba +ad +bi +bC +aR +bO +bO +cf +cn +cw +ad +cI +cI +cI +cI +cI +cI +cI +ad +ac +ab +ab +ab +ab +ab +"} +(15,1,1) = {" +ab +ab +ab +ab +ab +ab +ad +ao +ap +ao +ap +ap +ao +ap +ad +bj +bD +ap +ao +ap +ch +co +cz +ad +cI +cI +cI +cI +dg +cI +cI +ad +ac +ac +ab +ab +ab +ab +"} +(16,1,1) = {" +ab +ab +ab +ab +ab +ac +ad +ap +ao +ap +ao +ao +ap +ao +ad +bk +bE +ap +ap +ap +ci +co +cy +ad +cf +cF +cF +cF +ad +dl +ad +dH +ad +ad +ab +ab +ab +ab +"} +(17,1,1) = {" +ab +ab +ab +ab +ab +ac +ad +aq +aw +aA +ad +aR +ap +bc +ad +bl +bF +ap +bP +bX +ad +co +cz +dB +aR +cN +bG +cZ +dh +ap +cW +bv +ds +ad +ab +ab +ab +ab +"} +(18,1,1) = {" +ab +ab +ab +ab +ab +ad +ad +ad +ad +ad +ad +ad +aV +ad +dx +bm +bF +ap +bQ +bY +bv +co +cz +cG +ap +ap +ap +ap +ap +ap +ap +dp +aN +ad +ab +ab +ab +ab +"} +(19,1,1) = {" +ab +ab +ab +ab +ab +ad +ae +ar +ar +aB +aJ +ap +ao +bd +ad +bn +bG +bM +bR +bZ +ad +co +cz +cf +ap +ap +cV +da +di +dm +aR +bv +ds +ad +ab +ab +ab +ab +"} +(20,1,1) = {" +ab +ab +ab +ab +ab +ad +af +ar +ar +aC +aK +ao +ap +be +ad +ad +bv +bv +bv +ad +ad +co +cz +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +dt +ab +ab +ab +"} +(21,1,1) = {" +ab +ab +ab +ab +ab +ad +ag +ar +ar +aD +aL +ap +ao +ap +bh +bo +aY +aY +aY +aY +aY +cp +cA +aY +aY +aY +aY +aY +aY +cw +do +dq +aN +do +ab +ab +ab +ab +"} +(22,1,1) = {" +ab +ab +ab +ab +ab +du +ad +ar +ar +aE +aK +ao +ap +ao +bh +bp +aZ +aZ +aZ +aZ +aZ +cq +cB +aZ +aZ +aZ +aZ +aZ +aZ +cC +do +dr +aN +do +ab +ab +ab +ab +"} +(23,1,1) = {" +ab +ab +ab +ab +ab +ad +ah +ar +ar +aF +ao +ap +ao +bc +ad +ad +bv +bv +bv +ad +ad +co +cz +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +dt +ab +ab +ab +"} +(24,1,1) = {" +ab +ab +ab +ab +ab +ad +ai +ar +ar +aG +ap +ao +ap +bf +ad +bq +bH +bN +bS +ca +ck +co +cz +dC +aR +ap +cW +db +dj +dE +ac +ac +ac +ab +ab +ab +ab +ab +"} +(25,1,1) = {" +ab +ab +ab +ab +ab +ad +ad +ad +ad +ad +ad +ad +aT +ad +ad +br +bI +ap +ap +cb +cl +co +cz +cH +ap +ao +ao +ao +ap +ad +ac +ac +ab +ab +ab +ab +ab +ab +"} +(26,1,1) = {" +ab +ab +ab +ab +ab +ad +aj +as +ax +aH +aM +ad +ap +aR +ad +bs +ap +ao +ap +bP +ad +co +cz +cf +ap +cO +cX +dc +ap +ad +ad +ad +ad +ad +ab +ab +ab +ab +"} +(27,1,1) = {" +ab +ab +ab +ab +ab +ad +ak +at +at +at +aN +aT +ap +ap +ad +bt +ap +ao +ap +cc +bv +co +cz +ad +cJ +cP +bI +dd +ap +ad +ap +dI +ap +ad +ab +ab +ab +ab +"} +(28,1,1) = {" +ab +ab +ab +ab +ab +ad +ad +ad +dv +ad +ad +ad +ap +ap +ad +bu +ap +ao +bT +cd +bv +co +cz +ad +ap +cQ +ap +ap +ap +dF +dG +dJ +dL +ad +ab +ab +ab +ab +"} +(29,1,1) = {" +ab +ab +ab +ab +ab +ad +al +at +at +at +aN +aT +ap +ap +dy +bv +bv +ao +by +by +dz +cr +cC +ad +cK +cR +aN +aN +bL +ad +ap +dK +ap +ad +ab +ab +ab +ab +"} +(30,1,1) = {" +ab +ab +ab +ab +ab +ad +am +au +ay +au +aO +ad +ap +aR +ad +bw +bJ +ao +bJ +aN +ad +cs +cD +ad +ad +ad +ad +cH +ad +ad +ad +ad +ad +ad +ab +ab +ab +ab +"} +(31,1,1) = {" +ab +ab +ab +ab +ab +ad +ad +ad +ad +ad +ad +ad +aW +ad +ad +bx +by +ao +by +ce +ad +ct +ap +ap +cL +cS +ad +de +dk +dk +ad +ab +ab +ab +ab +ab +ab +ab +"} +(32,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ac +ac +ab +ac +ad +aX +bg +ad +by +by +ao +by +by +ad +ap +ap +ap +ap +cT +ad +df +dk +dn +ad +ab +ab +ab +ab +ab +ab +ab +"} +(33,1,1) = {" +ab +ab +ab +ab +ab +ac +ab +ab +ab +ab +ab +ad +ad +ad +ad +bx +bJ +ao +bU +aN +ad +cu +cE +cu +cM +cU +ad +de +dk +dk +ad +ac +ab +ab +ab +ab +ab +ab +"} +(34,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ab +ab +ac +ac +ab +ab +ac +ad +bz +by +ao +by +ce +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ac +ab +ab +ab +ab +ab +ab +"} +(35,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ad +ad +ad +ad +ad +ad +ad +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +"} +(36,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +"} +(37,1,1) = {" +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +"} +(38,1,1) = {" +aa +aa +ab +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +aa +aa "} diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_ww_vault.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_ww_vault.dmm index 85943df963..2890b4954b 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_ww_vault.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_ww_vault.dmm @@ -22,7 +22,7 @@ /turf/open/floor/engine/cult, /area/ruin/powered) "g" = ( -/turf/open/floor/plasteel/circuit/off, +/turf/open/floor/circuit/off, /area/ruin/powered) "h" = ( /turf/closed/indestructible{ @@ -47,30 +47,30 @@ /area/ruin/powered) "l" = ( /mob/living/simple_animal/hostile/faithless, -/turf/open/floor/plasteel/circuit/off, +/turf/open/floor/circuit/off, /area/ruin/powered) "m" = ( /obj/machinery/wish_granter_dark, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/ruin/powered) "n" = ( -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/ruin/powered) "o" = ( /obj/structure/destructible/cult/pylon, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/ruin/powered) "p" = ( /obj/structure/signpost, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/ruin/powered) "q" = ( /obj/effect/meatgrinder, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/ruin/powered) "r" = ( /obj/structure/destructible/cult/pylon, -/turf/open/floor/plasteel/circuit/off, +/turf/open/floor/circuit/off, /area/ruin/powered) "s" = ( /turf/open/floor/engine/cult{ @@ -131,8 +131,8 @@ }, /turf/open/floor/engine/cult{ baseturf = /turf/open/floor/plating/lava/smooth; - blocks_air = 1 }, +/obj/structure/fans/tiny/invisible, /area/ruin/powered) "D" = ( /turf/open/floor/engine/cult{ diff --git a/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm b/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm index 1eec962d6a..97a88290b8 100644 --- a/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm +++ b/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm @@ -1,872 +1,14544 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/obj/structure/lattice,/turf/open/space,/area/space) -"ac" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"ad" = (/obj/machinery/power/tracker,/obj/structure/cable{icon_state = "0-2";d2 = 2},/turf/open/floor/plasteel/airless,/area/solar/derelict_starboard) -"ae" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/space,/area/solar/derelict_starboard) -"af" = (/turf/open/floor/plating/airless,/turf/open/floor/plating/airless{icon_state = "platingdmg2"},/area/solar/derelict_starboard) -"ag" = (/obj/structure/cable{icon_state = "0-2";d2 = 2},/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/solar/derelict_starboard) -"ah" = (/obj/machinery/power/solar{id = "derelictsolar";name = "Derelict Solar Array"},/obj/structure/cable{icon_state = "0-2";d2 = 2},/turf/open/floor/plasteel/airless,/area/solar/derelict_starboard) -"ai" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/derelict_starboard) -"aj" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/space,/area/solar/derelict_starboard) -"ak" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/space,/area/solar/derelict_starboard) -"al" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/space,/area/solar/derelict_starboard) -"am" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/space,/area/solar/derelict_starboard) -"an" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/space,/area/solar/derelict_starboard) -"ao" = (/obj/structure/lattice/catwalk,/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/space,/area/solar/derelict_starboard) -"ap" = (/obj/machinery/power/solar{id = "derelictsolar";name = "Derelict Solar Array"},/obj/structure/cable,/turf/open/floor/plasteel/airless,/area/solar/derelict_starboard) -"aq" = (/obj/structure/lattice/catwalk,/obj/structure/cable,/turf/open/space,/area/solar/derelict_starboard) -"ar" = (/obj/structure/lattice/catwalk,/obj/structure/cable{icon_state = "0-2";d2 = 2},/turf/open/space,/area/solar/derelict_starboard) -"as" = (/turf/closed/wall,/area/derelict/solar_control) -"at" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/derelict/solar_control) -"au" = (/obj/machinery/door/airlock/external{name = "External Engineering"},/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plating,/area/derelict/solar_control) -"av" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plating,/area/derelict/solar_control) -"aw" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plating,/area/derelict/solar_control) -"ax" = (/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"ay" = (/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"az" = (/turf/open/floor/plasteel,/area/derelict/solar_control) -"aA" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aB" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aC" = (/obj/machinery/power/smes,/obj/structure/cable{d2 = 8;icon_state = "0-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aD" = (/obj/structure/cable{icon_state = "0-2";d2 = 2},/obj/machinery/power/solar_control{id = "derelictsolar";name = "Primary Solar Control";track = 0},/obj/structure/cable,/turf/open/floor/plasteel,/area/derelict/solar_control) -"aE" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/space) -"aF" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/derelict/solar_control) -"aG" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aH" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aI" = (/obj/machinery/power/terminal{icon_state = "term";dir = 1},/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aJ" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aK" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aL" = (/obj/machinery/door/airlock/external{name = "Air Bridge Access"},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aM" = (/obj/machinery/door/airlock/external{name = "Air Bridge Access"},/turf/open/floor/plating,/area/derelict/solar_control) -"aN" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aO" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/derelict/solar_control) -"aP" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/derelict/solar_control) -"aQ" = (/obj/machinery/door/window,/turf/open/floor/plasteel,/area/derelict/solar_control) -"aR" = (/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aS" = (/turf/closed/wall/r_wall,/area/derelict/solar_control) -"aT" = (/obj/machinery/power/apc{dir = 8;environ = 0;equipment = 0;lighting = 0;locked = 0;name = "Starboard Solar APC";pixel_x = -24;pixel_y = 0},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aU" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"aV" = (/obj/machinery/door/airlock/external{name = "External Engineering"},/turf/open/floor/plating,/area/derelict/solar_control) -"aW" = (/obj/machinery/door/airlock/highsecurity,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aX" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"aY" = (/turf/closed/wall/r_wall,/area/ruin/unpowered/no_grav) -"aZ" = (/obj/machinery/computer/monitor,/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"ba" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/machinery/light/small,/turf/open/floor/plasteel,/area/derelict/solar_control) -"bb" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating,/area/derelict/solar_control) -"bd" = (/obj/structure/grille/broken,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"be" = (/obj/machinery/light/small,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bf" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/porta_turret_cover,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bg" = (/obj/machinery/porta_turret_cover,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bh" = (/obj/machinery/door/airlock/engineering{name = "Starboard Solar Access";req_access_txt = "10"},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bi" = (/obj/structure/grille,/turf/open/space,/area/ruin/unpowered/no_grav) -"bj" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/derelict/bridge/ai_upload) -"bk" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/solar_control) -"bl" = (/turf/closed/wall,/area/derelict/bridge/ai_upload) -"bm" = (/obj/machinery/door/window,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bn" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bo" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bp" = (/obj/machinery/door/window{base_state = "right";dir = 4;icon_state = "right"},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bq" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/derelict/solar_control) -"br" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bs" = (/turf/open/floor/plasteel{icon_state = "damaged1"},/area/derelict/solar_control) -"bt" = (/obj/machinery/door/window,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bu" = (/turf/open/floor/plasteel{icon_state = "damaged5"},/area/derelict/solar_control) -"bv" = (/obj/item/weapon/stock_parts/matter_bin,/turf/open/floor/plasteel{icon_state = "damaged4"},/area/derelict/solar_control) -"bw" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/smes,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bx" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/microwave,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"by" = (/obj/structure/rack,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bz" = (/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bA" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3;name = "3maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bB" = (/turf/open/floor/plasteel{icon_state = "damaged2"},/area/derelict/solar_control) -"bC" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel{icon_state = "damaged3"},/area/derelict/solar_control) -"bD" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/cryo_tube,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bE" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/bridge/ai_upload) -"bF" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/bridge/ai_upload) -"bG" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bH" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2;name = "2maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bI" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bJ" = (/obj/machinery/door/window{base_state = "right";dir = 4;icon_state = "right"},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bK" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/bridge/ai_upload) -"bL" = (/turf/open/space,/area/derelict/bridge/ai_upload) -"bM" = (/obj/item/weapon/stock_parts/console_screen,/turf/open/space,/area/derelict/bridge/ai_upload) -"bN" = (/turf/open/floor/plasteel/airless/circuit,/area/derelict/bridge/ai_upload) -"bO" = (/turf/open/floor/plating/airless,/area/derelict/bridge/ai_upload) -"bP" = (/obj/machinery/porta_turret_cover,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bQ" = (/obj/item/device/aicard,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/bridge/ai_upload) -"bR" = (/obj/structure/lattice,/turf/open/space,/area/derelict/bridge/ai_upload) -"bS" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/derelict/solar_control) -"bT" = (/obj/structure/rack,/obj/item/weapon/circuitboard/computer/solar_control,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bU" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/autolathe,/obj/item/weapon/circuitboard/machine/protolathe{pixel_x = -5;pixel_y = -3},/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bV" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/circuit_imprinter,/turf/open/floor/plasteel,/area/derelict/bridge/ai_upload) -"bW" = (/obj/machinery/power/apc{dir = 8;name = "Worn-out APC";pixel_x = -24;pixel_y = 0},/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bX" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel/airless/circuit,/area/derelict/bridge/ai_upload) -"bY" = (/obj/structure/frame/computer,/obj/item/weapon/circuitboard/computer/rdconsole,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"bZ" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"ca" = (/obj/machinery/door/airlock/external,/turf/open/floor/plasteel,/area/derelict/solar_control) -"cb" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/space) -"cc" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plasteel/airless/circuit,/area/derelict/bridge/ai_upload) -"cd" = (/obj/machinery/light,/turf/open/floor/plasteel/airless,/area/derelict/bridge/ai_upload) -"ce" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"cf" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"cg" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"ch" = (/turf/closed/wall,/area/ruin/unpowered/no_grav) -"ci" = (/turf/closed/wall/r_wall,/area/space) -"cj" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/closed/wall/r_wall,/area/derelict/bridge/ai_upload) -"ck" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plasteel,/area/derelict/solar_control) -"cl" = (/turf/closed/wall/r_wall,/area/derelict/gravity_generator) -"cm" = (/obj/machinery/light/small,/turf/open/floor/plasteel,/area/derelict/solar_control) -"cn" = (/obj/item/weapon/ore/iron,/obj/item/weapon/ore/iron,/obj/item/weapon/ore/iron,/turf/open/space,/area/space) -"co" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/gravity_generator) -"cp" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/gravity_generator) -"cq" = (/obj/item/weapon/stock_parts/manipulator,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/gravity_generator) -"cr" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/closed/wall,/area/derelict/bridge/access) -"cs" = (/turf/closed/wall,/area/derelict/bridge/access) -"ct" = (/obj/machinery/door/airlock/maintenance,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cu" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) -"cv" = (/obj/item/weapon/ore/slag,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) -"cw" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/gravity_generator) -"cx" = (/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cy" = (/obj/structure/rack,/obj/item/weapon/melee/classic_baton,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cz" = (/obj/structure/rack,/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cA" = (/obj/structure/rack,/obj/item/clothing/head/helmet/swat,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cB" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cC" = (/obj/structure/rack,/obj/item/weapon/electronics/apc,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cD" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/smes,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cE" = (/obj/structure/rack,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/manipulator,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cF" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cG" = (/obj/item/weapon/screwdriver,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/gravity_generator) -"cH" = (/obj/machinery/gravity_generator/main/station{on = 0},/turf/open/floor/plasteel/airless,/area/derelict/gravity_generator) -"cI" = (/obj/item/weapon/ore/slag,/turf/open/space,/area/space) -"cJ" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/closed/wall,/area/derelict/bridge/access) -"cK" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cL" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cM" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cN" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cO" = (/turf/open/floor/plasteel/airless,/area/derelict/gravity_generator) -"cP" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/gravity_generator) -"cQ" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cR" = (/obj/structure/rack,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plating,/area/derelict/bridge/access) -"cS" = (/obj/machinery/light/small{dir = 4},/obj/structure/rack,/obj/item/stack/cable_coil/cut,/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/derelict/bridge/access) -"cU" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/derelict/bridge/access) -"cV" = (/obj/machinery/door/airlock/command{name = "E.V.A.";req_access = null;req_access_txt = "18"},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cW" = (/obj/machinery/door/airlock/engineering{name = "Engineering Secure Storage";req_access_txt = "10"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cX" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"cY" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"cZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"da" = (/obj/machinery/door/airlock/engineering{name = "Engineering Access";req_access_txt = "10"},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"db" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dd" = (/turf/open/floor/plating,/area/derelict/bridge/access) -"de" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless/solarpanel,/area/ruin/unpowered/no_grav) -"df" = (/obj/structure/cable{icon_state = "0-4";d2 = 4},/obj/item/wallframe/apc,/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dg" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dh" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"di" = (/obj/structure/cable{d2 = 8;icon_state = "0-8"},/obj/structure/frame/machine,/obj/item/weapon/stock_parts/console_screen,/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dj" = (/turf/open/floor/plasteel/airless/solarpanel,/area/ruin/unpowered/no_grav) -"dk" = (/obj/item/stack/cable_coil/cut,/turf/open/space,/area/space) -"dl" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dm" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plating,/area/derelict/bridge/access) -"dn" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"do" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dp" = (/obj/machinery/door/airlock/glass,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dq" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dr" = (/turf/closed/wall/r_wall,/area/derelict/singularity_engine) -"ds" = (/obj/machinery/light/small{dir = 8},/obj/structure/table,/obj/item/weapon/paper{info = "If the equipment breaks there should be enough spare parts in our engineering storage near the north east solar array.";name = "Equipment Inventory"},/turf/open/floor/plasteel/airless,/area/derelict/gravity_generator) -"dt" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"du" = (/obj/machinery/light/small{dir = 4},/obj/item/weapon/stock_parts/matter_bin{pixel_x = -10;pixel_y = 5},/obj/item/weapon/stock_parts/matter_bin{pixel_x = 5;pixel_y = 5},/obj/item/weapon/stock_parts/matter_bin,/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dv" = (/obj/item/weapon/stock_parts/matter_bin,/turf/open/space,/area/space) -"dw" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dx" = (/obj/machinery/door/window,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dy" = (/obj/structure/window/reinforced,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dz" = (/turf/closed/wall,/area/derelict/bridge) -"dA" = (/obj/structure/sign/electricshock,/turf/closed/wall/r_wall,/area/derelict/singularity_engine) -"dB" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/derelict/singularity_engine) -"dC" = (/obj/machinery/door/airlock/engineering{name = "Engineering Access";req_access_txt = "10"},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plating/airless,/area/derelict/gravity_generator) -"dD" = (/obj/structure/sign/securearea{name = "ENGINEERING ACCESS"},/turf/closed/wall/r_wall,/area/derelict/gravity_generator) -"dE" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/space,/area/space) -"dF" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"dG" = (/obj/structure/frame/computer,/turf/open/floor/plasteel,/area/derelict/bridge) -"dH" = (/obj/structure/frame/computer,/obj/structure/cable{icon_state = "0-2";d2 = 2},/turf/open/floor/plasteel,/area/derelict/bridge) -"dI" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2;name = "2maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/bridge) -"dJ" = (/obj/machinery/computer/security,/turf/open/floor/plasteel,/area/derelict/bridge) -"dK" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3;pixel_y = -7},/turf/open/floor/plasteel,/area/derelict/bridge) -"dL" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel,/area/derelict/bridge) -"dM" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3;pixel_y = 7},/turf/open/floor/plasteel,/area/derelict/bridge) -"dN" = (/obj/item/weapon/grenade/empgrenade,/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"dO" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"dP" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"dQ" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"dR" = (/obj/item/stack/cable_coil/cut,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"dS" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"dT" = (/obj/machinery/door/airlock/engineering{name = "Engineering Access";req_access_txt = "10"},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"dU" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"dV" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"dW" = (/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"dX" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"dY" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plating,/area/derelict/bridge/access) -"dZ" = (/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plasteel,/area/derelict/bridge) -"ea" = (/turf/open/floor/plasteel,/area/derelict/bridge) -"eb" = (/turf/open/floor/plating,/area/derelict/bridge) -"ec" = (/obj/structure/table,/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel,/area/derelict/bridge) -"ed" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"ee" = (/obj/structure/window/reinforced,/obj/machinery/portable_atmospherics/canister/toxins,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"ef" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"eg" = (/obj/structure/window/reinforced,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"eh" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"ei" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"ej" = (/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"ek" = (/obj/structure/closet/radiation,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'";icon_state = "radiation";name = "RADIOACTIVE AREA";pixel_x = 32;pixel_y = 0},/turf/open/floor/plasteel,/area/derelict/gravity_generator) -"el" = (/turf/closed/wall,/area/derelict/gravity_generator) -"em" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"en" = (/obj/machinery/power/emitter{dir = 1;icon_state = "emitter"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"eo" = (/obj/machinery/field/generator,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ep" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eq" = (/obj/structure/window/reinforced/fulltile,/turf/open/floor/plasteel,/area/derelict/bridge/access) -"er" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1;scrub_N2O = 0;scrub_Toxins = 0},/turf/open/floor/plating,/area/derelict/bridge) -"es" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/derelict/bridge) -"et" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"eu" = (/obj/item/stack/rods,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"ev" = (/obj/structure/grille,/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ew" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ex" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ey" = (/obj/structure/noticeboard,/turf/closed/wall/r_wall,/area/derelict/singularity_engine) -"ez" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"eA" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eB" = (/obj/machinery/door/window/eastleft{name = "Heads of Staff";req_access_txt = "19"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eC" = (/obj/structure/table,/obj/item/device/paicard,/turf/open/floor/plasteel,/area/derelict/bridge) -"eD" = (/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/derelict/bridge) -"eE" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"eF" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"eG" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"eH" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eI" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plating,/area/derelict/bridge/access) -"eJ" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"eK" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel,/area/derelict/bridge) -"eL" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/bridge) -"eM" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/bridge) -"eN" = (/obj/item/weapon/paper{info = "Objective #1: Destroy the station with a nuclear device.";name = "Objectives of a Nuclear Operative"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"eO" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating,/area/derelict/bridge/access) -"eP" = (/obj/structure/table,/turf/open/floor/plasteel,/area/derelict/bridge) -"eQ" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge) -"eR" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plasteel,/area/derelict/bridge) -"eS" = (/obj/structure/chair,/turf/open/floor/plasteel,/area/derelict/bridge) -"eT" = (/obj/structure/table,/obj/item/weapon/screwdriver,/turf/open/floor/plasteel,/area/derelict/bridge) -"eU" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/bridge) -"eV" = (/obj/item/stack/rods,/turf/open/space,/area/space) -"eW" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"eX" = (/obj/item/weapon/shard,/obj/structure/grille/broken,/obj/effect/decal/remains/human{desc = "This guy seemed to have died in terrible way! Half his remains are dust.";icon_state = "remains";name = "Syndicate agent remains"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"eY" = (/obj/item/clothing/suit/space/syndicate/black/engie,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"eZ" = (/obj/item/stack/rods,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fa" = (/obj/item/weapon/shard,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"fb" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fc" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fd" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fe" = (/obj/structure/table,/obj/item/weapon/rack_parts,/turf/open/floor/plasteel,/area/derelict/bridge) -"ff" = (/obj/structure/window/fulltile,/turf/open/floor/plasteel,/area/derelict/bridge) -"fg" = (/obj/structure/table,/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/obj/structure/cable,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge) -"fh" = (/obj/structure/table,/obj/machinery/light/small,/turf/open/floor/plasteel,/area/derelict/bridge) -"fi" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/bridge) -"fj" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fk" = (/obj/item/clothing/head/helmet/space/syndicate/black/engie,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fl" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fm" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fn" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fo" = (/turf/closed/wall/r_wall,/area/derelict/bridge) -"fp" = (/obj/machinery/door/window{dir = 2;name = "Captain's Quarters";req_access_txt = "20"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/derelict/bridge) -"fq" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fr" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fs" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/light/small{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ft" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fu" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"fv" = (/obj/effect/spawner/lootdrop/crate_spawner,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fw" = (/obj/item/drone_shell/dusty,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fx" = (/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fy" = (/obj/structure/table,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fz" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fA" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3;pixel_y = -7},/obj/item/weapon/stock_parts/matter_bin,/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fB" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell{charge = 100;maxcharge = 15000},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fC" = (/turf/open/space,/area/derelict/bridge/access) -"fD" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"fE" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fF" = (/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1;pixel_y = -1},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fG" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"fH" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fI" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fJ" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"fK" = (/obj/machinery/door/window,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel,/area/derelict/bridge/access) -"fL" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fM" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fN" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fO" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/singularity_engine) -"fP" = (/obj/structure/grille,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"fQ" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"fR" = (/obj/machinery/door/airlock/maintenance{name = "Tech Storage";req_access_txt = "23"},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fS" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/bridge/access) -"fT" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"fU" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"fV" = (/obj/item/weapon/screwdriver,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fW" = (/obj/item/stack/rods,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fX" = (/obj/item/weapon/shard{icon_state = "medium"},/obj/item/stack/cable_coil/cut,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"fY" = (/obj/structure/table,/obj/machinery/light/small{dir = 4},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"fZ" = (/turf/closed/wall,/area/derelict/hallway/primary) -"ga" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/hallway/primary) -"gb" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"gc" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gd" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plating/airless,/area/derelict/bridge/access) -"ge" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"gf" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"gg" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"gh" = (/obj/item/weapon/ore/slag,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gi" = (/obj/item/weapon/shard,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gj" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gk" = (/turf/closed/wall/r_wall,/area/derelict/hallway/primary) -"gl" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gm" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/hallway/primary) -"gn" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"go" = (/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gp" = (/obj/structure/window/fulltile,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gq" = (/turf/open/floor/plating/airless,/area/derelict/bridge/access) -"gr" = (/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"gs" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"gt" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gu" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1;scrub_N2O = 0;scrub_Toxins = 0},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1;scrub_N2O = 0;scrub_Toxins = 0},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gw" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gx" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gy" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gz" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched2"},/area/derelict/hallway/primary) -"gA" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gB" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/turf/open/floor/plasteel/airless,/area/derelict/bridge/access) -"gC" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched2"},/area/ruin/unpowered/no_grav) -"gD" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/unpowered/no_grav) -"gE" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gF" = (/obj/machinery/door/window,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gG" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"gH" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/ruin/unpowered/no_grav) -"gI" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"gJ" = (/obj/structure/grille/broken,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gK" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/singularity_engine) -"gL" = (/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gM" = (/obj/item/weapon/crowbar,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gN" = (/obj/structure/grille,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"gO" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gP" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/ruin/unpowered/no_grav) -"gQ" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"gR" = (/obj/item/weapon/shard{icon_state = "small"},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gS" = (/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gT" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"gU" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"gV" = (/turf/closed/wall/r_wall,/area/derelict/arrival) -"gW" = (/turf/closed/wall,/area/derelict/arrival) -"gX" = (/turf/closed/wall,/area/derelict/medical/chapel) -"gY" = (/turf/closed/wall,/area/derelict/singularity_engine) -"gZ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ha" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"hb" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"hc" = (/obj/structure/lattice,/obj/structure/window/fulltile,/turf/open/space,/area/ruin/unpowered/no_grav) -"hd" = (/obj/structure/table,/turf/open/floor/plasteel,/area/derelict/arrival) -"he" = (/obj/structure/chair,/turf/open/floor/plasteel,/area/derelict/arrival) -"hf" = (/turf/open/floor/plasteel,/area/derelict/arrival) -"hg" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel,/area/derelict/arrival) -"hh" = (/obj/structure/chair{dir = 8},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/derelict/arrival) -"hi" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/derelict/arrival) -"hj" = (/obj/structure/closet/coffin,/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hk" = (/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hl" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hm" = (/obj/item/weapon/shard,/turf/open/space,/area/space) -"hn" = (/obj/structure/grille,/turf/open/space,/area/derelict/singularity_engine) -"ho" = (/obj/item/weapon/shard,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/singularity_engine) -"hp" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched2"},/area/derelict/arrival) -"hq" = (/turf/open/floor/plating/airless,/area/derelict/arrival) -"hr" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/arrival) -"hs" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/derelict/arrival) -"ht" = (/obj/machinery/light/small,/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hu" = (/obj/machinery/door/airlock/medical{name = "Morgue";req_access_txt = "6"},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hv" = (/turf/closed/wall,/area/derelict/medical) -"hw" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/medical) -"hx" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/medical) -"hy" = (/obj/item/weapon/shard,/obj/structure/grille/broken,/turf/open/floor/plating/airless,/area/derelict/medical) -"hz" = (/turf/open/floor/plating/airless,/area/derelict/medical) -"hA" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/medical) -"hB" = (/obj/machinery/door/airlock/external{name = "External Engineering"},/turf/open/floor/plating/airless,/area/space) -"hC" = (/obj/structure/grille,/turf/open/space,/area/space) -"hD" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/hallway/primary) -"hE" = (/obj/machinery/door/window{dir = 8},/turf/open/floor/plasteel,/area/derelict/arrival) -"hF" = (/obj/structure/table,/obj/machinery/computer/pod/old{name = "ProComp IIe";pixel_y = 7;id = "derelict_gun"},/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"hG" = (/obj/machinery/door/morgue{name = "coffin storage";req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hH" = (/obj/structure/bodycontainer/morgue,/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"hI" = (/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"hJ" = (/obj/item/weapon/firstaid_arm_assembly,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"hK" = (/obj/structure/closet,/obj/structure/window/reinforced{dir = 8},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical) -"hL" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"hM" = (/obj/machinery/light{dir = 1},/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating/airless,/area/derelict/medical) -"hN" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/singularity_engine) -"hO" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"hP" = (/turf/open/floor/plating,/area/derelict/arrival) -"hQ" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/open/space,/area/space) -"hR" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"hS" = (/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"hT" = (/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"hU" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"hV" = (/obj/machinery/light{icon_state = "tube1";dir = 8},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"hW" = (/obj/item/stack/medical/bruise_pack,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"hX" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical) -"hY" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"hZ" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/medical) -"ia" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/ruin/unpowered/no_grav) -"ib" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"ic" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"id" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"ie" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 8},/area/derelict/medical/chapel) -"if" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"ig" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 8},/area/derelict/medical/chapel) -"ih" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"ii" = (/turf/open/floor/plasteel/chapel{dir = 8},/area/derelict/medical/chapel) -"ij" = (/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"ik" = (/obj/structure/chair,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"il" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/derelict/medical) -"im" = (/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"in" = (/obj/item/drone_shell/dusty,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"io" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/derelict/singularity_engine) -"ip" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"iq" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/ruin/unpowered/no_grav) -"ir" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel,/area/derelict/arrival) -"is" = (/obj/structure/chair{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"it" = (/obj/structure/window/reinforced,/turf/open/space,/area/space) -"iu" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/grille,/turf/open/space,/area/space) -"iv" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"iw" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"ix" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"iy" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"iz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1;scrub_N2O = 0;scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/derelict/medical/chapel) -"iA" = (/obj/machinery/sleeper{icon_state = "sleeper-open";dir = 4},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iB" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/obj/item/weapon/reagent_containers/glass/beaker,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iC" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iD" = (/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"iE" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless/white,/area/ruin/unpowered/no_grav) -"iF" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"iG" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"iH" = (/obj/machinery/door/poddoor{id = "derelict_gun";name = "Derelict Mass Driver"},/turf/open/floor/plating,/area/ruin/unpowered/no_grav) -"iI" = (/turf/open/floor/plating,/area/ruin/unpowered/no_grav) -"iJ" = (/turf/open/floor/plating,/area/derelict/medical/chapel) -"iK" = (/obj/machinery/mass_driver{dir = 8;icon_state = "mass_driver";id = "derelict_gun"},/obj/machinery/door/window{dir = 4;req_access_txt = "25"},/obj/structure/closet/coffin,/turf/open/floor/plating,/area/derelict/medical/chapel) -"iL" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iM" = (/obj/item/stack/medical/bruise_pack,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical) -"iN" = (/obj/item/stack/medical/ointment,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"iO" = (/obj/machinery/light{icon_state = "tube1";dir = 4},/turf/open/floor/plating/airless,/area/derelict/medical) -"iP" = (/obj/structure/closet/l3closet,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"iQ" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"iR" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/space,/area/space) -"iS" = (/obj/structure/window/reinforced{dir = 1},/turf/open/space,/area/space) -"iT" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/grille,/turf/open/space,/area/space) -"iU" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"iV" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"iW" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/chapel{dir = 1},/area/derelict/medical/chapel) -"iX" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"iY" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"iZ" = (/obj/item/weapon/cigbutt,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"ja" = (/obj/machinery/door/airlock/glass{name = "Med-Sci";req_access_txt = "9"},/turf/open/floor/plating/airless,/area/derelict/medical) -"jb" = (/obj/structure/table,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jc" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2";pixel_y = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jd" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/derelict/arrival) -"je" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1;scrub_N2O = 0;scrub_Toxins = 0},/turf/open/floor/plasteel/chapel,/area/derelict/medical/chapel) -"jf" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jg" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jh" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"ji" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jj" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"jk" = (/obj/item/weapon/reagent_containers/glass/beaker,/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/medical) -"jl" = (/obj/structure/closet/wardrobe/genetics_white,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2;name = "2maintenance loot spawner"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jm" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jn" = (/obj/item/weapon/shard,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jo" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jp" = (/turf/open/floor/plasteel/airless/white,/area/ruin/unpowered/no_grav) -"jq" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jr" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/hallway/primary) -"js" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jt" = (/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/derelict/arrival) -"ju" = (/obj/machinery/light/small,/turf/open/floor/plasteel/chapel{dir = 4},/area/derelict/medical/chapel) -"jv" = (/obj/machinery/door/window{dir = 8},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jw" = (/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jx" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jy" = (/obj/machinery/power/apc{dir = 4;name = "Worn-out APC";pixel_x = 24;pixel_y = 0},/obj/structure/cable{icon_state = "0-2";d2 = 2},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jz" = (/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jA" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/bed,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jB" = (/obj/item/stack/medical/ointment,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jC" = (/obj/structure/bed,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jD" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/medical) -"jE" = (/obj/machinery/door/airlock/medical{name = "Medical"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jF" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jG" = (/obj/structure/window/fulltile,/turf/open/space,/area/ruin/unpowered/no_grav) -"jH" = (/obj/machinery/light{icon_state = "tube1";dir = 8},/turf/open/floor/plasteel,/area/derelict/arrival) -"jI" = (/obj/machinery/light{icon_state = "tube1";dir = 4},/turf/open/floor/plasteel,/area/derelict/arrival) -"jJ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/derelict/arrival) -"jK" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating,/area/derelict/arrival) -"jL" = (/turf/closed/wall/r_wall,/area/derelict/medical/chapel) -"jM" = (/obj/machinery/door/window,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"jN" = (/obj/machinery/door/window/southleft,/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jO" = (/obj/machinery/door/window/southright,/turf/open/floor/plasteel/airless/white,/area/derelict/medical) -"jP" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jQ" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/machinery/door/airlock/research{name = "Toxins Research";req_access_txt = "7"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jR" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jS" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"jT" = (/obj/structure/lattice,/obj/structure/grille,/turf/open/space,/area/ruin/unpowered/no_grav) -"jU" = (/obj/machinery/door/airlock/external{name = "Arrivals Docking Bay 1"},/turf/open/floor/plating,/area/derelict/arrival) -"jV" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/unpowered/no_grav) -"jW" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2;name = "2maintenance loot spawner"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"jX" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary) -"jY" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary) -"jZ" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"ka" = (/obj/structure/frame/computer,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kb" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"kc" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"kd" = (/obj/structure/window/fulltile,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"ke" = (/obj/effect/decal/cleanable/dirt,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2;name = "2maintenance loot spawner"},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"kf" = (/obj/effect/decal/cleanable/dirt,/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"kg" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/structure/window/fulltile,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"kh" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/obj/machinery/door/airlock/research{name = "Toxins Research";req_access_txt = "7"},/turf/open/floor/plasteel/airless,/area/derelict/arrival) -"ki" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel,/area/derelict/arrival) -"kj" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plating,/area/derelict/arrival) -"kk" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel,/area/derelict/arrival) -"kl" = (/obj/machinery/door/airlock/command{name = "Teleporter Room"},/turf/open/floor/plasteel/airless,/area/derelict/medical/chapel) -"km" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary) -"kn" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"ko" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1;scrub_N2O = 0;scrub_Toxins = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kp" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kq" = (/obj/item/device/assembly/prox_sensor{pixel_x = -8;pixel_y = 4},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kr" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/turf/open/floor/plasteel,/area/derelict/arrival) -"ks" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel,/area/derelict/arrival) -"kt" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"ku" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/hallway/primary) -"kv" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kw" = (/obj/machinery/door/window{base_state = "right";dir = 4;icon_state = "right"},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kx" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"ky" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kz" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kA" = (/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kB" = (/obj/structure/window/fulltile,/turf/open/floor/plating/airless,/area/derelict/arrival) -"kC" = (/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel,/area/derelict/arrival) -"kD" = (/obj/machinery/door/window,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kE" = (/obj/structure/cable{d1 = 1;d2 = 4;icon_state = "1-4"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kF" = (/obj/machinery/door/window{base_state = "right";dir = 4;icon_state = "right"},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kG" = (/obj/structure/cable{d2 = 8;icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2";d2 = 2},/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kH" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kI" = (/obj/machinery/vending/hydronutrients,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kJ" = (/obj/structure/girder,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kK" = (/obj/structure/girder,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"kL" = (/obj/structure/window/fulltile,/turf/open/space,/area/space) -"kM" = (/obj/structure/girder,/turf/open/floor/plating,/area/derelict/arrival) -"kN" = (/obj/structure/bed,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kO" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"kP" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"kQ" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"kR" = (/obj/machinery/door/airlock/security{name = "Security";req_access = null;req_access_txt = "1"},/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kS" = (/obj/machinery/door/window,/turf/open/floor/plasteel/airless,/area/hallway/primary/port) -"kT" = (/obj/machinery/vending/hydroseeds,/turf/open/floor/plasteel/airless,/area/hallway/primary/port) -"kU" = (/obj/item/weapon/cigbutt,/turf/open/space,/area/space) -"kV" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/derelict/arrival) -"kW" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kX" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kY" = (/obj/machinery/vending/sovietsoda,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"kZ" = (/obj/effect/decal/cleanable/blood/gibs/old,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"la" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 0;name = "Worn-out APC";pixel_y = -24},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lb" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lc" = (/obj/structure/window/reinforced{dir = 8},/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"ld" = (/obj/structure/lattice,/obj/item/stack/cable_coil/cut,/turf/open/space,/area/space) -"le" = (/obj/effect/decal/cleanable/blood/splatter,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lf" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/decal/cleanable/blood/splatter,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lg" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lh" = (/obj/machinery/door/airlock/maintenance{name = "Atmospherics Access";req_access_txt = "24"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"li" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lj" = (/obj/item/stack/cable_coil/cut{amount = 2;dir = 2;icon_state = "coil_red2"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lk" = (/obj/structure/closet/wardrobe/orange,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2;name = "2maintenance loot spawner"},/obj/item/weapon/shovel/spade,/obj/item/weapon/cultivator,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"ll" = (/obj/structure/grille,/turf/open/floor/plating,/area/derelict/arrival) -"lm" = (/obj/structure/closet/wardrobe,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3;name = "3maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/arrival) -"ln" = (/obj/item/weapon/stock_parts/manipulator{pixel_x = -15;pixel_y = 10},/obj/item/weapon/stock_parts/manipulator,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"lo" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3;name = "3maintenance loot spawner"},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"lp" = (/obj/structure/chair/stool,/obj/effect/decal/remains/human,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lq" = (/obj/structure/table,/obj/item/weapon/reagent_containers/glass/beaker{list_reagents = list("sacid" = 50)},/obj/item/weapon/paper/crumpled/bloody{desc = "Looks like someone started shakily writing a will in space common, but were interrupted by something bloody...";info = "I, Victor Belyakov, do hereby leave my _- ";name = "unfinished paper scrap"},/obj/item/weapon/pen,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lr" = (/obj/structure/table,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"ls" = (/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"lt" = (/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lv" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lw" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lx" = (/turf/closed/wall,/area/derelict/atmospherics) -"ly" = (/turf/closed/wall/r_wall,/area/derelict/atmospherics) -"lz" = (/turf/open/space,/area/ruin/unpowered/no_grav) -"lA" = (/obj/structure/lattice,/turf/open/space,/area/ruin/unpowered/no_grav) -"lB" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lC" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lD" = (/obj/structure/grille,/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"lE" = (/obj/structure/bed,/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lF" = (/turf/open/floor/plasteel/airless/floorgrime,/area/derelict/hallway/primary) -"lG" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/hallway/primary) -"lH" = (/obj/item/ammo_casing/a357,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lI" = (/obj/structure/table,/obj/item/device/healthanalyzer,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"lJ" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lK" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lL" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{icon_state = "connector_map";dir = 8},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lM" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lN" = (/obj/machinery/atmospherics/pipe/manifold/cyan/hidden,/obj/machinery/meter,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lO" = (/obj/machinery/atmospherics/pipe/simple/cyan/hidden{icon_state = "intact";dir = 9},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lP" = (/obj/machinery/door/airlock/maintenance{name = "Atmospherics Access";req_access_txt = "24"},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lQ" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"lR" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"lS" = (/obj/structure/closet/wardrobe/mixed,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2;name = "2maintenance loot spawner"},/turf/open/floor/plasteel,/area/derelict/arrival) -"lT" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"lU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{icon_state = "intact";dir = 5},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lW" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/components/binary/valve,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"lX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"lY" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/derelict/arrival) -"lZ" = (/obj/machinery/door/airlock/external{name = "Escape Airlock"},/turf/open/floor/plating,/area/derelict/arrival) -"ma" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mb" = (/obj/structure/lattice,/obj/item/stack/cable_coil/cut,/turf/open/space,/area/ruin/unpowered/no_grav) -"mc" = (/obj/machinery/door/window{dir = 8},/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless,/area/ruin/unpowered/no_grav) -"md" = (/turf/closed/wall,/area/derelict/hallway/secondary) -"me" = (/obj/structure/girder,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mf" = (/turf/closed/wall/r_wall,/area/derelict/hallway/secondary) -"mg" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"mh" = (/obj/machinery/door/window{base_state = "right";dir = 4;icon_state = "right"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"mi" = (/obj/item/ammo_casing/a357{pixel_x = -5},/obj/item/ammo_casing/a357{pixel_x = 5;pixel_y = 6},/obj/item/ammo_casing/a357,/turf/open/floor/plasteel/airless,/area/derelict/hallway/primary) -"mj" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mk" = (/turf/open/floor/plasteel/airless{icon_state = "floorscorched1"},/area/derelict/atmospherics) -"ml" = (/obj/structure/window/fulltile,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mm" = (/obj/structure/grille,/obj/item/weapon/shard,/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plating/airless,/area/space) -"mn" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"mo" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"mp" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/atmospherics) -"mq" = (/turf/open/floor/plasteel{icon_state = "damaged2";initial_gas_mix = "TEMP=2.7"},/area/derelict/atmospherics) -"mr" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/derelict/atmospherics) -"ms" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/atmospherics) -"mt" = (/obj/structure/window/fulltile,/turf/open/space,/area/derelict/atmospherics) -"mu" = (/obj/item/stack/rods,/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mv" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/space,/area/space) -"mw" = (/obj/structure/frame/computer,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"mx" = (/obj/machinery/portable_atmospherics/canister,/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"my" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/derelict/atmospherics) -"mz" = (/obj/structure/lattice,/turf/open/space,/area/derelict/atmospherics) -"mA" = (/obj/item/stack/cable_coil/cut,/turf/open/space,/area/ruin/unpowered/no_grav) -"mB" = (/obj/structure/door_assembly/door_assembly_mai{name = "airlock assembly"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mC" = (/obj/item/weapon/wirecutters,/obj/structure/cable{d1 = 2;d2 = 8;icon_state = "2-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mD" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mE" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"mF" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mG" = (/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/derelict/atmospherics) -"mH" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/ruin/unpowered/no_grav) -"mI" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mJ" = (/obj/item/stack/cable_coil/cut,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"mK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1;scrub_N2O = 0;scrub_Toxins = 0},/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"mL" = (/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mM" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"mN" = (/turf/open/floor/plasteel/airless{icon_state = "damaged1"},/area/derelict/atmospherics) -"mO" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/space,/area/ruin/unpowered/no_grav) -"mP" = (/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mQ" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 8;name = "8maintenance loot spawner"},/turf/open/floor/plating/airless,/area/derelict/atmospherics) -"mR" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/derelict/hallway/primary) -"mS" = (/turf/open/space,/area/derelict/atmospherics) -"mT" = (/obj/machinery/light/small,/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"mU" = (/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mV" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mW" = (/obj/machinery/door/airlock/maintenance{name = "Aux Storage";req_access_txt = "23"},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mX" = (/obj/structure/cable{icon_state = "0-2";d2 = 2},/obj/structure/cable,/obj/machinery/power/apc{dir = 8;name = "Worn-out APC";pixel_x = -24;pixel_y = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"mY" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"mZ" = (/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"na" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nb" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nc" = (/obj/machinery/power/apc{dir = 1;name = "Worn-out APC";pixel_x = 0;pixel_y = 24},/obj/structure/cable{icon_state = "0-4";d2 = 4},/turf/open/floor/plasteel/airless,/area/derelict/atmospherics) -"nd" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"ne" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict9"},/area/derelict/hallway/secondary) -"nf" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict10"},/area/derelict/hallway/secondary) -"ng" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict11"},/area/derelict/hallway/secondary) -"nh" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict12"},/area/derelict/hallway/secondary) -"ni" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict13"},/area/derelict/hallway/secondary) -"nj" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict14"},/area/derelict/hallway/secondary) -"nk" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict15"},/area/derelict/hallway/secondary) -"nl" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless{icon_state = "derelict16"},/area/derelict/hallway/secondary) -"nm" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nn" = (/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"no" = (/turf/open/floor/plasteel/airless{icon_state = "derelict1"},/area/derelict/hallway/secondary) -"np" = (/turf/open/floor/plasteel/airless{icon_state = "derelict2"},/area/derelict/hallway/secondary) -"nq" = (/turf/open/floor/plasteel/airless{icon_state = "derelict3"},/area/derelict/hallway/secondary) -"nr" = (/turf/open/floor/plasteel/airless{icon_state = "derelict4"},/area/derelict/hallway/secondary) -"ns" = (/turf/open/floor/plasteel/airless{icon_state = "derelict5"},/area/derelict/hallway/secondary) -"nt" = (/turf/open/floor/plasteel/airless{icon_state = "derelict6"},/area/derelict/hallway/secondary) -"nu" = (/turf/open/floor/plasteel/airless{icon_state = "derelict7"},/area/derelict/hallway/secondary) -"nv" = (/turf/open/floor/plasteel/airless{icon_state = "derelict8"},/area/derelict/hallway/secondary) -"nw" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1;scrub_N2O = 0;scrub_Toxins = 0},/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nx" = (/obj/structure/lattice,/turf/open/space,/area/derelict/hallway/secondary) -"ny" = (/obj/structure/grille,/obj/structure/window/reinforced,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nz" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nA" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nB" = (/turf/closed/wall/r_wall,/area/derelict/se_solar) -"nC" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/machinery/door/airlock/engineering{name = "Aft Solar Access";req_access_txt = "10"},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nD" = (/obj/machinery/door/airlock/external{name = "Escape Airlock"},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nE" = (/obj/machinery/door/firedoor,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nF" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nG" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/airless,/area/derelict/hallway/secondary) -"nH" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nI" = (/obj/structure/girder/reinforced,/turf/open/floor/plating/airless,/area/ruin/unpowered/no_grav) -"nJ" = (/obj/structure/cable{d1 = 2;d2 = 4;icon_state = "2-4"},/turf/closed/wall/r_wall,/area/derelict/se_solar) -"nK" = (/obj/structure/cable{d1 = 4;d2 = 8;icon_state = "4-8";pixel_x = 0},/turf/closed/wall/r_wall,/area/derelict/se_solar) -"nL" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/obj/structure/cable{d1 = 1;d2 = 8;icon_state = "1-8"},/obj/machinery/door/airlock/engineering{name = "Aft Solar Access";req_access_txt = "10"},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nM" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating/airless,/area/derelict/se_solar) -"nN" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/derelict/hallway/secondary) -"nO" = (/obj/machinery/power/smes,/obj/structure/cable,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nP" = (/obj/structure/cable{d1 = 1;d2 = 2;icon_state = "1-2"},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nQ" = (/turf/open/floor/plasteel/airless{icon_state = "damaged4"},/area/derelict/se_solar) -"nR" = (/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nS" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nT" = (/obj/docking_port/stationary{dheight = 0;dir = 2;dwidth = 11;height = 22;id = "whiteship_z4";name = "KSS13: Derelict";width = 35},/turf/open/space,/area/space) -"nU" = (/obj/machinery/power/terminal{icon_state = "term";dir = 1},/obj/structure/cable{icon_state = "0-2";d2 = 2},/obj/item/drone_shell/dusty,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nV" = (/turf/open/floor/plating/airless,/area/derelict/se_solar) -"nW" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nX" = (/obj/item/weapon/storage/toolbox/syndicate,/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nY" = (/obj/structure/cable{icon_state = "0-2";d2 = 2},/obj/structure/cable,/obj/machinery/power/solar_control{id = "derelictsolar";name = "Primary Solar Control";track = 0},/turf/open/floor/plasteel/airless,/area/derelict/se_solar) -"nZ" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 8;environ = 0;equipment = 0;lighting = 0;locked = 0;name = "Worn-out APC";pixel_x = -24;pixel_y = 0},/turf/open/floor/plating/airless,/area/derelict/se_solar) -"oa" = (/obj/item/weapon/paper{desc = "";info = "The Syndicate have cunningly disguised a Syndicate Uplink as your PDA. Simply enter the code \"678 Bravo\" into the ringtone select to unlock its hidden features.

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

Objective #1. Kill the God damn AI in a fire blast that it rocks the station. Success!
Objective #2. Escape alive. Failed."; + name = "Mission Objectives" + }, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/derelict/se_solar) +"ob" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"oc" = ( +/obj/item/stack/rods, +/turf/open/floor/plating/airless, +/area/derelict/hallway/secondary) +"od" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/turf/open/floor/plasteel/airless, +/area/ruin/unpowered/no_grav) +"oe" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"of" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"og" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"oh" = ( +/obj/item/clothing/suit/space/syndicate/black/red, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"oi" = ( +/obj/effect/decal/remains/human{ + desc = "This guy seemed to have died in terrible way! Half his remains are dust."; + icon_state = "remains"; + name = "Syndicate agent remains" + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"oj" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"ok" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/external, +/turf/open/floor/plasteel/airless, +/area/derelict/se_solar) +"ol" = ( +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"om" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"on" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/solar{ + id = "derelictsolar"; + name = "Derelict Solar Array" + }, +/turf/open/floor/plasteel/airless, +/area/solar/derelict_aft) +"oo" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"op" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/solar{ + id = "derelictsolar"; + name = "Derelict Solar Array" + }, +/turf/open/floor/plating/airless{ + icon_state = "platingdmg3" + }, +/area/solar/derelict_aft) +"oq" = ( +/turf/open/floor/plating/airless, +/turf/open/floor/plating/airless{ + icon_state = "platingdmg2" + }, +/area/solar/derelict_aft) +"or" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/space, +/area/solar/derelict_aft) +"os" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/space, +/area/solar/derelict_aft) +"ot" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/space, +/area/solar/derelict_aft) +"ou" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"ov" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/space, +/area/solar/derelict_aft) +"ow" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/space, +/area/solar/derelict_aft) +"ox" = ( +/obj/structure/cable, +/obj/machinery/power/solar{ + id = "derelictsolar"; + name = "Derelict Solar Array" + }, +/turf/open/floor/plasteel/airless, +/area/solar/derelict_aft) +"oy" = ( +/turf/open/floor/plating/airless{ + icon_state = "platingdmg1" + }, +/area/solar/derelict_aft) +"oz" = ( +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"oA" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/space, +/area/solar/derelict_aft) +"oB" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/derelict_aft) +"oC" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/space, +/area/solar/derelict_aft) +"oD" = ( +/obj/machinery/power/tracker, +/obj/structure/cable, +/turf/open/floor/plasteel/airless, +/area/solar/derelict_aft) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabacacacacacaaadaaababacacacacacacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeaaaaaaaaaaaaaaaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaafagahaaahahahaeahahahaaahahahaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaiaiajakalalalamanananakananaoaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacabapapapaaapapapaqapapapaaapapapababaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaabaaaaaaaaaaaaaraaaaaaaaaaaaabaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaabaaaaaaaaaaaaaeaaaaaaaaaaaaabaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacasatatauavawasacacacacabacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaaaxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayasazaAaBaCaDasaEabaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaxaxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayaFaBaGaHaIaJasaEaEaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaKaLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayaMaNaOaPaPaQasasaEaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaRaxaxaxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayaSaTaUazazazazaVaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaWaxaXaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxayayayayayayaYayayayayayayaYayayayayayayaSaZbabbbbaUazbcbdaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaRaRbeaWaRbfbgaxaxaxbgaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaxaSasasasasbhasasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxaxaxaxaxaRaxaRaRaRaxaRaRaRaxaxaxaxaxaxaxbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjasbkaNazasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxaxbgaxbgaxaxaxaxaxbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjasasbmasasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxaRaRbnaRbobpaWaRaxbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjasasbqbrbsasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxaRaRaRaRaRaxaxbtaxbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjbjasbkazbubvasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxbwaRbxaRbyaxaxbzbjbjaxaxaxaxaxaxaxaxaxaxaxaxaxbjbjbjbjasbAazbBbCasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRaxaRaxaRaxaRaxaRaxaxbyaRbDaRbyaxaxbzbjbjaxaxbzbzbzbEbzbzbFbGbzaxaxbjbjbjbjasbHazbrbsasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbjblaRboaRaxaRboaRaxaRbpbpaRbeaRbtbgaxaxbIbzbzbzbJbzbKbEbEbLbMbKbzbNaxaxbjbjbjbjasazazaNazasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbOblbgaxaxaxbgaxaxaxbgaRaxaRaxaxaWaxaxaxbPbjbjaxaxbNbNbKbQbRbLbKbNbNaxaxbjbjbjbjasazazaNbSasasasaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablbOblaxaxaxaxaxaxaxaxaxaxaxbTaxbUbebVaxaxbjbjbjaxaxbWbXbYbKbFbEbZbNbzaxaxbjbjbjbjasazazaNazazazcaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablcbababaaaaaaaaaaaaaaaaaxaxaxaxaxaxaxaxaxbjbjbjaxaxbPcccdbNbEbNbzbNbzaxaxbjbjbjbjasbHazaNazasasasaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaablaaaaababaaaaaaaaayacacacabayaaaaaaaaaaaxaxaxaxaxaxaxcecfcfcfcfcgaxaxaxaxbjbjbjbjasazazaNazasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaababchchchabaaaaaaaaaaaaaaaaaaaaaaaaaaaaciaaaaaacjbjbjbjbjbjbjbjbjasazazckaUasbiaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciaaaaaacjbjbjbjbjbjbjbjbjasbHazazaNaschaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaabclclclclaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciaaaaaacjbjbjbjbjbjbjbjbjasasazcmaNasaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaacncocpcocqclaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaciaaaaaacrcscscscscscscscscscscscsctcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaabcucvcwcucuabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacrcxcxcyczcAcBcscCcDcEcscxcFcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabcucGcHcucIaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacJcKcKcLcKcMcNcscxcxcxcscsctcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaclcwcOcOcPcoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacscxcxcxcxcFcQcscRcxcScscxcFcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaclcOcOcOcOcuabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacscTcTcTcUcVcscscTcWcTcscscXcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababaYaaaaclcYcZdadbdcclabaaaYababaaaaaaaaaaaaaaaaaaaaaaaaaaaacscxcxcxcxcFcscsddcxcxcxcxcFcsaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaYdeababcldfdgdhdgdiclababdjaYabababaaaaaaaaaaaaaadkdkcicicicsdlcxdmcKdndodpcKcKcKcKcKdqcsacaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababdrdrdrdrdscOdtcOdudrdrdrdrabababababaaaaaaaaaaaaaadvdkcicicsdwdxdydwdwcscscscscscscscscsdzchaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrdrdrdAdrdBcldCcldDdrdrdrdrdrdrababaaaaaaaaaadkaadEaacicicicscxcxcFcxcxdFdGdHdIdJdKdLdIdMdNaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrdrdOdPdQdRdSdTdUdVcldWdOdXdOdrdrdrabaaaaaaaaaaaaaadkaaaaaaaacsdlcxdYcxcxdFdZeaebeaeaeaeaecedacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdreeefegehehdOeidaejekelemdOdOdOeneodrciaaaaaaaaaaaaaaaaaaaaaaaacsdwdxepdwdweqeaeaereseaeaebeaeteuaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrevevevevewdWexdrdreydrdWezdXezezdWdrciaaaaaaaaaaaaaaaaaaaaaaaacscxddeAcxcxeBeaeaeaeaeCeaeaeDeEacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrdWezezezeFdPdOeGezdWezezdOdPdPezezdrciaaaaaaaaaaaaaaaaaaaaaaabcscxcxeHcLeIeJeKeKeLeMebeaeaeaetacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrezdPdXdOeNdOdXdOdWdWezdOdOdOdOdXdOdrciaaaaaaaaaaaaaaaaaaaaababcscxcxeAcxcxeOePeQeaeReSeaeSeTeUayeVaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababdrdrdOdXdOeWeXeYeZdWfadWdWfbfcfdezdPdXdrciabaaaaaaaaaadkaaaaabababcscscscFcscxdFfeePfffgfhdGdGeQfieuaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababdrdrezdOeWfjfkfldWdWdWdWdWfmfmfnfddOdPdrciababaacicscscscscscscscscscscxcFcscscsfofofpfofofodzdzdzacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrdrezezfqfrdPdWdWdWdWdWdWdWdWfsftezfudrciciababcicsfvfwfxfyfzfAfBcscscxcFcsfCfCaYabayayaaaYfDaychacaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrdrdrdrezezfqfjdPdWdWdWdWdWdWdWdWfEftdWezdrdrdrdrdraacsfFfxfxfxfxfxfxcscscxcFcsfCfCabaaaaaaaaababaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrezfGfHezezfIfJdWeZaaaaaaaaaadWdWfEewdWezdOezdWdrdrabcsfxfxfxfxfxfxfxcscscsfKcscscsabaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrfLdOfEfdezdPezfMdWdWaaaaaaaaaadWdWfNfMezfOfPfQdOezdrdrcscsfRcsfSfSfSfScsfxfxfTfxfxcsdkaaaaaaaaaaaaaaaaayayaYchaychayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdremdXfUftdPdPdPdXdWdWaaaaaaaaaadWdWfVdWezfWfXfQdOfYdrdrfZgagbgbgcgcgcgcgdgegegffxggcsababaaaaaaaaaaaaaaayayaYchayfDayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadrdrezezfUftezdXeZghdWdWaaaaaaaaaadWdWdWgidWezdOgjdXezgkgkfZglgmgngogogogpcsgqfxfTfxfxcsaaaaaaaaaaaaaaayayaygraYchaychayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrezgsewdOdPgtgudWdWaaaaaaaaaadWdWgvgwezezfbfJezdrgkgxgygagzgngogAgogpcsfxfxgBfxfxcsaaaaaaaaaaaaayayayaygCaYchgDchayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdrdrdrdrdrezezfqdWdWdOdWdWdWdWdWdWdWdWgEdPdPdrdrdrdrgkglfZfZfZgFfZfZfZfZfZfZfZcscscscsaaaaayaychayaygDgGgHgraYchgrfDayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababdrdrdrdOgIgJdWdOdXdWdWdWdPdOdWdWgKgEdXezdrdrdrababglfZgngLgLfZgogMgNfZgOgLcscsaaababayaygCchayaYgrgCgDgPaYchgQchayaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababdrdrdXdPgRdWdWdOgSdOdPdXeheiehgSgTdPdPdrdraaaagxgUfZgngLgngngogogofZfZaaababayaaaaaygrgrchaygVgVgVgVgVgVgWgWgWayaa -aaaagXgXgXgXgXgXgXgXgXgXgXgXgXaaaaaaaaaaaaaaaaaaaaaaaagYdWgYababgJfbftezezezgZevevewdOdOezdrdraagLhagmfZgogogognhbgofZfZfZabhcchchchhcgWgWgWgWgWgWhdhehfhghfhhhigWaaaa -aaaagXhjhjhjhjhkhkhkhkhkhlhjgXaaaaaaaaaaaaaaaaaaaahmaadWdWhnababdWhoezdOdOfWezezdOdPdXezezdrdraagLgLgmfZfZfZgofZfZfZfZfZfZchgCayaygCgChphphqhqhrgWhshdhshfhfhihfgWaaaa -aaaagXgXgXhjhthkhkhkgXgXhugXgXgXgXgXhvhwhwhwhvhxhyhzhAhvhBabhCabezezdOdPdPdPdOezezdOdPdrdrdrdraaglgmgnfZgogzgngzfZgzgzhDgzaygCgCgCaygChqhphrhrhqhEhfhfhfhfhfhfhfgWaaaa -aahCgXhFgXgXgXgXgXhGgXhHhkhlhkhkhkgXhIhIhIhJhIhKhLhzhzhMababababdrdrezhNdXdOezdrdrdrdrdrdrababgLhOgmgngogogngLgzgzhDgzgLgLchchhchchchcgVgVgVgVgVgVhfhfhPhfhfhfhfgWaaaa -aahQhRhShThShUhShThSgXhHhkhHhkhHhkgXhVhIhIhIhIhWhXhYhzhZhzhzababdrdrdrdrdWdrdrdrdrdrdrabaaayfZgUgmgngnfZgogngngLgkgkgkgkgkabababaaaaaaiagDiaayibgVhdhdhfhdichfidgWaaaa -aahQieifigihiiijiiijgXhHhkhHhkhHhkhuhIhIhIhIhIhIhXikilhzhzhzaaababdrdriminiodrdrabababaaaaayfZgmgmipgnfZfZfZfZgzgkgPgCgPiqaaabaaaaaaaaaaaaiaabiqgVirirhfirishfhfgWaaaa -itiuiviwixiwhThShThSgXhHiyhHizhHhkgXiAhIhIhIhIiBiChXhYhzhzhzaaaaababdrdrdrdrdrababaaaaiDiDiEfZgniFgngofZgogzgngzgkgCiqgCgCaaabaaaadkaaaaaaaaiqabgVhfhfhfhfiGhdhsgWaaaa -iHiIiJiJiJiKiiijiiijgXhHhkhHhkhHhkhuhIhIhIhIhIiLhIiMhXiNhYhzhziOhvhvhvhviPiQabaaabaaiRaaaaayfZfZipgnfZfZgLgogLgzgkgCiaaaaaaaabaaaaaaaaaaaaaaaagPgVgWhfhfgWgWgWgWgWaaaa -iSiTiUiViWiVhTiXhUhSgXhHhkhkhkhthkgXhIhIhIhIhIiYhIiZhIhXhXhYhzhzjahzjaiDayayayaaababababaajbfZgojcgogofZgogogogogkiqgCaaaaaaabaaaaaaaaaaaaaaaagVgVgVhfhfgWjdjdjdgWaaaa -aahQieijiijeiiijiiijgXgXgXgXgXgXgXgXhVhIhIhIjfjgjhjijhjihXhYjjjkhvjlhvgPayayayjmjnayayayjojpfZgojqgogofZgojrgojsgkgkgkayababayabayabababayababayaygVhfhfhfhfhfjtgWaaaa -aahQhRhShTjuhThShThSjvjwjwjwjxjwjygXiAhIhIhIjzjAjBjChIhvjDjEhvhvhvhvhvhIjpgPgDjFaygDayaygPjpfZgojqgojsfZgogogogLgogogkfZjGjGchjGaaaaaaaaabaaaaaaabgVjHhfhfhfhfjIgWjJjK -aahCjLjLjLjLjLjLjLjLjLjLjLjLgXgXjMgXfZfZfZfZfZfZfZfZfZfZjNjOfZfZfZfZfZfZfZfZfZfZgDjpjpjpgDjbfZgojPgcgcgcgcgcgbgcgcgcjQgcjRjSjRjGjGjGchchjTchchchhcgVgWhfhfhfhfhfjUhPjU -aaaaaYgPayabaaaaaaababdEjVjLfZjWjXjYgogojZgojWgogofZkagojqgogogofZgogogogogofZfZfZfZfZfZfZfZfZgojqgogofZgogngogogLgogkfZjGchkbaykckdkekfkgkcjRkckckhkikjkkhPhfhfgWjJjK -aaaaaYgHdEaaaaaaaaaaabaygPklgogLgLkmkngogogogokogofZkpgojqgogojsfZkpkngokogofZfZfZfZgogogogogogojqgogofZgokogngngokqgkfDabaajGjGjGayfDchaajGjGjGjGgVgWhfkrhfhfksgWaaaa -aaaaabayaaaaaaaaaaaaayabayjLfZgUgnktkukvkvkvkvkvkvkwkvkvkxgogogofZgogogogogogogojZgokygcgcgcgcgckzkAgkgkgkgogogogogogkfDabaaaaaaaaaaaaaaaaaaaaaaaakBgWhfgWhfhfkCgWaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaYjLfZgngLfZfZfZgofZfZfZkDfZgogokEgcgcgckFgcgckGgcgcgcgcgcgckHgogogogogogojqgkkIgkgkkJgnfZkKchabaaaaaaaaaaaaaaaaaaaaaaaakLkMgWhfgWgWgWgWgWgVaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaafZgLgmfZkNjZgofZkNjZgofZkOkOkOkPkDkQfZkpgojqgogogogogogogogkgkgkgkgkgkkRgkkSkTgkfZfZfZaaaaaaaaaaaaaaaakUaaaaabaaababgWhPkVhfhfjtkVhfgVgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgnfZkWknkXfZkWknkWfZkYkZkZgogogofZgogolagogogogogogogogkgrgrlbgrgrlcgrgraYaYchchchgDaaaaeVaaaaaaaaaaaaabldldababgWkMhfhfhPhfhfhfhfgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababfZfZfZfZfZfZfZfZfZgolelflggogofZfZfZfZfZfZfZfZfZlhfZgkayayayaygrliljgraYlbgrlkchayabaaabababaaaaaaabababaaabaakLllhfhfhfhfhPhflmgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabgLgLgLlnkajYlojYfZgolplqlrlggofZlsltlultlvlwlwlxltlxlylzlzlAeuaygrlBlClDgrgrlEchabchababdkabababababaaabaaaaaakLllkMhfhfhfhfhfhfgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaababababababgLgLjYlFgolGfZkplHlIlrgojsfZlJlKltlLlMlNlOlxlPlxlylzlAlAlAlAaylQgrlRgrlElEchabaaaaaaaaabababaaabaaaaabaaaakLllhfhfhfhfhfhflSgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababgLgLgLjYgofZgogolrlrgogofZlTlUlVlLlWltlslxlslxlylzlAlzlzlzayljgrlXgrlElEchababaaaaababaaaaaaaaaaaaaaaaaaaalYlZlYjJjJjJjJjJgVac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagLgLgLfZgogolglggogofZltlsltmamalslslxlPlxlylzlAlAlAmbayaygrmcgrgrgrmdmemfaYaYabaaaaaaaaaaaaaaaaaaaaaamghPjFayayayayaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababababgLmhmigogogogogofZmjltltltlsltmklxlPlxlyaYaYaYaYlzlzjRaYaYaYaYaYmfmlmfaaayaaaaaaaaaaaaaaaaeVaaaaaammlZmnchaaaachaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabfZfZfZfZfZfZkDfZgOmoltltltltmpmqmrmrmsmtlzlAlzlAlzlzlzlAaygrgrgrmfmumfaachaaaaaaaaaaaaaaaaaaaaaaaamvaaaaaaaaaaacayaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaagLgLhDgngolGfZmwmxltltltlsmyltltmtmzlAlAgPaYmAlzlzlAayjRayljmBmCmDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaaaagLgmmEgogofZmFlsltltltlsltltmrmGmtlAlAlAmHlAlAlAlAlzayaygrmfmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacayaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaagLmJgLgnmKgofZmLmMlsltlsltltltmrmGlxlzlzlAlAlzlzlzlAlzlzaygrmfmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaabaagLgLgLgogogmfZltlsltltmNlsltltmGmplxgPlzlAaYaYlzlzlAlAlAaYaYmfmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacayaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaabababfZgLfZfZfZfZlsltlsltmGmNltmsmNmpmtgPmOlAayaylzlzlAlzlzlzaymdmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaagLgLgLgngmgofZltmPmaltltltmQltmpmtmzlzlzlAchlzlzlzlAlzlzaygrmdmImDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayacayaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaaaaabmEgLmRgnfZlxlxlsmGltlsltltlxlxmzlAlAchchlAlAlAlAayaygrgrmdmImfmdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacaaaYac -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaagLgLgLgmgofZmSmSlxmTmGmGltltlxmSmSlzlzlzchlzlzlzaygrgrgrgrmdmImUmVmdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababchmdmemdmdmdmdmWmdmdlxmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmdmXmUmUmUmYaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababmZmUmUmUnanbmUmUmUncndnenfngnhninjnknlndndndndndndndndndndndnmndnnmZmUmUmDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmZmZmZmUmUmUmUmUmUmUmUnonpnqnrnsntnunvmUmUmUmUmUmUmUmUmUmUmUmImUnwmUmUmUmDaaaaaaaaaamvaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababnxnynznznzmdnznznznznzmdnznznznznzmdnznznznznzmdnznznznzmdmImZmZmUmUmUnAitititaaaaaaiRaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayacacacacacacacacacacchacacacacaceueueuacacacaYacacacacnBnCnBmZmUmUmZnDnEmlmlmZaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYaaaaaaaanBnFnBnGnGmfnHmfnHmfiSiSiSaaaaaamvaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanIayaynBnJnKnLnBnMnMmfnNmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaababaynBnOnBnPnQnRnSmfnNmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaanTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabayaynBnUnVnPnWnXnRmfnNmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabldaygPnBnYnBnZnRoaobmfocmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaygPodoeofognRohoinRmfnNmfnNmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaygrgrnBnPnBnRnRnVojmfnNmfocmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYaYaYaanBnBoknBnBnBnBnBmfnNmfocmfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaabolabaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaomaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaonononaaooaaonopoqaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaorososotouotovowdkaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaoxoxoxaaooaaoxoyaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaozaaaaaadkaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaonononaaooaaonononaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacabozoAosoBouoBovovoCababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaoxoxoxaaooaaoxoxoxaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaoDaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacacacacacacacabacacababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +iH +iS +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +hC +hQ +hQ +iu +iI +iT +hQ +hQ +hC +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +gX +gX +gX +gX +hR +ie +iv +iJ +iU +ie +hR +jL +aY +aY +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(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 +gX +hj +gX +hF +hS +if +iw +iJ +iV +ij +hS +jL +gP +gH +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(5,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gX +hj +gX +gX +hT +ig +ix +iJ +iW +ii +hT +jL +ay +dE +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +gX +hj +hj +gX +hS +ih +iw +iK +iV +je +ju +jL +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(7,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gX +hj +ht +gX +hU +ii +hT +ii +hT +ii +hT +jL +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +gX +hk +hk +gX +hS +ij +hS +ij +iX +ij +hS +jL +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +gX +hk +hk +gX +hT +ii +hT +ii +hU +ii +hT +jL +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +gX +hk +hk +hG +hS +ij +hS +ij +hS +ij +hS +jL +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(11,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gX +hk +gX +gX +gX +gX +gX +gX +gX +gX +jv +jL +ab +ab +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(12,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gX +hk +gX +hH +hH +hH +hH +hH +hH +gX +jw +jL +dE +ay +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(13,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gX +hl +hu +hk +hk +hk +iy +hk +hk +gX +jw +jL +jV +gP +ay +aY +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(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 +gX +hj +gX +hl +hH +hH +hH +hH +hk +gX +jw +jL +jL +kl +jL +jL +aa +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(15,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gX +gX +gX +hk +hk +hk +iz +hk +hk +gX +jx +gX +fZ +go +fZ +fZ +fZ +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(16,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gX +hk +hH +hH +hH +hH +ht +gX +jw +gX +jW +gL +gU +gn +gL +ab +ab +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(17,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gX +hk +hk +hk +hk +hk +hk +gX +jy +jM +jX +gL +gn +gL +gm +gn +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(18,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gX +gX +gX +hu +gX +hu +gX +gX +gX +gX +jY +km +kt +fZ +fZ +fZ +fZ +gL +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(19,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hv +hI +hV +hI +iA +hI +hI +hV +iA +fZ +go +kn +ku +fZ +kN +kW +fZ +gL +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(20,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hw +hI +hI +hI +hI +hI +hI +hI +hI +fZ +go +go +kv +fZ +jZ +kn +fZ +gL +gL +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(21,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hw +hI +hI +hI +hI +hI +hI +hI +hI +fZ +jZ +go +kv +go +go +kX +fZ +ln +gL +gL +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(22,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hw +hJ +hI +hI +hI +hI +hI +hI +hI +fZ +go +go +kv +fZ +fZ +fZ +fZ +ka +jY +gL +aa +ab +aa +aa +aa +aa +aa +ab +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(23,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +dr +dr +dr +ab +ab +aa +aa +aa +aa +hv +hI +hI +hI +hI +hI +hI +jf +jz +fZ +jW +go +kv +fZ +kN +kW +fZ +jY +lF +gL +gL +ab +aa +aa +aa +aa +ab +aa +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(24,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +dr +dr +dr +dr +dr +dr +dr +ab +aa +aa +aa +hx +hK +hW +hI +iB +iL +iY +jg +jA +fZ +go +ko +kv +fZ +jZ +kn +fZ +lo +go +jY +gL +ab +ab +ab +ab +aa +aa +aa +aa +ab +aa +ab +ab +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(25,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +dr +dr +fL +em +ez +dr +dr +ab +ab +aa +aa +hy +hL +hX +hX +iC +hI +hI +jh +jB +fZ +go +go +kv +kD +go +kW +fZ +jY +lG +go +gL +gL +fZ +ab +ab +ab +ab +ab +ab +ab +ab +ch +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(26,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +ax +ax +ax +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +dr +dr +ez +dO +dX +ez +ez +dr +dr +ab +aa +hm +hz +hz +hY +ik +hX +iM +iZ +ji +jC +fZ +fZ +fZ +kw +fZ +fZ +fZ +fZ +fZ +fZ +fZ +fZ +mh +fZ +aa +aa +aa +aa +ab +aa +aa +aa +md +mZ +mZ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(27,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +aK +aR +aW +aR +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +dr +dr +dr +dr +dr +dr +dr +dr +fG +fE +fU +fU +gs +dr +dr +dr +aa +aa +hA +hz +hz +il +hY +hX +hI +jh +hI +fZ +ka +kp +kv +go +kO +kY +go +go +kp +go +go +mi +fZ +gL +aa +gL +gL +ab +gL +aa +aa +me +mU +mZ +nx +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(28,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +aL +ax +ax +aR +ax +bl +bl +bl +bl +bl +bl +bl +bl +bl +bl +ab +ab +ab +ab +ab +aa +aa +aa +ab +ab +ab +ab +dr +dr +dr +dr +dr +dr +dr +dr +dr +fH +fd +ft +ft +ew +dr +dr +dr +gY +dW +hv +hM +hZ +hz +hz +iN +hX +ji +hv +fZ +go +go +kv +go +kO +kZ +le +lp +lH +go +go +go +fZ +gL +gL +mJ +gL +fZ +gL +ab +gL +md +mU +mZ +ny +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(29,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +aX +be +ax +bj +bj +bj +bj +bj +bj +bO +bO +cb +aa +aa +ab +aa +aa +aa +aa +aa +ab +ab +ab +ab +dr +dr +ee +ev +dW +ez +dO +ez +ez +ez +ez +ez +dP +ez +dO +ez +dO +dX +dW +dW +hB +ab +hz +hz +hz +hY +hX +hX +jD +jN +jq +jq +kx +kE +kO +kZ +lf +lq +lI +lr +lg +go +fZ +hD +gm +gL +gL +gL +gL +mE +gL +md +mU +mU +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(30,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +aW +ax +bl +bl +bl +bl +bl +bl +bl +bl +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +aY +ab +dr +dr +ef +ev +ez +dP +dX +dO +ez +ez +ez +dP +dP +dX +dP +ez +gI +dP +gY +hn +ab +ab +hz +hz +hz +hz +hY +hY +jE +jO +go +go +go +gc +kP +go +lg +lr +lr +lr +lg +go +fZ +gn +mE +gn +go +fZ +gn +gL +gL +md +na +mU +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(31,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +aR +aR +aR +aR +aR +aR +aR +aR +bg +ax +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aY +de +dr +dr +dO +eg +ev +ez +dX +dO +eW +fq +fq +fI +ez +dP +eZ +gt +fq +gJ +gR +ab +ab +hC +ab +ab +aa +aa +hz +hz +jj +hv +fZ +go +go +go +gc +kD +go +go +lg +go +go +go +go +kD +go +go +mK +go +fZ +gm +mR +gm +md +nb +mU +nz +ac +aa +aa +aa +nT +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 +ax +bf +ax +ax +ax +ax +ax +ax +bo +ax +ax +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +dr +dr +dP +eh +ev +ez +dO +eW +fj +fr +fj +fJ +fM +dX +gh +gu +dW +dW +dW +ab +ab +ab +ab +ab +ab +aa +iO +hz +jk +hv +fZ +go +js +go +gc +kQ +go +go +go +js +go +go +go +fZ +lG +go +go +gm +fZ +go +gn +go +mW +mU +mU +md +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(33,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +bg +aR +aR +aR +aR +aR +aR +aR +ax +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +dr +dA +dQ +eh +ew +eF +eN +eX +fk +dP +dP +dW +dW +dW +dW +dW +dW +dO +dW +gJ +dW +ez +dr +dr +ab +ab +hv +ja +hv +hv +fZ +fZ +fZ +fZ +kF +fZ +fZ +fZ +fZ +fZ +fZ +fZ +fZ +gO +fZ +fZ +fZ +fZ +fZ +fZ +fZ +fZ +md +mU +mU +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(34,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +aR +ax +ax +ax +ax +ax +ax +ax +ax +aa +aa +aa +aa +aa +aa +ab +ab +cl +cl +cl +cl +dr +dr +dR +dO +dW +dP +dO +eY +fl +dW +dW +eZ +dW +dW +dW +dW +dO +dX +dO +fb +ho +ez +dr +dr +dr +ab +hv +hz +jl +hv +fZ +go +kp +go +gc +kp +go +fZ +ls +lJ +lT +lt +mj +mo +mw +mF +mL +lt +ls +lt +lx +mS +md +mU +mU +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(35,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +aR +aR +aR +aR +aR +aR +aR +bg +ax +aa +aa +aa +aa +aa +cn +cu +cu +cw +cO +cY +df +ds +dB +dS +ei +ex +dO +dX +eZ +dW +dW +dW +aa +aa +aa +aa +aa +dW +dW +gS +ft +ez +dO +ez +dr +dr +dr +hv +ja +hv +hv +fZ +go +kn +go +gc +go +go +fZ +lt +lK +lU +ls +lt +lt +mx +ls +mM +ls +lt +mP +lx +mS +lx +nc +mU +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(36,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +ax +ax +ax +ax +ax +bo +ax +ax +aa +aa +ab +aa +ab +co +cv +cG +cO +cO +cZ +dg +cO +cl +dT +da +dr +eG +dO +dW +dW +dW +dW +aa +aa +aa +aa +aa +dW +dW +dO +ez +dO +dP +hN +dr +im +dr +hv +iD +gP +hI +fZ +go +go +go +kG +jq +la +fZ +lu +lt +lV +lt +lt +lt +lt +lt +ls +lt +ls +ma +ls +lx +md +nd +mU +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(37,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +bg +aR +aR +aR +aR +aR +aR +aR +ax +ax +aa +ay +ab +aa +cl +cp +cw +cH +cO +cO +da +dh +dt +dC +dU +ej +dr +ez +dW +fa +dW +dW +dW +aa +aa +aa +aa +aa +dW +dW +dP +ez +dO +dP +dX +dW +in +dr +iP +ay +ay +jp +fZ +go +ko +go +gc +go +go +fZ +lt +lL +lL +ma +lt +lt +lt +lt +lt +lt +lt +lt +mG +mT +md +ne +no +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(38,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +aR +ax +ax +ax +ax +ax +ax +ax +ax +aa +ac +ch +aa +cl +co +cu +cu +cP +cO +db +dg +cO +cl +dV +ek +ey +dW +dW +dW +dW +dW +dW +aa +aa +aa +aa +aa +dW +dP +dX +ez +fW +dP +dO +dr +io +dr +iQ +ay +ay +gP +fZ +go +go +go +gc +go +go +fZ +lv +lM +lW +ma +ls +lt +lt +lt +ls +mN +mG +lt +lt +mG +md +nf +np +md +ch +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 +ax +ax +aR +aR +aR +aR +aR +aR +aR +bg +ax +aa +ac +ch +aa +cl +cq +cu +cI +co +cu +dc +di +du +dD +cl +el +dr +ez +ez +dW +dW +dW +dW +aa +aa +aa +aa +aa +dW +dO +eh +gZ +ez +dO +ez +dr +dr +dr +ab +ay +ay +gD +fZ +fZ +fZ +go +gc +go +go +fZ +lw +lN +lt +ls +lt +mp +ls +ls +lt +ls +mN +lt +ls +mG +md +ng +nq +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(40,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +ax +ax +ax +ax +ax +bp +aR +ax +ax +ac +ch +aa +cl +cl +ab +aa +aa +ab +cl +cl +dr +dr +dW +em +dW +ez +dO +fb +fm +dW +dW +dW +dW +dW +dW +dW +dW +dW +ei +ev +ez +ez +dr +dr +dr +ab +aa +aa +jm +jF +fZ +fZ +fZ +go +gc +go +go +fZ +lw +lO +ls +ls +mk +mq +my +lt +lt +lt +lt +mQ +lt +lt +md +nh +nr +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(41,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +ax +ax +ax +ax +ax +bp +ax +ax +ax +ab +ab +aa +aa +aa +aa +aa +aa +aa +ab +ab +dr +dr +dO +dO +ez +dO +dO +fc +fm +dW +dW +dW +dW +dW +dW +dW +dW +dW +eh +ev +dO +ez +dr +dr +ab +ab +ab +ab +jn +ay +gD +fZ +fZ +jZ +gc +go +go +fZ +lx +lx +lx +lx +lx +mr +lt +lt +lt +lt +ms +lt +lt +lt +md +ni +ns +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(42,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +ax +aR +aR +bw +by +aR +aR +bT +ax +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +dr +dr +dX +dO +dX +dP +dO +fd +fn +fs +fE +fE +fN +fV +dW +gv +dW +gK +gS +ew +dP +dO +dr +dr +ab +aa +aa +ab +ay +gD +jp +fZ +fZ +go +gc +go +go +lh +lt +lP +ls +lP +lP +mr +lt +mr +mr +mG +mN +mp +lx +lx +md +nj +nt +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(43,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +bg +aR +aR +aR +aR +be +ax +ax +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aY +dj +dr +dr +dO +dO +ez +dP +dO +ez +fd +ft +ft +ew +fM +dW +gi +gw +gE +gE +gT +dO +dX +dP +dr +dr +ab +aa +iR +ab +ay +ay +jp +fZ +go +ky +kH +go +go +fZ +lx +lx +lx +lx +lx +ms +mt +mG +mG +mp +mp +mt +lx +mS +md +nk +nu +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(44,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ax +ax +bn +aR +bx +bD +aR +ax +bU +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +aY +ab +dr +dr +en +ez +ez +dX +dP +dO +ez +dW +dW +ez +ez +dW +ez +dP +dX +dP +dO +ez +dr +dr +ab +aa +iD +aa +ab +ay +ay +jp +fZ +go +gc +go +gk +gk +gk +ly +ly +ly +ly +ly +mt +mz +mt +lx +lx +mt +mz +mz +mS +md +nl +nv +md +eu +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 +ax +ax +ax +bg +aR +aR +aR +aR +bt +aW +be +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +dr +dr +eo +dW +ez +dO +dX +dP +fu +ez +ez +fO +fW +ez +ez +dP +ez +dP +ez +ez +dr +dr +aa +aa +iD +aa +aa +jo +gP +gD +fZ +go +gc +go +gk +gr +ay +lz +lz +lz +lz +aY +lz +lA +lA +lz +gP +gP +lz +lA +lz +md +nd +mU +nz +eu +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 +ax +ax +ax +ax +bo +aR +by +by +bg +ax +bV +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +dr +dr +dr +dr +dr +dr +dr +dr +dr +dO +fP +fX +dO +fb +dr +dr +dr +dr +dr +dr +ab +ay +ay +iE +ay +jb +jp +jp +jb +fZ +go +gc +go +gk +gr +ay +lz +lA +lA +lA +aY +lA +lA +lA +lz +lz +mO +lz +lA +lz +md +nd +mU +nz +eu +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(47,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +ax +bp +ax +ax +ax +ax +ax +ax +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ci +ci +ci +ci +ci +ci +ci +dr +ez +fQ +fQ +gj +fJ +dr +dr +dr +dr +dr +dr +ab +fZ +fZ +fZ +fZ +fZ +fZ +fZ +fZ +fZ +go +gc +go +gk +lb +ay +lA +lA +lz +lA +aY +lz +gP +lA +lA +lA +lA +lA +ch +lz +md +nd +mU +nz +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(48,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +ax +aW +ax +ax +ax +ax +ax +ax +ax +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +aa +aa +aa +aa +ab +ab +ci +dr +dW +dO +dO +dX +ez +dr +dr +aa +aa +aa +aa +gL +gU +gm +gn +fZ +go +go +go +go +go +go +gc +go +gk +gr +ay +eu +lA +lz +lA +aY +lA +aY +mH +lA +aY +ay +ch +ch +ch +md +nd +mU +nz +ac +aa +aa +aa +aa +aa +aa +aa +aY +ac +ac +ac +ac +ac +ac +ab +ac +ac +ac +ac +"} +(49,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +ax +aR +bt +bz +bz +bI +bP +bj +bj +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +dr +dr +ez +fY +ez +dr +dr +ab +aa +gL +gL +gl +hO +gm +gm +iF +ip +jc +jq +jq +jP +jq +jq +kz +go +gk +gr +gr +ay +lA +lz +mb +lz +lz +mA +lA +lz +aY +ay +lz +lA +lz +md +nd +mU +nz +ac +aa +aa +aa +aa +ab +ab +ab +aY +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +ac +"} +(50,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +ax +ax +ax +bj +bj +bz +bj +bj +bj +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +dr +dr +dr +dr +gk +gk +gk +ab +gx +ha +gL +gm +gm +gn +ip +gn +gn +go +go +go +gc +go +go +kA +jq +kR +lc +li +gr +ay +ay +ay +lz +lz +lz +lA +lz +lz +lz +lz +lA +lz +md +nd +mU +md +aY +aY +nI +ab +ab +ld +ay +ay +aY +aa +aa +on +or +ox +aa +on +oz +ox +aa +ac +"} +(51,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +bj +bj +bz +bj +bj +bj +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ci +ci +aa +ab +dr +dr +gk +gx +gl +gl +gU +gm +gm +gn +gn +gn +gn +go +fZ +go +go +js +gc +go +go +gk +gk +gk +gr +lj +lB +lQ +lj +ay +jR +lz +lz +lA +lz +lz +lz +lz +lA +lz +md +nd +mU +nz +ac +aa +ay +ab +ay +ay +gP +gr +aa +aa +aa +on +os +ox +aa +on +oA +ox +aa +ac +"} +(52,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +ax +bz +ax +ax +ax +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +cs +cs +cs +cs +cs +fZ +fZ +gy +fZ +fZ +fZ +fZ +fZ +fZ +go +fZ +fZ +fZ +fZ +fZ +fZ +fZ +gc +fZ +fZ +gk +kI +kS +gr +gr +lC +gr +gr +gr +aY +lA +lA +lA +lA +lA +lA +lA +lA +ay +md +nd +mU +nz +ac +aa +ay +ay +ay +gP +od +gr +nB +aa +aa +on +os +ox +aa +on +os +ox +aa +ac +"} +(53,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aY +ax +bj +bj +bj +bj +ax +ax +bJ +ax +ax +ax +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +dk +aa +aa +aa +aa +aa +aa +cs +fv +fF +fx +cs +ga +gl +ga +fZ +gn +gn +go +fZ +go +go +go +fZ +go +gL +go +go +go +gc +go +go +gk +gk +kT +aY +aY +lD +lR +lX +mc +aY +ay +ay +lz +lz +lA +lz +lz +ay +gr +md +nd +mU +nz +ac +aa +nB +nB +nB +nB +oe +nB +nB +ab +aa +aa +ot +aa +aa +aa +oB +aa +aa +ac +"} +(54,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +bz +bz +bO +bW +bP +ax +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +dk +cs +fw +fx +fx +fR +gb +gm +gz +fZ +gL +gL +go +fZ +gz +gn +gn +fZ +gz +go +go +jr +go +gc +gn +ko +go +gk +gk +aY +lb +gr +gr +gr +gr +aY +gr +jR +ay +lz +lA +lz +lz +ay +gr +md +nd +mU +nz +ac +aa +nJ +nO +nU +nY +of +nP +ok +ol +om +oo +ou +oo +oz +oo +ou +oo +oD +ac +"} +(55,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +bz +bK +bO +bX +cc +ce +aa +aa +aa +aa +aa +aa +aa +aa +aa +dk +aa +dE +dk +aa +aa +aa +aa +aa +cs +fx +fx +fx +cs +gb +gn +gn +gF +gL +gn +go +go +gn +gL +gn +fZ +gn +gL +go +go +go +gb +go +gn +go +kJ +fZ +ch +gr +gr +lE +lE +gr +aY +gr +ay +ay +ay +aY +lz +ay +gr +gr +md +nd +mU +md +nB +nB +nK +nB +nV +nB +og +nB +nB +ab +aa +aa +ot +aa +aa +aa +oB +aa +aa +ab +"} +(56,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +bz +bE +bK +bY +cd +cf +ci +ci +ci +ci +aa +aa +aa +aa +aa +dk +dv +aa +aa +aa +aa +aa +aa +aa +cs +fy +fx +fx +fS +gc +go +go +fZ +fZ +gn +gn +fZ +gz +gz +gL +gz +gz +gz +go +js +gL +gc +go +gn +go +gn +fZ +ch +lk +lE +lE +lE +gr +aY +gr +lj +gr +gr +aY +ay +gr +gr +gr +md +nm +mI +mI +nC +nF +nL +nP +nP +nZ +nR +nR +nB +aa +aa +on +ov +ox +aa +on +ov +ox +aa +ac +"} +(57,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +bE +bE +bQ +bK +bO +cf +aa +aa +aa +aa +aa +aa +aa +aa +aa +ci +dk +ci +aa +aa +aa +aa +aa +ab +cs +fz +fx +fx +fS +gc +go +gA +fZ +go +go +hb +fZ +fZ +gz +gk +gk +gk +gk +gk +gk +go +gc +gL +go +go +fZ +fZ +ch +ch +ch +ch +ch +md +mf +mf +mB +mf +mf +mf +md +md +md +md +md +nd +mU +mZ +nB +nB +nB +nQ +nW +nR +oh +nR +nB +aa +aa +op +ow +oy +aa +on +ov +ox +aa +ac +"} +(58,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +bz +bL +bR +bF +bE +cf +aa +aa +aa +aa +aa +aa +aa +aa +aa +ci +ci +ci +aa +aa +aa +aa +ab +ab +cs +fA +fx +fx +fS +gc +go +go +fZ +gM +go +go +fZ +gz +hD +gk +gP +gC +gC +iq +gk +go +gc +go +kq +go +kK +aa +gD +ay +ab +ab +ab +me +ml +mu +mC +mI +mI +mI +mI +mI +mI +mI +mX +nn +nw +mZ +mZ +nG +nM +nR +nX +oa +oi +nV +nB +aa +aa +oq +dk +aa +dk +on +oC +ox +aa +ab +"} +(59,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +bz +bM +bL +bE +bO +cf +aa +aa +aa +aa +aa +aa +aa +aa +aa +ci +ci +ci +aa +aa +aa +ab +ab +ab +cs +fB +fx +fx +fS +gc +gp +gp +fZ +gN +go +fZ +fZ +gz +gz +gk +gC +iq +ia +gC +gk +gk +jQ +gk +gk +gk +ch +aa +aa +ab +ch +aa +ab +mf +mf +mf +mD +mD +mD +mD +mD +mD +mf +mU +mU +mZ +mU +mU +mU +nG +nM +nS +nR +ob +nR +oj +nB +aa +aa +aa +aa +aa +aa +aa +ab +aa +aa +ab +"} +(60,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aY +ax +bj +bj +bj +bj +ax +bF +bK +bK +bZ +bz +cg +cj +cj +cj +cr +cr +cJ +cs +cs +cs +cs +cs +cs +cs +cs +cs +cs +cs +cs +cs +cs +cs +cs +cs +gd +cs +cs +fZ +fZ +fZ +fZ +fZ +hD +gL +gk +gP +gC +aa +aa +ay +fZ +gc +fZ +fD +fD +ab +aa +aa +aa +ab +aa +aa +aY +aa +aa +aa +aa +aa +aa +aa +aa +md +mV +mU +mU +mU +mU +mU +mf +mf +mf +mf +mf +mf +mf +mf +ac +ac +ac +ac +ab +ac +ac +ab +ab +ac +aa +"} +(61,1,1) = {" +aa +aa +aa +ab +ac +ac +ac +ac +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +bG +bz +bO +bO +bO +ax +bj +bj +bj +cs +cx +cK +cx +cT +cx +dl +dw +cx +dl +dw +cx +cx +cx +cs +cs +cs +cs +cs +fx +ge +gq +fx +fZ +gO +fZ +fZ +fZ +gz +gL +gk +iq +gC +aa +aa +ab +jG +jR +jG +ab +ab +aa +aa +eV +ab +ab +aa +aa +aY +ay +ch +aa +aa +aa +aa +aa +aa +aa +md +mU +mU +mU +mU +mZ +nH +nN +nN +nN +oc +nN +nN +nN +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(62,1,1) = {" +aa +aa +aa +aa +ab +aa +aa +ac +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +bz +bO +bO +bz +bz +ax +bj +bj +bj +cs +cx +cK +cx +cT +cx +cx +dx +cx +cx +dx +dd +cx +cx +cs +cx +cx +cx +cs +fx +ge +fx +fx +fZ +gL +aa +ab +ch +ay +ch +ab +aa +aa +aa +aa +ab +jG +jS +ch +aa +aa +aa +aa +aa +ab +dk +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mY +mD +mD +nA +nD +mf +mf +mf +mf +mf +mf +mf +mf +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(63,1,1) = {" +ab +aa +af +ai +ap +ab +ab +ac +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +ax +ax +ax +ax +ax +ax +bj +bj +bj +cs +cy +cL +cx +cT +cx +dm +dy +cF +dY +ep +eA +eH +eA +cF +cF +cF +cF +fK +fT +gf +fT +gB +cs +cs +ab +hc +gC +gC +ch +ab +ab +ab +ab +ab +ay +ch +jR +kb +jG +aa +aa +aa +aa +ab +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +nE +nH +nN +nN +nN +nN +nN +oc +oc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(64,1,1) = {" +ac +aa +ag +ai +ap +aa +aa +ac +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +ax +ax +ax +ax +ax +ax +ax +bj +bj +bj +cs +cz +cK +cx +cU +cx +cK +dw +cx +cx +dw +cx +cL +cx +cs +cs +cs +cs +cs +fx +fx +fx +fx +cs +cs +ab +ch +ay +gC +hc +ab +aa +aa +aa +aa +ab +jG +jG +ay +jG +aa +aa +aa +aa +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +ml +mf +mf +mf +mf +mf +mf +mf +mf +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(65,1,1) = {" +ac +aa +ah +aj +ap +aa +aa +ac +aa +aa +aa +aa +ay +ax +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +cs +cA +cM +cF +cV +cF +dn +dw +cx +cx +dw +cx +eI +cx +cx +cs +fC +fC +cs +fx +gg +fx +fx +cs +aa +ay +ch +ay +gC +hc +aa +aa +aa +aa +aa +ay +aa +jG +kc +jG +aa +aa +aa +aa +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +ml +iS +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(66,1,1) = {" +ac +aa +aa +ak +aa +aa +aa +ac +ay +ay +ay +ay +ay +ax +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +cs +cB +cN +cQ +cs +cs +do +cs +dF +dF +eq +eB +eJ +eO +dF +cs +fC +fC +cs +cs +cs +cs +cs +cs +ab +aa +ch +gC +ay +hc +aa +aa +dk +aa +aa +ab +aa +jG +kd +ay +aa +aa +kU +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mZ +iS +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(67,1,1) = {" +ac +aa +ah +al +ap +aa +aa +as +as +aF +aM +aS +aS +aS +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +cs +cs +cs +cs +cs +cs +dp +cs +dG +dZ +ea +ea +eK +eP +fe +fo +aY +ab +ab +dk +ab +aa +aa +aa +ab +aa +hc +gC +gC +hc +aa +aa +aa +aa +aa +ab +aa +ch +ke +fD +aa +aa +aa +aa +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iS +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(68,1,1) = {" +ac +aa +ah +al +ap +aa +aa +at +az +aB +aN +aT +aZ +as +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +bj +cs +cC +cx +cR +cT +dd +cK +cs +dH +ea +ea +ea +eK +eQ +eP +fo +ab +aa +aa +aa +ab +aa +aa +aa +ay +ay +gW +hp +hq +gV +ia +aa +aa +aa +aa +ab +aa +ch +kf +ch +aa +aa +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mv +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(69,1,1) = {" +aa +aa +ah +al +ap +aa +aa +at +aA +aG +aO +aU +ba +as +bj +bj +as +as +as +as +as +as +as +as +as +as +as +as +cs +cD +cx +cx +cW +cx +cK +cs +dI +eb +er +ea +eL +ea +ff +fp +ay +aa +aa +aa +aa +aa +aa +ay +ay +gr +gW +hp +hp +gV +gD +aa +aa +aa +aa +ay +ab +jT +kg +aa +aa +aa +ab +ld +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(70,1,1) = {" +ad +ae +ae +am +aq +ar +ae +au +aB +aH +aP +az +bb +as +as +as +as +bk +bA +bH +az +az +az +bH +az +az +bH +as +cs +cE +cx +cS +cT +cx +cK +cs +dJ +ea +es +ea +eM +eR +fg +fo +ay +aa +aa +aa +aa +aa +aa +ay +gC +gr +gW +hq +hr +gV +ia +ia +aa +aa +aa +ab +aa +ch +kc +jG +aa +aa +aa +ld +aa +aa +ab +aa +aa +eV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(71,1,1) = {" +aa +aa +ah +an +ap +aa +aa +av +aC +aI +aP +az +bb +as +bk +as +bq +az +az +az +az +az +az +az +az +az +az +az +cs +cs +cs +cs +cs +cx +cK +cs +dK +ea +ea +eC +eb +eS +fh +fo +aa +aa +aa +aa +aa +aa +aa +ch +ch +ch +gW +hq +hr +gV +ay +ab +iq +aa +aa +ab +aa +ch +jR +jG +aa +aa +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mv +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(72,1,1) = {" +ab +aa +ah +an +ap +aa +aa +aw +aD +aJ +aQ +az +aU +bh +aN +bm +br +bu +bB +br +aN +aN +aN +aN +aN +ck +az +cm +cs +cx +cs +cx +cs +cx +cK +cs +dL +ea +ea +ea +ea +ea +dG +fo +aY +ab +ab +aa +aa +aa +aa +ay +ay +ay +gW +hr +hq +gV +ib +iq +ab +gP +gV +ay +aa +ch +kc +jG +aa +aa +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(73,1,1) = {" +ab +aa +ah +an +ap +aa +aa +as +as +as +as +az +az +as +az +as +bs +bv +bC +bs +az +bS +az +az +az +aU +aN +aN +ct +cF +ct +cF +cX +cF +dq +cs +dI +ea +eb +ea +ea +eS +dG +dz +fD +ab +aa +aa +aa +aa +ay +ay +aY +gV +gW +gW +hE +gV +gV +gV +gV +gV +gV +ay +ab +hc +kc +jG +aa +kL +gW +gW +kL +kL +kL +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(74,1,1) = {" +ac +aa +aa +ak +aa +aa +aa +ac +aE +aE +as +aV +bc +as +as +as +as +as +as +as +as +as +az +as +as +as +as +as +cs +cs +cs +cs +cs +cs +cs +cs +dM +ec +ea +eD +ea +eT +eQ +dz +ay +aa +aa +aa +aa +ay +ay +gD +gr +gV +hd +hs +hf +hf +hd +ir +hf +gW +gV +gV +gV +gV +kh +gV +kB +kM +hP +kM +ll +ll +ll +lY +mg +mm +mv +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(75,1,1) = {" +ac +aa +ah +an +ap +aa +aa +ac +ab +aE +aE +aa +bd +bi +bi +aa +aa +aa +aa +bi +bi +as +az +as +bi +bi +ch +aa +aa +aa +aa +aa +aa +aa +ac +dz +dN +ed +et +eE +et +eU +fi +dz +ch +aa +aa +aa +aa +ay +ay +gG +gC +gV +he +hd +hf +hf +hd +ir +hf +hf +hf +hf +jH +gW +ki +gW +gW +gW +kV +hf +hf +kM +hf +lZ +hP +lZ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(76,1,1) = {" +ac +aa +ah +an +ap +aa +aa +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +as +ca +as +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ch +aa +ac +eu +ac +ac +ay +eu +ac +ac +aa +aa +ay +ay +ay +ay +gH +gD +gV +hf +hs +hf +hP +hf +hf +hf +hf +hf +hf +hf +hf +kj +hf +hf +hf +hf +hf +hf +hf +hf +lY +jF +mn +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(77,1,1) = {" +ac +aa +ah +ao +ap +ab +ab +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +eV +aa +aa +aa +aa +aa +ay +ay +gr +gC +gr +gP +gV +hg +hf +hf +hf +hd +ir +hf +gW +gW +hf +hf +hf +kk +kr +gW +gW +hf +hP +hf +hf +hf +jJ +ay +ch +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(78,1,1) = {" +ac +aa +aa +aa +ab +aa +aa +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aY +aY +aY +aY +aY +aY +gV +hf +hf +hf +hf +ic +is +iG +gW +jd +hf +hf +hf +hP +hf +hf +gW +jt +hf +hf +hf +hf +jJ +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(79,1,1) = {" +ac +ac +ac +ac +ab +ac +ac +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ch +ch +ch +ch +ch +ch +gW +hh +hi +hf +hf +hf +hf +hd +gW +jd +hf +hf +hf +hf +hf +hf +gW +kV +hf +hP +hf +hf +jJ +ay +aa +aa +aa +aa +aa +aa +aa +ay +ac +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(80,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ay +ay +gD +gr +gQ +gW +hi +hf +hf +hf +id +hf +hs +gW +jd +jt +jI +hf +hf +ks +kC +gW +hf +hf +hf +hf +hf +jJ +ay +ch +ac +ac +ac +ac +ac +ac +ac +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(81,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ch +fD +ch +ch +fD +ch +gW +gW +gW +gW +gW +gW +gW +gW +gW +gW +gW +gW +jU +gW +gW +gW +gW +gV +hf +lm +hf +lS +jJ +aa +aa +ay +aa +ay +aa +ay +aa +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(82,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ay +ay +ay +ay +ay +ay +ay +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +jJ +hP +jJ +aa +aa +gV +gV +gV +gV +gV +gV +gV +aY +aY +aY +aY +aY +aY +aY +aY +aY +aY +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(83,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +jK +jU +jK +aa +aa +aa +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa "} diff --git a/_maps/RandomRuins/SpaceRuins/crashedship.dmm b/_maps/RandomRuins/SpaceRuins/crashedship.dmm index a5eb8de1a3..a4ee4df091 100644 --- a/_maps/RandomRuins/SpaceRuins/crashedship.dmm +++ b/_maps/RandomRuins/SpaceRuins/crashedship.dmm @@ -343,7 +343,7 @@ icon_state = "4-8"; pixel_y = 0 }, -/turf, +/turf/open/floor/plating/airless, /area/awaymission/BMPship/Midship) "bf" = ( /obj/structure/cable{ @@ -2372,7 +2372,7 @@ /area/awaymission/BMPship/Fore) "gH" = ( /obj/machinery/door/unpowered/shuttle, -/turf, +/turf/open/floor/plating/airless, /area/awaymission/BMPship/Fore) "gI" = ( /turf/open/floor/plating/airless, @@ -2593,7 +2593,7 @@ /turf/open/floor/plating, /area/awaymission/BMPship/Aft) "hr" = ( -/obj/item/weapon/poster/contraband, +/obj/item/weapon/poster/random_contraband, /turf/open/floor/plating, /area/awaymission/BMPship/Aft) "hs" = ( diff --git a/_maps/RandomRuins/SpaceRuins/listeningstation.dmm b/_maps/RandomRuins/SpaceRuins/listeningstation.dmm index bf11158675..6fc25fde45 100644 --- a/_maps/RandomRuins/SpaceRuins/listeningstation.dmm +++ b/_maps/RandomRuins/SpaceRuins/listeningstation.dmm @@ -250,7 +250,7 @@ }, /area/ruin/unpowered/no_grav) "M" = ( -/turf/open/floor/plasteel/airless/circuit/gcircuit, +/turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "N" = ( /turf/closed/wall/r_wall, diff --git a/_maps/RandomZLevels/Academy.dmm b/_maps/RandomZLevels/Academy.dmm index 3e1adb953b..be33b5b018 100644 --- a/_maps/RandomZLevels/Academy.dmm +++ b/_maps/RandomZLevels/Academy.dmm @@ -439,19 +439,19 @@ /obj/machinery/door/poddoor/shutters{ id = "AcademyAuto" }, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "bu" = ( /obj/machinery/door/poddoor/shutters{ id = "AcademyAuto" }, -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plating, /area/awaymission/academy/classrooms) "bv" = ( /obj/machinery/door/poddoor/shutters{ @@ -463,10 +463,10 @@ /obj/machinery/door/poddoor/shutters{ id = "AcademyAuto" }, -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating, /area/awaymission/academy/classrooms) "bx" = ( /turf/open/floor/plasteel/chapel{ @@ -482,19 +482,19 @@ /turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "bA" = ( -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plating, /area/awaymission/academy/classrooms) "bB" = ( /turf/open/floor/plating, /area/awaymission/academy/classrooms) "bC" = ( -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating, /area/awaymission/academy/classrooms) "bD" = ( /obj/machinery/button/door{ @@ -865,10 +865,10 @@ /turf/open/floor/plating, /area/awaymission/academy/classrooms) "cK" = ( -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "cL" = ( /obj/structure/chair{ @@ -886,16 +886,16 @@ /turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "cN" = ( -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 10 }, +/turf/open/floor/plating, /area/awaymission/academy/classrooms) "cO" = ( -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 6 }, +/turf/open/floor/plating, /area/awaymission/academy/classrooms) "cP" = ( /turf/open/floor/plasteel/red/side{ @@ -996,7 +996,7 @@ /turf/open/floor/wood, /area/awaymission/academy/classrooms) "de" = ( -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/awaymission/academy/classrooms) "df" = ( /obj/structure/table/wood, @@ -1064,7 +1064,7 @@ pixel_y = 1; d2 = 2 }, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/awaymission/academy/classrooms) "dr" = ( /obj/machinery/light{ @@ -1114,7 +1114,7 @@ pixel_y = 0 }, /obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/awaymission/academy/classrooms) "dA" = ( /obj/structure/cable{ @@ -1134,7 +1134,7 @@ icon_state = "1-4" }, /obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/awaymission/academy/classrooms) "dB" = ( /obj/structure/cable{ @@ -1181,7 +1181,7 @@ "dI" = ( /obj/machinery/computer/mech_bay_power_console, /obj/structure/cable, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/awaymission/academy/classrooms) "dJ" = ( /obj/machinery/hydroponics/constructable, @@ -1450,10 +1450,10 @@ /turf/open/floor/plasteel/white, /area/awaymission/academy/classrooms) "ez" = ( -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/turf/open/floor/plating, /area/awaymission/academy) "eA" = ( /obj/machinery/door/airlock/glass, @@ -1512,10 +1512,10 @@ }, /area/awaymission/academy/classrooms) "eJ" = ( -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plating, /area/awaymission/academy) "eK" = ( /turf/open/floor/plasteel/yellow/side{ @@ -1625,10 +1625,10 @@ }, /area/awaymission/academy/classrooms) "fb" = ( -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 10 }, +/turf/open/floor/plating, /area/awaymission/academy) "fc" = ( /obj/structure/window/reinforced, @@ -1919,10 +1919,10 @@ icon_state = "4-8"; pixel_y = 0 }, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "fI" = ( /obj/structure/cable{ @@ -1977,25 +1977,25 @@ /turf/open/floor/plasteel/vault, /area/awaymission/academy/classrooms) "fR" = ( -/mob/living/simple_animal/hostile/wizard, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/mob/living/simple_animal/hostile/wizard, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "fS" = ( /obj/structure/window/reinforced, +/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel{ name = "floor" }, -/obj/effect/turf_decal/delivery, /area/awaymission/academy/classrooms) "fT" = ( /obj/structure/table/reinforced, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "fU" = ( /obj/item/target, @@ -2033,10 +2033,10 @@ /turf/open/floor/plating, /area/awaymission/academy/classrooms) "ga" = ( -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "gb" = ( /obj/structure/table, @@ -2128,10 +2128,10 @@ /obj/machinery/door/window{ dir = 4 }, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "go" = ( /obj/item/weapon/storage/box/monkeycubes, @@ -2228,10 +2228,10 @@ dir = 4 }, /obj/item/ammo_casing, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "gB" = ( /obj/machinery/light/small, @@ -2306,10 +2306,10 @@ "gK" = ( /obj/structure/window/reinforced, /obj/item/ammo_casing, +/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel{ name = "floor" }, -/obj/effect/turf_decal/delivery, /area/awaymission/academy/classrooms) "gL" = ( /mob/living/simple_animal/hostile/bear, @@ -2330,10 +2330,10 @@ }, /area/awaymission/academy/classrooms) "gP" = ( -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "gQ" = ( /obj/machinery/light/small{ @@ -2427,10 +2427,10 @@ d2 = 8; icon_state = "0-8" }, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "ha" = ( /turf/open/floor/plasteel/white/side{ @@ -2859,7 +2859,7 @@ /obj/structure/closet, /obj/item/weapon/reagent_containers/food/drinks/beer, /obj/item/clothing/under/color/lightpurple, -/obj/item/weapon/poster/contraband, +/obj/item/weapon/poster/random_contraband, /turf/open/floor/plasteel, /area/awaymission/academy/academyaft) "ic" = ( @@ -3406,7 +3406,7 @@ icon_state = "2-4" }, /obj/item/weapon/weldingtool, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/awaymission/academy/classrooms) "jq" = ( /turf/open/floor/plasteel/yellow/side{ @@ -3806,10 +3806,10 @@ /obj/machinery/door/poddoor/shutters{ id = "AcademyGate" }, -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 2 }, +/turf/open/floor/plating, /area/awaymission/academy/academygate) "kz" = ( /mob/living/simple_animal/hostile/wizard, diff --git a/_maps/RandomZLevels/centcomAway.dmm b/_maps/RandomZLevels/centcomAway.dmm index 7f7a312df9..8fab986fdb 100644 --- a/_maps/RandomZLevels/centcomAway.dmm +++ b/_maps/RandomZLevels/centcomAway.dmm @@ -2586,7 +2586,7 @@ /area/awaymission/centcomAway/hangar) "ij" = ( /obj/machinery/computer/mech_bay_power_console, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/centcomAway/hangar) "ik" = ( /turf/open/floor/plasteel/vault{ diff --git a/_maps/RandomZLevels/challenge.dmm b/_maps/RandomZLevels/challenge.dmm index f1802f4ab6..6f125ecfee 100644 --- a/_maps/RandomZLevels/challenge.dmm +++ b/_maps/RandomZLevels/challenge.dmm @@ -889,7 +889,7 @@ /turf/open/space, /area/space) "cn" = ( -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "co" = ( /turf/open/floor/plasteel/vault{ @@ -985,20 +985,20 @@ /area/awaymission/challenge/end) "cC" = ( /obj/item/weapon/storage/toolbox/electrical, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "cD" = ( /obj/machinery/light{ dir = 1 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "cE" = ( /obj/machinery/light{ icon_state = "tube1"; dir = 8 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "cF" = ( /mob/living/simple_animal/hostile/syndicate/ranged, @@ -1009,7 +1009,7 @@ icon_state = "tube1"; dir = 4 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "cH" = ( /obj/structure/window/reinforced{ @@ -1095,7 +1095,7 @@ /obj/machinery/light{ dir = 8 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "cR" = ( /obj/machinery/gateway{ @@ -1125,7 +1125,7 @@ /obj/machinery/light{ dir = 4 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "cV" = ( /obj/machinery/gateway{ @@ -1178,7 +1178,7 @@ /area/awaymission/challenge/end) "db" = ( /obj/structure/window/reinforced, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "dc" = ( /obj/structure/cable{ @@ -1293,27 +1293,27 @@ /area/awaymission/challenge/end) "do" = ( /obj/machinery/light, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "dp" = ( /obj/structure/closet/emcloset, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "dq" = ( /obj/structure/cable, /obj/machinery/power/smes/magical, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "dr" = ( /obj/machinery/power/terminal{ dir = 8 }, /obj/structure/cable, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) "ds" = ( /obj/structure/closet/l3closet, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/awaymission/challenge/end) (1,1,1) = {" diff --git a/_maps/RandomZLevels/moonoutpost19.dmm b/_maps/RandomZLevels/moonoutpost19.dmm index 96cb32a4e1..2ad6bc5eb5 100644 --- a/_maps/RandomZLevels/moonoutpost19.dmm +++ b/_maps/RandomZLevels/moonoutpost19.dmm @@ -825,10 +825,8 @@ }) "be" = ( /obj/machinery/vending/cigarette, -/obj/structure/sign/poster{ - icon_state = "poster7"; - pixel_y = 32; - serial_number = 7 +/obj/structure/sign/poster/contraband/smoke{ + pixel_y = 32 }, /turf/open/floor/plasteel/black, /area/awaycontent/a4{ @@ -930,13 +928,10 @@ /obj/machinery/light/small{ dir = 8 }, -/obj/structure/sign/poster{ - icon_state = "poster17"; - pixel_x = -32; - pixel_y = 0; - serial_number = 17 - }, /obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/space_cube{ + pixel_x = -32 + }, /turf/open/floor/plasteel/bar{ heat_capacity = 1e+006 }, @@ -1484,11 +1479,8 @@ /obj/structure/alien/weeds{ icon_state = "weeds1" }, -/obj/structure/sign/poster{ - icon_state = "poster5"; - pixel_x = 0; - pixel_y = 32; - serial_number = 5 +/obj/structure/sign/poster/contraband/syndicate_recruitment{ + pixel_y = 32 }, /turf/open/floor/plasteel/loadingarea{ initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251"; @@ -1702,15 +1694,12 @@ /obj/machinery/light/small{ dir = 4 }, -/obj/structure/sign/poster{ - icon_state = "poster10"; - pixel_x = 32; - pixel_y = 0; - serial_number = 10 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/obj/structure/sign/poster/contraband/hacking_guide{ + pixel_x = 32 + }, /turf/open/floor/plating{ heat_capacity = 1e+006 }, @@ -2542,17 +2531,14 @@ }) "dq" = ( /obj/structure/table/wood, -/obj/structure/sign/poster{ - icon_state = "poster24"; - pixel_x = 0; - pixel_y = -32; - serial_number = 24 - }, /obj/item/weapon/pen, /obj/item/weapon/paper{ info = "Log 1:
While mining today I noticed the NT station was finished with its renovations. They placed some huge reinforced tumor on the station, looks so ugly. I wouldn't be surprised if those pigs decided to turn that little astronomy outpost into a prison with that thing, it'd be pretty typical of them.

Log 2:
Really dumb of me but I just waved at an engineer in the outpost, and he waved back. I hope to god he was too dumb or drunk to recognize the suit, because if he isn't then we might have to pull out before they come looking for us.

Log 3:
That huge reinforced tumor in their science section has been making a lot of noise lately. I've been hearing some banging and scratching from the other side and I'm kind of glad now that they reinforced this thing so much. I'll be sleeping with my gun under my pillow from now on."; name = "Personal Log" }, +/obj/structure/sign/poster/contraband/c20r{ + pixel_y = -32 + }, /turf/open/floor/wood{ initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251"; heat_capacity = 1e+006 @@ -3750,11 +3736,8 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/structure/sign/poster{ - icon_state = "poster5_legit"; - pixel_x = 0; - pixel_y = 32; - serial_number = 21 +/obj/structure/sign/poster/official/build{ + pixel_y = 32 }, /turf/open/floor/plating{ heat_capacity = 1e+006 @@ -4606,15 +4589,13 @@ name = "MO19 Research" }) "fU" = ( -/obj/structure/sign/poster{ - icon_state = "poster21_legit"; - pixel_y = 32; - serial_number = 21 - }, /obj/item/device/radio/off, /obj/item/weapon/screwdriver{ pixel_y = 10 }, +/obj/structure/sign/poster/official/safety_report{ + pixel_y = 32 + }, /turf/open/floor/plasteel/red/side{ dir = 5; heat_capacity = 1e+006 @@ -6007,7 +5988,7 @@ "hK" = ( /obj/structure/closet/crate, /obj/item/weapon/storage/box/lights/mixed, -/obj/item/weapon/poster/contraband, +/obj/item/weapon/poster/random_contraband, /turf/open/floor/plating{ broken = 1; heat_capacity = 1e+006; @@ -7174,11 +7155,8 @@ }) "jw" = ( /obj/machinery/vending/snack, -/obj/structure/sign/poster{ - icon_state = "poster14"; - pixel_x = 0; - pixel_y = 32; - serial_number = 14 +/obj/structure/sign/poster/contraband/eat{ + pixel_y = 32 }, /turf/open/floor/plasteel{ burnt = 1; @@ -7936,11 +7914,8 @@ name = "MO19 Arrivals" }) "kx" = ( -/obj/structure/sign/poster{ - icon_state = "poster2_legit"; - pixel_x = 0; - pixel_y = -32; - serial_number = 2 +/obj/structure/sign/poster/official/nanotrasen_logo{ + pixel_y = -32 }, /turf/open/floor/plasteel/arrival{ dir = 2; @@ -9233,10 +9208,8 @@ }) "mC" = ( /obj/machinery/vending/cigarette, -/obj/structure/sign/poster{ - icon_state = "poster7"; - pixel_y = -32; - serial_number = 7 +/obj/structure/sign/poster/contraband/smoke{ + pixel_y = -32 }, /turf/open/floor/plasteel/black, /area/awaycontent/a1{ diff --git a/_maps/RandomZLevels/spacebattle.dmm b/_maps/RandomZLevels/spacebattle.dmm index 8fb62f253d..df0ed07de0 100644 --- a/_maps/RandomZLevels/spacebattle.dmm +++ b/_maps/RandomZLevels/spacebattle.dmm @@ -1872,7 +1872,7 @@ /area/awaymission/spacebattle/cruiser) "gc" = ( /obj/structure/closet/crate, -/obj/item/weapon/poster/contraband, +/obj/item/weapon/poster/random_contraband, /turf/open/floor/plating, /area/awaymission/spacebattle/cruiser) "gd" = ( diff --git a/_maps/RandomZLevels/undergroundoutpost45.dmm b/_maps/RandomZLevels/undergroundoutpost45.dmm index 5d45e81aa9..a9bfeab8cf 100644 --- a/_maps/RandomZLevels/undergroundoutpost45.dmm +++ b/_maps/RandomZLevels/undergroundoutpost45.dmm @@ -201,22 +201,22 @@ /obj/machinery/door/poddoor{ id = "UO45_Elevator" }, +/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel{ heat_capacity = 1e+006; name = "floor" }, -/obj/effect/turf_decal/delivery, /area/awaycontent/a1{ has_gravity = 1; name = "UO45 Central Hall" }) "at" = ( -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel{ + heat_capacity = 1e+006 + }, /area/awaycontent/a1{ has_gravity = 1; name = "UO45 Central Hall" @@ -374,11 +374,8 @@ name = "UO45 Central Hall" }) "aH" = ( -/obj/structure/sign/poster{ - icon_state = "poster2_legit"; - pixel_x = 0; - pixel_y = 32; - serial_number = 2 +/obj/structure/sign/poster/official/nanotrasen_logo{ + pixel_y = 32 }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 @@ -409,11 +406,8 @@ "aK" = ( /obj/structure/closet/emcloset, /obj/item/clothing/mask/breath, -/obj/structure/sign/poster{ - icon_state = "poster19_legit"; - pixel_x = -32; - pixel_y = 0; - serial_number = 19 +/obj/structure/sign/poster/official/safety_internals{ + pixel_x = -32 }, /turf/open/floor/plasteel/black{ heat_capacity = 1e+006 @@ -1024,11 +1018,8 @@ name = "UO45 Central Hall" }) "bK" = ( -/obj/structure/sign/poster{ - icon_state = "poster2_legit"; - pixel_x = 0; - pixel_y = -32; - serial_number = 2 +/obj/structure/sign/poster/official/nanotrasen_logo{ + pixel_y = -32 }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 @@ -1056,13 +1047,10 @@ name = "UO45 Central Hall" }) "bN" = ( -/obj/structure/sign/poster{ - icon_state = "poster2_legit"; - pixel_x = 0; - pixel_y = -32; - serial_number = 2 - }, /obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/official/nanotrasen_logo{ + pixel_y = -32 + }, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -1892,7 +1880,7 @@ dir = 5 }, /obj/structure/closet, -/obj/item/weapon/poster/contraband, +/obj/item/weapon/poster/random_contraband, /turf/open/floor/plating{ heat_capacity = 1e+006 }, @@ -3162,10 +3150,8 @@ /obj/item/weapon/screwdriver{ pixel_y = 10 }, -/obj/structure/sign/poster{ - icon_state = "poster21_legit"; - pixel_y = -32; - serial_number = 21 +/obj/structure/sign/poster/official/safety_report{ + pixel_y = -32 }, /turf/open/floor/plasteel/red/side{ heat_capacity = 1e+006 @@ -3677,13 +3663,10 @@ dir = 2; icon_state = "pipe-c" }, -/obj/structure/sign/poster{ - icon_state = "poster14"; - pixel_x = 32; - pixel_y = 0; - serial_number = 14 - }, /obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/eat{ + pixel_x = 32 + }, /turf/open/floor/plasteel/green/corner{ dir = 4; heat_capacity = 1e+006 @@ -4847,47 +4830,47 @@ }) "hB" = ( /obj/machinery/r_n_d/destructive_analyzer, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" }) "hC" = ( /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" }) "hD" = ( /obj/machinery/r_n_d/protolathe, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" }) "hE" = ( -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -5467,12 +5450,12 @@ /obj/structure/sign/nosmoking_2{ pixel_x = -32 }, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -5485,12 +5468,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -5502,12 +5485,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -5519,12 +5502,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/corner{ dir = 4 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -6266,24 +6249,24 @@ }) "jF" = ( /obj/structure/closet/l3closet/scientist, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" }) "jG" = ( /obj/structure/closet/l3closet/scientist, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/turf/open/floor/plasteel{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -6414,11 +6397,8 @@ "jR" = ( /obj/structure/closet/emcloset, /obj/item/clothing/mask/breath, -/obj/structure/sign/poster{ - icon_state = "poster19_legit"; - pixel_x = 0; - pixel_y = 32; - serial_number = 19 +/obj/structure/sign/poster/official/safety_internals{ + pixel_y = 32 }, /turf/open/floor/plasteel{ burnt = 1; @@ -6926,12 +6906,12 @@ }, /obj/item/device/assembly/prox_sensor, /obj/item/device/assembly/prox_sensor, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -6951,12 +6931,12 @@ "kA" = ( /obj/structure/tank_dispenser/oxygen, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -6968,12 +6948,12 @@ scrub_N2O = 0; scrub_Toxins = 0 }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -6985,12 +6965,12 @@ /obj/machinery/light/small{ dir = 4 }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -7284,11 +7264,11 @@ id = "UO45_biohazard"; name = "biohazard containment door" }, +/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel{ heat_capacity = 1e+006; name = "floor" }, -/obj/effect/turf_decal/delivery, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -7301,23 +7281,23 @@ /obj/structure/sign/nosmoking_2{ pixel_x = -32 }, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/space) "la" = ( /obj/machinery/shower{ pixel_y = 15 }, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -7326,12 +7306,12 @@ /obj/structure/sink{ pixel_y = 25 }, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -7508,12 +7488,12 @@ /obj/structure/sign/nosmoking_2{ pixel_x = -32 }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -8178,12 +8158,12 @@ }) "lZ" = ( /obj/machinery/suit_storage_unit/engine, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -8199,12 +8179,12 @@ pixel_x = 3; pixel_y = -7 }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -8337,12 +8317,12 @@ }) "ml" = ( /obj/structure/closet/firecloset, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 10 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -8355,24 +8335,24 @@ pixel_y = -32 }, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" }) "mn" = ( /obj/structure/closet/emcloset, -/turf/open/floor/plasteel/white{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 6 }, +/turf/open/floor/plasteel/white{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -8578,23 +8558,23 @@ /obj/item/device/flashlight, /obj/item/device/flashlight, /obj/item/device/flashlight, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/corner{ dir = 8 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" }) "mC" = ( -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -8609,12 +8589,12 @@ layer = 2.9 }, /obj/item/weapon/tank/jetpack/carbondioxide, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -8637,12 +8617,12 @@ layer = 2.9 }, /obj/item/clothing/shoes/magboots, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -8658,36 +8638,36 @@ layer = 2.9 }, /obj/item/clothing/shoes/magboots, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" }) "mG" = ( /obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" }) "mH" = ( /obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a6{ has_gravity = 1; name = "UO45 Gateway" @@ -9309,10 +9289,8 @@ }) "nz" = ( /obj/machinery/vending/cigarette, -/obj/structure/sign/poster{ - icon_state = "poster7"; - pixel_y = 32; - serial_number = 7 +/obj/structure/sign/poster/contraband/smoke{ + pixel_y = 32 }, /turf/open/floor/plasteel/black{ heat_capacity = 1e+006 @@ -9437,12 +9415,12 @@ d2 = 4; icon_state = "2-4" }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/corner{ dir = 2 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -9464,12 +9442,12 @@ icon_state = "4-8"; pixel_x = 0 }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -9480,12 +9458,12 @@ d2 = 8; icon_state = "2-8" }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/corner{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -10119,12 +10097,12 @@ icon_state = "1-2"; pixel_y = 0 }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -10168,12 +10146,12 @@ icon_state = "1-2"; pixel_y = 0 }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -10526,12 +10504,12 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -10611,12 +10589,12 @@ /obj/machinery/light/small{ dir = 4 }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -10988,12 +10966,12 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/corner{ dir = 8 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -11008,12 +10986,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ dir = 4 }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -11033,12 +11011,12 @@ icon_state = "intact"; dir = 10 }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -11050,12 +11028,12 @@ icon_state = "4-8"; pixel_x = 0 }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -11066,12 +11044,12 @@ d2 = 8; icon_state = "1-8" }, -/turf/open/floor/plasteel/black{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/corner{ dir = 4 }, +/turf/open/floor/plasteel/black{ + heat_capacity = 1e+006 + }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -11473,7 +11451,7 @@ pressure_checks = 2; pump_direction = 0 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500,TEMP=80" }, @@ -11960,26 +11938,26 @@ initialize_directions = 10 }, /obj/machinery/portable_atmospherics/scrubber, +/obj/effect/turf_decal/bot{ + dir = 2 + }, /turf/open/floor/plasteel{ dir = 2; heat_capacity = 1e+006 }, -/obj/effect/turf_decal/bot{ - dir = 2 - }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" }) "qN" = ( /obj/machinery/portable_atmospherics/canister/air, +/obj/effect/turf_decal/bot{ + dir = 2 + }, /turf/open/floor/plasteel{ dir = 2; heat_capacity = 1e+006 }, -/obj/effect/turf_decal/bot{ - dir = 2 - }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -12014,7 +11992,7 @@ id_with_upload_string = "3"; req_access = null }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500,TEMP=80" }, @@ -12526,13 +12504,13 @@ "rx" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible, /obj/machinery/portable_atmospherics/scrubber, +/obj/effect/turf_decal/bot{ + dir = 2 + }, /turf/open/floor/plasteel{ dir = 2; heat_capacity = 1e+006 }, -/obj/effect/turf_decal/bot{ - dir = 2 - }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -12605,7 +12583,7 @@ "rD" = ( /obj/structure/closet/crate, /obj/item/weapon/storage/box/lights/mixed, -/obj/item/weapon/poster/contraband, +/obj/item/weapon/poster/random_contraband, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating{ burnt = 1; @@ -14670,13 +14648,13 @@ dir = 1 }, /obj/machinery/portable_atmospherics/canister/air, +/obj/effect/turf_decal/bot{ + dir = 2 + }, /turf/open/floor/plasteel{ dir = 2; heat_capacity = 1e+006 }, -/obj/effect/turf_decal/bot{ - dir = 2 - }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -14835,12 +14813,12 @@ }) "us" = ( /obj/structure/closet/firecloset, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -14850,12 +14828,12 @@ icon_state = "manifold"; dir = 8 }, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -14867,12 +14845,12 @@ }, /obj/structure/table/reinforced, /obj/item/weapon/wrench, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -15064,12 +15042,12 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -15089,12 +15067,12 @@ /obj/machinery/atmospherics/components/binary/valve{ dir = 2 }, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -15302,11 +15280,11 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel{ heat_capacity = 1e+006; name = "floor" }, -/obj/effect/turf_decal/delivery, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -15326,11 +15304,11 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, +/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel{ heat_capacity = 1e+006; name = "floor" }, -/obj/effect/turf_decal/delivery, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -15345,11 +15323,11 @@ name = "engineering security door" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel{ heat_capacity = 1e+006; name = "floor" }, -/obj/effect/turf_decal/delivery, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -15412,12 +15390,12 @@ }) "vh" = ( /obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 10 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -15427,10 +15405,10 @@ dir = 1 }, /obj/machinery/portable_atmospherics/canister/air, +/obj/effect/turf_decal/stripes/line, /turf/open/floor/plating{ heat_capacity = 1e+006 }, -/obj/effect/turf_decal/stripes/line, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -15440,12 +15418,12 @@ dir = 1 }, /obj/machinery/portable_atmospherics/canister/air, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 6 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a5{ has_gravity = 1; name = "UO45 Research" @@ -15965,11 +15943,8 @@ dir = 4 }, /obj/machinery/vending/tool, -/obj/structure/sign/poster{ - icon_state = "poster5_legit"; - pixel_x = 0; - pixel_y = -32; - serial_number = 21 +/obj/structure/sign/poster/official/build{ + pixel_y = -32 }, /turf/open/floor/plasteel{ burnt = 1; @@ -16014,13 +15989,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, /turf/open/floor/plasteel{ dir = 2; heat_capacity = 1e+006 }, -/obj/effect/turf_decal/bot{ - dir = 2 - }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -16030,13 +16005,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, /turf/open/floor/plasteel{ dir = 2; heat_capacity = 1e+006 }, -/obj/effect/turf_decal/bot{ - dir = 2 - }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -16046,13 +16021,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, /turf/open/floor/plasteel{ dir = 2; heat_capacity = 1e+006 }, -/obj/effect/turf_decal/bot{ - dir = 2 - }, /area/awaycontent/a3{ has_gravity = 1; name = "UO45 Engineering" @@ -16953,12 +16928,12 @@ dir = 2; id = "UO45_mining" }, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a4{ has_gravity = 1; name = "UO45 Mining" @@ -16970,12 +16945,12 @@ input_dir = 4; output_dir = 8 }, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a4{ has_gravity = 1; name = "UO45 Mining" @@ -17029,12 +17004,12 @@ /obj/structure/sign/nosmoking_2{ pixel_x = -32 }, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a4{ has_gravity = 1; name = "UO45 Mining" @@ -17102,12 +17077,12 @@ dir = 1; output_dir = 2 }, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a4{ has_gravity = 1; name = "UO45 Mining" @@ -17221,12 +17196,12 @@ /obj/machinery/light/small{ dir = 8 }, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a4{ has_gravity = 1; name = "UO45 Mining" @@ -17436,12 +17411,12 @@ input_dir = 8; output_dir = 4 }, -/turf/open/floor/plating{ - heat_capacity = 1e+006 - }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/turf/open/floor/plating{ + heat_capacity = 1e+006 + }, /area/awaycontent/a4{ has_gravity = 1; name = "UO45 Mining" @@ -17559,20 +17534,20 @@ }) "yc" = ( /obj/structure/ore_box, +/obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, -/obj/effect/turf_decal/stripes/line, /area/awaycontent/a4{ has_gravity = 1; name = "UO45 Mining" }) "yd" = ( /obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, -/obj/effect/turf_decal/stripes/line, /area/awaycontent/a4{ has_gravity = 1; name = "UO45 Mining" @@ -17590,10 +17565,10 @@ pixel_y = 0 }, /obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, -/obj/effect/turf_decal/stripes/line, /area/awaycontent/a4{ has_gravity = 1; name = "UO45 Mining" diff --git a/_maps/RandomZLevels/wildwest.dmm b/_maps/RandomZLevels/wildwest.dmm index 6919d1f74c..afc9addebb 100644 --- a/_maps/RandomZLevels/wildwest.dmm +++ b/_maps/RandomZLevels/wildwest.dmm @@ -22,7 +22,7 @@ /turf/open/floor/engine/cult, /area/awaymission/wwvault) "ag" = ( -/turf/open/floor/plasteel/circuit/off, +/turf/open/floor/circuit/off, /area/awaymission/wwvault) "ah" = ( /turf/closed/indestructible{ @@ -55,7 +55,7 @@ /area/awaymission/wwvault) "am" = ( /mob/living/simple_animal/hostile/faithless, -/turf/open/floor/plasteel/circuit/off, +/turf/open/floor/circuit/off, /area/awaymission/wwvault) "an" = ( /turf/open/floor/plasteel/cult{ @@ -64,75 +64,75 @@ }, /area/awaymission/wwvault) "ao" = ( -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "ap" = ( /obj/machinery/wish_granter_dark, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "aq" = ( /obj/structure/destructible/cult/pylon, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "ar" = ( /obj/machinery/gateway{ dir = 9 }, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "as" = ( /obj/machinery/gateway{ dir = 1 }, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "at" = ( /obj/machinery/gateway{ dir = 5 }, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "au" = ( /obj/machinery/gateway{ dir = 8 }, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "av" = ( /obj/machinery/gateway/centeraway{ calibrated = 0 }, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "aw" = ( /obj/machinery/gateway{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "ax" = ( /obj/machinery/gateway{ dir = 10 }, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "ay" = ( /obj/machinery/gateway, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "az" = ( /obj/machinery/gateway{ dir = 6 }, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "aA" = ( /obj/effect/meatgrinder, -/turf/open/floor/plasteel/circuit/gcircuit/off, +/turf/open/floor/circuit/green/off, /area/awaymission/wwvault) "aB" = ( /obj/structure/destructible/cult/pylon, -/turf/open/floor/plasteel/circuit/off, +/turf/open/floor/circuit/off, /area/awaymission/wwvault) "aC" = ( /turf/open/floor/plating{ diff --git a/_maps/basemap.dm b/_maps/basemap.dm new file mode 100644 index 0000000000..a852a5c7c5 --- /dev/null +++ b/_maps/basemap.dm @@ -0,0 +1,7 @@ +#ifndef ALL_MAPS +#include "map_files\generic\Fastload.dmm" +#include "map_files\generic\Centcomm.dmm" +#include "map_files\generic\Space.dmm" +#include "map_files\generic\SpaceDock.dmm" +#include "map_files\Mining\lavaland.dmm" +#endif \ No newline at end of file diff --git a/_maps/citadelstation.dm b/_maps/citadelstation.dm index eb386e31aa..ae947f3d38 100644 --- a/_maps/citadelstation.dm +++ b/_maps/citadelstation.dm @@ -1,31 +1 @@ -#if !defined(MAP_FILE) - - #define TITLESCREEN "title" //Add an image in misc/fullscreen.dmi, and set this define to the icon_state, to set a custom titlescreen for your map - - #define MINETYPE "lavaland" - - #include "map_files\CitadelStation\CitadelStation-1.2.1.dmm" - -#ifndef TRAVIS_MASS_MAP_BUILD - #include "map_files\generic\z2.dmm" - #include "map_files\generic\z3.dmm" - #include "map_files\generic\z4.dmm" - #include "map_files\generic\lavaland.dmm" - #include "map_files\generic\z6.dmm" - #include "map_files\generic\z7.dmm" - #include "map_files\generic\z8.dmm" - #include "map_files\generic\z9.dmm" - #include "map_files\generic\z10.dmm" - #include "map_files\generic\z11.dmm" - - #define MAP_PATH "map_files/CitadelStation" - #define MAP_FILE "CitadelStation-1.2.1" - #define MAP_NAME "Citadel Station" - - #define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG -#endif -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, ignoring /tg/station 2. - -#endif +#define FORCE_MAP "_maps/citadelstation.json" \ No newline at end of file diff --git a/_maps/citadelstation.json b/_maps/citadelstation.json new file mode 100644 index 0000000000..ed04061ef2 --- /dev/null +++ b/_maps/citadelstation.json @@ -0,0 +1,7 @@ +{ + "map_name": "Citadel Station", + "map_path": "map_files/CitadelStation", + "map_file": "CitadelStation-1.2.1.dmm", + "minetype": "lavaland", + "transition_config": "default" +} diff --git a/_maps/deltastation.dm b/_maps/deltastation.dm index e297e63075..7dfabf7a48 100644 --- a/_maps/deltastation.dm +++ b/_maps/deltastation.dm @@ -1,30 +1 @@ -#if !defined(MAP_FILE) - - #define TITLESCREEN "title" //Add an image in misc/fullscreen.dmi, and set this define to the icon_state, to set a custom titlescreen for your map - - #define MINETYPE "lavaland" - - #include "map_files\DeltaStation\DeltaStation2.dmm" -#ifndef TRAVIS_MASS_MAP_BUILD - #include "map_files\generic\z2.dmm" - #include "map_files\generic\z3.dmm" - #include "map_files\generic\z4.dmm" - #include "map_files\generic\lavaland.dmm" - #include "map_files\generic\z6.dmm" - #include "map_files\generic\z7.dmm" - #include "map_files\generic\z8.dmm" - #include "map_files\generic\z9.dmm" - #include "map_files\generic\z10.dmm" - #include "map_files\generic\z11.dmm" - - #define MAP_PATH "map_files/DeltaStation" - #define MAP_FILE "DeltaStation2.dmm" - #define MAP_NAME "Delta Station" - - #define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG -#endif -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, deltastation. - -#endif +#define FORCE_MAP "_maps/deltastation.json" \ No newline at end of file diff --git a/_maps/deltastation.json b/_maps/deltastation.json new file mode 100644 index 0000000000..5558cbb1ed --- /dev/null +++ b/_maps/deltastation.json @@ -0,0 +1,7 @@ +{ + "map_name": "Delta Station", + "map_path": "map_files/Deltastation", + "map_file": "DeltaStation2.dmm", + "minetype": "lavaland", + "transition_config": "default" +} diff --git a/_maps/loadallmaps.dm b/_maps/loadallmaps.dm index 42d9401401..208b38d20f 100644 --- a/_maps/loadallmaps.dm +++ b/_maps/loadallmaps.dm @@ -1,48 +1,19 @@ -#define TRAVIS_MASS_MAP_BUILD -#define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG +#ifdef ALL_MAPS +#include "map_files\debug\runtimestation.dmm" +#include "map_files\Deltastation\DeltaStation2.dmm" +#include "map_files\MetaStation\MetaStation.dmm" +#include "map_files\OmegaStation\OmegaStation.dmm" +#include "map_files\PubbyStation\PubbyStation.dmm" +#include "map_files\TgStation\tgstation.2.1.3.dmm" -#include "deltastation.dm" -#ifdef MAP_OVERRIDE_FILES - #undef MAP_OVERRIDE_FILES -#endif +#include "map_files\generic\Centcomm.dmm" +#include "map_files\generic\Fastload.dmm" +#include "map_files\generic\Space.dmm" +#include "map_files\generic\SpaceDock.dmm" -#include "metastation.dm" -#ifdef MAP_OVERRIDE_FILES - #undef MAP_OVERRIDE_FILES -#endif - -#include "omegastation.dm" -#ifdef MAP_OVERRIDE_FILES - #undef MAP_OVERRIDE_FILES -#endif - -#include "pubbystation.dm" -#ifdef MAP_OVERRIDE_FILES - #undef MAP_OVERRIDE_FILES -#endif - -#include "tgstation2.dm" -#ifdef MAP_OVERRIDE_FILES - #undef MAP_OVERRIDE_FILES -#endif - -#include "map_files\generic\z2.dmm" -#include "map_files\generic\z3.dmm" -#include "map_files\generic\z4.dmm" -#include "map_files\generic\lavaland.dmm" -#include "map_files\generic\z6.dmm" -#include "map_files\generic\z7.dmm" -#include "map_files\generic\z8.dmm" -#include "map_files\generic\z9.dmm" -#include "map_files\generic\z10.dmm" -#include "map_files\generic\z11.dmm" - -#undef TRAVIS_MASS_MAP_BUILD +#include "map_files\Mining\Lavaland.dmm" #ifdef TRAVISBUILDING #include "templates.dm" #endif - -#include "runtimestation.dm" - -#define BYOND_WHY_YOU_NO_ALLOW_INCLUDE_LAST_LINE //because byond fails to compile if the last thing in a file is an include. +#endif \ No newline at end of file diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index e6f01837b6..26dbc90924 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -214,6 +214,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, /turf/open/floor/plasteel/white, /area/shuttle/pod_1) "aaA" = ( @@ -234,6 +237,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, /turf/open/floor/plasteel/white, /area/shuttle/pod_2) "aaB" = ( @@ -263,6 +269,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, /turf/open/floor/plasteel/white, /area/shuttle/pod_1) "aaF" = ( @@ -278,6 +290,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, /turf/open/floor/plasteel/white, /area/shuttle/pod_2) "aaG" = ( @@ -409,9 +427,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/mining_construction) "aaV" = ( /obj/effect/decal/cleanable/dirt, @@ -421,9 +437,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry{ name = "Arrivals" }) @@ -435,9 +449,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry{ name = "Arrivals" }) @@ -471,9 +483,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry{ name = "Arrivals" }) @@ -519,15 +529,12 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, + pixel_x = 32 + }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/mining_construction) "abf" = ( /turf/closed/wall/r_wall, @@ -549,17 +556,15 @@ }, /turf/open/floor/plasteel/yellow/side{ dir = 9; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTHWEST)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/mining_construction) "abj" = ( /turf/open/floor/plasteel/yellow/side{ dir = 1; icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/mining_construction) "abk" = ( /obj/effect/decal/cleanable/dirt, @@ -573,7 +578,6 @@ /area/maintenance/auxsolarstarboard) "abm" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/light/small{ @@ -587,7 +591,6 @@ "abn" = ( /obj/machinery/power/smes, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/effect/turf_decal/stripes/line{ @@ -611,7 +614,6 @@ /area/maintenance/auxsolarstarboard) "abp" = ( /obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; icon_state = "propulsion"; dir = 1 }, @@ -634,11 +636,9 @@ "abs" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -649,7 +649,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow/side{ @@ -662,7 +661,6 @@ req_access_txt = "10" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -675,11 +673,9 @@ /area/maintenance/auxsolarstarboard) "abv" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -710,9 +706,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /obj/structure/cable{ d1 = 2; d2 = 4; @@ -728,9 +723,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /obj/machinery/door/airlock/external{ name = "External Solar Access"; req_access_txt = "10" @@ -746,9 +740,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /obj/structure/fans/tiny, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, @@ -759,9 +752,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /turf/open/space, /area/solar/auxstarboard) "abB" = ( @@ -791,7 +783,6 @@ icon_state = "tube1" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -844,7 +835,6 @@ "abF" = ( /obj/structure/window/reinforced, /obj/structure/shuttle/engine/heater{ - tag = "icon-heater (NORTH)"; icon_state = "heater"; dir = 1 }, @@ -905,7 +895,6 @@ /area/mining_construction) "abJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -921,9 +910,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 0; - tag = "icon-doors" - }, + pixel_x = 0 + }, /turf/closed/wall/r_wall, /area/maintenance/auxsolarstarboard) "abM" = ( @@ -965,9 +953,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 0; - tag = "icon-doors" - }, + pixel_x = 0 + }, /turf/open/floor/plating, /area/hallway/secondary/entry{ name = "Arrivals" @@ -1004,9 +991,8 @@ /obj/structure/sign/directions/engineering{ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - tag = "icon-doors" - }, + name = "WARNING: EXTERNAL AIRLOCK" + }, /turf/open/floor/plating, /area/hallway/secondary/entry{ name = "Arrivals" @@ -1152,7 +1138,6 @@ /area/mining_construction) "ace" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1233,7 +1218,6 @@ "acp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1244,13 +1228,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/mining_construction) "acq" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -1288,6 +1269,7 @@ "act" = ( /obj/machinery/holopad, /obj/effect/turf_decal/bot, +/obj/machinery/light, /turf/open/floor/plasteel, /area/shuttle/arrival) "acu" = ( @@ -1322,22 +1304,19 @@ }, /turf/open/floor/plasteel/yellow/side{ dir = 9; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTHWEST)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/mining_construction) "acx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/yellow/side{ dir = 1; icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/mining_construction) "acy" = ( /obj/effect/decal/cleanable/dirt, @@ -1431,7 +1410,6 @@ /obj/structure/chair{ dir = 4 }, -/obj/effect/landmark/latejoin, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/shuttle/arrival) @@ -1439,7 +1417,6 @@ /obj/structure/chair{ dir = 8 }, -/obj/effect/landmark/latejoin, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/shuttle/arrival) @@ -1474,7 +1451,6 @@ "acM" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -1484,12 +1460,10 @@ /area/mining_construction) "acN" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -1565,7 +1539,6 @@ name = "Arrivals" }) "acX" = ( -/obj/structure/extinguisher_cabinet, /turf/closed/wall/shuttle/smooth/nodiagonal, /area/shuttle/arrival) "acY" = ( @@ -1577,7 +1550,6 @@ }) "acZ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -1632,7 +1604,6 @@ on = 1 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -1697,7 +1668,6 @@ "adk" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -1784,7 +1754,6 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -1801,7 +1770,6 @@ "adv" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark{ @@ -1809,7 +1777,6 @@ }, /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -1910,7 +1877,6 @@ "adH" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -1947,7 +1913,6 @@ }) "adK" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -2007,7 +1972,6 @@ /area/mining_construction) "adR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -2028,13 +1992,18 @@ }, /obj/item/weapon/clipboard, /obj/item/toy/figure/syndie, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, /area/shuttle/syndicate) "adU" = ( /obj/structure/chair/office/dark{ - dir = 8 + dir = 8; + name = "tactical swivel chair" }, /turf/open/floor/plasteel/black, /area/shuttle/syndicate) @@ -2043,7 +2012,8 @@ /area/shuttle/syndicate) "adW" = ( /obj/structure/chair/office/dark{ - dir = 1 + dir = 1; + name = "tactical swivel chair" }, /obj/machinery/button/door{ id = "syndieshutters"; @@ -2056,7 +2026,8 @@ /area/shuttle/syndicate) "adX" = ( /obj/structure/chair/office/dark{ - dir = 4 + dir = 4; + name = "tactical swivel chair" }, /turf/open/floor/plasteel/black, /area/shuttle/syndicate) @@ -2066,6 +2037,9 @@ pixel_x = 32 }, /obj/item/weapon/storage/fancy/donut_box, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -2096,7 +2070,6 @@ /area/shuttle/arrival) "aec" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -2133,7 +2106,6 @@ /area/mining_construction) "aef" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -2180,7 +2152,6 @@ "aem" = ( /obj/structure/closet/wardrobe/yellow, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; icon_state = "bluecorner"; dir = 8 }, @@ -2273,16 +2244,14 @@ /turf/closed/wall/mineral/titanium, /area/shuttle/arrival) "aey" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Cockpit"; - req_access_txt = "19" - }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" +/obj/machinery/door/airlock/shuttle{ + name = "Arrival Shuttle Airlock"; + req_access_txt = "0" }, +/turf/open/floor/plasteel, /area/shuttle/arrival) "aez" = ( /obj/machinery/ai_status_display, @@ -2302,23 +2271,19 @@ icon_state = "plant-22" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, /turf/open/floor/plasteel/yellow/side{ dir = 10; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (SOUTHWEST)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/mining_construction) "aeB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -2462,6 +2427,9 @@ name = "Arrivals" }) "aeN" = ( +/obj/machinery/light/small{ + dir = 1 + }, /turf/open/floor/plasteel/blue/side{ dir = 8 }, @@ -2473,8 +2441,10 @@ }, /area/shuttle/arrival) "aeP" = ( +/obj/machinery/light/small{ + dir = 1 + }, /turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; icon_state = "blue"; dir = 4 }, @@ -2518,7 +2488,6 @@ "aeS" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -2529,13 +2498,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/mining_construction) "aeT" = ( /obj/structure/chair{ - dir = 4 + dir = 4; + name = "tactical chair" }, /turf/open/floor/plasteel/vault{ dir = 5 @@ -2543,7 +2511,8 @@ /area/shuttle/syndicate) "aeU" = ( /obj/structure/chair{ - dir = 8 + dir = 8; + name = "tactical chair" }, /turf/open/floor/plasteel/vault{ dir = 5 @@ -2567,7 +2536,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "aeZ" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -2577,7 +2545,6 @@ "afa" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -2585,14 +2552,12 @@ "afb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/neutral/side{ dir = 5; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-neutral (NORTHEAST)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/maintenance/starboard/fore_starboard_maintenance) "afc" = ( /obj/structure/grille, @@ -2614,18 +2579,6 @@ dir = 4 }, /area/maintenance/starboard/fore_starboard_maintenance) -"aff" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/vault{ - dir = 6 - }, -/area/maintenance/starboard/fore_starboard_maintenance) "afg" = ( /obj/structure/chair/stool, /obj/machinery/light/small{ @@ -2704,7 +2657,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "afq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -2795,7 +2747,6 @@ "afD" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -2807,7 +2758,6 @@ "afE" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2819,7 +2769,6 @@ "afF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -2868,7 +2817,6 @@ "afK" = ( /obj/machinery/suit_storage_unit/syndicate, /turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (EAST)"; icon_state = "podhatch"; dir = 4 }, @@ -2914,7 +2862,6 @@ }, /obj/structure/fans/tiny, /turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1 }, @@ -2935,9 +2882,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry{ name = "Arrivals" }) @@ -2947,9 +2892,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry{ name = "Arrivals" }) @@ -2960,9 +2903,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry{ name = "Arrivals" }) @@ -2979,9 +2920,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry{ name = "Arrivals" }) @@ -2994,7 +2933,6 @@ "afU" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -3050,6 +2988,10 @@ /obj/item/weapon/storage/toolbox/syndicate, /obj/item/weapon/crowbar/red, /obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, /turf/open/floor/plasteel/podhatch{ dir = 10 }, @@ -3058,9 +3000,10 @@ /turf/open/floor/plasteel/podhatch, /area/shuttle/syndicate) "agf" = ( -/obj/structure/chair, +/obj/structure/chair{ + name = "tactical chair" + }, /turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6 }, @@ -3080,7 +3023,6 @@ "agi" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (NORTHWEST)"; icon_state = "arrival"; dir = 9 }, @@ -3097,7 +3039,6 @@ }) "agk" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -3155,7 +3096,6 @@ }) "ago" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -3180,7 +3120,6 @@ }) "agq" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -3206,7 +3145,6 @@ }) "agr" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -3281,7 +3219,6 @@ }) "agx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -3293,7 +3230,6 @@ }) "agy" = ( /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (NORTHEAST)"; icon_state = "arrival"; dir = 5 }, @@ -3323,7 +3259,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -3398,7 +3333,6 @@ }) "agK" = ( /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (SOUTHWEST)"; icon_state = "arrival"; dir = 10 }, @@ -3407,7 +3341,6 @@ }) "agL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -3459,7 +3392,6 @@ "agQ" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -3481,7 +3413,6 @@ }) "agS" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -3501,12 +3432,10 @@ }) "agU" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /turf/open/floor/plasteel/arrival/corner{ - tag = "icon-arrivalcorner (WEST)"; icon_state = "arrivalcorner"; dir = 8 }, @@ -3549,7 +3478,6 @@ }) "agZ" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -3592,7 +3520,6 @@ pixel_y = -22 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -3602,7 +3529,6 @@ }) "ahd" = ( /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (SOUTHEAST)"; icon_state = "arrival"; dir = 6 }, @@ -3632,7 +3558,6 @@ "ahg" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -3693,7 +3618,6 @@ "aho" = ( /obj/machinery/suit_storage_unit/syndicate, /turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6 }, @@ -3706,7 +3630,8 @@ /area/shuttle/syndicate) "ahq" = ( /obj/structure/chair{ - dir = 1 + dir = 1; + name = "tactical chair" }, /turf/open/floor/plasteel/vault{ dir = 8 @@ -3736,9 +3661,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/entry{ name = "Arrivals" }) @@ -3762,9 +3685,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/security/vacantoffice) "ahy" = ( /obj/machinery/status_display, @@ -3777,16 +3698,13 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/fore_port_maintenance) "ahA" = ( /turf/closed/wall, @@ -3802,9 +3720,8 @@ "ahC" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -3814,7 +3731,6 @@ "ahD" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; icon_state = "arrival"; dir = 8 }, @@ -3877,7 +3793,6 @@ "ahK" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (EAST)"; icon_state = "arrival"; dir = 4 }, @@ -3890,9 +3805,8 @@ "ahM" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -3903,7 +3817,6 @@ /area/security/checkpoint2) "ahO" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -3915,11 +3828,9 @@ "ahP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -3934,7 +3845,6 @@ }, /obj/structure/barricade/wooden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -3946,7 +3856,6 @@ "ahR" = ( /obj/effect/decal/cleanable/blood/old, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -3955,7 +3864,6 @@ "ahS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -3967,7 +3875,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "ahU" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -3979,7 +3886,6 @@ pixel_y = 32 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -3989,7 +3895,6 @@ "ahW" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -4021,7 +3926,6 @@ /obj/effect/decal/cleanable/blood/old, /obj/effect/decal/remains/human, /turf/open/floor/plasteel/white/side{ - tag = "icon-whitehall (WEST)"; icon_state = "whitehall"; dir = 8 }, @@ -4115,21 +4019,9 @@ }, /turf/open/floor/carpet, /area/security/vacantoffice) -"aio" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/turf/open/floor/carpet, -/area/security/vacantoffice) "aip" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -4147,7 +4039,6 @@ }) "air" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/photocopier, @@ -4172,7 +4063,6 @@ pixel_y = 3 }, /turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (NORTHEAST)"; icon_state = "blue"; dir = 5 }, @@ -4202,7 +4092,6 @@ /area/security/checkpoint2) "aiw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/table/reinforced, @@ -4225,7 +4114,6 @@ /area/security/checkpoint2) "aiy" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -4233,7 +4121,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "aiz" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -4245,7 +4132,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "aiA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -4258,7 +4144,6 @@ "aiB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -4268,11 +4153,9 @@ /area/maintenance/starboard/fore_starboard_maintenance) "aiC" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -4280,7 +4163,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "aiD" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -4448,6 +4330,9 @@ /obj/item/weapon/wrench, /obj/item/device/assembly/infra, /obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -4515,7 +4400,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aja" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -4527,18 +4411,6 @@ icon_state = "panelscorched" }, /area/maintenance/fpmaint2/fore_port_maintenance) -"ajc" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster16_legit" - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) "ajd" = ( /turf/open/floor/plasteel/grimy, /area/security/vacantoffice) @@ -4558,7 +4430,6 @@ /area/security/vacantoffice) "ajg" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -4593,7 +4464,6 @@ /area/security/vacantoffice) "ajl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -4601,7 +4471,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "ajm" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -4623,11 +4492,9 @@ }) "ajn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/holopad, @@ -4648,7 +4515,6 @@ dir = 4 }, /turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; icon_state = "blue"; dir = 4 }, @@ -4674,12 +4540,10 @@ }) "ajq" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; icon_state = "bluecorner"; dir = 8 }, @@ -4730,7 +4594,6 @@ }) "ajw" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -4766,11 +4629,9 @@ /area/security/checkpoint2) "ajz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/holopad, @@ -4782,7 +4643,6 @@ /area/security/checkpoint2) "ajA" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -4807,7 +4667,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "ajC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -4845,10 +4704,6 @@ dir = 6 }, /area/maintenance/starboard/fore_starboard_maintenance) -"ajH" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/maintenance/starboard/fore_starboard_maintenance) "ajI" = ( /obj/structure/bed/roller, /obj/machinery/iv_drip, @@ -4887,9 +4742,8 @@ /obj/structure/reflector/box{ anchored = 1; dir = 4; - icon_state = "reflector_box"; - tag = "icon-reflector_box (EAST)" - }, + icon_state = "reflector_box" + }, /turf/open/floor/plasteel/vault{ dir = 5 }, @@ -4921,29 +4775,14 @@ /obj/structure/reflector/single{ anchored = 1; dir = 8; - icon_state = "reflector"; - tag = "icon-reflector (WEST)" - }, + icon_state = "reflector" + }, /turf/open/floor/plasteel/vault{ dir = 8 }, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) -"ajQ" = ( -/obj/structure/table/wood, -/obj/structure/sign/barsign{ - pixel_y = 32 - }, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/obj/item/weapon/wirerod, -/obj/item/weapon/wrench, -/obj/item/clothing/under/waiter, -/obj/item/clothing/tie/waistcoat, -/turf/open/floor/plasteel/black, -/area/crew_quarters/electronic_marketing_den) "ajR" = ( /obj/item/weapon/twohanded/required/kirbyplants{ icon_state = "plant-21"; @@ -5027,7 +4866,6 @@ /area/crew_quarters/electronic_marketing_den) "akb" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /turf/open/floor/plasteel/neutral/side{ @@ -5037,11 +4875,9 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "akc" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -5049,7 +4885,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "akd" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; icon_state = "connector_map"; dir = 8 }, @@ -5100,7 +4935,6 @@ "akm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -5119,7 +4953,6 @@ }) "ako" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -5131,7 +4964,6 @@ /obj/item/stack/packageWrap, /obj/item/weapon/hand_labeler, /turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; icon_state = "blue"; dir = 4 }, @@ -5143,9 +4975,8 @@ /obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /turf/open/floor/plating, /area/bridge{ name = "Customs" @@ -5153,7 +4984,6 @@ "akr" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; icon_state = "bluecorner"; dir = 8 }, @@ -5215,7 +5045,6 @@ }) "aky" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -5228,9 +5057,8 @@ /obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /turf/open/floor/plating, /area/security/checkpoint2) "akA" = ( @@ -5243,7 +5071,6 @@ /area/security/checkpoint2) "akB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -5276,7 +5103,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "akF" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/apc{ @@ -5326,7 +5152,6 @@ /area/shuttle/syndicate) "akL" = ( /turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (NORTH)"; icon_state = "podhatch"; dir = 1 }, @@ -5371,9 +5196,8 @@ /obj/structure/reflector/double{ anchored = 1; dir = 1; - icon_state = "reflector_double"; - tag = "icon-reflector_double (NORTH)" - }, + icon_state = "reflector_double" + }, /turf/open/floor/plasteel/vault{ dir = 5 }, @@ -5410,23 +5234,9 @@ dir = 4 }, /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/crew_quarters/electronic_marketing_den) -"akY" = ( -/obj/structure/table/wood, -/obj/item/weapon/poster/contraband{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/poster/contraband{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/poster/contraband, -/turf/open/floor/wood, -/area/crew_quarters/electronic_marketing_den) "akZ" = ( /obj/structure/chair/comfy/brown{ icon_state = "comfychair"; @@ -5445,7 +5255,6 @@ /obj/structure/frame/computer, /obj/item/stack/cable_coil/white, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -5453,11 +5262,9 @@ /area/crew_quarters/electronic_marketing_den) "alc" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -5465,7 +5272,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "ald" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; icon_state = "connector_map"; dir = 8 }, @@ -5494,11 +5300,9 @@ /area/security/vacantoffice) "alh" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -5506,7 +5310,6 @@ /area/security/vacantoffice) "ali" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5521,7 +5324,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5536,7 +5338,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5549,15 +5350,12 @@ /area/security/vacantoffice) "all" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -5585,11 +5383,9 @@ }) "aln" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/chair/office/dark{ @@ -5601,14 +5397,12 @@ }) "alo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/table/reinforced, /obj/item/weapon/folder/blue, /obj/item/weapon/pen, /turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; icon_state = "blue"; dir = 4 }, @@ -5618,11 +5412,9 @@ "alp" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/window/brigdoor/southright{ @@ -5666,11 +5458,9 @@ "alu" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -5680,7 +5470,6 @@ /area/security/checkpoint2) "alv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -5698,11 +5487,9 @@ /area/security/checkpoint2) "alw" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/chair/office/dark{ @@ -5732,7 +5519,6 @@ "alz" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -5770,7 +5556,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "alE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/chair/stool/bar, @@ -5822,7 +5607,6 @@ /area/shuttle/syndicate) "alM" = ( /turf/open/floor/plasteel/podhatch{ - tag = "icon-podhatch (SOUTHEAST)"; icon_state = "podhatch"; dir = 6 }, @@ -5848,9 +5632,8 @@ /obj/structure/reflector/double{ anchored = 1; dir = 4; - icon_state = "reflector_double"; - tag = "icon-reflector_double (EAST)" - }, + icon_state = "reflector_double" + }, /turf/open/floor/plasteel/vault{ dir = 5 }, @@ -5932,7 +5715,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -5956,7 +5738,6 @@ /obj/item/weapon/circuitboard/computer/secure_data, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/wood{ - tag = "icon-wood-broken2"; icon_state = "wood-broken2" }, /area/crew_quarters/electronic_marketing_den) @@ -5968,7 +5749,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "amd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -5990,7 +5770,6 @@ /area/security/vacantoffice) "amh" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -6011,7 +5790,6 @@ "amj" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6030,7 +5808,6 @@ }) "aml" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -6046,7 +5823,6 @@ /obj/item/weapon/paper_bin, /obj/item/weapon/pen, /turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (EAST)"; icon_state = "blue"; dir = 4 }, @@ -6070,7 +5846,6 @@ }) "amp" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -6131,7 +5906,6 @@ /area/security/checkpoint2) "amw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -6152,7 +5926,6 @@ "amy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -6180,7 +5953,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "amD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/black, @@ -6234,7 +6006,6 @@ dir = 8 }, /turf/open/floor/plating{ - tag = "icon-plating_warn_end (WEST)"; icon_state = "plating_warn_end" }, /area/maintenance/disposal) @@ -6254,7 +6025,6 @@ dir = 2 }, /turf/open/floor/plating{ - tag = "icon-plating_warn_side (WEST)"; icon_state = "plating_warn_side" }, /area/maintenance/disposal) @@ -6271,7 +6041,6 @@ dir = 2 }, /turf/open/floor/plating{ - tag = "icon-plating_warn_side (WEST)"; icon_state = "plating_warn_side" }, /area/maintenance/disposal) @@ -6287,7 +6056,6 @@ dir = 2 }, /turf/open/floor/plating{ - tag = "icon-plating_warn_side (WEST)"; icon_state = "plating_warn_side" }, /area/maintenance/disposal) @@ -6376,6 +6144,11 @@ /obj/structure/window/reinforced{ dir = 4 }, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -6503,7 +6276,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/wood, @@ -6513,7 +6285,6 @@ /obj/item/weapon/folder/red, /obj/item/weapon/pen, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/wood, @@ -6524,7 +6295,6 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6532,14 +6302,12 @@ /area/crew_quarters/electronic_marketing_den) "anj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/wood, /area/crew_quarters/electronic_marketing_den) "ank" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/wood{ @@ -6556,7 +6324,6 @@ /area/crew_quarters/electronic_marketing_den) "anm" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6566,9 +6333,8 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plasteel/neutral/side{ dir = 6; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-neutral (SOUTHEAST)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/maintenance/fpmaint2/fore_port_maintenance) "ano" = ( /obj/structure/table/wood, @@ -6583,17 +6349,6 @@ }, /turf/open/floor/plasteel/grimy, /area/security/vacantoffice) -"anp" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/light/small, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/turf/open/floor/plasteel/grimy, -/area/security/vacantoffice) "anq" = ( /obj/structure/table/wood, /obj/item/weapon/paper_bin, @@ -6673,7 +6428,6 @@ }) "any" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6687,7 +6441,6 @@ pixel_x = 32 }, /turf/open/floor/plasteel/blue/side{ - tag = "icon-blue (SOUTHEAST)"; icon_state = "blue"; dir = 6 }, @@ -6761,7 +6514,6 @@ /area/security/checkpoint2) "anG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6780,7 +6532,6 @@ /area/security/checkpoint2) "anI" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -6788,11 +6539,9 @@ /area/maintenance/starboard/fore_starboard_maintenance) "anJ" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6803,7 +6552,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "anK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -6816,7 +6564,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "anL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6826,7 +6573,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "anM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6838,7 +6584,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "anN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -6851,7 +6596,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "anO" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -6873,7 +6617,6 @@ on = 1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -6953,6 +6696,10 @@ /obj/item/weapon/surgicaldrill, /obj/item/weapon/circular_saw, /obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -6978,7 +6725,7 @@ name = "Theatre Stage"; req_access_txt = "0" }, -/turf/open/floor/plasteel/circuit/rcircuit, +/turf/open/floor/circuit/red, /area/shuttle/syndicate) "anZ" = ( /obj/structure/cable, @@ -6992,9 +6739,8 @@ /obj/structure/reflector/single{ anchored = 1; dir = 1; - icon_state = "reflector"; - tag = "icon-reflector (NORTH)" - }, + icon_state = "reflector" + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -7028,26 +6774,11 @@ dir = 5 }, /area/crew_quarters/electronic_marketing_den) -"aod" = ( -/obj/structure/table/wood, -/obj/item/weapon/poster/contraband{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/poster/contraband{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/weapon/poster/contraband, -/turf/open/floor/plasteel/black, -/area/crew_quarters/electronic_marketing_den) "aoe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/wood{ - tag = "icon-wood-broken"; icon_state = "wood-broken" }, /area/crew_quarters/electronic_marketing_den) @@ -7061,7 +6792,6 @@ /area/crew_quarters/electronic_marketing_den) "aoh" = ( /turf/open/floor/wood{ - tag = "icon-wood-broken7"; icon_state = "wood-broken7" }, /area/crew_quarters/electronic_marketing_den) @@ -7101,21 +6831,17 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/fore_port_maintenance) "aom" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -7123,7 +6849,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aon" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -7135,15 +6860,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/bridge{ name = "Customs" }) "aoo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -7155,13 +6877,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/security/checkpoint2) "aop" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -7192,7 +6911,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -7260,7 +6978,6 @@ /obj/structure/disposalpipe/segment, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -7301,13 +7018,13 @@ /area/shuttle/syndicate) "aoE" = ( /obj/machinery/recharge_station, -/turf/open/floor/plasteel/circuit/rcircuit, +/turf/open/floor/circuit/red, /area/shuttle/syndicate) "aoF" = ( /obj/machinery/telecomms/allinone{ intercept = 1 }, -/turf/open/floor/plasteel/circuit/rcircuit, +/turf/open/floor/circuit/red, /area/shuttle/syndicate) "aoG" = ( /obj/structure/lattice/catwalk, @@ -7328,7 +7045,7 @@ dir = 1; state = 2 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -7349,15 +7066,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) "aoK" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/gravity_generator{ name = "Atmospherics Engine" @@ -7373,16 +7088,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) -"aoM" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/crew_quarters/electronic_marketing_den) "aoN" = ( /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch"; @@ -7390,16 +7099,13 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/barricade/wooden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/electronic_marketing_den) "aoO" = ( /obj/machinery/door/airlock/maintenance_hatch{ @@ -7412,9 +7118,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/electronic_marketing_den) "aoP" = ( /obj/structure/closet/firecloset, @@ -7447,14 +7151,12 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aoU" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/fpmaint2/fore_port_maintenance) "aoV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -7462,7 +7164,6 @@ "aoW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -7471,7 +7172,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aoX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -7481,7 +7181,6 @@ "aoY" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -7489,11 +7188,9 @@ "aoZ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -7504,11 +7201,9 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "apa" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -7516,11 +7211,9 @@ "apb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -7624,7 +7317,6 @@ "apl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -7757,7 +7449,6 @@ /obj/structure/disposalpipe/segment, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -7797,7 +7488,6 @@ /obj/item/clothing/glasses/meson/engine, /obj/structure/table/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -7825,7 +7515,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -7918,7 +7607,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -7927,7 +7616,6 @@ dir = 4 }, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; icon_state = "caution"; dir = 8 }, @@ -7960,7 +7648,6 @@ "apR" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -8000,7 +7687,6 @@ "apV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plating, @@ -8008,7 +7694,6 @@ "apW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -8017,25 +7702,21 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "apX" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/fpmaint2/fore_port_maintenance) "apY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side, /area/maintenance/fpmaint2/fore_port_maintenance) "apZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8046,11 +7727,9 @@ "aqa" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -8058,7 +7737,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aqb" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8069,7 +7747,6 @@ "aqc" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8080,7 +7757,6 @@ "aqd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8093,7 +7769,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aqe" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8104,11 +7779,9 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aqf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -8116,7 +7789,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aqg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8126,15 +7798,12 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aqh" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -8202,7 +7871,6 @@ "aqp" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -8246,7 +7914,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aqt" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -8257,7 +7924,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aqu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8275,7 +7941,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8291,7 +7956,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aqw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -8309,7 +7973,6 @@ }) "aqx" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -8360,7 +8023,6 @@ }) "aqB" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -8420,11 +8082,9 @@ /area/maintenance/starboard/fore_starboard_maintenance) "aqG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -8433,7 +8093,6 @@ "aqH" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8444,15 +8103,12 @@ "aqI" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -8461,7 +8117,6 @@ "aqJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -8478,9 +8133,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/starboard/fore_starboard_maintenance) "aqL" = ( /obj/structure/disposalpipe/segment{ @@ -8744,7 +8397,7 @@ icon_state = "4-8"; pixel_y = 0 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -8759,7 +8412,6 @@ pixel_y = 0 }, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; icon_state = "caution"; dir = 8 }, @@ -8802,7 +8454,6 @@ "arl" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -8850,13 +8501,8 @@ /area/engine/gravity_generator{ name = "Atmospherics Engine" }) -"aro" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/maintenance/fpmaint2/fore_port_maintenance) "arp" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -8871,9 +8517,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/fore_port_maintenance) "arr" = ( /obj/machinery/door/airlock/maintenance_hatch{ @@ -8884,9 +8528,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/fore_port_maintenance) "ars" = ( /obj/effect/decal/cleanable/dirt, @@ -8912,7 +8554,6 @@ icon_state = "plant-22" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -8924,7 +8565,6 @@ }) "arx" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -8948,13 +8588,11 @@ }) "arz" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, @@ -9008,7 +8646,6 @@ "arF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -9023,7 +8660,6 @@ "arG" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -9040,11 +8676,9 @@ /area/maintenance/starboard/fore_starboard_maintenance) "arI" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -9056,7 +8690,6 @@ "arJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9072,7 +8705,6 @@ "arK" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9086,7 +8718,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "arL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9101,7 +8732,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "arM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9115,7 +8745,6 @@ "arN" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9128,11 +8757,9 @@ /area/maintenance/starboard/fore_starboard_maintenance) "arO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -9146,7 +8773,6 @@ "arP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9162,11 +8788,9 @@ "arQ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9179,7 +8803,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "arR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9205,7 +8828,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -9222,7 +8844,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -9236,7 +8857,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -9249,7 +8869,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -9266,7 +8885,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/brown, @@ -9279,7 +8897,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/blood/splatter, @@ -9295,7 +8912,6 @@ on = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/blood/splatter, @@ -9314,11 +8930,9 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; icon_state = "brown"; dir = 6 }, @@ -9332,7 +8946,6 @@ /area/space) "asb" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -9341,7 +8954,6 @@ /area/space) "asc" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/junction{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -9439,7 +9051,7 @@ /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -9448,7 +9060,6 @@ dir = 4 }, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; icon_state = "caution"; dir = 8 }, @@ -9578,7 +9189,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (WEST)"; icon_state = "redblue"; dir = 8 }, @@ -9617,7 +9227,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "asE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -9639,15 +9248,12 @@ }, /obj/item/weapon/storage/box/mousetraps, /obj/item/weapon/restraints/legcuffs/beartrap{ - tag = "icon-beartrap0"; icon_state = "beartrap0" }, /obj/item/weapon/restraints/legcuffs/beartrap{ - tag = "icon-beartrap0"; icon_state = "beartrap0" }, /obj/item/weapon/restraints/legcuffs/beartrap{ - tag = "icon-beartrap0"; icon_state = "beartrap0" }, /obj/effect/decal/cleanable/cobweb, @@ -9675,7 +9281,6 @@ pixel_y = 25 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/item/clothing/under/maid, @@ -9774,15 +9379,12 @@ name = "Auxiliary Restroom" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/toilet{ name = "\improper Auxiliary Restrooms" }) @@ -9811,9 +9413,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "asT" = ( /obj/machinery/door/firedoor, @@ -9823,9 +9423,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "asU" = ( /obj/machinery/door/firedoor, @@ -9836,9 +9434,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "asV" = ( /obj/structure/sign/directions/evac{ @@ -9863,7 +9459,6 @@ "asX" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -9874,15 +9469,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/sorting{ name = "\improper Warehouse" }) "asY" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -9906,7 +9498,6 @@ /area/quartermaster/storage) "atb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -9918,7 +9509,6 @@ "atd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -9930,9 +9520,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/storage) "ate" = ( /obj/structure/lattice/catwalk, @@ -9948,7 +9536,6 @@ /area/space) "atg" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -10039,7 +9626,6 @@ }) "atq" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -10055,12 +9641,11 @@ }) "atr" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/gravity_generator{ name = "Atmospherics Engine" @@ -10086,7 +9671,6 @@ name = "blobstart" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -10112,7 +9696,6 @@ on = 1 }, /turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (WEST)"; icon_state = "redblue"; dir = 8 }, @@ -10130,7 +9713,6 @@ "atz" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood{ - tag = "icon-wood-broken2"; icon_state = "wood-broken2" }, /area/maintenance/fpmaint2/fore_port_maintenance) @@ -10180,11 +9762,9 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "atG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -10208,7 +9788,6 @@ pixel_y = 2 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -10231,7 +9810,6 @@ "atJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10244,7 +9822,6 @@ dir = 4 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -10260,7 +9837,6 @@ scrub_Toxins = 0 }, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHEAST)"; icon_state = "whitegreen"; dir = 5 }, @@ -10354,7 +9930,6 @@ }) "atU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -10379,7 +9954,6 @@ /area/hallway/primary/fore) "atX" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -10415,7 +9989,6 @@ "aub" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -10429,7 +10002,6 @@ dir = 1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -10451,7 +10023,6 @@ "aue" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -10493,7 +10064,6 @@ dir = 1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -10507,7 +10077,6 @@ "aul" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -10516,7 +10085,6 @@ /obj/structure/table/reinforced, /obj/item/weapon/paper_bin, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -10530,7 +10098,6 @@ pixel_y = 26 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -10539,7 +10106,6 @@ /obj/structure/table/reinforced, /obj/machinery/computer/stockexchange, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -10551,14 +10117,12 @@ }, /obj/structure/filingcabinet/chestdrawer, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, /area/quartermaster/storage) "auq" = ( /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -10595,7 +10159,6 @@ /area/solar/auxport) "auv" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -10690,17 +10253,17 @@ d2 = 8; icon_state = "0-8" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) "auD" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/general/visible{ icon_state = "intact"; dir = 6 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/gravity_generator{ name = "Atmospherics Engine" @@ -10726,10 +10289,10 @@ }) "auG" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 10 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/gravity_generator{ name = "Atmospherics Engine" @@ -10742,7 +10305,7 @@ icon_state = "0-4"; d2 = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -10814,7 +10377,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -10835,7 +10397,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "auS" = ( /turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (WEST)"; icon_state = "redblue"; dir = 8 }, @@ -10850,7 +10411,6 @@ /obj/structure/table/wood, /obj/item/device/camera, /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/maintenance/fpmaint2/fore_port_maintenance) @@ -10860,7 +10420,6 @@ dir = 8 }, /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/maintenance/fpmaint2/fore_port_maintenance) @@ -10871,16 +10430,6 @@ }, /turf/open/floor/plating, /area/maintenance/fpmaint2/fore_port_maintenance) -"auX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken7"; - icon_state = "wood-broken7" - }, -/area/maintenance/fpmaint2/fore_port_maintenance) "auY" = ( /obj/machinery/photocopier, /turf/open/floor/plating, @@ -10889,7 +10438,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -10927,7 +10475,6 @@ "avc" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -10947,17 +10494,6 @@ dir = 4 }, /area/janitor) -"avf" = ( -/obj/structure/janitorialcart, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster17_legit" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/janitor) "avg" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -10996,7 +10532,6 @@ }) "avl" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/effect/decal/cleanable/dirt, @@ -11016,7 +10551,6 @@ pixel_x = 24 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -11038,7 +10572,6 @@ /area/hallway/primary/fore) "avo" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -11048,11 +10581,9 @@ /area/hallway/primary/fore) "avp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -11067,7 +10598,6 @@ "avq" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -11090,11 +10620,9 @@ "avr" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -11118,11 +10646,9 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/old, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -11173,7 +10699,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -11236,7 +10761,6 @@ /area/quartermaster/storage) "avD" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -11292,7 +10816,6 @@ /area/quartermaster/storage) "avK" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -11348,10 +10871,10 @@ }) "avP" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 8 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/gravity_generator{ name = "Atmospherics Engine" @@ -11364,11 +10887,11 @@ }) "avR" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/manifold/general/visible{ icon_state = "manifold"; dir = 4 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/gravity_generator{ name = "Atmospherics Engine" @@ -11405,7 +10928,6 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -11462,13 +10984,6 @@ /obj/structure/cable/white, /turf/open/floor/plasteel/neutral/side, /area/maintenance/fpmaint2/fore_port_maintenance) -"avZ" = ( -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/redblue, -/area/maintenance/fpmaint2/fore_port_maintenance) "awa" = ( /obj/machinery/vending/autodrobe{ req_access_txt = "0" @@ -11476,21 +10991,10 @@ /obj/machinery/light/small, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (WEST)"; icon_state = "redblue"; dir = 8 }, /area/maintenance/fpmaint2/fore_port_maintenance) -"awb" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/clothing/shoes/jackboots, -/obj/effect/landmark/costume, -/turf/open/floor/plasteel/cafeteria, -/area/maintenance/fpmaint2/fore_port_maintenance) "awc" = ( /obj/structure/table/wood, /obj/item/weapon/lipstick/random{ @@ -11517,41 +11021,12 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small, /turf/open/floor/wood{ - tag = "icon-wood-broken6"; icon_state = "wood-broken6" }, /area/maintenance/fpmaint2/fore_port_maintenance) -"awe" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/effect/decal/cleanable/dirt, -/obj/item/weapon/mop, -/obj/item/weapon/mop, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -26 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/machinery/light/small, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel/neutral, -/area/janitor) "awf" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/whitepurple/side{ @@ -11564,7 +11039,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/whitegreen/side{ @@ -11604,9 +11078,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/toilet{ name = "\improper Auxiliary Restrooms" }) @@ -11626,7 +11098,6 @@ /area/hallway/primary/fore) "awn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -11648,7 +11119,6 @@ "awp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11666,7 +11136,6 @@ pixel_y = 0 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -11682,7 +11151,6 @@ "aws" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11693,7 +11161,6 @@ "awt" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -11739,7 +11206,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -11782,7 +11248,6 @@ "awB" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -11841,7 +11306,6 @@ "awK" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -11853,9 +11317,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn (NORTHWEST)" - }, +/turf/open/floor/plasteel, /area/shuttle/supply) "awM" = ( /obj/effect/turf_decal/stripes/line{ @@ -11874,9 +11336,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn (NORTHEAST)" - }, +/turf/open/floor/plasteel, /area/shuttle/supply) "awP" = ( /obj/structure/lattice/catwalk, @@ -11896,7 +11356,6 @@ /area/space) "awR" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - tag = "icon-freezer (EAST)"; icon_state = "freezer"; dir = 4 }, @@ -12022,7 +11481,6 @@ "axb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12042,15 +11500,12 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/janitor) "axe" = ( /obj/machinery/door/poddoor/shutters{ @@ -12060,9 +11515,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/janitor) "axf" = ( /obj/machinery/door/poddoor/shutters{ @@ -12079,9 +11532,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/janitor) "axg" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12092,7 +11543,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/vomit/old, /obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8 }, @@ -12107,7 +11557,6 @@ "axi" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8 }, @@ -12123,7 +11572,6 @@ "axj" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8 }, @@ -12149,7 +11597,6 @@ }) "axl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -12163,7 +11610,6 @@ /area/hallway/primary/fore) "axn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12183,11 +11629,9 @@ }) "axp" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -12201,7 +11645,6 @@ name = "Cargo Technician" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -12242,7 +11685,6 @@ }) "axu" = ( /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -12285,7 +11727,6 @@ "axz" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -12302,7 +11743,6 @@ id = "cargounload" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -12323,7 +11763,6 @@ "axD" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -12332,11 +11771,9 @@ /area/quartermaster/storage) "axE" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -12346,11 +11783,9 @@ /area/quartermaster/storage) "axF" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -12531,7 +11966,6 @@ }) "axX" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -12547,12 +11981,11 @@ }) "axY" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/gravity_generator{ name = "Atmospherics Engine" @@ -12652,7 +12085,6 @@ /area/hydroponics/Abandoned_Garden) "ayj" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -12664,11 +12096,9 @@ "ayk" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -12680,7 +12110,6 @@ "ayl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12693,7 +12122,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aym" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12707,7 +12135,6 @@ "ayn" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12720,7 +12147,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "ayo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12733,11 +12159,9 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "ayp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12752,7 +12176,6 @@ "ayq" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, @@ -12767,11 +12190,9 @@ "ayr" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12875,7 +12296,6 @@ }) "ayA" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -12886,7 +12306,6 @@ "ayB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12909,7 +12328,6 @@ }) "ayE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -13028,7 +12446,6 @@ "ayT" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -13058,7 +12475,6 @@ id = "cargounload" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/poddoor{ @@ -13216,7 +12632,6 @@ icon_state = "1-2" }, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; icon_state = "escape"; dir = 4 }, @@ -13237,11 +12652,9 @@ /area/hydroponics/Abandoned_Garden) "azp" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -13276,11 +12689,9 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "azu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -13291,7 +12702,6 @@ "azv" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13302,7 +12712,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "azw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -13311,7 +12720,6 @@ "azx" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13325,7 +12733,6 @@ "azy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13342,7 +12749,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13355,7 +12761,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "azA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -13368,14 +12773,12 @@ /area/hallway/primary/fore) "azB" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -13383,7 +12786,6 @@ /area/hallway/primary/fore) "azC" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -13394,11 +12796,9 @@ "azD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -13414,7 +12814,6 @@ /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -13437,7 +12836,6 @@ "azF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13449,7 +12847,6 @@ sortType = 1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -13459,15 +12856,12 @@ "azG" = ( /obj/effect/decal/cleanable/oil, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -13482,15 +12876,12 @@ "azH" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -13504,7 +12895,6 @@ "azI" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -13520,7 +12910,6 @@ "azJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/bot, @@ -13530,7 +12919,6 @@ }) "azK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -13542,7 +12930,6 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/closet/crate, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/spawner/lootdrop/maintenance{ @@ -13557,7 +12944,6 @@ "azM" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -13567,7 +12953,6 @@ pixel_y = 0 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -13596,7 +12981,6 @@ /area/quartermaster/storage) "azP" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -13647,13 +13031,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/storage) "azW" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -13711,7 +13092,6 @@ }) "aAc" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (EAST)"; name = "scrubbers pipe"; icon_state = "manifold"; dir = 4 @@ -13822,7 +13202,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -13891,7 +13270,6 @@ }) "aAw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -13903,9 +13281,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/sleep{ name = "Service Hall" }) @@ -13948,7 +13324,6 @@ "aAC" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -13959,7 +13334,6 @@ "aAD" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -13970,7 +13344,6 @@ "aAE" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -14001,7 +13374,6 @@ "aAI" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; icon_state = "brown"; dir = 6 }, @@ -14068,7 +13440,6 @@ /area/quartermaster/storage) "aAQ" = ( /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -14106,9 +13477,8 @@ "aAT" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -14131,6 +13501,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, /turf/open/floor/plasteel, /area/shuttle/supply) "aAV" = ( @@ -14358,7 +13732,6 @@ dir = 9 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/yellow, @@ -14367,7 +13740,6 @@ }) "aBi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -14385,7 +13757,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable, @@ -14397,14 +13768,12 @@ "aBk" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/hydrofloor, /area/hydroponics/Abandoned_Garden) "aBl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/hydrofloor, @@ -14412,7 +13781,6 @@ "aBm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -14420,7 +13788,6 @@ /area/hydroponics/Abandoned_Garden) "aBn" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/hydrofloor, @@ -14428,7 +13795,6 @@ "aBo" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -14501,12 +13867,10 @@ }) "aBv" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -14541,7 +13905,6 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /turf/open/floor/plasteel/vault{ @@ -14591,10 +13954,6 @@ /obj/item/weapon/storage/box/beanbag, /turf/open/floor/plasteel/black, /area/crew_quarters/bar) -"aBB" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/crew_quarters/bar) "aBC" = ( /obj/structure/table/wood, /obj/structure/sign/barsign{ @@ -14627,7 +13986,8 @@ departmentType = 0; name = "Bar RC"; pixel_x = 0; - pixel_y = 32 + pixel_y = 32; + receive_ore_updates = 1 }, /obj/item/weapon/book/manual/barman_recipes, /obj/item/weapon/reagent_containers/food/drinks/shaker, @@ -14672,7 +14032,6 @@ "aBJ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -14687,11 +14046,9 @@ /area/hallway/primary/fore) "aBK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/disposalpipe/segment, @@ -14723,7 +14080,6 @@ /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/mining{ @@ -14734,9 +14090,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/office{ name = "\improper Cargo Office" }) @@ -14790,9 +14144,8 @@ "aBV" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -14830,7 +14183,6 @@ }, /obj/effect/turf_decal/bot, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -14862,7 +14214,6 @@ pixel_y = -28 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -14886,7 +14237,6 @@ }) "aCg" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -14896,7 +14246,6 @@ }) "aCh" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -14928,7 +14277,6 @@ }) "aCk" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14946,11 +14294,9 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -14961,7 +14307,6 @@ "aCm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/turf_decal/stripes/corner, @@ -15051,7 +14396,6 @@ "aCv" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -15076,7 +14420,6 @@ /area/hydroponics/Abandoned_Garden) "aCy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15154,7 +14497,6 @@ }) "aCG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15207,7 +14549,6 @@ /area/crew_quarters/bar) "aCJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -15346,7 +14687,6 @@ "aCW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; icon_state = "pipe-t"; dir = 1 }, @@ -15364,7 +14704,6 @@ }) "aCX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15395,7 +14734,6 @@ }) "aCZ" = ( /obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; icon_state = "pipe-t"; dir = 1 }, @@ -15453,9 +14791,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/light_switch{ pixel_x = 38 }, @@ -15612,7 +14949,6 @@ id = "cargoload" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -15648,7 +14984,6 @@ /area/security/prison) "aDo" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/item/weapon/cultivator, @@ -15663,11 +14998,9 @@ pixel_y = 28 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -15683,7 +15016,6 @@ /area/security/prison) "aDq" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/item/weapon/reagent_containers/glass/bucket, @@ -15724,7 +15056,6 @@ "aDt" = ( /obj/machinery/power/smes, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/light/small{ @@ -15737,16 +15068,14 @@ /area/maintenance/auxsolarport) "aDu" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/sign/directions/engineering{ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, + pixel_x = 32 + }, /obj/machinery/camera{ c_tag = "Solar - Fore Port"; name = "solar camera" @@ -15817,7 +15146,6 @@ dir = 10 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/vault, @@ -15830,7 +15158,6 @@ pixel_y = 32 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /turf/open/floor/plasteel/vault, @@ -15852,11 +15179,9 @@ "aDE" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -15867,7 +15192,6 @@ }) "aDF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15884,7 +15208,6 @@ }, /obj/machinery/light, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15907,7 +15230,6 @@ pixel_y = -24 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15920,7 +15242,6 @@ }) "aDI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15936,11 +15257,9 @@ }) "aDJ" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15952,11 +15271,9 @@ }) "aDK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -15967,7 +15284,6 @@ }) "aDL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -15983,7 +15299,6 @@ }) "aDM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/sign/electricshock{ @@ -15998,11 +15313,9 @@ }) "aDN" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16058,9 +15371,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hydroponics/Abandoned_Garden) "aDS" = ( /obj/machinery/door/airlock/maintenance_hatch{ @@ -16069,21 +15380,17 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/barricade/wooden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hydroponics/Abandoned_Garden) "aDT" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16114,15 +15421,12 @@ }) "aDV" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -16138,7 +15442,6 @@ "aDW" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -16158,7 +15461,6 @@ /area/crew_quarters/bar) "aDX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16173,7 +15475,6 @@ /area/crew_quarters/bar) "aDY" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16186,7 +15487,6 @@ name = "Bartender" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -16210,13 +15510,6 @@ }, /turf/open/floor/plasteel/black, /area/crew_quarters/bar) -"aEc" = ( -/obj/structure/sign/poster, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/crew_quarters/bar) "aEd" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -16284,7 +15577,6 @@ }) "aEm" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16314,7 +15606,6 @@ }) "aEp" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -16326,7 +15617,6 @@ "aEq" = ( /obj/machinery/computer/secure_data, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; icon_state = "red"; dir = 6 }, @@ -16347,7 +15637,6 @@ dir = 4 }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; icon_state = "red"; dir = 4 }, @@ -16405,7 +15694,6 @@ "aEx" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -16421,7 +15709,6 @@ id = "cargoload" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -16436,11 +15723,9 @@ /area/quartermaster/storage) "aEA" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -16449,7 +15734,6 @@ /area/quartermaster/storage) "aEB" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white, @@ -16481,7 +15765,6 @@ /area/shuttle/supply) "aEG" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -16491,7 +15774,6 @@ "aEH" = ( /obj/machinery/seed_extractor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -16499,7 +15781,6 @@ /area/security/prison) "aEI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -16512,22 +15793,18 @@ /area/security/prison) "aEJ" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, /area/security/prison) "aEK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -16539,7 +15816,6 @@ "aEL" = ( /obj/machinery/biogenerator, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -16547,7 +15823,6 @@ /area/security/prison) "aEM" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -16559,9 +15834,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /obj/machinery/door/airlock/external{ name = "External Solar Access"; req_access_txt = "24"; @@ -16578,9 +15852,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /obj/structure/fans/tiny, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery, @@ -16596,9 +15869,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -16622,11 +15894,9 @@ /area/maintenance/auxsolarport) "aER" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -16648,14 +15918,12 @@ req_one_access = null }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -16664,7 +15932,6 @@ "aET" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8 }, @@ -16735,7 +16002,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -16771,7 +16037,6 @@ pixel_y = 25 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/effect/decal/cleanable/oil, @@ -16785,9 +16050,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/light_switch{ pixel_x = 24; pixel_y = 24 @@ -16801,7 +16065,6 @@ /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16813,9 +16076,7 @@ req_access_txt = "0"; req_one_access_txt = "24;10" }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -16835,7 +16096,6 @@ "aFf" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -16847,9 +16107,7 @@ req_access_txt = "0"; req_one_access_txt = "24;10" }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -16862,20 +16120,17 @@ }) "aFh" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/gravity_generator{ name = "Atmospherics Engine" @@ -16883,7 +16138,6 @@ "aFi" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable{ @@ -16901,20 +16155,17 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) "aFj" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/effect/decal/cleanable/dirt, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/gravity_generator{ name = "Atmospherics Engine" @@ -16929,7 +16180,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aFl" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16940,7 +16190,6 @@ "aFm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16952,15 +16201,12 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aFn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -16999,7 +16245,6 @@ "aFr" = ( /obj/structure/dresser, /turf/open/floor/wood{ - tag = "icon-wood-broken6"; icon_state = "wood-broken6" }, /area/crew_quarters/sleep{ @@ -17018,7 +16263,6 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -17030,7 +16274,6 @@ }) "aFu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/light/small{ @@ -17104,7 +16347,6 @@ /area/crew_quarters/bar) "aFE" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -17127,7 +16369,6 @@ scrub_Toxins = 0 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -17157,7 +16398,6 @@ "aFI" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -17167,11 +16407,9 @@ }) "aFJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -17201,12 +16439,10 @@ }) "aFM" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -17218,7 +16454,6 @@ "aFN" = ( /obj/machinery/computer/security, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red, @@ -17230,11 +16465,9 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/neutral, @@ -17243,11 +16476,9 @@ }) "aFP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; icon_state = "red"; dir = 4 }, @@ -17258,7 +16489,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /turf/open/floor/plating, @@ -17281,7 +16511,6 @@ /area/quartermaster/storage) "aFT" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -17340,7 +16569,6 @@ /area/security/prison) "aGb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -17453,7 +16681,6 @@ name = "Mix to Turbine" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -17461,7 +16688,6 @@ /area/maintenance/incinerator) "aGq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -17472,15 +16698,12 @@ /area/maintenance/incinerator) "aGr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17491,11 +16714,9 @@ /area/maintenance/incinerator) "aGs" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -17511,7 +16732,6 @@ req_access_txt = "24" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17525,7 +16745,6 @@ "aGu" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17540,11 +16759,9 @@ }) "aGv" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -17560,24 +16777,6 @@ /obj/structure/closet/secure_closet/atmospherics, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"aGx" = ( -/obj/structure/closet/radiation, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/machinery/camera{ - c_tag = "Atmospherics - Engine Access"; - name = "atmospherics camera" - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -17589,7 +16788,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -17602,7 +16800,6 @@ }) "aGz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -17640,7 +16837,6 @@ }) "aGC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -17666,9 +16862,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, + icon_state = "1-4" + }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/engine/gravity_generator{ @@ -17774,11 +16969,9 @@ }) "aGQ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -17899,7 +17092,6 @@ name = "Cargo Technician" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; icon_state = "brown"; dir = 9 }, @@ -17913,7 +17105,6 @@ scrub_Toxins = 0 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -17929,7 +17120,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -17938,16 +17128,13 @@ }) "aHg" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5 }, @@ -17957,7 +17144,6 @@ "aHh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -17992,12 +17178,10 @@ }) "aHk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -18010,7 +17194,6 @@ dir = 4 }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; icon_state = "red"; dir = 4 }, @@ -18049,7 +17232,6 @@ /area/quartermaster/storage) "aHo" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -18098,7 +17280,6 @@ /area/security/prison) "aHv" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -18111,15 +17292,12 @@ /area/security/prison) "aHw" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass{ @@ -18129,7 +17307,6 @@ /area/security/prison) "aHx" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -18154,7 +17331,6 @@ dir = 2 }, /turf/open/floor/plasteel/black{ - tag = "icon-black_warn_side (WEST)"; icon_state = "black_warn_side" }, /area/prison/solitary{ @@ -18322,7 +17498,6 @@ }) "aHQ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -18343,7 +17518,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -18374,7 +17548,6 @@ }) "aHT" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/computer/monitor{ @@ -18390,7 +17563,6 @@ }) "aHU" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/smes{ @@ -18398,10 +17570,9 @@ }, /obj/machinery/light/small, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -18413,7 +17584,6 @@ charge = 5e+006 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/item/device/radio/intercom{ @@ -18430,7 +17600,6 @@ /area/crew_quarters/abandoned_gambling_den) "aHX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -18504,7 +17673,6 @@ pixel_x = -26 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -18516,7 +17684,6 @@ }) "aIe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/airalarm{ @@ -18562,7 +17729,6 @@ layer = 4.1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -18582,12 +17748,10 @@ }) "aIl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -18612,7 +17776,6 @@ }) "aIn" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/door_timer{ @@ -18628,7 +17791,6 @@ pixel_y = 0 }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; icon_state = "red"; dir = 10 }, @@ -18637,11 +17799,9 @@ }) "aIo" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -18673,7 +17833,6 @@ name = "security camera" }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; icon_state = "red"; dir = 6 }, @@ -18737,9 +17896,6 @@ /turf/open/floor/plasteel/floorgrime, /area/security/prison) "aIx" = ( -/turf/open/floor/plasteel/red/corner{ - dir = 1 - }, /obj/structure/table, /obj/item/weapon/storage/crayons, /obj/item/weapon/storage/crayons, @@ -18755,7 +17911,6 @@ /obj/structure/table, /obj/machinery/computer/libraryconsole/bookmanagement, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plating, @@ -18763,7 +17918,6 @@ "aIz" = ( /obj/structure/easel, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/computer/security/telescreen/entertainment{ @@ -18779,19 +17933,16 @@ /area/security/prison) "aIA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, /area/security/prison) "aIB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -18802,15 +17953,12 @@ /area/security/prison) "aIC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/neutral/side{ @@ -18819,7 +17967,6 @@ /area/security/prison) "aID" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -18830,7 +17977,6 @@ /area/security/prison) "aIE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -18841,7 +17987,6 @@ "aIF" = ( /obj/structure/table, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/paper_bin, @@ -18856,7 +18001,6 @@ /obj/structure/table, /obj/item/weapon/clipboard, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/toy/figure/syndie, @@ -18870,11 +18014,9 @@ /area/security/prison) "aIH" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -18887,7 +18029,6 @@ /area/security/prison) "aII" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/punching_bag, @@ -18935,9 +18076,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, + pixel_x = 32 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -18990,7 +18130,6 @@ /obj/machinery/atmospherics/pipe/manifold/general/visible, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (SOUTHWEST)"; icon_state = "caution"; dir = 10 }, @@ -19037,9 +18176,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/atmos) "aIX" = ( /obj/structure/grille, @@ -19065,9 +18202,7 @@ req_access_txt = "0"; req_one_access_txt = "24;10" }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/atmos) "aJb" = ( /obj/structure/sign/radiation, @@ -19077,7 +18212,6 @@ "aJc" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -19088,9 +18222,7 @@ req_access_txt = "0"; req_one_access_txt = "24;10" }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/atmos) "aJd" = ( /obj/structure/sign/fire, @@ -19104,7 +18236,6 @@ "aJf" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -19113,7 +18244,6 @@ "aJg" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19122,7 +18252,6 @@ "aJh" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19131,7 +18260,6 @@ "aJi" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -19166,7 +18294,6 @@ /area/crew_quarters/abandoned_gambling_den) "aJn" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/apc{ @@ -19210,7 +18337,6 @@ }) "aJs" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -19234,19 +18360,8 @@ dir = 5 }, /area/crew_quarters/bar/atrium) -"aJu" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/item/weapon/soap/nanotrasen, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar/atrium) "aJv" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/light{ @@ -19266,15 +18381,6 @@ }, /turf/open/floor/plasteel/grimy, /area/crew_quarters/bar/atrium) -"aJw" = ( -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/structure/easel, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/obj/item/weapon/canvas/twentythreeXtwentythree, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar/atrium) "aJx" = ( /obj/structure/window/reinforced{ dir = 4; @@ -19331,7 +18437,6 @@ dir = 8 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -19371,7 +18476,6 @@ }) "aJI" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -19382,15 +18486,12 @@ }) "aJJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -19404,7 +18505,6 @@ }) "aJK" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -19436,7 +18536,6 @@ "aJN" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; icon_state = "loadingarea"; dir = 1 }, @@ -19450,7 +18549,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -19458,28 +18556,11 @@ icon_state = "platingdmg3" }, /area/security/prison) -"aJP" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_y = 32; - tag = "icon-poster3_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/floorgrime, -/area/security/prison) "aJQ" = ( -/turf/open/floor/plating, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, +/turf/open/floor/plating, /area/security/prison) "aJR" = ( /obj/effect/decal/cleanable/dirt, @@ -19523,7 +18604,6 @@ "aJV" = ( /obj/structure/table, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/paper, @@ -19550,7 +18630,6 @@ /area/security/prison) "aJY" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -19593,7 +18672,6 @@ scrub_Toxins = 1 }, /turf/open/floor/plasteel/darkred/corner{ - tag = "icon-darkredcorners (NORTH)"; icon_state = "darkredcorners"; dir = 1 }, @@ -19620,7 +18698,6 @@ on = 1 }, /turf/open/floor/plasteel/darkred/corner{ - tag = "icon-darkredcorners (EAST)"; icon_state = "darkredcorners"; dir = 4 }, @@ -19636,7 +18713,6 @@ /area/maintenance/incinerator) "aKg" = ( /obj/machinery/power/turbine{ - tag = "icon-turbine (WEST)"; icon_state = "turbine"; dir = 8; luminosity = 2 @@ -19652,7 +18728,6 @@ /area/maintenance/incinerator) "aKh" = ( /obj/machinery/power/compressor{ - tag = "icon-compressor (EAST)"; icon_state = "compressor"; dir = 4; luminosity = 2; @@ -19749,7 +18824,6 @@ dir = 4 }, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8 }, @@ -19807,7 +18881,6 @@ pixel_y = 32 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -19826,7 +18899,6 @@ /area/atmos) "aKu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19836,7 +18908,6 @@ /area/atmos) "aKv" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19845,7 +18916,6 @@ /area/atmos) "aKw" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19861,7 +18931,6 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19869,7 +18938,6 @@ /area/atmos) "aKy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19877,7 +18945,6 @@ /area/atmos) "aKz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19888,11 +18955,9 @@ /area/atmos) "aKA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19901,7 +18966,6 @@ /area/atmos) "aKB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -19960,29 +19024,14 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/old, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, /turf/open/floor/wood, /area/crew_quarters/abandoned_gambling_den) -"aKK" = ( -/obj/machinery/computer/slot_machine, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken2"; - icon_state = "wood-broken2" - }, -/area/crew_quarters/abandoned_gambling_den) "aKL" = ( /obj/structure/dresser, /obj/machinery/newscaster{ @@ -19993,24 +19042,12 @@ }, /turf/open/floor/plasteel/redblue, /area/crew_quarters/theatre) -"aKM" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/item/device/instrument/eguitar, -/obj/item/toy/crayon/spraycan/lubecan{ - charges = 5 - }, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) "aKN" = ( /obj/machinery/vending/autodrobe, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/machinery/light{ dir = 1 }, @@ -20023,15 +19060,6 @@ }, /turf/open/floor/plasteel/redblue, /area/crew_quarters/theatre) -"aKO" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/clown, -/turf/open/floor/plasteel/redblue, -/area/crew_quarters/theatre) "aKP" = ( /obj/structure/table/wood, /obj/structure/extinguisher_cabinet{ @@ -20057,10 +19085,6 @@ /area/crew_quarters/sleep{ name = "Service Hall" }) -"aKR" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/crew_quarters/bar/atrium) "aKS" = ( /obj/structure/table/wood, /obj/item/device/instrument/guitar, @@ -20073,7 +19097,6 @@ /area/crew_quarters/bar/atrium) "aKU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -20131,7 +19154,6 @@ "aLc" = ( /obj/structure/table, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/item/stack/wrapping_paper{ @@ -20146,7 +19168,6 @@ pixel_y = 3 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -20158,7 +19179,6 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -20170,15 +19190,12 @@ }) "aLe" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -20188,7 +19205,6 @@ }) "aLf" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -20197,7 +19213,6 @@ on = 1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -20215,11 +19230,9 @@ "aLh" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -20230,7 +19243,6 @@ }) "aLi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/closet/secure_closet/brig{ @@ -20245,11 +19257,9 @@ }) "aLj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/red/side{ @@ -20281,7 +19291,6 @@ /area/quartermaster/storage) "aLn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -20290,7 +19299,6 @@ /area/quartermaster/storage) "aLo" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -20310,7 +19318,6 @@ /area/quartermaster/storage) "aLr" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/turf_decal/stripes/line, @@ -20318,7 +19325,6 @@ /area/quartermaster/storage) "aLs" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/light, @@ -20332,7 +19338,6 @@ /area/quartermaster/storage) "aLt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -20343,7 +19348,6 @@ "aLu" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -20351,7 +19355,6 @@ /area/quartermaster/storage) "aLv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -20362,7 +19365,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /turf/open/floor/plating, @@ -20378,7 +19380,6 @@ /area/security/prison) "aLy" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -20405,7 +19406,6 @@ pixel_y = 5 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -20414,7 +19414,6 @@ "aLC" = ( /obj/structure/table, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/toy/cards/deck, @@ -20462,18 +19461,6 @@ "aLL" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on, /turf/open/floor/plasteel/vault, -/area/prison/solitary{ - name = "Prisoner Education Chamber" - }) -"aLM" = ( -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault, /area/prison/solitary{ name = "Prisoner Education Chamber" }) @@ -20538,7 +19525,6 @@ }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (SOUTHWEST)"; icon_state = "caution"; dir = 10 }, @@ -20570,7 +19556,6 @@ /area/maintenance/incinerator) "aLT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -20670,7 +19655,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -20715,7 +19699,6 @@ /obj/item/weapon/electronics/firealarm, /obj/item/weapon/electronics/firealarm, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -20749,7 +19732,6 @@ pixel_y = 3 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -20759,7 +19741,6 @@ /area/atmos) "aMg" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -20843,12 +19824,6 @@ dir = 8 }, /area/maintenance/fpmaint2/fore_port_maintenance) -"aMo" = ( -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/abandoned_gambling_den) "aMp" = ( /obj/structure/table/wood, /obj/item/weapon/storage/briefcase, @@ -20869,26 +19844,14 @@ "aMs" = ( /obj/structure/chair/stool/bar, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/wood, /area/crew_quarters/abandoned_gambling_den) -"aMt" = ( -/obj/machinery/computer/slot_machine, -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - icon_state = "wood-broken4" - }, -/area/crew_quarters/abandoned_gambling_den) "aMu" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -20912,7 +19875,6 @@ /area/crew_quarters/theatre) "aMx" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -20948,7 +19910,6 @@ }) "aMB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/light/small{ @@ -20975,7 +19936,6 @@ /area/crew_quarters/bar/atrium) "aMD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -21072,7 +20032,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -21082,7 +20041,6 @@ /area/hallway/primary/fore) "aMQ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -21113,7 +20071,6 @@ pixel_x = -32 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; icon_state = "brown"; dir = 10 }, @@ -21130,7 +20087,6 @@ }) "aMT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -21151,7 +20107,6 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; icon_state = "brown"; dir = 6 }, @@ -21162,7 +20117,6 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/trunk, /obj/machinery/disposal/deliveryChute{ - tag = "icon-intake (NORTH)"; icon_state = "intake"; dir = 1 }, @@ -21172,7 +20126,6 @@ }) "aMW" = ( /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; icon_state = "red"; dir = 10 }, @@ -21181,11 +20134,9 @@ }) "aMX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/red/side, @@ -21194,14 +20145,12 @@ }) "aMY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/chair{ dir = 8 }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; icon_state = "red"; dir = 6 }, @@ -21210,12 +20159,10 @@ }) "aMZ" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -21227,7 +20174,6 @@ "aNa" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; icon_state = "brown"; dir = 9 }, @@ -21235,7 +20181,6 @@ "aNb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -21243,19 +20188,16 @@ "aNc" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, /area/quartermaster/storage) "aNd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5 }, @@ -21280,7 +20222,6 @@ /area/quartermaster/qm) "aNh" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -21289,11 +20230,9 @@ /area/quartermaster/qm) "aNi" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -21302,7 +20241,6 @@ /area/quartermaster/qm) "aNj" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -21311,28 +20249,23 @@ /area/quartermaster/qm) "aNk" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /turf/open/floor/plating, /area/quartermaster/qm) "aNl" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -21449,9 +20382,8 @@ "aNz" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -21493,9 +20425,8 @@ "aNB" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -21513,7 +20444,6 @@ "aNC" = ( /obj/structure/lattice/catwalk, /obj/structure/disposaloutlet{ - tag = "icon-outlet (WEST)"; icon_state = "outlet"; dir = 8 }, @@ -21648,7 +20578,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -21718,7 +20647,6 @@ /area/crew_quarters/abandoned_gambling_den) "aNY" = ( /turf/open/floor/wood{ - tag = "icon-wood-broken2"; icon_state = "wood-broken2" }, /area/crew_quarters/abandoned_gambling_den) @@ -21734,13 +20662,11 @@ }, /mob/living/simple_animal/cockroach, /turf/open/floor/wood{ - tag = "icon-wood-broken5"; icon_state = "wood-broken5" }, /area/crew_quarters/abandoned_gambling_den) "aOb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -21748,15 +20674,12 @@ /area/crew_quarters/abandoned_gambling_den) "aOc" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -21771,7 +20694,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aOd" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -21792,7 +20714,6 @@ /area/crew_quarters/theatre) "aOe" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -21808,7 +20729,6 @@ dir = 4 }, /turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (NORTH)"; icon_state = "redblue"; dir = 1 }, @@ -21816,7 +20736,6 @@ "aOf" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -21830,11 +20749,9 @@ /area/crew_quarters/theatre) "aOg" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -21842,14 +20759,12 @@ dir = 4 }, /turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (NORTH)"; icon_state = "redblue"; dir = 1 }, /area/crew_quarters/theatre) "aOh" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -21859,14 +20774,12 @@ dir = 4 }, /turf/open/floor/plasteel/redblue/redside{ - tag = "icon-redblue (NORTH)"; icon_state = "redblue"; dir = 1 }, /area/crew_quarters/theatre) "aOi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -21882,7 +20795,6 @@ "aOj" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -21899,7 +20811,6 @@ /area/crew_quarters/theatre) "aOk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -21913,15 +20824,12 @@ }) "aOl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -21933,7 +20841,6 @@ "aOm" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -21950,7 +20857,6 @@ /area/crew_quarters/bar/atrium) "aOn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -21966,7 +20872,6 @@ /area/crew_quarters/bar/atrium) "aOo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -21976,16 +20881,13 @@ /area/crew_quarters/bar/atrium) "aOp" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -22013,7 +20915,6 @@ /area/crew_quarters/bar/atrium) "aOt" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -22022,7 +20923,6 @@ "aOu" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_mining{ @@ -22034,9 +20934,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/office{ name = "\improper Cargo Office" }) @@ -22067,7 +20965,6 @@ }) "aOy" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -22082,15 +20979,12 @@ "aOz" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/airlock/glass_security{ @@ -22104,15 +20998,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/security/checkpoint/supply{ name = "Security Post - Cargo" }) "aOA" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -22127,9 +21018,8 @@ "aOB" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/machinery/power/apc{ dir = 8; name = "Cargo Bay APC"; @@ -22146,7 +21036,6 @@ name = "cargo camera" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -22182,11 +21071,9 @@ /area/quartermaster/storage) "aOH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -22194,7 +21081,6 @@ "aOI" = ( /obj/structure/filingcabinet/chestdrawer, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; icon_state = "brown"; dir = 9 }, @@ -22204,7 +21090,6 @@ /obj/item/weapon/clipboard, /obj/item/toy/figure/qm, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -22213,14 +21098,12 @@ /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, /area/quartermaster/qm) "aOL" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/apc{ @@ -22235,14 +21118,12 @@ on = 1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, /area/quartermaster/qm) "aOM" = ( /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -22250,7 +21131,6 @@ "aON" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -22274,7 +21154,6 @@ pixel_x = 28 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5 }, @@ -22282,12 +21161,10 @@ "aOP" = ( /obj/structure/bed, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/bedsheet/qm, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -22296,7 +21173,6 @@ /obj/structure/table/reinforced, /obj/item/device/flashlight/lamp, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5 }, @@ -22344,9 +21220,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/prison) "aOW" = ( /obj/machinery/door/poddoor{ @@ -22361,15 +21235,12 @@ name = "Cell 2" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/prison) "aOX" = ( /obj/machinery/door/poddoor{ @@ -22387,9 +21258,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/prison) "aOY" = ( /obj/structure/table/reinforced, @@ -22423,7 +21292,6 @@ pixel_y = 5 }, /turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (NORTHWEST)"; icon_state = "darkred"; dir = 9 }, @@ -22432,7 +21300,6 @@ }) "aOZ" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/table/reinforced, @@ -22468,7 +21335,6 @@ /obj/item/weapon/restraints/handcuffs, /obj/item/device/taperecorder, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -22480,11 +21346,9 @@ }) "aPa" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -22499,7 +21363,6 @@ }) "aPb" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/general/hidden, @@ -22514,16 +21377,13 @@ }) "aPc" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/closet/secure_closet/injection, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -22612,7 +21472,6 @@ /obj/item/stack/packageWrap, /obj/item/weapon/hand_labeler, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (SOUTHWEST)"; icon_state = "caution"; dir = 10 }, @@ -22670,7 +21529,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/neutral, @@ -22680,7 +21538,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -22692,7 +21549,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -22798,7 +21654,6 @@ "aPE" = ( /obj/structure/chair/stool/bar, /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/crew_quarters/abandoned_gambling_den) @@ -22812,7 +21667,6 @@ /area/crew_quarters/abandoned_gambling_den) "aPG" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22826,7 +21680,6 @@ "aPH" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22840,7 +21693,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/barricade/wooden, @@ -22854,15 +21706,12 @@ /area/crew_quarters/abandoned_gambling_den) "aPJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -22872,7 +21721,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aPK" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -22906,9 +21754,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/light_switch{ pixel_x = 26; pixel_y = -26 @@ -22942,7 +21789,6 @@ }) "aPR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/storage/pod{ @@ -22990,7 +21836,6 @@ /area/crew_quarters/bar/atrium) "aPV" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -22998,7 +21843,6 @@ /area/crew_quarters/bar/atrium) "aPW" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (NORTH)"; icon_state = "wooden_chair"; dir = 1 }, @@ -23017,7 +21861,6 @@ "aPZ" = ( /obj/structure/chair/stool, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -23044,7 +21887,6 @@ /area/crew_quarters/bar/atrium) "aQc" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -23061,7 +21903,6 @@ pixel_x = -32 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; icon_state = "brown"; dir = 9 }, @@ -23074,12 +21915,10 @@ /obj/item/device/multitool, /obj/item/weapon/pen/red, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -23088,7 +21927,6 @@ }) "aQf" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -23096,7 +21934,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -23105,12 +21942,10 @@ }) "aQg" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -23123,7 +21958,6 @@ pixel_y = 32 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -23146,7 +21980,6 @@ name = "cargo camera" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -23164,11 +21997,9 @@ pixel_y = 28 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -23177,7 +22008,6 @@ }) "aQk" = ( /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -23186,11 +22016,9 @@ }) "aQl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -23210,7 +22038,6 @@ pixel_x = 26 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5 }, @@ -23219,7 +22046,6 @@ }) "aQn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/light{ @@ -23234,7 +22060,6 @@ icon_state = "pipe-c" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -23289,11 +22114,9 @@ /area/quartermaster/storage) "aQu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -23301,7 +22124,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -23325,7 +22147,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -23354,7 +22175,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -23380,7 +22200,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -23398,14 +22217,12 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, /area/quartermaster/qm) "aQF" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -23425,7 +22242,6 @@ name = "cargo camera" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -23506,7 +22322,6 @@ /area/security/prison) "aQN" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -23596,7 +22411,6 @@ }) "aQS" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/chair/office/dark{ @@ -23611,7 +22425,6 @@ }) "aQT" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -23636,7 +22449,6 @@ }) "aQV" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/darkred/side{ @@ -23695,7 +22507,6 @@ dir = 2 }, /turf/open/floor/plating{ - tag = "icon-plating_warn_side (EAST)"; icon_state = "plating_warn_side" }, /area/security/prison) @@ -23720,7 +22531,6 @@ "aRb" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible, /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -23731,7 +22541,6 @@ /area/atmos) "aRc" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -23739,7 +22548,6 @@ /area/atmos) "aRd" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -23748,7 +22556,6 @@ /area/atmos) "aRe" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -23757,7 +22564,6 @@ /area/atmos) "aRf" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -23775,7 +22581,6 @@ /area/atmos) "aRg" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -23783,7 +22588,6 @@ /area/atmos) "aRh" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -23793,7 +22597,6 @@ /area/atmos) "aRi" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -23802,12 +22605,10 @@ /area/atmos) "aRj" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -23843,16 +22644,6 @@ dir = 4 }, /area/atmos) -"aRm" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/turf/open/floor/plating, -/area/atmos) "aRn" = ( /obj/machinery/air_sensor{ frequency = 1441; @@ -23887,24 +22678,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) -"aRs" = ( -/obj/machinery/computer/slot_machine, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood{ - icon_state = "wood-broken7" - }, -/area/crew_quarters/abandoned_gambling_den) -"aRt" = ( -/obj/machinery/computer/slot_machine, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) "aRu" = ( /obj/machinery/light/small, /obj/structure/table/wood, @@ -23940,17 +22713,6 @@ }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/theatre) -"aRw" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/item/weapon/reagent_containers/food/snacks/baguette, -/obj/item/toy/crayon/spraycan/mimecan{ - charges = 5 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) "aRx" = ( /obj/machinery/vending/autodrobe, /obj/machinery/airalarm{ @@ -23967,16 +22729,8 @@ /obj/item/toy/figure/mime, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/theatre) -"aRz" = ( -/obj/structure/dresser, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/theatre) "aRA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -24045,7 +22799,6 @@ /area/crew_quarters/bar/atrium) "aRJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/sortjunction{ @@ -24062,7 +22815,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, @@ -24083,7 +22835,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -24108,11 +22859,9 @@ "aRO" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -24125,11 +22874,9 @@ }) "aRP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -24142,7 +22889,6 @@ }) "aRQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24157,7 +22903,6 @@ }) "aRR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24167,7 +22912,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral, @@ -24177,7 +22921,6 @@ "aRS" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24187,7 +22930,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral, @@ -24196,7 +22938,6 @@ }) "aRT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24206,7 +22947,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -24216,7 +22956,6 @@ "aRU" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/mining{ @@ -24237,11 +22976,9 @@ /area/quartermaster/storage) "aRV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24252,18 +22989,15 @@ icon_state = "pipe-c" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, /area/quartermaster/storage) "aRW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -24275,11 +23009,9 @@ /area/quartermaster/storage) "aRX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -24291,7 +23023,6 @@ "aRY" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24306,7 +23037,6 @@ "aRZ" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -24321,7 +23051,6 @@ /area/quartermaster/storage) "aSa" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24334,7 +23063,6 @@ /area/quartermaster/storage) "aSb" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24348,7 +23076,6 @@ /area/quartermaster/storage) "aSc" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24358,31 +23085,25 @@ /area/quartermaster/storage) "aSd" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, /area/quartermaster/storage) "aSe" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -24397,25 +23118,21 @@ /area/quartermaster/qm) "aSf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, /area/quartermaster/qm) "aSg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, /area/quartermaster/qm) "aSh" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /mob/living/simple_animal/sloth/citrus, @@ -24424,11 +23141,9 @@ "aSi" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/turf_decal/bot, @@ -24437,7 +23152,6 @@ "aSj" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/folder/yellow, @@ -24449,11 +23163,9 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark/start{ @@ -24463,18 +23175,15 @@ /area/quartermaster/qm) "aSl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, /area/quartermaster/qm) "aSm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -24489,15 +23198,12 @@ /area/quartermaster/qm) "aSn" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark/start{ @@ -24516,7 +23222,6 @@ pixel_y = 0 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -24586,7 +23291,6 @@ /area/security/prison) "aSv" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -24611,7 +23315,6 @@ "aSx" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -24625,7 +23328,6 @@ /obj/item/weapon/pen, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -24645,7 +23347,6 @@ pixel_x = -26 }, /turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (SOUTHWEST)"; icon_state = "darkred"; dir = 10 }, @@ -24654,11 +23355,9 @@ }) "aSA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -24686,7 +23385,6 @@ pixel_y = -32 }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -24702,12 +23400,10 @@ pixel_y = -26 }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, /turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (SOUTHEAST)"; icon_state = "darkred"; dir = 6 }, @@ -24881,9 +23577,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/atmos) "aSX" = ( /obj/structure/sign/nosmoking_2, @@ -24903,7 +23597,6 @@ "aTa" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -24967,7 +23660,6 @@ /area/atmos) "aTh" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -24989,18 +23681,15 @@ }) "aTi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/newscaster{ pixel_x = 32 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -25022,20 +23711,8 @@ dir = 5 }, /area/crew_quarters/bar/atrium) -"aTk" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/item/clothing/mask/fakemoustache, -/obj/item/weapon/cane, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/bar/atrium) "aTl" = ( /obj/structure/piano{ - tag = "icon-piano"; icon_state = "piano" }, /obj/machinery/airalarm{ @@ -25046,13 +23723,6 @@ /obj/machinery/light, /turf/open/floor/plasteel/grimy, /area/crew_quarters/bar/atrium) -"aTm" = ( -/obj/structure/chair/stool/bar, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/bar/atrium) "aTn" = ( /obj/machinery/door/window/eastright{ name = "Theatre Stage" @@ -25085,7 +23755,6 @@ /area/crew_quarters/bar/atrium) "aTr" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/sortjunction{ @@ -25204,7 +23873,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -25231,7 +23899,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -25262,12 +23929,10 @@ /area/quartermaster/storage) "aTI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -25276,7 +23941,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -25287,7 +23951,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -25303,7 +23966,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -25328,7 +23990,6 @@ /area/quartermaster/qm) "aTO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -25349,7 +24010,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -25376,7 +24036,6 @@ /area/quartermaster/qm) "aTS" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -25399,7 +24058,6 @@ /area/quartermaster/qm) "aTU" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -25408,7 +24066,6 @@ /area/quartermaster/qm) "aTV" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -25427,7 +24084,6 @@ /area/security/prison) "aTX" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -25470,7 +24126,6 @@ /area/security/prison) "aUd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -25498,14 +24153,12 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, + pixel_x = 32 + }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, /turf/open/floor/plating{ - tag = "icon-plating_warn_side (EAST)"; icon_state = "plating_warn_side" }, /area/security/prison) @@ -25618,7 +24271,6 @@ }, /obj/structure/disposalpipe/trunk, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; icon_state = "caution"; dir = 8 }, @@ -25626,7 +24278,6 @@ "aUu" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -25660,7 +24311,6 @@ "aUx" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -25668,7 +24318,6 @@ /area/atmos) "aUy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -25703,7 +24352,6 @@ /area/atmos) "aUC" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -25730,7 +24378,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aUE" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -25738,7 +24385,6 @@ icon_state = "pipe-c" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -25748,11 +24394,9 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aUF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -25766,7 +24410,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aUG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -25776,7 +24419,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aUH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/sortjunction{ @@ -25792,15 +24434,12 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aUI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -25814,7 +24453,6 @@ "aUJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25826,7 +24464,6 @@ "aUK" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25837,7 +24474,6 @@ "aUL" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25848,7 +24484,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aUM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -25867,7 +24502,6 @@ }) "aUN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25882,18 +24516,15 @@ }) "aUO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark{ name = "lightsout" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -25929,9 +24560,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/light{ icon_state = "tube1"; dir = 4 @@ -25955,7 +24585,6 @@ on = 1 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -25963,12 +24592,10 @@ /area/hallway/primary/fore) "aUV" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, @@ -25976,7 +24603,6 @@ "aUW" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -25985,7 +24611,6 @@ }) "aUX" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -26037,7 +24662,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -26061,14 +24685,12 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; icon_state = "brown"; dir = 10 }, /area/quartermaster/storage) "aVe" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -26134,7 +24756,6 @@ /area/quartermaster/storage) "aVl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/storage/pod{ @@ -26146,7 +24767,6 @@ dir = 4 }, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (SOUTHEAST)"; icon_state = "purple"; dir = 6 }, @@ -26155,7 +24775,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -26169,7 +24788,6 @@ pixel_y = -32 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; icon_state = "brown"; dir = 10 }, @@ -26214,7 +24832,6 @@ /area/quartermaster/qm) "aVs" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/brown, @@ -26227,18 +24844,15 @@ icon_state = "tube1" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; icon_state = "brown"; dir = 6 }, /area/quartermaster/qm) "aVu" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -26249,7 +24863,6 @@ "aVv" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -26262,7 +24875,6 @@ layer = 4.1 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/red/corner, @@ -26287,11 +24899,9 @@ /area/security/prison) "aVz" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -26299,26 +24909,21 @@ /area/security/prison) "aVA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/red/corner, /area/security/prison) "aVB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -26326,7 +24931,6 @@ /area/security/prison) "aVC" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -26336,7 +24940,6 @@ /area/security/prison) "aVD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -26356,7 +24959,6 @@ pixel_y = 24 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -26369,7 +24971,6 @@ /area/security/prison) "aVF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/computer/security/telescreen{ @@ -26378,7 +24979,6 @@ pixel_y = 32 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -26386,11 +24986,9 @@ /area/security/prison) "aVG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -26403,11 +25001,9 @@ /area/security/prison) "aVH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -26429,11 +25025,9 @@ pixel_y = 24 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -26446,7 +25040,6 @@ /area/security/prison) "aVJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -26461,11 +25054,9 @@ /area/security/prison) "aVK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -26473,7 +25064,6 @@ /area/security/prison) "aVL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -26496,7 +25086,6 @@ pixel_y = 24 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -26508,11 +25097,9 @@ /area/security/prison) "aVN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -26522,11 +25109,9 @@ /area/security/prison) "aVO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -26543,15 +25128,12 @@ /area/security/prison) "aVP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/button/door{ @@ -26569,11 +25151,9 @@ /area/security/prison) "aVQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -26584,11 +25164,9 @@ "aVR" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/glass_security{ @@ -26602,7 +25180,6 @@ /area/security/prison) "aVS" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -26612,7 +25189,6 @@ /area/security/prison) "aVT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -26625,7 +25201,6 @@ /area/security/prison) "aVU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side{ @@ -26634,7 +25209,6 @@ /area/security/prison) "aVV" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plating, @@ -26775,7 +25349,6 @@ }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; icon_state = "caution"; dir = 8 }, @@ -26784,7 +25357,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -26796,9 +25368,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 1 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (NORTH)" - }, +/turf/open/floor/plasteel, /area/atmos) "aWp" = ( /obj/machinery/pipedispenser/disposal/transit_tube, @@ -26813,7 +25383,6 @@ /area/atmos) "aWr" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -26896,7 +25465,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aWA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -26912,7 +25480,6 @@ /area/hydroponics) "aWD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -26923,13 +25490,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hydroponics) "aWE" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -26948,7 +25512,6 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -26956,15 +25519,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/sleep{ name = "Service Hall" }) "aWH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -26972,9 +25532,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/sleep{ name = "Service Hall" }) @@ -27082,7 +25640,6 @@ pixel_x = -26 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; icon_state = "brown"; dir = 10 }, @@ -27167,7 +25724,6 @@ pixel_x = 28 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; icon_state = "brown"; dir = 6 }, @@ -27203,9 +25759,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/miningdock{ name = "\improper Mining Office" }) @@ -27231,7 +25785,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/mining{ @@ -27242,9 +25795,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/miningdock{ name = "\improper Mining Office" }) @@ -27254,18 +25805,15 @@ /area/quartermaster/qm) "aXj" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white, @@ -27273,26 +25821,21 @@ /area/quartermaster/qm) "aXk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel, /area/security/prison) "aXl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -27308,7 +25851,6 @@ }, /obj/machinery/light, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -27320,11 +25862,9 @@ /area/security/prison) "aXn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -27334,7 +25874,6 @@ /area/security/prison) "aXo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -27395,7 +25934,6 @@ /area/security/prison) "aXu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -27437,7 +25975,6 @@ /area/security/prison) "aXx" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -27505,7 +26042,6 @@ /area/security/prison) "aXD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -27541,7 +26077,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/space, +/turf/open/floor/plasteel/white, /area/shuttle/pod_3) "aXH" = ( /obj/structure/chair{ @@ -27557,6 +26093,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, +/obj/machinery/light/small, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, /turf/open/floor/plasteel/white, /area/shuttle/pod_3) "aXI" = ( @@ -27577,6 +26117,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, /turf/open/floor/plasteel/white, /area/shuttle/pod_3) "aXJ" = ( @@ -27592,11 +26135,6 @@ }, /turf/open/space, /area/space) -"aXL" = ( -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/general/visible, -/turf/closed/wall/r_wall, -/area/atmos) "aXM" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible, /obj/structure/sign/securearea{ @@ -27648,7 +26186,6 @@ icon_state = "pipe-c" }, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; icon_state = "caution"; dir = 8 }, @@ -27683,7 +26220,6 @@ "aXV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -27694,7 +26230,6 @@ /area/atmos) "aXW" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -27765,7 +26300,6 @@ /area/hydroponics) "aYf" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27819,9 +26353,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/chem_master/condimaster{ name = "BrewMaster 3000" }, @@ -27830,12 +26363,10 @@ /area/hydroponics) "aYm" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, /turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; icon_state = "loadingarea"; dir = 1 }, @@ -27844,7 +26375,6 @@ }) "aYn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27879,7 +26409,6 @@ pixel_y = 26 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -27961,13 +26490,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "aYz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -27975,9 +26501,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "aYA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27985,9 +26509,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "aYB" = ( /obj/structure/grille, @@ -28009,9 +26531,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/office{ name = "\improper Cargo Office" }) @@ -28040,7 +26560,6 @@ pixel_x = -26 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; icon_state = "brown"; dir = 9 }, @@ -28051,7 +26570,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (NORTH)"; icon_state = "purple"; dir = 1 }, @@ -28061,7 +26579,6 @@ "aYG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -28072,7 +26589,6 @@ /obj/structure/table/reinforced, /obj/item/weapon/storage/belt/utility, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (NORTH)"; icon_state = "purple"; dir = 1 }, @@ -28083,7 +26599,6 @@ /obj/structure/table/reinforced, /obj/machinery/computer/stockexchange, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5 }, @@ -28118,7 +26633,6 @@ }) "aYL" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -28177,9 +26691,8 @@ "aYR" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -28213,16 +26726,13 @@ req_access_txt = "1" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/prison) "aYX" = ( /obj/structure/cable/white, @@ -28240,9 +26750,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/prison) "aYZ" = ( /obj/structure/table/reinforced, @@ -28259,7 +26767,6 @@ "aZa" = ( /obj/structure/rack, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/restraints/handcuffs, @@ -28297,7 +26804,6 @@ name = "Prisoner Locker" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault, @@ -28322,7 +26828,6 @@ /area/security/prison) "aZg" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/table, @@ -28390,7 +26895,6 @@ on = 0 }, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (NORTHWEST)"; icon_state = "purple"; dir = 9 }, @@ -28437,7 +26941,6 @@ on = 1 }, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; icon_state = "caution"; dir = 8 }, @@ -28505,7 +27008,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "aZB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -28514,36 +27016,21 @@ dir = 4 }, /area/maintenance/fpmaint2/fore_port_maintenance) -"aZC" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/structure/window/reinforced, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/structure/sign/poster{ - icon_state = "poster2_legit"; - pixel_x = -32; - tag = "icon-poster2_legit" - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/hydroponics) "aZD" = ( /obj/structure/disposalpipe/segment{ dir = 1; icon_state = "pipe-c" }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; icon_state = "greenblue"; dir = 1 }, /area/hydroponics) "aZE" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -28551,14 +27038,12 @@ dir = 4 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; icon_state = "greenblue"; dir = 1 }, /area/hydroponics) "aZF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28570,62 +27055,52 @@ icon_state = "pipe-c" }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; icon_state = "greenblue"; dir = 1 }, /area/hydroponics) "aZG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; icon_state = "greenblue"; dir = 1 }, /area/hydroponics) "aZH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; icon_state = "greenblue"; dir = 1 }, /area/hydroponics) "aZI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; icon_state = "greenblue"; dir = 1 }, /area/hydroponics) "aZJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28637,7 +27112,6 @@ "aZK" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -28656,7 +27130,6 @@ }) "aZL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28664,7 +27137,6 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/turf_decal/bot, @@ -28674,11 +27146,9 @@ }) "aZM" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -28690,7 +27160,6 @@ "aZN" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -28707,7 +27176,6 @@ /area/crew_quarters/kitchen) "aZO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28719,7 +27187,6 @@ /area/crew_quarters/kitchen) "aZP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28729,14 +27196,12 @@ /area/crew_quarters/kitchen) "aZQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ name = "Chef" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -28744,7 +27209,6 @@ /area/crew_quarters/kitchen) "aZR" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -28829,7 +27293,6 @@ pixel_x = -26 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; icon_state = "brown"; dir = 9 }, @@ -28842,7 +27305,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -28851,14 +27313,12 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, /area/hallway/primary/fore) "bad" = ( /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -28892,7 +27352,6 @@ "bai" = ( /obj/machinery/computer/cargo/request, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; icon_state = "purple"; dir = 8 }, @@ -28911,7 +27370,6 @@ }) "bak" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -28930,7 +27388,6 @@ "bam" = ( /obj/structure/filingcabinet/filingcabinet, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; icon_state = "purple"; dir = 4 }, @@ -28943,7 +27400,6 @@ layer = 4.1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -28952,12 +27408,10 @@ }) "bao" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -28966,7 +27420,6 @@ }) "bap" = ( /turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; icon_state = "loadingarea"; dir = 1 }, @@ -28976,7 +27429,6 @@ "baq" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; icon_state = "loadingarea"; dir = 1 }, @@ -28986,7 +27438,6 @@ "bar" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -28995,7 +27446,6 @@ }) "bas" = ( /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (NORTH)"; icon_state = "purple"; dir = 1 }, @@ -29005,7 +27455,6 @@ "bat" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHEAST)"; icon_state = "brown"; dir = 5 }, @@ -29014,7 +27463,6 @@ }) "bau" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white, @@ -29026,11 +27474,9 @@ }) "bav" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -29041,11 +27487,9 @@ }) "baw" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -29057,14 +27501,12 @@ }) "bax" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -29077,9 +27519,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn (NORTHWEST)" +/obj/machinery/light/small{ + dir = 8 }, +/turf/open/floor/plasteel, /area/shuttle/mining) "baz" = ( /obj/machinery/computer/shuttle/mining, @@ -29099,6 +27542,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/plasteel, /area/shuttle/mining) "baB" = ( @@ -29107,7 +27553,6 @@ name = "Prison Blast door" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -29190,7 +27635,6 @@ /obj/machinery/atmospherics/pipe/simple/green/visible, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; icon_state = "purple"; dir = 8 }, @@ -29232,7 +27676,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (WEST)"; icon_state = "caution"; dir = 8 }, @@ -29270,7 +27713,6 @@ "baS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -29278,7 +27720,6 @@ /area/atmos) "baT" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -29305,7 +27746,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -29324,7 +27764,6 @@ "baX" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -29359,7 +27798,6 @@ /area/hydroponics) "bbb" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -29421,7 +27859,6 @@ "bbi" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -29526,7 +27963,6 @@ "bbu" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, @@ -29544,7 +27980,6 @@ name = "Assistant" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -29588,7 +28023,6 @@ dir = 8 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -29615,7 +28049,6 @@ "bbG" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -29638,7 +28071,6 @@ }) "bbI" = ( /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; icon_state = "purple"; dir = 8 }, @@ -29654,15 +28086,12 @@ }) "bbK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -29710,7 +28139,6 @@ }) "bbP" = ( /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; icon_state = "purple"; dir = 4 }, @@ -29774,11 +28202,9 @@ /area/shuttle/mining) "bbX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/sign/securearea{ @@ -29788,7 +28214,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -29799,7 +28224,6 @@ /area/security/prison) "bbY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -29819,7 +28243,6 @@ req_access_txt = "63" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -29834,7 +28257,6 @@ "bca" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/glass_security{ @@ -29842,7 +28264,6 @@ req_access_txt = "63" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -29856,7 +28277,6 @@ /area/security/prison) "bcb" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -29871,7 +28291,6 @@ "bcc" = ( /obj/structure/closet/l3closet/security, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -29952,13 +28371,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/atmos) "bck" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -30059,9 +28475,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hydroponics) "bcw" = ( /obj/machinery/door/firedoor, @@ -30071,15 +28485,12 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/sleep{ name = "Service Hall" }) @@ -30103,9 +28514,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/kitchen) "bcA" = ( /obj/structure/closet/secure_closet/freezer/fridge, @@ -30140,7 +28549,6 @@ /area/crew_quarters/kitchen) "bcE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/junction{ @@ -30151,7 +28559,6 @@ /area/hallway/primary/fore) "bcF" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -30159,7 +28566,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, @@ -30185,7 +28591,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -30229,7 +28634,6 @@ dir = 4 }, /turf/open/floor/plasteel/loadingarea{ - tag = "icon-loadingarea (NORTH)"; icon_state = "loadingarea"; dir = 1 }, @@ -30253,7 +28657,6 @@ dir = 4 }, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; icon_state = "purple"; dir = 8 }, @@ -30299,7 +28702,6 @@ dir = 4 }, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; icon_state = "purple"; dir = 4 }, @@ -30312,7 +28714,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -30322,11 +28723,9 @@ "bcV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -30342,15 +28741,6 @@ "bcX" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) -"bcY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel, /area/quartermaster/miningdock{ name = "\improper Mining Office" }) @@ -30374,9 +28764,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/miningdock{ name = "\improper Mining Office" }) @@ -30384,9 +28772,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/quartermaster/miningdock{ name = "\improper Mining Office" }) @@ -30469,20 +28855,16 @@ req_access_txt = "1" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/brig) "bdk" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -30492,9 +28874,8 @@ icon_state = "doors"; name = "WARNING: BLAST DOORS"; pixel_x = 0; - pixel_y = 0; - tag = "icon-doors" - }, + pixel_y = 0 + }, /turf/open/floor/plating, /area/security/brig) "bdl" = ( @@ -30507,16 +28888,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/brig) "bdm" = ( /turf/closed/wall/r_wall, /area/security/main) "bdn" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -30557,7 +28935,6 @@ pixel_y = 25 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /turf/open/floor/plasteel/caution{ @@ -30573,7 +28950,6 @@ "bdt" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -30623,7 +28999,6 @@ /area/atmos) "bdy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -30634,7 +29009,6 @@ /area/atmos) "bdz" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -30781,7 +29155,6 @@ dir = 1 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (WEST)"; icon_state = "greenblue"; dir = 8 }, @@ -30791,11 +29164,9 @@ "bdQ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/green/side{ - tag = "icon-green (NORTH)"; icon_state = "green"; dir = 1 }, @@ -30873,23 +29244,18 @@ "bdZ" = ( /obj/structure/table/reinforced, /obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; icon_state = "paperbag_NanotrasenStandard_closed" }, /obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; icon_state = "paperbag_NanotrasenStandard_closed" }, /obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; icon_state = "paperbag_NanotrasenStandard_closed" }, /obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; icon_state = "paperbag_NanotrasenStandard_closed" }, /obj/item/weapon/storage/box/papersack{ - tag = "icon-paperbag_NanotrasenStandard_closed"; icon_state = "paperbag_NanotrasenStandard_closed" }, /obj/effect/turf_decal/bot, @@ -30897,7 +29263,6 @@ /area/crew_quarters/kitchen) "bea" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -30910,7 +29275,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -30922,7 +29286,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, @@ -30942,7 +29305,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -30953,7 +29315,6 @@ /area/hallway/primary/fore) "beg" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -30962,7 +29323,6 @@ /area/hallway/primary/fore) "beh" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -31012,7 +29372,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -31027,7 +29386,6 @@ }) "beo" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -31037,11 +29395,9 @@ }) "bep" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -31051,14 +29407,12 @@ }) "beq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -31067,7 +29421,6 @@ }) "ber" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -31087,14 +29440,12 @@ }) "bes" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; icon_state = "purple"; dir = 8 }, @@ -31103,7 +29454,6 @@ }) "bet" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -31113,11 +29463,9 @@ }) "beu" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -31158,7 +29506,6 @@ /obj/effect/decal/cleanable/dirt, /obj/item/device/flashlight/lamp, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; icon_state = "purple"; dir = 4 }, @@ -31183,9 +29530,8 @@ "beB" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -31200,9 +29546,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (WEST)" - }, +/turf/open/floor/plasteel, /area/shuttle/mining) "beD" = ( /obj/structure/chair{ @@ -31212,9 +29556,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/shuttle/mining) "beE" = ( /obj/structure/chair{ @@ -31224,31 +29566,16 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (EAST)" - }, +/turf/open/floor/plasteel, /area/shuttle/mining) "beF" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, /area/security/brig) -"beG" = ( -/obj/structure/table/glass, -/obj/machinery/computer/med_data/laptop, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_y = 32; - tag = "icon-poster3_legit" - }, -/turf/open/floor/plasteel/whitered/side{ - dir = 9 - }, -/area/security/brig) "beH" = ( /obj/structure/sink{ pixel_y = 22 @@ -31287,7 +29614,6 @@ /area/security/brig) "beJ" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -31299,7 +29625,6 @@ /area/security/brig) "beK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -31315,7 +29640,6 @@ icon_state = "plant-22" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -31327,7 +29651,6 @@ /area/security/brig) "beM" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -31348,11 +29671,9 @@ /area/security/main) "beO" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side{ @@ -31361,7 +29682,6 @@ /area/security/main) "beP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/airalarm{ @@ -31373,7 +29693,6 @@ /area/security/main) "beQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/light{ @@ -31393,7 +29712,6 @@ /area/security/main) "beR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/newscaster/security_unit{ @@ -31405,7 +29723,6 @@ /area/security/main) "beS" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -31455,7 +29772,6 @@ /area/security/hos) "beX" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -31468,15 +29784,12 @@ /area/security/hos) "beY" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -31489,7 +29802,6 @@ /area/security/hos) "beZ" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -31599,7 +29911,6 @@ /area/atmos) "bfk" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31609,7 +29920,6 @@ /area/atmos) "bfl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -31617,7 +29927,6 @@ /area/atmos) "bfm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31631,7 +29940,6 @@ /area/atmos) "bfn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31646,11 +29954,9 @@ /obj/machinery/holopad, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31665,11 +29971,9 @@ /area/atmos) "bfp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -31677,7 +29981,6 @@ /area/atmos) "bfq" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -31712,7 +30015,6 @@ /area/atmos) "bfu" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -31725,7 +30027,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -31734,7 +30035,6 @@ "bfw" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -31775,7 +30075,6 @@ /area/hydroponics) "bfA" = ( /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTHWEST)"; icon_state = "greenblue"; dir = 9 }, @@ -31787,14 +30086,12 @@ icon_state = "pipe-c" }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; icon_state = "greenblue"; dir = 1 }, /area/hydroponics) "bfC" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -31803,7 +30100,6 @@ icon_state = "pipe-c" }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; icon_state = "greenblue"; dir = 1 }, @@ -31813,7 +30109,6 @@ dir = 4 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTH)"; icon_state = "greenblue"; dir = 1 }, @@ -31823,7 +30118,6 @@ dir = 4 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (NORTHEAST)"; icon_state = "greenblue"; dir = 5 }, @@ -31854,7 +30148,6 @@ dir = 4 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (WEST)"; icon_state = "greenblue"; dir = 8 }, @@ -31865,7 +30158,6 @@ /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -32013,7 +30305,6 @@ /area/hallway/primary/fore) "bfX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/sortjunction{ @@ -32029,7 +30320,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -32053,7 +30343,6 @@ layer = 4.1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (EAST)"; icon_state = "brown"; dir = 4 }, @@ -32062,7 +30351,6 @@ /obj/structure/table/reinforced, /obj/item/weapon/storage/toolbox/mechanical, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (WEST)"; icon_state = "purple"; dir = 8 }, @@ -32080,7 +30368,6 @@ "bge" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -32096,7 +30383,6 @@ /obj/machinery/photocopier, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; icon_state = "purple"; dir = 4 }, @@ -32110,7 +30396,6 @@ layer = 4.1 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -32125,11 +30410,9 @@ }) "bgi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -32139,7 +30422,6 @@ }) "bgj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/purple/side, @@ -32148,7 +30430,6 @@ }) "bgk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/requests_console{ @@ -32169,7 +30450,6 @@ }) "bgl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/brown, @@ -32182,7 +30462,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/purple/side, @@ -32193,13 +30472,11 @@ /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/folder/yellow, /obj/item/device/gps/mining, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; icon_state = "brown"; dir = 6 }, @@ -32208,16 +30485,13 @@ }) "bgo" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -32228,7 +30502,6 @@ }) "bgp" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white, @@ -32319,6 +30592,9 @@ /obj/item/weapon/pickaxe/emergency, /obj/item/weapon/pickaxe/emergency, /obj/effect/turf_decal/delivery, +/obj/machinery/light/small{ + dir = 8 + }, /turf/open/floor/plasteel, /area/shuttle/mining) "bgr" = ( @@ -32339,16 +30615,17 @@ /obj/structure/ore_box, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/plasteel, /area/shuttle/mining) "bgt" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -32358,7 +30635,6 @@ "bgu" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/clothing/gloves/color/latex, @@ -32379,14 +30655,12 @@ /area/security/brig) "bgv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/white, /area/security/brig) "bgw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -32397,11 +30671,9 @@ /area/security/brig) "bgx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/door/airlock/glass_medical{ @@ -32416,15 +30688,12 @@ /area/security/brig) "bgy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -32434,11 +30703,9 @@ /area/security/brig) "bgz" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -32461,7 +30728,6 @@ /area/security/main) "bgC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/corner, @@ -32527,7 +30793,6 @@ "bgL" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/device/taperecorder{ @@ -32641,7 +30906,6 @@ /area/atmos) "bgZ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -32650,7 +30914,6 @@ /area/atmos) "bha" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (NORTH)"; name = "scrubbers pipe"; icon_state = "manifold"; dir = 1 @@ -32661,7 +30924,6 @@ "bhb" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (NORTH)"; name = "scrubbers pipe"; icon_state = "manifold"; dir = 1 @@ -32674,11 +30936,9 @@ "bhc" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -32702,7 +30962,6 @@ "bhf" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -32712,7 +30971,6 @@ /area/atmos) "bhg" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -32723,7 +30981,6 @@ /area/atmos) "bhh" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -32762,7 +31019,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -32781,7 +31037,6 @@ /area/hydroponics) "bho" = ( /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (WEST)"; icon_state = "greenblue"; dir = 8 }, @@ -32811,7 +31066,6 @@ /area/hydroponics) "bhs" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -32822,7 +31076,6 @@ dir = 4 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (EAST)"; icon_state = "greenblue"; dir = 4 }, @@ -32855,7 +31108,6 @@ dir = 4 }, /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (WEST)"; icon_state = "greenblue"; dir = 8 }, @@ -32868,7 +31120,6 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side, @@ -32900,18 +31151,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/crew_quarters/kitchen) -"bhA" = ( -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/crew_quarters/kitchen) "bhB" = ( /obj/machinery/food_cart, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -33001,16 +31240,13 @@ /obj/effect/turf_decal/stripes/end{ dir = 1 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (NORTH)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/kitchen) "bhJ" = ( /obj/structure/table/reinforced, /obj/item/clothing/suit/apron/chef, /obj/item/weapon/kitchen/rollingpin, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -33040,26 +31276,6 @@ /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/crew_quarters/kitchen) -"bhM" = ( -/obj/structure/table/reinforced, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 4 - }, -/obj/machinery/microwave{ - desc = "Cooks and boils stuff, somehow."; - pixel_x = -3; - pixel_y = 5 - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/crew_quarters/kitchen) "bhN" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/camera{ @@ -33068,7 +31284,6 @@ name = "hallway camera" }, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, @@ -33087,7 +31302,6 @@ /obj/item/stack/packageWrap, /obj/item/weapon/hand_labeler, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; icon_state = "brown"; dir = 10 }, @@ -33141,7 +31355,6 @@ icon_state = "tube1" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; icon_state = "brown"; dir = 6 }, @@ -33161,7 +31374,6 @@ pixel_y = -24 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHWEST)"; icon_state = "brown"; dir = 10 }, @@ -33187,7 +31399,6 @@ "bib" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/loadingarea{ @@ -33200,7 +31411,6 @@ "bic" = ( /obj/structure/table, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/item/weapon/storage/firstaid/regular, @@ -33217,7 +31427,6 @@ name = "cargo camera" }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (SOUTHEAST)"; icon_state = "brown"; dir = 6 }, @@ -33255,7 +31464,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -33372,18 +31580,15 @@ /area/security/brig) "bis" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/neutral, /area/security/brig) "bit" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -33394,7 +31599,6 @@ "biu" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -33412,7 +31616,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark/start{ @@ -33455,7 +31658,6 @@ /area/security/main) "biC" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -33491,7 +31693,6 @@ /area/security/hos) "biF" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -33664,7 +31865,6 @@ /area/atmos) "biU" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -33681,7 +31881,6 @@ /area/atmos) "biW" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -33714,7 +31913,6 @@ dir = 4 }, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (NORTHWEST)"; icon_state = "caution"; dir = 9 }, @@ -33744,14 +31942,12 @@ dir = 4 }, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (NORTHEAST)"; icon_state = "caution"; dir = 5 }, /area/atmos) "bje" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -33765,7 +31961,6 @@ /area/atmos) "bjf" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/visible{ @@ -33791,7 +31986,6 @@ amount = 50 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -33812,24 +32006,12 @@ pixel_y = -32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/atmos) -"bjj" = ( -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/atmos) "bjk" = ( /obj/structure/window/reinforced{ dir = 8 @@ -33846,7 +32028,6 @@ /area/atmos) "bjl" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -33858,7 +32039,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -33867,7 +32047,6 @@ "bjn" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -33886,7 +32065,6 @@ "bjp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -33923,7 +32101,6 @@ /area/hydroponics) "bjv" = ( /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (EAST)"; icon_state = "greenblue"; dir = 4 }, @@ -33960,15 +32137,12 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/sleep{ name = "Service Hall" }) @@ -34012,9 +32186,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "bjD" = ( /obj/machinery/door/firedoor, @@ -34022,16 +32194,13 @@ name = "Fore Primary Hallway" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "bjE" = ( /obj/structure/sign/directions/security{ @@ -34042,9 +32211,8 @@ desc = "A direction sign, pointing out which way the Supply department is."; dir = 4; icon_state = "direction_supply"; - name = "supply department"; - tag = "icon-direction_supply" - }, + name = "supply department" + }, /obj/structure/sign/directions/medical{ pixel_y = -8 }, @@ -34055,9 +32223,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "bjG" = ( /obj/machinery/door/firedoor, @@ -34065,9 +32231,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "bjH" = ( /obj/machinery/status_display, @@ -34079,9 +32243,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/fore) "bjJ" = ( /obj/machinery/mineral/ore_redemption, @@ -34103,7 +32265,6 @@ "bjL" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -34114,13 +32275,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/starboard/fore_starboard_maintenance) "bjM" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -34131,11 +32289,9 @@ }) "bjN" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -34144,11 +32300,9 @@ /area/security/transfer) "bjO" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -34157,11 +32311,9 @@ /area/security/transfer) "bjP" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -34182,7 +32334,6 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -34192,7 +32343,6 @@ /area/security/brig) "bjS" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34223,7 +32373,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34239,11 +32388,9 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark/start{ @@ -34308,7 +32455,6 @@ /area/security/main) "bkc" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -34327,7 +32473,6 @@ "bke" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -34352,7 +32497,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34384,7 +32528,6 @@ /area/security/hos) "bkk" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -34407,7 +32550,6 @@ /area/security/hos) "bkn" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -34525,15 +32667,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/atmos) "bky" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -34549,7 +32688,6 @@ /area/atmos) "bkA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -34561,7 +32699,6 @@ /obj/effect/decal/cleanable/dirt, /obj/item/toy/figure/atmos, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -34570,7 +32707,6 @@ /area/atmos) "bkC" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -34582,11 +32718,9 @@ "bkD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -34608,7 +32742,6 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -34661,7 +32794,6 @@ pixel_y = 3 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -34671,12 +32803,10 @@ /area/hallway/primary/central) "bkN" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/corner{ @@ -34685,7 +32815,6 @@ /area/hallway/primary/central) "bkO" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -34717,7 +32846,6 @@ /area/hallway/primary/central) "bkR" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -34749,7 +32877,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -34760,7 +32887,6 @@ "bkV" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, @@ -34770,7 +32896,6 @@ dir = 4 }, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, @@ -34781,19 +32906,16 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, /area/hallway/primary/central) "bkY" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /turf/open/floor/plasteel/brown/corner{ - tag = "icon-browncorner (EAST)"; icon_state = "browncorner"; dir = 4 }, @@ -34837,14 +32959,12 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/purple/corner{ - tag = "icon-purplecorner (EAST)"; icon_state = "purplecorner"; dir = 4 }, /area/hallway/primary/central) "bld" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34856,11 +32976,9 @@ /area/hallway/primary/central) "ble" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -34875,7 +32993,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34889,14 +33006,12 @@ "blg" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (WEST)"; icon_state = "brown"; dir = 8 }, @@ -34905,22 +33020,15 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/maintenance/starboard/fore_starboard_maintenance) -"bli" = ( -/turf/open/floor/plating, -/area/quartermaster/miningdock{ - name = "\improper Mining Office" - }) "blj" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/effect/decal/cleanable/dirt, @@ -34948,7 +33056,6 @@ "blm" = ( /obj/structure/filingcabinet/chestdrawer, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side{ @@ -35003,7 +33110,6 @@ /area/security/transfer) "blr" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -35012,7 +33118,6 @@ /area/security/transfer) "bls" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -35028,7 +33133,6 @@ /area/security/main) "blu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side{ @@ -35066,7 +33170,6 @@ /area/security/main) "blz" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -35080,7 +33183,6 @@ /area/security/main) "blA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35092,15 +33194,12 @@ /area/security/main) "blB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/door/airlock/command{ @@ -35117,11 +33216,9 @@ /area/security/hos) "blC" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -35132,15 +33229,12 @@ "blD" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -35151,7 +33245,6 @@ "blE" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/folder/red, @@ -35166,7 +33259,6 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -35179,7 +33271,6 @@ /area/security/hos) "blG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35190,7 +33281,6 @@ /area/security/hos) "blH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -35199,15 +33289,12 @@ /area/security/hos) "blI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/door/airlock/command{ @@ -35221,14 +33308,12 @@ /area/security/hos) "blJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/grimy, /area/security/hos) "blK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -35238,7 +33323,6 @@ /area/security/hos) "blL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/computer/crew, @@ -35246,12 +33330,10 @@ /area/security/hos) "blM" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -35397,7 +33479,6 @@ /area/atmos) "bma" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -35427,7 +33508,6 @@ /area/atmos) "bmd" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -35464,7 +33544,6 @@ /area/atmos) "bmh" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -35479,7 +33558,6 @@ /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -35488,35 +33566,15 @@ /area/atmos) "bmj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/neutral, /area/atmos) -"bmk" = ( -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster17_legit" - }, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Air to External Air Ports"; - on = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/atmos) "bml" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -35571,7 +33629,6 @@ /area/atmos) "bmr" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -35590,7 +33647,6 @@ /area/hallway/primary/port) "bmt" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -35606,7 +33662,6 @@ /area/hallway/primary/port) "bmu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35623,7 +33678,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35637,7 +33691,6 @@ "bmw" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35650,7 +33703,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35660,7 +33712,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "bmy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35673,7 +33724,6 @@ "bmz" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35686,7 +33736,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "bmA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35698,7 +33747,6 @@ "bmB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/junction{ @@ -35710,11 +33758,9 @@ "bmC" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -35769,7 +33815,6 @@ /area/hydroponics) "bmI" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -35779,7 +33824,6 @@ /area/hallway/primary/central) "bmJ" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -35788,7 +33832,6 @@ scrub_Toxins = 0 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -35803,7 +33846,6 @@ /area/hallway/primary/central) "bmK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -35815,7 +33857,6 @@ /area/hallway/primary/central) "bmL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35825,7 +33866,6 @@ /area/hallway/primary/central) "bmM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -35840,7 +33880,6 @@ "bmN" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35853,7 +33892,6 @@ /area/hallway/primary/central) "bmO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35865,7 +33903,6 @@ /area/hallway/primary/central) "bmP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35877,7 +33914,6 @@ /area/hallway/primary/central) "bmQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35889,7 +33925,6 @@ /area/hallway/primary/central) "bmR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -35909,7 +33944,6 @@ name = "lightsout" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -35919,11 +33953,9 @@ scrub_Toxins = 1 }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -35940,7 +33972,6 @@ /area/hallway/primary/central) "bmT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -35949,7 +33980,6 @@ /area/hallway/primary/central) "bmU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -35958,7 +33988,6 @@ /area/hallway/primary/central) "bmV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -35969,7 +33998,6 @@ /area/hallway/primary/central) "bmW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -35978,14 +34006,12 @@ /area/hallway/primary/central) "bmX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, /area/hallway/primary/central) "bmY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -35994,7 +34020,6 @@ "bmZ" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -36004,7 +34029,6 @@ /area/hallway/primary/central) "bna" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -36015,11 +34039,9 @@ /area/hallway/primary/central) "bnb" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -36027,11 +34049,9 @@ /area/hallway/primary/central) "bnc" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -36073,7 +34093,6 @@ /area/security/transfer) "bnh" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side{ @@ -36111,7 +34130,6 @@ "bnm" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -36132,7 +34150,6 @@ /area/security/brig) "bno" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -36156,7 +34173,6 @@ "bnq" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_security{ @@ -36188,7 +34204,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark/start{ @@ -36231,7 +34246,6 @@ /obj/item/weapon/book/manual/wiki/security_space_law, /obj/item/device/taperecorder, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -36250,7 +34264,6 @@ /area/security/main) "bny" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -36276,7 +34289,6 @@ "bnA" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -36292,7 +34304,6 @@ /area/security/hos) "bnB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -36305,7 +34316,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -36330,7 +34340,6 @@ pixel_x = 4.5 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -36339,7 +34348,6 @@ "bnE" = ( /obj/machinery/computer/security, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -36391,7 +34399,6 @@ req_access_txt = "58" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -36525,7 +34532,6 @@ /area/atmos) "bnY" = ( /obj/machinery/atmospherics/pipe/manifold/green/visible{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -36544,7 +34550,6 @@ /area/atmos) "boa" = ( /obj/machinery/atmospherics/pipe/simple/green/visible{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -36576,7 +34581,6 @@ /area/atmos) "bod" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (EAST)"; name = "scrubbers pipe"; icon_state = "manifold"; dir = 4 @@ -36611,7 +34615,6 @@ /obj/item/weapon/storage/belt/utility, /obj/item/device/t_scanner, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -36630,11 +34633,9 @@ /area/atmos) "boi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -36656,13 +34657,11 @@ /area/atmos) "bok" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -36728,12 +34727,10 @@ /area/hallway/primary/port) "bos" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -36765,7 +34762,6 @@ /area/storage/tech) "box" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -36799,7 +34795,6 @@ /area/hydroponics) "boB" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -36828,7 +34823,6 @@ /area/hydroponics) "boD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -36886,21 +34880,6 @@ }, /turf/open/floor/plasteel/neutral/corner, /area/hallway/primary/central) -"boI" = ( -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner, -/area/hallway/primary/central) "boJ" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -36956,6 +34935,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/effect/landmark{ + name = "Observer-Start" + }, /turf/open/floor/plasteel{ icon_state = "L8" }, @@ -37025,23 +35007,6 @@ dir = 8 }, /area/hallway/primary/central) -"boT" = ( -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = -32; - tag = "icon-poster22_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/machinery/light/small, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, -/area/hallway/primary/central) "boU" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -37075,7 +35040,6 @@ /area/hallway/primary/central) "boW" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -37088,7 +35052,6 @@ /area/hallway/primary/central) "boX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -37131,7 +35094,6 @@ /area/shuttle/labor) "bpd" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -37140,11 +35102,9 @@ /area/security/transfer) "bpe" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/grille, @@ -37154,11 +35114,9 @@ /area/security/transfer) "bpf" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/grille, @@ -37167,7 +35125,6 @@ /area/security/transfer) "bpg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -37177,11 +35134,9 @@ /area/security/transfer) "bph" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -37224,7 +35179,6 @@ /area/security/transfer) "bpl" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -37237,15 +35191,12 @@ "bpm" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/airlock/glass_security{ @@ -37259,11 +35210,9 @@ /area/security/transfer) "bpn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -37276,15 +35225,12 @@ /area/security/brig) "bpo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -37299,7 +35245,6 @@ /area/security/brig) "bpp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -37313,15 +35258,12 @@ "bpq" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/glass_security{ @@ -37337,7 +35279,6 @@ /area/security/main) "bpr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37350,11 +35291,9 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/landmark/start{ @@ -37370,7 +35309,6 @@ "bpt" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/folder/red, @@ -37383,7 +35321,6 @@ "bpu" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/paper_bin, @@ -37395,7 +35332,6 @@ /area/security/main) "bpv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37407,7 +35343,6 @@ /area/security/main) "bpw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -37418,7 +35353,6 @@ /area/security/main) "bpx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37428,11 +35362,9 @@ /area/security/main) "bpy" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -37469,14 +35401,12 @@ pixel_y = -32 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, /area/security/hos) "bpC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -37597,7 +35527,6 @@ "bpP" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -37606,7 +35535,6 @@ "bpQ" = ( /obj/machinery/atmospherics/pipe/simple/cyan/visible, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -37616,7 +35544,6 @@ /area/atmos) "bpR" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -37631,7 +35558,6 @@ "bpS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -37648,7 +35574,6 @@ /area/atmos) "bpU" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -37688,7 +35613,6 @@ pixel_x = -22 }, /obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -37698,7 +35622,6 @@ "bpY" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -37706,7 +35629,6 @@ /area/atmos) "bpZ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - tag = "icon-intact (NORTH)"; icon_state = "intact"; dir = 1 }, @@ -37721,11 +35643,9 @@ /area/atmos) "bqb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -37741,11 +35661,9 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -37761,20 +35679,16 @@ req_access_txt = "24" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -37786,11 +35700,9 @@ "bqe" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -37799,12 +35711,10 @@ /area/atmos) "bqf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/portable_atmospherics/canister/nitrous_oxide, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -37813,12 +35723,10 @@ /area/atmos) "bqg" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/portable_atmospherics/canister/nitrogen, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -37828,7 +35736,6 @@ "bqh" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -37858,7 +35765,6 @@ "bql" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -37868,7 +35774,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -37903,23 +35808,18 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/central) "bqr" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/central) "bqs" = ( /obj/machinery/door/firedoor, @@ -37928,9 +35828,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/central) "bqt" = ( /obj/structure/grille, @@ -37944,15 +35842,12 @@ "bqv" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/central) "bqw" = ( /turf/closed/wall/r_wall, @@ -37977,6 +35872,7 @@ pixel_y = -26; req_access_txt = "1" }, +/obj/machinery/light, /turf/open/floor/plasteel/shuttle/red, /area/shuttle/labor) "bqA" = ( @@ -38032,11 +35928,9 @@ /area/security/transfer) "bqG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment, @@ -38046,7 +35940,6 @@ /area/security/transfer) "bqH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -38060,11 +35953,9 @@ /area/security/transfer) "bqI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -38077,11 +35968,9 @@ /area/security/transfer) "bqJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -38094,7 +35983,6 @@ /area/security/transfer) "bqK" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -38106,7 +35994,6 @@ /area/security/transfer) "bqL" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, @@ -38119,7 +36006,6 @@ /area/security/transfer) "bqM" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -38129,7 +36015,6 @@ /area/security/brig) "bqN" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -38182,7 +36067,6 @@ /area/security/main) "bqU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -38229,7 +36113,6 @@ "bqY" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/storage/fancy/donut_box, @@ -38266,7 +36149,6 @@ /area/security/hos) "brb" = ( /obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -38274,14 +36156,12 @@ dir = 8 }, /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (NORTHWEST)"; icon_state = "arrival"; dir = 9 }, /area/atmos) "brc" = ( /obj/machinery/atmospherics/pipe/manifold/cyan/visible{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -38306,7 +36186,6 @@ /area/atmos) "brf" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - tag = "icon-freezer (EAST)"; icon_state = "freezer"; dir = 4 }, @@ -38317,7 +36196,6 @@ "brg" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (EAST)"; name = "scrubbers pipe"; icon_state = "manifold"; dir = 4 @@ -38379,7 +36257,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -38391,7 +36268,6 @@ "brm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -38416,7 +36292,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -38440,7 +36315,6 @@ /area/atmos) "brp" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -38454,7 +36328,6 @@ /area/atmos) "brq" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -38469,7 +36342,6 @@ "brr" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -38500,7 +36372,6 @@ /area/atmos) "bru" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -38525,12 +36396,10 @@ /area/hallway/primary/port) "brw" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/junction, @@ -38543,7 +36412,6 @@ }, /obj/machinery/portable_atmospherics/scrubber, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; icon_state = "escape"; dir = 4 }, @@ -38554,7 +36422,6 @@ /area/storage/tech) "brz" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -38563,15 +36430,12 @@ /area/storage/tech) "brA" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -38580,38 +36444,20 @@ /area/storage/tech) "brB" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, /area/storage/tech) -"brC" = ( -/obj/structure/sink{ - dir = 8; - icon_state = "sink"; - pixel_x = -12 - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/hydroponics) "brD" = ( /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (SOUTHWEST)"; icon_state = "greenblue"; dir = 10 }, /area/hydroponics) "brE" = ( /turf/open/floor/plasteel/greenblue/side{ - tag = "icon-greenblue (SOUTHEAST)"; icon_state = "greenblue"; dir = 6 }, @@ -38646,7 +36492,6 @@ /area/hallway/primary/central) "brI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -38680,7 +36525,6 @@ /area/hallway/primary/central) "brO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -38694,7 +36538,6 @@ /area/hallway/primary/central) "brQ" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -38784,7 +36627,6 @@ "brZ" = ( /obj/structure/closet/emcloset, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -38794,11 +36636,9 @@ /area/security/transfer) "bsa" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -38820,7 +36660,6 @@ /area/security/transfer) "bsd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side, @@ -38893,7 +36732,6 @@ /area/security/main) "bsl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -38915,11 +36753,9 @@ "bsn" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -38936,7 +36772,6 @@ /area/ai_monitored/turret_protected/ai) "bsp" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -38953,11 +36788,9 @@ charge = 5e+006 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/sign/electricshock{ @@ -38973,7 +36806,6 @@ /area/ai_monitored/turret_protected/ai) "bsr" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -38991,7 +36823,6 @@ on = 1 }, /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (SOUTHWEST)"; icon_state = "arrival"; dir = 10 }, @@ -38999,7 +36830,6 @@ "bst" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/cyan/visible{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -39058,7 +36888,6 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (EAST)"; name = "scrubbers pipe"; icon_state = "manifold"; dir = 4 @@ -39084,7 +36913,6 @@ "bsB" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -39095,9 +36923,7 @@ req_access_txt = "0"; req_one_access_txt = "24;10" }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/atmos) "bsC" = ( /obj/machinery/disposal/bin, @@ -39134,11 +36960,9 @@ "bsE" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -39148,7 +36972,6 @@ /area/atmos) "bsF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -39160,7 +36983,6 @@ "bsG" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -39175,7 +36997,6 @@ opacity = 1 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/door/poddoor/preopen{ @@ -39183,7 +37004,6 @@ name = "Atmospherics Lockdown Blast door" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -39208,12 +37028,10 @@ /area/hallway/primary/port) "bsJ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/sortjunction{ @@ -39230,7 +37048,6 @@ }, /obj/item/weapon/circuitboard/computer/mecha_control, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -39250,15 +37067,12 @@ pixel_y = -3 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line, @@ -39276,7 +37090,6 @@ pixel_y = -3 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -39327,29 +37140,11 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/hydroponics) -"bsR" = ( -/obj/structure/table/glass, -/obj/item/weapon/reagent_containers/spray/plantbgone, -/obj/item/weapon/reagent_containers/spray/plantbgone{ - pixel_x = 16 - }, -/obj/item/weapon/watertank, -/obj/item/weapon/grenade/chem_grenade/antiweed, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/hydroponics) "bsS" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -39362,11 +37157,9 @@ /area/bridge) "bsT" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -39379,11 +37172,9 @@ /area/bridge) "bsU" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -39399,7 +37190,6 @@ /area/bridge) "bsW" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -39412,15 +37202,12 @@ /area/bridge) "bsX" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -39433,7 +37220,6 @@ /area/bridge) "bsY" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -39446,7 +37232,6 @@ /area/bridge) "bsZ" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -39456,7 +37241,6 @@ /area/hallway/primary/central) "bta" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -39476,12 +37260,10 @@ /area/hallway/primary/central) "btc" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -39493,7 +37275,6 @@ /area/hallway/primary/central) "btd" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -39526,18 +37307,17 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/security/nuke_storage) "bth" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/security/nuke_storage) "bti" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/security/nuke_storage) "btj" = ( /turf/open/floor/plasteel/vault{ @@ -39555,6 +37335,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/plasteel, /area/shuttle/labor) "btm" = ( @@ -39572,11 +37355,9 @@ "btn" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/door/airlock/glass_security{ @@ -39588,7 +37369,6 @@ /area/security/transfer) "bto" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -39630,7 +37410,6 @@ /area/security/main) "bts" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -39639,15 +37418,12 @@ /area/security/main) "btt" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/security{ @@ -39661,7 +37437,6 @@ /area/security/main) "btu" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -39713,7 +37488,6 @@ /area/ai_monitored/turret_protected/ai) "btz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -39770,16 +37544,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/gravity_generator) "btF" = ( /turf/closed/wall/r_wall, /area/engine/break_room) "btG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -39787,7 +37558,6 @@ /area/engine/break_room) "btH" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -39796,7 +37566,6 @@ "btI" = ( /obj/machinery/status_display, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -39804,7 +37573,6 @@ /area/engine/break_room) "btJ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -39812,27 +37580,11 @@ /area/engine/break_room) "btK" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, /turf/closed/wall/r_wall, /area/engine/break_room) -"btL" = ( -/obj/structure/table/reinforced, -/obj/machinery/microwave{ - desc = "It looks really dirty."; - name = "maint microwave"; - pixel_y = 5 - }, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/turf/open/floor/plasteel/redyellow, -/area/engine/break_room) "btM" = ( /obj/machinery/light/small{ dir = 1 @@ -39867,7 +37619,6 @@ /area/engine/break_room) "btP" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -39897,7 +37648,6 @@ "btS" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -39916,7 +37666,6 @@ /area/atmos) "btU" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -39930,7 +37679,6 @@ /area/atmos) "btV" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -39945,7 +37693,6 @@ scrub_Toxins = 0 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -39979,7 +37726,6 @@ /area/storage/tech) "bua" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -40003,7 +37749,6 @@ /area/storage/tech) "buc" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -40038,7 +37783,6 @@ "bug" = ( /obj/machinery/computer/crew, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -40046,11 +37790,9 @@ "buh" = ( /obj/machinery/computer/med_data, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -40073,7 +37815,6 @@ "buk" = ( /obj/machinery/computer/security, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/darkred/side{ @@ -40097,11 +37838,9 @@ "bun" = ( /obj/machinery/computer/station_alert, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (NORTH)"; icon_state = "darkyellow"; dir = 1 }, @@ -40109,7 +37848,6 @@ "buo" = ( /obj/machinery/computer/atmos_alert, /turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (NORTH)"; icon_state = "darkyellow"; dir = 1 }, @@ -40117,29 +37855,24 @@ "bup" = ( /obj/machinery/computer/monitor, /turf/open/floor/plasteel/darkyellow/corner{ - tag = "icon-darkyellowcorners (EAST)"; icon_state = "darkyellowcorners"; dir = 4 }, /area/bridge) "buq" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, /area/hallway/primary/central) "bur" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -40150,15 +37883,12 @@ /area/hallway/primary/central) "bus" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/vault{ @@ -40175,7 +37905,6 @@ /area/hallway/primary/central) "but" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40192,7 +37921,6 @@ req_access_txt = "53" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/sign/electricshock{ @@ -40210,24 +37938,21 @@ /area/security/nuke_storage) "buv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/security/nuke_storage) "buw" = ( /obj/machinery/nuclearbomb/selfdestruct{ layer = 2 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -40237,14 +37962,12 @@ /area/security/nuke_storage) "bux" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/security/nuke_storage) "buy" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -40294,7 +38017,6 @@ pixel_y = 3 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -40304,11 +38026,9 @@ /area/security/transfer) "buD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -40406,7 +38126,6 @@ /area/security/main) "buO" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -40424,7 +38143,6 @@ /area/security/main) "buQ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -40472,49 +38190,41 @@ /area/ai_monitored/turret_protected/ai) "buU" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "buV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "buW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "buX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/ai_slipper{ @@ -40523,44 +38233,39 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "buY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "buZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bva" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bvb" = ( /obj/item/weapon/twohanded/required/kirbyplants{ @@ -40636,7 +38341,6 @@ /area/engine/break_room) "bvj" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -40717,7 +38421,6 @@ "bvr" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -40728,9 +38431,7 @@ req_access_txt = "0"; req_one_access_txt = "24;10" }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bvs" = ( /obj/structure/sign/securearea, @@ -40754,7 +38455,6 @@ /area/atmos) "bvv" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/holopad, @@ -40766,7 +38466,6 @@ /area/atmos) "bvw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -40777,7 +38476,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/caution{ @@ -40787,11 +38485,9 @@ "bvy" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/item/weapon/folder/yellow, @@ -40818,12 +38514,10 @@ /area/hallway/primary/port) "bvA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -40847,15 +38541,12 @@ "bvC" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/highsecurity, @@ -40863,9 +38554,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/storage/tech) "bvD" = ( /obj/structure/extinguisher_cabinet, @@ -40873,15 +38562,12 @@ /area/storage/tech) "bvE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -40890,7 +38576,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "bvF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40905,7 +38590,6 @@ "bvG" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40919,11 +38603,9 @@ "bvH" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40941,7 +38623,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40954,7 +38635,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "bvJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -40967,11 +38647,9 @@ /area/hallway/primary/central) "bvK" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40982,7 +38660,6 @@ /area/hallway/primary/central) "bvL" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -41025,7 +38702,6 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -41047,7 +38723,6 @@ /area/bridge) "bvR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -41072,7 +38747,6 @@ /obj/item/device/assembly/timer, /obj/item/device/assembly/signaler, /turf/open/floor/plasteel/darkyellow/corner{ - tag = "icon-darkyellowcorners (EAST)"; icon_state = "darkyellowcorners"; dir = 4 }, @@ -41097,11 +38771,9 @@ "bvW" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -41110,7 +38782,6 @@ /area/hallway/primary/central) "bvX" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -41119,7 +38790,7 @@ /area/security/nuke_storage) "bvY" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/security/nuke_storage) "bvZ" = ( /obj/item/clothing/suit/hazardvest{ @@ -41207,17 +38878,13 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (WEST)" - }, +/turf/open/floor/plasteel, /area/shuttle/labor) "bwb" = ( /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/shuttle/labor) "bwc" = ( /obj/machinery/door/airlock/shuttle{ @@ -41276,7 +38943,6 @@ /area/security/transfer) "bwg" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -41329,7 +38995,6 @@ /area/security/brig) "bwm" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41397,11 +39062,9 @@ "bws" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -41413,7 +39076,6 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -41422,7 +39084,6 @@ /area/security/main) "bwu" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/item/device/radio/intercom{ @@ -41496,14 +39157,13 @@ /area/ai_monitored/turret_protected/ai) "bwA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bwB" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41515,7 +39175,6 @@ /area/ai_monitored/turret_protected/ai) "bwC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41527,7 +39186,6 @@ /area/ai_monitored/turret_protected/ai) "bwD" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -41537,15 +39195,13 @@ /area/ai_monitored/turret_protected/ai) "bwE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bwF" = ( /obj/structure/chair/office/dark{ @@ -41575,7 +39231,6 @@ /area/engine/gravity_generator) "bwI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -41586,16 +39241,14 @@ "bwJ" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/structure/sign/electricshock{ pixel_y = 32 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -41610,7 +39263,6 @@ pixel_y = 32 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -41628,7 +39280,6 @@ pixel_y = 25 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -41643,7 +39294,6 @@ /area/engine/gravity_generator) "bwM" = ( /obj/machinery/power/terminal{ - tag = "icon-term (EAST)"; icon_state = "term"; dir = 4 }, @@ -41653,15 +39303,13 @@ pixel_y = 26 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, @@ -41699,9 +39347,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/gravity_generator) "bwQ" = ( /obj/structure/extinguisher_cabinet{ @@ -41716,7 +39362,6 @@ /area/engine/break_room) "bwS" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, @@ -41754,13 +39399,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bwY" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -41770,9 +39412,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bwZ" = ( /obj/machinery/door/poddoor/preopen{ @@ -41789,9 +39429,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bxa" = ( /obj/machinery/computer/atmos_control, @@ -41842,7 +39480,6 @@ name = "Atmospherics Lockdown Blast door" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -41860,7 +39497,6 @@ "bxg" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -41912,7 +39548,6 @@ /area/storage/tech) "bxl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -41947,7 +39582,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -41957,7 +39591,6 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "bxq" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -41980,9 +39613,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/storage/primary) "bxt" = ( /obj/effect/decal/cleanable/dirt, @@ -41990,7 +39621,6 @@ opacity = 1 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -42008,7 +39638,6 @@ /area/storage/primary) "bxu" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -42023,7 +39652,6 @@ /area/hallway/primary/central) "bxw" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -42046,11 +39674,9 @@ icon_state = "doors"; name = "WARNING: BLAST DOORS"; pixel_x = 0; - pixel_y = 32; - tag = "icon-doors" - }, + pixel_y = 32 + }, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -42070,7 +39696,6 @@ layer = 4.1 }, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -42078,7 +39703,6 @@ "bxA" = ( /obj/machinery/vending/cola/random, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -42086,7 +39710,6 @@ "bxB" = ( /obj/machinery/vending/snack/random, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -42097,7 +39720,6 @@ "bxD" = ( /obj/machinery/computer/security/mining, /turf/open/floor/plasteel/darkpurple/side{ - tag = "icon-darkpurple (NORTH)"; icon_state = "darkpurple"; dir = 1 }, @@ -42105,11 +39727,9 @@ "bxE" = ( /obj/machinery/computer/cargo/request, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (NORTH)"; icon_state = "darkyellow"; dir = 1 }, @@ -42132,7 +39752,6 @@ /area/bridge) "bxH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -42145,7 +39764,6 @@ /area/bridge) "bxI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/device/radio/beacon, @@ -42155,7 +39773,6 @@ /area/bridge) "bxJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -42191,12 +39808,10 @@ /area/bridge) "bxM" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/modular_computer/console/preset/command, /turf/open/floor/plasteel/darkpurple/side{ - tag = "icon-darkpurple (NORTH)"; icon_state = "darkpurple"; dir = 1 }, @@ -42204,7 +39819,6 @@ "bxN" = ( /obj/machinery/computer/aifixer, /turf/open/floor/plasteel/darkpurple/side{ - tag = "icon-darkpurple (NORTH)"; icon_state = "darkpurple"; dir = 1 }, @@ -42212,7 +39826,6 @@ "bxO" = ( /obj/machinery/vending/coffee, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -42220,7 +39833,6 @@ "bxP" = ( /obj/machinery/vending/cigarette, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -42228,7 +39840,6 @@ "bxQ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; icon_state = "bluecorner"; dir = 8 }, @@ -42309,11 +39920,9 @@ /area/shuttle/labor) "bxX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -42363,7 +39972,6 @@ /area/security/brig) "byd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -42436,20 +40044,6 @@ dir = 8 }, /area/security/main) -"byj" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/security/main) "byk" = ( /obj/structure/cable/white, /obj/structure/grille, @@ -42496,11 +40090,10 @@ /area/ai_monitored/turret_protected/ai) "byp" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "byq" = ( /turf/open/floor/plasteel/vault{ @@ -42518,10 +40111,9 @@ /area/ai_monitored/turret_protected/ai) "bys" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "byt" = ( /turf/open/floor/plasteel/vault{ @@ -42556,9 +40148,8 @@ /obj/structure/cable/white, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -42577,9 +40168,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, + icon_state = "1-4" + }, /turf/open/floor/plasteel/neutral, /area/engine/gravity_generator) "byB" = ( @@ -42592,7 +40182,6 @@ pixel_x = 0 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -42603,7 +40192,6 @@ "byC" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42618,7 +40206,6 @@ "byD" = ( /obj/structure/sign/radiation, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42630,7 +40217,6 @@ pixel_y = 23 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -42646,7 +40232,6 @@ /area/engine/gravity_generator) "byF" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42662,7 +40247,6 @@ pixel_x = 26 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42673,7 +40257,6 @@ /area/engine/gravity_generator) "byH" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42681,13 +40264,11 @@ /area/engine/break_room) "byI" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42701,43 +40282,34 @@ req_access_txt = "19" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "byK" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42751,28 +40323,22 @@ req_access_txt = "19" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "byM" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -42782,7 +40348,6 @@ /area/engine/break_room) "byN" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42797,7 +40362,6 @@ pixel_y = 24 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42806,7 +40370,6 @@ /area/engine/break_room) "byP" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42817,7 +40380,6 @@ /area/engine/break_room) "byQ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -42827,7 +40389,6 @@ /area/engine/break_room) "byR" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42853,11 +40414,9 @@ pixel_y = 25 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42867,11 +40426,9 @@ /area/engine/break_room) "byT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -42882,15 +40439,12 @@ /area/engine/break_room) "byU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -42905,7 +40459,6 @@ pixel_x = 24 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -42917,7 +40470,6 @@ /obj/structure/table/reinforced, /obj/item/device/flashlight/lamp, /turf/open/floor/plasteel/caution{ - tag = "icon-caution (SOUTHWEST)"; icon_state = "caution"; dir = 10 }, @@ -42976,7 +40528,6 @@ /area/atmos) "bzb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -43008,7 +40559,6 @@ /area/storage/tech) "bzf" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -43053,16 +40603,6 @@ /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/storage/primary) -"bzk" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/storage/primary) "bzl" = ( /obj/machinery/disposal/bin, /obj/machinery/requests_console{ @@ -43082,7 +40622,6 @@ /area/storage/primary) "bzn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -43201,11 +40740,9 @@ /area/storage/primary) "bzs" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -43222,7 +40759,6 @@ /area/hallway/primary/central) "bzt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43238,11 +40774,9 @@ "bzu" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_command{ @@ -43262,7 +40796,6 @@ /area/bridge) "bzv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43277,7 +40810,6 @@ /area/bridge) "bzw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -43298,15 +40830,12 @@ "bzx" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_command{ @@ -43323,7 +40852,6 @@ /area/bridge) "bzy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43335,11 +40863,9 @@ /area/bridge) "bzz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -43352,11 +40878,9 @@ icon_state = "plant-22" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/light{ @@ -43377,11 +40901,9 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -43394,15 +40916,12 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43414,11 +40933,9 @@ /area/bridge) "bzD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43430,7 +40947,6 @@ "bzE" = ( /obj/structure/window/reinforced, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43440,7 +40956,6 @@ /area/bridge) "bzF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/southright{ @@ -43448,7 +40963,6 @@ req_access_txt = "19" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -43457,15 +40971,12 @@ "bzG" = ( /obj/structure/window/reinforced, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43475,11 +40986,9 @@ /area/bridge) "bzH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -43492,15 +41001,12 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -43513,11 +41019,9 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -43527,7 +41031,6 @@ /area/bridge) "bzK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43544,11 +41047,9 @@ "bzL" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_command{ @@ -43565,7 +41066,6 @@ /area/bridge) "bzM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -43582,11 +41082,9 @@ "bzN" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_command{ @@ -43603,27 +41101,22 @@ /area/bridge) "bzO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; icon_state = "bluecorner"; dir = 8 }, /area/hallway/primary/central) "bzP" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -43677,7 +41170,6 @@ /area/security/transfer) "bzU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/sortjunction{ @@ -43700,23 +41192,6 @@ }, /turf/open/floor/plasteel/red/side, /area/security/transfer) -"bzW" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/obj/machinery/camera{ - c_tag = "Security - Transfer Centre Aft"; - dir = 1; - name = "security camera" - }, -/turf/open/floor/plasteel/red/side, -/area/security/transfer) "bzX" = ( /obj/structure/chair{ dir = 1 @@ -43749,23 +41224,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall, /area/security/brig) -"bAa" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/door/airlock/security{ - name = "Brig"; - req_access_txt = "63" - }, -/obj/structure/sign/poster{ - icon_state = "poster2_legit"; - pixel_x = -32; - tag = "icon-poster2_legit" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/brig) "bAb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, @@ -43808,7 +41266,7 @@ /obj/effect/landmark{ name = "tripai" }, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bAd" = ( /obj/machinery/holopad, @@ -43818,14 +41276,13 @@ /area/ai_monitored/turret_protected/ai) "bAe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/ai_slipper{ uses = 10 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bAf" = ( /obj/machinery/turretid{ @@ -43881,13 +41338,12 @@ /area/ai_monitored/turret_protected/ai) "bAi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/ai_slipper{ uses = 10 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bAj" = ( /obj/item/device/radio/intercom{ @@ -43927,7 +41383,7 @@ /obj/effect/landmark{ name = "tripai" }, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bAk" = ( /obj/machinery/light{ @@ -43941,16 +41397,14 @@ }, /area/engine/gravity_generator) "bAl" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/gravity_generator) "bAm" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/door/airlock/glass_command{ @@ -43970,7 +41424,6 @@ /area/engine/gravity_generator) "bAo" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -43981,7 +41434,6 @@ "bAp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -43994,7 +41446,6 @@ req_access_txt = "19;23" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -44004,11 +41455,9 @@ /area/engine/gravity_generator) "bAr" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -44019,7 +41468,6 @@ /obj/machinery/holopad, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/bot, @@ -44027,12 +41475,10 @@ /area/engine/gravity_generator) "bAt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -44042,7 +41488,6 @@ "bAu" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/highsecurity{ @@ -44051,7 +41496,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -44062,102 +41506,79 @@ /area/engine/break_room) "bAv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (WEST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bAw" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bAx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bAy" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bAz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bAA" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/highsecurity{ @@ -44166,7 +41587,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -44177,7 +41597,6 @@ /area/engine/break_room) "bAB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers, @@ -44188,11 +41607,9 @@ /area/engine/break_room) "bAC" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -44201,11 +41618,9 @@ /area/engine/break_room) "bAD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -44216,12 +41631,10 @@ /area/engine/break_room) "bAE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -44229,11 +41642,9 @@ /area/engine/break_room) "bAF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -44241,11 +41652,9 @@ /area/engine/break_room) "bAG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -44253,11 +41662,9 @@ /area/engine/break_room) "bAH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/neutral, @@ -44270,7 +41677,6 @@ /area/engine/break_room) "bAJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -44287,7 +41693,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -44295,7 +41700,6 @@ /area/hallway/primary/port) "bAM" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -44373,7 +41777,6 @@ pixel_y = 3 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/effect/turf_decal/bot, @@ -44381,7 +41784,6 @@ /area/storage/primary) "bAS" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow/side{ @@ -44390,7 +41792,6 @@ /area/storage/primary) "bAT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -44403,7 +41804,6 @@ /area/storage/primary) "bAU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -44415,7 +41815,6 @@ /area/storage/primary) "bAV" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -44457,7 +41856,6 @@ /area/hallway/primary/central) "bBb" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -44467,7 +41865,6 @@ "bBc" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_command{ @@ -44502,9 +41899,8 @@ dir = 1; icon_state = "pipe-j1s"; name = "HoP Junction"; - sortType = 15; - tag = "icon-pipe-j1s (NORTH)" - }, + sortType = 15 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -44512,7 +41908,6 @@ "bBf" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_command{ @@ -44559,11 +41954,9 @@ /area/bridge) "bBi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -44586,7 +41979,6 @@ /area/bridge) "bBk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -44610,7 +42002,6 @@ }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -44637,7 +42028,6 @@ "bBp" = ( /obj/machinery/computer/communications, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -44649,7 +42039,6 @@ /obj/structure/table/wood, /obj/machinery/computer/security/wooden_tv, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -44674,7 +42063,6 @@ dir = 4 }, /turf/open/floor/plasteel/darkblue/side{ - tag = "icon-darkblue (NORTH)"; icon_state = "darkblue"; dir = 1 }, @@ -44689,11 +42077,9 @@ /area/bridge) "bBu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -44725,14 +42111,12 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; icon_state = "bluecorner"; dir = 8 }, /area/hallway/primary/central) "bBy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -44742,7 +42126,6 @@ /area/hallway/primary/central) "bBz" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -44753,7 +42136,6 @@ /area/hallway/primary/central) "bBA" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -44763,11 +42145,9 @@ /area/security/transfer) "bBB" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/door/airlock/glass_security{ @@ -44781,7 +42161,6 @@ /area/security/transfer) "bBC" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -44791,7 +42170,6 @@ /area/security/transfer) "bBD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -44842,7 +42220,6 @@ /area/security/warden) "bBJ" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -44917,7 +42294,7 @@ /obj/effect/landmark/start{ name = "AI" }, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bBO" = ( /obj/machinery/light{ @@ -44982,7 +42359,6 @@ /area/engine/gravity_generator) "bBU" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -44995,7 +42371,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/power/port_gen/pacman, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45005,7 +42380,6 @@ "bBW" = ( /obj/structure/sign/radiation, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45013,11 +42387,9 @@ /area/engine/gravity_generator) "bBX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45033,7 +42405,6 @@ pixel_y = -32 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -45044,7 +42415,6 @@ /obj/structure/closet/radiation, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -45098,9 +42468,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/airalarm{ dir = 1; icon_state = "alarm0"; @@ -45155,11 +42524,9 @@ /area/engine/break_room) "bCk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45183,7 +42550,6 @@ /area/engine/break_room) "bCm" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45193,9 +42559,8 @@ /turf/open/floor/plasteel/yellow/side{ dir = 1; icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/engine/break_room) "bCn" = ( /obj/item/weapon/twohanded/required/kirbyplants{ @@ -45205,14 +42570,12 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/light_switch{ pixel_y = 26 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45225,7 +42588,6 @@ /area/engine/break_room) "bCo" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45276,7 +42638,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -45294,7 +42655,6 @@ /area/hallway/primary/port) "bCu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -45405,7 +42765,6 @@ /area/storage/primary) "bCG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -45416,7 +42775,6 @@ /area/hallway/primary/central) "bCH" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -45486,7 +42844,6 @@ /area/bridge) "bCP" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -45528,7 +42885,6 @@ /obj/item/device/aicard, /obj/item/weapon/storage/secure/briefcase, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8 }, @@ -45540,7 +42896,6 @@ /obj/structure/table/wood, /obj/item/device/taperecorder, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -45548,7 +42903,6 @@ /area/bridge) "bCW" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -45560,7 +42914,6 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/carpet, @@ -45568,7 +42921,6 @@ "bCY" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -45582,7 +42934,6 @@ /obj/item/weapon/folder/blue, /obj/item/weapon/pen, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -45594,7 +42945,6 @@ /obj/item/weapon/storage/toolbox/emergency, /obj/item/weapon/wrench, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8 }, @@ -45623,7 +42973,6 @@ /area/bridge) "bDe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -45660,7 +43009,6 @@ /area/security/detectives_office) "bDj" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -45695,7 +43043,6 @@ /area/hallway/primary/starboard) "bDn" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -45733,7 +43080,6 @@ /area/security/brig) "bDq" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -45751,11 +43097,9 @@ /area/security/brig) "bDs" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -45766,7 +43110,6 @@ /area/security/brig) "bDt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -45779,7 +43122,6 @@ "bDu" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/security{ @@ -45795,7 +43137,6 @@ /area/security/warden) "bDv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -45807,11 +43148,9 @@ /area/security/warden) "bDw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -45823,7 +43162,6 @@ /area/security/warden) "bDx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark{ @@ -45839,7 +43177,6 @@ /area/security/warden) "bDy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -45848,15 +43185,12 @@ /area/security/warden) "bDz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/door/airlock/glass_security{ @@ -45870,7 +43204,6 @@ /area/security/warden) "bDA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -45881,7 +43214,6 @@ "bDB" = ( /obj/structure/tank_dispenser/oxygen, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -45890,7 +43222,6 @@ /area/security/warden) "bDC" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -45908,7 +43239,6 @@ /area/ai_monitored/turret_protected/ai) "bDE" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -45924,7 +43254,6 @@ pixel_y = -32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45936,7 +43265,6 @@ pixel_y = -32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45958,7 +43286,6 @@ pixel_y = -22 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -45970,7 +43297,6 @@ pixel_y = -32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -45984,9 +43310,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/light_switch{ pixel_y = -26 }, @@ -46000,7 +43325,6 @@ /area/engine/gravity_generator) "bDK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -46011,9 +43335,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/gravity_generator) "bDL" = ( /obj/effect/decal/cleanable/dirt, @@ -46025,9 +43347,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/gravity_generator) "bDM" = ( /turf/closed/wall/r_wall, @@ -46036,9 +43356,8 @@ /obj/structure/sign/directions/engineering{ desc = "A handy sign praising the engineering department."; icon_state = "safety"; - name = "engineering plaque"; - tag = "icon-safety" - }, + name = "engineering plaque" + }, /turf/closed/wall, /area/engine/break_room) "bDO" = ( @@ -46094,18 +43413,15 @@ /area/engine/break_room) "bDU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/neutral, /area/engine/break_room) "bDV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -46113,14 +43429,12 @@ /area/engine/break_room) "bDW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, /area/engine/break_room) "bDX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow/side{ @@ -46131,7 +43445,6 @@ /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/engineering{ @@ -46146,7 +43459,6 @@ /area/engine/break_room) "bDZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -46154,7 +43466,6 @@ /area/engine/break_room) "bEa" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark{ @@ -46165,7 +43476,6 @@ "bEb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -46175,7 +43485,6 @@ /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/engineering{ @@ -46184,11 +43493,9 @@ req_one_access_txt = "32;19" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -46199,7 +43506,6 @@ "bEd" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow/side{ @@ -46208,15 +43514,12 @@ /area/hallway/primary/port) "bEe" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -46233,7 +43536,6 @@ "bEg" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/item/weapon/folder/yellow, @@ -46250,7 +43552,6 @@ /area/storage/tech) "bEh" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -46264,11 +43565,9 @@ /area/storage/tech) "bEi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -46276,15 +43575,12 @@ /area/storage/tech) "bEj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -46406,7 +43702,6 @@ /area/storage/primary) "bEv" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -46420,9 +43715,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /turf/open/floor/plasteel/neutral/corner, /area/hallway/primary/central) "bEx" = ( @@ -46438,7 +43732,6 @@ "bEz" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/command{ @@ -46462,7 +43755,6 @@ /obj/structure/table/reinforced, /obj/machinery/recharger, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8 }, @@ -46471,7 +43763,6 @@ /obj/structure/table/reinforced, /obj/machinery/cell_charger, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8 }, @@ -46526,7 +43817,6 @@ /area/bridge) "bEG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/carpet, @@ -46577,7 +43867,6 @@ /obj/structure/table/reinforced, /obj/item/weapon/paper_bin, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; icon_state = "vault"; dir = 8 }, @@ -46597,7 +43886,6 @@ req_access_txt = "20" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -46609,7 +43897,6 @@ /area/crew_quarters/captain) "bEP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -46624,7 +43911,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -46635,7 +43921,6 @@ "bER" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -46645,62 +43930,37 @@ "bES" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/starboard) "bET" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/maintenance/starboard) -"bEU" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/hallway/primary/central) "bEV" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/neutral/side{ dir = 5; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-neutral (NORTHEAST)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/maintenance/starboard) -"bEW" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/detective, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/turf/open/floor/plasteel/vault, -/area/security/detectives_office) "bEX" = ( /obj/structure/closet/secure_closet/detective, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/clothing/head/det_hat{ @@ -46717,7 +43977,6 @@ "bEY" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/item/weapon/book/manual/wiki/security_space_law, @@ -46727,7 +43986,6 @@ "bEZ" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/apc{ @@ -46744,18 +44002,15 @@ "bFa" = ( /obj/structure/filingcabinet/security, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/vault, /area/security/detectives_office) "bFb" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/trunk, @@ -46786,7 +44041,6 @@ "bFf" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -46816,15 +44070,12 @@ "bFi" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/grille, @@ -46837,7 +44088,6 @@ /area/security/brig) "bFj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side{ @@ -46846,7 +44096,6 @@ /area/security/brig) "bFk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side{ @@ -46855,15 +44104,12 @@ /area/security/brig) "bFl" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/westright{ @@ -46877,7 +44123,6 @@ /area/security/brig) "bFm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -46885,11 +44130,9 @@ /area/security/brig) "bFn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -46913,7 +44156,6 @@ /area/security/warden) "bFq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -46970,15 +44212,13 @@ /area/ai_monitored/turret_protected/ai) "bFw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bFx" = ( /obj/machinery/airalarm{ @@ -47000,11 +44240,9 @@ /area/ai_monitored/turret_protected/ai) "bFz" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -47026,13 +44264,12 @@ /area/ai_monitored/turret_protected/ai) "bFB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bFC" = ( /obj/structure/chair/office/dark{ @@ -47056,7 +44293,6 @@ /area/ai_monitored/turret_protected/ai) "bFE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/hatch{ @@ -47137,7 +44373,6 @@ pixel_y = 32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -47163,7 +44398,6 @@ req_access_txt = "56" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -47176,13 +44410,11 @@ /area/crew_quarters/chief) "bFM" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -47197,7 +44429,6 @@ name = "Chief's Lockdown Shutters" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -47211,7 +44442,6 @@ /area/engine/break_room) "bFO" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -47223,7 +44453,6 @@ /area/engine/break_room) "bFP" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -47245,7 +44474,6 @@ "bFS" = ( /obj/structure/chair/stool/bar, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -47253,11 +44481,9 @@ /area/engine/break_room) "bFT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -47268,7 +44494,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -47277,7 +44502,6 @@ /area/engine/break_room) "bFV" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -47289,7 +44513,6 @@ icon_state = "tube1" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -47300,7 +44523,6 @@ "bFX" = ( /obj/structure/sign/securearea, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -47308,7 +44530,6 @@ /area/engine/break_room) "bFY" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -47348,7 +44569,6 @@ /area/hallway/primary/port) "bGd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -47403,7 +44623,6 @@ /obj/item/weapon/stock_parts/console_screen, /obj/item/weapon/stock_parts/console_screen, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /turf/open/floor/plasteel/vault{ @@ -47493,9 +44712,8 @@ "bGs" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/machinery/power/apc{ cell_type = 10000; dir = 1; @@ -47509,7 +44727,6 @@ }) "bGt" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -47522,7 +44739,6 @@ }) "bGu" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/light_switch{ @@ -47564,7 +44780,6 @@ }) "bGz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -47603,7 +44818,6 @@ pixel_y = 26 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -47678,21 +44892,18 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, /turf/open/floor/plating{ - tag = "icon-plating_warn_side (EAST)"; icon_state = "plating_warn_side" }, /area/maintenance/starboard) "bGN" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plating, @@ -47703,7 +44914,6 @@ req_access_txt = "4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -47717,7 +44927,6 @@ pixel_y = 32 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -47726,11 +44935,9 @@ /area/security/detectives_office) "bGQ" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -47743,7 +44950,6 @@ /area/security/detectives_office) "bGR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -47753,15 +44959,12 @@ /area/security/detectives_office) "bGS" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -47771,11 +44974,9 @@ /area/security/detectives_office) "bGT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -47783,7 +44984,6 @@ /area/security/detectives_office) "bGU" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/reagent_dispensers/peppertank{ @@ -47867,7 +45067,6 @@ /area/security/brig) "bHc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -47885,7 +45084,6 @@ /area/security/brig) "bHe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -47898,7 +45096,6 @@ /area/security/brig) "bHf" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -47909,7 +45106,6 @@ /area/security/brig) "bHg" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -47919,11 +45115,9 @@ "bHh" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_security{ @@ -47944,7 +45138,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -47976,7 +45169,6 @@ pixel_x = 0 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -48010,47 +45202,41 @@ /area/ai_monitored/turret_protected/ai) "bHo" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bHp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bHq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/ai_slipper{ uses = 10 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bHr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bHs" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bHt" = ( /obj/structure/window/reinforced, @@ -48058,7 +45244,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -48078,7 +45263,6 @@ pixel_x = 0 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -48127,7 +45311,6 @@ }) "bHz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -48146,9 +45329,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/button/door{ id = "transitlock"; name = "Transit Tube Lockdown Control"; @@ -48183,7 +45365,6 @@ /area/crew_quarters/chief) "bHC" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -48191,7 +45372,6 @@ /area/crew_quarters/chief) "bHD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -48199,7 +45379,6 @@ /area/crew_quarters/chief) "bHE" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -48211,11 +45390,9 @@ /area/crew_quarters/chief) "bHF" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -48225,11 +45402,9 @@ /area/crew_quarters/chief) "bHG" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/firedoor, @@ -48238,11 +45413,9 @@ req_access_txt = "56" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -48257,11 +45430,9 @@ name = "Chief's Lockdown Shutters" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -48272,11 +45443,9 @@ /area/engine/break_room) "bHI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -48285,11 +45454,9 @@ /area/engine/break_room) "bHJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -48303,11 +45470,9 @@ /area/engine/break_room) "bHK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -48318,7 +45483,6 @@ /area/engine/break_room) "bHL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -48333,11 +45497,9 @@ /area/engine/break_room) "bHM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -48348,15 +45510,12 @@ /area/engine/break_room) "bHN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -48367,11 +45526,9 @@ /area/engine/break_room) "bHO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -48393,13 +45550,11 @@ /area/security/checkpoint/engineering) "bHR" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -48407,11 +45562,9 @@ /area/security/checkpoint/engineering) "bHS" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/airlock/glass_security{ @@ -48426,7 +45579,6 @@ /area/security/checkpoint/engineering) "bHT" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -48445,7 +45597,6 @@ /area/security/checkpoint/engineering) "bHV" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -48545,9 +45696,8 @@ "bId" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -48597,7 +45747,6 @@ }) "bIi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/chair/comfy/brown, @@ -48610,7 +45759,6 @@ }) "bIj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/chair/comfy/black, @@ -48642,7 +45790,6 @@ }) "bIl" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -48704,11 +45851,9 @@ }, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -48718,7 +45863,6 @@ }) "bIr" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -48734,7 +45878,6 @@ }) "bIs" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -48747,7 +45890,6 @@ }) "bIt" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -48763,7 +45905,6 @@ icon_state = "plant-22" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -48823,11 +45964,9 @@ /area/crew_quarters/captain) "bIA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -48883,9 +46022,8 @@ "bII" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/effect/decal/cleanable/dirt, /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, @@ -48902,7 +46040,6 @@ /area/storage/tools) "bIJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -48950,7 +46087,6 @@ "bIP" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -48961,7 +46097,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -49023,7 +46158,6 @@ /area/security/detectives_office) "bIW" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -49110,11 +46244,9 @@ /area/security/warden) "bJd" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side{ @@ -49223,7 +46355,6 @@ "bJl" = ( /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -49246,7 +46377,6 @@ /area/ai_monitored/turret_protected/ai) "bJn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -49289,7 +46419,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -49301,7 +46430,6 @@ }) "bJt" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49315,7 +46443,6 @@ }) "bJu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/hatch{ @@ -49334,7 +46461,6 @@ "bJv" = ( /obj/structure/lattice/catwalk, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49345,11 +46471,9 @@ "bJw" = ( /obj/structure/lattice/catwalk, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -49358,11 +46482,9 @@ "bJx" = ( /obj/structure/lattice/catwalk, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -49370,7 +46492,6 @@ /area/space) "bJy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/hatch{ @@ -49388,7 +46509,6 @@ }) "bJz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49402,7 +46522,6 @@ }) "bJA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -49414,11 +46533,9 @@ }) "bJB" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -49456,7 +46573,6 @@ on = 1 }, /turf/open/floor/plasteel/neutral/side{ - tag = "icon-neutral (EAST)"; icon_state = "neutral"; dir = 4 }, @@ -49481,7 +46597,6 @@ /area/crew_quarters/chief) "bJI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49551,7 +46666,6 @@ /area/engine/break_room) "bJQ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -49577,7 +46691,6 @@ /area/engine/break_room) "bJU" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -49650,7 +46763,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49704,11 +46816,9 @@ /obj/structure/cable/white, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -49723,7 +46833,6 @@ }) "bKk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/photocopier, @@ -49734,7 +46843,6 @@ "bKl" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/grimy, @@ -49748,7 +46856,6 @@ icon_state = "comfychair" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/carpet, @@ -49758,7 +46865,6 @@ "bKn" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/folder/blue, @@ -49770,11 +46876,9 @@ "bKo" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/item/weapon/folder/red, @@ -49786,11 +46890,9 @@ "bKp" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/item/weapon/folder/yellow, @@ -49803,7 +46905,6 @@ /obj/structure/table/wood, /obj/item/weapon/storage/fancy/donut_box, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -49862,7 +46963,6 @@ }) "bKw" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -49876,11 +46976,9 @@ }) "bKx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -49890,12 +46988,10 @@ }) "bKy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/grimy, @@ -49904,7 +47000,6 @@ }) "bKz" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -49953,11 +47048,9 @@ "bKF" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49966,14 +47059,12 @@ /area/crew_quarters/captain) "bKG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/wood, /area/crew_quarters/captain) "bKH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -49990,7 +47081,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/grimy, @@ -50005,7 +47095,6 @@ }, /obj/item/clothing/mask/cigarette/cigar, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/grimy, @@ -50038,7 +47127,6 @@ /area/storage/tools) "bKM" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -50053,7 +47141,6 @@ /area/storage/tools) "bKN" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral, @@ -50097,7 +47184,6 @@ /area/security/detectives_office) "bKS" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -50107,7 +47193,6 @@ /area/security/detectives_office) "bKT" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -50118,7 +47203,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -50204,7 +47288,6 @@ /area/security/brig) "bLd" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -50214,7 +47297,6 @@ /area/security/brig) "bLe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, @@ -50251,11 +47333,9 @@ /area/security/warden) "bLh" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -50274,7 +47354,6 @@ /area/security/warden) "bLj" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -50419,7 +47498,6 @@ "bLx" = ( /obj/structure/lattice/catwalk, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -50484,7 +47562,6 @@ name = "Transit Tube" }) "bLD" = ( -/obj/machinery/computer/atmos_alert, /obj/machinery/requests_console{ announcementConsole = 1; department = "Chief Engineer's Desk"; @@ -50498,13 +47575,13 @@ dir = 4; name = "engineering camera" }, +/obj/machinery/computer/apc_control, /turf/open/floor/plasteel/vault{ dir = 5 }, /area/crew_quarters/chief) "bLE" = ( /turf/open/floor/plasteel/neutral/side{ - tag = "icon-neutral (EAST)"; icon_state = "neutral"; dir = 4 }, @@ -50521,7 +47598,6 @@ "bLG" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/item/weapon/folder/blue{ @@ -50537,7 +47613,6 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -50548,11 +47623,9 @@ /area/crew_quarters/chief) "bLI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/light{ @@ -50580,7 +47653,6 @@ "bLM" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/engineering{ @@ -50591,9 +47663,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/break_room) "bLN" = ( /obj/structure/sign/securearea, @@ -50612,7 +47682,6 @@ /area/engine/break_room) "bLP" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white, @@ -50655,14 +47724,12 @@ on = 1 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, /area/hallway/primary/port) "bLW" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -50849,7 +47916,6 @@ }) "bMp" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/chair/comfy/brown{ @@ -50927,16 +47993,9 @@ }) "bMy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, -/area/tcommsat/computer{ - name = "\improper Telecoms Control Room" - }) -"bMz" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/grimy, /area/tcommsat/computer{ name = "\improper Telecoms Control Room" }) @@ -50978,7 +48037,6 @@ pixel_y = -26 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -50986,7 +48044,6 @@ /area/crew_quarters/captain) "bME" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -50995,7 +48052,6 @@ "bMF" = ( /obj/structure/chair/comfy/brown, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51013,7 +48069,6 @@ /area/crew_quarters/captain) "bMH" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -51141,7 +48196,6 @@ /area/security/detectives_office) "bMU" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -51149,23 +48203,18 @@ /area/security/detectives_office) "bMV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/grimy, @@ -51173,7 +48222,6 @@ "bMW" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/item/weapon/paper_bin, @@ -51187,7 +48235,6 @@ }, /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/button/door{ @@ -51236,15 +48283,12 @@ /area/security/detectives_office) "bNb" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/westright{ @@ -51266,15 +48310,12 @@ /area/security/warden) "bNd" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -51356,7 +48397,6 @@ "bNl" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/portable_atmospherics/canister/air, @@ -51373,7 +48413,6 @@ charge = 5e+006 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/light{ @@ -51517,7 +48556,6 @@ "bND" = ( /obj/structure/lattice, /obj/structure/transit_tube/curved/flipped{ - tag = "icon-curved1 (EAST)"; icon_state = "curved1"; dir = 4 }, @@ -51531,7 +48569,6 @@ "bNF" = ( /obj/structure/lattice, /obj/structure/transit_tube/curved{ - tag = "icon-curved0 (WEST)"; icon_state = "curved0"; dir = 8 }, @@ -51540,11 +48577,9 @@ "bNG" = ( /obj/structure/lattice/catwalk, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -51553,11 +48588,9 @@ "bNH" = ( /obj/structure/lattice/catwalk, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -51620,7 +48653,6 @@ "bNN" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/clipboard, @@ -51639,7 +48671,6 @@ /area/crew_quarters/chief) "bNP" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -51721,7 +48752,6 @@ /area/engine/engineering) "bNW" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -51745,7 +48775,6 @@ /area/engine/engineering) "bNZ" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -51754,11 +48783,9 @@ /area/security/checkpoint/engineering) "bOa" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -51771,7 +48798,6 @@ /area/security/checkpoint/engineering) "bOb" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -51800,7 +48826,6 @@ "bOf" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/engineering{ @@ -51811,9 +48836,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/storage/tech) "bOg" = ( /obj/machinery/door/firedoor, @@ -51825,9 +48848,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/storage/primary) "bOh" = ( /obj/machinery/door/firedoor, @@ -51838,9 +48859,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/storage/primary) "bOi" = ( /obj/structure/sign/directions/science{ @@ -51855,9 +48874,8 @@ dir = 4; icon_state = "direction_bridge"; name = "command department"; - pixel_y = -8; - tag = "icon-direction_bridge" - }, + pixel_y = -8 + }, /turf/closed/wall, /area/storage/primary) "bOj" = ( @@ -51866,9 +48884,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/central) "bOk" = ( /obj/machinery/ai_status_display{ @@ -51930,7 +48946,6 @@ }) "bOo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -52053,7 +49068,6 @@ /obj/item/weapon/pen/fourcolor, /obj/item/weapon/stamp/captain, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -52110,17 +49124,15 @@ dir = 1; icon_state = "direction_bridge"; name = "command department"; - pixel_y = 0; - tag = "icon-direction_bridge" - }, + pixel_y = 0 + }, /obj/structure/sign/directions/engineering{ desc = "A direction sign, pointing out which way the Supply department is."; dir = 1; icon_state = "direction_supply"; name = "supply department"; - pixel_y = 8; - tag = "icon-direction_supply" - }, + pixel_y = 8 + }, /turf/closed/wall, /area/storage/tools) "bOG" = ( @@ -52163,7 +49175,6 @@ req_access_txt = "4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side{ @@ -52231,7 +49242,6 @@ /area/security/brig) "bOR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -52259,11 +49269,9 @@ /area/security/warden) "bOT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -52272,7 +49280,6 @@ "bOU" = ( /obj/machinery/computer/prisoner, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -52395,9 +49402,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/light/small{ dir = 4 }, @@ -52419,7 +49425,6 @@ pixel_y = 2 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -52428,11 +49433,9 @@ /area/ai_monitored/turret_protected/aisat_interior) "bPc" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -52486,7 +49489,6 @@ pixel_y = 2 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -52522,7 +49524,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bPl" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -52563,7 +49564,7 @@ name = "Antechamber Turret Control"; pixel_x = -32; pixel_y = 0; - req_access = list(65) + req_access_txt = "65" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -52589,7 +49590,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bPq" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -52671,7 +49671,6 @@ pixel_x = 0 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -52685,7 +49684,6 @@ "bPw" = ( /obj/structure/lattice, /obj/structure/transit_tube/diagonal{ - tag = "icon-diagonal (EAST)"; icon_state = "diagonal"; dir = 4 }, @@ -52797,7 +49795,6 @@ "bPE" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/cartridge/engineering{ @@ -52825,11 +49822,9 @@ /area/crew_quarters/chief) "bPG" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -52839,15 +49834,12 @@ /area/crew_quarters/chief) "bPH" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -52856,7 +49848,6 @@ req_access_txt = "56" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -52867,11 +49858,9 @@ /area/crew_quarters/chief) "bPI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -52881,11 +49870,9 @@ /area/crew_quarters/chief) "bPJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -52893,18 +49880,15 @@ /area/crew_quarters/chief) "bPK" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ name = "Chief Engineer" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -52912,7 +49896,6 @@ /area/crew_quarters/chief) "bPL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -52926,7 +49909,6 @@ /area/crew_quarters/chief) "bPM" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -52947,7 +49929,6 @@ /area/engine/engineering) "bPO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/device/radio/beacon, @@ -52967,7 +49948,6 @@ /area/engine/engineering) "bPQ" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -52976,7 +49956,6 @@ pixel_y = 32 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -52984,7 +49963,6 @@ /area/engine/engineering) "bPR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -52994,7 +49972,6 @@ pixel_y = 3 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -53011,7 +49988,6 @@ pixel_y = 25 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -53024,7 +50000,6 @@ pixel_y = 36 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /turf/open/floor/plasteel/red/side{ @@ -53033,7 +50008,6 @@ /area/security/checkpoint/engineering) "bPT" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -53043,7 +50017,6 @@ /area/security/checkpoint/engineering) "bPU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -53078,23 +50051,19 @@ /area/security/checkpoint/engineering) "bPW" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/neutral, /area/hallway/primary/port) "bPX" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow/corner{ @@ -53107,7 +50076,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -53120,7 +50088,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/corner{ @@ -53132,7 +50099,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow/corner{ @@ -53145,7 +50111,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow/corner{ @@ -53154,12 +50119,10 @@ /area/hallway/primary/port) "bQc" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow/corner{ @@ -53168,7 +50131,6 @@ /area/hallway/primary/port) "bQd" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53180,7 +50142,6 @@ /area/hallway/primary/port) "bQe" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53192,11 +50153,9 @@ /area/hallway/primary/port) "bQf" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -53206,7 +50165,6 @@ /area/hallway/primary/port) "bQg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -53224,7 +50182,6 @@ /area/hallway/primary/port) "bQh" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53238,7 +50195,6 @@ /area/hallway/primary/port) "bQi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -53248,11 +50204,9 @@ /area/hallway/primary/port) "bQj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -53263,7 +50217,6 @@ "bQk" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53279,11 +50232,9 @@ /area/hallway/primary/port) "bQl" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53293,7 +50244,6 @@ /area/hallway/primary/central) "bQm" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -53304,7 +50254,6 @@ /area/crew_quarters/heads) "bQo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -53351,7 +50300,6 @@ /area/tcommsat/server) "bQw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -53365,12 +50313,6 @@ dir = 8 }, /area/tcommsat/server) -"bQx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/tcommsat/server) "bQy" = ( /obj/machinery/computer/card, /obj/machinery/keycard_auth{ @@ -53395,7 +50337,6 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark/start{ @@ -53552,7 +50493,6 @@ /area/hallway/primary/starboard) "bQN" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -53591,7 +50531,6 @@ /area/hallway/primary/starboard) "bQQ" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -53654,7 +50593,6 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -53693,7 +50631,6 @@ /area/security/warden) "bQY" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -53717,9 +50654,8 @@ "bRa" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -53815,7 +50751,6 @@ on = 1 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/vault{ @@ -53824,16 +50759,13 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRi" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -53842,7 +50774,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/holopad, @@ -53855,7 +50786,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -53869,7 +50799,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -53884,7 +50813,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -53906,11 +50834,9 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -53920,11 +50846,9 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -53935,7 +50859,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -53943,11 +50866,9 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRq" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /mob/living/simple_animal/bot/secbot/pingsky, @@ -53955,7 +50876,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -53963,7 +50883,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRs" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -53975,7 +50894,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -53984,7 +50902,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -53998,7 +50915,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -54011,7 +50927,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -54025,7 +50940,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -54039,7 +50953,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -54050,11 +50963,9 @@ }) "bRz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -54066,7 +50977,6 @@ }) "bRA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -54081,7 +50991,6 @@ }) "bRB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -54092,7 +51001,6 @@ }) "bRC" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/holopad, @@ -54104,7 +51012,6 @@ }) "bRD" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -54125,7 +51032,6 @@ }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /obj/structure/transit_tube/station{ - tag = "icon-closed_station0 (WEST)"; icon_state = "closed_station0"; dir = 8 }, @@ -54158,7 +51064,6 @@ dir = 4 }, /obj/structure/transit_tube/junction{ - tag = "icon-junction0 (EAST)"; icon_state = "junction0"; dir = 4 }, @@ -54190,7 +51095,6 @@ dir = 4 }, /obj/structure/transit_tube/curved{ - tag = "icon-curved0 (WEST)"; icon_state = "curved0"; dir = 8 }, @@ -54249,7 +51153,6 @@ pixel_x = 24 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -54283,7 +51186,6 @@ /area/crew_quarters/chief) "bRS" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -54325,7 +51227,6 @@ /area/crew_quarters/chief) "bRY" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -54344,7 +51245,6 @@ /area/crew_quarters/chief) "bSa" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -54355,7 +51255,6 @@ /area/engine/engineering) "bSb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -54375,12 +51274,10 @@ /area/engine/engineering) "bSd" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -54389,15 +51286,12 @@ /area/engine/engineering) "bSe" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -54412,12 +51306,10 @@ /area/security/checkpoint/engineering) "bSf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral, @@ -54425,18 +51317,15 @@ "bSg" = ( /obj/structure/chair/office/dark, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, /area/security/checkpoint/engineering) "bSh" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral, @@ -54451,7 +51340,6 @@ /obj/item/weapon/book/manual/wiki/security_space_law, /obj/item/device/radio, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; icon_state = "red"; dir = 4 }, @@ -54468,7 +51356,6 @@ /area/hallway/primary/port) "bSk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/navbeacon{ @@ -54535,7 +51422,6 @@ /area/hallway/primary/central) "bSt" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/navbeacon{ @@ -54624,7 +51510,6 @@ /area/crew_quarters/heads) "bSA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -54663,7 +51548,7 @@ }, /area/tcommsat/server) "bSE" = ( -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 @@ -54671,7 +51556,7 @@ /area/tcommsat/server) "bSF" = ( /obj/machinery/telecomms/receiver/preset_right, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 @@ -54679,18 +51564,16 @@ /area/tcommsat/server) "bSG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/fans/tiny, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; dir = 5 }, /area/tcommsat/server) "bSH" = ( /obj/machinery/telecomms/receiver/preset_left, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 @@ -54721,7 +51604,6 @@ pixel_y = -26 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54792,14 +51674,12 @@ /area/hallway/primary/central) "bSR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ name = "lightsout" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/navbeacon{ @@ -54810,7 +51690,6 @@ /area/hallway/primary/central) "bSS" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54823,7 +51702,6 @@ "bST" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/glass{ @@ -54836,7 +51714,6 @@ /area/hallway/primary/starboard) "bSU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, @@ -54844,7 +51721,6 @@ "bSV" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, @@ -54855,14 +51731,12 @@ on = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, /area/hallway/primary/starboard) "bSX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -54873,29 +51747,24 @@ /area/hallway/primary/starboard) "bSY" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, /area/hallway/primary/starboard) "bSZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/neutral, /area/hallway/primary/starboard) "bTa" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54903,7 +51772,6 @@ /area/hallway/primary/starboard) "bTb" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment, @@ -54911,7 +51779,6 @@ /area/hallway/primary/starboard) "bTc" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -54923,11 +51790,9 @@ /area/hallway/primary/starboard) "bTd" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -54936,7 +51801,6 @@ "bTe" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -54947,7 +51811,6 @@ "bTf" = ( /obj/item/device/radio/beacon, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/navbeacon{ @@ -54962,11 +51825,9 @@ /area/hallway/primary/starboard) "bTg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -54974,15 +51835,13 @@ dir = 1; icon_state = "pipe-j1s"; name = "Security Junction"; - sortType = 7; - tag = "icon-pipe-j1s (NORTH)" - }, + sortType = 7 + }, /turf/open/floor/plasteel/red/corner, /area/hallway/primary/starboard) "bTh" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/glass_security{ @@ -55002,11 +51861,9 @@ /area/security/brig) "bTi" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55022,11 +51879,9 @@ /area/security/brig) "bTj" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -55044,7 +51899,6 @@ /area/security/brig) "bTk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55058,11 +51912,9 @@ /area/security/brig) "bTl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55087,9 +51939,8 @@ "bTn" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55114,11 +51965,9 @@ /area/security/warden) "bTp" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -55126,7 +51975,6 @@ /area/security/warden) "bTq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55139,15 +51987,12 @@ "bTr" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/security{ @@ -55164,7 +52009,6 @@ /area/ai_monitored/security/armory) "bTs" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55177,7 +52021,6 @@ /area/ai_monitored/security/armory) "bTt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55200,11 +52043,9 @@ pixel_y = -3 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -55213,7 +52054,6 @@ /area/ai_monitored/security/armory) "bTv" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -55236,7 +52076,6 @@ }, /obj/machinery/door/window/southright, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -55263,7 +52102,6 @@ "bTz" = ( /obj/structure/sign/nosmoking_2, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -55284,7 +52122,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -55316,9 +52153,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -55352,7 +52188,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bTG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -55367,7 +52202,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bTI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -55440,7 +52274,6 @@ }) "bTO" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -55472,7 +52305,6 @@ pixel_x = 0 }, /obj/structure/transit_tube/curved/flipped{ - tag = "icon-curved1 (NORTH)"; icon_state = "curved1"; dir = 1 }, @@ -55492,7 +52324,6 @@ dir = 8 }, /obj/structure/transit_tube/curved{ - tag = "icon-curved0 (EAST)"; icon_state = "curved0"; dir = 4 }, @@ -55604,7 +52435,6 @@ /area/crew_quarters/chief) "bUc" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -55618,11 +52448,9 @@ "bUd" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -55656,7 +52484,6 @@ "bUf" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -55680,7 +52507,6 @@ /area/engine/engineering) "bUi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -55714,7 +52540,6 @@ /area/security/checkpoint/engineering) "bUl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/computer/secure_data, @@ -55739,7 +52564,6 @@ /area/security/checkpoint/engineering) "bUn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -55752,7 +52576,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -55784,7 +52607,6 @@ /area/hallway/primary/port) "bUs" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -55852,7 +52674,6 @@ /area/hallway/primary/port) "bUy" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -55922,7 +52743,6 @@ /area/crew_quarters/heads) "bUG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -55933,7 +52753,6 @@ /area/crew_quarters/heads) "bUH" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -55952,7 +52771,6 @@ /turf/open/floor/plasteel/whiteblue/side{ dir = 9; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whiteblue (NORTHWEST)"; temperature = 80 }, /area/tcommsat/server) @@ -55961,7 +52779,6 @@ /turf/open/floor/plasteel/whitepurple/side{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whitehall (WEST)"; temperature = 80 }, /area/tcommsat/server) @@ -55973,7 +52790,6 @@ /area/tcommsat/server) "bUM" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/command{ @@ -55983,7 +52799,9 @@ req_access_txt = "61" }, /turf/open/floor/plasteel/vault{ - dir = 8 + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + temperature = 80 }, /area/tcommsat/server) "bUN" = ( @@ -55999,7 +52817,6 @@ /turf/open/floor/plasteel/darkred/side{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER"; temperature = 80 }, /area/tcommsat/server) @@ -56015,7 +52832,6 @@ req_access_txt = "20" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -56041,7 +52857,6 @@ /area/crew_quarters/captain/captains_quarters) "bUU" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -56078,7 +52893,6 @@ /area/hallway/primary/starboard) "bUX" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -56132,11 +52946,9 @@ /area/hallway/primary/starboard) "bVc" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -56177,7 +52989,6 @@ /area/hallway/primary/starboard) "bVg" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -56191,7 +53002,6 @@ /area/hallway/primary/starboard) "bVh" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -56227,26 +53037,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) -"bVk" = ( -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = -32; - pixel_y = -32; - tag = "icon-poster4_legit" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/turf/open/floor/plasteel/red/corner{ - dir = 8 - }, -/area/hallway/primary/starboard) "bVl" = ( /obj/machinery/holopad, /obj/effect/turf_decal/bot, @@ -56258,7 +53048,6 @@ /area/hallway/primary/starboard) "bVn" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -56271,7 +53060,6 @@ /area/security/brig) "bVo" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -56285,7 +53073,6 @@ /area/security/brig) "bVp" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/door/poddoor/preopen{ @@ -56297,7 +53084,6 @@ /area/security/brig) "bVq" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -56306,18 +53092,15 @@ /area/security/brig) "bVr" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/neutral, /area/security/brig) "bVs" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -56327,15 +53110,12 @@ "bVt" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/airlock/glass_security{ @@ -56346,11 +53126,9 @@ /area/security/warden) "bVu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -56358,11 +53136,9 @@ /area/security/warden) "bVv" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/button/door{ @@ -56403,7 +53179,6 @@ "bVx" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/security{ @@ -56427,7 +53202,6 @@ /area/ai_monitored/security/armory) "bVA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -56533,7 +53307,6 @@ /area/ai_monitored/turret_protected/aisat_interior) "bVJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -56571,9 +53344,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/porta_turret/ai, /turf/open/floor/plasteel/vault{ dir = 8 @@ -56622,26 +53394,9 @@ dir = 8 }, /area/ai_monitored/turret_protected/aisat_interior) -"bVQ" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 26 - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/ai_monitored/turret_protected/aisat_interior) "bVR" = ( /obj/structure/lattice, /obj/structure/transit_tube/curved{ - tag = "icon-curved0 (EAST)"; icon_state = "curved0"; dir = 4 }, @@ -56650,7 +53405,6 @@ "bVS" = ( /obj/structure/lattice, /obj/structure/transit_tube/curved/flipped{ - tag = "icon-curved1 (WEST)"; icon_state = "curved1"; dir = 8 }, @@ -56690,7 +53444,6 @@ "bVZ" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/engineering{ @@ -56701,9 +53454,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/engineering) "bWa" = ( /obj/structure/sign/radiation, @@ -56712,7 +53463,6 @@ /area/engine/engineering) "bWb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -56724,9 +53474,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bWc" = ( /obj/structure/cable/white, @@ -56747,19 +53495,16 @@ /area/hallway/primary/port) "bWe" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/yellow/side, /area/hallway/primary/port) "bWf" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -56778,9 +53523,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/port_maintenance) "bWi" = ( /turf/closed/wall, @@ -56827,7 +53570,6 @@ /area/hallway/primary/central) "bWo" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -56841,7 +53583,6 @@ "bWp" = ( /obj/machinery/computer/card, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -56850,14 +53591,12 @@ /area/crew_quarters/heads) "bWq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/wood, /area/crew_quarters/heads) "bWr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment, @@ -56865,11 +53604,9 @@ /area/crew_quarters/heads) "bWs" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/grimy, @@ -56891,7 +53628,6 @@ /turf/open/floor/plasteel/whiteblue/side{ dir = 10; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whiteblue (SOUTHWEST)"; temperature = 80 }, /area/tcommsat/server) @@ -56900,7 +53636,6 @@ /turf/open/floor/plasteel/whitepurple/side{ dir = 6; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-whitepurple (SOUTHEAST)"; temperature = 80 }, /area/tcommsat/server) @@ -56908,7 +53643,6 @@ /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) @@ -56920,19 +53654,16 @@ /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) "bWz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) @@ -56943,7 +53674,6 @@ /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) @@ -56960,7 +53690,6 @@ /turf/open/floor/plasteel/darkred/side{ dir = 6; initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER"; temperature = 80 }, /area/tcommsat/server) @@ -56978,7 +53707,6 @@ pixel_y = 26 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -57063,7 +53791,6 @@ req_access_txt = "42" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -57085,7 +53812,6 @@ "bWT" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock{ @@ -57166,9 +53892,8 @@ icon_state = "doors"; name = "WARNING: BLAST DOORS"; pixel_x = 0; - pixel_y = -32; - tag = "icon-doors" - }, + pixel_y = -32 + }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, @@ -57222,7 +53947,6 @@ /area/security/warden) "bXf" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57276,7 +54000,6 @@ "bXk" = ( /obj/structure/chair/office/dark, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -57324,7 +54047,6 @@ /area/ai_monitored/security/armory) "bXn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -57347,7 +54069,6 @@ /area/engine/engineering) "bXp" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/grille, @@ -57356,7 +54077,6 @@ /area/engine/engineering) "bXq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/grille, @@ -57365,7 +54085,6 @@ /area/engine/engineering) "bXr" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/grille, @@ -57376,7 +54095,6 @@ /area/engine/engineering) "bXs" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/grille, @@ -57385,11 +54103,9 @@ /area/engine/engineering) "bXt" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/grille, @@ -57398,7 +54114,6 @@ /area/engine/engineering) "bXu" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/grille, @@ -57445,7 +54160,6 @@ "bXz" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -57459,7 +54173,6 @@ /area/engine/engineering) "bXA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -57480,7 +54193,6 @@ pixel_y = 26 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -57509,16 +54221,13 @@ /area/engine/engineering) "bXD" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/sortjunction{ @@ -57532,7 +54241,6 @@ /area/engine/engineering) "bXE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -57546,14 +54254,12 @@ /area/engine/engineering) "bXF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/firealarm{ pixel_y = 24 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -57564,19 +54270,15 @@ /area/engine/engineering) "bXG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -57587,11 +54289,9 @@ /area/engine/engineering) "bXH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -57600,27 +54300,24 @@ /area/engine/engineering) "bXI" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/power/smes/engineering{ charge = 2e+006 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/engineering) "bXJ" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/smes/engineering{ charge = 2e+006 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/engineering) "bXK" = ( /obj/machinery/door/airlock/maintenance_hatch{ @@ -57629,15 +54326,12 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/port_maintenance) "bXL" = ( /obj/effect/decal/cleanable/dirt, @@ -57663,7 +54357,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /turf/open/floor/plating, @@ -57738,7 +54431,6 @@ /area/library) "bXX" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -57753,7 +54445,6 @@ /area/hallway/primary/central) "bXY" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -57786,7 +54477,6 @@ /area/crew_quarters/heads) "bYc" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -57801,7 +54491,6 @@ /area/crew_quarters/heads) "bYe" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/camera{ @@ -57818,7 +54507,6 @@ /area/tcommsat/server) "bYf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -57829,7 +54517,6 @@ /area/tcommsat/server) "bYg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -57842,66 +54529,47 @@ /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) "bYh" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) "bYi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) "bYj" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/folder/yellow, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 }, /area/tcommsat/server) -"bYk" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) "bYl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -57917,13 +54585,11 @@ /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) "bYm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -57934,7 +54600,6 @@ /area/tcommsat/server) "bYn" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/vault{ @@ -57956,7 +54621,6 @@ /area/crew_quarters/captain/captains_quarters) "bYp" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -57973,7 +54637,6 @@ /area/crew_quarters/captain/captains_quarters) "bYr" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -58003,7 +54666,6 @@ layer = 4.1 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -58041,22 +54703,6 @@ }, /turf/open/floor/plasteel/vault, /area/crew_quarters/courtroom) -"bYA" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/machinery/camera{ - c_tag = "Courtroom - Fore"; - dir = 2; - name = "security camera" - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) "bYB" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -58107,7 +54753,6 @@ pixel_y = 26 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -58149,7 +54794,6 @@ /area/lawoffice) "bYK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -58169,9 +54813,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /turf/open/floor/wood, /area/lawoffice) "bYN" = ( @@ -58205,7 +54848,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -58215,7 +54857,6 @@ /area/security/brig) "bYQ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -58241,34 +54882,6 @@ dir = 4 }, /area/security/brig) -"bYS" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/machinery/door/window/brigdoor/northright{ - name = "Warden's Desk"; - req_access_txt = "3" - }, -/obj/machinery/door/window/southright{ - name = "Warden's Desk" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/pen, -/obj/item/weapon/poster/legit{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/weapon/poster/legit, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/security/warden) "bYT" = ( /obj/machinery/door/poddoor{ id = "armouryaccess"; @@ -58277,9 +54890,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/ai_monitored/security/armory) "bYU" = ( /obj/structure/table/reinforced, @@ -58327,7 +54938,6 @@ /area/ai_monitored/turret_protected/ai_upload) "bZa" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -58380,7 +54990,6 @@ /area/engine/engineering) "bZh" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/grille, @@ -58391,7 +55000,6 @@ /area/engine/engineering) "bZi" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/grille, @@ -58402,7 +55010,6 @@ /area/engine/engineering) "bZj" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -58415,7 +55022,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -58426,7 +55032,6 @@ "bZl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/fans/tiny, @@ -58436,7 +55041,6 @@ /area/engine/engineering) "bZm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -58447,14 +55051,12 @@ "bZn" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, /area/engine/engineering) "bZo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -58466,21 +55068,18 @@ /area/engine/engineering) "bZp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, /area/engine/engineering) "bZq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow, /area/engine/engineering) "bZr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -58492,12 +55091,10 @@ "bZs" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -58508,7 +55105,6 @@ /area/engine/engineering) "bZt" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -58524,16 +55120,13 @@ "bZv" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -58544,11 +55137,9 @@ "bZw" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/airlock/glass_engineering{ @@ -58556,7 +55147,6 @@ req_access_txt = "32" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -58571,7 +55161,6 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -58590,7 +55179,6 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -58617,7 +55205,6 @@ pixel_x = 26 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -58642,7 +55229,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -58662,7 +55248,6 @@ /area/maintenance/fpmaint2/port_maintenance) "bZF" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -58691,7 +55276,6 @@ /area/library) "bZI" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -58749,7 +55333,6 @@ /area/library) "bZO" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -58773,7 +55356,6 @@ /area/hallway/primary/central) "bZR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -58786,15 +55368,12 @@ /area/crew_quarters/heads) "bZS" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -58807,7 +55386,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -58837,7 +55415,6 @@ /area/tcommsat/server) "bZW" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/vault{ @@ -58849,15 +55426,13 @@ "bZX" = ( /obj/machinery/telecomms/broadcaster/preset_left, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 @@ -58865,33 +55440,28 @@ /area/tcommsat/server) "bZY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) "bZZ" = ( /obj/machinery/message_server, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/general/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 @@ -58899,70 +55469,50 @@ /area/tcommsat/server) "caa" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) "cab" = ( /obj/machinery/telecomms/hub/preset, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 }, /area/tcommsat/server) -"cac" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) "cad" = ( /obj/machinery/blackbox_recorder, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/general/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 @@ -58971,15 +55521,13 @@ "cae" = ( /obj/machinery/telecomms/broadcaster/preset_right, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 @@ -58987,16 +55535,13 @@ /area/tcommsat/server) "caf" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/power/terminal{ - tag = "icon-term (EAST)"; icon_state = "term"; dir = 4 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /turf/open/floor/plasteel/vault{ @@ -59033,7 +55578,6 @@ icon_state = "comfychair" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/landmark/start{ @@ -59047,7 +55591,6 @@ /area/crew_quarters/captain/captains_quarters) "caj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -59064,11 +55607,9 @@ "cak" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -59080,7 +55621,6 @@ /area/crew_quarters/captain/captains_quarters) "cal" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -59095,7 +55635,6 @@ req_access_txt = "20" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/grimy, @@ -59164,7 +55703,6 @@ /area/crew_quarters/courtroom) "cau" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -59175,7 +55713,6 @@ /area/crew_quarters/courtroom) "cav" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59185,11 +55722,9 @@ /area/crew_quarters/courtroom) "caw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -59197,7 +55732,6 @@ /area/crew_quarters/courtroom) "cax" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59210,7 +55744,6 @@ "cay" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -59225,11 +55758,9 @@ /area/lawoffice) "caz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59239,7 +55770,6 @@ /area/lawoffice) "caA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59250,11 +55780,9 @@ "caB" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59265,14 +55793,12 @@ /area/lawoffice) "caC" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark/start{ name = "Lawyer" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -59290,7 +55816,6 @@ "caE" = ( /obj/machinery/computer/security, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side{ @@ -59315,7 +55840,6 @@ "caG" = ( /obj/machinery/computer/secure_data, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/button/flasher{ @@ -59364,7 +55888,6 @@ /area/security/brig) "caJ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -59374,11 +55897,9 @@ /area/security/brig) "caK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/landmark{ @@ -59392,7 +55913,6 @@ "caL" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/glass_security{ @@ -59406,7 +55926,6 @@ /area/security/brig) "caM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59418,7 +55937,6 @@ /area/security/brig) "caN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59430,11 +55948,9 @@ /area/security/brig) "caO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59446,7 +55962,6 @@ /area/security/brig) "caP" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -59490,7 +56005,6 @@ /area/security/brig) "caS" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -59537,19 +56051,17 @@ }, /area/ai_monitored/turret_protected/ai_upload) "caX" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "caY" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "caZ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -59564,15 +56076,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "cbb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "cbc" = ( /obj/structure/table/reinforced, @@ -59605,9 +56116,8 @@ c_tag = "Containment - Fore Starboard"; dir = 8; icon_state = "camera"; - network = list("Singularity"); - tag = "icon-camera (WEST)" - }, + network = list("Singularity") + }, /turf/open/floor/plating/airless, /area/engine/engineering) "cbf" = ( @@ -59634,7 +56144,6 @@ /area/engine/engineering) "cbi" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -59645,7 +56154,6 @@ /area/engine/engineering) "cbj" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -59659,12 +56167,10 @@ /area/engine/engineering) "cbk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -59689,7 +56195,6 @@ /area/engine/engineering) "cbm" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -59703,7 +56208,6 @@ /area/engine/engineering) "cbn" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -59713,7 +56217,6 @@ icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -59724,13 +56227,11 @@ "cbo" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -59809,7 +56310,6 @@ "cbt" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -59827,7 +56327,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cbw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -59857,7 +56356,6 @@ /area/library) "cbz" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -59912,7 +56410,6 @@ /area/crew_quarters/heads) "cbG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -59936,7 +56433,6 @@ }, /obj/item/weapon/storage/lockbox/loyalty, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -59944,7 +56440,6 @@ /area/crew_quarters/heads) "cbJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -59965,17 +56460,15 @@ /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) "cbM" = ( /obj/machinery/ntnet_relay, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 @@ -59991,7 +56484,6 @@ /area/tcommsat/server) "cbO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -60023,7 +56515,6 @@ }, /obj/item/weapon/reagent_containers/food/drinks/flask/gold, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -60054,7 +56545,6 @@ /area/crew_quarters/captain/captains_quarters) "cbT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -60075,7 +56565,6 @@ pixel_y = -26 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -60121,7 +56610,6 @@ /area/crew_quarters/courtroom) "cbZ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -60176,7 +56664,6 @@ /area/crew_quarters/courtroom) "cce" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -60185,7 +56672,6 @@ /area/crew_quarters/courtroom) "ccf" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -60230,14 +56716,12 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/newscaster{ pixel_x = -32 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -60261,7 +56745,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -60273,11 +56756,9 @@ /area/lawoffice) "ccm" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -60296,7 +56777,6 @@ /area/lawoffice) "cco" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/table/reinforced, @@ -60311,7 +56791,6 @@ /area/security/brig) "ccp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -60319,7 +56798,6 @@ /area/security/brig) "ccq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/filingcabinet/chestdrawer, @@ -60340,7 +56818,6 @@ /area/security/brig) "ccs" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -60348,15 +56825,12 @@ /area/security/brig) "cct" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/westright{ @@ -60370,11 +56844,9 @@ /area/security/brig) "ccu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -60382,26 +56854,21 @@ /area/security/brig) "ccv" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/neutral, /area/security/brig) "ccw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -60410,7 +56877,6 @@ /area/security/brig) "ccx" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -60446,11 +56912,9 @@ /area/security/brig) "ccA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/landmark/start{ @@ -60465,7 +56929,6 @@ /area/security/brig) "ccB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -60476,7 +56939,6 @@ "ccC" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/bot, @@ -60484,7 +56946,6 @@ /area/security/brig) "ccD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -60498,7 +56959,6 @@ /area/security/brig) "ccE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, @@ -60513,7 +56973,6 @@ pixel_y = 32 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side{ @@ -60537,11 +56996,9 @@ /area/space) "ccH" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -60554,7 +57011,6 @@ /area/ai_monitored/turret_protected/ai_upload) "ccI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -60575,7 +57031,6 @@ /area/ai_monitored/turret_protected/ai_upload) "ccJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -60584,23 +57039,19 @@ /area/ai_monitored/turret_protected/ai_upload) "ccK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "ccL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -60612,15 +57063,12 @@ /area/ai_monitored/turret_protected/ai_upload) "ccM" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, @@ -60633,11 +57081,9 @@ /area/ai_monitored/turret_protected/ai_upload) "ccN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -60647,15 +57093,13 @@ /area/ai_monitored/turret_protected/ai_upload) "ccO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "ccP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -60680,11 +57124,9 @@ /area/ai_monitored/turret_protected/ai_upload) "ccQ" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -60744,9 +57186,8 @@ /turf/open/floor/plasteel/yellow/side{ dir = 1; icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/engine/engineering) "ccX" = ( /turf/open/floor/plasteel/yellow/side{ @@ -60771,7 +57212,6 @@ /area/engine/engineering) "cda" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -60783,14 +57223,12 @@ "cdb" = ( /turf/open/floor/plasteel/yellow/side{ dir = 9; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTHWEST)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/engine/engineering) "cdc" = ( /obj/machinery/vending/engivend, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/turf_decal/delivery, @@ -60801,7 +57239,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -60819,7 +57256,6 @@ pixel_y = -32 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/camera{ @@ -60850,7 +57286,6 @@ "cdi" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -60961,7 +57396,6 @@ "cdx" = ( /obj/machinery/computer/security/mining, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -60971,7 +57405,6 @@ "cdy" = ( /obj/structure/chair/office/dark, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -60990,10 +57423,9 @@ /area/crew_quarters/heads) "cdA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ initial_gas_mix = "n2=100;TEMP=80"; name = "Mainframe Base"; temperature = 80 @@ -61004,7 +57436,6 @@ /turf/open/floor/plasteel/brown{ dir = 9; initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER"; temperature = 80 }, /area/tcommsat/server) @@ -61013,7 +57444,6 @@ /turf/open/floor/plasteel/green/side{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER"; temperature = 80 }, /area/tcommsat/server) @@ -61023,27 +57453,14 @@ /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) -"cdE" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) "cdF" = ( /obj/machinery/light/small, /turf/open/floor/plasteel/vault{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-vault (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) @@ -61052,7 +57469,6 @@ /turf/open/floor/plasteel/brown{ dir = 9; initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER"; temperature = 80 }, /area/tcommsat/server) @@ -61061,7 +57477,6 @@ /turf/open/floor/plasteel/neutral/side{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-neutral (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) @@ -61073,7 +57488,6 @@ req_access_txt = "20" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -61081,9 +57495,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/captain/captains_quarters) "cdJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -61092,9 +57504,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /turf/open/floor/plasteel/neutral/corner, /area/hallway/primary/central) "cdK" = ( @@ -61143,7 +57554,6 @@ /area/crew_quarters/courtroom) "cdP" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -61167,7 +57577,6 @@ /obj/structure/table/wood, /obj/item/weapon/paper_bin, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -61227,7 +57636,6 @@ /area/lawoffice) "cdW" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -61246,30 +57654,8 @@ }, /turf/open/floor/wood, /area/lawoffice) -"cdY" = ( -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/structure/table/reinforced, -/obj/item/weapon/paper_bin, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/weapon/pen, -/obj/structure/sign/poster{ - icon_state = "poster29_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster29_legit" - }, -/turf/open/floor/plasteel/red/side{ - dir = 10 - }, -/area/security/brig) "cdZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/sign/nanotrasen{ @@ -61289,11 +57675,9 @@ /area/security/brig) "cea" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/extinguisher_cabinet{ @@ -61313,11 +57697,9 @@ req_access_txt = "63" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -61329,7 +57711,6 @@ /area/security/brig) "cec" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -61339,7 +57720,6 @@ /area/security/brig) "ced" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/chair{ @@ -61359,7 +57739,6 @@ /area/security/brig) "cef" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -61369,7 +57748,6 @@ /area/security/brig) "ceg" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -61405,30 +57783,12 @@ dir = 6 }, /area/security/brig) -"cej" = ( -/obj/structure/closet/wardrobe/red, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/item/clothing/under/rank/security/grey, -/obj/item/clothing/under/rank/security/grey, -/obj/item/clothing/under/rank/security/grey, -/obj/structure/cable/white{ - tag = "icon-1-4"; - icon_state = "1-4" - }, -/obj/item/weapon/storage/backpack/satchel/sec, -/turf/open/floor/plasteel/red, -/area/security/brig) "cek" = ( /obj/structure/closet/secure_closet/security/sec, /obj/machinery/status_display{ pixel_y = -32 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side{ @@ -61440,11 +57800,9 @@ /obj/machinery/recharger, /obj/machinery/light, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side, @@ -61455,7 +57813,6 @@ pixel_y = -32 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side, @@ -61464,7 +57821,6 @@ /obj/structure/table/reinforced, /obj/machinery/recharger, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/red/side, @@ -61499,15 +57855,13 @@ /area/ai_monitored/turret_protected/ai_upload) "cer" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "ces" = ( /obj/machinery/computer/upload/ai, @@ -61517,7 +57871,6 @@ /area/ai_monitored/turret_protected/ai_upload) "cet" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -61532,11 +57885,10 @@ /area/ai_monitored/turret_protected/ai_upload) "cev" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "cew" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -61554,9 +57906,8 @@ c_tag = "Containment - Fore Port"; dir = 4; icon_state = "camera"; - network = list("Singularity"); - tag = "icon-camera (EAST)" - }, + network = list("Singularity") + }, /turf/open/space, /area/space) "cey" = ( @@ -61711,7 +58062,6 @@ "ceP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -61764,7 +58114,6 @@ /area/hallway/primary/central) "ceW" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -61775,17 +58124,6 @@ }, /turf/open/floor/plasteel/neutral/corner, /area/hallway/primary/central) -"ceX" = ( -/obj/machinery/vending/cola/random, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/hallway/primary/central) "ceY" = ( /obj/structure/table/wood, /obj/machinery/keycard_auth{ @@ -61815,28 +58153,15 @@ "cfb" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads) -"cfc" = ( -/obj/machinery/photocopier, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster17_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/crew_quarters/heads) "cfd" = ( /obj/machinery/telecomms/server/presets/supply, /turf/open/floor/plasteel/brown{ dir = 9; initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER"; temperature = 80 }, /area/tcommsat/server) @@ -61845,13 +58170,11 @@ /turf/open/floor/plasteel/green/side{ dir = 6; initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER"; temperature = 80 }, /area/tcommsat/server) "cff" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/command{ @@ -61861,7 +58184,9 @@ req_access_txt = "61" }, /turf/open/floor/plasteel/vault{ - dir = 8 + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + temperature = 80 }, /area/tcommsat/server) "cfg" = ( @@ -61869,7 +58194,6 @@ /turf/open/floor/plasteel/brown{ dir = 9; initial_gas_mix = "n2=100;TEMP=80"; - tag = "SERVER"; temperature = 80 }, /area/tcommsat/server) @@ -61878,7 +58202,6 @@ /turf/open/floor/plasteel/neutral/side{ dir = 5; initial_gas_mix = "n2=100;TEMP=80"; - tag = "icon-neutral (NORTHEAST)"; temperature = 80 }, /area/tcommsat/server) @@ -61902,7 +58225,6 @@ }) "cfl" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/camera/motion{ @@ -61927,7 +58249,6 @@ }) "cfm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -61943,11 +58264,9 @@ }) "cfn" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -61976,7 +58295,6 @@ }) "cfq" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -62001,7 +58319,6 @@ /area/crew_quarters/courtroom) "cft" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -62047,7 +58364,6 @@ /area/crew_quarters/courtroom) "cfz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -62104,24 +58420,8 @@ /obj/item/weapon/paper_bin, /turf/open/floor/wood, /area/lawoffice) -"cfF" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = -32; - tag = "icon-poster22_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/wood, -/area/lawoffice) "cfG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -62139,13 +58439,11 @@ /area/lawoffice) "cfI" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -62153,15 +58451,12 @@ /area/security/brig) "cfJ" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -62170,20 +58465,16 @@ req_access_txt = "63" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/brig) "cfK" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -62233,25 +58524,23 @@ /area/ai_monitored/turret_protected/ai_upload) "cfO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "cfP" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/ai_slipper{ uses = 10 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "cfQ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "cfR" = ( /obj/machinery/status_display{ @@ -62325,9 +58614,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "" - }, + icon_state = "1-4" + }, /obj/structure/cable{ d1 = 2; d2 = 4; @@ -62377,12 +58665,10 @@ "cgd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -62392,7 +58678,6 @@ /area/engine/engineering) "cge" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/yellow/side{ @@ -62401,7 +58686,6 @@ /area/engine/engineering) "cgf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -62412,7 +58696,6 @@ "cgg" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -62453,7 +58736,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -62473,7 +58755,6 @@ /area/library) "cgn" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -62503,7 +58784,6 @@ /area/library) "cgr" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -62551,7 +58831,6 @@ /area/crew_quarters/heads) "cgw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -62570,18 +58849,6 @@ temperature = 80 }, /area/tcommsat/server) -"cgy" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/fans/tiny, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; - dir = 5 - }, -/area/tcommsat/server) "cgz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, @@ -62590,7 +58857,6 @@ }) "cgA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -62603,7 +58869,6 @@ dir = 2 }, /turf/open/floor/plating{ - tag = "icon-plating_warn_side (WEST)"; icon_state = "plating_warn_side" }, /area/teleporter{ @@ -62611,7 +58876,6 @@ }) "cgB" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -62678,7 +58942,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -62710,7 +58973,6 @@ /area/crew_quarters/courtroom) "cgL" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -62721,7 +58983,6 @@ "cgM" = ( /obj/structure/table/wood, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -62750,7 +59011,6 @@ /area/lawoffice) "cgQ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -62763,7 +59023,6 @@ dir = 2 }, /turf/open/floor/plating{ - tag = "icon-plating_warn_side (EAST)"; icon_state = "plating_warn_side" }, /area/lawoffice) @@ -62846,11 +59105,9 @@ /area/security/range) "cgZ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -62946,7 +59203,6 @@ /area/ai_monitored/turret_protected/ai_upload) "chk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/flasher{ @@ -62960,10 +59216,9 @@ /area/ai_monitored/turret_protected/ai_upload) "chl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "chm" = ( /obj/machinery/flasher{ @@ -62996,36 +59251,6 @@ }, /turf/open/floor/plating/airless, /area/space) -"chp" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plating/airless, -/area/space) -"chq" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/space) -"chr" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plating/airless, -/area/space) "chs" = ( /obj/structure/cable{ d1 = 1; @@ -63108,25 +59333,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/engine/engineering) -"chB" = ( -/obj/structure/closet/secure_closet/engineering_personal, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/requests_console{ - department = "Engineering"; - departmentType = 0; - name = "Engineering RC"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster16_legit" - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/engine/engineering) "chC" = ( /obj/machinery/shieldgen, /obj/effect/decal/cleanable/dirt, @@ -63179,7 +59385,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plating, @@ -63189,7 +59394,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -63200,7 +59404,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -63212,7 +59415,6 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -63220,20 +59422,16 @@ "chL" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/turf_decal/delivery, @@ -63245,7 +59443,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -63258,7 +59455,6 @@ /area/library) "chN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -63268,7 +59464,6 @@ /area/library) "chO" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -63279,7 +59474,6 @@ /area/library) "chP" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -63335,7 +59529,6 @@ /area/crew_quarters/heads) "chY" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment, @@ -63343,11 +59536,9 @@ /area/crew_quarters/heads) "chZ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -63374,7 +59565,6 @@ /area/tcommsat/server) "cic" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -63426,7 +59616,6 @@ pixel_y = 28 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/disposalpipe/segment{ @@ -63454,7 +59643,6 @@ }) "cii" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -63548,7 +59736,6 @@ name = "Assistant" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -63576,7 +59763,6 @@ /area/crew_quarters/courtroom) "cis" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side, @@ -63606,7 +59792,6 @@ "ciw" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/landmark{ @@ -63623,7 +59808,6 @@ "cix" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -63635,7 +59819,6 @@ /area/maintenance/starboard) "ciy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -63647,15 +59830,12 @@ "ciz" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -63667,7 +59847,6 @@ /area/maintenance/starboard) "ciA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/light/small{ @@ -63685,7 +59864,6 @@ /area/maintenance/starboard) "ciB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -63698,7 +59876,6 @@ /area/maintenance/starboard) "ciC" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark{ @@ -63715,7 +59892,6 @@ "ciD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -63730,7 +59906,6 @@ "ciE" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -63744,7 +59919,6 @@ "ciF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -63757,15 +59931,12 @@ /area/maintenance/starboard) "ciG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -63793,7 +59964,6 @@ /area/security/range) "ciI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -63815,19 +59985,15 @@ /area/security/range) "ciJ" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -63839,7 +60005,6 @@ /area/security/range) "ciK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -63858,7 +60023,6 @@ /area/security/range) "ciL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/westright{ @@ -63869,14 +60033,12 @@ /area/security/range) "ciM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, /area/security/range) "ciN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -63887,11 +60049,9 @@ /area/security/range) "ciO" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/target/syndicate, @@ -63901,7 +60061,6 @@ /area/security/range) "ciP" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -63959,7 +60118,6 @@ /area/ai_monitored/turret_protected/ai_upload) "ciT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/table/reinforced, @@ -64027,9 +60185,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "" - }, + icon_state = "1-4" + }, /obj/structure/cable{ d1 = 1; d2 = 2; @@ -64069,9 +60226,7 @@ dir = 2 }, /obj/structure/barricade/wooden, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/engineering) "cjc" = ( /obj/machinery/requests_console{ @@ -64110,7 +60265,6 @@ "cjg" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -64122,7 +60276,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -64146,11 +60299,9 @@ /area/library) "cjk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -64203,9 +60354,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /turf/open/floor/plasteel/grimy, /area/library) "cjt" = ( @@ -64249,7 +60399,6 @@ /area/crew_quarters/heads) "cjx" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -64260,7 +60409,6 @@ /area/crew_quarters/heads) "cjy" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -64268,11 +60416,9 @@ /area/crew_quarters/heads) "cjz" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -64316,7 +60462,6 @@ /area/tcommsat/server) "cjE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -64370,7 +60515,6 @@ }) "cjI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -64389,7 +60533,6 @@ "cjK" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -64406,7 +60549,6 @@ }) "cjL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -64423,15 +60565,12 @@ }) "cjM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -64445,7 +60584,6 @@ }) "cjN" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -64527,7 +60665,6 @@ /area/crew_quarters/courtroom) "cjU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -64539,7 +60676,6 @@ /area/crew_quarters/courtroom) "cjV" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -64559,7 +60695,6 @@ "cjY" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -64579,7 +60714,6 @@ /obj/structure/girder, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -64631,7 +60765,6 @@ "ckg" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -64640,7 +60773,6 @@ "ckh" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -64665,7 +60797,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/effect/decal/cleanable/dirt, @@ -64675,11 +60806,9 @@ /area/security/range) "ckk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -64761,7 +60890,6 @@ /area/security/range) "ckr" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -64936,7 +61064,6 @@ "ckL" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -64952,21 +61079,18 @@ pixel_y = 3 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /turf/open/floor/wood, /area/library) "ckN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/wood, /area/library) "ckO" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -64993,7 +61117,6 @@ name = "Librarian" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -65039,7 +61162,6 @@ "ckY" = ( /obj/machinery/disposal/bin, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/trunk{ @@ -65064,7 +61186,6 @@ pixel_y = -26 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -65098,7 +61219,6 @@ /obj/machinery/light, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -65109,7 +61229,6 @@ /area/tcommsat/server) "cle" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -65156,7 +61275,6 @@ }) "cli" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -65192,7 +61310,6 @@ }) "cll" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -65222,7 +61339,6 @@ }) "cln" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -65276,14 +61392,12 @@ /area/crew_quarters/courtroom) "clt" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/neutral/side, /area/crew_quarters/courtroom) "clu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side, @@ -65296,7 +61410,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /turf/open/floor/plasteel/neutral/side, @@ -65307,16 +61420,13 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/locker) "clx" = ( /turf/closed/wall, @@ -65332,7 +61442,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -65340,9 +61449,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/starboard) "clA" = ( /obj/structure/plasticflaps{ @@ -65363,15 +61470,12 @@ req_access_txt = "63" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/range) "clC" = ( /obj/structure/cable/white, @@ -65414,29 +61518,12 @@ /obj/structure/lattice, /turf/open/space, /area/space) -"clI" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/space) "clJ" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 }, /turf/open/floor/plating/airless, /area/space) -"clK" = ( -/obj/machinery/the_singularitygen, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/space) "clL" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -65445,7 +61532,6 @@ /area/space) "clM" = ( /obj/structure/cable{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -65457,12 +61543,6 @@ "clN" = ( /turf/open/floor/plating, /area/engine/engineering) -"clO" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plating, -/area/engine/engineering) "clP" = ( /obj/structure/cable, /turf/open/floor/plating, @@ -65472,9 +61552,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "" - }, + icon_state = "1-4" + }, /turf/open/floor/plating, /area/engine/engineering) "clR" = ( @@ -65543,11 +61622,9 @@ /area/engine/engineering) "clW" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -65558,7 +61635,6 @@ /area/engine/engineering) "clX" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -65573,7 +61649,6 @@ name = "Engineering Secure Storage Lockdown" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -65585,7 +61660,6 @@ "clZ" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -65598,7 +61672,6 @@ /obj/machinery/shieldgen, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -65608,7 +61681,6 @@ "cmb" = ( /obj/machinery/field/generator, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -65619,7 +61691,6 @@ /obj/machinery/field/generator, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -65649,7 +61720,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cmh" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -65684,7 +61754,6 @@ /area/library) "cmn" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -65720,7 +61789,6 @@ /area/crew_quarters/heads) "cms" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -65743,7 +61811,6 @@ }) "cmu" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -65761,7 +61828,6 @@ }) "cmw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -65775,9 +61841,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/bridge/meeting_room{ name = "\improper Command Hallway" }) @@ -65791,9 +61855,7 @@ dir = 2 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/teleporter{ name = "\improper Teleporter Room" }) @@ -65812,9 +61874,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/teleporter{ name = "\improper Teleporter Room" }) @@ -65827,9 +61887,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/teleporter{ name = "\improper Teleporter Room" }) @@ -65916,20 +61974,8 @@ /obj/item/weapon/pen, /turf/open/floor/plasteel/vault, /area/crew_quarters/courtroom) -"cmK" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/briefcase, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/courtroom) "cmL" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -65958,7 +62004,6 @@ /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/machinery/portable_atmospherics/scrubber, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTH)"; icon_state = "escape"; dir = 1 }, @@ -65978,7 +62023,6 @@ /area/maintenance/starboard) "cmR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -65992,7 +62036,6 @@ /area/maintenance/starboard) "cmT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -66008,9 +62051,8 @@ "cmV" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -66021,9 +62063,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 1 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (NORTH)" - }, +/turf/open/floor/plasteel, /area/maintenance/starboard) "cmX" = ( /turf/closed/wall, @@ -66098,9 +62138,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "90Curve" - }, + icon_state = "1-4" + }, /obj/structure/cable{ d1 = 2; d2 = 4; @@ -66138,38 +62177,6 @@ /obj/structure/barricade/wooden, /turf/open/floor/plating, /area/engine/engineering) -"cni" = ( -/obj/structure/particle_accelerator/particle_emitter/center{ - tag = "icon-emitter_center (WEST)"; - icon_state = "emitter_center"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cnj" = ( -/obj/structure/particle_accelerator/power_box{ - tag = "icon-power_box (WEST)"; - icon_state = "power_box"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cnk" = ( -/obj/structure/particle_accelerator/fuel_chamber{ - tag = "icon-fuel_chamber (WEST)"; - icon_state = "fuel_chamber"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"cnl" = ( -/obj/structure/particle_accelerator/end_cap{ - tag = "icon-end_cap (WEST)"; - icon_state = "end_cap"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) "cnm" = ( /obj/machinery/light{ dir = 4; @@ -66212,7 +62219,6 @@ "cnp" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable{ @@ -66226,11 +62232,9 @@ /area/engine/engineering) "cnq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -66269,18 +62273,14 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/engine/engineering) "cnv" = ( /obj/effect/decal/cleanable/oil, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/engine/engineering) "cnw" = ( /obj/effect/decal/cleanable/dirt, @@ -66298,9 +62298,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/engineering) "cnx" = ( /obj/machinery/light{ @@ -66369,11 +62367,9 @@ "cnD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -66407,7 +62403,6 @@ /area/library) "cnG" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -66425,18 +62420,15 @@ dir = 8; icon_state = "nboard00"; pixel_x = 32; - pixel_y = 0; - tag = "icon-nboard00 (WEST)" - }, + pixel_y = 0 + }, /turf/open/floor/plasteel/grimy, /area/library) "cnJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -66475,7 +62467,6 @@ }) "cnN" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -66487,7 +62478,6 @@ }) "cnO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -66523,7 +62513,6 @@ }) "cnR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -66547,9 +62536,8 @@ }, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /turf/open/floor/plasteel/neutral/corner{ dir = 1 }, @@ -66558,7 +62546,6 @@ }) "cnT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -66595,7 +62582,6 @@ }) "cnW" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -66611,7 +62597,6 @@ }) "cnX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -66702,14 +62687,12 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, /area/hallway/primary/central) "cof" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -66736,20 +62719,6 @@ dir = 5 }, /area/crew_quarters/courtroom) -"coi" = ( -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/crew_quarters/courtroom) "coj" = ( /obj/machinery/door/airlock{ name = "Jury"; @@ -66815,7 +62784,6 @@ /area/crew_quarters/courtroom) "coo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/extinguisher_cabinet{ @@ -66847,7 +62815,6 @@ /area/crew_quarters/locker) "cor" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -66857,7 +62824,6 @@ /area/crew_quarters/locker) "cos" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -66867,7 +62833,6 @@ /area/crew_quarters/locker) "cot" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -66877,7 +62842,6 @@ /area/crew_quarters/locker) "cou" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -66897,11 +62861,9 @@ /area/maintenance/starboard) "cow" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -66923,7 +62885,6 @@ /area/maintenance/starboard) "coz" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -66932,14 +62893,12 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, /area/maintenance/starboard) "coA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -66951,18 +62910,15 @@ /area/maintenance/starboard) "coB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/starboard) "coC" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -67032,35 +62988,12 @@ }, /turf/open/floor/plating/airless, /area/space) -"coJ" = ( -/obj/machinery/the_singularitygen/tesla, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating/airless, -/area/space) "coK" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 }, /turf/open/floor/plating/airless, /area/space) -"coL" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/space) -"coM" = ( -/obj/structure/particle_accelerator/particle_emitter/right{ - tag = "icon-emitter_right (WEST)"; - icon_state = "emitter_right"; - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) "coN" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -67107,7 +63040,6 @@ /area/engine/engineering) "coS" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -67121,12 +63053,10 @@ /area/engine/engineering) "coT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -67136,7 +63066,6 @@ "coU" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -67152,7 +63081,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -67296,15 +63224,12 @@ /area/library) "cpm" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67318,7 +63243,6 @@ /area/hallway/primary/central) "cpn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -67329,7 +63253,6 @@ /area/hallway/primary/central) "cpo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -67348,7 +63271,6 @@ }) "cpp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67362,15 +63284,12 @@ }) "cpq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -67382,7 +63301,6 @@ }) "cpr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67401,7 +63319,6 @@ }) "cps" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67420,11 +63337,9 @@ }) "cpt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -67439,7 +63354,6 @@ }) "cpu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -67451,15 +63365,12 @@ }) "cpv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67473,7 +63384,6 @@ }) "cpw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67488,7 +63398,6 @@ }) "cpx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/sign/electricshock{ @@ -67496,12 +63405,10 @@ pixel_y = -32 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral/corner{ @@ -67512,7 +63419,6 @@ }) "cpy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -67523,7 +63429,6 @@ dir = 4 }, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; icon_state = "bluecorner"; dir = 1 }, @@ -67532,13 +63437,11 @@ }) "cpz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/chair/comfy/black, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; icon_state = "bluecorner"; dir = 1 }, @@ -67547,15 +63450,12 @@ }) "cpA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/item/device/radio/beacon, @@ -67563,7 +63463,6 @@ dir = 4 }, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; icon_state = "bluecorner"; dir = 1 }, @@ -67572,7 +63471,6 @@ }) "cpB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/chair/comfy/black, @@ -67583,7 +63481,6 @@ dir = 4 }, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; icon_state = "bluecorner"; dir = 1 }, @@ -67592,7 +63489,6 @@ }) "cpC" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/table/wood, @@ -67601,7 +63497,6 @@ dir = 4 }, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; icon_state = "bluecorner"; dir = 1 }, @@ -67610,7 +63505,6 @@ }) "cpD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/sign/electricshock{ @@ -67627,7 +63521,6 @@ }) "cpE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67640,15 +63533,12 @@ }) "cpF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67660,7 +63550,6 @@ }) "cpG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67672,11 +63561,9 @@ }) "cpH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -67686,11 +63573,9 @@ }) "cpI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67703,7 +63588,6 @@ }) "cpJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -67719,7 +63603,6 @@ }) "cpK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -67729,11 +63612,9 @@ }) "cpL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -67743,11 +63624,9 @@ /area/hallway/primary/central) "cpM" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -67762,9 +63641,8 @@ icon_state = "doors"; name = "WARNING: PRESSURIZED DOORS"; pixel_x = 0; - pixel_y = 0; - tag = "icon-doors" - }, + pixel_y = 0 + }, /turf/closed/wall, /area/crew_quarters/courtroom) "cpO" = ( @@ -67775,7 +63653,6 @@ /area/crew_quarters/courtroom) "cpP" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -67797,7 +63674,6 @@ /area/crew_quarters/locker) "cpT" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -67828,7 +63704,6 @@ "cpW" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -67838,7 +63713,6 @@ "cpX" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -67950,9 +63824,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "" - }, + icon_state = "1-4" + }, /obj/effect/turf_decal/stripes/line{ dir = 10 }, @@ -68032,7 +63905,6 @@ "cqq" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -68172,9 +64044,8 @@ dir = 1; icon_state = "direction_bridge"; name = "command department"; - pixel_y = 0; - tag = "icon-direction_bridge" - }, + pixel_y = 0 + }, /turf/closed/wall/r_wall, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" @@ -68186,7 +64057,6 @@ }) "cqI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -68199,9 +64069,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" }) @@ -68216,9 +64084,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" }) @@ -68232,7 +64098,6 @@ }) "cqL" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -68254,7 +64119,6 @@ dir = 4 }, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; icon_state = "bluecorner"; dir = 1 }, @@ -68273,7 +64137,6 @@ }) "cqO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, @@ -68307,7 +64170,6 @@ }) "cqR" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -68327,7 +64189,6 @@ /area/gateway) "cqU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -68340,9 +64201,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cqV" = ( /obj/machinery/vending/cigarette, @@ -68371,22 +64230,19 @@ dir = 1; icon_state = "direction_bridge"; name = "command department"; - pixel_y = 0; - tag = "icon-direction_bridge" - }, + pixel_y = 0 + }, /turf/closed/wall/r_wall, /area/gateway) "cqZ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, /area/hallway/primary/central) "cra" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -68500,7 +64356,6 @@ /area/hallway/primary/central) "crj" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -68529,7 +64384,6 @@ /area/crew_quarters/locker) "crl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -68583,7 +64437,6 @@ /obj/structure/table, /obj/item/device/camera, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -68620,7 +64473,6 @@ "crv" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -68735,7 +64587,6 @@ /area/engine/engineering) "crH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/status_display{ @@ -68755,7 +64606,6 @@ "crJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -68877,7 +64727,6 @@ }) "crX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -68908,7 +64757,6 @@ pixel_y = 26 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/effect/turf_decal/stripes/line{ @@ -68937,9 +64785,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn (NORTHEAST)" - }, +/turf/open/floor/plasteel, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" }) @@ -68964,11 +64810,9 @@ "csd" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -68979,11 +64823,9 @@ }) "cse" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -68995,7 +64837,6 @@ }) "csf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/table/wood, @@ -69006,7 +64847,6 @@ }) "csg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/chair/comfy/black{ @@ -69021,11 +64861,9 @@ }) "csh" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/blue/corner, @@ -69034,7 +64872,6 @@ }) "csi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/chair/comfy/black{ @@ -69046,7 +64883,6 @@ }) "csj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -69059,7 +64895,6 @@ }) "csk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -69070,11 +64905,9 @@ "csl" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -69091,7 +64924,6 @@ /area/gateway) "csn" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/apc{ @@ -69108,7 +64940,6 @@ /area/gateway) "cso" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -69157,7 +64988,6 @@ pixel_x = -22 }, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, @@ -69226,7 +65056,6 @@ /area/crew_quarters/locker) "csC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -69248,7 +65077,6 @@ /obj/structure/table, /obj/item/toy/cards/deck, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -69273,7 +65101,6 @@ icon_state = "tube1" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -69291,11 +65118,9 @@ "csK" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -69308,7 +65133,6 @@ "csL" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69324,7 +65148,6 @@ /area/maintenance/starboard) "csM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69343,7 +65166,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69361,11 +65183,9 @@ }) "csO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -69380,7 +65200,6 @@ }) "csP" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -69407,34 +65226,6 @@ /area/crew_quarters/fitness{ name = "\improper Recreation Area" }) -"csS" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plating/airless, -/area/space) -"csT" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating/airless, -/area/space) -"csU" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plating/airless, -/area/space) "csV" = ( /obj/machinery/power/rad_collector{ anchored = 1 @@ -69506,7 +65297,6 @@ /area/engine/engineering) "ctb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/airalarm{ @@ -69575,39 +65365,11 @@ dir = 6 }, /turf/open/floor/plasteel, -/area/engine/engineering{ - name = "Engineering Storage" - }) -"ctg" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/metal{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/weapon/crowbar, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/item/weapon/grenade/chem_grenade/metalfoam, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, /area/engine/engineering{ name = "Engineering Storage" }) "cth" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plating, @@ -69615,7 +65377,6 @@ "cti" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -69624,7 +65385,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/corner{ @@ -69633,7 +65393,6 @@ /area/maintenance/fpmaint2/port_maintenance) "ctk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -69641,7 +65400,6 @@ "ctl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -69650,7 +65408,6 @@ /area/maintenance/fpmaint2/port_maintenance) "ctm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -69658,15 +65415,12 @@ /area/maintenance/fpmaint2/port_maintenance) "ctn" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -69689,7 +65443,6 @@ "ctq" = ( /obj/structure/chair/office/dark, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -69699,7 +65452,6 @@ /obj/structure/chair/office/dark, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -69708,7 +65460,6 @@ "cts" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -69716,7 +65467,6 @@ /area/library) "ctt" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -69770,7 +65520,6 @@ name = "Librarian" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -69836,12 +65585,10 @@ }) "ctE" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -69852,11 +65599,9 @@ }) "ctF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -69867,11 +65612,9 @@ }) "ctG" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -69881,11 +65624,9 @@ }) "ctH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -69896,12 +65637,10 @@ }) "ctI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -69912,7 +65651,6 @@ }) "ctJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -69925,7 +65663,6 @@ "ctK" = ( /obj/machinery/cell_charger, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -69938,7 +65675,6 @@ }) "ctL" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -69949,7 +65685,6 @@ }) "ctM" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -69984,7 +65719,6 @@ }) "ctR" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -69994,7 +65728,6 @@ "ctS" = ( /obj/structure/closet/secure_closet/medical1, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -70003,55 +65736,43 @@ /area/gateway) "ctT" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn (NORTHWEST)" - }, +/turf/open/floor/plasteel, /area/gateway) "ctU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (NORTH)" - }, +/turf/open/floor/plasteel, /area/gateway) "ctV" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (NORTHEAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "ctW" = ( /obj/structure/table, @@ -70061,7 +65782,6 @@ /area/gateway) "ctX" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -70103,12 +65823,10 @@ /area/gateway) "cub" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, @@ -70228,7 +65946,6 @@ /area/crew_quarters/locker) "cul" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -70255,7 +65972,6 @@ /area/crew_quarters/locker) "cun" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -70278,7 +65994,6 @@ name = "lightsout" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -70289,7 +66004,6 @@ /area/crew_quarters/locker) "cuq" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -70307,7 +66021,6 @@ "cus" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -70390,11 +66103,9 @@ }) "cuB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -70425,7 +66136,6 @@ }) "cuE" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -70444,7 +66154,6 @@ }) "cuG" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -70497,9 +66206,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "" - }, + icon_state = "1-4" + }, /obj/structure/cable{ d1 = 2; d2 = 4; @@ -70528,9 +66236,8 @@ "cuO" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -70556,9 +66263,8 @@ /turf/open/floor/plasteel/yellow/side{ dir = 1; icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/engine/engineering{ name = "Engineering Storage" }) @@ -70573,9 +66279,8 @@ /turf/open/floor/plasteel/yellow/side{ dir = 1; icon_state = "yellow"; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-yellow (NORTH)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/engine/engineering{ name = "Engineering Storage" }) @@ -70604,7 +66309,6 @@ "cuU" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -70754,9 +66458,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /turf/open/floor/plasteel/neutral/corner{ dir = 4 }, @@ -70854,7 +66557,6 @@ }) "cvr" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -70874,7 +66576,6 @@ }) "cvt" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -70908,7 +66609,6 @@ /area/gateway) "cvw" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -70919,11 +66619,9 @@ /area/gateway) "cvx" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -70936,21 +66634,17 @@ /area/gateway) "cvy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cvz" = ( /obj/structure/table, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/clipboard, @@ -70964,7 +66658,6 @@ "cvA" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -70983,7 +66676,6 @@ "cvC" = ( /obj/machinery/gateway/centerstation, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/effect/decal/cleanable/dirt, @@ -71006,7 +66698,6 @@ name = "hallway camera" }, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, @@ -71025,9 +66716,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/locker/locker_toilet{ name = "\improper Restrooms" }) @@ -71041,7 +66730,6 @@ pixel_x = -24 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/corner{ @@ -71094,7 +66782,6 @@ /area/crew_quarters/sleep) "cvQ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -71106,7 +66793,6 @@ }) "cvR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -71120,7 +66806,6 @@ }) "cvS" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -71165,7 +66850,6 @@ }) "cvW" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -71187,9 +66871,8 @@ c_tag = "Containment - Aft Port"; dir = 4; icon_state = "camera"; - network = list("Singularity"); - tag = "icon-camera (NORTHEAST)" - }, + network = list("Singularity") + }, /turf/open/space, /area/space) "cvZ" = ( @@ -71197,9 +66880,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "" - }, + icon_state = "1-4" + }, /turf/open/space, /area/space) "cwa" = ( @@ -71207,9 +66889,8 @@ /obj/structure/cable{ d1 = 1; d2 = 4; - icon_state = "1-4"; - tag = "" - }, + icon_state = "1-4" + }, /obj/structure/cable{ d1 = 4; d2 = 8; @@ -71264,11 +66945,9 @@ /area/engine/engineering) "cwg" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -71281,13 +66960,11 @@ /obj/structure/cable/white, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -71297,7 +66974,6 @@ }) "cwi" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -71309,7 +66985,6 @@ }) "cwj" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -71319,7 +66994,6 @@ }) "cwk" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -71353,7 +67027,6 @@ "cwn" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -71543,7 +67216,6 @@ }) "cwG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/window/reinforced, @@ -71573,7 +67245,6 @@ }) "cwI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -71583,7 +67254,6 @@ }) "cwJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -71630,7 +67300,6 @@ }) "cwO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/window/reinforced, @@ -71685,7 +67354,6 @@ /area/gateway) "cwR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -71695,9 +67363,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cwT" = ( /obj/structure/tank_dispenser/oxygen, @@ -71731,11 +67397,9 @@ "cwW" = ( /obj/machinery/gateway, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -71765,7 +67429,6 @@ pixel_y = 0 }, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, @@ -71833,7 +67496,6 @@ dir = 4 }, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, @@ -71843,7 +67505,6 @@ "cxe" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -71855,7 +67516,6 @@ }) "cxf" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/apc{ @@ -71866,7 +67526,6 @@ pixel_y = 25 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -71876,7 +67535,6 @@ name = "restroom camera" }, /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, @@ -71936,11 +67594,9 @@ }) "cxk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -71954,7 +67610,6 @@ /area/crew_quarters/locker) "cxl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -71965,7 +67620,6 @@ "cxm" = ( /obj/structure/chair/stool, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -71978,7 +67632,6 @@ /obj/item/weapon/folder, /obj/item/weapon/pen, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -71990,7 +67643,6 @@ /obj/structure/table, /obj/item/device/paicard, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -72001,7 +67653,6 @@ "cxp" = ( /obj/structure/table, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/toy/gun, @@ -72013,11 +67664,9 @@ "cxq" = ( /obj/structure/chair/stool, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark/start{ @@ -72031,7 +67680,6 @@ /area/crew_quarters/locker) "cxr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -72042,7 +67690,6 @@ /area/crew_quarters/locker) "cxs" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -72052,7 +67699,6 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -72183,7 +67829,6 @@ }) "cxD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -72270,11 +67915,9 @@ /area/engine/engineering) "cxN" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -72290,15 +67933,12 @@ req_access_txt = "32" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -72311,7 +67951,6 @@ "cxP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/delivery, @@ -72350,7 +67989,6 @@ "cxT" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -72379,7 +68017,6 @@ "cxX" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -72406,7 +68043,6 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -72418,7 +68054,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -72426,7 +68061,6 @@ /area/library) "cyb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -72434,7 +68068,6 @@ /area/library) "cyc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -72442,7 +68075,6 @@ /area/library) "cyd" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -72457,7 +68089,6 @@ /area/library) "cye" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -72465,7 +68096,6 @@ /area/library) "cyf" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -72474,7 +68104,6 @@ "cyg" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -72542,11 +68171,9 @@ }) "cym" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/power/apc{ @@ -72556,7 +68183,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /turf/open/floor/wood, @@ -72565,7 +68191,6 @@ }) "cyn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -72579,19 +68204,15 @@ }) "cyo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -72601,11 +68222,9 @@ }) "cyp" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/chair/comfy/brown{ @@ -72619,11 +68238,9 @@ "cyq" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, @@ -72634,11 +68251,9 @@ "cyr" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/storage/fancy/donut_box, @@ -72649,11 +68264,9 @@ "cys" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/paper_bin, @@ -72663,11 +68276,9 @@ }) "cyt" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/chair/comfy/black{ @@ -72679,11 +68290,9 @@ }) "cyu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -72693,7 +68302,6 @@ }) "cyv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -72706,11 +68314,9 @@ }) "cyw" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/airalarm{ @@ -72804,7 +68410,6 @@ /area/gateway) "cyy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -72829,13 +68434,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (NORTHEAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cyB" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -72852,13 +68454,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn (NORTHWEST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cyD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -72869,18 +68468,14 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (NORTH)" - }, +/turf/open/floor/plasteel, /area/gateway) "cyE" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (NORTHEAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cyF" = ( /obj/machinery/shower{ @@ -72924,7 +68519,6 @@ }) "cyJ" = ( /turf/open/floor/plasteel/neutral/corner{ - tag = "icon-neutralcorner (NORTH)"; icon_state = "neutralcorner"; dir = 1 }, @@ -72942,7 +68536,6 @@ }) "cyL" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -72991,7 +68584,6 @@ }) "cyQ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/closet/wardrobe/white, @@ -73002,7 +68594,6 @@ /area/crew_quarters/locker) "cyR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -73100,7 +68691,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -73131,7 +68721,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -73157,9 +68746,8 @@ c_tag = "Containment - Aft Starboard"; dir = 8; icon_state = "camera"; - network = list("Singularity"); - tag = "icon-camera (NORTHWEST)" - }, + network = list("Singularity") + }, /turf/open/floor/plating/airless, /area/engine/engineering) "czm" = ( @@ -73183,7 +68771,6 @@ /area/engine/engineering) "czo" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -73197,7 +68784,6 @@ name = "lightsout" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -73206,12 +68792,10 @@ /area/engine/engineering) "czq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -73224,13 +68808,11 @@ /obj/structure/cable/white, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -73241,11 +68823,9 @@ "czs" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -73256,11 +68836,9 @@ }) "czt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -73270,11 +68848,9 @@ }) "czu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -73284,7 +68860,6 @@ }) "czv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, @@ -73305,7 +68880,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/effect/turf_decal/delivery, @@ -73367,11 +68941,9 @@ /area/maintenance/fpmaint2/port_maintenance) "czC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -73412,7 +68984,6 @@ pixel_y = -26 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -73488,7 +69059,6 @@ /area/library) "czM" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -73559,7 +69129,6 @@ "czT" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -73580,7 +69149,6 @@ }) "czV" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -73608,9 +69176,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn (NORTHEAST)" - }, +/turf/open/floor/plasteel, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" }) @@ -73633,7 +69199,6 @@ "czZ" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/clipboard, @@ -73658,7 +69223,6 @@ "cAc" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/folder/blue, @@ -73670,7 +69234,6 @@ "cAd" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/clothing/mask/cigarette/cigar/cohiba{ @@ -73687,7 +69250,6 @@ "cAe" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/lighter, @@ -73707,7 +69269,6 @@ "cAg" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/storage/secure/briefcase, @@ -73731,7 +69292,6 @@ /area/gateway) "cAi" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -73742,7 +69302,6 @@ /area/gateway) "cAj" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73753,7 +69312,6 @@ /area/gateway) "cAk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73765,7 +69323,6 @@ /area/gateway) "cAl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73774,21 +69331,16 @@ /obj/effect/turf_decal/stripes/line{ dir = 6 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (SOUTHEAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cAm" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/glass_command{ @@ -73806,7 +69358,6 @@ /area/gateway) "cAn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73820,7 +69371,6 @@ "cAo" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73839,9 +69389,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cAq" = ( /obj/effect/decal/cleanable/dirt, @@ -73898,7 +69446,6 @@ pixel_x = -12 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -73909,7 +69456,6 @@ }) "cAv" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73926,11 +69472,9 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/light, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73945,7 +69489,6 @@ }) "cAx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73963,7 +69506,6 @@ pixel_y = -32 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73978,7 +69520,6 @@ }) "cAz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -73992,7 +69533,6 @@ pixel_y = -32 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -74004,7 +69544,6 @@ }) "cAB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -74017,7 +69556,6 @@ "cAC" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -74035,7 +69573,6 @@ }) "cAD" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -74075,11 +69612,9 @@ /area/crew_quarters/locker) "cAH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -74189,7 +69724,6 @@ /area/holodeck/rec_center) "cAU" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/effect/turf_decal/stripes/line, @@ -74197,7 +69731,6 @@ /area/engine/engineering) "cAV" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/grille, @@ -74208,7 +69741,6 @@ /area/engine/engineering) "cAW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/grille, @@ -74219,7 +69751,6 @@ /area/engine/engineering) "cAX" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/grille, @@ -74230,7 +69761,6 @@ /area/engine/engineering) "cAY" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plating/airless, @@ -74241,7 +69771,6 @@ req_access_txt = "10; 13" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -74251,7 +69780,6 @@ /area/engine/engineering) "cBa" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/fans/tiny, @@ -74262,7 +69790,6 @@ "cBb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -74275,11 +69802,9 @@ /area/engine/engineering) "cBc" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -74291,7 +69816,6 @@ /area/engine/engineering) "cBd" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -74299,7 +69823,6 @@ on = 1 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -74314,7 +69837,6 @@ icon_state = "plant-22" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -74382,7 +69904,6 @@ }) "cBk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/corner{ @@ -74513,7 +70034,6 @@ "cBz" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/folder/blue, @@ -74559,7 +70079,6 @@ }) "cBC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/chair/comfy/brown{ @@ -74571,7 +70090,6 @@ }) "cBD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, @@ -74581,7 +70099,6 @@ }) "cBE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/chair/comfy/black{ @@ -74623,7 +70140,6 @@ "cBH" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/folder/red, @@ -74667,7 +70183,6 @@ pixel_y = -26 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -74686,7 +70201,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -74721,13 +70235,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 6 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (SOUTHEAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cBR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -74754,7 +70265,6 @@ }) "cBT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -74825,7 +70335,6 @@ /area/crew_quarters/locker) "cCb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -74924,7 +70433,6 @@ /area/engine/engineering) "cCn" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/grille, @@ -74935,7 +70443,6 @@ /area/engine/engineering) "cCo" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/grille, @@ -74946,7 +70453,6 @@ /area/engine/engineering) "cCp" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/grille, @@ -74957,11 +70463,9 @@ /area/engine/engineering) "cCq" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/grille, @@ -74972,7 +70476,6 @@ /area/engine/engineering) "cCr" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/grille, @@ -75003,7 +70506,6 @@ /area/engine/engineering) "cCu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -75012,7 +70514,6 @@ /area/engine/engineering) "cCv" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -75021,7 +70522,6 @@ /area/engine/engineering) "cCw" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -75036,11 +70536,9 @@ "cCx" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -75051,11 +70549,9 @@ /area/engine/engineering) "cCy" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -75075,7 +70571,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -75114,9 +70609,8 @@ /obj/structure/noticeboard{ dir = 1; icon_state = "nboard00"; - pixel_y = -32; - tag = "icon-nboard00 (NORTH)" - }, + pixel_y = -32 + }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/engine/engineering{ @@ -75151,20 +70645,6 @@ /obj/item/weapon/hand_labeler, /turf/open/floor/plating, /area/maintenance/fpmaint2/port_maintenance) -"cCG" = ( -/obj/structure/table/reinforced, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/weapon/wrench, -/obj/item/weapon/storage/box/lights/mixed, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/maintenance/fpmaint2/port_maintenance) "cCH" = ( /obj/structure/rack, /obj/item/weapon/book/manual/wiki/engineering_hacking{ @@ -75190,7 +70670,6 @@ "cCJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -75273,9 +70752,8 @@ icon_state = "doors"; name = "WARNING: PRESSURIZED DOORS"; pixel_x = 0; - pixel_y = 0; - tag = "icon-doors" - }, + pixel_y = 0 + }, /turf/closed/wall/r_wall, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" @@ -75289,9 +70767,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" }) @@ -75303,9 +70779,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" }) @@ -75324,9 +70798,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/ai_monitored/storage/eva{ name = "E.V.A. Storage" }) @@ -75356,7 +70828,6 @@ req_access_txt = "19" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -75374,9 +70845,7 @@ dir = 2 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cDa" = ( /obj/machinery/door/poddoor/shutters{ @@ -75393,9 +70862,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cDb" = ( /obj/machinery/door/poddoor/shutters{ @@ -75406,9 +70873,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cDc" = ( /obj/machinery/door/poddoor/shutters{ @@ -75418,9 +70883,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/gateway) "cDd" = ( /obj/structure/sign/directions/engineering{ @@ -75428,9 +70891,8 @@ icon_state = "doors"; name = "WARNING: BLAST DOORS"; pixel_x = 0; - pixel_y = 0; - tag = "icon-doors" - }, + pixel_y = 0 + }, /turf/closed/wall/r_wall, /area/gateway) "cDe" = ( @@ -75466,7 +70928,6 @@ "cDj" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -75478,7 +70939,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/vomit/old, /obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8 }, @@ -75493,7 +70953,6 @@ "cDl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8 }, @@ -75509,7 +70968,6 @@ "cDm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8 }, @@ -75528,7 +70986,6 @@ "cDn" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock{ @@ -75538,9 +70995,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/locker) "cDo" = ( /obj/machinery/door/firedoor, @@ -75552,9 +71007,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/locker) "cDp" = ( /obj/machinery/door/firedoor, @@ -75669,7 +71122,6 @@ req_access_txt = "10" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -75677,13 +71129,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/engine/engineering) "cDB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -75701,7 +71150,6 @@ "cDE" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -75720,7 +71168,6 @@ name = "lightsout" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -75788,7 +71235,6 @@ /area/hallway/primary/central) "cDN" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -75821,7 +71267,6 @@ /area/hallway/primary/central) "cDQ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -75858,7 +71303,6 @@ /area/hallway/primary/central) "cDU" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -75927,7 +71371,6 @@ /area/hallway/primary/central) "cEb" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -75971,16 +71414,13 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/locker/locker_toilet{ name = "\improper Restrooms" }) @@ -75996,7 +71436,6 @@ /obj/item/weapon/reagent_containers/blood/random, /obj/item/roller, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; icon_state = "bluecorner"; dir = 1 }, @@ -76022,14 +71461,12 @@ name = "dormitories camera" }, /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; icon_state = "arrival"; dir = 8 }, /area/crew_quarters/sleep) "cEm" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -76039,11 +71476,9 @@ /area/crew_quarters/sleep) "cEn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -76054,7 +71489,6 @@ /area/crew_quarters/sleep) "cEo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -76066,7 +71500,6 @@ "cEp" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -76082,7 +71515,6 @@ /area/crew_quarters/sleep) "cEq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76094,11 +71526,9 @@ /area/crew_quarters/sleep) "cEr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76110,7 +71540,6 @@ /area/crew_quarters/sleep) "cEs" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76123,7 +71552,6 @@ /area/crew_quarters/sleep) "cEt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76135,7 +71563,6 @@ /area/crew_quarters/sleep) "cEu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76152,11 +71579,9 @@ /area/crew_quarters/sleep) "cEv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -76167,7 +71592,6 @@ "cEw" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -76183,11 +71607,9 @@ /area/crew_quarters/sleep) "cEx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -76199,11 +71621,9 @@ }) "cEy" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -76292,7 +71712,6 @@ name = "Holodeck Access" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -76308,7 +71727,6 @@ name = "Holodeck Access" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -76386,7 +71804,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -76401,7 +71818,6 @@ /obj/item/device/flashlight, /obj/effect/spawner/lootdrop/maintenance, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76415,7 +71831,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76427,7 +71842,6 @@ "cER" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76438,7 +71852,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cES" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76450,11 +71863,9 @@ "cET" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76466,11 +71877,9 @@ "cEU" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -76479,11 +71888,9 @@ "cEV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76491,11 +71898,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cEW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76504,11 +71909,9 @@ "cEX" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76519,11 +71922,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cEY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76535,15 +71936,12 @@ "cEZ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -76553,15 +71951,12 @@ "cFa" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -76573,20 +71968,16 @@ "cFb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -76598,7 +71989,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cFc" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76612,7 +72002,6 @@ "cFd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76626,7 +72015,6 @@ "cFe" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76643,11 +72031,9 @@ "cFf" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76661,7 +72047,6 @@ "cFg" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76676,11 +72061,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cFh" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76694,7 +72077,6 @@ "cFi" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76709,7 +72091,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cFj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76724,7 +72105,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cFk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76739,11 +72119,9 @@ "cFl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -76756,7 +72134,6 @@ "cFm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76766,7 +72143,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cFn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76777,7 +72153,6 @@ "cFo" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76787,7 +72162,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cFp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark{ @@ -76802,7 +72176,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -76813,7 +72186,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cFr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76826,11 +72198,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cFs" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -76838,11 +72208,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cFt" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76856,11 +72224,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cFu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -76876,7 +72242,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -76889,11 +72254,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cFw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -76907,11 +72270,9 @@ /area/hallway/primary/central) "cFx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -76927,7 +72288,6 @@ /area/hallway/primary/central) "cFy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -76936,11 +72296,9 @@ /area/hallway/primary/central) "cFz" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -76950,7 +72308,6 @@ /area/hallway/primary/central) "cFA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -76959,7 +72316,6 @@ /area/hallway/primary/central) "cFB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -76968,7 +72324,6 @@ /area/hallway/primary/central) "cFC" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -76987,7 +72342,6 @@ /area/hallway/primary/central) "cFD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -77001,7 +72355,6 @@ /area/hallway/primary/central) "cFE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -77010,7 +72363,6 @@ /area/hallway/primary/central) "cFF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -77020,11 +72372,9 @@ /area/hallway/primary/central) "cFG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -77032,11 +72382,9 @@ /area/hallway/primary/central) "cFH" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -77045,7 +72393,6 @@ scrub_Toxins = 0 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/navbeacon{ @@ -77056,7 +72403,6 @@ /area/hallway/primary/central) "cFI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -77066,9 +72412,8 @@ dir = 1; icon_state = "pipe-j1s"; name = "Medbay Junction"; - sortType = 9; - tag = "icon-pipe-j1s (NORTH)" - }, + sortType = 9 + }, /turf/open/floor/plasteel/neutral/corner, /area/hallway/primary/central) "cFJ" = ( @@ -77079,7 +72424,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -77095,7 +72439,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cFK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -77109,7 +72452,6 @@ "cFL" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -77154,16 +72496,13 @@ "cFP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -77175,7 +72514,6 @@ "cFQ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -77189,7 +72527,6 @@ "cFR" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -77209,7 +72546,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -77225,11 +72561,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cFT" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -77252,7 +72586,6 @@ "cFV" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -77270,7 +72603,6 @@ dir = 8 }, /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; icon_state = "arrival"; dir = 8 }, @@ -77322,7 +72654,6 @@ /area/crew_quarters/sleep) "cGe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -77356,7 +72687,6 @@ }) "cGi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, @@ -77422,7 +72752,6 @@ "cGp" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -77432,7 +72761,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cGq" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77440,7 +72768,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cGr" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77449,7 +72776,6 @@ "cGs" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77457,7 +72783,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cGt" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -77468,7 +72793,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77478,7 +72802,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77487,7 +72810,6 @@ "cGw" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77496,12 +72818,10 @@ "cGx" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -77511,7 +72831,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77522,7 +72841,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77536,7 +72854,6 @@ name = "2maintenance loot spawner" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77548,7 +72865,6 @@ /obj/item/clothing/gloves/color/fyellow, /obj/effect/spawner/lootdrop/maintenance, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77556,11 +72872,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cGC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -77571,7 +72885,6 @@ "cGD" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -77580,7 +72893,6 @@ "cGE" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -77588,11 +72900,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cGF" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -77631,7 +72941,6 @@ "cGL" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -77641,7 +72950,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cGM" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -77730,7 +73038,6 @@ /area/hallway/primary/central) "cGU" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -77819,7 +73126,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cHe" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -77830,7 +73136,6 @@ "cHf" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/spawner/lootdrop/maintenance, @@ -77841,7 +73146,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cHg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark{ @@ -77854,7 +73158,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cHh" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -77862,7 +73165,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cHi" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -77884,7 +73186,6 @@ dir = 8 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -77896,7 +73197,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cHl" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -77915,14 +73215,12 @@ "cHn" = ( /obj/machinery/washing_machine, /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; icon_state = "arrival"; dir = 8 }, /area/crew_quarters/sleep) "cHo" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -78093,7 +73391,6 @@ }) "cHB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -78187,7 +73484,6 @@ /area/maintenance/electrical) "cHL" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -78209,20 +73505,16 @@ req_access_txt = "10" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/electrical) "cHP" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -78241,7 +73533,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -78400,9 +73691,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -78417,9 +73706,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -78448,9 +73735,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/central) "cIp" = ( /obj/machinery/door/firedoor, @@ -78460,9 +73745,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/central) "cIq" = ( /obj/machinery/door/firedoor, @@ -78474,9 +73757,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/central) "cIr" = ( /obj/structure/sign/directions/evac{ @@ -78505,9 +73786,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -78523,9 +73802,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -78535,11 +73812,6 @@ /area/medical/medbay{ name = "Medbay Central" }) -"cIx" = ( -/obj/machinery/disposal/bin, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/delivery, -/area/hallway/primary/central) "cIy" = ( /obj/machinery/vending/snack/random, /obj/machinery/light, @@ -78618,13 +73890,11 @@ "cIJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; icon_state = "bluecorner"; dir = 8 }, @@ -78641,7 +73911,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cIL" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -78707,7 +73976,6 @@ }) "cIT" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -78746,7 +74014,6 @@ name = "Holodeck Access" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -78762,7 +74029,6 @@ name = "Holodeck Access" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -78838,14 +74104,11 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/port_maintenance) "cJf" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -78862,19 +74125,6 @@ dir = 4 }, /area/maintenance/fpmaint2/port_maintenance) -"cJh" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = 0; - pixel_y = 32; - tag = "icon-poster4_legit" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/maintenance/electrical) "cJi" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/machinery/portable_atmospherics/canister/air, @@ -78942,7 +74192,6 @@ "cJq" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -78964,24 +74213,6 @@ /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/maintenance/electrical) -"cJs" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/rack, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/electrical, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/maintenance/electrical) "cJt" = ( /obj/structure/table/reinforced, /obj/machinery/newscaster{ @@ -79010,7 +74241,6 @@ "cJv" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -79062,11 +74292,9 @@ "cJB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -79075,7 +74303,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cJC" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -79090,7 +74317,6 @@ /area/toxins/xenobiology) "cJD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -79100,14 +74326,12 @@ /area/toxins/xenobiology) "cJE" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark{ name = "blobstart" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -79119,7 +74343,6 @@ "cJF" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -79130,10 +74353,10 @@ /area/toxins/xenobiology) "cJG" = ( /mob/living/simple_animal/slime, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/toxins/xenobiology) "cJH" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/toxins/xenobiology) "cJI" = ( /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -79143,13 +74366,13 @@ on = 1; pressure_checks = 0 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80" }, /area/toxins/xenobiology) "cJJ" = ( -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ initial_gas_mix = "n2=500;TEMP=80"; name = "Mainframe Base" }, @@ -79165,7 +74388,7 @@ pressure_checks = 2; pump_direction = 0 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -79183,7 +74406,6 @@ }) "cJN" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -79194,9 +74416,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -79211,29 +74431,10 @@ /area/security/checkpoint/science{ name = "Security Post - Research Division" }) -"cJQ" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin, -/obj/item/weapon/pen, -/obj/structure/sign/poster{ - tag = "icon-poster7_legit"; - icon_state = "poster7_legit"; - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; - icon_state = "whitepurplecorner"; - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) "cJR" = ( /obj/structure/chair, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; icon_state = "whitepurplecorner"; dir = 1 }, @@ -79243,7 +74444,6 @@ "cJS" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; icon_state = "whitepurplecorner"; dir = 1 }, @@ -79256,7 +74456,6 @@ name = "Assistant" }, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; icon_state = "whitepurplecorner"; dir = 1 }, @@ -79268,7 +74467,6 @@ /obj/item/weapon/folder/white, /obj/item/device/paicard, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; icon_state = "whitepurplecorner"; dir = 1 }, @@ -79283,7 +74481,6 @@ dir = 1 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -79314,7 +74511,6 @@ }) "cJY" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/disposalpipe/segment, @@ -79524,7 +74720,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cKx" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -79546,11 +74741,9 @@ }) "cKy" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -79559,7 +74752,6 @@ scrub_Toxins = 0 }, /turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1 }, @@ -79568,14 +74760,12 @@ }) "cKz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1 }, @@ -79584,7 +74774,6 @@ }) "cKA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -79603,7 +74792,6 @@ }) "cKB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -79627,11 +74815,9 @@ "cKC" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -79648,11 +74834,9 @@ "cKD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -79660,11 +74844,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cKE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -79672,11 +74854,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cKF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -79688,7 +74868,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cKG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -79707,7 +74886,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -79723,7 +74901,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cKI" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -79740,7 +74917,6 @@ "cKJ" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -79947,11 +75123,9 @@ /area/maintenance/electrical) "cLg" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -79963,7 +75137,6 @@ "cLh" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -79975,7 +75148,6 @@ "cLi" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -79986,7 +75158,6 @@ "cLj" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -79997,7 +75168,6 @@ /obj/item/weapon/stock_parts/cell/high, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -80011,7 +75181,6 @@ "cLl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -80022,7 +75191,6 @@ "cLm" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/research{ @@ -80033,13 +75201,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/xenobiology) "cLn" = ( /obj/structure/disposaloutlet{ - tag = "icon-outlet (NORTH)"; icon_state = "outlet"; dir = 1 }, @@ -80050,7 +75215,6 @@ /area/toxins/xenobiology) "cLo" = ( /obj/machinery/atmospherics/pipe/manifold/general/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -80062,7 +75226,6 @@ /area/toxins/xenobiology) "cLp" = ( /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -80074,7 +75237,6 @@ /area/toxins/xenobiology) "cLq" = ( /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -80105,11 +75267,9 @@ }) "cLt" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -80191,7 +75351,6 @@ /obj/item/weapon/folder/white, /obj/item/device/assembly/infra, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; icon_state = "whitepurplecorner"; dir = 1 }, @@ -80382,7 +75541,6 @@ }) "cLX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/cmo, @@ -80396,7 +75554,6 @@ }) "cLZ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -80435,7 +75592,6 @@ "cMc" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -80444,7 +75600,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cMd" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -80476,11 +75631,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cMh" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -80564,7 +75717,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cMr" = ( /obj/machinery/atmospherics/pipe/simple/supply/visible{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -80586,7 +75738,6 @@ /area/maintenance/electrical) "cMt" = ( /obj/machinery/atmospherics/pipe/manifold/supply/visible{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -80637,7 +75788,6 @@ "cMA" = ( /obj/effect/decal/cleanable/oil, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -80645,19 +75795,16 @@ /area/maintenance/electrical) "cMB" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, /area/maintenance/electrical) "cMC" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -80686,7 +75833,6 @@ /area/maintenance/electrical) "cMG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -80703,7 +75849,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cMI" = ( /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5 }, @@ -80713,7 +75858,6 @@ dir = 1 }, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5 }, @@ -80721,7 +75865,6 @@ "cMK" = ( /obj/machinery/shieldwallgen, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/effect/turf_decal/stripes/line{ @@ -80731,7 +75874,6 @@ /area/toxins/xenobiology) "cML" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -80739,14 +75881,12 @@ /area/toxins/xenobiology) "cMM" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/status_display{ pixel_y = 32 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/camera{ @@ -80764,7 +75904,6 @@ pixel_y = 26 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -80788,7 +75927,6 @@ /area/toxins/xenobiology) "cMP" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -80801,11 +75939,9 @@ /area/toxins/xenobiology) "cMQ" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -80823,7 +75959,6 @@ /area/toxins/xenobiology) "cMR" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -80837,7 +75972,6 @@ /area/toxins/xenobiology) "cMS" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -80850,11 +75984,9 @@ /area/toxins/xenobiology) "cMT" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -80872,7 +76004,6 @@ /area/toxins/xenobiology) "cMU" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -80886,7 +76017,6 @@ /area/toxins/xenobiology) "cMV" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -80899,11 +76029,9 @@ /area/toxins/xenobiology) "cMW" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -80921,7 +76049,6 @@ /area/toxins/xenobiology) "cMX" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -80935,7 +76062,6 @@ /area/toxins/xenobiology) "cMY" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -80945,11 +76071,9 @@ /area/toxins/xenobiology) "cMZ" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/airlock/glass_research{ @@ -80959,13 +76083,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/xenobiology) "cNa" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -80974,7 +76095,6 @@ /area/toxins/xenobiology) "cNb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/purple, @@ -80992,9 +76112,8 @@ "cNd" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, @@ -81034,7 +76153,6 @@ icon_state = "plant-22" }, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; icon_state = "whitepurplecorner"; dir = 1 }, @@ -81058,7 +76176,6 @@ }) "cNj" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -81100,7 +76217,6 @@ }) "cNn" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -81214,7 +76330,6 @@ }) "cNz" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -81260,7 +76375,6 @@ }) "cND" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -81323,9 +76437,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/light_switch{ pixel_x = 38 }, @@ -81478,15 +76591,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) "cNR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -81653,7 +76763,6 @@ "cOm" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -81680,7 +76789,6 @@ /area/maintenance/electrical) "cOq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -81690,7 +76798,7 @@ "cOr" = ( /obj/effect/decal/remains/xeno, /obj/effect/decal/cleanable/xenoblood, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/toxins/xenobiology) "cOs" = ( /obj/structure/sign/electricshock, @@ -81699,9 +76807,8 @@ "cOt" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -81721,7 +76828,6 @@ /area/toxins/xenobiology) "cOv" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -81747,7 +76853,6 @@ pixel_y = 3 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -81773,7 +76878,6 @@ /area/toxins/xenobiology) "cOA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/window/brigdoor{ @@ -81790,7 +76894,6 @@ }, /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; icon_state = "pipe-t"; dir = 1 }, @@ -81824,7 +76927,6 @@ pixel_y = 32 }, /obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; icon_state = "pipe-t"; dir = 1 }, @@ -81836,9 +76938,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: BIOHAZARD CELL"; - pixel_x = 0; - tag = "icon-doors" - }, + pixel_x = 0 + }, /turf/closed/wall, /area/toxins/xenobiology) "cOG" = ( @@ -81882,7 +76983,6 @@ /area/toxins/xenobiology) "cOK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -81916,7 +77016,6 @@ /area/toxins/xenobiology) "cOO" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -81928,7 +77027,6 @@ }) "cOP" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -81940,7 +77038,6 @@ }) "cOQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -81956,15 +77053,12 @@ "cOR" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/door/airlock/security{ @@ -81983,11 +77077,9 @@ }) "cOS" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -81999,11 +77091,9 @@ }) "cOT" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/chair/office/dark{ @@ -82015,7 +77105,6 @@ }) "cOU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/computer/security, @@ -82027,11 +77116,9 @@ /obj/structure/cable/white, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -82049,7 +77136,6 @@ }) "cOX" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -82167,9 +77253,8 @@ dir = 1; icon_state = "pipe-j1s"; name = "Chemistry Junction"; - sortType = 11; - tag = "icon-pipe-j1s (NORTH)" - }, + sortType = 11 + }, /turf/open/floor/plasteel/blue/corner, /area/hallway/primary/aft) "cPj" = ( @@ -82311,7 +77396,6 @@ }) "cPu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -82339,7 +77423,6 @@ }) "cPw" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -82351,7 +77434,6 @@ }) "cPx" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -82361,7 +77443,6 @@ "cPy" = ( /obj/machinery/computer/secure_data, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; icon_state = "red"; dir = 6 }, @@ -82379,14 +77460,12 @@ dir = 4 }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; icon_state = "red"; dir = 4 }, /area/security/checkpoint/medical) "cPB" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -82398,7 +77477,6 @@ /area/security/checkpoint/medical) "cPC" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -82522,37 +77600,11 @@ }) "cPJ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/neutral, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cPK" = ( -/obj/structure/mirror{ - pixel_x = 26 - }, -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/vomit/old, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_y = 32; - tag = "icon-poster3_legit" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/landmark{ - name = "blobstart" - }, -/turf/open/floor/plasteel/neutral, /area/medical/medbay{ name = "Medbay Central" }) @@ -82689,7 +77741,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -82720,7 +77771,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -82750,7 +77800,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cQd" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -82772,7 +77821,6 @@ /area/maintenance/electrical) "cQf" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - tag = "icon-manifold (NORTH)"; name = "scrubbers pipe"; icon_state = "manifold"; dir = 1 @@ -82888,9 +77936,8 @@ /obj/structure/cable/white, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -82922,7 +77969,6 @@ /area/toxins/xenobiology) "cQu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -82932,7 +77978,6 @@ /area/toxins/xenobiology) "cQv" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -82965,7 +78010,6 @@ /area/toxins/xenobiology) "cQz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82986,7 +78030,6 @@ /area/toxins/xenobiology) "cQB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83015,7 +78058,6 @@ /area/toxins/xenobiology) "cQD" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -83025,7 +78067,6 @@ /area/toxins/xenobiology) "cQE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83046,14 +78087,12 @@ /area/toxins/xenobiology) "cQG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -83064,7 +78103,6 @@ on = 1 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -83110,7 +78148,6 @@ }) "cQL" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -83133,7 +78170,6 @@ }) "cQN" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -83145,7 +78181,6 @@ }) "cQO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, @@ -83214,7 +78249,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/structure/disposalpipe/segment{ - tag = "icon-pipe-s (EAST)"; icon_state = "pipe-s"; dir = 4 }, @@ -83227,7 +78261,6 @@ icon_state = "plant-22" }, /obj/structure/disposalpipe/segment{ - tag = "icon-pipe-s (EAST)"; icon_state = "pipe-s"; dir = 4 }, @@ -83239,7 +78272,6 @@ }) "cQY" = ( /obj/structure/disposalpipe/segment{ - tag = "icon-pipe-s (EAST)"; icon_state = "pipe-s"; dir = 4 }, @@ -83283,12 +78315,10 @@ }) "cRd" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -83298,7 +78328,6 @@ "cRe" = ( /obj/machinery/computer/security, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red, @@ -83317,11 +78346,9 @@ "cRh" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/airlock/security{ @@ -83358,7 +78385,6 @@ }) "cRk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whiteblue/side, @@ -83417,15 +78443,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) "cRp" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -83442,7 +78465,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cRr" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -83454,11 +78476,9 @@ }) "cRs" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -83497,7 +78517,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cRw" = ( /obj/machinery/atmospherics/components/binary/valve{ - tag = "icon-mvalve_map (NORTH)"; icon_state = "mvalve_map"; dir = 1 }, @@ -83511,7 +78530,6 @@ /area/maintenance/electrical) "cRx" = ( /obj/machinery/atmospherics/components/binary/valve{ - tag = "icon-mvalve_map (NORTH)"; icon_state = "mvalve_map"; dir = 1 }, @@ -83592,7 +78610,6 @@ "cRI" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -83611,18 +78628,15 @@ network = list("SS13","xeno","RD") }, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5 }, /area/toxins/xenobiology) "cRK" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/door/window/brigdoor{ @@ -83640,7 +78654,6 @@ /area/toxins/xenobiology) "cRL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/window/brigdoor{ @@ -83653,15 +78666,12 @@ /area/toxins/xenobiology) "cRM" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -83671,7 +78681,6 @@ /area/toxins/xenobiology) "cRN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -83679,7 +78688,6 @@ /area/toxins/xenobiology) "cRO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -83689,7 +78697,6 @@ "cRP" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -83699,7 +78706,6 @@ /area/toxins/xenobiology) "cRQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/shower{ @@ -83720,7 +78726,6 @@ /area/toxins/xenobiology) "cRR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -83730,15 +78735,12 @@ /area/toxins/xenobiology) "cRS" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark{ @@ -83751,7 +78753,6 @@ /area/toxins/xenobiology) "cRT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/shower{ @@ -83770,15 +78771,12 @@ /area/toxins/xenobiology) "cRU" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -83788,7 +78786,6 @@ /area/toxins/xenobiology) "cRV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitepurple/side{ @@ -83797,11 +78794,9 @@ /area/toxins/xenobiology) "cRW" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark/start{ @@ -83825,7 +78820,7 @@ /obj/machinery/status_display{ pixel_x = 32 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/toxins/xenobiology) "cSa" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -83843,7 +78838,6 @@ }) "cSb" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/door_timer{ @@ -83872,7 +78866,6 @@ pixel_y = -7 }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; icon_state = "red"; dir = 10 }, @@ -83881,11 +78874,9 @@ }) "cSc" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/red/side, @@ -84165,12 +79156,10 @@ /area/security/checkpoint/medical) "cSF" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -84181,7 +79170,6 @@ dir = 4 }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (EAST)"; icon_state = "red"; dir = 4 }, @@ -84211,7 +79199,6 @@ pixel_x = 32 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -84221,31 +79208,6 @@ /area/medical/medbay{ name = "Medbay Central" }) -"cSK" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_medical{ - name = "Medbay Storage"; - req_access_txt = "5" - }, -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 2 - }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, -/area/medical/medbay2{ - name = "Medbay Storage" - }) "cSL" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/glass_medical{ @@ -84255,9 +79217,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay2{ name = "Medbay Storage" }) @@ -84320,7 +79280,6 @@ }) "cSR" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -84399,7 +79358,6 @@ "cSZ" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -84467,7 +79425,6 @@ }) "cTh" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -84523,17 +79480,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/maintenance/electrical) -"cTo" = ( -/obj/structure/table/reinforced, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/item/clothing/gloves/color/yellow, -/obj/item/weapon/storage/toolbox/electrical, -/turf/open/floor/plating, -/area/maintenance/electrical) "cTp" = ( /obj/machinery/power/smes, /obj/machinery/light/small, @@ -84585,12 +79531,10 @@ /area/maintenance/electrical) "cTv" = ( /obj/structure/disposaloutlet{ - tag = "icon-outlet (WEST)"; icon_state = "outlet"; dir = 8 }, /obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (EAST)"; icon_state = "pipe-t"; dir = 4 }, @@ -84602,9 +79546,8 @@ /obj/structure/cable/white, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -84612,7 +79555,6 @@ name = "Secure Pen Shutters" }, /obj/structure/disposalpipe/segment{ - tag = "icon-pipe-s (EAST)"; icon_state = "pipe-s"; dir = 4 }, @@ -84625,7 +79567,6 @@ }, /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (WEST)"; icon_state = "pipe-t"; dir = 8 }, @@ -84640,7 +79581,6 @@ /area/toxins/xenobiology) "cTz" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -84666,7 +79606,6 @@ /area/toxins/xenobiology) "cTC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -84702,7 +79641,6 @@ /area/toxins/xenobiology) "cTG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -84712,7 +79650,6 @@ /area/toxins/xenobiology) "cTH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -84733,11 +79670,9 @@ /area/toxins/xenobiology) "cTJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -84767,7 +79702,8 @@ departmentType = 0; name = "Xenobiology RC"; pixel_x = 32; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/machinery/camera{ c_tag = "Xenobiology - Starboard"; @@ -84792,7 +79728,6 @@ }) "cTO" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -84803,15 +79738,12 @@ }) "cTP" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/window/brigdoor{ @@ -84825,7 +79757,6 @@ }) "cTQ" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -84848,9 +79779,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -84871,9 +79800,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -84926,11 +79853,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/toxins/lab) -"cUa" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/turf/open/floor/plating, -/area/toxins/lab) "cUb" = ( /obj/structure/sign/nanotrasen, /turf/closed/wall/r_wall, @@ -85068,7 +79990,6 @@ }) "cUn" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/door_timer{ @@ -85093,22 +80014,18 @@ name = "security camera" }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; icon_state = "red"; dir = 10 }, /area/security/checkpoint/medical) "cUo" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -85129,7 +80046,6 @@ icon_state = "tube1" }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; icon_state = "red"; dir = 6 }, @@ -85173,7 +80089,6 @@ }) "cUt" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whiteblue/corner{ @@ -85184,7 +80099,6 @@ }) "cUu" = ( /turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1 }, @@ -85219,7 +80133,6 @@ }) "cUx" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -85248,11 +80161,9 @@ }) "cUB" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -85264,11 +80175,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cUC" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -85282,7 +80191,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cUD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -85297,7 +80205,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cUE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -85311,7 +80218,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cUF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -85325,7 +80231,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cUG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -85339,7 +80244,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cUH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -85352,11 +80256,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cUI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -85367,7 +80269,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cUJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -85381,7 +80282,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cUK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -85401,7 +80301,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -85419,7 +80318,6 @@ }) "cUM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -85437,7 +80335,6 @@ }) "cUN" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -85503,7 +80400,6 @@ }) "cUT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -85523,7 +80419,6 @@ /obj/item/weapon/storage/crayons, /obj/item/weapon/storage/crayons, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; icon_state = "escape"; dir = 4 }, @@ -85554,9 +80449,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/electrical) "cUZ" = ( /obj/structure/sign/securearea, @@ -85571,9 +80464,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/electrical) "cVb" = ( /obj/structure/cable/white, @@ -85593,7 +80484,6 @@ /area/toxins/xenobiology) "cVd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -85605,7 +80495,6 @@ /area/toxins/xenobiology) "cVe" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -85633,7 +80522,6 @@ /area/toxins/xenobiology) "cVh" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/window/brigdoor{ @@ -85712,7 +80600,6 @@ /area/toxins/xenobiology) "cVo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark/start{ @@ -85723,7 +80610,6 @@ /area/toxins/xenobiology) "cVp" = ( /obj/structure/chair/office/light{ - tag = "icon-officechair_white (EAST)"; icon_state = "officechair_white"; dir = 4 }, @@ -85735,11 +80621,9 @@ "cVq" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -85750,7 +80634,6 @@ }) "cVr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/chair{ @@ -85764,15 +80647,12 @@ }) "cVs" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/red/side{ @@ -85783,7 +80663,6 @@ }) "cVt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/closet/secure_closet/brig{ @@ -85798,7 +80677,6 @@ }) "cVu" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -85834,7 +80712,6 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -85851,7 +80728,6 @@ pixel_x = 11 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -85877,7 +80753,6 @@ "cVB" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (EAST)"; icon_state = "pipe-t"; dir = 4 }, @@ -85912,7 +80787,6 @@ /area/toxins/lab) "cVE" = ( /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -85951,7 +80825,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/purple/corner{ - tag = "icon-purplecorner (WEST)"; icon_state = "purplecorner"; dir = 8 }, @@ -85965,7 +80838,6 @@ /area/hallway/primary/aft) "cVK" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -85995,7 +80867,6 @@ pixel_y = 32 }, /turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (NORTH)"; icon_state = "whiteyellowcorner"; dir = 1 }, @@ -86005,7 +80876,6 @@ /obj/item/weapon/clipboard, /obj/item/toy/figure/chemist, /turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (NORTH)"; icon_state = "whiteyellowcorner"; dir = 1 }, @@ -86039,7 +80909,6 @@ /area/medical/chemistry) "cVR" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/apc{ @@ -86058,9 +80927,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn (NORTHWEST)" - }, +/turf/open/floor/plasteel, /area/medical/chemistry) "cVT" = ( /obj/machinery/ai_status_display, @@ -86119,7 +80986,6 @@ }) "cVZ" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -86128,15 +80994,12 @@ /area/security/checkpoint/medical) "cWa" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -86148,27 +81011,12 @@ /area/security/checkpoint/medical) "cWb" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, /area/security/checkpoint/medical) -"cWc" = ( -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 1 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) "cWd" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/line{ @@ -86180,7 +81028,6 @@ }) "cWe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -86229,7 +81076,6 @@ name = "Medical Doctor" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -86239,7 +81085,6 @@ }) "cWk" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -86269,7 +81114,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cWn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -86357,7 +81201,6 @@ dir = 4 }, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; icon_state = "escape"; dir = 4 }, @@ -86382,12 +81225,10 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, /turf/open/floor/plasteel/purple/side{ - tag = "icon-purple (EAST)"; icon_state = "purple"; dir = 4 }, @@ -86401,7 +81242,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cWB" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -86415,7 +81255,6 @@ name = "blobstart" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -86427,7 +81266,6 @@ "cWD" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -86444,7 +81282,6 @@ "cWF" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -86456,7 +81293,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cWG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -86470,7 +81306,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cWH" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -86482,19 +81317,16 @@ pixel_y = 28 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /turf/open/floor/plating, /area/maintenance/fpmaint2/port_maintenance) "cWI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -86502,12 +81334,10 @@ "cWJ" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -86517,12 +81347,10 @@ /area/maintenance/fpmaint2/port_maintenance) "cWK" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -86534,12 +81362,10 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -86548,12 +81374,10 @@ "cWM" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -86563,7 +81387,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cWN" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -86572,7 +81395,6 @@ "cWO" = ( /obj/machinery/light, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5 }, @@ -86580,7 +81402,6 @@ "cWP" = ( /obj/machinery/shieldwallgen, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/effect/turf_decal/stripes/line{ @@ -86590,7 +81411,6 @@ /area/toxins/xenobiology) "cWQ" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/airalarm{ @@ -86623,7 +81443,6 @@ /area/toxins/xenobiology) "cWT" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -86637,11 +81456,9 @@ /area/toxins/xenobiology) "cWU" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/door/window/brigdoor{ @@ -86659,7 +81476,6 @@ /area/toxins/xenobiology) "cWV" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -86672,7 +81488,6 @@ /area/toxins/xenobiology) "cWW" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -86686,11 +81501,9 @@ /area/toxins/xenobiology) "cWX" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/door/window/brigdoor{ @@ -86708,7 +81521,6 @@ /area/toxins/xenobiology) "cWY" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -86721,7 +81533,6 @@ /area/toxins/xenobiology) "cWZ" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -86735,11 +81546,9 @@ /area/toxins/xenobiology) "cXa" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/door/poddoor/preopen{ @@ -86757,7 +81566,6 @@ /area/toxins/xenobiology) "cXb" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -86783,15 +81591,12 @@ /area/toxins/xenobiology) "cXe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -86799,7 +81604,6 @@ /area/toxins/xenobiology) "cXf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -86811,7 +81615,6 @@ /area/toxins/xenobiology) "cXg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -86824,7 +81627,6 @@ /obj/item/weapon/folder/white, /obj/item/weapon/pen, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/light{ @@ -86845,7 +81647,6 @@ dir = 4 }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; icon_state = "red"; dir = 10 }, @@ -86854,7 +81655,6 @@ }) "cXj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side, @@ -86896,7 +81696,6 @@ "cXn" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -87068,7 +81867,6 @@ /area/medical/chemistry) "cXF" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -87142,7 +81940,6 @@ }) "cXM" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -87155,11 +81952,9 @@ "cXN" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -87168,7 +81963,6 @@ /area/security/checkpoint/medical) "cXO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/chair{ @@ -87180,11 +81974,9 @@ /area/security/checkpoint/medical) "cXP" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/red/side{ @@ -87202,7 +81994,6 @@ /area/security/checkpoint/medical) "cXR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/blue, @@ -87297,9 +82088,8 @@ "cYa" = ( /obj/structure/mirror{ icon_state = "mirror_broke"; - pixel_y = 28; - tag = "icon-mirror_broke" - }, + pixel_y = 28 + }, /turf/open/floor/plasteel/whiteblue/corner{ dir = 1 }, @@ -87348,9 +82138,8 @@ "cYe" = ( /obj/structure/mirror{ icon_state = "mirror_broke"; - pixel_y = 28; - tag = "icon-mirror_broke" - }, + pixel_y = 28 + }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/whiteblue/corner{ dir = 4 @@ -87434,7 +82223,6 @@ pixel_y = -32 }, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (EAST)"; icon_state = "escape"; dir = 4 }, @@ -87466,7 +82254,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cYs" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -87500,7 +82287,6 @@ "cYw" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -87509,14 +82295,12 @@ "cYx" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/turf_decal/delivery, @@ -87525,7 +82309,6 @@ "cYy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -87536,7 +82319,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cYz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -87547,7 +82329,6 @@ "cYA" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -87557,11 +82338,9 @@ /area/maintenance/fpmaint2/port_maintenance) "cYB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -87572,7 +82351,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cYC" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -87587,7 +82365,6 @@ "cYE" = ( /obj/structure/disposaloutlet, /obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (NORTH)"; icon_state = "pipe-t"; dir = 1 }, @@ -87653,11 +82430,9 @@ "cYL" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -87709,7 +82484,6 @@ pixel_x = 11 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -87764,9 +82538,8 @@ "cYU" = ( /turf/open/floor/plasteel/whitepurple/side{ dir = 5; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-whitehall (WEST)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/toxins/lab) "cYV" = ( /obj/machinery/computer/rdconsole/core, @@ -87809,14 +82582,12 @@ /obj/item/weapon/grenade/chem_grenade, /obj/item/weapon/grenade/chem_grenade, /turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; icon_state = "whiteyellowcorner"; dir = 8 }, /area/medical/chemistry) "cZa" = ( /turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; icon_state = "whiteyellowcorner"; dir = 8 }, @@ -87855,22 +82626,6 @@ /obj/machinery/status_display, /turf/closed/wall, /area/medical/chemistry) -"cZg" = ( -/obj/structure/table/glass, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/md, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/obj/machinery/light/small, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) "cZh" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/whiteblue/corner{ @@ -87897,7 +82652,6 @@ }) "cZk" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -87923,41 +82677,34 @@ dir = 4 }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHWEST)"; icon_state = "red"; dir = 10 }, /area/security/checkpoint/medical) "cZn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/red/side, /area/security/checkpoint/medical) "cZo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side{ - tag = "icon-red (SOUTHEAST)"; icon_state = "red"; dir = 6 }, /area/security/checkpoint/medical) "cZp" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -87972,15 +82719,12 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) "cZr" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whiteblue/corner{ @@ -88002,24 +82746,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (WEST)" - }, -/area/medical/medbay{ - name = "Medbay Central" - }) -"cZu" = ( -/obj/structure/table/wood, -/obj/item/weapon/storage/pill_bottle/dice, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/turf/open/floor/plasteel/neutral/corner{ - dir = 8 - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -88063,7 +82790,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "cZA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -88127,7 +82853,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/barricade/wooden, @@ -88152,7 +82877,6 @@ "cZK" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -88161,7 +82885,6 @@ "cZL" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88176,7 +82899,6 @@ name = "3maintenance loot spawner" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88189,7 +82911,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88203,7 +82924,6 @@ name = "2maintenance loot spawner" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88211,7 +82931,6 @@ /area/maintenance/fpmaint2/port_maintenance) "cZP" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88223,7 +82942,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -88235,7 +82953,6 @@ /area/toxins/xenobiology) "cZS" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -88248,15 +82965,12 @@ /area/toxins/xenobiology) "cZT" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -88271,13 +82985,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/xenobiology) "cZU" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -88294,9 +83005,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -88305,9 +83014,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -88317,9 +83024,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -88384,7 +83089,6 @@ /obj/item/weapon/stock_parts/console_screen, /obj/item/weapon/stock_parts/console_screen, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -88400,7 +83104,6 @@ /area/toxins/lab) "daf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -88408,7 +83111,6 @@ /area/toxins/lab) "dag" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitepurple/side{ @@ -88420,7 +83122,6 @@ pixel_x = -16 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/whitepurple/side{ @@ -88434,6 +83135,7 @@ name = "Research RC"; pixel_x = 32; pixel_y = 0 + receive_ore_updates = 1 }, /obj/machinery/camera{ c_tag = "Science - Research and Development"; @@ -88467,7 +83169,6 @@ req_access_txt = "33" }, /turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; icon_state = "whiteyellowcorner"; dir = 8 }, @@ -88503,9 +83204,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/light{ dir = 4; icon_state = "tube1" @@ -88553,15 +83253,12 @@ "das" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/airlock/glass_security{ @@ -88572,9 +83269,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/security/checkpoint/medical) "dat" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -88582,9 +83277,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -88593,9 +83286,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -88605,9 +83296,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -88620,15 +83309,12 @@ "dax" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -88650,9 +83336,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -88672,16 +83356,13 @@ /area/maintenance/starboard/aft_starboard_maintenance) "daC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -88696,7 +83377,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -88716,7 +83396,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/whiteblue/corner{ @@ -88827,7 +83506,6 @@ "daR" = ( /obj/structure/table/wood, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/item/clothing/gloves/color/fyellow, @@ -88868,16 +83546,8 @@ }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) -"daU" = ( -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/black, -/area/crew_quarters/abandoned_gambling_den) "daV" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -88897,11 +83567,9 @@ /area/crew_quarters/abandoned_gambling_den) "daY" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -88909,11 +83577,9 @@ /area/maintenance/fpmaint2/port_maintenance) "daZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88923,11 +83589,9 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88936,11 +83600,9 @@ "dbb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88948,11 +83610,9 @@ /area/maintenance/fpmaint2/port_maintenance) "dbc" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88961,11 +83621,9 @@ "dbd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -88973,11 +83631,9 @@ /area/maintenance/fpmaint2/port_maintenance) "dbe" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -88987,7 +83643,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -89051,7 +83706,6 @@ }) "dbl" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -89063,7 +83717,6 @@ }) "dbm" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -89150,7 +83803,6 @@ dir = 4 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -89193,7 +83845,6 @@ dir = 1 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -89240,7 +83891,6 @@ /area/toxins/lab) "dbA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -89256,7 +83906,6 @@ /area/toxins/lab) "dbC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/table, @@ -89271,9 +83920,8 @@ }, /turf/open/floor/plasteel/whitepurple/side{ dir = 6; - initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; - tag = "icon-whitepurple (SOUTHEAST)" - }, + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + }, /area/toxins/lab) "dbD" = ( /obj/effect/decal/cleanable/dirt, @@ -89343,7 +83991,6 @@ "dbL" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ - tag = "icon-pipe-t (WEST)"; icon_state = "pipe-t"; dir = 8 }, @@ -89359,7 +84006,6 @@ /area/medical/chemistry) "dbN" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -89369,7 +84015,6 @@ /area/medical/chemistry) "dbO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -89406,7 +84051,6 @@ dir = 4 }, /turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (NORTH)"; icon_state = "whiteyellowcorner"; dir = 1 }, @@ -89490,7 +84134,6 @@ }) "dbZ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -89504,7 +84147,6 @@ }) "dca" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -89547,7 +84189,6 @@ }) "dce" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -89557,21 +84198,6 @@ /area/medical/medbay{ name = "Medbay Central" }) -"dcf" = ( -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/whiteblue/corner{ - dir = 4 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) "dcg" = ( /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, /turf/open/floor/plasteel/whiteblue/corner{ @@ -89591,7 +84217,6 @@ "dci" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -89599,7 +84224,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dcj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -89614,7 +84238,6 @@ name = "emergency shower" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whiteblue/corner{ @@ -89694,7 +84317,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -89704,7 +84326,6 @@ /area/crew_quarters/abandoned_gambling_den) "dcv" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -89712,7 +84333,6 @@ /area/crew_quarters/abandoned_gambling_den) "dcw" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -89722,15 +84342,12 @@ /area/crew_quarters/abandoned_gambling_den) "dcx" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -89738,11 +84355,9 @@ /area/crew_quarters/abandoned_gambling_den) "dcy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -89752,12 +84367,10 @@ /area/crew_quarters/abandoned_gambling_den) "dcz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -89767,15 +84380,12 @@ /area/crew_quarters/abandoned_gambling_den) "dcA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -89793,7 +84403,6 @@ "dcC" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -89801,16 +84410,6 @@ dir = 5 }, /area/crew_quarters/abandoned_gambling_den) -"dcD" = ( -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) "dcE" = ( /turf/closed/wall, /area/medical/research{ @@ -89836,7 +84435,6 @@ "dcH" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -89975,7 +84573,6 @@ /area/toxins/lab) "dcW" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark/start{ @@ -89991,7 +84588,6 @@ /area/toxins/lab) "dcX" = ( /obj/structure/chair/office/light{ - tag = "icon-officechair_white (EAST)"; icon_state = "officechair_white"; dir = 4 }, @@ -90059,7 +84655,8 @@ departmentType = 0; name = "Chemistry RC"; pixel_x = 0; - pixel_y = -64 + pixel_y = -64; + receive_ore_updates = 1 }, /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -90082,7 +84679,6 @@ /area/medical/chemistry) "ddh" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/whiteyellow/side{ @@ -90093,7 +84689,6 @@ }) "ddi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -90103,7 +84698,6 @@ }) "ddj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, @@ -90112,7 +84706,6 @@ }) "ddk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/blue, @@ -90121,7 +84714,6 @@ }) "ddl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whiteblue, @@ -90130,7 +84722,6 @@ }) "ddm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -90140,11 +84731,9 @@ }) "ddn" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/device/radio/beacon, @@ -90158,7 +84747,6 @@ }) "ddo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -90168,7 +84756,6 @@ }) "ddp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -90181,11 +84768,9 @@ }) "ddq" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/blue, @@ -90194,7 +84779,6 @@ }) "ddr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -90208,7 +84792,6 @@ }) "dds" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -90218,11 +84801,9 @@ }) "ddt" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/blue, @@ -90231,7 +84812,6 @@ }) "ddu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -90241,11 +84821,9 @@ }) "ddv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/blue, @@ -90254,7 +84832,6 @@ }) "ddw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -90268,7 +84845,6 @@ }) "ddx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -90278,7 +84854,6 @@ }) "ddy" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whiteblue/side{ @@ -90289,7 +84864,6 @@ }) "ddz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -90305,7 +84879,6 @@ }) "ddA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -90315,11 +84888,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "ddB" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -90339,7 +84910,6 @@ pixel_x = -28 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -90433,7 +85003,6 @@ /area/crew_quarters/abandoned_gambling_den) "ddO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -90466,7 +85035,6 @@ "ddS" = ( /obj/structure/table/wood/poker, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/storage/wallet/random, @@ -90481,7 +85049,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -90616,11 +85183,9 @@ /area/maintenance/fpmaint2/port_maintenance) "deg" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -90629,7 +85194,6 @@ "deh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -90638,7 +85202,6 @@ "dei" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -90649,19 +85212,6 @@ "dej" = ( /turf/closed/wall/r_wall, /area/toxins/explab) -"dek" = ( -/obj/structure/table/reinforced, -/obj/structure/sign/poster{ - tag = "icon-poster7_legit"; - icon_state = "poster7_legit"; - pixel_x = -32; - pixel_y = 0 - }, -/obj/item/weapon/storage/toolbox/mechanical, -/obj/item/device/flashlight, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/toxins/explab) "del" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/effect/turf_decal/stripes/line{ @@ -90690,9 +85240,8 @@ "deo" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/machinery/power/apc{ cell_type = 5000; dir = 1; @@ -90742,7 +85291,6 @@ /area/toxins/explab) "deu" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -90754,7 +85302,6 @@ }) "dev" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -90764,7 +85311,6 @@ }) "dew" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -90775,7 +85321,6 @@ }) "dex" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -90927,11 +85472,9 @@ /area/toxins/lab) "deK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -91014,12 +85557,10 @@ /area/medical/chemistry) "deR" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, /turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; icon_state = "whiteyellowcorner"; dir = 8 }, @@ -91044,7 +85585,6 @@ layer = 4.1 }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/item/device/radio/intercom{ @@ -91059,7 +85599,6 @@ /area/medical/chemistry) "deU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -91078,7 +85617,6 @@ req_access_txt = "5; 33" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -91091,14 +85629,12 @@ /area/medical/chemistry) "deW" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /turf/open/floor/plasteel/whiteyellow/corner{ - tag = "icon-whiteyellowcorner (WEST)"; icon_state = "whiteyellowcorner"; dir = 8 }, @@ -91152,7 +85688,6 @@ }) "dfb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -91219,7 +85754,6 @@ }) "dfi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -91239,26 +85773,6 @@ dir = 4 }, /turf/open/floor/plasteel/whiteblue/corner, -/area/medical/medbay{ - name = "Medbay Central" - }) -"dfk" = ( -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/light, -/obj/machinery/camera{ - c_tag = "Medbay - Starboard"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/whiteblue/corner, /area/medical/medbay{ name = "Medbay Central" }) @@ -91279,7 +85793,6 @@ }) "dfn" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -91309,11 +85822,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dfq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -91414,7 +85925,6 @@ "dfz" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -91447,7 +85957,6 @@ on = 1 }, /turf/open/floor/wood{ - tag = "icon-wood-broken2"; icon_state = "wood-broken2" }, /area/maintenance/starboard/aft_starboard_maintenance) @@ -91473,7 +85982,6 @@ /area/crew_quarters/abandoned_gambling_den) "dfF" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -91487,18 +85995,15 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "dfG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/door/window/northright, @@ -91509,7 +86014,6 @@ /area/crew_quarters/abandoned_gambling_den) "dfH" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -91523,11 +86027,9 @@ /area/crew_quarters/abandoned_gambling_den) "dfI" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -91538,11 +86040,9 @@ /area/crew_quarters/abandoned_gambling_den) "dfJ" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white, @@ -91640,7 +86140,6 @@ "dfU" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -91650,7 +86149,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -91661,7 +86159,6 @@ "dfW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -91708,11 +86205,9 @@ /area/toxins/explab) "dgb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -91731,23 +86226,6 @@ dir = 4 }, /area/toxins/explab) -"dge" = ( -/obj/structure/table/reinforced, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/item/stack/cable_coil/white{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stack/cable_coil/white, -/obj/item/device/geiger_counter, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/toxins/explab) "dgf" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -91765,9 +86243,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -91779,7 +86255,6 @@ }) "dgi" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -91791,11 +86266,9 @@ "dgj" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/door/airlock/research{ @@ -91806,15 +86279,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/misc_lab{ name = "\improper Research Testing Range" }) "dgk" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -91833,9 +86303,8 @@ "dgn" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -91850,7 +86319,6 @@ /area/crew_quarters/hor) "dgp" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -91863,11 +86331,9 @@ /area/crew_quarters/hor) "dgq" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -91881,11 +86347,9 @@ "dgr" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -91932,15 +86396,12 @@ req_one_access_txt = "7;29" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/assembly/chargebay) "dgy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -91949,18 +86410,14 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/aft) "dgz" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/aft) "dgA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -91969,16 +86426,13 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/aft) "dgB" = ( /turf/closed/wall, @@ -91993,9 +86447,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/aft) "dgD" = ( /turf/closed/wall, @@ -92011,7 +86463,6 @@ /area/medical/genetics_cloning) "dgG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -92019,24 +86470,19 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) "dgH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -92057,9 +86503,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/surgery) "dgL" = ( /obj/structure/grille, @@ -92075,9 +86519,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/surgery) "dgN" = ( /obj/structure/girder, @@ -92088,7 +86530,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dgO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -92115,7 +86556,6 @@ "dgS" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -92139,7 +86579,6 @@ "dgV" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -92150,7 +86589,6 @@ /area/crew_quarters/abandoned_gambling_den) "dgW" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (WEST)"; icon_state = "wooden_chair"; dir = 8 }, @@ -92281,7 +86719,6 @@ /area/toxins/explab) "dhl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -92305,9 +86742,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/toxins/explab) @@ -92329,7 +86765,6 @@ }) "dhr" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -92350,7 +86785,6 @@ }) "dht" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -92388,7 +86822,6 @@ /obj/item/clothing/ears/earmuffs, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/firealarm{ @@ -92409,15 +86842,12 @@ }) "dhw" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -92452,7 +86882,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/effect/turf_decal/delivery, @@ -92478,7 +86907,6 @@ /area/crew_quarters/hor) "dhz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -92517,9 +86945,8 @@ /obj/structure/cable/white, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -92559,7 +86986,6 @@ /area/assembly/chargebay) "dhG" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/turf_decal/stripes/line{ @@ -92569,7 +86995,6 @@ /area/assembly/chargebay) "dhH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -92579,12 +87004,10 @@ /area/assembly/chargebay) "dhI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/turf_decal/stripes/line{ @@ -92594,7 +87017,6 @@ /area/assembly/chargebay) "dhJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -92605,7 +87027,6 @@ /area/assembly/chargebay) "dhK" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -92640,7 +87061,6 @@ /obj/item/weapon/wrench, /obj/item/roller, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; icon_state = "bluecorner"; dir = 1 }, @@ -92648,7 +87068,6 @@ "dhN" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (NORTH)"; icon_state = "bluecorner"; dir = 1 }, @@ -92696,7 +87115,6 @@ pixel_y = 32 }, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; icon_state = "whitepurplecorner"; dir = 1 }, @@ -92716,7 +87134,6 @@ layer = 4.1 }, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (NORTH)"; icon_state = "whitepurplecorner"; dir = 1 }, @@ -92745,7 +87162,6 @@ "dhX" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/apc{ @@ -92771,7 +87187,6 @@ }) "dhZ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -92785,7 +87200,6 @@ }) "dia" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -92840,7 +87254,6 @@ }) "dif" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -92852,7 +87265,6 @@ }) "dig" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -92930,7 +87342,6 @@ /area/medical/surgery) "dir" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -92939,7 +87350,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dis" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -92960,9 +87370,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/construction) "div" = ( /obj/machinery/pipedispenser, @@ -92970,36 +87378,28 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/construction) "diw" = ( /obj/machinery/pipedispenser/disposal, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/construction) "dix" = ( /obj/machinery/pipedispenser/disposal/transit_tube, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/construction) "diy" = ( /obj/structure/filingcabinet/chestdrawer, /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (EAST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/construction) "diz" = ( /obj/structure/table, @@ -93022,7 +87422,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -93059,16 +87458,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/maintenance/starboard/aft_starboard_maintenance) -"diF" = ( -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/abandoned_gambling_den) "diG" = ( /turf/open/floor/plasteel/grimy, /area/crew_quarters/abandoned_gambling_den) @@ -93082,7 +87471,6 @@ /area/crew_quarters/abandoned_gambling_den) "diI" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4 }, @@ -93093,7 +87481,6 @@ /area/crew_quarters/abandoned_gambling_den) "diK" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (WEST)"; icon_state = "wooden_chair"; dir = 8 }, @@ -93213,7 +87600,6 @@ "diW" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -93221,11 +87607,9 @@ /area/maintenance/fpmaint2/port_maintenance) "diX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -93238,7 +87622,6 @@ /area/maintenance/fpmaint2/port_maintenance) "diY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -93256,7 +87639,6 @@ /area/toxins/explab) "diZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -93267,7 +87649,6 @@ /area/toxins/explab) "dja" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -93280,7 +87661,6 @@ /area/toxins/explab) "djb" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -93296,7 +87676,6 @@ /area/toxins/explab) "djc" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -93312,7 +87691,6 @@ "djd" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/item/stack/sheet/mineral/plasma{ @@ -93351,7 +87729,6 @@ /obj/item/weapon/folder/white, /obj/item/weapon/pen, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -93491,7 +87868,6 @@ "djp" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/junction{ @@ -93508,7 +87884,6 @@ }) "djq" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -93525,9 +87900,8 @@ "djr" = ( /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -93554,7 +87928,6 @@ /area/crew_quarters/hor) "djt" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -93574,7 +87947,6 @@ /area/crew_quarters/hor) "djv" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -93591,7 +87963,6 @@ /obj/structure/filingcabinet/chestdrawer, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -93602,9 +87973,8 @@ /obj/structure/cable/white, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/door/poddoor/preopen{ @@ -93612,7 +87982,6 @@ name = "Research Director's Shutters" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -93620,7 +87989,6 @@ /area/crew_quarters/hor) "djy" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -93643,7 +88011,6 @@ }) "djA" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -93673,7 +88040,6 @@ /area/assembly/chargebay) "djD" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -93698,7 +88064,7 @@ /area/assembly/chargebay) "djF" = ( /obj/machinery/computer/mech_bay_power_console, -/turf/open/floor/plasteel/circuit, +/turf/open/floor/circuit, /area/assembly/chargebay) "djG" = ( /obj/effect/decal/cleanable/dirt, @@ -93706,7 +88072,6 @@ /area/assembly/chargebay) "djH" = ( /obj/machinery/mech_bay_recharge_port{ - tag = "icon-recharge_port (WEST)"; icon_state = "recharge_port"; dir = 8 }, @@ -93742,7 +88107,6 @@ /area/hallway/primary/aft) "djL" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -93789,7 +88153,6 @@ /area/hallway/primary/aft) "djQ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -93828,7 +88191,6 @@ /area/medical/genetics_cloning) "djV" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -93842,7 +88204,6 @@ /area/medical/genetics_cloning) "djX" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -93860,7 +88221,6 @@ req_access_txt = "5" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -93873,7 +88233,6 @@ /area/medical/genetics_cloning) "djZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -93881,7 +88240,6 @@ dir = 4 }, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; icon_state = "whitepurplecorner"; dir = 8 }, @@ -93890,11 +88248,9 @@ }) "dka" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -93981,7 +88337,6 @@ /area/medical/surgery) "dkj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -94080,13 +88435,11 @@ /area/crew_quarters/abandoned_gambling_den) "dkw" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4 }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/crew_quarters/abandoned_gambling_den) @@ -94116,7 +88469,6 @@ /area/crew_quarters/abandoned_gambling_den) "dkA" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (WEST)"; icon_state = "wooden_chair"; dir = 8 }, @@ -94160,7 +88512,6 @@ "dkF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/turf_decal/stripes/line, @@ -94170,11 +88521,9 @@ }) "dkG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -94185,11 +88534,9 @@ }) "dkH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -94202,11 +88549,9 @@ }) "dkI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -94218,11 +88563,9 @@ "dkJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -94245,11 +88588,9 @@ name = "Decrepit Blast Door" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -94263,11 +88604,9 @@ "dkL" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -94277,15 +88616,12 @@ /area/maintenance/fpmaint2/port_maintenance) "dkM" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -94295,7 +88631,6 @@ /area/maintenance/fpmaint2/port_maintenance) "dkN" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -94307,7 +88642,6 @@ /obj/item/stack/medical/bruise_pack, /obj/item/stack/medical/ointment, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -94472,7 +88806,6 @@ pixel_y = -26 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -94483,11 +88816,9 @@ }) "dle" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -94502,7 +88833,6 @@ }) "dlf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -94514,11 +88844,9 @@ "dlg" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/door/airlock/command{ @@ -94533,11 +88861,9 @@ /area/crew_quarters/hor) "dlh" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment, @@ -94546,11 +88872,9 @@ /area/crew_quarters/hor) "dli" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/whitepurple/corner{ @@ -94559,27 +88883,22 @@ /area/crew_quarters/hor) "dlj" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, /area/crew_quarters/hor) "dlk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -94596,7 +88915,6 @@ /area/crew_quarters/hor) "dll" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -94611,11 +88929,9 @@ "dlm" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/door/airlock/command{ @@ -94643,7 +88959,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitepurple/corner{ @@ -94661,7 +88976,6 @@ icon_state = "pipe-j2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/purple, @@ -94670,7 +88984,6 @@ }) "dlp" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -94689,7 +89002,6 @@ /area/assembly/chargebay) "dlr" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -94703,7 +89015,7 @@ /turf/open/floor/plasteel, /area/assembly/chargebay) "dlt" = ( -/turf/open/floor/plasteel/circuit, +/turf/open/floor/circuit, /area/assembly/chargebay) "dlu" = ( /obj/effect/decal/cleanable/dirt, @@ -94735,7 +89047,6 @@ /area/assembly/chargebay) "dlx" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -94777,7 +89088,6 @@ "dlC" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -94828,7 +89138,6 @@ /area/medical/genetics_cloning) "dlJ" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -94857,7 +89166,6 @@ /area/medical/genetics_cloning) "dlM" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -94869,7 +89177,6 @@ }) "dlN" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -94938,16 +89245,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/hallway/secondary/construction) -"dlV" = ( -/obj/structure/chair/stool/bar, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/grimy, -/area/crew_quarters/abandoned_gambling_den) "dlW" = ( /obj/structure/chair/stool/bar, /obj/effect/decal/cleanable/dirt, @@ -94955,7 +89252,6 @@ /area/crew_quarters/abandoned_gambling_den) "dlX" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4 }, @@ -94975,7 +89271,6 @@ "dlZ" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -94988,7 +89283,6 @@ "dma" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/crew_quarters/abandoned_gambling_den) @@ -95092,7 +89386,6 @@ /area/maintenance/fpmaint2/port_maintenance) "dmk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -95180,9 +89473,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -95204,7 +89495,6 @@ }) "dmy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/window/northright{ @@ -95248,7 +89538,6 @@ "dmC" = ( /obj/structure/chair/office/light, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -95276,9 +89565,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/camera{ c_tag = "Science - Research Director's Office"; dir = 8; @@ -95303,7 +89591,6 @@ "dmG" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -95330,7 +89617,6 @@ /area/assembly/chargebay) "dmJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -95390,7 +89676,6 @@ /obj/structure/bed/roller, /obj/machinery/iv_drip, /turf/open/floor/plasteel/blue/corner{ - tag = "icon-bluecorner (WEST)"; icon_state = "bluecorner"; dir = 8 }, @@ -95455,9 +89740,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 7; - pixel_y = -26; - tag = "icon-fire0 (EAST)" - }, + pixel_y = -26 + }, /obj/machinery/light, /obj/machinery/light_switch{ pixel_x = 7; @@ -95481,7 +89765,6 @@ "dnc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; icon_state = "whitepurplecorner"; dir = 8 }, @@ -95490,7 +89773,6 @@ }) "dnd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -95556,7 +89838,6 @@ }) "dnj" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -95597,7 +89878,6 @@ pixel_x = 32 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -95642,7 +89922,6 @@ }, /obj/structure/table/reinforced, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -95671,12 +89950,10 @@ /area/medical/surgery) "dnu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -95705,7 +89982,6 @@ /area/crew_quarters/abandoned_gambling_den) "dnz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/window/eastleft, @@ -95739,9 +90015,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Abandoned Research Lab" }) @@ -95791,7 +90065,6 @@ }) "dnK" = ( /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -95829,7 +90102,6 @@ }) "dnO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -95848,7 +90120,6 @@ }) "dnQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/disposal/bin, @@ -95860,7 +90131,6 @@ /area/crew_quarters/hor) "dnR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitepurple/side{ @@ -95870,11 +90140,9 @@ "dnS" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/button/door{ @@ -95932,7 +90200,6 @@ }, /obj/structure/disposalpipe/segment, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/purple, @@ -95949,10 +90216,10 @@ /area/assembly/chargebay) "dnX" = ( /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "dnY" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "dnZ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -95976,9 +90243,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/genetics) "doc" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -95989,7 +90254,6 @@ /area/medical/genetics) "doe" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -96003,24 +90267,19 @@ req_access_txt = "9" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/genetics) "dog" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -96030,7 +90289,6 @@ /area/medical/genetics) "doh" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -96048,11 +90306,9 @@ }) "doi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -96122,7 +90378,6 @@ name = "medbay camera" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -96148,7 +90403,6 @@ name = "Medical Doctor" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -96178,11 +90432,9 @@ /area/medical/surgery) "dow" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -96194,11 +90446,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dox" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -96212,7 +90462,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -96278,7 +90527,6 @@ "doG" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -96290,11 +90538,9 @@ /area/crew_quarters/abandoned_gambling_den) "doH" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -96304,7 +90550,6 @@ "doI" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -96435,7 +90680,6 @@ "doV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -96445,7 +90689,6 @@ /area/maintenance/fpmaint2/port_maintenance) "doW" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -96493,7 +90736,6 @@ /area/toxins/explab) "dpc" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -96581,7 +90823,8 @@ departmentType = 5; name = "Research Director's RC"; pixel_x = -32; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, @@ -96598,15 +90841,12 @@ "dpm" = ( /obj/machinery/computer/aifixer, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -96617,7 +90857,6 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -96629,7 +90868,6 @@ "dpo" = ( /obj/machinery/computer/mecha, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/bot, @@ -96637,7 +90875,6 @@ /area/crew_quarters/hor) "dpp" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -96650,7 +90887,6 @@ /area/crew_quarters/hor) "dpq" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -96662,13 +90898,11 @@ }) "dpr" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/structure/disposalpipe/segment, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -96677,7 +90911,6 @@ }) "dps" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -96691,7 +90924,6 @@ /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -96701,7 +90933,6 @@ /obj/machinery/recharge_station, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -96710,7 +90941,6 @@ /area/assembly/chargebay) "dpv" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -96736,11 +90966,10 @@ /area/assembly/chargebay) "dpx" = ( /obj/machinery/computer/mech_bay_power_console, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "dpy" = ( /obj/machinery/mech_bay_recharge_port{ - tag = "icon-recharge_port (WEST)"; icon_state = "recharge_port"; dir = 8 }, @@ -96755,9 +90984,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = -26; - tag = "icon-fire0 (EAST)" - }, + pixel_y = -26 + }, /obj/machinery/light_switch{ pixel_x = 26; pixel_y = -38 @@ -96852,18 +91080,14 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/genetics) "dpK" = ( /obj/machinery/dna_scannernew, /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/genetics) "dpL" = ( /obj/item/weapon/twohanded/required/kirbyplants{ @@ -96875,14 +91099,12 @@ pixel_y = 26 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (WEST)"; icon_state = "whitepurple"; dir = 8 }, /area/medical/genetics) "dpM" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -96918,13 +91140,10 @@ dir = 1 }, /mob/living/carbon/monkey, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (NORTH)" - }, +/turf/open/floor/plasteel, /area/medical/genetics) "dpP" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -96945,7 +91164,6 @@ }) "dpR" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -97008,11 +91226,9 @@ /area/medical/cmo) "dpX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97024,7 +91240,6 @@ }) "dpY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -97038,7 +91253,6 @@ "dpZ" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/medical{ @@ -97054,7 +91268,6 @@ /area/medical/surgery) "dqa" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97066,14 +91279,12 @@ /area/medical/surgery) "dqb" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ name = "Medical Doctor" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -97081,7 +91292,6 @@ /area/medical/surgery) "dqc" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97098,7 +91308,6 @@ req_access_txt = "45" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97111,7 +91320,6 @@ /area/medical/surgery) "dqe" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97124,11 +91332,9 @@ "dqf" = ( /obj/machinery/computer/operating, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -97138,11 +91344,9 @@ /obj/structure/table/optable, /obj/effect/decal/cleanable/blood/old, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97153,7 +91357,6 @@ "dqh" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97164,7 +91367,6 @@ /area/medical/surgery) "dqi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97178,7 +91380,6 @@ req_access_txt = "45" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97191,11 +91392,9 @@ /area/medical/surgery) "dqk" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -97208,7 +91407,6 @@ "dql" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -97301,7 +91499,6 @@ /area/crew_quarters/abandoned_gambling_den) "dqv" = ( /turf/open/floor/wood{ - tag = "icon-wood-broken7"; icon_state = "wood-broken7" }, /area/crew_quarters/abandoned_gambling_den) @@ -97341,7 +91538,6 @@ }) "dqA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -97387,7 +91583,6 @@ network = list("SS13","RD") }, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (WEST)"; icon_state = "escape"; dir = 8 }, @@ -97396,7 +91591,6 @@ }) "dqF" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -97425,7 +91619,6 @@ }) "dqI" = ( /obj/machinery/atmospherics/components/unary/thermomachine/heater{ - tag = "icon-heater (WEST)"; icon_state = "heater"; dir = 8; on = 1 @@ -97454,7 +91647,6 @@ }) "dqK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -97477,7 +91669,6 @@ /obj/structure/table/reinforced, /obj/machinery/light, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/storage/secure/briefcase, @@ -97495,7 +91686,6 @@ /area/crew_quarters/hor) "dqN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitepurple/corner{ @@ -97504,11 +91694,9 @@ /area/crew_quarters/hor) "dqO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -97538,7 +91726,6 @@ "dqR" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/purple, @@ -97575,7 +91762,6 @@ /area/assembly/chargebay) "dqU" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -97586,7 +91772,6 @@ "dqV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -97594,7 +91779,6 @@ /area/assembly/chargebay) "dqW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/camera{ @@ -97608,7 +91792,6 @@ /area/assembly/chargebay) "dqX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -97616,7 +91799,6 @@ /area/assembly/chargebay) "dqY" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line, @@ -97640,7 +91822,6 @@ /area/assembly/chargebay) "drb" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -97708,11 +91889,9 @@ /area/medical/genetics) "drh" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -97724,7 +91903,6 @@ /area/medical/genetics) "dri" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -97736,7 +91914,6 @@ "drj" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/item/weapon/clipboard, @@ -97796,7 +91973,6 @@ dir = 4 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (NORTH)"; icon_state = "whitepurple"; dir = 1 }, @@ -97811,7 +91987,6 @@ /area/medical/genetics) "drp" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -97822,7 +91997,6 @@ /area/medical/genetics) "drq" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -97844,13 +92018,10 @@ dir = 8 }, /mob/living/carbon/monkey, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (NORTH)" - }, +/turf/open/floor/plasteel, /area/medical/genetics) "drs" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, @@ -97864,7 +92035,6 @@ /area/medical/genetics) "drt" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -97876,11 +92046,9 @@ }) "dru" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -97893,7 +92061,6 @@ }) "drv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -97910,15 +92077,12 @@ req_access_txt = "40" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -97931,7 +92095,6 @@ /area/medical/cmo) "drx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -97943,15 +92106,12 @@ /area/medical/cmo) "dry" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -97959,18 +92119,15 @@ /area/medical/cmo) "drz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/cmo, /area/medical/cmo) "drA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -97978,7 +92135,6 @@ /area/medical/cmo) "drB" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97995,15 +92151,12 @@ req_access_txt = "40" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -98016,11 +92169,9 @@ /area/medical/cmo) "drD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -98032,11 +92183,9 @@ }) "drE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark{ @@ -98053,7 +92202,6 @@ }) "drF" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -98101,7 +92249,6 @@ /area/medical/surgery) "drL" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whiteblue/side, @@ -98123,7 +92270,6 @@ /area/medical/surgery) "drO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -98183,7 +92329,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -98219,7 +92364,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "drZ" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (NORTH)"; icon_state = "wooden_chair"; dir = 1 }, @@ -98276,13 +92420,13 @@ name = "Abandoned Research Lab" }) "dsh" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/medical/research{ name = "Abandoned Research Lab" }) "dsi" = ( /obj/machinery/computer/mech_bay_power_console, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/medical/research{ name = "Abandoned Research Lab" }) @@ -98329,7 +92473,6 @@ dir = 4 }, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (WEST)"; icon_state = "escape"; dir = 8 }, @@ -98338,7 +92481,6 @@ }) "dso" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -98369,7 +92511,6 @@ }) "dsr" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; icon_state = "connector_map"; dir = 8 }, @@ -98413,7 +92554,6 @@ "dsv" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/grille, @@ -98423,15 +92563,12 @@ "dsw" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/door/airlock/command{ @@ -98443,13 +92580,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/crew_quarters/hor) "dsx" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -98460,16 +92594,13 @@ "dsy" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -98480,9 +92611,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -98505,7 +92634,6 @@ "dsD" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_research{ @@ -98515,9 +92643,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/assembly/robotics) "dsE" = ( /turf/closed/wall/r_wall, @@ -98529,9 +92655,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/aft) "dsG" = ( /obj/structure/table/glass, @@ -98558,11 +92682,9 @@ /area/medical/genetics) "dsH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -98574,11 +92696,9 @@ /area/medical/genetics) "dsI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -98589,7 +92709,6 @@ /area/medical/genetics) "dsJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -98609,11 +92728,9 @@ req_access_txt = "9" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -98629,7 +92746,6 @@ /area/medical/genetics) "dsL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -98644,7 +92760,6 @@ /area/medical/genetics) "dsM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -98654,18 +92769,15 @@ dir = 4 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (WEST)"; icon_state = "whitepurple"; dir = 8 }, /area/medical/genetics) "dsN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -98676,7 +92788,6 @@ /area/medical/genetics) "dsO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -98689,7 +92800,6 @@ /area/medical/genetics) "dsP" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/holopad, @@ -98697,7 +92807,6 @@ name = "Geneticist" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -98732,18 +92841,14 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (NORTH)" - }, +/turf/open/floor/plasteel, /area/medical/genetics) "dsS" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -98756,11 +92861,9 @@ /area/medical/genetics) "dsT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -98772,11 +92875,9 @@ }) "dsU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -98810,7 +92911,6 @@ /area/medical/cmo) "dsX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -98825,7 +92925,6 @@ /area/medical/cmo) "dsZ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -98877,16 +92976,6 @@ }, /turf/open/floor/plasteel/whiteblue/corner, /area/medical/surgery) -"dte" = ( -/obj/structure/closet/secure_closet/medical2, -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = -32; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/turf/open/floor/plasteel/vault, -/area/medical/surgery) "dtf" = ( /obj/machinery/ai_status_display{ pixel_y = -32 @@ -98950,7 +93039,6 @@ pixel_y = -26 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/effect/turf_decal/bot, @@ -98960,7 +93048,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/delivery, @@ -99086,7 +93173,6 @@ }) "dtC" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -99096,7 +93182,6 @@ }) "dtD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -99109,7 +93194,6 @@ }) "dtE" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -99120,7 +93204,6 @@ }) "dtF" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -99139,11 +93222,9 @@ "dtG" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -99151,11 +93232,9 @@ /area/maintenance/fpmaint2/port_maintenance) "dtH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -99166,11 +93245,9 @@ "dtI" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -99180,11 +93257,9 @@ /area/maintenance/fpmaint2/port_maintenance) "dtJ" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -99195,7 +93270,6 @@ "dtK" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -99207,7 +93281,6 @@ dir = 4 }, /turf/open/floor/plasteel/arrival{ - tag = "icon-arrival (WEST)"; icon_state = "arrival"; dir = 8 }, @@ -99227,7 +93300,6 @@ }) "dtN" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -99248,7 +93320,6 @@ }) "dtP" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; icon_state = "connector_map"; dir = 8 }, @@ -99296,7 +93367,6 @@ /area/crew_quarters/hor) "dtU" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -99342,7 +93412,8 @@ departmentType = 0; name = "Robotics RC"; pixel_x = 0; - pixel_y = 32 + pixel_y = 32; + receive_ore_updates = 1 }, /obj/structure/extinguisher_cabinet{ pixel_x = -26 @@ -99387,7 +93458,6 @@ /area/assembly/robotics) "dub" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -99419,7 +93489,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/purple/corner{ - tag = "icon-purplecorner (WEST)"; icon_state = "purplecorner"; dir = 8 }, @@ -99463,18 +93532,15 @@ scrub_Toxins = 0 }, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; icon_state = "whitepurplecorner"; dir = 8 }, /area/medical/genetics) "duh" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -99590,7 +93656,6 @@ /area/medical/cmo) "duu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/holopad, @@ -99604,7 +93669,6 @@ "duw" = ( /obj/structure/chair/office/light, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -99615,7 +93679,6 @@ icon_state = "plant-18" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/light{ @@ -99651,7 +93714,6 @@ }) "duz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -99664,19 +93726,15 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/construction) "duB" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/item/device/radio/intercom{ @@ -99691,7 +93749,6 @@ "duC" = ( /obj/machinery/power/smes, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/light/small{ @@ -99729,7 +93786,6 @@ }) "duG" = ( /obj/machinery/mech_bay_recharge_port{ - tag = "icon-recharge_port (NORTH)"; icon_state = "recharge_port"; dir = 1 }, @@ -99757,7 +93813,6 @@ }) "duJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -99800,11 +93855,9 @@ "duP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -99812,7 +93865,6 @@ /area/maintenance/fpmaint2/port_maintenance) "duQ" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -99828,7 +93880,6 @@ }) "duR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -99840,7 +93891,6 @@ }) "duS" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -99860,7 +93910,6 @@ }) "duU" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; icon_state = "connector_map"; dir = 8 }, @@ -99884,7 +93933,6 @@ /obj/item/target/syndicate, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -99922,14 +93970,12 @@ /area/crew_quarters/hor) "dva" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark/start{ name = "Research Director" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -99978,7 +94024,6 @@ /area/assembly/robotics) "dve" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/turf_decal/stripes/line{ @@ -99989,7 +94034,6 @@ "dvf" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -99999,7 +94043,6 @@ /area/assembly/robotics) "dvg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -100009,7 +94052,6 @@ /area/assembly/robotics) "dvh" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/turf_decal/stripes/line{ @@ -100019,7 +94061,6 @@ /area/assembly/robotics) "dvi" = ( /obj/structure/chair/office/light{ - tag = "icon-officechair_white (EAST)"; icon_state = "officechair_white"; dir = 4 }, @@ -100050,7 +94091,6 @@ /area/assembly/robotics) "dvk" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -100064,7 +94104,6 @@ "dvl" = ( /obj/structure/filingcabinet/chestdrawer, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/button/door{ @@ -100077,27 +94116,22 @@ /obj/structure/noticeboard{ dir = 1; icon_state = "nboard00"; - pixel_y = -32; - tag = "icon-nboard00 (NORTH)" - }, + pixel_y = -32 + }, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; icon_state = "whitepurplecorner"; dir = 8 }, /area/medical/genetics) "dvm" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/whitepurple/corner{ - tag = "icon-whitepurplecorner (WEST)"; icon_state = "whitepurplecorner"; dir = 8 }, @@ -100145,9 +94179,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/genetics) "dvs" = ( /obj/machinery/dna_scannernew, @@ -100157,9 +94189,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/genetics) "dvt" = ( /obj/item/weapon/twohanded/required/kirbyplants{ @@ -100172,7 +94202,6 @@ pixel_y = -22 }, /turf/open/floor/plasteel/whitepurple/side{ - tag = "icon-whitepurple (WEST)"; icon_state = "whitepurple"; dir = 8 }, @@ -100218,26 +94247,11 @@ }, /turf/open/floor/plating, /area/medical/genetics) -"dvy" = ( -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/whitepurple/corner{ - dir = 8 - }, -/area/medical/medbay{ - name = "Medbay Central" - }) "dvz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -100264,7 +94278,6 @@ }) "dvB" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -100284,7 +94297,6 @@ "dvC" = ( /obj/machinery/disposal/bin, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -100295,15 +94307,12 @@ /area/medical/cmo) "dvD" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -100315,7 +94324,6 @@ "dvE" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/paper_bin, @@ -100327,11 +94335,9 @@ "dvF" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/item/weapon/folder/blue{ @@ -100341,7 +94347,6 @@ /obj/item/weapon/folder/white, /obj/item/weapon/pen, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -100351,7 +94356,6 @@ /obj/machinery/computer/med_data/laptop, /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -100361,7 +94365,6 @@ /area/medical/cmo) "dvH" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -100413,7 +94416,6 @@ "dvN" = ( /obj/effect/decal/cleanable/cobweb, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -100421,7 +94423,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvO" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -100435,7 +94436,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -100449,7 +94449,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -100460,11 +94459,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -100472,7 +94469,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvS" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -100483,7 +94479,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -100493,7 +94488,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -100508,11 +94502,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -100525,11 +94517,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -100541,11 +94531,9 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvX" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -100559,12 +94547,10 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -100572,12 +94558,10 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dvZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -100590,7 +94574,6 @@ req_access_txt = "10" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -100613,16 +94596,6 @@ /obj/structure/lattice/catwalk, /turf/open/space, /area/solar/starboard) -"dwd" = ( -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/chem_dispenser/drinks/beer, -/obj/structure/table/wood/poker, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) "dwe" = ( /obj/structure/table/wood/poker, /obj/item/weapon/reagent_containers/food/drinks/bottle/rum{ @@ -100635,17 +94608,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood, /area/crew_quarters/abandoned_gambling_den) -"dwf" = ( -/obj/machinery/vending/boozeomat{ - req_access_txt = "0" - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/crew_quarters/abandoned_gambling_den) "dwg" = ( /obj/structure/table/wood/poker, /obj/item/weapon/reagent_containers/food/drinks/shaker, @@ -100740,7 +94702,6 @@ }) "dwq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -100777,7 +94738,6 @@ }) "dwu" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -100815,7 +94775,6 @@ /area/crew_quarters/hor) "dwy" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/camera{ @@ -100829,7 +94788,6 @@ /area/crew_quarters/hor) "dwz" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plasteel/whitepurple/corner, @@ -100849,7 +94807,6 @@ /area/crew_quarters/hor) "dwB" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -100893,12 +94850,10 @@ /area/assembly/robotics) "dwE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -100940,7 +94895,6 @@ "dwL" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/centcom{ @@ -100951,9 +94905,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/morgue) "dwM" = ( /obj/structure/sign/nosmoking_2, @@ -100969,7 +94921,6 @@ "dwP" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -100980,9 +94931,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/morgue) "dwQ" = ( /obj/structure/table/glass, @@ -100997,11 +94946,9 @@ /area/medical/cmo) "dwR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -101037,7 +94984,6 @@ /area/medical/cmo) "dwV" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -101111,11 +95057,9 @@ }) "dxa" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -101181,13 +95125,11 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dxi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -101196,7 +95138,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dxj" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -101337,7 +95278,6 @@ }) "dxw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -101399,7 +95339,6 @@ }) "dxz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -101418,7 +95357,6 @@ }) "dxB" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - tag = "icon-freezer (WEST)"; icon_state = "freezer"; dir = 8 }, @@ -101438,7 +95376,6 @@ "dxD" = ( /obj/machinery/door/firedoor/heavy, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -101453,9 +95390,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/misc_lab{ name = "\improper Research Testing Range" }) @@ -101477,7 +95412,6 @@ /area/crew_quarters/hor) "dxG" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -101498,7 +95432,6 @@ }) "dxH" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -101518,7 +95451,6 @@ req_access_txt = "29" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -101532,7 +95464,6 @@ /area/assembly/robotics) "dxJ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -101546,11 +95477,9 @@ "dxK" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -101562,7 +95491,6 @@ /area/assembly/robotics) "dxL" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -101570,7 +95498,6 @@ /area/assembly/robotics) "dxM" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -101581,7 +95508,6 @@ name = "Roboticist" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -101601,9 +95527,8 @@ dir = 8; icon_state = "nboard00"; pixel_x = 32; - pixel_y = 0; - tag = "icon-nboard00 (WEST)" - }, + pixel_y = 0 + }, /obj/item/weapon/twohanded/required/kirbyplants{ icon_state = "plant-21"; layer = 4.1; @@ -101647,7 +95572,6 @@ /area/medical/morgue) "dxT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -101740,7 +95664,6 @@ /area/medical/morgue) "dyd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -101763,7 +95686,6 @@ /area/medical/cmo) "dyf" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/vending/wallmed{ @@ -101906,7 +95828,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -101914,9 +95835,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/security/detectives_office{ name = "Private Investigator's Office" }) @@ -101976,7 +95895,8 @@ departmentType = 0; name = "Toxins RC"; pixel_x = -32; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, @@ -101988,7 +95908,6 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -102001,7 +95920,6 @@ }) "dyA" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark/start{ @@ -102022,25 +95940,6 @@ dir = 8 }, /turf/open/floor/plasteel/whitepurple/corner, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dyC" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; - icon_state = "connector_map"; - dir = 8 - }, -/obj/structure/sign/poster{ - icon_state = "poster7_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster7_legit" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -102055,7 +95954,6 @@ /area/toxins/storage) "dyE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -102172,7 +96070,6 @@ /area/assembly/robotics) "dyP" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -102222,7 +96119,6 @@ /area/hallway/primary/aft) "dyW" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -102247,7 +96143,6 @@ "dyZ" = ( /obj/effect/decal/cleanable/blood/old, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -102292,7 +96187,6 @@ "dzh" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -102311,7 +96205,6 @@ "dzk" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/grille, @@ -102325,14 +96218,12 @@ req_access_txt = "40" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/cmo, /area/medical/cmo) "dzm" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -102390,7 +96281,6 @@ }) "dzr" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/apc{ @@ -102479,7 +96369,6 @@ }) "dzz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -102493,19 +96382,6 @@ pixel_y = 26 }, /turf/open/floor/plating, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dzB" = ( -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/turf/open/floor/wood{ - tag = "icon-wood-broken5"; - icon_state = "wood-broken5" - }, /area/security/detectives_office{ name = "Private Investigator's Office" }) @@ -102623,7 +96499,6 @@ }) "dzL" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -102636,9 +96511,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -102700,7 +96573,6 @@ }) "dzQ" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ - tag = "icon-connector_map (WEST)"; icon_state = "connector_map"; dir = 8 }, @@ -102726,7 +96598,6 @@ pixel_x = -26 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -102737,7 +96608,6 @@ /area/toxins/storage) "dzS" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -102771,7 +96641,6 @@ /area/toxins/storage) "dzW" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/computer/rdservercontrol, @@ -102787,7 +96656,6 @@ on = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -102802,7 +96670,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -102821,7 +96688,6 @@ req_access_txt = "30" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/vault{ @@ -102836,7 +96702,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitepurple/corner{ @@ -102850,12 +96715,10 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -102864,7 +96727,6 @@ }) "dAc" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -102875,7 +96737,6 @@ "dAd" = ( /obj/machinery/disposal/bin, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -102892,11 +96753,9 @@ /area/assembly/robotics) "dAe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -102939,7 +96798,6 @@ /area/assembly/robotics) "dAk" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -102983,7 +96841,6 @@ /turf/open/floor/plating, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -102993,11 +96850,9 @@ /area/medical/morgue) "dAo" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -103009,7 +96864,6 @@ "dAp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -103020,7 +96874,6 @@ /area/medical/morgue) "dAq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -103031,7 +96884,6 @@ "dAr" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark/start{ @@ -103046,7 +96898,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/old, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark{ @@ -103059,7 +96910,6 @@ /area/medical/morgue) "dAt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -103067,7 +96917,6 @@ /area/medical/morgue) "dAu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -103078,9 +96927,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = -26; - tag = "icon-fire0 (EAST)" - }, + pixel_y = -26 + }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -103091,7 +96939,6 @@ "dAv" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/centcom{ @@ -103108,7 +96955,6 @@ /area/medical/morgue) "dAw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -103120,14 +96966,12 @@ /area/medical/morgue) "dAx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark{ name = "blobstart" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -103136,7 +96980,6 @@ "dAy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -103147,19 +96990,15 @@ /area/medical/morgue) "dAz" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -103202,7 +97041,6 @@ /area/medical/cmo) "dAF" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -103225,7 +97063,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dAH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -103246,7 +97083,6 @@ }) "dAK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -103312,7 +97148,6 @@ }) "dAR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -103438,9 +97273,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -103504,7 +97337,6 @@ }) "dBi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -103550,7 +97382,6 @@ }) "dBn" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -103561,11 +97392,9 @@ /area/toxins/storage) "dBo" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -103574,7 +97403,6 @@ /area/toxins/storage) "dBp" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -103598,7 +97426,6 @@ /area/toxins/storage) "dBs" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -103613,15 +97440,12 @@ }) "dBt" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -103630,7 +97454,6 @@ }, /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -103646,7 +97469,6 @@ }) "dBu" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -103656,7 +97478,6 @@ name = "Xenobiology Containment Door" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -103671,7 +97492,6 @@ scrub_Toxins = 0 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -103703,7 +97523,6 @@ /area/assembly/robotics) "dBx" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -103791,11 +97610,9 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -103827,7 +97644,6 @@ "dBK" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -103879,7 +97695,6 @@ /area/medical/morgue) "dBQ" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -103888,7 +97703,6 @@ "dBR" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -103923,7 +97737,6 @@ /area/medical/cmo) "dBU" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -103982,7 +97795,6 @@ }) "dCb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/wood, @@ -103991,7 +97803,6 @@ }) "dCc" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4 }, @@ -104005,7 +97816,6 @@ "dCd" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood{ - tag = "icon-wood-broken6"; icon_state = "wood-broken6" }, /area/crew_quarters/theatre{ @@ -104025,7 +97835,6 @@ }) "dCf" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -104040,7 +97849,6 @@ }) "dCg" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/landmark{ @@ -104057,7 +97865,6 @@ }) "dCh" = ( /turf/open/floor/wood{ - tag = "icon-wood-broken2"; icon_state = "wood-broken2" }, /area/security/detectives_office{ @@ -104109,24 +97916,19 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) "dCn" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -104140,9 +97942,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -104153,9 +97953,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -104170,9 +97968,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-warning (EAST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -104205,11 +98001,9 @@ }) "dCt" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -104224,7 +98018,6 @@ }) "dCu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -104241,7 +98034,6 @@ "dCv" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -104265,7 +98057,6 @@ }) "dCw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -104283,7 +98074,6 @@ }) "dCx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -104298,15 +98088,12 @@ }) "dCy" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -104316,7 +98103,6 @@ }) "dCz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -104328,7 +98114,6 @@ }) "dCA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -104351,14 +98136,12 @@ name = "Toxins Lab Shutters" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -104368,16 +98151,13 @@ }) "dCC" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -104387,7 +98167,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/bot, @@ -104397,7 +98176,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -104408,7 +98186,6 @@ "dCF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -104416,7 +98193,6 @@ /area/toxins/storage) "dCG" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/delivery, @@ -104430,7 +98206,7 @@ on = 1; pressure_checks = 0 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -104464,7 +98240,7 @@ name = "science camera"; network = list("SS13","RD") }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -104490,11 +98266,9 @@ }) "dCL" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -104504,7 +98278,6 @@ }) "dCM" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -104533,7 +98306,6 @@ /area/assembly/robotics) "dCO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -104623,23 +98395,6 @@ dir = 5 }, /area/medical/morgue) -"dCY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ - icon_state = "poster6_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster6_legit" - }, -/obj/machinery/camera{ - c_tag = "Medbay - Morgue"; - dir = 1; - name = "medbay camera" - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/medical/morgue) "dCZ" = ( /obj/machinery/airalarm{ dir = 1; @@ -104689,7 +98444,6 @@ /area/medical/morgue) "dDg" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -104754,7 +98508,6 @@ }) "dDn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whitegreen/side, @@ -104763,7 +98516,6 @@ }) "dDo" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -104780,17 +98532,14 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dDq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -104805,7 +98554,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -104821,7 +98569,6 @@ }) "dDs" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -104833,7 +98580,6 @@ }) "dDt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -104847,11 +98593,9 @@ "dDu" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -104869,7 +98613,6 @@ }) "dDw" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4 }, @@ -104929,7 +98672,6 @@ }) "dDB" = ( /turf/open/floor/wood{ - tag = "icon-wood-broken7"; icon_state = "wood-broken7" }, /area/security/detectives_office{ @@ -104951,27 +98693,6 @@ "dDE" = ( /mob/living/simple_animal/cockroach, /turf/open/floor/wood, -/area/security/detectives_office{ - name = "Private Investigator's Office" - }) -"dDF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster16_legit" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, /area/security/detectives_office{ name = "Private Investigator's Office" }) @@ -105078,9 +98799,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -105112,7 +98832,6 @@ }) "dDR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -105127,7 +98846,6 @@ }) "dDS" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -105154,7 +98872,6 @@ /obj/item/clothing/head/hardhat/red, /obj/item/clothing/mask/gas, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -105165,13 +98882,11 @@ }) "dDV" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -105189,41 +98904,17 @@ pixel_y = -32 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, -/area/toxins/mixing{ - name = "\improper Toxins Lab" - }) -"dDX" = ( -/obj/item/weapon/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/weapon/storage/toolbox/electrical, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = -32; - tag = "icon-poster22_legit" - }, -/obj/structure/table/reinforced, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; - icon_state = "intact"; - dir = 8 - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) "dDY" = ( /obj/structure/sign/securearea, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -105236,7 +98927,6 @@ /obj/item/weapon/paper_bin, /obj/item/weapon/pen, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -105251,7 +98941,6 @@ /area/toxins/storage) "dEa" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -105286,11 +98975,10 @@ "dEe" = ( /obj/machinery/r_n_d/server/core, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -105310,11 +98998,10 @@ "dEg" = ( /obj/machinery/r_n_d/server/robotics, /obj/machinery/atmospherics/pipe/simple/general/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -105335,7 +99022,6 @@ }) "dEi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -105345,7 +99031,6 @@ }) "dEj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -105357,9 +99042,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/assembly/robotics) "dEk" = ( /obj/structure/plasticflaps{ @@ -105383,15 +99066,13 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /turf/open/floor/plasteel/neutral/corner, /area/hallway/primary/aft) "dEm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -105402,9 +99083,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/morgue) "dEn" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -105415,7 +99094,6 @@ "dEo" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/virology{ @@ -105425,9 +99103,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -105441,7 +99117,6 @@ on = 1 }, /turf/open/floor/wood{ - tag = "icon-wood-broken6"; icon_state = "wood-broken6" }, /area/crew_quarters/theatre{ @@ -105449,7 +99124,6 @@ }) "dEq" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4 }, @@ -105571,7 +99245,6 @@ }) "dED" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -105583,15 +99256,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) "dEE" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -105604,9 +99274,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -105633,23 +99301,19 @@ req_access_txt = "47" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) "dEJ" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -105659,7 +99323,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dEK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -105695,7 +99358,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dEO" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -105734,7 +99396,6 @@ /area/hallway/primary/aft) "dES" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105744,7 +99405,6 @@ /area/hallway/primary/aft) "dET" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105756,7 +99416,6 @@ /area/hallway/primary/aft) "dEU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105771,7 +99430,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105784,7 +99442,6 @@ /area/hallway/primary/aft) "dEW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -105796,7 +99453,6 @@ /area/maintenance/aft/Aft_Maintenance) "dEX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105806,7 +99462,6 @@ /area/maintenance/aft/Aft_Maintenance) "dEY" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -105817,7 +99472,6 @@ /area/maintenance/aft/Aft_Maintenance) "dEZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -105831,7 +99485,6 @@ /area/maintenance/aft/Aft_Maintenance) "dFa" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105844,25 +99497,21 @@ /area/maintenance/aft/Aft_Maintenance) "dFb" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/aft/Aft_Maintenance) "dFc" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -105890,7 +99539,6 @@ /area/maintenance/aft/Aft_Maintenance) "dFe" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/rack, @@ -105905,7 +99553,6 @@ /area/maintenance/aft/Aft_Maintenance) "dFf" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/landmark{ @@ -105919,11 +99566,9 @@ /area/maintenance/aft/Aft_Maintenance) "dFg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105935,7 +99580,6 @@ /area/maintenance/aft/Aft_Maintenance) "dFh" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105969,11 +99613,9 @@ }) "dFk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -106040,7 +99682,6 @@ "dFq" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -106054,7 +99695,6 @@ pixel_x = -32 }, /turf/open/floor/wood{ - tag = "icon-wood-broken"; icon_state = "wood-broken" }, /area/crew_quarters/theatre{ @@ -106090,7 +99730,6 @@ }) "dFv" = ( /turf/open/floor/wood{ - tag = "icon-wood-broken"; icon_state = "wood-broken" }, /area/crew_quarters/theatre{ @@ -106144,7 +99783,6 @@ }) "dFA" = ( /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/security/detectives_office{ @@ -106241,9 +99879,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -106252,9 +99888,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (EAST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -106267,9 +99901,7 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -106280,7 +99912,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dFQ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -106325,7 +99956,6 @@ "dFV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -106389,20 +100019,6 @@ /area/medical/research{ name = "Research Division" }) -"dGd" = ( -/obj/structure/table/wood, -/obj/structure/sign/poster{ - icon_state = "poster22_legit"; - pixel_y = 32; - tag = "icon-poster22_legit" - }, -/obj/item/weapon/storage/box/donkpockets, -/turf/open/floor/plasteel/neutral/side{ - dir = 1 - }, -/area/medical/research{ - name = "Research Division" - }) "dGe" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/item/device/radio/intercom{ @@ -106417,7 +100033,6 @@ }) "dGf" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -106451,15 +100066,12 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dGi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -106467,7 +100079,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dGj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -106478,7 +100089,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dGk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106488,21 +100098,17 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dGl" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/delivery, @@ -106510,7 +100116,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dGm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106521,7 +100126,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dGn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -106537,7 +100141,6 @@ req_access_txt = "12" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106550,7 +100153,6 @@ /area/hallway/primary/aft) "dGp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106562,7 +100164,6 @@ /area/hallway/primary/aft) "dGq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106576,7 +100177,6 @@ /area/hallway/primary/aft) "dGr" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106682,7 +100282,6 @@ /area/maintenance/aft/Aft_Maintenance) "dGD" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -106693,7 +100292,6 @@ /area/maintenance/aft/Aft_Maintenance) "dGE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106703,7 +100301,6 @@ /area/maintenance/aft/Aft_Maintenance) "dGF" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106751,7 +100348,6 @@ /area/maintenance/aft/Aft_Maintenance) "dGL" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -106762,7 +100358,6 @@ /area/maintenance/aft/Aft_Maintenance) "dGM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -106774,7 +100369,6 @@ /area/maintenance/aft/Aft_Maintenance) "dGN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -106793,7 +100387,6 @@ }) "dGO" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -106805,19 +100398,15 @@ }) "dGP" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -106832,11 +100421,9 @@ scrub_Toxins = 0 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/turf_decal/bot, @@ -106846,7 +100433,6 @@ }) "dGQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106854,7 +100440,6 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; icon_state = "whitegreen"; dir = 4 }, @@ -106864,7 +100449,6 @@ "dGR" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -106883,7 +100467,6 @@ }) "dGS" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106894,7 +100477,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dGT" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106904,7 +100486,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dGU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -106915,7 +100496,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dGV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -106926,7 +100506,6 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dGW" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106936,12 +100515,10 @@ /area/maintenance/starboard/aft_starboard_maintenance) "dGX" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -106989,7 +100566,6 @@ layer = 4.1 }, /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/crew_quarters/theatre{ @@ -107128,12 +100704,10 @@ "dHt" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -107141,11 +100715,9 @@ "dHu" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -107153,7 +100725,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dHv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -107164,7 +100735,6 @@ "dHw" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -107175,11 +100745,9 @@ "dHx" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -107188,7 +100756,6 @@ "dHy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -107200,11 +100767,9 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dHz" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -107259,7 +100824,6 @@ icon_state = "pipe-c" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/redyellow, @@ -107268,11 +100832,9 @@ }) "dHF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -107285,7 +100847,6 @@ }) "dHG" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -107314,7 +100875,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dHJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -107324,7 +100884,6 @@ "dHK" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_command{ @@ -107336,9 +100895,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/bridge{ name = "Customs" }) @@ -107358,9 +100915,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/aft) "dHN" = ( /obj/machinery/door/firedoor, @@ -107370,9 +100925,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/aft) "dHO" = ( /obj/machinery/door/firedoor, @@ -107384,9 +100937,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/primary/aft) "dHP" = ( /turf/closed/wall, @@ -107398,7 +100949,6 @@ /area/maintenance/aft/Aft_Maintenance) "dHR" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -107410,7 +100960,6 @@ }) "dHS" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -107425,7 +100974,6 @@ "dHT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; icon_state = "whitegreen"; dir = 4 }, @@ -107498,12 +101046,10 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dIc" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/turf_decal/delivery, @@ -107516,7 +101062,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -107528,7 +101073,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -107538,7 +101082,6 @@ "dIf" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral/side, @@ -107574,7 +101117,6 @@ "dIk" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -107628,7 +101170,6 @@ }) "dIp" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -107646,7 +101187,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/redyellow, @@ -107668,7 +101208,6 @@ "dIs" = ( /obj/structure/chair/stool, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -107679,7 +101218,6 @@ "dIt" = ( /obj/structure/table/wood, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -107707,7 +101245,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dIv" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -107745,7 +101282,6 @@ }) "dIx" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -107778,9 +101314,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /turf/open/floor/plasteel/blue/side{ dir = 5 }, @@ -107809,14 +101344,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTH)"; icon_state = "escape"; dir = 1 }, /area/hallway/primary/aft) "dIC" = ( /turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTH)"; icon_state = "escape"; dir = 1 }, @@ -107825,7 +101358,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTH)"; icon_state = "escape"; dir = 1 }, @@ -107908,9 +101440,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/library/abandoned_library) "dIN" = ( /obj/machinery/door/airlock/maintenance_hatch{ @@ -107920,16 +101450,13 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/barricade/wooden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/library/abandoned_library) "dIO" = ( /turf/open/floor/plasteel/neutral/side{ @@ -107953,9 +101480,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -107977,7 +101502,6 @@ }, /obj/structure/disposalpipe/segment, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/redyellow, @@ -108023,7 +101547,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dIY" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -108047,7 +101570,6 @@ }) "dJa" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -108078,7 +101600,6 @@ }) "dJd" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -108118,7 +101639,6 @@ /area/hallway/primary/aft) "dJj" = ( /obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; icon_state = "propulsion"; dir = 1 }, @@ -108144,7 +101664,6 @@ "dJn" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -108168,9 +101687,7 @@ pixel_y = -2; req_access_txt = "39" }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/medical/medbay{ name = "Medbay Central" }) @@ -108188,16 +101705,14 @@ /obj/structure/grille, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, /area/medical/virology) "dJr" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/window/reinforced/fulltile, @@ -108206,11 +101721,9 @@ "dJs" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/window/reinforced/fulltile, @@ -108250,7 +101763,6 @@ "dJx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -108297,7 +101809,6 @@ "dJE" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /turf/open/floor/plasteel/neutral/side{ @@ -108308,7 +101819,6 @@ "dJF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -108316,11 +101826,9 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dJG" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -108360,7 +101868,6 @@ pixel_y = 25 }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -108379,7 +101886,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dJM" = ( /obj/structure/toilet{ - tag = "icon-toilet00 (WEST)"; icon_state = "toilet00"; dir = 8 }, @@ -108409,7 +101915,6 @@ icon_state = "pipe-c" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side, @@ -108451,7 +101956,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dJT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -108463,7 +101967,6 @@ "dJU" = ( /obj/machinery/computer/card, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -108483,15 +101986,12 @@ }) "dJV" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral, @@ -108503,7 +102003,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -108514,7 +102013,6 @@ "dJX" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/folder/blue, @@ -108526,11 +102024,9 @@ "dJY" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/door/window/brigdoor/southright{ @@ -108571,7 +102067,6 @@ "dKd" = ( /obj/structure/window/reinforced, /obj/structure/shuttle/engine/heater{ - tag = "icon-heater (NORTH)"; icon_state = "heater"; dir = 1 }, @@ -108605,7 +102100,6 @@ /area/medical/virology) "dKf" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -108627,9 +102121,8 @@ /obj/structure/grille, /obj/structure/cable/white{ d2 = 2; - icon_state = "0-2"; - tag = "icon-0-2" - }, + icon_state = "0-2" + }, /obj/structure/window/reinforced/fulltile, /obj/structure/sign/vacuum, /turf/open/floor/plating, @@ -108647,7 +102140,6 @@ /area/medical/virology) "dKj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -108698,7 +102190,6 @@ /area/medical/virology) "dKo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/filingcabinet/chestdrawer, @@ -108730,7 +102221,6 @@ "dKq" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/window/reinforced/fulltile, @@ -108756,7 +102246,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -108797,7 +102286,6 @@ "dKB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -108808,7 +102296,6 @@ dir = 5 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -108821,7 +102308,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, @@ -108832,7 +102318,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral, @@ -108840,7 +102325,6 @@ "dKF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -108866,7 +102350,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dKI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -108875,15 +102358,12 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/research{ name = "Research Division" }) @@ -108893,7 +102373,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dKK" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -108952,7 +102431,6 @@ /area/hallway/primary/aft) "dKQ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -108999,7 +102477,6 @@ /area/medical/virology) "dKW" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -109012,11 +102489,9 @@ /area/medical/virology) "dKX" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -109028,7 +102503,6 @@ "dKY" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -109055,35 +102529,27 @@ /area/medical/virology) "dKZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/virology) "dLa" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/light/small{ @@ -109092,9 +102558,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/virology) "dLb" = ( /obj/machinery/door/firedoor, @@ -109103,7 +102567,6 @@ req_access_txt = "39" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -109113,7 +102576,6 @@ /area/medical/virology) "dLc" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -109121,7 +102583,6 @@ pixel_y = 26 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -109131,11 +102592,9 @@ /area/medical/virology) "dLd" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -109184,28 +102643,14 @@ /area/medical/virology) "dLi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /turf/open/floor/plasteel/green, /area/medical/virology) -"dLj" = ( -/obj/structure/sign/poster{ - icon_state = "poster3_legit"; - pixel_x = 0; - pixel_y = 0; - tag = "icon-poster3_legit" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall, -/area/medical/virology) "dLk" = ( /obj/machinery/newscaster{ pixel_y = 32 @@ -109219,13 +102664,11 @@ /area/medical/virology) "dLl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/bed, /obj/item/weapon/bedsheet/medical, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -109243,9 +102686,6 @@ }, /turf/open/floor/plasteel/vault, /area/medical/virology) -"dLn" = ( -/turf/open/space, -/area/toxins/test_area) "dLo" = ( /obj/machinery/light/small{ dir = 8 @@ -109260,7 +102700,6 @@ /area/library/abandoned_library) "dLq" = ( /turf/open/floor/wood{ - tag = "icon-wood-broken2"; icon_state = "wood-broken2" }, /area/library/abandoned_library) @@ -109330,15 +102769,12 @@ "dLz" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -109346,7 +102782,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -109357,7 +102792,6 @@ "dLB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -109368,11 +102802,9 @@ "dLC" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -109383,27 +102815,22 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plating, /area/maintenance/fpmaint2/aft_port_maintenance) "dLE" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -109413,7 +102840,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLF" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -109426,7 +102852,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -109437,11 +102862,9 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -109452,17 +102875,14 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral/side{ @@ -109472,7 +102892,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLJ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -109483,7 +102902,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -109494,7 +102912,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLL" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -109508,7 +102925,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -109520,12 +102936,10 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -109535,40 +102949,18 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dLO" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/maintenance/fpmaint2/aft_port_maintenance) -"dLP" = ( -/obj/structure/table/reinforced, -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/sign/poster{ - icon_state = "poster16_legit"; - pixel_y = -32; - tag = "icon-poster16_legit" - }, -/obj/item/weapon/crowbar, -/obj/item/device/radio, -/turf/open/floor/plasteel/blue/side{ - dir = 10 - }, -/area/bridge{ - name = "Customs" - }) "dLQ" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/storage/box/ids, @@ -109624,24 +103016,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/escape, /area/hallway/primary/aft) -"dLX" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/sign/poster{ - icon_state = "poster4_legit"; - pixel_x = 32; - pixel_y = 0; - tag = "icon-poster4_legit" - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/hallway/primary/aft) "dLY" = ( /obj/item/clothing/suit/hazardvest{ desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; @@ -109805,18 +103179,15 @@ /area/medical/virology) "dMj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/green, /area/medical/virology) "dMk" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitegreen/corner{ @@ -109830,7 +103201,6 @@ req_access_txt = "39" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -109840,7 +103210,6 @@ /area/medical/virology) "dMm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitegreen/corner{ @@ -109849,7 +103218,6 @@ /area/medical/virology) "dMn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -109860,15 +103228,12 @@ /area/medical/virology) "dMo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -109880,7 +103245,6 @@ /area/medical/virology) "dMp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitegreen/corner, @@ -109891,7 +103255,6 @@ req_access_txt = "39" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -109901,7 +103264,6 @@ /area/medical/virology) "dMr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -109914,11 +103276,9 @@ /area/medical/virology) "dMs" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/landmark/start{ @@ -109972,12 +103332,10 @@ /area/library/abandoned_library) "dMy" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/blood/splatter, @@ -110002,7 +103360,6 @@ "dMC" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -110014,7 +103371,6 @@ "dMD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -110035,20 +103391,16 @@ }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/chapel/office) "dMG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -110088,7 +103440,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dML" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -110123,7 +103474,6 @@ }) "dMP" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -110134,13 +103484,10 @@ dir = 2 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -110152,7 +103499,6 @@ "dMR" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -110163,7 +103509,6 @@ }) "dMS" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -110202,9 +103547,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -110216,9 +103559,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -110266,6 +103607,9 @@ pixel_x = -3; pixel_y = 3 }, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/plasteel/neutral/side{ dir = 4 }, @@ -110307,6 +103651,10 @@ pixel_y = 8 }, /obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, /turf/open/floor/plasteel/cmo, /area/shuttle/escape) "dNe" = ( @@ -110338,7 +103686,6 @@ /area/medical/virology) "dNi" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -110349,7 +103696,6 @@ /area/medical/virology) "dNj" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -110381,7 +103727,6 @@ /area/medical/virology) "dNn" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -110403,11 +103748,9 @@ /area/medical/virology) "dNq" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -110427,7 +103770,6 @@ "dNt" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -110443,24 +103785,20 @@ "dNu" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/wood{ - tag = "icon-wood-broken6"; icon_state = "wood-broken6" }, /area/library/abandoned_library) "dNv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/wood, /area/library/abandoned_library) "dNw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/grimy, @@ -110468,7 +103806,6 @@ "dNx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/grimy, @@ -110490,7 +103827,6 @@ pixel_y = 3 }, /turf/open/floor/wood{ - tag = "icon-wood-broken"; icon_state = "wood-broken" }, /area/library/abandoned_library) @@ -110504,7 +103840,6 @@ /obj/item/weapon/paper_bin, /obj/item/weapon/pen, /turf/open/floor/wood{ - tag = "icon-wood-broken2"; icon_state = "wood-broken2" }, /area/library/abandoned_library) @@ -110517,7 +103852,6 @@ /area/library/abandoned_library) "dND" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plating, @@ -110534,7 +103868,6 @@ "dNG" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -110559,7 +103892,6 @@ /area/chapel/main) "dNJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -110571,42 +103903,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/chapel/main) "dNK" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/chapel/main) -"dNL" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNM" = ( -/obj/structure/cable/white{ - tag = "icon-1-2"; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn (NORTHWEST)" - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) "dNN" = ( /obj/machinery/newscaster{ pixel_y = 32 @@ -110623,39 +103925,6 @@ dir = 1 }, /turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNP" = ( -/obj/structure/cable/white{ - tag = "icon-0-2"; - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - cell_type = 10000; - dir = 1; - name = "Departure Lounge APC"; - pixel_x = 0; - pixel_y = 28 - }, -/obj/machinery/camera{ - c_tag = "Departures - Fore"; - dir = 2; - name = "departures camera" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNQ" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -110664,21 +103933,6 @@ dir = 5 }, /turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dNS" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1; - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/firealarm{ - pixel_y = 24 - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -110715,14 +103969,12 @@ dir = 8 }, /turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1 }, /area/shuttle/escape) "dNY" = ( /turf/open/floor/plasteel/whiteblue/side{ - tag = "icon-whiteblue (NORTH)"; icon_state = "whiteblue"; dir = 1 }, @@ -110749,7 +104001,6 @@ /area/medical/virology) "dOb" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/green, @@ -110760,26 +104011,6 @@ dir = 4 }, /area/medical/virology) -"dOd" = ( -/obj/machinery/atmospherics/components/unary/tank/air{ - dir = 1 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/structure/sign/poster{ - icon_state = "poster17_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster17_legit" - }, -/turf/open/floor/plasteel/vault, -/area/medical/virology) "dOe" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 1 @@ -110794,7 +104025,6 @@ /obj/item/clothing/neck/stethoscope, /obj/structure/table, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/storage/box/donkpockets, @@ -110827,7 +104057,6 @@ /area/medical/virology) "dOj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -110855,7 +104084,6 @@ /area/library/abandoned_library) "dOn" = ( /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/library/abandoned_library) @@ -110872,7 +104100,6 @@ "dOq" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -110895,7 +104122,6 @@ /area/chapel/office) "dOs" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -110916,9 +104142,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/vault{ dir = 5 @@ -110979,7 +104204,6 @@ /area/chapel/main) "dOy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -111037,19 +104261,8 @@ /obj/structure/window/reinforced/tinted/fulltile, /turf/open/floor/plating, /area/chapel/main) -"dOE" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) "dOF" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -111062,7 +104275,6 @@ }) "dOG" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -111081,11 +104293,9 @@ }) "dOH" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -111097,7 +104307,6 @@ }) "dOI" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -111109,7 +104318,6 @@ }) "dOJ" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -111160,19 +104368,6 @@ dir = 4 }, /turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"dOP" = ( -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-22" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -111213,11 +104408,9 @@ "dOV" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/window/reinforced/fulltile, @@ -111226,11 +104419,9 @@ "dOW" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/window/reinforced/fulltile, @@ -111239,11 +104430,9 @@ "dOX" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/window/reinforced/fulltile, @@ -111252,7 +104441,6 @@ "dOY" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/window/reinforced/fulltile, @@ -111269,11 +104457,9 @@ /area/medical/virology) "dPa" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/neutral, @@ -111291,7 +104477,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /turf/open/floor/plasteel/whitegreen/corner{ @@ -111308,7 +104493,6 @@ "dPd" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood{ - tag = "icon-wood-broken"; icon_state = "wood-broken" }, /area/library/abandoned_library) @@ -111322,7 +104506,6 @@ dir = 4 }, /turf/open/floor/wood{ - tag = "icon-wood-broken5"; icon_state = "wood-broken5" }, /area/library/abandoned_library) @@ -111353,7 +104536,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dPj" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral/side{ @@ -111362,11 +104544,9 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dPk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -111398,7 +104578,6 @@ /area/chapel/main) "dPo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -111436,7 +104615,6 @@ /area/chapel/main) "dPt" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -111465,7 +104643,6 @@ }) "dPv" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -111479,7 +104656,6 @@ }) "dPw" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/neutral, @@ -111544,14 +104720,12 @@ }, /turf/open/floor/plasteel/whiteblue/side{ baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; - dir = 4; - tag = "icon-whiteblue (EAST)" - }, + dir = 4 + }, /area/shuttle/escape) "dPE" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/clothing/gloves/color/latex, @@ -111567,7 +104741,8 @@ departmentType = 0; name = "Virology RC"; pixel_x = 0; - pixel_y = 32 + pixel_y = 32; + receive_ore_updates = 1 }, /obj/item/weapon/folder/white, /obj/item/weapon/pen/red, @@ -111579,7 +104754,6 @@ /area/medical/virology) "dPG" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/computer/pandemic, @@ -111611,7 +104785,6 @@ /area/medical/virology) "dPJ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -111644,7 +104817,6 @@ /area/medical/virology) "dPM" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -111665,7 +104837,6 @@ name = "virology camera" }, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; icon_state = "whitegreen"; dir = 4 }, @@ -111674,7 +104845,6 @@ /obj/effect/decal/cleanable/dirt, /mob/living/carbon/monkey, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHWEST)"; icon_state = "whitegreen"; dir = 9 }, @@ -111715,7 +104885,6 @@ "dPS" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHEAST)"; icon_state = "whitegreen"; dir = 5 }, @@ -111728,7 +104897,6 @@ "dPU" = ( /obj/effect/decal/cleanable/blood/splatter, /turf/open/floor/wood{ - tag = "icon-wood-broken6"; icon_state = "wood-broken6" }, /area/library/abandoned_library) @@ -111742,7 +104910,6 @@ /area/library/abandoned_library) "dPW" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -111754,7 +104921,6 @@ "dPX" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plating, @@ -111774,7 +104940,6 @@ /area/chapel/office) "dPZ" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark/start{ @@ -111806,14 +104971,12 @@ /area/chapel/main) "dQd" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ name = "lightsout" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -111821,7 +104984,6 @@ /area/chapel/main) "dQe" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -111870,7 +105032,6 @@ icon_state = "plant-22" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -111930,6 +105091,9 @@ /obj/structure/extinguisher_cabinet{ pixel_x = 26 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/plasteel/whiteblue/side{ dir = 6 }, @@ -111940,7 +105104,6 @@ }, /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/reagentgrinder{ @@ -111962,7 +105125,6 @@ /area/medical/virology) "dQv" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whitegreen/corner{ @@ -111981,11 +105143,9 @@ /area/medical/virology) "dQy" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -112004,7 +105164,6 @@ "dQA" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/window/reinforced/fulltile, @@ -112015,7 +105174,6 @@ /area/medical/virology) "dQB" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -112025,18 +105183,15 @@ /area/medical/virology) "dQC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/neutral, /area/medical/virology) "dQD" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -112129,7 +105284,6 @@ "dQP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -112146,7 +105300,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dQR" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -112226,7 +105379,6 @@ pixel_y = 3 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -112317,15 +105469,12 @@ /area/shuttle/escape) "dRl" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/smartfridge/chemistry/virology, @@ -112336,7 +105485,6 @@ /area/medical/virology) "dRm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/whitegreen/side{ @@ -112345,15 +105493,12 @@ /area/medical/virology) "dRn" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -112364,7 +105509,6 @@ /area/medical/virology) "dRo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/holopad, @@ -112376,7 +105520,6 @@ /area/medical/virology) "dRp" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -112386,19 +105529,15 @@ /area/medical/virology) "dRq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -112406,14 +105545,12 @@ dir = 4 }, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; icon_state = "whitegreen"; dir = 4 }, /area/medical/virology) "dRr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -112432,15 +105569,12 @@ req_access_txt = "39" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -112456,7 +105590,6 @@ /area/medical/virology) "dRt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -112472,11 +105605,9 @@ /area/medical/virology) "dRu" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -112490,7 +105621,6 @@ /area/medical/virology) "dRv" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -112503,7 +105633,6 @@ "dRx" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/window/reinforced/fulltile, @@ -112517,24 +105646,19 @@ req_access_txt = "39" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/virology) "dRz" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/window/reinforced/fulltile, @@ -112557,7 +105681,6 @@ dir = 4 }, /turf/open/floor/wood{ - tag = "icon-wood-broken5"; icon_state = "wood-broken5" }, /area/library/abandoned_library) @@ -112566,7 +105689,6 @@ /obj/item/weapon/folder, /obj/item/weapon/pen, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -112616,7 +105738,6 @@ /area/library/abandoned_library) "dRJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -112632,7 +105753,6 @@ /area/library/abandoned_library) "dRL" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -112651,7 +105771,6 @@ /area/chapel/office) "dRN" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/landmark{ @@ -112678,7 +105797,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -112721,9 +105839,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/camera{ c_tag = "Chapel - Starboard"; dir = 8; @@ -112803,9 +105920,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/shuttle/escape) "dSc" = ( /obj/structure/table/glass, @@ -112816,7 +105931,6 @@ pixel_y = 0 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/book/manual/wiki/infections, @@ -112845,7 +105959,6 @@ /area/medical/virology) "dSe" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -112861,7 +105974,6 @@ /area/medical/virology) "dSh" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -112874,7 +105986,6 @@ /area/medical/virology) "dSj" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -112884,7 +105995,6 @@ /area/medical/virology) "dSk" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -112920,7 +106030,6 @@ /area/medical/virology) "dSo" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/whitegreen/side{ @@ -112929,7 +106038,6 @@ /area/medical/virology) "dSp" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -112950,7 +106058,6 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -112982,7 +106089,6 @@ }, /obj/machinery/light/small, /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/library/abandoned_library) @@ -113044,20 +106150,8 @@ "dSC" = ( /turf/open/floor/plating, /area/maintenance/fpmaint2/aft_port_maintenance) -"dSD" = ( -/obj/structure/bodycontainer/morgue, -/obj/structure/sign/poster{ - icon_state = "poster8_legit"; - pixel_y = -32; - tag = "icon-poster8_legit" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) "dSE" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -113071,7 +106165,6 @@ pixel_y = -26 }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -113129,7 +106222,6 @@ }) "dSM" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (WEST)"; icon_state = "manifold"; dir = 8 }, @@ -113142,7 +106234,6 @@ }) "dSN" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -113152,7 +106243,6 @@ }) "dSO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -113172,7 +106262,6 @@ }) "dSQ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -113236,12 +106325,14 @@ pixel_y = -5 }, /obj/effect/turf_decal/bot, +/obj/machinery/light/small{ + dir = 1 + }, /turf/open/floor/plasteel, /area/shuttle/escape) "dSV" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/storage/box/beakers{ @@ -113267,7 +106358,6 @@ /area/medical/virology) "dSX" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/disposal/bin, @@ -113302,7 +106392,6 @@ /area/medical/virology) "dTa" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -113317,9 +106406,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/structure/closet/secure_closet/medical1, /obj/machinery/light_switch{ pixel_x = 26; @@ -113343,11 +106431,9 @@ /area/medical/virology) "dTd" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -113355,11 +106441,9 @@ /area/medical/virology) "dTe" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -113372,15 +106456,12 @@ req_access_txt = "39" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -113393,11 +106474,9 @@ /area/medical/virology) "dTg" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -113409,7 +106488,6 @@ /area/medical/virology) "dTh" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -113417,11 +106495,9 @@ /area/medical/virology) "dTi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/holopad, @@ -113436,11 +106512,9 @@ /area/medical/virology) "dTj" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -113449,25 +106523,21 @@ "dTk" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/weapon/folder/white, /obj/item/weapon/pen/red, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (EAST)"; icon_state = "whitegreen"; dir = 4 }, /area/medical/virology) "dTl" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -113492,7 +106562,6 @@ req_access_txt = "27" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -113604,7 +106673,6 @@ /obj/structure/grille, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/window/reinforced/fulltile, @@ -113613,7 +106681,6 @@ "dTA" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white, @@ -113623,7 +106690,6 @@ "dTB" = ( /obj/structure/grille, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white, @@ -113632,7 +106698,6 @@ /area/medical/virology) "dTC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -113658,7 +106723,6 @@ /area/medical/virology) "dTF" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/sink{ @@ -113667,7 +106731,6 @@ pixel_x = -12 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -113706,7 +106769,6 @@ "dTJ" = ( /obj/structure/table/glass, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/newscaster{ @@ -113714,7 +106776,6 @@ }, /obj/item/weapon/paper_bin, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -113728,7 +106789,6 @@ "dTK" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -113770,7 +106830,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dTO" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -113779,11 +106838,9 @@ "dTP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -113807,7 +106864,6 @@ pixel_y = 26 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -113823,7 +106879,6 @@ pixel_y = 3 }, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /turf/open/floor/plasteel{ @@ -113833,7 +106888,6 @@ /area/chapel/main) "dTU" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -113843,7 +106897,6 @@ /area/chapel/main) "dTV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -113853,7 +106906,6 @@ /area/chapel/main) "dTW" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -113958,7 +107010,6 @@ pixel_y = 3 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -113968,7 +107019,6 @@ /area/medical/virology) "dUh" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/table, @@ -113976,7 +107026,6 @@ /obj/item/weapon/wrench, /obj/item/weapon/restraints/handcuffs, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -114009,9 +107058,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/virology) "dUl" = ( /obj/structure/grille, @@ -114024,7 +107071,6 @@ "dUn" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -114034,7 +107080,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dUo" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, @@ -114042,7 +107087,6 @@ "dUp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/neutral/side, @@ -114050,11 +107094,9 @@ "dUq" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plasteel/blue/side, @@ -114062,7 +107104,6 @@ "dUr" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/blue/side, @@ -114070,19 +107111,16 @@ "dUs" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/fpmaint2/aft_port_maintenance) "dUt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/blue/side, @@ -114090,14 +107128,12 @@ "dUu" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral/side, /area/maintenance/fpmaint2/aft_port_maintenance) "dUv" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -114116,7 +107152,6 @@ pixel_x = 26 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -114136,7 +107171,6 @@ /area/chapel/main) "dUy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -114170,7 +107204,6 @@ /area/chapel/main) "dUC" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -114217,9 +107250,8 @@ /obj/structure/sign/directions/engineering{ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - tag = "icon-doors" - }, + name = "WARNING: EXTERNAL AIRLOCK" + }, /turf/open/floor/plating, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" @@ -114260,7 +107292,6 @@ /obj/item/weapon/bedsheet/medical, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHWEST)"; icon_state = "whitegreen"; dir = 9 }, @@ -114271,7 +107302,6 @@ on = 1 }, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHEAST)"; icon_state = "whitegreen"; dir = 5 }, @@ -114286,7 +107316,6 @@ on = 1 }, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHWEST)"; icon_state = "whitegreen"; dir = 9 }, @@ -114296,7 +107325,6 @@ /obj/item/weapon/bedsheet/medical, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (NORTHEAST)"; icon_state = "whitegreen"; dir = 5 }, @@ -114314,7 +107342,6 @@ "dUS" = ( /obj/machinery/power/smes, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/light/small{ @@ -114327,7 +107354,6 @@ /area/maintenance/portsolar) "dUT" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/machinery/camera{ @@ -114344,15 +107370,13 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 0; - tag = "icon-doors" - }, + pixel_x = 0 + }, /turf/closed/wall/r_wall, /area/maintenance/portsolar) "dUV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -114381,9 +107405,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/aft_port_maintenance) "dUZ" = ( /obj/machinery/button/door{ @@ -114400,9 +107422,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/aft_port_maintenance) "dVa" = ( /obj/effect/decal/cleanable/dirt, @@ -114413,16 +107433,13 @@ req_access_txt = "18" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/barricade/wooden, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/aft_port_maintenance) "dVb" = ( /obj/effect/decal/cleanable/dirt, @@ -114435,9 +107452,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/maintenance/fpmaint2/aft_port_maintenance) "dVc" = ( /obj/structure/sign/nanotrasen, @@ -114460,7 +107475,6 @@ dir = 4 }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -114533,7 +107547,6 @@ }) "dVm" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHEAST)"; icon_state = "intact"; dir = 6 }, @@ -114544,7 +107557,6 @@ /area/medical/virology) "dVn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -114572,7 +107584,6 @@ scrub_Toxins = 0 }, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHWEST)"; icon_state = "whitegreen"; dir = 10 }, @@ -114584,7 +107595,6 @@ /obj/structure/chair/office/light, /obj/effect/decal/cleanable/greenglow, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHEAST)"; icon_state = "whitegreen"; dir = 6 }, @@ -114599,7 +107609,6 @@ }, /obj/structure/chair/office/light, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHWEST)"; icon_state = "whitegreen"; dir = 10 }, @@ -114612,7 +107621,6 @@ scrub_Toxins = 0 }, /turf/open/floor/plasteel/whitegreen/side{ - tag = "icon-whitegreen (SOUTHEAST)"; icon_state = "whitegreen"; dir = 6 }, @@ -114635,9 +107643,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /turf/open/space, /area/solar/port) "dVx" = ( @@ -114645,9 +107652,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /obj/machinery/door/airlock/external{ name = "External Solar Access"; req_access_txt = "10" @@ -114663,9 +107669,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /obj/structure/fans/tiny, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, @@ -114680,9 +107685,8 @@ d1 = 4; d2 = 8; icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, + pixel_x = 0 + }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, @@ -114705,11 +107709,9 @@ /area/maintenance/portsolar) "dVB" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -114731,7 +107733,6 @@ req_access_txt = "10" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -114744,11 +107745,9 @@ /area/maintenance/portsolar) "dVD" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -114788,7 +107787,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dVI" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -114825,7 +107823,6 @@ /area/chapel/office) "dVM" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -114900,7 +107897,6 @@ /area/chapel/main) "dVT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -114935,11 +107931,9 @@ }) "dVW" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -114957,7 +107951,6 @@ }) "dVY" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -114982,6 +107975,10 @@ /obj/item/clothing/mask/gas, /obj/item/clothing/head/hardhat/red, /obj/effect/turf_decal/bot, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, /turf/open/floor/plasteel, /area/shuttle/escape) "dWb" = ( @@ -114998,7 +107995,6 @@ /area/shuttle/escape) "dWd" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on{ - tag = "icon-inje_map (NORTH)"; icon_state = "inje_map"; dir = 1 }, @@ -115097,7 +108093,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dWo" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -115110,12 +108105,10 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dWp" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -115160,7 +108153,6 @@ /area/chapel/office) "dWt" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -115187,13 +108179,11 @@ dir = 1; icon_state = "nboard00"; name = "memorial board"; - pixel_y = -32; - tag = "icon-nboard00 (NORTH)" - }, + pixel_y = -32 + }, /obj/machinery/holopad, /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -115213,7 +108203,6 @@ /area/chapel/main) "dWz" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -115222,7 +108211,6 @@ /area/chapel/main) "dWA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -115244,7 +108232,6 @@ }) "dWC" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -115258,7 +108245,6 @@ }) "dWD" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -115298,7 +108284,6 @@ }) "dWG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -115317,6 +108302,7 @@ id = "shuttleflash"; pixel_y = -26 }, +/obj/machinery/light, /turf/open/floor/plasteel/neutral/side, /area/shuttle/escape) "dWJ" = ( @@ -115373,7 +108359,6 @@ "dWR" = ( /obj/structure/rack, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -115412,7 +108397,6 @@ req_access_txt = "27" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/vault{ @@ -115452,16 +108436,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) "dXa" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/door/airlock/glass_security{ @@ -115472,13 +108453,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/security/checkpoint2) "dXb" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/grille, @@ -115488,23 +108466,18 @@ "dXc" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/security/checkpoint2) "dXd" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -115518,11 +108491,9 @@ /area/security/checkpoint2) "dXf" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -115533,11 +108504,9 @@ "dXg" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/machinery/door/airlock/glass_security{ @@ -115547,17 +108516,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/security/checkpoint2) "dXh" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -115567,11 +108532,9 @@ /area/security/checkpoint2) "dXi" = ( /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -115580,7 +108543,6 @@ /area/security/checkpoint2) "dXj" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -115608,9 +108570,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/shuttle/escape) "dXn" = ( /obj/effect/decal/cleanable/dirt, @@ -115708,7 +108668,6 @@ "dXq" = ( /obj/structure/rack, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -115818,14 +108777,12 @@ /area/chapel/office) "dXv" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, /area/chapel/office) "dXw" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (EAST)"; icon_state = "wooden_chair"; dir = 4 }, @@ -115839,7 +108796,6 @@ /area/chapel/main) "dXx" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (WEST)"; icon_state = "wooden_chair"; dir = 8 }, @@ -115870,7 +108826,6 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHEAST)"; icon_state = "intact"; dir = 5 }, @@ -115947,7 +108902,6 @@ /area/security/checkpoint2) "dXH" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -115966,7 +108920,6 @@ "dXJ" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/folder/red, @@ -115993,12 +108946,6 @@ dir = 5 }, /area/security/checkpoint2) -"dXM" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/red/side{ - dir = 9 - }, -/area/security/checkpoint2) "dXN" = ( /obj/structure/chair, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -116008,7 +108955,6 @@ /area/security/checkpoint2) "dXO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side{ @@ -116130,7 +109076,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dYe" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -116141,11 +109086,9 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dYf" = ( /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -116156,7 +109099,6 @@ "dYg" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -116167,11 +109109,9 @@ "dYh" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/turf_decal/delivery, @@ -116179,7 +109119,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dYi" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -116189,11 +109128,9 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dYj" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -116204,7 +109141,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dYk" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -116258,16 +109194,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) "dYs" = ( /obj/structure/table/reinforced, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/machinery/light{ @@ -116289,11 +109222,9 @@ /area/security/checkpoint2) "dYt" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -116306,11 +109237,9 @@ "dYu" = ( /obj/machinery/holopad, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/bot, @@ -116321,18 +109250,15 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral, /area/security/checkpoint2) "dYw" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -116343,7 +109269,6 @@ /area/security/checkpoint2) "dYx" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side{ @@ -116353,7 +109278,6 @@ "dYy" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/glass_security{ @@ -116367,7 +109291,6 @@ /area/security/checkpoint2) "dYz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -116381,11 +109304,9 @@ /area/security/checkpoint2) "dYA" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -116393,15 +109314,12 @@ /area/security/checkpoint2) "dYB" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plasteel/neutral, @@ -116423,7 +109341,6 @@ /area/security/checkpoint2) "dYE" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -116445,6 +109362,9 @@ /obj/structure/extinguisher_cabinet{ pixel_x = 26 }, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/plasteel/neutral/corner{ dir = 4 }, @@ -116488,7 +109408,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dYO" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/item/weapon/twohanded/required/kirbyplants{ @@ -116504,7 +109423,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dYP" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -116532,7 +109450,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dYS" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -116541,7 +109458,6 @@ /area/maintenance/fpmaint2/aft_port_maintenance) "dYT" = ( /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -116578,7 +109494,6 @@ /area/chapel/office) "dYW" = ( /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel/grimy, @@ -116595,7 +109510,6 @@ pixel_y = 25 }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /turf/open/floor/plasteel/grimy, @@ -116625,9 +109539,8 @@ dir = 4; icon_state = "fire0"; pixel_x = 24; - pixel_y = 0; - tag = "icon-fire0 (EAST)" - }, + pixel_y = 0 + }, /obj/machinery/status_display{ pixel_x = 0; pixel_y = 32 @@ -116695,9 +109608,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32; - tag = "icon-doors" - }, + pixel_x = 32 + }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/hallway/secondary/exit{ @@ -116725,7 +109637,6 @@ "dZj" = ( /obj/machinery/computer/prisoner, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/floor/plasteel/red/side{ @@ -116764,9 +109675,8 @@ /obj/machinery/light, /obj/structure/sign/poster{ icon_state = "poster22_legit"; - pixel_y = -32; - tag = "icon-poster22_legit" - }, + pixel_y = -32 + }, /turf/open/floor/plasteel/red/side{ dir = 10 }, @@ -116780,11 +109690,9 @@ "dZp" = ( /obj/structure/table, /obj/structure/cable/white{ - tag = "icon-1-2"; icon_state = "1-2" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/item/weapon/restraints/handcuffs, @@ -116797,7 +109705,6 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plasteel/red/side, @@ -116807,7 +109714,6 @@ dir = 1 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/firealarm{ @@ -116827,12 +109733,10 @@ /area/security/checkpoint2) "dZs" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/structure/grille, @@ -116879,9 +109783,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, +/turf/open/floor/plasteel, /area/shuttle/escape) "dZz" = ( /turf/open/floor/plasteel/neutral/corner{ @@ -116989,7 +109891,6 @@ /area/chapel/office) "dZM" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -117000,7 +109901,6 @@ /obj/item/weapon/paper_bin, /obj/item/weapon/pen, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -117014,7 +109914,6 @@ name = "Chaplain" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (NORTHWEST)"; icon_state = "intact"; dir = 9 }, @@ -117044,9 +109943,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -117056,11 +109953,9 @@ "dZS" = ( /obj/structure/cable/white, /obj/structure/cable/white{ - tag = "icon-0-4"; icon_state = "0-4" }, /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -117069,7 +109964,6 @@ /area/security/checkpoint2) "dZT" = ( /obj/structure/cable/white{ - tag = "icon-0-8"; icon_state = "0-8" }, /obj/structure/grille, @@ -117118,9 +110012,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (NORTH)" - }, +/turf/open/floor/plasteel, /area/shuttle/escape) "eaa" = ( /obj/machinery/suit_storage_unit/standard_unit, @@ -117258,24 +110150,6 @@ dir = 8 }, /area/chapel/office) -"eam" = ( -/obj/structure/table/wood, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24 - }, -/obj/item/weapon/clipboard, -/obj/item/toy/figure/chaplain, -/obj/structure/sign/poster{ - icon_state = "poster6_legit"; - pixel_x = 0; - pixel_y = -32; - tag = "icon-poster6_legit" - }, -/turf/open/floor/plasteel/vault{ - dir = 8 - }, -/area/chapel/office) "ean" = ( /obj/machinery/photocopier, /turf/open/floor/plasteel/vault{ @@ -117340,15 +110214,16 @@ pixel_x = -3; pixel_y = 3 }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5 }, /area/shuttle/escape) "eav" = ( /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5 }, @@ -117363,7 +110238,6 @@ "eax" = ( /obj/machinery/computer/security, /turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (NORTHWEST)"; icon_state = "darkred"; dir = 9 }, @@ -117373,7 +110247,6 @@ dir = 8 }, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5 }, @@ -117385,7 +110258,6 @@ pixel_y = 58 }, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5 }, @@ -117395,7 +110267,6 @@ dir = 4 }, /turf/open/floor/plasteel/vault{ - tag = "icon-vault (NORTHEAST)"; icon_state = "vault"; dir = 5 }, @@ -117403,7 +110274,6 @@ "eaB" = ( /obj/machinery/computer/station_alert, /turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (NORTHEAST)"; icon_state = "darkyellow"; dir = 5 }, @@ -117416,7 +110286,6 @@ "eaD" = ( /obj/machinery/computer/secure_data, /turf/open/floor/plasteel/darkred/side{ - tag = "icon-darkred (SOUTHWEST)"; icon_state = "darkred"; dir = 10 }, @@ -117451,7 +110320,6 @@ "eaJ" = ( /obj/machinery/computer/atmos_alert, /turf/open/floor/plasteel/darkyellow/side{ - tag = "icon-darkyellow (SOUTHEAST)"; icon_state = "darkyellow"; dir = 6 }, @@ -117617,45 +110485,6 @@ /obj/structure/lattice/catwalk, /turf/open/space, /area/solar/auxstarboard) -"ebc" = ( -/obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; - icon_state = "propulsion"; - dir = 1 - }, -/turf/open/floor/plating, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/area/space) -"ebd" = ( -/obj/structure/window/reinforced, -/obj/structure/shuttle/engine/heater{ - tag = "icon-heater (NORTH)"; - icon_state = "heater"; - dir = 1 - }, -/turf/open/floor/plating, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/area/space) -"ebe" = ( -/turf/closed/wall/mineral/plastitanium, -/area/space) -"ebf" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Transport Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/white{ - tag = "icon-white_warn_side (EAST)"; - icon_state = "white_warn_side" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 2 - }, -/area/space) "ebg" = ( /obj/structure/chair/office/dark{ dir = 4 @@ -117668,150 +110497,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, /area/maintenance/auxsolarstarboard) -"ebh" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/space) -"ebi" = ( -/turf/open/floor/plasteel, -/obj/effect/turf_decal/delivery, -/area/space) -"ebj" = ( -/turf/closed/wall/mineral/titanium, -/area/space) -"ebk" = ( -/obj/machinery/recharger, -/obj/structure/extinguisher_cabinet{ - pixel_x = -26 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/bot, -/area/space) -"ebl" = ( -/obj/machinery/recharger, -/obj/machinery/vending/wallmed{ - name = "Emergency NanoMed"; - pixel_x = 26; - pixel_y = 0; - req_access_txt = "0"; - use_power = 0 - }, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/bot, -/area/space) -"ebm" = ( -/obj/structure/window/shuttle, -/obj/structure/grille, -/turf/open/floor/plating, -/area/space) -"ebn" = ( -/turf/open/floor/plasteel/white{ - tag = "icon-white_warn_end (NORTH)"; - icon_state = "white_warn_end" - }, -/obj/effect/turf_decal/stripes/end{ - dir = 1 - }, -/area/space) -"ebo" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Transport Shuttle Airlock"; - req_access_txt = "0" - }, -/turf/open/floor/plasteel/white, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/area/space) -"ebp" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/space) -"ebq" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/bot, -/area/space) -"ebr" = ( -/turf/open/floor/plasteel/white, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/area/space) -"ebs" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/bot, -/area/space) -"ebt" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/ai_status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/bot, -/area/space) -"ebu" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/bot, -/area/space) -"ebv" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/status_display{ - pixel_x = -32 - }, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/bot, -/area/space) -"ebw" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/bot, -/area/space) -"ebx" = ( -/turf/open/floor/plasteel/white, -/obj/effect/turf_decal/stripes/end, -/area/space) -"eby" = ( -/obj/structure/closet/crate, -/turf/open/floor/plasteel, -/obj/effect/turf_decal/bot, -/area/space) -"ebz" = ( -/obj/structure/chair/office/light, -/turf/open/floor/plasteel/white{ - tag = "icon-white_warn_end (NORTH)"; - icon_state = "white_warn_end" - }, -/obj/effect/turf_decal/stripes/end{ - dir = 1 - }, -/area/space) -"ebA" = ( -/obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/plasteel/white, -/obj/effect/turf_decal/stripes/end, -/area/space) "ebB" = ( /obj/structure/cable{ d1 = 2; @@ -117873,24 +110558,12 @@ /obj/effect/turf_decal/stripes/end{ dir = 8 }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_end (WEST)" - }, +/turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" }) "ebG" = ( /turf/open/floor/engine, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ebH" = ( -/turf/open/floor/engine, -/area/engine/gravity_generator{ - name = "Atmospherics Engine" - }) -"ebI" = ( -/turf/open/floor/engine, /area/engine/gravity_generator{ name = "Atmospherics Engine" }) @@ -117912,38 +110585,6 @@ }, /turf/open/floor/plasteel/grimy, /area/library) -"ebL" = ( -/obj/machinery/door/airlock/external{ - name = "External Docking Port" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/space) -"ebM" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: EXTERNAL AIRLOCK"; - tag = "icon-doors" - }, -/turf/open/floor/plating, -/area/space) -"ebN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/fans/tiny, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/space) -"ebO" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/sign/vacuum, -/turf/open/floor/plating, -/area/space) "ebP" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -118025,7 +110666,6 @@ /area/hallway/primary/central) "ebV" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/item/device/radio/beacon, @@ -118043,7 +110683,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "ebX" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -118052,7 +110691,6 @@ "ebY" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (EAST)"; icon_state = "intact"; dir = 4 }, @@ -118061,7 +110699,6 @@ /area/maintenance/starboard/fore_starboard_maintenance) "ebZ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/ai_slipper{ @@ -118071,24 +110708,6 @@ dir = 8 }, /area/ai_monitored/turret_protected/aisat_interior) -"eca" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/machinery/door/airlock/external{ - name = "External Solar Access"; - req_access_txt = "24"; - req_one_access = null - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/maintenance/auxsolarport) "ecb" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 4; @@ -118102,14 +110721,13 @@ "ecc" = ( /obj/structure/closet/wardrobe/grey, /turf/open/floor/plasteel/neutral, -/area/crew_quarters/electronic_marketing_den) +/area/shuttle/arrival) "ecd" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/maintenance/fpmaint2/fore_port_maintenance) "ece" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -118176,7 +110794,6 @@ /area/hydroponics/Abandoned_Garden) "ecm" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -118223,13 +110840,8 @@ icon_state = "wood-broken" }, /area/crew_quarters/abandoned_gambling_den) -"ect" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall, -/area/crew_quarters/abandoned_gambling_den) "ecu" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -118242,11 +110854,9 @@ /area/maintenance/fpmaint2/fore_port_maintenance) "ecv" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold (NORTH)"; icon_state = "manifold"; dir = 1 }, @@ -118286,29 +110896,6 @@ temperature = 80 }, /area/tcommsat/server) -"ecB" = ( -/turf/open/floor/plasteel/vault{ - dir = 6; - initial_gas_mix = "n2=100;TEMP=80"; - temperature = 80 - }, -/area/tcommsat/server) -"ecC" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/vault{ - dir = 10; - initial_gas_mix = "n2=100;TEMP=80"; - temperature = 80 - }, -/area/tcommsat/server) -"ecD" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/vault{ - dir = 10; - initial_gas_mix = "n2=100;TEMP=80"; - temperature = 80 - }, -/area/tcommsat/server) "ecE" = ( /obj/machinery/atmospherics/pipe/simple/general/hidden, /turf/open/floor/plasteel/vault{ @@ -118317,26 +110904,12 @@ temperature = 80 }, /area/tcommsat/server) -"ecF" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plasteel/vault{ - dir = 8; - initial_gas_mix = "n2=100;TEMP=80"; - temperature = 80 - }, -/area/tcommsat/server) "ecG" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/general/hidden, /turf/open/floor/plating, /area/tcommsat/server) -"ecH" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/plating, -/area/tcommsat/server) "ecI" = ( /turf/open/floor/plasteel/vault{ dir = 5; @@ -118344,55 +110917,6 @@ temperature = 80 }, /area/toxins/xenobiology) -"ecJ" = ( -/turf/open/floor/plasteel/vault{ - dir = 5; - initial_gas_mix = "n2=500;TEMP=80"; - temperature = 80 - }, -/area/toxins/xenobiology) -"ecK" = ( -/turf/open/floor/plasteel/vault{ - dir = 5; - initial_gas_mix = "n2=500;TEMP=80"; - temperature = 80 - }, -/area/toxins/xenobiology) -"ecL" = ( -/turf/open/floor/plasteel/vault{ - dir = 5; - initial_gas_mix = "n2=500;TEMP=80"; - temperature = 80 - }, -/area/toxins/xenobiology) -"ecM" = ( -/turf/open/floor/plasteel/vault{ - dir = 5; - initial_gas_mix = "n2=500;TEMP=80"; - temperature = 80 - }, -/area/toxins/xenobiology) -"ecN" = ( -/turf/open/floor/plasteel/vault{ - dir = 5; - initial_gas_mix = "n2=500;TEMP=80"; - temperature = 80 - }, -/area/toxins/xenobiology) -"ecO" = ( -/turf/open/floor/plasteel/vault{ - dir = 5; - initial_gas_mix = "n2=500;TEMP=80"; - temperature = 80 - }, -/area/toxins/xenobiology) -"ecP" = ( -/turf/open/floor/plasteel/vault{ - dir = 5; - initial_gas_mix = "n2=500;TEMP=80"; - temperature = 80 - }, -/area/toxins/xenobiology) "ecQ" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -118400,12 +110924,10 @@ /area/crew_quarters/abandoned_gambling_den) "ecR" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ - tag = "icon-intact (WEST)"; icon_state = "intact"; dir = 8 }, @@ -118455,13 +110977,10 @@ dir = 2 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/surgery) "ecX" = ( /obj/structure/chair/wood/normal{ - tag = "icon-wooden_chair (WEST)"; icon_state = "wooden_chair"; dir = 8 }, @@ -118472,7 +110991,6 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/wood{ - tag = "icon-wood-broken3"; icon_state = "wood-broken3" }, /area/crew_quarters/abandoned_gambling_den) @@ -118509,7 +111027,6 @@ "ede" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; icon_state = "manifold"; dir = 4 }, @@ -118531,17 +111048,13 @@ req_access_txt = "39" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (WEST)" - }, +/turf/open/floor/plasteel, /area/medical/virology) "edh" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; icon_state = "brown"; dir = 1 }, @@ -118559,90 +111072,24 @@ }, /turf/open/floor/plating, /area/shuttle/auxillary_base) -"edk" = ( -/obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; - icon_state = "propulsion"; - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/shuttle/transport) "edl" = ( /obj/structure/shuttle/engine/heater{ - tag = "icon-heater (NORTH)"; icon_state = "heater"; dir = 1 }, /obj/structure/window/reinforced, /turf/open/floor/plating/airless, /area/shuttle/transport) -"edm" = ( -/obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; - icon_state = "propulsion"; - dir = 1 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edn" = ( -/obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; - icon_state = "propulsion"; - dir = 1 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) "edo" = ( /turf/closed/wall/mineral/titanium, /area/shuttle/transport) "edp" = ( /turf/open/floor/pod/light, /area/shuttle/transport) -"edq" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edr" = ( -/obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; - icon_state = "propulsion"; - dir = 1 - }, -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"eds" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edt" = ( -/obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edu" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edv" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edw" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edx" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edy" = ( -/obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) "edz" = ( /obj/machinery/door/airlock/titanium, /turf/open/floor/pod/light, /area/shuttle/transport) -"edA" = ( -/obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edB" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) "edC" = ( /obj/structure/grille, /obj/structure/window/shuttle, @@ -118654,159 +111101,16 @@ }, /turf/open/floor/pod/dark, /area/shuttle/transport) -"edE" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) "edF" = ( /obj/structure/chair{ dir = 8 }, /turf/open/floor/pod/dark, /area/shuttle/transport) -"edG" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/transport) -"edH" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edI" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edJ" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edK" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edL" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edM" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edN" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edO" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edP" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edQ" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edR" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edS" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) "edT" = ( /obj/machinery/computer/shuttle/ferry/request, /turf/open/floor/pod/dark, /area/shuttle/transport) -"edU" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edV" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"edW" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/transport) -"edX" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edY" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"edZ" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"eea" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/transport) -"eeb" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"eec" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"eed" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"eee" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"eef" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"eeg" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"eeh" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"eei" = ( -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"eej" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"eek" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"eel" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) -"eem" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/transport) "een" = ( /obj/docking_port/mobile{ dir = 1; @@ -118831,17 +111135,8 @@ /obj/machinery/door/airlock/titanium, /turf/open/floor/pod/dark, /area/shuttle/transport) -"eeo" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, -/area/shuttle/transport) -"eep" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/transport) "eeq" = ( /obj/structure/shuttle/engine/propulsion{ - tag = "icon-propulsion (NORTH)"; icon_state = "propulsion"; dir = 1 }, @@ -118852,7 +111147,6 @@ /area/shuttle/transport) "ees" = ( /obj/structure/shuttle/engine/heater{ - tag = "icon-heater (NORTH)"; icon_state = "heater"; dir = 1 }, @@ -118864,7 +111158,6 @@ /area/shuttle/transport) "eet" = ( /obj/structure/shuttle/engine/heater{ - tag = "icon-heater (NORTH)"; icon_state = "heater"; dir = 1 }, @@ -118877,7 +111170,6 @@ /obj/structure/chair{ dir = 8 }, -/obj/effect/landmark/latejoin, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/shuttle/transport) @@ -118885,20 +111177,1672 @@ /obj/machinery/door/airlock/external, /turf/open/floor/pod/light, /area/shuttle/transport) -"eew" = ( -/obj/machinery/door/airlock/external, -/turf/open/floor/pod/light, -/area/shuttle/transport) "eex" = ( /obj/structure/window/shuttle, /obj/structure/grille, /turf/open/floor/plating, /area/shuttle/transport) -"eey" = ( -/obj/structure/window/shuttle, -/obj/structure/grille, +"eez" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 6 + }, +/area/maintenance/starboard/fore_starboard_maintenance) +"eeA" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = 32 + }, +/turf/open/floor/carpet, +/area/security/vacantoffice) +"eeB" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/obj/structure/sign/poster/official/do_not_question{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/grimy, +/area/security/vacantoffice) +"eeC" = ( +/obj/structure/sign/poster/contraband/random, +/turf/closed/wall, +/area/maintenance/starboard/fore_starboard_maintenance) +"eeD" = ( +/obj/structure/sign/poster/contraband/random, +/turf/closed/wall, +/area/maintenance/starboard/fore_starboard_maintenance) +"eeE" = ( +/obj/structure/table/wood, +/obj/structure/sign/barsign{ + pixel_y = 32 + }, +/obj/item/weapon/wirerod, +/obj/item/weapon/wrench, +/obj/item/clothing/under/waiter, +/obj/item/clothing/tie/waistcoat, +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/electronic_marketing_den) +"eeF" = ( +/obj/structure/table/wood, +/obj/item/weapon/poster/random_contraband{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/poster/random_contraband{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/weapon/poster/random_contraband, +/turf/open/floor/wood, +/area/crew_quarters/electronic_marketing_den) +"eeG" = ( +/obj/structure/filingcabinet/chestdrawer, +/obj/machinery/light/small, +/obj/structure/sign/poster/official/work_for_a_future{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/grimy, +/area/security/vacantoffice) +"eeH" = ( +/obj/structure/table/wood, +/obj/item/weapon/poster/random_contraband{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/poster/random_contraband{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/weapon/poster/random_contraband, +/turf/open/floor/plasteel/black, +/area/crew_quarters/electronic_marketing_den) +"eeI" = ( +/obj/structure/sign/poster/contraband/random, +/turf/closed/wall, +/area/crew_quarters/electronic_marketing_den) +"eeJ" = ( +/obj/structure/sign/poster/contraband/random, +/turf/closed/wall, +/area/crew_quarters/electronic_marketing_den) +"eeK" = ( +/obj/structure/sign/poster/contraband/random, +/turf/closed/wall, +/area/crew_quarters/electronic_marketing_den) +"eeL" = ( +/obj/structure/sign/poster/contraband/random, +/turf/closed/wall, +/area/maintenance/fpmaint2/fore_port_maintenance) +"eeM" = ( +/obj/structure/sign/poster/contraband/random, +/turf/closed/wall, +/area/maintenance/fpmaint2/fore_port_maintenance) +"eeN" = ( +/obj/structure/sign/poster/contraband/random, +/turf/closed/wall, +/area/maintenance/fpmaint2/fore_port_maintenance) +"eeO" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/wood{ + icon_state = "wood-broken7" + }, +/area/maintenance/fpmaint2/fore_port_maintenance) +"eeP" = ( +/obj/structure/janitorialcart, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/official/work_for_a_future{ + pixel_x = 32 + }, /turf/open/floor/plating, +/area/janitor) +"eeQ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/redblue, +/area/maintenance/fpmaint2/fore_port_maintenance) +"eeR" = ( +/obj/structure/table/wood, +/obj/effect/decal/cleanable/dirt, +/obj/item/clothing/shoes/jackboots, +/obj/effect/landmark/costume, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/cafeteria, +/area/maintenance/fpmaint2/fore_port_maintenance) +"eeS" = ( +/obj/structure/sink{ + dir = 8; + icon_state = "sink"; + pixel_x = -12 + }, +/obj/item/weapon/reagent_containers/glass/bucket, +/obj/item/weapon/reagent_containers/glass/bucket, +/obj/effect/decal/cleanable/dirt, +/obj/item/weapon/mop, +/obj/item/weapon/mop, +/obj/item/device/radio/intercom{ + name = "Station Intercom"; + pixel_x = 0; + pixel_y = -26 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/light/small, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/cleanliness{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/neutral, +/area/janitor) +"eeT" = ( +/obj/structure/sign/poster/random, +/turf/closed/wall, +/area/crew_quarters/bar) +"eeU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/random, +/turf/closed/wall, +/area/crew_quarters/bar) +"eeV" = ( +/obj/structure/sign/poster/contraband/random, +/turf/closed/wall, +/area/crew_quarters/bar) +"eeW" = ( +/obj/structure/closet/radiation, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/camera{ + c_tag = "Atmospherics - Engine Access"; + name = "atmospherics camera" + }, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/cleanliness{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator{ + name = "Atmospherics Engine" + }) +"eeX" = ( +/obj/structure/table/wood, +/obj/item/weapon/soap/nanotrasen, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/crew_quarters/bar/atrium) +"eeY" = ( +/obj/structure/easel, +/obj/item/weapon/canvas/twentythreeXtwentythree, +/obj/item/weapon/canvas/twentythreeXtwentythree, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/grimy, +/area/crew_quarters/bar/atrium) +"eeZ" = ( +/obj/machinery/door/airlock{ + name = "Bathroom" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/official/cleanliness{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"efa" = ( +/obj/machinery/computer/slot_machine, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/wood{ + icon_state = "wood-broken2" + }, +/area/crew_quarters/abandoned_gambling_den) +"efb" = ( +/obj/structure/table/wood, +/obj/item/device/instrument/eguitar, +/obj/item/toy/crayon/spraycan/lubecan{ + charges = 5 + }, +/obj/structure/sign/poster/contraband/clown{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/redblue, +/area/crew_quarters/theatre) +"efc" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/clown, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/redblue, +/area/crew_quarters/theatre) +"efd" = ( +/obj/structure/sign/poster/random, +/turf/closed/wall, +/area/crew_quarters/bar/atrium) +"efe" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/sign/poster/official/help_others{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault, +/area/prison/solitary{ + name = "Prisoner Education Chamber" + }) +"eff" = ( +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/grimy, +/area/crew_quarters/abandoned_gambling_den) +"efg" = ( +/obj/machinery/computer/slot_machine, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/wood{ + icon_state = "wood-broken4" + }, +/area/crew_quarters/abandoned_gambling_den) +"efh" = ( +/obj/machinery/computer/slot_machine, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/wood{ + icon_state = "wood-broken7" + }, +/area/crew_quarters/abandoned_gambling_den) +"efi" = ( +/obj/machinery/computer/slot_machine, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"efj" = ( +/obj/structure/table/wood, +/obj/item/weapon/reagent_containers/food/snacks/baguette, +/obj/item/toy/crayon/spraycan/mimecan{ + charges = 5 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/theatre) +"efk" = ( +/obj/structure/dresser, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/theatre) +"efl" = ( +/obj/structure/sign/poster/random, +/turf/closed/wall, +/area/crew_quarters/bar/atrium) +"efm" = ( +/obj/structure/table/wood, +/obj/item/clothing/mask/fakemoustache, +/obj/item/weapon/cane, +/obj/structure/sign/poster/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/crew_quarters/bar/atrium) +"efn" = ( +/obj/structure/chair/stool/bar, +/obj/structure/sign/poster/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/grimy, +/area/crew_quarters/bar/atrium) +"efo" = ( +/obj/structure/sign/poster/random, +/turf/closed/wall, +/area/maintenance/fpmaint2/fore_port_maintenance) +"efp" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/structure/window/reinforced, +/obj/item/weapon/reagent_containers/glass/bucket, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/nanotrasen_logo{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"efq" = ( +/obj/structure/sign/poster/random, +/turf/closed/wall, +/area/maintenance/fpmaint2/fore_port_maintenance) +"efr" = ( +/obj/structure/table/glass, +/obj/machinery/computer/med_data/laptop, +/obj/structure/sign/poster/official/cleanliness{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/whitered/side{ + dir = 9 + }, +/area/security/brig) +"efs" = ( +/obj/structure/sign/poster/random, +/turf/closed/wall, +/area/maintenance/fpmaint2/fore_port_maintenance) +"eft" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/do_not_question{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/kitchen) +"efu" = ( +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/obj/machinery/microwave{ + desc = "Cooks and boils stuff, somehow."; + pixel_x = -3; + pixel_y = 5 + }, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/cleanliness{ + pixel_x = 32 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/kitchen) +"efv" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/do_not_question{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/atmos) +"efw" = ( +/obj/structure/sign/poster/random, +/turf/closed/wall, +/area/maintenance/fpmaint2/fore_port_maintenance) +"efx" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "Air to External Air Ports"; + on = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/sign/poster/official/work_for_a_future{ + pixel_x = 32 + }, +/turf/open/floor/plasteel, +/area/atmos) +"efy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/light/small, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/poster/official/do_not_question{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/neutral/corner, +/area/hallway/primary/central) +"efz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/light/small, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"efA" = ( +/obj/structure/sink{ + dir = 8; + icon_state = "sink"; + pixel_x = -12 + }, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/cleanliness{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"efB" = ( +/obj/structure/table/glass, +/obj/item/weapon/reagent_containers/spray/plantbgone, +/obj/item/weapon/reagent_containers/spray/plantbgone{ + pixel_x = 16 + }, +/obj/item/weapon/watertank, +/obj/item/weapon/grenade/chem_grenade/antiweed, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/ian{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"efC" = ( +/obj/structure/table/reinforced, +/obj/machinery/microwave{ + desc = "It looks really dirty."; + name = "maint microwave"; + pixel_y = 5 + }, +/obj/structure/sign/poster/official/help_others{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/redyellow, +/area/engine/break_room) +"efD" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/structure/sign/poster/official/do_not_question{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/security/main) +"efE" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/effect/turf_decal/delivery, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"efF" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/camera{ + c_tag = "Security - Transfer Centre Aft"; + dir = 1; + name = "security camera" + }, +/obj/structure/sign/poster/official/work_for_a_future{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/red/side, +/area/security/transfer) +"efG" = ( +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/obj/machinery/door/airlock/security{ + name = "Brig"; + req_access_txt = "63" + }, +/obj/structure/disposalpipe/segment, +/obj/structure/sign/poster/official/nanotrasen_logo{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"efH" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/detective, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault, +/area/security/detectives_office) +"efI" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + icon_state = "manifold"; + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/sign/poster/official/help_others{ + pixel_x = -32; + pixel_y = -32 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/hallway/primary/starboard) +"efJ" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/obj/structure/sign/poster/official/ian{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"efK" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Courtroom - Fore"; + dir = 2; + name = "security camera" + }, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault, +/area/crew_quarters/courtroom) +"efL" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/structure/cable/white{ + icon_state = "1-8" + }, +/obj/structure/cable/white{ + icon_state = "1-4" + }, +/obj/machinery/door/window/brigdoor/northright{ + name = "Warden's Desk"; + req_access_txt = "3" + }, +/obj/machinery/door/window/southright{ + name = "Warden's Desk" + }, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen, +/obj/item/weapon/poster/random_official{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/poster/random_official, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/security/warden) +"efM" = ( +/obj/structure/cable/white{ + icon_state = "1-4" + }, +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/item/weapon/pen, +/obj/structure/sign/poster/official/enlist{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/security/brig) +"efN" = ( +/obj/structure/closet/wardrobe/red, +/obj/item/clothing/under/rank/security/grey, +/obj/item/clothing/under/rank/security/grey, +/obj/item/clothing/under/rank/security/grey, +/obj/structure/cable/white{ + icon_state = "1-4" + }, +/obj/item/weapon/storage/backpack/satchel/sec, +/obj/structure/sign/poster/official/do_not_question{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/red, +/area/security/brig) +"efO" = ( +/obj/machinery/vending/cola/random, +/obj/structure/sign/poster/official/ian{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/hallway/primary/central) +"efP" = ( +/obj/machinery/photocopier, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/sign/poster/official/work_for_a_future{ + pixel_x = 32 + }, +/turf/open/floor/wood, +/area/crew_quarters/heads) +"efQ" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = -32 + }, +/turf/open/floor/wood, +/area/lawoffice) +"efR" = ( +/obj/structure/closet/secure_closet/engineering_personal, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/requests_console{ + department = "Engineering"; + departmentType = 0; + name = "Engineering RC"; + pixel_x = 0; + pixel_y = -32 + }, +/obj/effect/turf_decal/delivery, +/obj/structure/sign/poster/official/do_not_question{ + pixel_x = 32 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"efS" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/briefcase, +/obj/structure/sign/poster/official/help_others{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault, +/area/crew_quarters/courtroom) +"efT" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/official/work_for_a_future{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/crew_quarters/courtroom) +"efU" = ( +/obj/structure/table/reinforced, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/weapon/crowbar, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/engine/engineering{ + name = "Engineering Storage" + }) +"efV" = ( +/obj/structure/table/reinforced, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/item/weapon/wrench, +/obj/item/weapon/storage/box/lights/mixed, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/maintenance/fpmaint2/port_maintenance) +"efW" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/structure/sign/poster/official/help_others{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/maintenance/electrical) +"efX" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/rack, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/storage/toolbox/electrical, +/obj/effect/turf_decal/delivery, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/maintenance/electrical) +"efY" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/obj/structure/sign/poster/official/science{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/whitepurple/corner{ + icon_state = "whitepurplecorner"; + dir = 1 + }, +/area/medical/research{ + name = "Research Division" + }) +"efZ" = ( +/obj/structure/mirror{ + pixel_x = 26 + }, +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/vomit/old, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/structure/sign/poster/official/cleanliness{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/neutral, +/area/medical/medbay{ + name = "Medbay Central" + }) +"ega" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_medical{ + name = "Medbay Storage"; + req_access_txt = "5" + }, +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/obj/structure/sign/poster/official/cleanliness{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/medical/medbay2{ + name = "Medbay Storage" + }) +"egb" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/gloves/color/yellow, +/obj/item/weapon/storage/toolbox/electrical, +/obj/structure/sign/poster/official/do_not_question{ + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"egc" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/sign/poster/official/help_others{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 1 + }, +/area/medical/medbay{ + name = "Medbay Central" + }) +"egd" = ( +/obj/structure/table/glass, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/md, +/obj/machinery/light/small, +/obj/structure/sign/poster/official/ian{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 8 + }, +/area/medical/medbay{ + name = "Medbay Central" + }) +"ege" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/pill_bottle/dice, +/obj/structure/sign/poster/official/help_others{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 8 + }, +/area/medical/medbay{ + name = "Medbay Central" + }) +"egf" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/abandoned_gambling_den) +"egg" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 4 + }, +/area/medical/medbay{ + name = "Medbay Central" + }) +"egh" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"egi" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/toolbox/mechanical, +/obj/item/device/flashlight, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/science{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/toxins/explab) +"egj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/light, +/obj/machinery/camera{ + c_tag = "Medbay - Starboard"; + dir = 1; + name = "medbay camera" + }, +/obj/structure/sign/poster/official/work_for_a_future{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/whiteblue/corner, +/area/medical/medbay{ + name = "Medbay Central" + }) +"egk" = ( +/obj/structure/table/reinforced, +/obj/item/stack/cable_coil/white{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/stack/cable_coil/white, +/obj/item/device/geiger_counter, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/cleanliness{ + pixel_x = 32 + }, +/turf/open/floor/plasteel, +/area/toxins/explab) +"egl" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/grimy, +/area/crew_quarters/abandoned_gambling_den) +"egm" = ( +/obj/structure/chair/stool/bar, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/grimy, +/area/crew_quarters/abandoned_gambling_den) +"egn" = ( +/obj/structure/closet/secure_closet/medical2, +/obj/structure/sign/poster/official/cleanliness{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/vault, +/area/medical/surgery) +"ego" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/sign/poster/official/do_not_question{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/whitepurple/corner{ + dir = 8 + }, +/area/medical/medbay{ + name = "Medbay Central" + }) +"egp" = ( +/obj/machinery/light/small, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/chem_dispenser/drinks/beer, +/obj/structure/table/wood/poker, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"egq" = ( +/obj/machinery/vending/boozeomat{ + req_access_txt = "0" + }, +/obj/machinery/light/small, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/crew_quarters/abandoned_gambling_den) +"egr" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + icon_state = "connector_map"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/sign/poster/official/science{ + pixel_x = 32 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing{ + name = "\improper Toxins Lab" + }) +"egs" = ( +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = 32 + }, +/turf/open/floor/wood{ + icon_state = "wood-broken5" + }, +/area/security/detectives_office{ + name = "Private Investigator's Office" + }) +"egt" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/camera{ + c_tag = "Medbay - Morgue"; + dir = 1; + name = "medbay camera" + }, +/obj/structure/sign/poster/official/bless_this_spess{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/medical/morgue) +"egu" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/structure/sign/poster/official/do_not_question{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/security/detectives_office{ + name = "Private Investigator's Office" + }) +"egv" = ( +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/storage/toolbox/electrical, +/obj/structure/table/reinforced, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + icon_state = "intact"; + dir = 8 + }, +/obj/effect/turf_decal/bot, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing{ + name = "\improper Toxins Lab" + }) +"egw" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/box/donkpockets, +/obj/structure/sign/poster/official/report_crimes{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/medical/research{ + name = "Research Division" + }) +"egx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/official/cleanliness, +/turf/closed/wall, +/area/medical/virology) +"egy" = ( +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/item/weapon/crowbar, +/obj/item/device/radio, +/obj/structure/sign/poster/official/do_not_question{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 10 + }, +/area/bridge{ + name = "Customs" + }) +"egz" = ( +/obj/machinery/disposal/bin, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/effect/turf_decal/delivery, +/obj/structure/sign/poster/official/help_others{ + pixel_x = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"egA" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egC" = ( +/obj/machinery/power/apc{ + cell_type = 10000; + dir = 1; + name = "Departure Lounge APC"; + pixel_x = 0; + pixel_y = 28 + }, +/obj/machinery/camera{ + c_tag = "Departures - Fore"; + dir = 2; + name = "departures camera" + }, +/obj/structure/cable/white{ + icon_state = "0-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egD" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egE" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egF" = ( +/obj/effect/turf_decal/delivery, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egG" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 1 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/sign/poster/official/work_for_a_future{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault, +/area/medical/virology) +"egH" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egI" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egJ" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/neutral, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egK" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/neutral, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egL" = ( +/obj/effect/turf_decal/delivery, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egM" = ( +/obj/structure/cable/white{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egN" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/neutral, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egO" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/neutral, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"egP" = ( +/obj/structure/bodycontainer/morgue, +/obj/structure/sign/poster/official/ian{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/chapel/office) +"egQ" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/checkpoint2) +"egR" = ( +/obj/structure/table/wood, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/chaplain, +/obj/structure/sign/poster/official/bless_this_spess{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/chapel/office) +"egS" = ( +/obj/docking_port/mobile/arrivals{ + dir = 2; + dwidth = 4; + height = 17; + name = "delta arrivals shuttle"; + width = 9 + }, +/obj/docking_port/stationary{ + dir = 2; + dwidth = 4; + height = 17; + id = "arrivals_stationary"; + name = "delta arrivals"; + width = 9 + }, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/arrival) +"egT" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"egU" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"egV" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"egW" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"egX" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"egY" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"egZ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"eha" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"ehb" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ehc" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ehd" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"ehe" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"ehf" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ehg" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ehh" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ehi" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/pod/light, /area/shuttle/transport) +"ehj" = ( +/obj/machinery/requests_console{ + department = "Arrival shuttle"; + name = "Arrivals Shuttle console"; + pixel_y = 0 + }, +/turf/closed/wall/shuttle/smooth/nodiagonal, +/area/shuttle/arrival) +"ehk" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"ehl" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/neutral, +/area/shuttle/arrival) +"ehm" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"ehn" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/shuttle/supply) +"eho" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/shuttle/supply) +"ehp" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/shuttle/escape) +"ehq" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/shuttle/escape) +"ehr" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8; + heat_capacity = 1e+006 + }, +/area/shuttle/escape) +"ehs" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"eht" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/bot, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"ehu" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8; + heat_capacity = 1e+006 + }, +/area/shuttle/escape) +"ehv" = ( +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"ehw" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"ehx" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/shuttle/escape) (1,1,1) = {" aaa @@ -121513,16 +115457,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +adm +adn +adn +adn +adn +adn +adn +adn +adn +aes aaa aaa aaa @@ -121764,22 +115708,22 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +adm +adn +adn +adn +adn +adn +adn +aiN +ajI +aiN +alK +amN +anW +aoz +aoC +apA aaa aaa aaa @@ -122021,22 +115965,22 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +adn +afv +afK +afK +afK +aho +adn +agG +aeh +aeG +aeG +amO +aeG +aoA +aoC +apB aaa aaa aaa @@ -122278,22 +116222,22 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +adn +aeG +aeG +aeG +aeG +aeG +aia +ehe +aeh +akK +alL +amP +anX +aoB +aoC +apC aaa aaa aaa @@ -122528,29 +116472,29 @@ aaa aaa aaa aaa +adm +adn +adn +adn +aes aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +adn +aeG +aeG +aeG +aeG +aeG +adn +aiO +aeh +akL +age +amQ +adn +adn +adn +aeI aaa aaa aaa @@ -122785,26 +116729,26 @@ aaa aaa aaa aaa +adn +adA +adT +aeh +adn +aeE aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +adn +afw +afL +ehd +agG +ahp +adn +aiP +aeh +akL +age +amR +adn aaa aaa aaa @@ -123042,28 +116986,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +ado +adB +adU +aeh +adn +adn +adn +adn +adn +adn +adn +agH +agb +adn +adn +adn +akM +agb +adn +adn +adn +aes aaa aaa aaa @@ -123299,28 +117243,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +ado +adC +adV +aeh +aet +aeF +aeT +ehb +aeT +aeT +agb +aeG +aeG +aeG +aeG +ehf +akL +age +aeh +agb +aoC +apA aaa aaa aaa @@ -123556,28 +117500,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +ado +adD +adW +aeh +aeu +aeG +adV +adV +adV +aeG +agc +aeG +adV +adV +adV +adV +akL +age +aeh +anY +aoC +apB aaa aaa aaa @@ -123813,28 +117757,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +ado +adE +adV +aeh +adn +aeH +aeU +ehc +aeU +aeU +agb +aeG +aeG +aeG +aeG +ehg +akL +age +aeh +agb +aoC +apC aaa aaa aaa @@ -124070,28 +118014,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +ado +adF +adX +aeh +adn +adn +adn +afk +adn +adn +adn +agI +agb +adn +adn +adn +akM +agb +adn +adn +adn +aev aaa aaa aaa @@ -124327,26 +118271,26 @@ aaa aaa aaa aaa +adn +adG +adY +aeh +adn +aeI aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +adn +agd +aeG +ahq +adn +aiQ +aeh +akL +age +amS +adn aaa aaa aaa @@ -124584,29 +118528,29 @@ aaa aaa aaa aaa +adp +adn +adn +adn +aev aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +afM +age +aeG +ahq +adn +aiR +aeh +akL +age +amT +adn +adn +adn +aeE aaa aaa aaa @@ -124850,6 +118794,20 @@ aaa aaa aaa aaa +afN +agf +aeG +ahr +aet +aiS +aeh +akN +alM +amP +aeG +aoE +aoC +apA aaa aaa aaa @@ -124877,20 +118835,6 @@ aaa aaa aaa aaa -adm -adn -adn -adn -adn -adn -adn -adn -adn -aes -aaa -aaa -aaa -aaa aaa aaa aaa @@ -125107,43 +119051,43 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -adm +adp adn adn adn adn -adn -adn -aiN -ajI -aiN -alK -amN -anW -aoz +aiT +aeh +aeG +aeG +amU +aeG +aoF aoC -apA +apB +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -125367,40 +119311,40 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +ahs adn -afv -afK -afK -afK -aho -adn -agG +aiU aeh -aeG -aeG -amO -aeG -aoA +akO +alN +amV +ehg +aoE aoC -apB +apC +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -125625,39 +119569,39 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +adp adn -aeG -aeG -aeG -aeG -aeG -aia -agG -aeh -akK -alL -amP -anX -aoB -aoC -apC +adn +adn +adn +adn +adn +adn +adn +aev +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -125892,29 +119836,29 @@ aaa aaa aaa aaa -adm -adn -adn -adn -aes aaa aaa -adn -aeG -aeG -aeG -aeG -aeG -adn -aiO -aeh -akL -age -amQ -adn -adn -adn -aeI +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -126149,26 +120093,26 @@ aaa aaa aaa aaa -adn -adA -adT -aeh -adn -aeE aaa -adn -afw -afL -afw -agG -ahp -adn -aiP -aeh -akL -age -amR -adn +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -126406,28 +120350,28 @@ aaa aaa aaa aaa -ado -adB -adU -aeh -adn -adn -adn -adn -adn -adn -adn -agH -agb -adn -adn -adn -akM -agb -adn -adn -adn -aes +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -126663,28 +120607,28 @@ aaa aaa aaa aaa -ado -adC -adV -aeh -aet -aeF -aeT -aeT -aeT -aeT -agb -aeG -aeG -aeG -aeG -aeG -akL -age -aeh -agb -aoC -apA +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -126920,28 +120864,28 @@ aaa aaa aaa aaa -ado -adD -adW -aeh -aeu -aeG -adV -adV -adV -aeG -agc -aeG -adV -adV -adV -adV -akL -age -aeh -anY -aoC -apB +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -127177,28 +121121,28 @@ aaa aaa aaa aaa -ado -adE -adV -aeh -adn -aeH -aeU -aeU -aeU -aeU -agb -aeG -aeG -aeG -aeG -aeG -akL -age -aeh -agb -aoC -apC +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -127434,28 +121378,28 @@ aaa aaa aaa aaa -ado -adF -adX -aeh -adn -adn -adn -afk -adn -adn -adn -agI -agb -adn -adn -adn -akM -agb -adn -adn -adn -aev +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -127691,27 +121635,27 @@ aaa aaa aaa aaa -adn -adG -adY -aeh -adn -aeI aaa aaa aaa -adn -agd -aeG -ahq -adn -aiQ -aeh -akL -age -amS -adn -aoD +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -127948,29 +121892,29 @@ aaa aaa aaa aaa -adp -adn -adn -adn -aev aaa aaa aaa aaa -afM -age -aeG -ahq -adn -aiR -aeh -akL -age -amT -adn -adn -adn -aeE +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -128214,20 +122158,20 @@ aaa aaa aaa aaa -afN -agf -aeG -ahr -aet -aiS -aeh -akN -alM -amP -aeG -aoE -aoC -apA +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -128471,20 +122415,20 @@ aaa aaa aaa aaa -adp -adn -adn -adn -adn -aiT -aeh -aeG -aeG -amU -aeG -aoF -aoC -apB +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -128731,17 +122675,17 @@ aaa aaa aaa aaa -ahs -adn -aiU -aeh -akO -alN -amV -aeG -aoE -aoC -apC +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -128989,16 +122933,16 @@ aaa aaa aaa aaa -adp -adn -adn -adn -adn -adn -adn -adn -adn -aev +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -129565,7 +123509,7 @@ bNw bPr bRt bTL -bVQ +efJ bLp bgO bHk @@ -139614,7 +133558,7 @@ bVT bZC cGr cHJ -cJh +efW cKW cMr cOe @@ -139630,9 +133574,9 @@ aaf aaf dcs dgQ -diF +egl dks -dlV +egm diJ dcs aaf @@ -141419,7 +135363,7 @@ cMy cOk cMy cRA -cTo +egb cHJ cWJ cYu @@ -141438,7 +135382,7 @@ diJ dsc dtr dma -dwd +egp aHW aaf aaH @@ -141938,7 +135882,7 @@ cHJ cWK cJA bWg -daU +egf dcz ecU dfI @@ -141952,7 +135896,7 @@ aNZ dsc dtt aNZ -dwf +egq aHW aaf aaH @@ -142698,7 +136642,7 @@ bVT cEV cGz cHJ -cJs +efX cLi cMD cOn @@ -143224,7 +137168,7 @@ cWD cYA bWg daT -dcD +egh ddV dfM ddV @@ -143428,7 +137372,7 @@ boe bpX brh aIZ -btL +efC bvn bwV byP @@ -144174,7 +138118,7 @@ aAY ark aDH aiW -aGx +eeW aHO aIZ aKy @@ -144965,7 +138909,7 @@ bfp bhd bjg bkE -bmk +efx boj bqc brn @@ -145506,7 +139450,7 @@ cbn cdc ceN cgg -chB +efR bVT ckD clZ @@ -145734,7 +139678,7 @@ bcl bdA bfs bhg -bjj +efv aIZ bmn bom @@ -146285,7 +140229,7 @@ cnv coZ cqv crI -ctg +efU cuS cwm cxS @@ -147576,7 +141520,7 @@ cwp bZD czy cBm -cCG +efV bWg cFd cGG @@ -147594,7 +141538,7 @@ cHX cHX cHX cHS -dek +egi dfX dhh diZ @@ -147752,7 +141696,7 @@ aaa aaa aaa aiX -ajQ +eeE akS alS and @@ -148016,7 +141960,7 @@ akT aoc aiX aic -aro +eeL asu aic auN @@ -148270,7 +142214,7 @@ ajS akU alU ane -aod +eeH aiX apU aoQ @@ -148785,7 +142729,7 @@ akW alV ala akW -aoM +eeI apW aic asw @@ -149295,11 +143239,11 @@ aaa aaa aiY ajW -akY +eeF alX anh aof -aoM +eeI apY aib asx @@ -149318,19 +143262,19 @@ aGH aHW aJj aKF -aMo +eff aNX aPD aRq aHW aoQ aGI -aro +efo aic baW bcs aib -aro +efo aoQ aib aib @@ -149562,7 +143506,7 @@ aib aoT aoT auR -avZ +eeQ awX ayf azo @@ -149584,13 +143528,13 @@ aUD aic aib aoQ -aro +efo aib aib bfy aic bjo -aro +efo aUG bou aaa @@ -149651,7 +143595,7 @@ cHX cHX cHS des -dge +egk dhp djh dkW @@ -149813,7 +143757,7 @@ akW alZ anj aoh -aoM +eeI aqa arq asy @@ -149835,7 +143779,7 @@ aKH aMq aNZ aPE -aRs +efh aHW awZ aic @@ -150076,7 +144020,7 @@ aib aic aty aic -awb +eeR awX ayh edd @@ -150092,7 +144036,7 @@ ecs aMr aOa aPF -aRt +efi aHW aUE aWA @@ -150588,7 +144532,7 @@ aiX aqc aib aib -aro +eeL aib aib awX @@ -150602,8 +144546,8 @@ aFm aGJ aHW aJo -aKK -aMt +efa +efg aNZ aPH aJm @@ -150611,7 +144555,7 @@ aHW ecu aWB aYd -aZC +efp baY aWB bdG @@ -150622,7 +144566,7 @@ bkG bmD boz bjq -brC +efA bsN aWB aqu @@ -150884,7 +144828,7 @@ bsO aWB bvG bxr -bzk +efE bAS bCB bCB @@ -151100,7 +145044,7 @@ aib aib aoQ aqc -aro +eeL asB atA auV @@ -151206,11 +145150,11 @@ dtP duU dws dxB -dyC +egr dzQ duU dCA -dDX +egv dms dFX dHz @@ -151617,7 +145561,7 @@ aqf aib asC atC -auX +eeO aib awZ ayl @@ -151740,7 +145684,7 @@ dNF dPY dNF dRM -dSD +egP dNE dTQ dTQ @@ -151887,11 +145831,11 @@ aFp aGL aHZ aJq -aKM +efb aMw aOf aPM -aRw +efj aJq aqg aWF @@ -152377,7 +146321,7 @@ agl agP ahu aif -ajc +eeB ake ale amf @@ -152401,7 +146345,7 @@ aFr aGN aIb aJq -aKO +efc aMw aOh aPM @@ -152422,7 +146366,7 @@ bmG bmG bqp brF -bsR +efB aWB aqg bxr @@ -152662,7 +146606,7 @@ aKP aMy aOi aPO -aRz +efk aJq aUL aWF @@ -152895,7 +146839,7 @@ aje akg alf amg -anp +eeG ahu aoV aqi @@ -153137,7 +147081,7 @@ edD edD edp edp -edp +ehm edD edD edC @@ -153160,7 +147104,7 @@ art asF atH ava -awe +eeS axc ayq azt @@ -153388,7 +147332,7 @@ aaa eeq edl edp -edp +ehi edz edp edp @@ -153551,7 +147495,7 @@ dXy dNE dZa dZK -eam +egR dNE aaf agg @@ -153649,7 +147593,7 @@ edo edo edF edF -edp +ehk edp edp edF @@ -153682,15 +147626,15 @@ aAx aAx aCH aDW -aBB +eeV aAx aAx aHb -aKR +efd aHb aOm aPS -aKR +efd aHb aUP aUP @@ -153957,7 +147901,7 @@ bbk bcy bdT bfL -bhA +eft aUP bkP bmL @@ -153985,7 +147929,7 @@ bWn bZQ bWn bWn -ceX +efO bQn chV cjt @@ -154006,7 +147950,7 @@ cDI bmX boR cIi -cJQ +efY cLz cNh cOW @@ -154039,7 +147983,7 @@ dyI dyI dyI cJL -dGd +egw dHE dIq dIT @@ -154199,13 +148143,13 @@ aDY aFw aGS aAx -aJu +eeX aKT aKT aOo aPU aKT -aTk +efm aUP aWJ aYq @@ -154444,7 +148388,7 @@ aqj art asK atM -avf +eeP awj art ayv @@ -154689,7 +148633,7 @@ aaD ago agR ahu -aio +eeA ajk akl alj @@ -154713,13 +148657,13 @@ aEa aFw aGU aAx -aJw +eeY aKV aME aOq aPW aKV -aTm +efn aUP aWL aYs @@ -154989,7 +148933,7 @@ bhE aUP bkQ bmL -boI +efy boZ aaf aaf @@ -155221,9 +149165,9 @@ aib ayy azx aAx -aBB +eeT aCN -aEc +eeU aFz aAx aAx @@ -155332,8 +149276,10 @@ dJS dKJ dLN dMO -dNL -dOE +egA +egH +dQi +dQi dPt dQi dQi @@ -155391,8 +149337,6 @@ aaa aaa aaa aaa -aaa -aaa "} (143,1,1) = {" aaa @@ -155589,7 +149533,9 @@ dJT dKK dLO dMP -dNM +egB +egI +egM dOF dPu dQj @@ -155648,8 +149594,6 @@ aaa aaa aaa aaa -aaa -aaa "} (144,1,1) = {" aaa @@ -155784,7 +149728,7 @@ bYd ecy cbI cdz -cfc +efP cgv cia cjA @@ -155847,6 +149791,8 @@ ahA ahA dMQ dNN +dPx +dPx dOG dPv dPx @@ -155905,8 +149851,6 @@ aaa aaa aaa aaa -aaa -aaa "} (145,1,1) = {" aaa @@ -155956,14 +149900,14 @@ aax aaD abT aax -acj +egT aax acG acW acW ads aax -acj +egT aax abR aaD @@ -156101,9 +150045,11 @@ dIw dIZ dJU dKL -dLP +egy dMQ -dNO +dNN +dPx +dPx dOH dPw dQk @@ -156162,8 +150108,6 @@ aaa aaa aaa aaa -aaa -aaa "} (146,1,1) = {" aaa @@ -156361,6 +150305,8 @@ ako dLQ dMR dNO +dPx +dPx dOI dPx dQl @@ -156419,8 +150365,6 @@ aaa aaa aaa aaa -aaa -aaa "} (147,1,1) = {" aaa @@ -156470,14 +150414,14 @@ aaf aaf aaf aax -acj +egU aax aaf aaa aaa aaf aax -ach +egW aax aaf aaf @@ -156618,6 +150562,8 @@ dKM dLR dMS dNO +dPx +dPx dOI dPx dQm @@ -156676,8 +150622,6 @@ aaa aaa aaa aaa -aaa -aaa "} (148,1,1) = {" aaa @@ -156875,6 +150819,8 @@ dKN dLS dMT dNO +dPx +dPx dOI dPx dQl @@ -156933,8 +150879,6 @@ aaa aaa aaa aaa -aaa -aaa "} (149,1,1) = {" aaa @@ -157041,7 +150985,7 @@ aZX bbs aZX bfU -bhM +efu aYx bkP bmP @@ -157131,7 +151075,9 @@ dJY dKO ahA dMQ -dNP +egC +dPw +dPw dOJ dPx dQn @@ -157190,8 +151136,6 @@ aaa aaa aaa aaa -aaa -aaa "} (150,1,1) = {" aaa @@ -157389,6 +151333,8 @@ dKP dLT dMU dNO +dPx +dPx dOK dPx dQl @@ -157447,8 +151393,6 @@ aaa aaa aaa aaa -aaa -aaa "} (151,1,1) = {" aaa @@ -157501,7 +151445,7 @@ aca acn acn acI -eeu +acI acI acI adN @@ -157645,7 +151589,9 @@ dJf dKQ dLU dMV -dNQ +egD +egJ +egJ dOL dPy dQm @@ -157659,7 +151605,7 @@ dVk dVX dWB dXb -dXM +egQ dYz dZn dZR @@ -157704,8 +151650,6 @@ aaa aaa aaa aaa -aaa -aaa "} (152,1,1) = {" aaa @@ -157751,18 +151695,18 @@ aaH aaf aaf aaa -abq +egS abq abU acb acn act +ehj acJ -acX adh -adt acJ -aeb +adt +ehl ael aey aeO @@ -157903,6 +151847,8 @@ dKR dLV dMW dNO +dPx +dPx dOM dOK dQl @@ -157961,8 +151907,6 @@ aaa aaa aaa aaa -aaa -aaa "} (153,1,1) = {" aaa @@ -158159,7 +152103,9 @@ dKb dKb dLW dMV -dNQ +egD +egJ +egJ dON dPz dQo @@ -158218,8 +152164,6 @@ aaa aaa aaa aaa -aaa -aaa "} (154,1,1) = {" aaa @@ -158269,7 +152213,7 @@ abp abF abW abZ -eer +acn acn acn acn @@ -158414,7 +152358,7 @@ dIE dJh dKc dJh -dLX +egz dMX dNR dOO @@ -158428,6 +152372,8 @@ dOO dOO dOO dOO +dOO +dOO dWG dXh dXP @@ -158475,8 +152421,6 @@ aaa aaa aaa aaa -aaa -aaa "} (155,1,1) = {" aaa @@ -158673,8 +152617,10 @@ dJi dJi dgB dMQ -dNS -dOP +egF +egL +dPA +dUG dPA dPA dPA @@ -158732,8 +152678,6 @@ aaa aaa aaa aaa -aaa -aaa "} (156,1,1) = {" aaa @@ -158934,6 +152878,8 @@ dMY dMY dMY dMY +dMY +dMY dRe dRY dRe @@ -158989,8 +152935,6 @@ aaa aaa aaa aaa -aaa -aaa "} (157,1,1) = {" aaa @@ -159040,14 +152984,14 @@ aaf aaf aaf aax -ach +egV aax aaf aaa aaa aaf aax -ach +egV aax aaf aaf @@ -159190,6 +153134,8 @@ aaf aaf aaf aaf +aaa +aaa dMY dRf dMY @@ -159204,8 +153150,6 @@ dXk dXS dXk aaf -aaf -aaf aaa aaa aaa @@ -159447,6 +153391,8 @@ aaa aaa aaa aaa +aaa +aaa dMY dRe dMY @@ -159503,8 +153449,6 @@ aaa aaa aaa aaa -aaa -aaa "} (159,1,1) = {" aaa @@ -159554,14 +153498,14 @@ aax aaD abR aax -ach +egW aax acK acY adi adr aax -acj +egU aax abT aaD @@ -159697,6 +153641,8 @@ dGy dHP aaa aaa +aaa +aaa dJk dKS dKT @@ -159760,8 +153706,6 @@ aaa aaa aaa aaa -aaa -aaa "} (160,1,1) = {" aaa @@ -159947,29 +153891,31 @@ dxS dzb dAr dBJ -dCY +egt dwK dFa dGz dHQ aaa +aaa +aaa dJj dKd dKT dLY -dMZ +ehr dNT dNT dPB dMZ dOS -dSa +ehs dOS dMZ dNT dNT dNT -dMZ +ehr dOS dKT dXU @@ -160017,8 +153963,6 @@ aaa aaa aaa aaa -aaa -aaa "} (161,1,1) = {" aaa @@ -160210,6 +154154,8 @@ dEX dGA dHP aaa +aaa +aaa dJj dKd dKU @@ -160274,8 +154220,6 @@ aaa aaa aaa aaa -aaa -aaa "} (162,1,1) = {" aaa @@ -160467,6 +154411,8 @@ dFb dGB dHP aaa +aaa +aaa dJj dKd dKU @@ -160489,7 +154435,7 @@ dKT dXV dXU dXU -dZV +ehw dKT aaa aaa @@ -160531,8 +154477,6 @@ aaa aaa aaa aaa -aaa -aaa "} (163,1,1) = {" aaa @@ -160643,7 +154587,7 @@ bhW bbv bkW bmX -boT +efz boZ aaf aaf @@ -160697,7 +154641,7 @@ cSz cIs cVU cXH -cZg +egd cKs dbR ddh @@ -160724,6 +154668,8 @@ dEZ dGC dHQ aaf +aaa +aaa dJk dJk dKT @@ -160753,8 +154699,6 @@ dRZ dKU dKT dKT -aaa -aaa aad aaa aaa @@ -160981,10 +154925,12 @@ dEX dGA dHP aaa +aaa +aaa dJj dKd dKT -dLZ +ehp dNa dNT dNT @@ -161045,8 +154991,6 @@ aaa aaa aaa aaa -aaa -aaa "} (165,1,1) = {" aaa @@ -161238,6 +155182,8 @@ dEY dGz dHP aaa +aaa +aaa dJj dKd dKU @@ -161302,8 +155248,6 @@ aaa aaa aaa aaa -aaa -aaa "} (166,1,1) = {" aaa @@ -161495,10 +155439,12 @@ dFc dGD dHQ aaf +aaa +aaa dJk dJk dKT -dLZ +ehp dNa dNU dNU @@ -161559,8 +155505,6 @@ aaa aaa aaa aaa -aaa -aaa "} (167,1,1) = {" aaa @@ -161752,6 +155696,8 @@ dFd dGE dHP aaa +aaa +aaa dJj dKd dKU @@ -161816,8 +155762,6 @@ aaa aaa aaa aaa -aaa -aaa "} (168,1,1) = {" aaa @@ -162009,6 +155953,8 @@ dFe dGF dHP aaa +aaa +aaa dJj dKd dKU @@ -162073,8 +156019,6 @@ aaa aaa aaa aaa -aaa -aaa "} (169,1,1) = {" aaa @@ -162143,7 +156087,7 @@ aeX afn ebW aiE -ajH +eeC akE alB amC @@ -162254,7 +156198,7 @@ dpQ drt dsT dpQ -dvy +ego dwO dyc dzg @@ -162266,6 +156210,8 @@ dFf dGG dHQ aaf +aaa +aaa dJk dJk dKT @@ -162330,8 +156276,6 @@ aaa aaa aaa aaa -aaa -aaa "} (170,1,1) = {" aaa @@ -162523,6 +156467,8 @@ dFg dGH dHP aaa +aaa +aaa dJj dKd dKU @@ -162533,7 +156479,7 @@ dOS dOS dNU dNU -dNU +eht dNU dNU dNU @@ -162587,8 +156533,6 @@ aaa aaa aaa aaa -aaa -aaa "} (171,1,1) = {" aaa @@ -162649,7 +156593,7 @@ acQ acR aeD aaG -aff +eez aft afG afX @@ -162780,6 +156724,8 @@ dEY dGA dHP aaa +aaa +aaa dJj dKd dKT @@ -162802,7 +156748,7 @@ dKT dXZ dYI dZy -dSa +ehx dKT eaw eaB @@ -162844,8 +156790,6 @@ aaa aaa aaa aaa -aaa -aaa "} (172,1,1) = {" aaa @@ -163037,6 +156981,8 @@ dEY dGI dHQ aaf +aaa +aaa dJk dJk dKT @@ -163057,7 +157003,7 @@ dWa dWJ dKT dYa -dYI +ehv dKS dKT dKT @@ -163101,8 +157047,6 @@ aaa aaa aaa aaa -aaa -aaa "} (173,1,1) = {" aaa @@ -163294,6 +157238,8 @@ dEY dGx dHP aaa +aaa +aaa dJj dKd dKU @@ -163358,8 +157304,6 @@ aaa aaa aaa aaa -aaa -aaa "} (174,1,1) = {" aaa @@ -163428,7 +157372,7 @@ agD ahj ebX aiI -ajH +eeC akJ alH amG @@ -163551,6 +157495,8 @@ dFa dGJ dHP aaa +aaa +aaa dJj dKd dKU @@ -163615,8 +157561,6 @@ aaa aaa aaa aaa -aaa -aaa "} (175,1,1) = {" aaa @@ -163808,6 +157752,8 @@ dFa dGK dHQ aaa +aaa +aaa dJj dKd dKT @@ -163872,8 +157818,6 @@ aaa aaa aaa aaa -aaa -aaa "} (176,1,1) = {" aaa @@ -164066,6 +158010,8 @@ dGL dHP aaa aaa +aaa +aaa dJk dKS dKT @@ -164129,8 +158075,6 @@ aaa aaa aaa aaa -aaa -aaa "} (177,1,1) = {" aaa @@ -164261,7 +158205,7 @@ bQF bSU bUW bWM -bYA +efK car car cdL @@ -164271,7 +158215,7 @@ car car car cmE -coi +efT bWM crg csx @@ -164293,7 +158237,7 @@ cPC cRb cSI cUq -cWc +egc cRb cRb dat @@ -165279,7 +159223,7 @@ aaf aaa aaa bDi -bEW +efH bGP bIN bIO @@ -165576,7 +159520,7 @@ cLX cLX cLX cRk -cSK +ega cUt cWe cXR @@ -166069,7 +160013,7 @@ cgO civ cjX clv -cmK +efS con bWM crg @@ -166267,7 +160211,7 @@ alJ alJ aaa avL -awN +ehn axI axI axI @@ -166612,7 +160556,7 @@ cKs cIw dce ddw -dfk +egj dgI dil dkh @@ -166785,7 +160729,7 @@ awO axJ ayZ axJ -ayZ +eho ayZ axJ aEF @@ -166865,9 +160809,9 @@ cSM cUw cWh cXU -cZu +ege cKs -dcf +egg ddj dfe dgI @@ -166878,7 +160822,7 @@ dnp dor dqe drJ -dte +egn dgI dvM dwZ @@ -167092,7 +161036,7 @@ bYK caB ccl cdV -cfF +efQ cgP ciy cka @@ -167887,7 +161831,7 @@ cvP cKG cMg cKs -cPK +efZ cKs cSQ cUA @@ -167925,7 +161869,7 @@ dKm dLg dMm cHL -dOd +egG dKl dPO dQE @@ -168114,12 +162058,12 @@ bGZ bON bQT bTa -bVk +efI bWV bDn caE cco -cdY +efM bdi cgR ciC @@ -168861,7 +162805,7 @@ aBU aBU aaa bdi -beG +efr bgu bin bjQ @@ -168874,7 +162818,7 @@ bjQ buF bwi bxY -bzW +efF bjQ bDn bFi @@ -168950,7 +162894,7 @@ dyq aaf dJp dKl -dLj +egx dMq dNp dOh @@ -170159,7 +164103,7 @@ bqN bqN bwm byd -bAa +efG bBD bDs bFn @@ -170647,7 +164591,7 @@ aaa aaf aBU aHu -aJP +eeZ aBU aBU aBU @@ -171200,7 +165144,7 @@ bQY bTp bVv bXf -bYS +efL caN ccz cei @@ -171460,7 +165404,7 @@ bXg bDC caO ccA -cej +efN bdi che ciM @@ -171509,7 +165453,7 @@ dqp dvZ dxj dys -dzB +egs dAT dAS dDE @@ -171700,7 +165644,7 @@ bsi bdm buN bwr -byj +efD bdm bBI bDy @@ -171769,7 +165713,7 @@ abf dzC dAU dCi -dDF +egu dEv dFB dHl @@ -175017,7 +168961,7 @@ aaf aHz aIM aKe -aLM +efe aNB aPc aQV diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index af29ede788..c2f9861fe1 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -472,8 +472,8 @@ /turf/open/floor/plating, /area/security/prison) "abd" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/recharge_station, +/turf/open/floor/circuit/red, /area/shuttle/syndicate) "abe" = ( /turf/closed/wall, @@ -4483,12 +4483,6 @@ icon_state = "platingdmg1" }, /area/maintenance/fore) -"ahT" = ( -/obj/structure/table, -/obj/item/weapon/poster/contraband, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fore) "ahU" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/table, @@ -5198,25 +5192,6 @@ }, /obj/item/weapon/restraints/handcuffs/cable/pink, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"ajk" = ( -/obj/item/stack/sheet/cardboard, -/obj/structure/light_construct/small{ - dir = 1 - }, -/obj/structure/closet/crate, -/obj/item/weapon/coin/silver, -/obj/item/weapon/grenade/chem_grenade, -/obj/item/weapon/storage/box/lights/mixed, -/obj/item/weapon/watertank, -/obj/item/weapon/storage/box/donkpockets, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, /area/maintenance/fpmaint2{ name = "Port Maintenance" }) @@ -5322,27 +5297,6 @@ dir = 4 }, /area/security/warden) -"aju" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) "ajv" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 4; @@ -7409,22 +7363,6 @@ /turf/open/floor/plating{ icon_state = "platingdmg2" }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"amV" = ( -/obj/structure/table/reinforced, -/obj/structure/light_construct/small{ - dir = 8 - }, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/structure/window/reinforced, -/obj/item/weapon/poster/legit, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, /area/maintenance/fpmaint2{ name = "Port Maintenance" }) @@ -7706,23 +7644,6 @@ /obj/item/weapon/paper, /turf/open/floor/plasteel, /area/security/main) -"anz" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/fore) "anA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, @@ -9049,19 +8970,6 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) -"apP" = ( -/obj/structure/rack, -/obj/item/clothing/under/color/blue, -/obj/item/clothing/ears/earmuffs, -/obj/item/clothing/neck/tie/blue, -/obj/item/clothing/head/soft/blue, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/fitness{ - name = "\improper Recreation Area" - }) "apQ" = ( /obj/structure/reagent_dispensers/peppertank{ pixel_x = 32; @@ -9114,14 +9022,6 @@ /obj/item/device/assembly/flash/handheld, /turf/open/floor/plasteel, /area/security/main) -"apX" = ( -/obj/item/weapon/cigbutt, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "apY" = ( /obj/structure/table, /obj/item/weapon/folder/red, @@ -9172,15 +9072,6 @@ /area/crew_quarters/fitness{ name = "\improper Recreation Area" }) -"aqe" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) "aqf" = ( /obj/structure/closet/lasertag/blue, /turf/open/floor/plasteel/vault, @@ -9781,30 +9672,6 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) -"arh" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/westleft{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Outer Window"; - req_access_txt = "0" - }, -/obj/machinery/door/window/brigdoor{ - dir = 8; - name = "Brig Control Desk"; - req_access_txt = "3" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/item/weapon/folder/red, -/obj/item/weapon/folder/red, -/obj/item/weapon/poster/legit, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) "ari" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -10019,19 +9886,6 @@ dir = 4 }, /area/crew_quarters/sleep) -"arF" = ( -/obj/structure/closet, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "arG" = ( /obj/structure/closet, /obj/item/weapon/storage/box/lights/mixed, @@ -11385,28 +11239,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore) -"atF" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/fore) "atG" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -12750,6 +12582,7 @@ pixel_y = -26; req_access_txt = "1" }, +/obj/machinery/light, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/labor) "avW" = ( @@ -13966,10 +13799,6 @@ }, /turf/open/floor/plasteel/black, /area/engine/engineering) -"ayb" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plasteel/black, -/area/engine/engineering) "ayc" = ( /obj/structure/table/reinforced, /obj/item/weapon/tank/internals/emergency_oxygen/engi, @@ -13980,15 +13809,6 @@ }, /turf/open/floor/plasteel/black, /area/engine/engineering) -"ayd" = ( -/obj/structure/grille, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aye" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 10 @@ -14079,7 +13899,7 @@ /obj/machinery/light_switch{ pixel_y = 28 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/security/nuke_storage) @@ -14090,7 +13910,7 @@ /obj/machinery/light{ dir = 1 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/security/nuke_storage) @@ -14105,7 +13925,7 @@ d2 = 2; icon_state = "0-2" }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/security/nuke_storage) @@ -14450,24 +14270,6 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"ayU" = ( -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 4; - on = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "ayV" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -14496,21 +14298,6 @@ }, /turf/open/floor/plasteel/black, /area/engine/engineering) -"ayY" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"ayZ" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/junction, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) "aza" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 4; @@ -14531,19 +14318,6 @@ dir = 4 }, /area/security/brig) -"azc" = ( -/obj/structure/grille, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "azd" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple, /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ @@ -14559,10 +14333,6 @@ /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/wood, /area/library) -"azf" = ( -/obj/structure/grille, -/turf/open/floor/plating/airless, -/area/space) "azg" = ( /obj/item/stack/cable_coil, /turf/open/floor/plating/airless, @@ -14785,7 +14555,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/security/nuke_storage) @@ -14804,7 +14574,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/security/nuke_storage) @@ -15330,23 +15100,6 @@ name = "floor" }, /area/engine/engineering) -"aAq" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/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/weapon/tank/internals/emergency_oxygen/engi, -/obj/item/weapon/tank/internals/emergency_oxygen/engi, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel{ - name = "floor" - }, -/area/engine/engineering) "aAr" = ( /obj/item/device/radio/intercom{ freerange = 0; @@ -15367,16 +15120,6 @@ name = "floor" }, /area/engine/engineering) -"aAs" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel{ - name = "floor" - }, -/area/engine/engineering) "aAt" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -15423,10 +15166,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall/r_wall, /area/engine/engineering) -"aAy" = ( -/obj/item/device/radio/off, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aAz" = ( /obj/structure/table/wood, /obj/item/device/flashlight/lamp/green{ @@ -15636,7 +15375,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/security/nuke_storage) @@ -15644,7 +15383,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/security/nuke_storage) @@ -15658,7 +15397,7 @@ dir = 9; pixel_y = 0 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/security/nuke_storage) @@ -16212,15 +15951,8 @@ /area/engine/engineering) "aBO" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/engine/engineering) -"aBP" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "aBQ" = ( @@ -16229,18 +15961,6 @@ }, /turf/open/floor/plasteel/black, /area/engine/engineering) -"aBR" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/closet/cardboard, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) "aBS" = ( /obj/item/weapon/ore/silver, /obj/item/weapon/ore/silver, @@ -16782,16 +16502,6 @@ /obj/item/clothing/under/suit_jacket/navy, /turf/open/floor/carpet, /area/crew_quarters/sleep) -"aCL" = ( -/obj/item/clothing/glasses/meson, -/obj/structure/closet/crate, -/obj/item/weapon/poster/contraband, -/obj/effect/spawner/lootdrop/maintenance{ - lootcount = 2; - name = "2maintenance loot spawner" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "aCM" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -16886,19 +16596,19 @@ icon_state = "pipe-c" }, /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "aCW" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9; pixel_y = 0 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "aCX" = ( @@ -16921,7 +16631,7 @@ /area/engine/engineering) "aCZ" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "aDa" = ( @@ -16938,14 +16648,6 @@ /obj/item/weapon/coin/silver, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"aDd" = ( -/obj/structure/closet, -/obj/item/weapon/poster/contraband, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, /area/maintenance/fpmaint2{ name = "Port Maintenance" }) @@ -17718,14 +17420,12 @@ icon_state = "2-8" }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel, /area/engine/engineering) "aEq" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17739,7 +17439,6 @@ /area/engine/engineering) "aEr" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -17747,22 +17446,6 @@ }, /turf/open/floor/engine, /area/engine/engineering) -"aEs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9; - pixel_y = 0 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aEt" = ( /obj/structure/table, /obj/machinery/microwave{ @@ -17877,15 +17560,6 @@ /area/quartermaster/sorting{ name = "\improper Warehouse" }) -"aEC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/fore) "aED" = ( /obj/structure/closet/crate/internals, /obj/structure/cable/yellow{ @@ -18481,13 +18155,6 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"aFy" = ( -/obj/structure/closet/secure_closet/engineering_electrical, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel{ - name = "floor" - }, -/area/engine/engineering) "aFz" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/glass_engineering{ @@ -18537,7 +18204,6 @@ "aFD" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line, @@ -19902,13 +19568,6 @@ dir = 2 }, /area/crew_quarters/sleep) -"aHP" = ( -/obj/machinery/washing_machine, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/barber, -/area/crew_quarters/sleep) "aHQ" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -20017,36 +19676,13 @@ name = "floor" }, /area/engine/engineering) -"aIa" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/engine, -/area/engine/engineering) -"aIb" = ( -/obj/machinery/power/grounding_rod, -/turf/open/floor/plating/airless, -/area/space) "aIc" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/general/visible, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plating, -/area/engine/engineering) -"aId" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "aIe" = ( @@ -20873,19 +20509,6 @@ name = "floor" }, /area/engine/engineering) -"aJo" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aJp" = ( /obj/structure/table, /obj/effect/turf_decal/delivery, @@ -20904,42 +20527,6 @@ /obj/item/weapon/pipe_dispenser, /turf/open/floor/plasteel, /area/engine/engineering) -"aJq" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/turf/open/floor/plasteel{ - dir = 1 - }, -/area/engine/engineering) -"aJr" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"aJs" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/engine, -/area/engine/engineering) -"aJt" = ( -/obj/effect/landmark/start{ - name = "Station Engineer" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aJu" = ( /turf/open/floor/plating, /area/engine/engineering) @@ -20949,31 +20536,6 @@ }, /turf/closed/wall/r_wall, /area/engine/engineering) -"aJw" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"aJx" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plating/airless, -/area/space) -"aJy" = ( -/turf/open/floor/plasteel/black, -/area/engine/engineering) -"aJz" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plating/airless, -/area/space) -"aJA" = ( -/obj/item/weapon/crowbar, -/turf/open/space, -/area/space) "aJB" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, @@ -21503,50 +21065,13 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/engine/engineering) -"aKD" = ( -/obj/machinery/computer/security/telescreen{ - desc = "Used for monitoring the singularity engine safely."; - dir = 8; - name = "Singularity Monitor"; - network = list("Singulo"); - pixel_x = 32; - pixel_y = 0 - }, -/obj/machinery/camera{ - c_tag = "Engineering - Central"; - dir = 8; - network = list("SS13") - }, -/obj/effect/landmark{ - name = "lightsout" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aKE" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) "aKF" = ( /obj/machinery/button/door{ id = "engsm"; name = "Radiation Shutters Control"; pixel_x = 24; pixel_y = 0; - req_access_txt = "24" + req_access_txt = "10" }, /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 8 @@ -21577,20 +21102,6 @@ /obj/machinery/meter, /turf/closed/wall/r_wall, /area/engine/engineering) -"aKJ" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/obj/machinery/power/grounding_rod, -/turf/open/floor/plating/airless, -/area/space) -"aKK" = ( -/obj/item/weapon/wrench, -/turf/open/floor/plating/airless, -/area/space) "aKL" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ icon_state = "intact"; @@ -21600,17 +21111,10 @@ d1 = 2; d2 = 8; icon_state = "2-8"; - tag = "" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/engine, /area/engine/engineering) -"aKM" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/space) "aKN" = ( /obj/machinery/door/poddoor{ density = 1; @@ -22069,29 +21573,6 @@ }, /turf/open/floor/plasteel/vault, /area/crew_quarters/locker) -"aLI" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/stack/sheet/cardboard, -/obj/item/stack/rods{ - amount = 50 - }, -/obj/item/weapon/paper, -/obj/item/weapon/storage/box/lights/mixed, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/floorgrime, -/area/quartermaster/sorting{ - name = "\improper Warehouse" - }) "aLJ" = ( /obj/structure/rack, /obj/item/weapon/stock_parts/matter_bin, @@ -22109,17 +21590,6 @@ dir = 4 }, /area/crew_quarters/locker) -"aLM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/freezer, -/area/crew_quarters/locker/locker_toilet{ - name = "\improper Restrooms" - }) "aLN" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/machinery/portable_atmospherics/pump, @@ -22309,18 +21779,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/engine/engineering) -"aMf" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aMg" = ( /obj/machinery/door/firedoor, /obj/structure/cable{ @@ -22340,7 +21798,6 @@ d1 = 2; d2 = 8; icon_state = "2-8"; - tag = "" }, /obj/structure/cable{ icon_state = "1-8" @@ -22370,23 +21827,11 @@ "aMk" = ( /turf/open/floor/engine, /area/engine/engineering) -"aMl" = ( -/obj/structure/particle_accelerator/particle_emitter/left{ - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/engineering) "aMm" = ( /obj/machinery/atmospherics/pipe/simple/general/visible, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel/black, /area/engine/engineering) -"aMn" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plating/airless, -/area/space) "aMo" = ( /obj/structure/reflector/box{ anchored = 1; @@ -22394,12 +21839,6 @@ }, /turf/open/floor/plasteel/black, /area/engine/engineering) -"aMp" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plating/airless, -/area/space) "aMq" = ( /obj/structure/window/reinforced, /turf/open/space, @@ -22543,7 +21982,7 @@ /turf/open/floor/plasteel/black, /area/ai_monitored/turret_protected/ai_upload) "aMH" = ( -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) "aMI" = ( /obj/structure/table, @@ -22891,12 +22330,6 @@ /obj/item/device/gps, /turf/open/floor/plating, /area/engine/engineering) -"aNp" = ( -/obj/machinery/the_singularitygen{ - anchored = 0 - }, -/turf/open/floor/plating, -/area/engine/engineering) "aNq" = ( /obj/structure/table, /obj/machinery/cell_charger, @@ -22918,41 +22351,6 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"aNs" = ( -/obj/structure/table, -/obj/item/weapon/book/manual/wiki/engineering_guide{ - pixel_x = 3; - pixel_y = 4 - }, -/obj/item/weapon/book/manual/engineering_particle_accelerator{ - pixel_x = -2; - pixel_y = 3 - }, -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = 25; - pixel_y = 0; - req_access_txt = "11" - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel{ - name = "floor" - }, -/area/engine/engineering) -"aNt" = ( -/obj/machinery/button/door{ - id = "Singularity"; - name = "Shutters Control"; - pixel_x = -25; - pixel_y = 0; - req_access_txt = "11" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plating, -/area/engine/engineering) "aNu" = ( /obj/machinery/atmospherics/components/binary/pump/on{ dir = 8; @@ -23852,6 +23250,9 @@ /obj/item/weapon/storage/pod{ pixel_x = -26 }, +/obj/machinery/light/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/pod_2) "aPb" = ( @@ -24099,7 +23500,7 @@ d2 = 8; icon_state = "4-8" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) "aPv" = ( /obj/structure/cable/yellow{ @@ -24446,32 +23847,6 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"aQb" = ( -/obj/structure/sign/securearea, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"aQc" = ( -/obj/structure/rack{ - dir = 8; - layer = 2.9 - }, -/obj/item/clothing/gloves/color/black, -/obj/item/weapon/extinguisher{ - pixel_x = 8 - }, -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 21 - }, -/obj/item/clothing/glasses/meson, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel{ - name = "floor" - }, -/area/engine/engineering) "aQd" = ( /obj/machinery/atmospherics/components/trinary/filter/flipped{ dir = 1; @@ -24733,7 +24108,7 @@ dir = 1; network = list("SS13","RD","AIUpload") }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) "aQB" = ( /obj/structure/cable/yellow{ @@ -24760,7 +24135,7 @@ dir = 1; network = list("SS13","RD","AIUpload") }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) "aQD" = ( /obj/structure/table, @@ -25280,44 +24655,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel, /area/engine/engineering) -"aRs" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aRt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aRu" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aRv" = ( /obj/effect/turf_decal/delivery, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ @@ -25325,18 +24662,6 @@ }, /turf/open/floor/plasteel/black, /area/engine/engineering) -"aRw" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"aRx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/space) "aRy" = ( /turf/closed/wall/r_wall, /area/construction/hallway{ @@ -25864,10 +25189,6 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"aSy" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/engine/engineering) "aSz" = ( /obj/structure/cable{ d1 = 1; @@ -25907,20 +25228,6 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"aSC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/space) "aSD" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -26582,14 +25889,12 @@ dir = 10 }, /obj/structure/cable/white{ - tag = "icon-1-4"; icon_state = "1-4" }, /turf/open/floor/plasteel, /area/engine/engineering) "aTK" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -26597,18 +25902,8 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"aTL" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aTM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -26618,7 +25913,6 @@ /area/engine/engineering) "aTN" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -26630,13 +25924,6 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"aTP" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) "aTQ" = ( /obj/structure/window/reinforced{ dir = 4 @@ -26903,16 +26190,6 @@ /area/security/checkpoint/supply{ name = "Security Post - Cargo" }) -"aUn" = ( -/obj/structure/closet/wardrobe/pjs, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/vault, -/area/crew_quarters/sleep) "aUo" = ( /obj/structure/table, /obj/item/weapon/storage/belt/utility, @@ -27363,14 +26640,9 @@ /turf/closed/wall, /area/engine/engineering) "aVb" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/weapon/pen, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/delivery, +/obj/structure/closet/secure_closet/engineering_welding, /turf/open/floor/plasteel{ name = "floor" }, @@ -27391,14 +26663,11 @@ }, /area/engine/engineering) "aVd" = ( -/obj/structure/table, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/folder/yellow, -/obj/item/weapon/storage/firstaid/fire, /obj/effect/turf_decal/delivery, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/closet/secure_closet/engineering_electrical, /turf/open/floor/plasteel{ name = "floor" }, @@ -27420,35 +26689,14 @@ }, /turf/open/floor/plating, /area/engine/engineering) -"aVg" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'RADIOACTIVE AREA'"; - icon_state = "radiation"; - name = "RADIOACTIVE AREA"; - pixel_x = 32; - pixel_y = 0 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aVh" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) -"aVi" = ( -/obj/item/weapon/wrench, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"aVj" = ( -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aVk" = ( /obj/structure/window/reinforced{ dir = 1; @@ -27493,24 +26741,6 @@ }, /turf/open/floor/plasteel/black, /area/ai_monitored/turret_protected/ai) -"aVo" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/brown/corner{ - dir = 4 - }, -/area/construction/Storage{ - name = "Storage Wing" - }) "aVp" = ( /obj/machinery/camera{ c_tag = "AI Chamber - Fore"; @@ -27743,20 +26973,6 @@ /area/hallway/secondary/entry{ name = "Arrivals" }) -"aVF" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "aVG" = ( /obj/machinery/status_display{ density = 0; @@ -28187,7 +27403,7 @@ pixel_x = -27; pixel_y = 0 }, -/obj/machinery/modular_computer/console/preset/engineering, +/obj/machinery/computer/apc_control, /turf/open/floor/plasteel/vault, /area/engine/chiefs_office) "aWy" = ( @@ -28259,75 +27475,12 @@ dir = 1 }, /area/engine/engineering) -"aWE" = ( -/obj/machinery/airalarm{ - dir = 4; - icon_state = "alarm0"; - pixel_x = -22 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aWF" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/obj/machinery/light/small, -/obj/effect/turf_decal/stripes/line{ - dir = 2 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aWG" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 0; - pixel_y = -32 - }, -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aWH" = ( /obj/machinery/atmospherics/pipe/simple/orange/visible{ dir = 10 }, /turf/open/floor/plating, /area/maintenance/starboard) -"aWI" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"aWJ" = ( -/obj/structure/cable{ - icon_state = "0-2"; - pixel_y = 1; - d2 = 2 - }, -/obj/machinery/power/emitter{ - anchored = 1; - dir = 1; - state = 2 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aWK" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 10 @@ -28343,20 +27496,20 @@ icon_state = "tube1"; dir = 8 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "aWM" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "aWN" = ( -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "aWO" = ( /obj/machinery/ai_slipper{ uses = 10 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "aWP" = ( /obj/structure/cable{ @@ -28367,7 +27520,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "aWQ" = ( /obj/structure/cable{ @@ -28378,7 +27531,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "aWR" = ( /obj/machinery/light{ @@ -28389,7 +27542,7 @@ pixel_x = 32; pixel_y = 0 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "aWS" = ( /obj/structure/grille, @@ -29393,21 +28546,6 @@ "aYu" = ( /turf/closed/wall, /area/security/checkpoint/engineering) -"aYv" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 9 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"aYw" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple, -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 4 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) "aYx" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 4 @@ -29452,7 +28590,7 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "aYB" = ( /obj/structure/showcase{ @@ -29476,14 +28614,6 @@ pixel_y = 0 }, /turf/closed/wall, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"aYD" = ( -/obj/machinery/door/airlock/external{ - name = "Arrival Airlock" - }, -/turf/open/floor/plating, /area/hallway/secondary/entry{ name = "Arrivals" }) @@ -29858,21 +28988,6 @@ icon_state = "L6" }, /area/hallway/primary/central) -"aZj" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-4"; - d1 = 1; - d2 = 4 - }, -/turf/open/floor/plasteel{ - icon_state = "L8" - }, -/area/hallway/primary/central) "aZk" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -30261,13 +29376,6 @@ }, /turf/open/floor/wood, /area/library) -"aZP" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple, -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 4 - }, -/turf/open/space, -/area/space) "aZQ" = ( /obj/effect/landmark{ name = "tripai" @@ -30307,7 +29415,7 @@ pixel_x = 4; req_access_txt = "16" }, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "aZR" = ( /obj/machinery/holopad, @@ -30325,20 +29433,8 @@ uses = 10 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) -"aZT" = ( -/obj/machinery/vending/assist, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel/brown{ - dir = 1 - }, -/area/storage/primary) "aZU" = ( /obj/structure/closet/secure_closet/personal, /obj/item/clothing/under/assistantformal, @@ -30375,7 +29471,7 @@ pixel_y = 0 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "aZX" = ( /obj/machinery/holopad, @@ -30427,7 +29523,7 @@ pixel_x = -3; req_access_txt = "16" }, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "aZZ" = ( /obj/effect/turf_decal/stripes/line{ @@ -31476,20 +30572,6 @@ dir = 4 }, /area/security/checkpoint/engineering) -"bbE" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; - icon_state = "space"; - layer = 4; - name = "EXTERNAL AIRLOCK"; - pixel_x = 32; - pixel_y = -32 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "bbF" = ( /obj/structure/showcase{ density = 0; @@ -31645,7 +30727,6 @@ d1 = 2; d2 = 8; icon_state = "2-8"; - tag = "" }, /turf/open/floor/plasteel/brown{ dir = 1 @@ -32148,7 +31229,7 @@ pixel_x = -32; pixel_y = 0 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bcQ" = ( /obj/structure/window/reinforced, @@ -33104,17 +32185,8 @@ /obj/machinery/airalarm{ pixel_y = 23 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) -"bev" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/pump, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/crew_quarters/locker) "bew" = ( /obj/machinery/power/apc{ aidisabled = 0; @@ -33126,7 +32198,7 @@ icon_state = "0-4"; d2 = 4 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bex" = ( /obj/structure/cable{ @@ -33135,7 +32207,7 @@ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bey" = ( /obj/structure/window/reinforced, @@ -33189,6 +32261,9 @@ /area/shuttle/arrival) "beD" = ( /obj/machinery/computer/arcade, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "beE" = ( @@ -33223,6 +32298,9 @@ dir = 2; network = list("SS13") }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "beJ" = ( @@ -34115,13 +33193,13 @@ /obj/machinery/ai_slipper{ uses = 10 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bgk" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bgl" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34167,43 +33245,10 @@ }, /turf/open/space, /area/space) -"bgp" = ( -/obj/structure/table, -/obj/item/device/analyzer, -/obj/machinery/power/apc{ - dir = 2; - name = "Tool Storage APC"; - pixel_x = 0; - pixel_y = -27 - }, -/obj/structure/cable/yellow, -/obj/item/weapon/wrench, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/turf/open/floor/plasteel/brown{ - dir = 10 - }, -/area/storage/primary) "bgq" = ( /obj/structure/chair, /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) -"bgr" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark{ - name = "JoinLate" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) -"bgs" = ( -/obj/effect/landmark{ - name = "JoinLate" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) "bgt" = ( /obj/structure/shuttle/engine/heater{ icon_state = "heater"; @@ -35206,6 +34251,9 @@ pixel_y = 32 }, /obj/structure/table/glass, +/obj/item/weapon/storage/firstaid/fire{ + pixel_y = 8 + }, /turf/open/floor/plasteel/yellow/side{ dir = 1 }, @@ -35320,6 +34368,7 @@ pixel_x = 6; pixel_y = -32 }, +/obj/machinery/light/small, /turf/open/floor/mineral/titanium/blue, /area/shuttle/pod_3) "bii" = ( @@ -35439,12 +34488,6 @@ }, /turf/open/floor/plasteel/black, /area/ai_monitored/turret_protected/ai) -"bit" = ( -/obj/effect/landmark{ - name = "Observer-Start" - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/arrival) "biu" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ req_access_txt = 1 @@ -37471,6 +36514,7 @@ name = "Station Intercom (General)"; pixel_y = -29 }, +/obj/machinery/light, /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "blP" = ( @@ -37492,8 +36536,10 @@ "blR" = ( /obj/machinery/requests_console{ department = "Arrival shuttle"; + name = "Arrivals Shuttle console"; pixel_y = -30 }, +/obj/machinery/light, /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "blS" = ( @@ -38302,24 +37348,6 @@ /obj/machinery/syndicatebomb/training, /turf/open/floor/plasteel, /area/security/main) -"bnj" = ( -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 0; - pixel_y = 21 - }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/arrival{ - dir = 5 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) "bnk" = ( /obj/structure/window/reinforced{ dir = 1; @@ -38508,7 +37536,7 @@ name = "Antechamber Turret Control"; pixel_x = 30; pixel_y = 0; - req_access = list(65) + req_access_txt = "65" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 @@ -38682,28 +37710,6 @@ /area/ai_monitored/storage/secure{ name = "MiniSat Maintenance" }) -"bnJ" = ( -/obj/machinery/door/airlock/titanium{ - name = "Arrivals Shuttle Airlock" - }, -/obj/docking_port/mobile{ - dwidth = 5; - height = 7; - id = "arrival"; - name = "arrival shuttle"; - port_angle = -90; - preferred_direction = 8; - width = 15 - }, -/obj/docking_port/stationary{ - dwidth = 5; - height = 7; - id = "arrival_home"; - name = "port bay 1"; - width = 15 - }, -/turf/open/floor/plating, -/area/shuttle/arrival) "bnK" = ( /obj/machinery/firealarm{ dir = 8; @@ -39523,22 +38529,6 @@ /area/construction/hallway{ name = "\improper MiniSat Exterior" }) -"bpo" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/starboard) "bpp" = ( /obj/structure/cable{ d1 = 4; @@ -43026,17 +42016,6 @@ icon_state = "platingdmg2" }, /area/maintenance/starboard) -"buW" = ( -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/nitrogen, -/turf/open/floor/plasteel/black, -/area/engine/engineering) "buX" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -43162,7 +42141,7 @@ pixel_y = -23; req_access_txt = "16" }, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bvg" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43678,15 +42657,6 @@ dir = 1 }, /turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bvZ" = ( -/obj/structure/closet, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/item/weapon/poster/contraband, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, /area/maintenance/fpmaint2{ name = "Port Maintenance" }) @@ -44146,7 +43116,8 @@ department = "Bar"; departmentType = 2; pixel_x = 0; - pixel_y = 30 + pixel_y = 30; + receive_ore_updates = 1 }, /obj/structure/table, /obj/item/weapon/book/manual/barman_recipes{ @@ -44804,19 +43775,6 @@ /area/crew_quarters/toilet{ name = "\improper Auxiliary Restrooms" }) -"bxR" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/structure/sign/poster{ - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) "bxS" = ( /obj/item/weapon/cigbutt, /obj/machinery/power/apc{ @@ -46248,16 +45206,6 @@ }, /turf/open/floor/carpet, /area/crew_quarters/theatre) -"bAw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/port) "bAx" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 4 @@ -47101,26 +46049,6 @@ /obj/structure/chair/stool/bar, /turf/open/floor/plasteel/bar, /area/crew_quarters/bar) -"bBW" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - req_access_txt = 1 - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "bBX" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -47314,14 +46242,6 @@ }, /turf/open/floor/plasteel, /area/atmos) -"bCs" = ( -/obj/machinery/atmospherics/pipe/simple/yellow/visible{ - color = "purple"; - dir = 5; - icon_state = "intact" - }, -/turf/open/floor/plasteel, -/area/atmos) "bCt" = ( /obj/machinery/meter, /obj/machinery/atmospherics/pipe/manifold/yellow/visible{ @@ -47517,16 +46437,6 @@ }, /turf/open/floor/wood, /area/security/vacantoffice) -"bCO" = ( -/obj/machinery/vending/cigarette, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) "bCP" = ( /obj/machinery/light/small, /turf/open/floor/plating, @@ -48105,10 +47015,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/carpet, /area/crew_quarters/theatre) -"bDL" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/crew_quarters/bar) "bDM" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 4 @@ -48257,7 +47163,7 @@ dir = 2; network = list("SS13","tcomm") }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -48280,7 +47186,7 @@ /area/tcommsat/server) "bEh" = ( /obj/machinery/telecomms/receiver/preset_left, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -48296,7 +47202,7 @@ /area/tcommsat/server) "bEj" = ( /obj/machinery/telecomms/receiver/preset_right, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -48308,7 +47214,7 @@ dir = 2; network = list("SS13","tcomm") }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -49614,7 +48520,7 @@ /area/atmos) "bGc" = ( /obj/machinery/telecomms/bus/preset_one, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -49626,14 +48532,14 @@ }, /area/tcommsat/server) "bGe" = ( -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bGf" = ( /obj/machinery/telecomms/bus/preset_three, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -49653,16 +48559,6 @@ /area/tcommsat/computer{ name = "\improper Telecoms Control Room" }) -"bGi" = ( -/obj/structure/piano, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/carpet, -/area/crew_quarters/theatre) "bGj" = ( /obj/structure/cable/yellow{ d1 = 2; @@ -49714,29 +48610,6 @@ /area/crew_quarters/toilet{ name = "\improper Auxiliary Restrooms" }) -"bGn" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/carpet, -/area/crew_quarters/theatre) -"bGo" = ( -/obj/structure/table/wood, -/obj/item/weapon/staff/broom, -/obj/item/weapon/wrench, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "bGp" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -50220,18 +49093,6 @@ }, /turf/open/floor/carpet, /area/crew_quarters/theatre) -"bHk" = ( -/obj/structure/table/wood, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/clothing/head/sombrero, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "bHl" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable/yellow{ @@ -50987,15 +49848,6 @@ /obj/machinery/light, /turf/open/floor/wood, /area/crew_quarters/bar) -"bIz" = ( -/obj/structure/table/wood, -/obj/item/weapon/clipboard, -/obj/item/weapon/paper, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) "bIA" = ( /obj/machinery/light_switch{ pixel_y = -28 @@ -51020,18 +49872,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"bID" = ( -/obj/structure/urinal{ - pixel_y = 29 - }, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) "bIE" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable/yellow{ @@ -51286,7 +50126,7 @@ /area/space) "bJg" = ( /obj/machinery/message_server, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -51351,14 +50191,14 @@ /area/space) "bJm" = ( /obj/machinery/telecomms/bus/preset_two, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bJn" = ( /obj/machinery/blackbox_recorder, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -52152,7 +50992,7 @@ /area/space) "bKL" = ( /obj/machinery/telecomms/processor/preset_two, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -52166,28 +51006,28 @@ pixel_y = 2 }, /obj/item/weapon/pen, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bKN" = ( /obj/machinery/telecomms/bus/preset_four, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bKO" = ( /obj/machinery/telecomms/hub/preset, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bKP" = ( /obj/machinery/telecomms/processor/preset_four, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -53817,6 +52657,7 @@ dir = 4 }, /obj/item/stack/packageWrap, +/obj/item/weapon/storage/box/donkpockets, /turf/open/floor/plasteel/cafeteria{ dir = 5 }, @@ -53900,26 +52741,6 @@ /obj/structure/kitchenspike, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) -"bNH" = ( -/obj/structure/table/wood, -/obj/item/weapon/lipstick{ - pixel_y = 5 - }, -/obj/machinery/camera{ - c_tag = "Theatre - Stage"; - dir = 8; - network = list("SS13") - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/device/instrument/guitar, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "bNI" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -54099,14 +52920,14 @@ }) "bNX" = ( /obj/machinery/telecomms/server/presets/common, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bNY" = ( /obj/machinery/telecomms/server/presets/engineering, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -54127,21 +52948,21 @@ /area/tcommsat/server) "bOa" = ( /obj/machinery/telecomms/server/presets/medical, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bOb" = ( /obj/machinery/telecomms/server/presets/science, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bOc" = ( /obj/machinery/telecomms/broadcaster/preset_left, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -54966,11 +53787,18 @@ name = "Arrivals" }) "bPB" = ( -/obj/structure/chair/comfy/beige{ +/obj/structure/chair/office/dark{ dir = 1; - icon_state = "comfychair" + name = "tactical swivel chair" }, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/button/door{ + id = "syndieshutters"; + name = "Cockpit View Control"; + pixel_x = 32; + pixel_y = 32; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/black, /area/shuttle/syndicate) "bPC" = ( /obj/structure/cable/yellow{ @@ -54996,16 +53824,6 @@ /turf/open/floor/plating{ icon_state = "platingdmg2" }, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) -"bPE" = ( -/obj/structure/closet/crate, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/weapon/poster/legit, -/turf/open/floor/plating, /area/maintenance/fpmaint2{ name = "Port Maintenance" }) @@ -55381,28 +54199,6 @@ icon_state = "1-8" }, /turf/open/floor/wood, -/area/assembly/showroom{ - name = "\improper Corporate Showroom" - }) -"bQo" = ( -/obj/structure/table/wood, -/obj/machinery/button/door{ - id = "corporate_privacy"; - name = "corporate showroom shutters control"; - pixel_x = 28; - pixel_y = 0; - req_access_txt = "19" - }, -/obj/item/weapon/poster/legit, -/obj/item/weapon/poster/legit, -/obj/item/weapon/poster/legit, -/obj/item/weapon/poster/legit, -/obj/item/weapon/poster/legit, -/obj/item/device/paicard{ - desc = "A real NanoTrasen success, these personal AIs provide all of the companionship of an AI without any law related red-tape."; - name = "NanoTrasen-brand personal AI device exhibit" - }, -/turf/open/floor/carpet, /area/assembly/showroom{ name = "\improper Corporate Showroom" }) @@ -55585,16 +54381,12 @@ }, /area/hallway/primary/central) "bQA" = ( -/obj/structure/rack, -/obj/item/weapon/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, /obj/structure/cable/yellow{ d1 = 2; d2 = 4; icon_state = "2-4" }, +/obj/machinery/deepfryer, /turf/open/floor/plasteel/cafeteria{ dir = 5 }, @@ -55719,35 +54511,6 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) -"bQL" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/arrival{ - dir = 4 - }, -/area/hallway/secondary/entry{ - name = "Arrivals" - }) -"bQM" = ( -/obj/structure/table/wood, -/obj/item/weapon/folder, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) "bQN" = ( /obj/machinery/airalarm{ dir = 8; @@ -55758,25 +54521,6 @@ /area/crew_quarters/toilet{ name = "\improper Auxiliary Restrooms" }) -"bQO" = ( -/obj/item/weapon/soap/nanotrasen, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) -"bQP" = ( -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) "bQQ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/item/weapon/wrench, @@ -55854,7 +54598,12 @@ name = "\improper MiniSat Exterior" }) "bRb" = ( -/turf/open/floor/mineral/plastitanium, +/obj/machinery/computer/crew{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "bRc" = ( /obj/structure/cable/yellow{ @@ -56572,15 +55321,6 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) -"bSb" = ( -/obj/machinery/light/small, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/crew_quarters/toilet{ - name = "\improper Auxiliary Restrooms" - }) "bSc" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable/yellow{ @@ -56688,9 +55428,12 @@ /turf/open/floor/engine/plasma, /area/atmos) "bSm" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/computer/med_data{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "bSn" = ( /obj/structure/cable/yellow{ @@ -56967,19 +55710,6 @@ /area/assembly/showroom{ name = "\improper Corporate Showroom" }) -"bSJ" = ( -/obj/machinery/door/window{ - base_state = "right"; - dir = 8; - icon_state = "right"; - name = "Theatre Stage"; - req_access_txt = "0" - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/carpet, -/area/crew_quarters/theatre) "bSK" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ req_access_txt = 1 @@ -56993,20 +55723,6 @@ /area/assembly/showroom{ name = "\improper Corporate Showroom" }) -"bSL" = ( -/obj/item/device/instrument/violin, -/obj/structure/table/wood, -/obj/item/device/radio/intercom{ - freerange = 0; - frequency = 1459; - name = "Station Intercom (General)"; - pixel_x = 29 - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "bSM" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/door/firedoor, @@ -57018,10 +55734,6 @@ /area/assembly/showroom{ name = "\improper Corporate Showroom" }) -"bSN" = ( -/obj/structure/sign/poster, -/turf/closed/wall, -/area/crew_quarters/kitchen) "bSO" = ( /obj/machinery/door/firedoor, /obj/machinery/door/poddoor/shutters{ @@ -57340,7 +56052,6 @@ /area/maintenance/portsolar) "bTq" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (SOUTHWEST)"; icon_state = "intact"; dir = 10 }, @@ -57872,8 +56583,6 @@ /turf/open/floor/plasteel, /area/hydroponics) "bUm" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/item/weapon/reagent_containers/glass/bucket, /obj/structure/window/reinforced{ dir = 8 }, @@ -57882,16 +56591,18 @@ pixel_y = 29 }, /obj/effect/turf_decal/stripes/line, +/obj/structure/reagent_dispensers/watertank/high, +/obj/item/weapon/reagent_containers/glass/bucket, /turf/open/floor/plasteel, /area/hydroponics) "bUn" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/item/weapon/reagent_containers/glass/bucket, /obj/structure/window/reinforced{ dir = 4; pixel_x = 0 }, /obj/effect/turf_decal/stripes/line, +/obj/structure/reagent_dispensers/watertank/high, +/obj/item/weapon/reagent_containers/glass/bucket, /turf/open/floor/plasteel, /area/hydroponics) "bUo" = ( @@ -58158,7 +56869,7 @@ }) "bUL" = ( /obj/machinery/telecomms/server/presets/security, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -58634,19 +57345,6 @@ /obj/structure/closet/emcloset, /turf/open/floor/plating, /area/maintenance/starboard) -"bVD" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/clothing/mask/pig, -/obj/item/weapon/bikehorn, -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "bVE" = ( /obj/structure/closet/crate, /obj/item/weapon/storage/belt/utility, @@ -58867,19 +57565,6 @@ /area/maintenance/aft{ name = "Aft Maintenance" }) -"bVY" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "bVZ" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -59416,14 +58101,6 @@ /obj/structure/closet/wardrobe/botanist, /turf/open/floor/plasteel/hydrofloor, /area/hydroponics) -"bWW" = ( -/obj/structure/table/wood, -/obj/item/weapon/paper, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/wood, -/area/security/vacantoffice) "bWX" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -59744,14 +58421,6 @@ }, /turf/open/floor/plating, /area/maintenance/portsolar) -"bXw" = ( -/obj/structure/rack, -/obj/item/weapon/poster/contraband, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) "bXx" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 1 @@ -60325,17 +58994,6 @@ icon_state = "1-2" }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"bYF" = ( -/obj/structure/table, -/obj/item/weapon/paper_bin{ - pixel_x = -2; - pixel_y = 8 - }, -/obj/item/weapon/poster/contraband, -/turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -60408,7 +59066,7 @@ d2 = 2; icon_state = "0-2" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -61005,12 +59663,12 @@ d2 = 2; icon_state = "1-2" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/maintenance/aft{ name = "Aft Maintenance" }) "bZQ" = ( -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -61532,22 +60190,6 @@ /area/security/checkpoint/science{ name = "Security Post - Research Division" }) -"caF" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/item/clothing/mask/horsehead, -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/machinery/airalarm{ - dir = 1; - pixel_y = -22 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "caG" = ( /obj/machinery/firealarm{ dir = 8; @@ -63850,20 +62492,6 @@ /area/maintenance/aft{ name = "Aft Maintenance" }) -"cet" = ( -/obj/item/clothing/mask/fakemoustache, -/obj/item/clothing/mask/cigarette/pipe, -/obj/machinery/camera{ - c_tag = "Theatre - Backstage"; - dir = 1; - network = list("SS13") - }, -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "ceu" = ( /obj/structure/grille, /turf/open/floor/plating, @@ -63994,7 +62622,7 @@ }) "ceC" = ( /obj/machinery/telecomms/server/presets/command, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -64380,20 +63008,6 @@ /area/maintenance/aft{ name = "Aft Maintenance" }) -"cfe" = ( -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 24 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "cff" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -65192,7 +63806,7 @@ /area/maintenance/incinerator) "cgy" = ( /obj/machinery/telecomms/server/presets/service, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -65322,22 +63936,6 @@ /area/maintenance/aft{ name = "Aft Maintenance" }) -"cgK" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) "cgL" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -65725,14 +64323,14 @@ /area/toxins/lab) "chn" = ( /obj/machinery/telecomms/broadcaster/preset_right, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "cho" = ( /obj/machinery/telecomms/server/presets/supply, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -66910,14 +65508,6 @@ /area/maintenance/aft{ name = "Aft Maintenance" }) -"cju" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/item/weapon/storage/box/lights/mixed, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "cjv" = ( /obj/machinery/computer/arcade, /turf/open/floor/plating, @@ -68255,25 +66845,6 @@ /area/maintenance/aft{ name = "Aft Maintenance" }) -"clM" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) "clN" = ( /obj/machinery/microwave{ pixel_x = -3; @@ -68523,20 +67094,6 @@ /area/maintenance/aft{ name = "Aft Maintenance" }) -"cmj" = ( -/obj/machinery/atmospherics/components/unary/vent_pump{ - dir = 2; - on = 1 - }, -/obj/machinery/firealarm{ - pixel_y = 29 - }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) "cmk" = ( /obj/structure/grille, /obj/structure/window/fulltile, @@ -68583,15 +67140,6 @@ /area/medical/sleeper{ name = "Sleepers" }) -"cmq" = ( -/obj/structure/lattice, -/obj/machinery/camera/emp_proof{ - c_tag = "Fore Arm - Far"; - dir = 8; - network = list("Singulo") - }, -/turf/open/space, -/area/space) "cmr" = ( /obj/machinery/door/firedoor, /obj/structure/extinguisher_cabinet{ @@ -68688,7 +67236,8 @@ department = "Chemistry"; departmentType = 2; pixel_x = -30; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/structure/table/glass, /turf/open/floor/plasteel/whiteyellow/side{ @@ -68888,7 +67437,8 @@ departmentType = 2; name = "Science Requests Console"; pixel_x = 0; - pixel_y = 30 + pixel_y = 30; + receive_ore_updates = 1 }, /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, @@ -70271,20 +68821,6 @@ dir = 4 }, /area/toxins/lab) -"cpi" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/hydrofloor, -/area/hydroponics) "cpj" = ( /obj/structure/cable/yellow{ d1 = 4; @@ -71233,7 +69769,8 @@ departmentType = 2; name = "Science Requests Console"; pixel_x = 0; - pixel_y = -30 + pixel_y = -30; + receive_ore_updates = 1 }, /obj/structure/table, /obj/effect/turf_decal/stripes/line{ @@ -71604,20 +70141,6 @@ /area/maintenance/aft{ name = "Aft Maintenance" }) -"cri" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - req_access_txt = 1 - }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) "crj" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 4; @@ -72552,25 +71075,6 @@ dir = 1 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"csG" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -72837,13 +71341,6 @@ dir = 5 }, /area/crew_quarters/hor) -"cta" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/modular_computer/console/preset/research, -/turf/open/floor/plasteel/cafeteria{ - dir = 5 - }, -/area/crew_quarters/hor) "ctb" = ( /obj/structure/window/reinforced{ dir = 4 @@ -72854,7 +71351,8 @@ departmentType = 5; name = "Research Director RC"; pixel_x = 0; - pixel_y = 30 + pixel_y = 30; + receive_ore_updates = 1 }, /obj/machinery/modular_computer/console/preset/research, /turf/open/floor/plasteel/cafeteria{ @@ -73196,25 +71694,6 @@ pixel_y = 0 }, /turf/closed/wall, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"ctI" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -74725,42 +73204,6 @@ "cwj" = ( /obj/item/weapon/cigbutt, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"cwk" = ( -/obj/machinery/vending/cigarette, -/obj/machinery/status_display{ - density = 0; - layer = 4; - pixel_x = 0; - pixel_y = 32 - }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plasteel/white/side{ - dir = 4 - }, -/area/medical/research{ - name = "Research Division" - }) -"cwl" = ( -/obj/structure/rack, -/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka{ - pixel_x = 3; - pixel_y = 2 - }, -/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth{ - pixel_x = -4; - pixel_y = 3 - }, -/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/wood, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -75080,7 +73523,7 @@ d2 = 4; icon_state = "0-4" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "cwK" = ( /obj/effect/turf_decal/stripes/line{ @@ -75625,10 +74068,10 @@ scrub_N2O = 0; scrub_Toxins = 0 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "cxF" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "cxG" = ( /obj/machinery/camera{ @@ -75636,7 +74079,7 @@ dir = 8; network = list("SS13","RD") }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "cxH" = ( /turf/open/floor/plating, @@ -76047,7 +74490,7 @@ /turf/open/floor/plasteel, /area/assembly/chargebay) "cyr" = ( -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/assembly/chargebay) "cys" = ( /obj/machinery/airalarm{ @@ -76062,7 +74505,7 @@ icon_state = "tube1"; dir = 4 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/assembly/chargebay) "cyt" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -76375,15 +74818,6 @@ /area/medical/medbay3{ name = "Medbay Aft" }) -"cyS" = ( -/obj/structure/chair/stool, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) "cyT" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -76593,7 +75027,7 @@ d2 = 4; icon_state = "0-4" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/assembly/chargebay) "czl" = ( /obj/structure/table/reinforced, @@ -76902,18 +75336,6 @@ /obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port) -"czM" = ( -/obj/structure/chair/stool, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) "czN" = ( /obj/machinery/door/airlock/maintenance{ name = "Medbay Maintenance"; @@ -77671,19 +76093,6 @@ }, /turf/open/floor/plating, /area/toxins/test_area) -"cAR" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, -/area/medical/research{ - name = "Research Division" - }) "cAS" = ( /obj/structure/chair/stool, /obj/item/device/radio/intercom{ @@ -78417,15 +76826,6 @@ }, /turf/open/floor/plasteel/black, /area/medical/morgue) -"cCh" = ( -/obj/structure/sign/securearea{ - desc = "A warning sign which reads 'HIGH VOLTAGE'"; - icon_state = "shock"; - name = "HIGH VOLTAGE"; - pixel_y = 0 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) "cCi" = ( /obj/machinery/firealarm{ dir = 2; @@ -78573,7 +76973,8 @@ departmentType = 2; name = "Science Requests Console"; pixel_x = 0; - pixel_y = -30 + pixel_y = -30; + receive_ore_updates = 1 }, /obj/structure/table/reinforced, /obj/machinery/light, @@ -80053,7 +78454,8 @@ department = "Virology"; name = "Virology Requests Console"; pixel_x = 29; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/item/stack/sheet/mineral/plasma{ layer = 2.9 @@ -80777,7 +79179,8 @@ departmentType = 2; name = "Robotics RC"; pixel_x = -31; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, @@ -82228,7 +80631,7 @@ }) "cIe" = ( /obj/machinery/r_n_d/server/robotics, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -82242,7 +80645,7 @@ on = 1; pressure_checks = 0 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -82353,30 +80756,6 @@ dir = 10 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"cIo" = ( -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/poster/contraband, -/obj/item/weapon/reagent_containers/food/drinks/beer{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/weapon/reagent_containers/food/drinks/ale, -/obj/structure/table/wood, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/obj/item/device/instrument/eguitar, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -82951,21 +81330,6 @@ dir = 1 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"cJp" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/weapon/ore/slag, -/obj/item/weapon/storage/box/lights/mixed, -/turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -83197,6 +81561,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cJJ" = ( @@ -83345,7 +81712,7 @@ }) "cJV" = ( /obj/machinery/r_n_d/server/core, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -83362,7 +81729,7 @@ pressure_checks = 2; pump_direction = 0 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -83436,17 +81803,6 @@ dir = 2 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"cKd" = ( -/obj/structure/light_construct/small, -/obj/structure/table/wood/poker, -/obj/item/toy/cards/deck, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/wood, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -83622,23 +81978,6 @@ dir = 4 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"cKt" = ( -/obj/item/weapon/dice/d20, -/obj/item/weapon/dice, -/obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -84488,20 +82827,6 @@ dir = 1 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"cLI" = ( -/obj/structure/closet/crate, -/obj/item/weapon/poster/legit, -/obj/effect/spawner/lootdrop/maintenance, -/obj/effect/landmark{ - name = "blobstart" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -84714,21 +83039,6 @@ }, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"cMc" = ( -/obj/item/weapon/tank/internals/air, -/obj/item/weapon/tank/internals/air, -/obj/item/clothing/mask/breath, -/obj/item/clothing/mask/breath, -/obj/machinery/space_heater, -/obj/effect/spawner/lootdrop/maintenance, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -84842,26 +83152,6 @@ icon_state = "2-4" }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"cMn" = ( -/obj/structure/disposalpipe/segment{ - dir = 2; - icon_state = "pipe-c" - }, -/obj/structure/cable/yellow{ - d1 = 2; - d2 = 8; - icon_state = "2-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -85491,7 +83781,6 @@ d1 = 1; d2 = 4; icon_state = "1-4"; - tag = "90Curve" }, /turf/open/floor/plating, /area/maintenance/starboardsolar) @@ -85838,17 +84127,6 @@ /area/maintenance/aft{ name = "Aft Maintenance" }) -"cNV" = ( -/obj/structure/chair/stool, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plasteel/cafeteria{ - dir = 5 - }, -/area/medical/medbay3{ - name = "Medbay Aft" - }) "cNW" = ( /obj/structure/sink/kitchen{ desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; @@ -86650,22 +84928,6 @@ /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) -"cPw" = ( -/obj/structure/cable/yellow{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) "cPx" = ( /obj/structure/cable/yellow{ d1 = 1; @@ -86676,20 +84938,6 @@ dir = 8 }, /turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) -"cPy" = ( -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, /area/maintenance/aft{ name = "Aft Maintenance" }) @@ -87051,18 +85299,6 @@ }, /turf/open/floor/plasteel/black, /area/chapel/main) -"cQe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber{ - dir = 2; - on = 1; - scrub_N2O = 0; - scrub_Toxins = 0 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) "cQf" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -87231,22 +85467,6 @@ dir = 1 }, /area/toxins/xenobiology) -"cQu" = ( -/obj/structure/cable/yellow{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) "cQv" = ( /obj/machinery/camera{ c_tag = "Toxins - Launch Area"; @@ -87263,41 +85483,12 @@ /area/toxins/mixing{ name = "\improper Toxins Lab" }) -"cQw" = ( -/obj/machinery/door/window/eastleft{ - dir = 4; - name = "Coffin Storage"; - req_access_txt = "22" - }, -/turf/open/floor/plating, -/area/chapel/main) "cQx" = ( /obj/structure/chair{ pixel_y = -2 }, /turf/open/floor/plasteel/vault, /area/chapel/main) -"cQy" = ( -/obj/structure/chair{ - pixel_y = -2 - }, -/obj/effect/landmark/start{ - name = "Chaplain" - }, -/turf/open/floor/plasteel/vault, -/area/chapel/main) -"cQz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) -"cQA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) "cQB" = ( /obj/machinery/doppler_array{ dir = 4 @@ -87463,31 +85654,6 @@ }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"cQQ" = ( -/obj/machinery/light{ - icon_state = "tube1"; - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Departure Lounge - Port Fore"; - dir = 4; - network = list("SS13") - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-24"; - layer = 4.1 - }, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -87518,22 +85684,6 @@ /obj/machinery/light/small, /turf/open/floor/plating, /area/chapel/main) -"cQU" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/airalarm{ - dir = 8; - icon_state = "alarm0"; - pixel_x = 24 - }, -/obj/machinery/camera{ - c_tag = "Chapel - Funeral Parlour"; - dir = 8; - network = list("SS13") - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) "cQV" = ( /obj/item/device/flashlight/lantern{ pixel_y = 7 @@ -87601,20 +85751,6 @@ dir = 4 }, /area/toxins/xenobiology) -"cRd" = ( -/obj/machinery/hydroponics/soil{ - pixel_y = 8 - }, -/obj/item/seeds/glowshroom, -/obj/item/seeds/corn, -/obj/structure/sign/poster{ - pixel_y = 32 - }, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating, -/area/maintenance/aft{ - name = "Aft Maintenance" - }) "cRe" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -87979,7 +86115,9 @@ /area/chapel/main) "cRQ" = ( /obj/machinery/computer/shuttle/syndicate, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cRR" = ( /obj/machinery/door/firedoor, @@ -88717,6 +86855,9 @@ /obj/item/weapon/storage/pod{ pixel_x = -26 }, +/obj/machinery/light/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/pod_1) "cTe" = ( @@ -88867,7 +87008,12 @@ turf_type = /turf/open/space; width = 18 }, -/turf/open/floor/plating, +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, /area/shuttle/syndicate) "cTm" = ( /obj/structure/cable/yellow, @@ -88965,6 +87111,7 @@ pixel_x = 6; pixel_y = -32 }, +/obj/machinery/light/small, /turf/open/floor/mineral/titanium/blue, /area/shuttle/pod_4) "cTv" = ( @@ -88982,17 +87129,6 @@ /obj/item/weapon/storage/box/lights/mixed, /turf/open/floor/plating, /area/maintenance/starboard) -"cTx" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 2; - initialize_directions = 11 - }, -/obj/item/weapon/twohanded/required/kirbyplants{ - icon_state = "plant-21"; - layer = 4.1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) "cTy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -89029,71 +87165,58 @@ /area/toxins/xenobiology) "cTD" = ( /obj/machinery/shieldwallgen{ - req_access = list(55) + req_access_txt = "55" }, /obj/structure/cable/yellow, /turf/open/floor/plating, /area/toxins/xenobiology) "cTE" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp{ - pixel_x = 4; - pixel_y = 1 +/obj/structure/table/reinforced, +/obj/item/weapon/folder/red, +/turf/open/floor/plasteel/vault{ + dir = 8 }, -/turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate) "cTF" = ( -/obj/structure/frame/computer, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/computer/camera_advanced{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cTG" = ( -/obj/structure/table, -/obj/machinery/button/door{ - id = "syndieshutters"; - name = "remote shutter control"; - req_access_txt = "150" +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 }, -/turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate) "cTH" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 +/obj/structure/table/reinforced, +/obj/machinery/status_display{ + pixel_x = -32 + }, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/syndie, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 }, -/turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate) "cTI" = ( -/obj/structure/table, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -5 +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light{ + dir = 4 }, -/obj/item/weapon/c4{ - pixel_x = -3; - pixel_y = 3 +/turf/open/floor/plasteel/vault{ + dir = 8 }, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -3 - }, -/obj/item/weapon/c4{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/c4{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate) "cTJ" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 10 - }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/vault, /area/shuttle/syndicate) "cTK" = ( /obj/item/device/radio/intercom{ @@ -89118,11 +87241,13 @@ }, /area/shuttle/syndicate) "cTN" = ( -/obj/machinery/door/window{ +/obj/machinery/door/airlock/hatch{ name = "Cockpit"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cTO" = ( /turf/open/space, @@ -89132,18 +87257,24 @@ }, /area/shuttle/syndicate) "cTP" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, +/obj/structure/table/reinforced, +/obj/item/stack/cable_coil/white, +/obj/item/stack/cable_coil/white, /obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, /area/shuttle/syndicate) "cTQ" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/zipties{ - pixel_x = 1; - pixel_y = 2 +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/handcuffs{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/zipties, +/turf/open/floor/plasteel/vault{ + dir = 5 }, -/turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate) "cTR" = ( /obj/effect/landmark/xmastree, @@ -89151,28 +87282,37 @@ /area/crew_quarters/bar) "cTS" = ( /obj/structure/chair{ - dir = 8 + dir = 8; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 }, -/turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate) "cTT" = ( /obj/structure/disposalpipe/segment, /turf/closed/wall/r_wall, /area/toxins/xenobiology) "cTU" = ( -/obj/machinery/door/window{ +/obj/machinery/door/airlock/external{ name = "Ready Room"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cTV" = ( /obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, /area/shuttle/syndicate) "cTW" = ( -/obj/structure/closet/syndicate/nuclear, -/turf/open/floor/mineral/plastitanium, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cTX" = ( /obj/docking_port/stationary{ @@ -89188,12 +87328,15 @@ /turf/open/space, /area/space) "cTY" = ( -/obj/structure/table, -/obj/item/device/aicard, -/turf/open/floor/mineral/plastitanium, +/obj/structure/tank_dispenser/oxygen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cTZ" = ( -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUa" = ( /turf/open/space, @@ -89206,19 +87349,55 @@ /obj/machinery/sleeper/syndie{ dir = 4 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUc" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/mineral/titanium, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = 6; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = -3 + }, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 3; + pixel_y = -2 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 4; + pixel_y = 1 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 2; + pixel_y = 8 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUd" = ( -/obj/machinery/door/window{ - dir = 4; - name = "EVA Storage"; +/obj/machinery/door/airlock/external{ + name = "E.V.A. Gear Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUe" = ( /obj/machinery/door/airlock/external{ @@ -89260,48 +87439,59 @@ /turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate) "cUj" = ( -/obj/machinery/recharge_station, -/turf/open/floor/mineral/plastitanium, +/obj/structure/closet/syndicate/nuclear, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUk" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUl" = ( -/obj/structure/table, -/obj/item/stack/medical/ointment, +/obj/structure/table/reinforced, +/obj/item/stack/medical/gauze, /obj/item/stack/medical/bruise_pack, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 +/obj/item/stack/medical/ointment, +/turf/open/floor/plasteel/vault{ + dir = 8 }, -/turf/open/floor/mineral/titanium, /area/shuttle/syndicate) "cUm" = ( /obj/structure/bed/roller, -/turf/open/floor/mineral/titanium, +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUn" = ( -/obj/structure/table, /obj/item/weapon/screwdriver{ pixel_y = 9 }, /obj/item/device/assembly/voice{ pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUo" = ( -/obj/structure/table, /obj/item/weapon/stock_parts/cell/high{ pixel_x = -3; pixel_y = 3 }, /obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUp" = ( -/obj/structure/table, /obj/item/device/assembly/signaler, /obj/item/device/assembly/signaler, /obj/item/device/assembly/prox_sensor{ @@ -89312,21 +87502,31 @@ pixel_x = -8; pixel_y = 4 }, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUq" = ( -/obj/structure/table, /obj/item/weapon/wrench, /obj/item/device/assembly/infra, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUr" = ( -/obj/structure/table, /obj/item/weapon/weldingtool/largetank{ pixel_y = 3 }, /obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUs" = ( /obj/structure/sign/bluecross_2, @@ -89346,12 +87546,12 @@ /turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate) "cUv" = ( -/obj/machinery/door/window{ - dir = 4; - name = "Infirmary"; +/obj/machinery/door/airlock/hatch{ req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUw" = ( /obj/machinery/door/window{ @@ -89377,19 +87577,18 @@ name = "Surgery"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/vault, /area/shuttle/syndicate) "cUz" = ( /obj/structure/window/reinforced{ dir = 1 }, -/obj/structure/table, /obj/item/bodypart/r_arm/robot, /obj/item/bodypart/l_arm/robot, -/turf/open/floor/mineral/titanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, /area/shuttle/syndicate) "cUA" = ( -/obj/structure/table, /obj/structure/window/reinforced{ dir = 8 }, @@ -89402,16 +87601,16 @@ pixel_x = -3; pixel_y = -3 }, -/turf/open/floor/mineral/titanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, /area/shuttle/syndicate) "cUB" = ( /obj/structure/window/reinforced{ dir = 1 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/vault, /area/shuttle/syndicate) "cUC" = ( -/obj/structure/table, /obj/item/weapon/grenade/syndieminibomb{ pixel_x = 4; pixel_y = 2 @@ -89419,18 +87618,30 @@ /obj/item/weapon/grenade/syndieminibomb{ pixel_x = -1 }, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUD" = ( -/obj/structure/table, /obj/item/device/sbeacondrop/bomb{ pixel_y = 5 }, /obj/item/device/sbeacondrop/bomb, -/turf/open/floor/mineral/plastitanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUE" = ( -/obj/structure/table, /obj/item/weapon/storage/firstaid/regular{ pixel_x = 3; pixel_y = 3 @@ -89440,13 +87651,20 @@ pixel_x = -3; pixel_y = -3 }, -/turf/open/floor/mineral/titanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, /area/shuttle/syndicate) "cUF" = ( -/obj/structure/table, /obj/item/weapon/surgicaldrill, /obj/item/weapon/circular_saw, -/turf/open/floor/mineral/titanium, +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "cUG" = ( /obj/machinery/telecomms/allinone{ @@ -89468,23 +87686,26 @@ /obj/structure/mirror{ pixel_x = 30 }, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, /area/shuttle/syndicate) "cUJ" = ( /obj/machinery/nuclearbomb/syndicate, /obj/machinery/door/window{ dir = 1; - name = "Secure Storage"; - req_access_txt = "150" + name = "Theatre Stage"; + req_access_txt = "0" }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/circuit/red, /area/shuttle/syndicate) "cUK" = ( /obj/structure/shuttle/engine/heater, /obj/structure/window/reinforced{ dir = 1 }, -/turf/open/floor/plating, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, /area/shuttle/syndicate) "cUL" = ( /obj/docking_port/stationary/random{ @@ -89531,19 +87752,22 @@ /area/toxins/xenobiology) "cUO" = ( /obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, /area/shuttle/syndicate) "cUP" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion_l" }, -/turf/open/floor/plating, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, /area/shuttle/syndicate) "cUQ" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion_r" }, -/turf/open/floor/plating, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, /area/shuttle/syndicate) "cUR" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ @@ -89610,6 +87834,10 @@ pixel_x = 24; pixel_y = -8 }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/supply) "cUZ" = ( @@ -89743,19 +87971,11 @@ "cVn" = ( /turf/closed/wall/mineral/titanium, /area/shuttle/transport) -"cVo" = ( -/obj/structure/window/shuttle, -/obj/structure/grille, -/turf/open/floor/plating, -/area/shuttle/transport) "cVp" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/transport) -"cVq" = ( -/turf/closed/wall/mineral/titanium/overspace, -/area/shuttle/transport) "cVr" = ( /obj/structure/shuttle/engine/heater{ icon_state = "heater"; @@ -89764,16 +87984,6 @@ /obj/structure/window/reinforced, /turf/open/floor/plating, /area/shuttle/transport) -"cVs" = ( -/obj/machinery/computer/shuttle/ferry/request, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) -"cVt" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) "cVu" = ( /obj/structure/chair, /turf/open/floor/pod/dark, @@ -89830,10 +88040,6 @@ }, /turf/open/floor/plating, /area/atmos) -"cVA" = ( -/obj/structure/closet/crate, -/turf/open/floor/mineral/titanium/blue, -/area/shuttle/transport) "cVB" = ( /obj/structure/chair{ dir = 1 @@ -89931,16 +88137,11 @@ /obj/effect/decal/cleanable/greenglow{ desc = "Looks like something's sprung a leak" }, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) -"cVP" = ( -/obj/structure/sign/poster{ - pixel_x = 32 - }, -/turf/open/floor/plating, -/area/maintenance/fpmaint2{ - name = "Port Maintenance" - }) "cVQ" = ( /obj/machinery/light{ icon_state = "tube1"; @@ -90057,6 +88258,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "cWa" = ( @@ -90076,6 +88280,9 @@ name = "dust" }, /obj/effect/turf_decal/bot, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/plasteel, /area/shuttle/abandoned) "cWb" = ( @@ -90200,6 +88407,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cWk" = ( @@ -90230,6 +88440,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cWm" = ( @@ -90354,6 +88567,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "cWw" = ( @@ -90432,6 +88648,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cWC" = ( @@ -90450,6 +88669,7 @@ name = "dust" }, /obj/effect/turf_decal/bot, +/obj/machinery/light/small, /turf/open/floor/plasteel, /area/shuttle/abandoned) "cWE" = ( @@ -90562,6 +88782,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct{ + dir = 1 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "cWQ" = ( @@ -90596,6 +88819,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cWU" = ( @@ -90636,13 +88862,13 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "cWY" = ( -/obj/machinery/vending/coffee{ - pixel_x = -2; - use_power = 0 - }, +/obj/machinery/vending/coffee, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cWZ" = ( @@ -90678,15 +88904,6 @@ /obj/structure/easel, /turf/open/floor/plating, /area/maintenance/starboard) -"cXd" = ( -/obj/structure/lattice, -/obj/machinery/camera/emp_proof{ - c_tag = "Aft Arm - Far"; - dir = 8; - network = list("Singulo") - }, -/turf/open/space, -/area/space) "cXe" = ( /obj/structure/chair/office/light{ dir = 4 @@ -90908,6 +89125,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "cXx" = ( @@ -90926,7 +89146,6 @@ /area/shuttle/abandoned) "cXz" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -91015,6 +89234,7 @@ name = "dust" }, /obj/item/device/megaphone, +/obj/structure/light_construct, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cXI" = ( @@ -91129,13 +89349,16 @@ /area/shuttle/abandoned) "cXU" = ( /obj/machinery/vending/hydroseeds{ - pixel_x = 2; + pixel_x = 0; use_power = 0 }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cXV" = ( @@ -91144,6 +89367,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cXW" = ( @@ -91242,6 +89468,9 @@ /obj/item/weapon/wirecutters, /obj/item/device/plant_analyzer, /obj/item/weapon/reagent_containers/glass/bucket, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cYe" = ( @@ -91284,6 +89513,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cYi" = ( @@ -91300,11 +89532,6 @@ /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, /area/maintenance/starboard) -"cYk" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/effect/spawner/lootdrop/maintenance, -/turf/open/floor/plating, -/area/maintenance/starboard) "cYl" = ( /obj/structure/chair/office/light, /obj/effect/decal/cleanable/dirt{ @@ -91327,12 +89554,15 @@ }, /obj/machinery/iv_drip{ density = 0; - pixel_x = -8 + pixel_x = 0 }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "cYn" = ( @@ -91624,6 +89854,10 @@ pixel_x = -1; pixel_y = 2 }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "cYN" = ( @@ -91744,6 +89978,9 @@ pixel_y = 27 }, /obj/structure/chair, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "cYT" = ( @@ -91904,6 +90141,7 @@ /obj/structure/chair{ dir = 1 }, +/obj/machinery/light, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "cZl" = ( @@ -91987,7 +90225,7 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "cZv" = ( -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -92049,6 +90287,9 @@ "cZz" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, +/obj/machinery/light{ + dir = 8 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "cZA" = ( @@ -92188,6 +90429,10 @@ /obj/item/weapon/restraints/handcuffs{ pixel_y = 3 }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "cZT" = ( @@ -92198,6 +90443,9 @@ "cZU" = ( /obj/structure/reagent_dispensers/fueltank, /obj/effect/turf_decal/delivery, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/plasteel, /area/shuttle/escape) "cZV" = ( @@ -92421,6 +90669,7 @@ }, /obj/machinery/portable_atmospherics/canister/oxygen, /obj/effect/turf_decal/bot, +/obj/machinery/light/small, /turf/open/floor/plasteel, /area/shuttle/escape) "dax" = ( @@ -92513,10 +90762,7 @@ /turf/open/floor/engine, /area/toxins/xenobiology) "daJ" = ( -/obj/effect/spawner/lootdrop{ - loot = list(/obj/effect/decal/remains/xeno = 49, /obj/structure/alien/egg = 1); - name = "2% chance xeno egg spawner" - }, +/obj/effect/spawner/lootdrop/two_percent_xeno_egg_spawner, /turf/open/floor/engine, /area/toxins/xenobiology) "daK" = ( @@ -92594,14 +90840,14 @@ on = 1; pressure_checks = 0 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80" }, /area/toxins/xenobiology) "daS" = ( /obj/structure/disposalpipe/segment, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -92616,27 +90862,6 @@ icon_state = "diagonalWall3" }, /area/shuttle/syndicate) -"daU" = ( -/obj/structure/cable{ - tag = "icon-0-4"; - icon_state = "0-4" - }, -/obj/machinery/power/tesla_coil, -/turf/open/floor/plating/airless, -/area/space) -"daV" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating, -/area/engine/engineering) "daW" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 8 @@ -92668,22 +90893,10 @@ /area/engine/engineering) "daZ" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 1 }, -/turf/open/floor/plating, -/area/engine/engineering) -"dba" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_x = 0; - tag = "" - }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "dbb" = ( @@ -92695,20 +90908,6 @@ }, /turf/open/floor/engine, /area/engine/engineering) -"dbc" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 2; - d2 = 8; - icon_state = "2-8"; - tag = "" - }, -/turf/open/floor/plating/airless, -/area/space) "dbd" = ( /obj/structure/sink/kitchen{ pixel_y = 28 @@ -92722,13 +90921,6 @@ }, /turf/open/floor/carpet, /area/crew_quarters/heads) -"dbf" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/engine, -/area/engine/engineering) "dbg" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 1 @@ -92744,7 +90936,6 @@ "dbh" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/corner{ @@ -92753,13 +90944,6 @@ /obj/machinery/meter, /turf/open/floor/engine, /area/engine/engineering) -"dbi" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/power/grounding_rod, -/turf/open/floor/plating/airless, -/area/space) "dbj" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 @@ -92852,7 +91036,7 @@ "dbv" = ( /obj/structure/disposalpipe/segment, /obj/machinery/light/small, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -92864,7 +91048,7 @@ network = list("SS13","RD","Xeno"); start_active = 1 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -92872,32 +91056,31 @@ "dbx" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "dby" = ( -/obj/structure/table, /obj/item/weapon/cautery, /obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "dbz" = ( -/obj/structure/table, /obj/item/weapon/retractor, /obj/item/weapon/hemostat, -/turf/open/floor/mineral/titanium, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, /area/shuttle/syndicate) "dbA" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 +/obj/machinery/telecomms/allinone{ + intercept = 1 }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/mineral/plastitanium, +/turf/open/floor/circuit/red, /area/shuttle/syndicate) "dbB" = ( /obj/docking_port/stationary{ @@ -93020,7 +91203,6 @@ d1 = 2; d2 = 8; icon_state = "2-8"; - tag = "" }, /turf/open/space, /area/solar/starboard) @@ -93046,10 +91228,8 @@ d1 = 2; d2 = 8; icon_state = "2-8"; - tag = "" }, /obj/structure/cable{ - tag = "icon-1-2"; icon_state = "1-2" }, /turf/open/space, @@ -93107,7 +91287,6 @@ "dbT" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ - tag = "icon-0-4"; icon_state = "0-4" }, /turf/open/space, @@ -93126,7 +91305,6 @@ d1 = 1; d2 = 4; icon_state = "1-4"; - tag = "90Curve" }, /obj/structure/cable{ d1 = 1; @@ -93146,7 +91324,6 @@ d1 = 1; d2 = 4; icon_state = "1-4"; - tag = "90Curve" }, /obj/structure/cable{ d1 = 1; @@ -93289,7 +91466,8 @@ departmentType = 2; name = "Science Requests Console"; pixel_x = 0; - pixel_y = 30 + pixel_y = 30; + receive_ore_updates = 1 }, /obj/machinery/light{ dir = 1 @@ -93349,7 +91527,6 @@ d1 = 1; d2 = 4; icon_state = "1-4"; - tag = "90Curve" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 @@ -93612,13 +91789,6 @@ }, /turf/open/floor/plating/airless, /area/toxins/xenobiology) -"dcF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) "dcG" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ @@ -94165,7 +92335,7 @@ pressure_checks = 2; pump_direction = 0 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -94210,9 +92380,6 @@ /obj/machinery/door/airlock/external, /turf/open/floor/pod/dark, /area/shuttle/transport) -"ddI" = ( -/turf/open/floor/pod/light, -/area/space) "ddJ" = ( /obj/machinery/door/airlock/titanium, /turf/open/floor/pod/light, @@ -94236,9 +92403,6 @@ /obj/machinery/door/airlock/external, /turf/open/floor/pod/light, /area/shuttle/transport) -"ddN" = ( -/turf/open/floor/pod/light, -/area/space) "ddO" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /turf/open/floor/plasteel/black, @@ -94354,30 +92518,21 @@ }, /turf/closed/wall/r_wall, /area/engine/engineering) -"dec" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) "ded" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1; initialize_directions = 11 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "dee" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "def" = ( @@ -94386,24 +92541,16 @@ }, /turf/closed/wall/r_wall, /area/engine/engineering) -"deg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/engine/engineering) "deh" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "dei" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -94413,7 +92560,6 @@ /area/engine/engineering) "dej" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -94430,7 +92576,6 @@ name = "Mix to Gas" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -94440,7 +92585,6 @@ /area/engine/engineering) "del" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -94458,7 +92602,6 @@ name = "Gas to Mix" }, /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -94473,9 +92616,6 @@ }, /turf/open/floor/engine, /area/engine/engineering) -"deo" = ( -/turf/open/floor/plasteel/black, -/area/engine/engineering) "dep" = ( /obj/machinery/firealarm{ pixel_y = 32 @@ -94523,7 +92663,6 @@ d1 = 2; d2 = 8; icon_state = "2-8"; - tag = "" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/engine, @@ -94543,7 +92682,6 @@ d1 = 2; d2 = 8; icon_state = "2-8"; - tag = "" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/engine, @@ -94555,7 +92693,6 @@ initialize_directions = 10 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/corner{ @@ -94566,7 +92703,6 @@ "dev" = ( /obj/machinery/atmospherics/pipe/simple/general/visible, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -94577,7 +92713,6 @@ "dew" = ( /obj/machinery/door/firedoor, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/machinery/door/airlock/glass_engineering{ @@ -94588,36 +92723,21 @@ /area/engine/engineering) "dex" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /turf/open/floor/plating, /area/engine/engineering) "dey" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-2-8"; - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"dez" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plating, /area/engine/engineering) "deA" = ( /obj/structure/cable/white{ - tag = "icon-2-8"; icon_state = "2-8" }, /turf/open/floor/plating, @@ -94648,46 +92768,6 @@ /obj/machinery/status_display, /turf/closed/wall/r_wall, /area/engine/engineering) -"deE" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chapelprivacy"; - name = "Chapel Privacy Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"deF" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chapelprivacy"; - name = "Chapel Privacy Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"deG" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chapelprivacy"; - name = "Chapel Privacy Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"deH" = ( -/obj/machinery/status_display, -/turf/closed/wall/r_wall, -/area/engine/engineering) "deI" = ( /obj/machinery/atmospherics/components/trinary/filter{ dir = 1; @@ -94743,23 +92823,14 @@ }, /turf/open/floor/engine, /area/engine/engineering) -"deP" = ( -/turf/open/floor/plasteel/black, -/area/engine/engineering) -"deQ" = ( -/turf/open/floor/plasteel/black, -/area/engine/engineering) -"deR" = ( -/turf/open/floor/plasteel/black, -/area/engine/engineering) "deS" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 10; pixel_x = 0; initialize_directions = 10 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "deT" = ( @@ -94815,7 +92886,6 @@ anchored = 1; dir = 1; icon_state = "reflector"; - tag = "icon-reflector (NORTH)" }, /turf/open/floor/plating, /area/engine/engineering) @@ -94866,7 +92936,6 @@ anchored = 1; dir = 1; icon_state = "reflector_double"; - tag = "icon-reflector_double (NORTH)" }, /turf/open/floor/plasteel/black, /area/engine/engineering) @@ -94875,7 +92944,6 @@ anchored = 1; dir = 8; icon_state = "reflector"; - tag = "icon-reflector (WEST)" }, /turf/open/floor/plating, /area/engine/engineering) @@ -94903,42 +92971,18 @@ /area/engine/engineering) "dfk" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/manifold/general/visible, -/turf/open/floor/plating, -/area/engine/engineering) -"dfl" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/manifold/general/visible, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) "dfm" = ( /obj/structure/grille, -/obj/structure/window/reinforced/fulltile, /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 9 }, +/obj/structure/window/reinforced/highpressure/fulltile, /turf/open/floor/plating, /area/engine/engineering) -"dfn" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/engine, -/area/engine/engineering) -"dfo" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/light{ - dir = 4; - icon_state = "tube1" - }, -/turf/open/floor/engine, -/area/engine/engineering) "dfp" = ( /obj/effect/turf_decal/bot{ dir = 1 @@ -94960,26 +93004,6 @@ }, /turf/open/floor/engine, /area/engine/engineering) -"dfr" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/engine, -/area/engine/engineering) -"dfs" = ( -/obj/machinery/power/rad_collector{ - anchored = 1 - }, -/obj/structure/cable{ - icon_state = "0-2"; - d2 = 2 - }, -/turf/open/floor/engine, -/area/engine/engineering) "dft" = ( /obj/machinery/atmospherics/components/trinary/filter{ dir = 1; @@ -95000,54 +93024,6 @@ }, /turf/open/floor/engine, /area/engine/engineering) -"dfv" = ( -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - icon_state = "connector_map"; - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plasteel/black, -/area/engine/engineering) -"dfw" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chapelprivacy"; - name = "Chapel Privacy Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"dfx" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chapelprivacy"; - name = "Chapel Privacy Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/item/weapon/crowbar, -/turf/open/floor/plating, -/area/engine/engineering) -"dfy" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "chapelprivacy"; - name = "Chapel Privacy Shutters" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "dfz" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -95056,14 +93032,12 @@ /area/engine/engineering) "dfA" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /turf/open/floor/plating, /area/engine/engineering) "dfB" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/emitter{ @@ -95075,7 +93049,6 @@ /area/engine/engineering) "dfC" = ( /obj/structure/cable/white{ - tag = "icon-0-2"; icon_state = "0-2" }, /obj/machinery/power/emitter{ @@ -95159,32 +93132,12 @@ }, /turf/open/floor/engine, /area/engine/engineering) -"dfH" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - icon_state = "intact"; - dir = 4 - }, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/engine, -/area/engine/engineering) "dfI" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 4; name = "Cooling Loop Bypass" }, /obj/structure/cable/white{ - tag = "icon-2-4"; icon_state = "2-4" }, /obj/effect/turf_decal/stripes/line{ @@ -95202,7 +93155,6 @@ initialize_directions = 10 }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -95210,57 +93162,23 @@ }, /turf/open/floor/engine, /area/engine/engineering) -"dfK" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/door/airlock/glass_engineering{ - name = "Laser Room"; - req_access_txt = "10" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"dfL" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) "dfM" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/structure/cable/white{ - tag = "icon-1-8"; - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"dfN" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plating, /area/engine/engineering) "dfO" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /turf/open/floor/plating, /area/engine/engineering) "dfP" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -95272,7 +93190,6 @@ /area/engine/engineering) "dfQ" = ( /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -95291,7 +93208,6 @@ name = "Gas to Cold Loop" }, /obj/structure/cable/white{ - tag = "icon-4-8"; icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -95299,7 +93215,6 @@ /area/engine/engineering) "dfS" = ( /obj/structure/cable/white{ - tag = "icon-1-8"; icon_state = "1-8" }, /obj/effect/turf_decal/stripes/line, @@ -95432,14 +93347,6 @@ /obj/structure/lattice, /turf/open/space, /area/space) -"dgl" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple, -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 4 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) "dgm" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 4 @@ -95448,12 +93355,6 @@ /obj/structure/lattice, /turf/open/space, /area/space) -"dgn" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "dgo" = ( /obj/machinery/atmospherics/pipe/simple/orange/visible{ dir = 4 @@ -95468,14 +93369,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard) -"dgq" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile, -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "dgr" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/orange/visible{ @@ -95483,12 +93376,6 @@ }, /turf/open/space, /area/space) -"dgs" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 6 - }, -/turf/open/space, -/area/space) "dgt" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple, /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ @@ -95515,21 +93402,6 @@ /obj/machinery/atmospherics/pipe/simple/orange/visible, /turf/open/space, /area/space) -"dgx" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 5 - }, -/obj/structure/lattice, -/turf/open/space, -/area/space) -"dgy" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/heat_exchanging/simple, -/obj/structure/lattice, -/turf/open/space, -/area/space) "dgz" = ( /obj/structure/closet/toolcloset, /obj/effect/turf_decal/delivery, @@ -95550,48 +93422,6 @@ /obj/structure/lattice/catwalk, /turf/open/space, /area/space) -"dgC" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 9 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"dgD" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 5 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"dgE" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 9 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"dgF" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 5 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"dgG" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 9 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) -"dgH" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 5 - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/space) "dgI" = ( /obj/machinery/atmospherics/pipe/simple/orange/visible{ dir = 5 @@ -95611,13 +93441,6 @@ }, /turf/open/space, /area/space) -"dgL" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 4 - }, -/turf/open/space, -/area/space) "dgM" = ( /obj/machinery/atmospherics/pipe/simple/orange/visible{ dir = 10 @@ -95634,19 +93457,6 @@ /obj/machinery/atmospherics/pipe/simple/orange/visible, /turf/open/space, /area/space) -"dgP" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) -"dgQ" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) -"dgR" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) "dgS" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -95662,39 +93472,6 @@ /obj/machinery/atmospherics/pipe/simple/orange/visible, /turf/open/space, /area/space) -"dgT" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) -"dgU" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) -"dgV" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) -"dgW" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) -"dgX" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) -"dgY" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) -"dgZ" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) "dha" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/green/visible{ @@ -95703,11 +93480,6 @@ /obj/machinery/atmospherics/pipe/simple/orange/visible, /turf/open/space, /area/space) -"dhb" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) "dhc" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ @@ -95716,11 +93488,6 @@ /obj/machinery/atmospherics/pipe/simple/orange/visible, /turf/open/space, /area/space) -"dhd" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) "dhe" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 10; @@ -95729,14 +93496,6 @@ }, /turf/open/floor/plasteel, /area/atmos) -"dhf" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space) "dhg" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 5 @@ -95787,6 +93546,2051 @@ }, /turf/open/space, /area/space) +"dhm" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dhn" = ( +/obj/structure/table, +/obj/item/weapon/poster/random_contraband, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fore) +"dho" = ( +/obj/item/stack/sheet/cardboard, +/obj/structure/light_construct/small{ + dir = 1 + }, +/obj/structure/closet/crate, +/obj/item/weapon/coin/silver, +/obj/item/weapon/grenade/chem_grenade, +/obj/item/weapon/storage/box/lights/mixed, +/obj/item/weapon/watertank, +/obj/item/weapon/storage/box/donkpockets, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"dhp" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness{ + name = "\improper Recreation Area" + }) +"dhq" = ( +/obj/structure/table/reinforced, +/obj/structure/light_construct/small{ + dir = 8 + }, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/structure/window/reinforced, +/obj/item/weapon/poster/random_official, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"dhr" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"dhs" = ( +/obj/structure/rack, +/obj/item/clothing/under/color/blue, +/obj/item/clothing/ears/earmuffs, +/obj/item/clothing/neck/tie/blue, +/obj/item/clothing/head/soft/blue, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault, +/area/crew_quarters/fitness{ + name = "\improper Recreation Area" + }) +"dht" = ( +/obj/item/weapon/cigbutt, +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"dhu" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"dhv" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/westleft{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Outer Window"; + req_access_txt = "0" + }, +/obj/machinery/door/window/brigdoor{ + dir = 8; + name = "Brig Control Desk"; + req_access_txt = "3" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/item/weapon/folder/red, +/obj/item/weapon/folder/red, +/obj/item/weapon/poster/random_official, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"dhw" = ( +/obj/structure/closet, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"dhx" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"dhy" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/closet/cardboard, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/sorting{ + name = "\improper Warehouse" + }) +"dhz" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"dhA" = ( +/obj/machinery/washing_machine, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/barber, +/area/crew_quarters/sleep) +"dhB" = ( +/obj/item/clothing/glasses/meson, +/obj/structure/closet/crate, +/obj/item/weapon/poster/random_contraband, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"dhC" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/stack/sheet/cardboard, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/item/weapon/paper, +/obj/item/weapon/storage/box/lights/mixed, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/sorting{ + name = "\improper Warehouse" + }) +"dhD" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet{ + name = "\improper Restrooms" + }) +"dhE" = ( +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"dhF" = ( +/obj/structure/closet/wardrobe/pjs, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault, +/area/crew_quarters/sleep) +"dhG" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/brown/corner{ + dir = 4 + }, +/area/construction/Storage{ + name = "Storage Wing" + }) +"dhH" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/spawner/lootdrop/maintenance, +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"dhI" = ( +/obj/machinery/vending/assist, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/storage/primary) +"dhJ" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/portable_atmospherics/pump, +/obj/effect/turf_decal/delivery, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"dhK" = ( +/obj/structure/closet, +/obj/item/weapon/poster/random_contraband, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"dhL" = ( +/obj/structure/table, +/obj/item/device/analyzer, +/obj/machinery/power/apc{ + dir = 2; + name = "Tool Storage APC"; + pixel_x = 0; + pixel_y = -27 + }, +/obj/structure/cable/yellow, +/obj/item/weapon/wrench, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/brown{ + dir = 10 + }, +/area/storage/primary) +"dhM" = ( +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 0; + pixel_y = 21 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/arrival{ + dir = 5 + }, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"dhN" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating{ + icon_state = "panelscorched" + }, +/area/maintenance/starboard) +"dhO" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"dhP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"dhQ" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + req_access_txt = 1 + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"dhR" = ( +/obj/structure/closet, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/item/weapon/poster/random_contraband, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"dhS" = ( +/obj/machinery/vending/cigarette, +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/crew_quarters/toilet{ + name = "\improper Auxiliary Restrooms" + }) +"dhT" = ( +/obj/structure/sign/poster/random, +/turf/closed/wall, +/area/crew_quarters/bar) +"dhU" = ( +/obj/structure/piano, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, +/turf/open/floor/carpet, +/area/crew_quarters/theatre) +"dhV" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, +/turf/open/floor/carpet, +/area/crew_quarters/theatre) +"dhW" = ( +/obj/structure/table/wood, +/obj/item/weapon/staff/broom, +/obj/item/weapon/wrench, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"dhX" = ( +/obj/structure/table/wood, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/clothing/head/sombrero, +/obj/structure/sign/poster/random{ + pixel_x = 32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"dhZ" = ( +/obj/structure/urinal{ + pixel_y = 29 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 + }, +/turf/open/floor/plating, +/area/crew_quarters/toilet{ + name = "\improper Auxiliary Restrooms" + }) +"dib" = ( +/obj/structure/table/wood, +/obj/item/weapon/lipstick{ + pixel_y = 5 + }, +/obj/machinery/camera{ + c_tag = "Theatre - Stage"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/device/instrument/guitar, +/obj/structure/sign/poster/random{ + pixel_x = 32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"dic" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/arrival{ + dir = 4 + }, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"did" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"dif" = ( +/obj/item/weapon/soap/nanotrasen, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/structure/table/wood, +/obj/structure/sign/poster/random{ + pixel_x = 32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"dig" = ( +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"dih" = ( +/obj/machinery/light/small, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/crew_quarters/toilet{ + name = "\improper Auxiliary Restrooms" + }) +"dii" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 8; + icon_state = "right"; + name = "Theatre Stage"; + req_access_txt = "0" + }, +/obj/structure/sign/poster/random{ + pixel_y = -32 + }, +/turf/open/floor/carpet, +/area/crew_quarters/theatre) +"dij" = ( +/obj/item/device/instrument/violin, +/obj/structure/table/wood, +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 29 + }, +/obj/structure/sign/poster/random{ + pixel_y = -32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"dik" = ( +/obj/structure/sign/poster/official/random, +/turf/closed/wall, +/area/crew_quarters/kitchen) +"dil" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/item/clothing/mask/pig, +/obj/item/weapon/bikehorn, +/obj/structure/table/wood, +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"dim" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/structure/sign/poster/contraband/clown{ + pixel_x = 32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"din" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"dio" = ( +/obj/structure/closet/crate, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/item/weapon/poster/random_official, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"dip" = ( +/obj/structure/table/wood, +/obj/machinery/button/door{ + id = "corporate_privacy"; + name = "corporate showroom shutters control"; + pixel_x = 28; + pixel_y = 0; + req_access_txt = "19" + }, +/obj/item/weapon/poster/random_official, +/obj/item/weapon/poster/random_official, +/obj/item/weapon/poster/random_official, +/obj/item/weapon/poster/random_official, +/obj/item/weapon/poster/random_official, +/obj/item/device/paicard{ + desc = "A real NanoTrasen success, these personal AIs provide all of the companionship of an AI without any law related red-tape."; + name = "NanoTrasen-brand personal AI device exhibit" + }, +/turf/open/floor/carpet, +/area/assembly/showroom{ + name = "\improper Corporate Showroom" + }) +"diq" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/item/clothing/mask/horsehead, +/obj/structure/table/wood, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_x = -32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"dir" = ( +/obj/item/clothing/mask/fakemoustache, +/obj/item/clothing/mask/cigarette/pipe, +/obj/machinery/camera{ + c_tag = "Theatre - Backstage"; + dir = 1; + network = list("SS13") + }, +/obj/structure/table/wood, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"dis" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"dit" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"diu" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/item/weapon/storage/box/lights/mixed, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"div" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"diw" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + on = 1 + }, +/obj/machinery/firealarm{ + pixel_y = 29 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"dix" = ( +/obj/structure/rack, +/obj/item/weapon/poster/random_contraband, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint2{ + name = "Port Maintenance" + }) +"diy" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -2; + pixel_y = 8 + }, +/obj/item/weapon/poster/random_contraband, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/sign/poster/official/cleanliness{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"diA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + req_access_txt = 1 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/plating{ + icon_state = "panelscorched" + }, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diB" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diC" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diD" = ( +/obj/machinery/vending/cigarette, +/obj/machinery/status_display{ + density = 0; + layer = 4; + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/medical/research{ + name = "Research Division" + }) +"diE" = ( +/obj/structure/rack, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka{ + pixel_x = 3; + pixel_y = 2 + }, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vermouth{ + pixel_x = -4; + pixel_y = 3 + }, +/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/wood, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diF" = ( +/obj/structure/chair/stool, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/wood, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diG" = ( +/obj/structure/chair/stool, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/plating{ + icon_state = "platingdmg1" + }, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diH" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/air, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/medical/research{ + name = "Research Division" + }) +"diI" = ( +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/poster/random_contraband, +/obj/item/weapon/reagent_containers/food/drinks/beer{ + pixel_x = -3; + pixel_y = 2 + }, +/obj/item/weapon/reagent_containers/food/drinks/ale, +/obj/structure/table/wood, +/obj/item/device/instrument/eguitar, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diJ" = ( +/obj/structure/light_construct/small, +/obj/structure/table/wood/poker, +/obj/item/toy/cards/deck, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/wood, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diK" = ( +/obj/item/weapon/dice/d20, +/obj/item/weapon/dice, +/obj/structure/table/wood, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diL" = ( +/obj/item/weapon/tank/internals/air, +/obj/item/weapon/tank/internals/air, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/obj/machinery/space_heater, +/obj/effect/spawner/lootdrop/maintenance, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diM" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diN" = ( +/obj/structure/chair/stool, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/cafeteria{ + dir = 5 + }, +/area/medical/medbay3{ + name = "Medbay Aft" + }) +"diP" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diQ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating{ + icon_state = "platingdmg2" + }, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diR" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/item/weapon/ore/slag, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diS" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/item/weapon/storage/box/lights/mixed, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diT" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diU" = ( +/obj/structure/closet/crate, +/obj/item/weapon/poster/random_official, +/obj/effect/spawner/lootdrop/maintenance, +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diV" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "Departure Lounge - Port Fore"; + dir = 4; + network = list("SS13") + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-24"; + layer = 4.1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"diW" = ( +/obj/machinery/hydroponics/soil{ + pixel_y = 8 + }, +/obj/item/seeds/glowshroom, +/obj/item/seeds/corn, +/obj/effect/turf_decal/stripes/line, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/aft{ + name = "Aft Maintenance" + }) +"diX" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/space, +/area/toxins/xenobiology) +"djg" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"djh" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"djj" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/machinery/camera{ + c_tag = "Chapel - Funeral Parlour"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 2; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"djk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall, +/area/chapel/main) +"djr" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"djs" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/toxins/xenobiology) +"djt" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"dju" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"djv" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"djw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"djx" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/item/weapon/crowbar, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"djy" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"djz" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Arrival Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"djA" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Arrival Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"djB" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + icon_state = "1-4"; + d1 = 1; + d2 = 4 + }, +/obj/effect/landmark{ + name = "Observer-Start" + }, +/turf/open/floor/plasteel{ + icon_state = "L8" + }, +/area/hallway/primary/central) +"djC" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Arrival Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"djD" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Arrival Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"djE" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djF" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djG" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djH" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djI" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djJ" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djK" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djL" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djM" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 4; + icon_state = "propulsion" + }, +/obj/docking_port/mobile/arrivals, +/obj/docking_port/stationary{ + dir = 8; + dwidth = 3; + height = 15; + id = "arrivals_stationary"; + name = "arrivals"; + width = 7 + }, +/turf/open/floor/plating, +/area/shuttle/arrival) +"djN" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djO" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djP" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djQ" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"djR" = ( +/obj/machinery/door/airlock/titanium{ + name = "Arrivals Shuttle Airlock" + }, +/turf/open/floor/plating, +/area/shuttle/arrival) +"djS" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Arrival Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"djT" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Arrival Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"djU" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Arrival Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"djV" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Arrival Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"djW" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/weapon/paper, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"djX" = ( +/obj/structure/closet/coffin, +/obj/machinery/door/window/eastleft{ + name = "Coffin Storage"; + req_access_txt = "22" + }, +/turf/open/floor/plating, +/area/chapel/main) +"djY" = ( +/obj/machinery/computer/secure_data{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"djZ" = ( +/obj/structure/chair/office/dark{ + dir = 8; + name = "tactical swivel chair" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dka" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dkb" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dkc" = ( +/obj/structure/chair/office/dark{ + dir = 4; + name = "tactical swivel chair" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dkd" = ( +/obj/structure/table/reinforced, +/obj/machinery/ai_status_display{ + pixel_x = 32 + }, +/obj/item/weapon/storage/fancy/donut_box, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"dke" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"dkf" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkg" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkh" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dki" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkj" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dkk" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkl" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkm" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkn" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dko" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dkp" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"dkq" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkr" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dks" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"dkt" = ( +/obj/item/weapon/storage/toolbox/syndicate, +/obj/item/weapon/crowbar/red, +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/shuttle/syndicate) +"dku" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"dkv" = ( +/obj/structure/chair{ + name = "tactical chair" + }, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"dkw" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"dkx" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"dky" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"dkz" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"dkA" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dkB" = ( +/obj/structure/chair{ + dir = 1; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"dkC" = ( +/obj/structure/chair{ + dir = 1; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"dkD" = ( +/obj/structure/rack, +/obj/item/clothing/suit/space/syndicate/black/red, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"dkE" = ( +/obj/machinery/ai_status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"dkF" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dkG" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"dkH" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dkI" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkJ" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"dkK" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkL" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 9 + }, +/area/shuttle/syndicate) +"dkM" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"dkN" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"dkO" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"dkP" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"dkQ" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"dkR" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"dkS" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"dkT" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/shuttle/syndicate) +"dkU" = ( +/obj/structure/closet/syndicate/personal, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"dkV" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker, +/obj/item/weapon/reagent_containers/dropper, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"dkW" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/shuttle/syndicate) +"dkX" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"dkY" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"dkZ" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"dla" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"dlb" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"dlc" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"dld" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"dle" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"dlf" = ( +/obj/machinery/door/window{ + dir = 1; + name = "Technological Storage"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"dlg" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/table/reinforced, +/obj/item/device/aicard, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"dlh" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"dli" = ( +/obj/structure/chair, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"dlj" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"dlk" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"dll" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"dlm" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"dln" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"dlo" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"dlp" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"dlq" = ( +/obj/structure/chair, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"dlr" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"dls" = ( +/obj/machinery/holopad, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"dlt" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"dlu" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"dlv" = ( +/obj/structure/table, +/obj/item/stack/medical/gauze, +/obj/item/stack/medical/bruise_pack, +/obj/item/stack/medical/ointment, +/obj/machinery/status_display{ + dir = 8; + pixel_x = 32; + pixel_y = 0 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"dlw" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"dlx" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"dly" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/shuttle/escape) +"dlz" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"dlA" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"dlB" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/mining) +"dlC" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"dlD" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"dlE" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"dlF" = ( +/obj/machinery/light/small, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"dlG" = ( +/obj/machinery/light, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"dlH" = ( +/obj/machinery/sleeper{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) (1,1,1) = {" aaa @@ -100180,16 +99984,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aad +aae +aae +aae +aae +aae +aae +aae +aae +cTM aaa aaa aaa @@ -100431,51 +100235,51 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aad aae aae aae aae -daz aae aae -aae -cTM +cUb +cUm +cUb +dkV +cUz +cUF +dby +cUK +cUP +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -100688,51 +100492,51 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad aae +cTV +dkp +dkp +dkp +dky aae -aae -aae -aae -aae -cUb -cUm -cUb -cTZ -cUz -cUF -dby +dkx +cTJ +dkf +dkf +cUy +dkf +dbx cUK -cUP +cUO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -100945,51 +100749,51 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aae -cTV -cTV -cTV -cTV -cTV -aae -cTZ -cTZ -cTZ -cTZ -cUy -cTZ -dbx +dkf +dkf +dkf +dkf +dkf +dkE +cUk +cTJ +dkL +dkW +cUB +cUI +dbz cUK -cUO +cUQ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -101195,58 +100999,58 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aad +aae +aae +aae +cTM aaa aaa aae -bRb -bRb -bRb -bRb -bRb +dkf +dkf +dkf +dkf +dkf aae -cUk -cTZ -cTZ -cTZ -cUB -cUI -dbz -cUK -cUQ +cUc +cTJ +dkM +dku +cUA +aae +aae +aae +daT +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -101452,58 +101256,58 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad aae +bSm +cTH +cTJ aae -aae -cTM -aaa +dbG aaa aae -bRb -cSH -bRb -bRb -bRb +cTW +cTY +cTI +dkx +dkz aae -cUc -cTZ -cTZ -cTZ -cUA +cUl +cTJ +dkM +dku +cUE aae -aae -aae -daT +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -101709,55 +101513,55 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -bSm -cTH +aPc +bRb +djZ cTJ aae -day +aae +aae +aae +aae +aae +aae +cUd +cUg +aae +aae +aae +cUv +cUg +aae +aae +aae +cTM +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa -aae -cTW -cTY -cTI -bRb -bRb -aae -cUl -cTZ -cTZ -cTZ -cUE -aae aaa aaa aaa @@ -101966,57 +101770,57 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aPc -bRb -bRb -bRb -aae -aae -aae -aae -aae -aae -aae -cUd -cUf -aae -aae -cUs -cUv -cUw -aae -aae -aae -cTM +cTE +dka +cTJ +dke +cTP +dkg +dki +dkg +dkg +cUg +dkf +dkf +dkf +dkf +dkI +dkM +dku +cTJ +cUg +cUK +cUP +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -102223,57 +102027,57 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aPc -cTE -bRb -bRb -aae -cTP -bRb -bRb -bRb -bRb -cUg -bRb -bRb -cUi -bRb -bRb -bRb -bRb -bRb -cUg +cRQ +bPB +cTJ +cTN +dkf +dka +dka +dka +dkf +cTU +dkf +dka +dka +dka +dka +dkM +dku +cTJ +cUJ cUK -cUP +cUO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -102480,57 +102284,57 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aPc -cRQ -bPB -bRb -cTN -bRb -bRb -bRb -bRb -bRb -cTU -bRb -bRb -bRb -bRb -bRb -bRb -bRb -bRb -cUJ +cTG +dka +cTJ +aae +cTQ +cTS +dkk +cTS +cTS +cUg +dkf +dkf +dkf +dkf +dkK +dkM +dku +cTJ +cUg cUK -cUO +cUQ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -102737,57 +102541,57 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aPc -cTG -bRb -cTK +cTF +dkc +cTJ aae -cTQ -cTS -cTS -cTS -cTS +aae +aae +cpV +aae +aae +aae +cUe cUg -bRb -bRb -bRb -bRb -bRb -bRb -bRb -bRb +aae +aae +aae +cUv cUg -cUK -cUQ +aae +aae +aae +cTO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -102994,57 +102798,57 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aPc -cTF -bRb -bRb aae +djY +dkd +cTJ aae +daT +aaa +aaa +aaa aae -cpV +dkt +dkf +dkB aae +cUo +cTJ +dkM +dku +cUD aae -aae -cUe -cUg -aae -aae -aae -cUt -cUx -aae -aae -aae -cTO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -103251,56 +103055,56 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaW +aae aae -cTF -bRb -cTL aae cTO aaa aaa aaa +aaa +cTl +dku +dkf +dkB aae -bRb -bRb -bRb +cUn +cTJ +dkM +dku +cUC aae -cUo -bRb -bRb -bRb -cUD -cUG aae +aae +dbG +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -103389,7 +103193,7 @@ cWR cWZ cXk cXy -cWo +dlm cVF cXU cYf @@ -103517,6 +103321,25 @@ aaa aaa aaa aaa +cTv +dkv +dkf +dkD +dke +cUq +cTJ +dkT +dle +cUB +dkf +abd +cUK +cUP +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -103537,29 +103360,10 @@ aaa aaa aaa aaa -aaW -aae -aae -aae -cTO aaa aaa aaa aaa -cTl -bRb -bRb -bRb -aae -cUn -bRb -bRb -bRb -cUC -aae -aae -aae -dbG aaa aaa aaa @@ -103774,49 +103578,49 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cTv -bRb -bRb -bRb +aaW aae -cUq -bRb -bRb -bRb -bRb -bRb -abd +aae +aae +aae +cUp +cTJ +dkf +dkf +dlf +dkf +dbA cUK -cUP +cUO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -104034,46 +103838,46 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaW +cUa aae -aae -aae -aae -cUp -cSH -bRb -bRb -bRb -bRb -dbA +cUr +cTJ +dkU +cUj +dlg +dkK +abd cUK -cUO +cUQ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -104292,45 +104096,45 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -cUa +aaW aae -cUr -cUu -bRb -cUj -cUj -bRb -cUh -cUK -cUQ +aae +aae +aae +aae +aae +aae +aae +cTO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -104578,16 +104382,16 @@ aaa aaa aaa aaa -aaW -aae -aae -aae -aae -cpV -aae -aae -aae -cTO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -105156,11 +104960,11 @@ aWS aaf aaf aaa -bcR +bcS bcS bcU bcS -bcR +bcS aaa aaf aaf @@ -105184,14 +104988,14 @@ cVW cWn cVF cVF -cWo +dll cXb cXn cXb cXG cVF cXY -cXa +dlo cYx cVF aaa @@ -105427,7 +105231,7 @@ aWU aRA aaa cVn -cVv +dlF cVn aaa aRA @@ -105671,9 +105475,9 @@ aaf aaf aaa bcS -bgq +dli beC -bjU +dlj bcS aaa aaf @@ -105696,7 +105500,7 @@ bOd cVI cVY cWp -cWo +dlk cWL cVY cWo @@ -105705,7 +105509,7 @@ cVY cWo cVF cXa -cXa +dlp cYy cVF aaa @@ -105926,13 +105730,13 @@ aWV aRA aaa aaa -bcR +bcS bcS bcS bcT bcS bcS -bcR +bcS aaa aaa aRA @@ -105959,7 +105763,7 @@ cWo cXa cXs cXa -cWo +dln cVF cVF cVF @@ -106437,24 +106241,24 @@ aDb aDb aVu aWU -aYD +djz aZZ -aYD +djC bcT beC -bgr -bgr -bgr +djE +djE +djE beC -bnJ -aYD +djR +djz bsk -aYD +djC aVu bxu aRA cVn -cVv +dlE cVv cVv cVn @@ -106699,9 +106503,9 @@ aWS aWS bcS beD -bgs -bgs -bgs +beC +beC +beC blO bcS aWS @@ -106956,9 +106760,9 @@ baa aWS bcU beE -bgr -bgr -bgr +djE +djE +djE beC bcU aWS @@ -106970,7 +106774,7 @@ aWS cVn cVv cVv -cVv +dlG cVn aWS bKU @@ -107213,9 +107017,9 @@ baa aWS bcS beF -bgs -bit -bgs +beC +beC +beC blP bcS aWS @@ -107470,9 +107274,9 @@ bab aWS bcS beG -bgr -bgr -bgr +djE +djE +djE blQ bcS aWS @@ -107727,9 +107531,9 @@ bac aWS bcU beH -bgs -bgs -bgs +beC +beC +beC beC bcU aWS @@ -107984,9 +107788,9 @@ aWS aWS bcS beI -bgr -bgr -bgr +djE +djE +djE blR bcS aWS @@ -108236,9 +108040,9 @@ aSL aDb cZq aWZ -aYD +djz aZZ -aYD +djC bcT beC beC @@ -108246,9 +108050,9 @@ beC beC beC bcT -aYD +djz bsk -aYD +djC bvH bMw aRA @@ -108753,13 +108557,13 @@ aXa aYF aWS aaa -bcR +bcS beJ bgu -bgu +djM bgu blS -bcR +bcS aaa aWS btR @@ -109026,13 +108830,13 @@ biv bBd bCH bEn -bQL +dic bHI bJo bKW bMB alK -bPE +dio asa alK bTn @@ -109508,18 +109312,18 @@ aip alK bPN aDc -cVP +dhE aob aob cWA auG ako -aDd +dhK alC aRG aSP alK -bnj +dhM aXd aYI bae @@ -110323,7 +110127,7 @@ cgH alK aob aob -bXw +dix alK aaf aaf @@ -110531,7 +110335,7 @@ aaa awN ayg azh -azh +dlB azi aDe awN @@ -110541,7 +110345,7 @@ cUV cUV cUV cUV -cUV +dlD cUV cUV cUV @@ -110568,7 +110372,7 @@ bzy bBf bCL bEq -bQM +did bHK bJt bKY @@ -110830,7 +110634,7 @@ bBh bJu bKZ bMC -bWW +din bzx auF bSr @@ -111051,7 +110855,7 @@ aDg awN aaa cUS -cUV +dlC cUV cUV cUV @@ -111584,7 +111388,7 @@ bbK beR bbK bcW -bAw +dhP blV baE baE @@ -111593,7 +111397,7 @@ baE bvN bxK bzx -bIz +djW bCN bBg bBg @@ -111836,7 +111640,7 @@ aaa aaf alK baj -bxR +dhO bdd beS bgC @@ -111854,7 +111658,7 @@ bBk bNh bNK bBg -bQP +dig bJx bLa bMD @@ -112123,7 +111927,7 @@ bTs bUT bVW bXA -bYF +diy bTs cbr bYE @@ -112131,7 +111935,7 @@ cem cfB cbp bTs -cwl +diE ckQ ckP cni @@ -112364,7 +112168,7 @@ btZ bvV bxN bvW -bID +dhZ bCP bvW bGl @@ -112395,7 +112199,7 @@ cnj cjt ckP cjt -cKd +diJ bTs bTs ack @@ -112632,7 +112436,7 @@ aod aGN aqK alK -cgK +dit bTs bUV ctq @@ -112645,7 +112449,7 @@ ceo bTs cdc bTs -cyS +diF cjt cjt cjt @@ -113139,7 +112943,7 @@ bBn bCS bBn bQN -bSb +dih bvW bLe bMF @@ -113160,13 +112964,13 @@ cfC cdc bTs cjv -czM +diG bTs cnl cox bTs -cIo -cKt +diI +diK bTs bTs bTs @@ -113390,7 +113194,7 @@ bqo bsz buc bvW -bCO +dhS bvW bBo bvW @@ -113607,7 +113411,7 @@ alA amQ anY ahp -aqe +dhu asa atu alC @@ -114185,7 +113989,7 @@ cbx cdh bXE bTs -ctI +diC cia cjw ckU @@ -114385,7 +114189,7 @@ auH avO awR ayl -aBR +dhy aAL aBZ aDl @@ -114417,7 +114221,7 @@ boa bqq bsD alK -bvZ +dhR aoa alC bBq @@ -114646,7 +114450,7 @@ azs aAM aCa aDm -aLI +dhC ayl aHg aIo @@ -114997,8 +114801,8 @@ aaa aaa aaf aaf -aaf -aaf +aaa +aaa aaa aaa aaa @@ -115255,8 +115059,8 @@ aaa aaa aaf aaa -aaf -aaf +aaa +aaa aaa aaa aaa @@ -115403,7 +115207,7 @@ aio ajj akp alG -amV +dhq aoc alG aoc @@ -115509,12 +115313,12 @@ cMI cPA cPA cPA -cPA cMI cPA cMI -aaf -aaf +aaa +aaa +aaa aaa aaa aaa @@ -115657,7 +115461,7 @@ aaf aaa aaf aip -ajk +dho akq alH amW @@ -115765,13 +115569,13 @@ cLa cMI cPB cPZ -cPZ cQT cMI cRE cPA aaa -aaf +aaa +aaa aaa aaa aaa @@ -116021,14 +115825,14 @@ cTf cNt cMI cPC -cPC -cQw +djX cPC cMI cRF cMI aaa -aaf +aaa +aaa aaa aaa aaa @@ -116233,7 +116037,7 @@ bRj bSB bPR bue -clM +div bXI bTs bTs @@ -116253,7 +116057,7 @@ crq csq cia bTs -cMn +diM cwm cNf ceu @@ -116280,12 +116084,12 @@ cLa cMI cQa cPH -cPH cRj cRG cMI -aaf -aaf +aaa +aaa +aaa aaa aaa aaa @@ -116537,12 +116341,12 @@ cLa cPD cQb cQx -cQx cQb cRH cPA aaa -aaf +aaa +aaa aaa aaa aaa @@ -116693,7 +116497,7 @@ alK alK alK agq -atF +dhx auN aaa awW @@ -116705,7 +116509,7 @@ aDp aaa aFP aHo -aVo +dhG alK aLc alK @@ -116793,13 +116597,13 @@ cOG cLa cPE cQb -cQy cQx cQb cRI cPA aaa -aaf +aaa +aaa aaa aaa aaa @@ -117039,7 +116843,7 @@ cBR cGI cBR clK -cPy +diQ cKq bTs cLW @@ -117050,13 +116854,13 @@ cOH cLa cPF cQb -cRp -cQU -cQb +djj +djr cRq cPA aaa -aaf +aaa +aaa aaa aaa aaa @@ -117288,7 +117092,7 @@ cxU cyP czQ cAU -cNV +diN cxU cDL bTs @@ -117307,13 +117111,13 @@ cOI cPk cPG cQc -cQz -cMI +djk cRl cRJ cMI aaa -aaf +aaa +aaa aaa aaa aaa @@ -117485,7 +117289,7 @@ aPn aQu aRO aTa -bgp +dhL aJN aXt alK @@ -117564,13 +117368,13 @@ cOJ cPl cPH cQd -cQA -cMI +cTo cRm cRK cRP aaa -aaf +aaa +aaa aaa aaa aaa @@ -117810,7 +117614,7 @@ cxU cGL cxU cxU -cgM +diR cPW bTs cLZ @@ -117820,14 +117624,14 @@ cLa cOK cLa cPI -cQe -cTx +cQb +cTo cMI cMI cMI -cMI -aaf -aaf +aaa +aaa +aaa aaa aaa aaa @@ -118067,7 +117871,7 @@ cFQ cGJ cHB cxU -cJp +diS cKs bTs cMa @@ -118763,7 +118567,7 @@ aFV aHu aID aJN -aZT +dhI aME aNW aMB @@ -119010,7 +118814,7 @@ atJ auS avV auQ -ayt +dlA ayt ayt aCi @@ -119120,7 +118924,7 @@ cYO cZy cZe cYV -cYV +dly cYV cYV dae @@ -119630,10 +119434,10 @@ cZS cYO cYO cYO -cYO +dlt cYO cZV -cZG +dlx cZe dad dad @@ -120140,11 +119944,11 @@ cRr cMI cZe cZK +dlr cYO cYO cYO -cYO -cYO +dlr cZK cZe cZD @@ -120897,7 +120701,7 @@ bTs cJy cKv cLl -cQQ +diV cMS cNJ cOp @@ -120920,7 +120724,7 @@ cZo cZe cZF cZY -cZY +dlz cZE cZe aaa @@ -121166,8 +120970,8 @@ cQK cPv cPv cPv -cYF -cZi +cZe +dlq cYO cZo cYF @@ -121406,7 +121210,7 @@ cEa cCf cCf cCe -ctI +diC bTs cJA cKx @@ -122203,7 +122007,7 @@ cZi cYO cZo cYF -cZN +dlH cZN cYO cZs @@ -122715,7 +122519,7 @@ cZo cYF cZi cYO -cZo +dlw cZe cZO dac @@ -123142,7 +122946,7 @@ aTj aUD aWf aXN -aZj +djB baS bci aaf @@ -123630,7 +123434,7 @@ ama anr adY adY -arh +dhv aoA adY avb @@ -123996,11 +123800,11 @@ aaf cZe cYN cYM +cYO +dls +cYO +dlv cYN -cYO -cZu -cYO -cYR cZg cZX cZW @@ -124252,11 +124056,11 @@ aaf aaf cZe cZe -cYF cZe cYF -cZe cYF +cYF +cZe cZe cZe cZe @@ -124452,7 +124256,7 @@ aaf bLv bNk bOF -bQo +dip bRG bSI bTS @@ -124475,7 +124279,7 @@ cpe cqy cgd csO -cMc +diL cuD cvH cwI @@ -125533,11 +125337,6 @@ aaa aaa aaa aaa -aaf -aaa -aaa -aaa -aaf aaa aaa aaa @@ -125553,7 +125352,12 @@ aaa aaa aaa aaa -aaf +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -125786,31 +125590,31 @@ aaf aaf aaf aaf -aaf -aaf -aaa -aaa -aaf -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaf aaa aaa aaa aaa aaa aaa -aaf aaa aaa -aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -126044,39 +125848,39 @@ aaf aaa aaa aaa -cRu -cRi -cRi -cRi -cRi -aaf -aaa -aaf -aaf aaa aaa -aaf -aaf -aaf -aaa -aaf -aaf -aaf aaa aaa -aaf -aaf -aaf -aaf -aaf aaa -aaf -aaf aaa -aaf -aaf -aai -aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -126301,40 +126105,40 @@ cRe cRe cRe cRe -cRi -dbX -dcg -dcs -cRi -dcE -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -aaf -aaa -aaa -aaf +cRe +cRe +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa -aaf aaa -aag -aag aaa aaa aaa @@ -126558,40 +126362,40 @@ cYT cRg cYT cYT -cRv -dbY -dch -dct -dcz -dcF -cRi -cSh -cSp -cSy -cSd -cSh -dbo -cSy -cSd -cSh -dbs -cSn -cRi -dde -ddj -cTp -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi +djg +cRe +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa -aai aaa aaa aaa @@ -126815,40 +126619,40 @@ cRe cRe cRe cRe -cRi -dbZ -dci -dcu -cRi +cZa cRe -cRi -cSg -cSo -cSn -cSd -cSg -cSo -cSn -cSd -cSg -cSo -cSn -cRi -cTA -cTn -cTC -cTC -cTC -cTC -cTC -cTC -cTC -daO -bIx -cRi -aaf -aaf -aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -127071,42 +126875,42 @@ aaa aaf aaa aaa +cRe +cZa +cRe aaa -cRw -cRi -dcj -cRx -cRi -cRD -cSd -cSg -cSn -cSn -cSd -cSg -cSn -cSn -cSd -cSg -cSn -cSn -cRi -cRi -cTq -cRi -cRi -cRi -cRi -cRi -cRi -cRi -daP -cLE -cRi aaa aaa aaf -aag +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -127328,42 +127132,42 @@ aaa aaf aaa aaa +cRe +cZa +cRe aaf -cRi -cRh -dck -cRz -cRB -cRN -cSd -cRU -cSq -cRZ -cSd -dcP -cSN -cSD -cSd -dcU -cTc -dcX -cSd -ddf -ddk -cTj -cTD -cRi -cSn -daF -daJ -cRi -bvT -cRi -cRi -cRi -cRi aaa -aai +aaa +aaf +aaf +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -127544,7 +127348,7 @@ aYX bWF bYb bZp -cri +diA crJ cdT ceY @@ -127585,41 +127389,41 @@ aaf aaf aaf aaa -aaa +cRe +cZa +cRe +cRu cRi -dca -dcl -cRy -cRA -cRM -cRa -cSj -cSs -cSB -cSI -cSj -cSO -cSS -cSI -cSj -cTb -cST -cSd -cSL -cVa -cTr -cRY -daC -cSn -cSn -cSn cRi -bvT -cRi -cZv -cZv cRi +bpu aaf +aaa +aaf +aaf +aaa +aaa +aaf +aaf +aaf +aaa +aaf +aaf +aaf +aaa +aaa +aaf +aaf +aaf +aaf +aaf +aaa +aaf +aaf +aaa +aaf +aaf +aai aag aaa aaa @@ -127809,7 +127613,7 @@ cgn bTs bZS ckl -cAR +diH cgo cof cpr @@ -127835,50 +127639,50 @@ cIc cIW cJT cIg -cQu +diT cMp ckN aaa aaa aaf aaf -aaf cRe -cRS -dcm -dcv -cRC -dcG -cSe -cSi -cSr -cSA -cSG -cSK -cSr -cSA -cSW -cSK -cSr -dcY -ddc -cSk -ddl -cTk -cTm -daB -daB -daG -cSn +cZa +cRe cRi -ddx -ddz -daR -cZv -cRe +dbX +dcg +dcs +cRi +dcE +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +aaf +aaa +aaa +aaf aaa aaa aaa +aaf +aaa +aag +aag aaa aaa aaa @@ -128099,44 +127903,44 @@ bTs bTs bTs bTs -aaf cRe -cRS -dcn -dcw -cRk -dcH -cSf -cSl -cSu -cSa -cSJ -cSJ -cUM -cUN -cSJ -cSJ -cSJ -cSV -cSJ -cSX -ddm -cTt -daA -cSn -cSn -cSo -daL +djh +cYT +cRv +dbY +dch +dct +dcz +djs +cRi +cSh +cSp +cSy +cSd +cSh +dbo +cSy +cSd +cSh +dbs +cSn +cRi +dde +ddj +cTp +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi cRi -daQ -ddA -daS -dbv -cTT -ddC -aaf aaa aaa +aai +aaa aaa aaa aaa @@ -128356,43 +128160,43 @@ cgs cOB cPf bTs -aaf cRe -cRS -dco -dcx -dcA -dcI -cRR -cRV -cRX -cSb -dcO -dcQ -cRX -cSb -dcT -dcQ -cRX -dcZ -ddd -cTa -ddn -cTs -ddu -daD -cSn -daH -daK +cRe +cRe +cRi +dbZ +dci +dcu cRi -bIv -ddz -ddB -cZv cRe -aaa +cRi +cSg +cSo +cSn +cSd +cSg +cSo +cSn +cSd +cSg +cSo +cSn +cRi +cTA +cTn +cTC +cTC +cTC +cTC +cTC +cTC +cTC +daO +bIx +cRi aaf -aaa +aaf +aag aaa aaa aaa @@ -128520,7 +128324,7 @@ avk awy axA ahx -aEC +dhz aoP agq aDP @@ -128553,14 +128357,14 @@ bmO bmM bmO bmP -bDL +dhT bmP bBS bDC bFj bGY bmP -bSN +dik bKe bNv bOP @@ -128614,40 +128418,42 @@ bXE cPg bTs aaa +aaa +aaa +cRw cRi -dcb -cZa -cSt -dcB -dcJ -cRa -cSm -cSw -cSE -cSI -cSM -cSR -cSE -cSI -dcV -cTe -dda +dcj +cRx +cRi +cRD cSd -cSZ -ddn -cTz -ddv -daC +cSg +cSn +cSn +cSd +cSg +cSn +cSn +cSd +cSg cSn cSn -daN cRi -cTA cRi -cZv -dbw +cTq +cRi +cRi +cRi +cRi +cRi +cRi +cRi +daP +cLE cRi aaa +aaa +aaf aag aaa aaa @@ -128681,8 +128487,6 @@ aaa aaa aaa aaa -aaa -aaa "} (129,1,1) = {" aaa @@ -128871,43 +128675,43 @@ bXE cPh bTs aaa +aaa +aaf cRi -dcc -dcp -cSt -cSt -dcK +cRh +dck +cRz +cRB +cRN cSd -cRW -cSv -cSc +cRU +cSq +cRZ cSd -dcR -cSQ -dcS +dcP +cSN +cSD cSd -dcW -cTg -ddb +dcU +cTc +dcX cSd -ddg -ddo -dds +ddf +ddk +cTj cTD cRi -daE -daI -daM +cSn +daF +daJ cRi -cTA +bvT cRi cRi cRi cRi -aaf -aag -aaa aaa +aai aaa aaa aaa @@ -129025,7 +128829,7 @@ ajO ala amt agq -anz +dhr ajD ajD ajD @@ -129127,40 +128931,42 @@ cNW cOC bTs bTs -aaf -cRi -dcd -dcq -dcy -cSt -dcL -cSd -cSn -cSn -cSg -cSd -cSn -cSn -cSg -cSd -cSn -cSn -cSg -cRi -cRi -ddp -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cTA -cRi -aaf aaa aaa +aaa +cRi +dca +dcl +cRy +cRA +cRM +cRa +cSj +cSs +cSB +cSI +cSj +cSO +cSS +cSI +cSj +cTb +cST +cSd +cSL +cVa +cTr +cRY +daC +cSn +cSn +cSn +cRi +bvT +cRi +cZv +cZv +cRi aaf aag aaa @@ -129195,8 +129001,6 @@ aaa aaa aaa aaa -aaa -aaa "} (131,1,1) = {" aaa @@ -129348,7 +129152,7 @@ cct cdU cfc cgo -cwk +diD ciR ckq clR @@ -129385,41 +129189,41 @@ cOD cPi bTs aaa -cRi -dce -cSt -cSt -dcC -dcM -cSd -cSn -cSo -cSg -cSd -cSn -cSo -cSg -cSd -cSn -cSo -cSg -cRi -ddh -ddq -ddt -ddt -ddt -ddt -ddw -cTA -cTA -ddy -cRi -aaf -aaf -aaa -aai aaa +aaf +cRe +cRS +dcm +dcv +cRC +dcG +cSe +cSi +cSr +cSA +cSG +cSK +cSr +cSA +cSW +cSK +cSr +dcY +ddc +cSk +ddl +cTk +cTm +daB +daB +daG +cSn +cRi +ddx +ddz +daR +cZv +cRe aaa aaa aaa @@ -129557,7 +129361,7 @@ axC axC axC axC -bev +dhJ aNa aOy aOt @@ -129590,7 +129394,7 @@ bHb bMP bKg bLL -ddD +bNz bOT bQC bLK @@ -129636,49 +129440,49 @@ bTs cKL bTs bTs -cRd +diW cNX bVW cPj bTs aaa -cRi -dcf -dcr -dcr -dcD -dcN -cSd -cSn -cSx -cSF -cSd -cSy -dbp -cSF -cSd -cSn -dbt -cSF -cRi -ddi -ddr -cTB -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi +aaa +aaf +cRe +cRS +dcn +dcw +cRk +dcH +cSf +cSl +cSu +cSa +cSJ +cSJ +cUM +cUN +cSJ +cSJ +cSJ +cSV +cSJ +cSX +ddm +cTt +daA +cSn +cSn +cSo +daL +cRi +daQ +ddA +daS +dbv +cTT +ddC aaf -aaa -aaa -aag -aaa -aaa -aaa aaa aaa aaa @@ -129898,44 +129702,44 @@ cdg cOE cPh bTs +aaa +aaa aaf -cRi cRe +cRS +dco +dcx +dcA +dcI +cRR +cRV +cRX +cSb +dcO +dcQ +cRX +cSb +dcT +dcQ +cRX +dcZ +ddd +cTa +ddn +cTs +ddu +daD +cSn +daH +daK +cRi +bIv +ddz +ddB +cZv cRe -cRe -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi -cRi aaa aaf -aaf -aaf -aaf -aaf -aaa -aaf -aaf -aag -aag -aaf -aaa -aaa aaa aaa aaa @@ -130047,7 +129851,7 @@ acP acP acP acP -ahT +dhn aiO aje ale @@ -130067,7 +129871,7 @@ aBu aCB aDU aFg -aLM +dhD axC axC axC @@ -130144,11 +129948,11 @@ clK cdl ceu cub -cPw +diP bTs cJZ cKN -cLI +diU bTs bTs cNY @@ -130157,42 +129961,42 @@ bTs bTs aaa aaa -aaf -aaf -aaf -aaf -aaa -aaa -aaf -aaf -aaf -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaf -aaa -aaf -aaf -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aai -aaa -aaa aaa +cRi +dcb +cZa +cSt +dcB +dcJ +cRa +cSm +cSw +cSE +cSI +cSM +cSR +cSE +cSI +dcV +cTe +dda +cSd +cSZ +ddn +cTz +ddv +daC +cSn +cSn +daN +cRi +cTA +cRi +cZv +dbw +cRi aaa +aag aaa aaa aaa @@ -130415,41 +130219,41 @@ aaa aaa aaa aaa -aaa +cRi +dcc +dcp +cSt +cSt +dcK +cSd +cRW +cSv +cSc +cSd +dcR +cSQ +dcS +cSd +dcW +cTg +ddb +cSd +ddg +ddo +dds +cTD +cRi +daE +daI +daM +cRi +cTA +cRi +cRi +cRi +cRi aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aag aaa aaa aaa @@ -130611,10 +130415,10 @@ bmP bmP byB bAo -bDL +dhT bDG bFp -bDL +dhT bmP bKe bLO @@ -130672,41 +130476,41 @@ aaf aaf aaf aaf -aaa +cRi +dcd +dcq +dcy +cSt +dcL +cSd +cSn +cSn +cSg +cSd +cSn +cSn +cSg +cSd +cSn +cSn +cSg +cRi +cRi +ddp +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cTA +cRi aaf aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaf +aag aaa aaa aaa @@ -130820,7 +130624,7 @@ agt ahf ahV aiQ -aju +dhp alg alg anF @@ -130928,41 +130732,41 @@ aaa aaa aaf aaa -aaf +aaa +cRi +dce +cSt +cSt +dcC +dcM +cSd +cSn +cSo +cSg +cSd +cSn +cSo +cSg +cSd +cSn +cSo +cSg +cRi +ddh +ddq +ddt +ddt +ddt +ddt +ddw +cTA +cTA +ddy +cRi aaf aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aai aaa aaa aaa @@ -131185,41 +130989,41 @@ aaa aaa aaa aaa +aaa +cRi +dcf +dcr +dcr +dcD +dcN +cSd +cSn +cSx +cSF +cSd +cSy +dbp +cSF +cSd +cSn +dbt +cSF +cRi +ddi +ddr +cTB +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi aaf aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aag aaa aaa aaa @@ -131339,7 +131143,7 @@ alh agz agz aoV -apP +dhs arB asV auf @@ -131347,7 +131151,7 @@ arB awE axE arB -aHP +dhA aBx aCE aDZ @@ -131365,7 +131169,7 @@ aSi aTB aUT alq -bpo +dhN alq alq alr @@ -131402,7 +131206,7 @@ bWQ caL dbE bST -csG +diB cgq chx ciW @@ -131443,41 +131247,41 @@ aaa aaa aaf aaf +cRi +cRe +cRe +cRe +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi +cRi aaa +aaf +aaf +aaf +aaf +aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaf +aaf +aag +aag +aaf aaa aaa aaa @@ -131701,38 +131505,38 @@ aaf aaf aaa aaa +aaf +aaf +aaf +aaf +aaa +aaa +aaf +aaf +aaf +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaf +aaa +aaf +aaf +aaa +aaf +aaa +aaa +aaa +aaf aaa aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aai aaa aaa aaa @@ -131867,7 +131671,7 @@ aCG aEb aFm aGI -aUn +dhF aJh aKp aLU @@ -131960,20 +131764,20 @@ aaa aaa aaa aaa +aaf +aaa +aaa +aaa +aaf aaa aaa aaa aaa +aaf aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaf aaa aaa aaa @@ -132424,9 +132228,9 @@ cgF bSY bUq bKe -cmj +diw bYn -cpi +diz caS ccB bST @@ -132665,13 +132469,13 @@ brr alq alq alq -bGi +dhU bAs bBZ bBZ bFv bHg -bSJ +dii byN bKe bKe @@ -132931,9 +132735,9 @@ bHh bIA byN byN -bVD +dil bPb -caF +diq byN bTa bUs @@ -133179,7 +132983,7 @@ brt btu buU alq -bGn +dhV bAu bCb byJ @@ -133190,7 +132994,7 @@ bKq bLQ bNI bPc -cet +dir byN bTb bUt @@ -133693,18 +133497,18 @@ brv alq buV alq -bGo -bHk +dhW +dhX bCd -bNH +dib bFz -bQO -bSL +dif +dij byN bLS -bVY +dim bPe -cfe +dis byN apc bUv @@ -133910,7 +133714,7 @@ afD afD afD aqo -arF +dhw alq auo avq @@ -133919,7 +133723,7 @@ axL alq axO alq -aCL +dhB aLk aHW aYa @@ -134181,7 +133985,7 @@ avF aLJ aNS aHW -aVF +dhH aCM aCM aCM @@ -134203,7 +134007,7 @@ bjB ble bmT bpc -bBW +dhQ btw buX bwY @@ -134993,7 +134797,7 @@ bKr bNO bTf alq -cju +diu bWZ bYs bZB @@ -135451,7 +135255,7 @@ alo acP anM apb -apX +dht alq alq alq @@ -138805,7 +138609,7 @@ ddZ ded del des -deE +djt daY daZ dbb @@ -138813,7 +138617,7 @@ aMk aNv dfk dfq -deE +djt dfG dfQ dfZ @@ -139062,7 +138866,7 @@ aBQ dee aEr det -deE +djt daY daZ dbb @@ -139070,7 +138874,7 @@ dfa aNv dfk dfq -dfx +djx dfG cXz aVe @@ -139319,7 +139123,7 @@ aBQ dee aEr aKL -deE +djv daY deS dbb @@ -139327,7 +139131,7 @@ aMk aNv dfm dfq -deE +djt dbg dfR dga @@ -144306,7 +144110,7 @@ aaa aaa aaa aaa -dbB +aaa aaa aaa aaa @@ -144827,7 +144631,7 @@ aaa aaa aaa aaa -aaa +dbB aaa aaa aaa diff --git a/_maps/map_files/Mining/Lavaland.dmm b/_maps/map_files/Mining/Lavaland.dmm new file mode 100644 index 0000000000..778fb50c88 --- /dev/null +++ b/_maps/map_files/Mining/Lavaland.dmm @@ -0,0 +1,68332 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/closed/indestructible/necropolis, +/area/lavaland/surface/outdoors) +"ab" = ( +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"ac" = ( +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"ad" = ( +/turf/closed/indestructible/necropolis, +/area/lavaland/surface/outdoors) +"ae" = ( +/obj/structure/necropolis_gate, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"af" = ( +/turf/open/floor/plating/lava/smooth/lava_land_surface, +/area/lavaland/surface/outdoors) +"ag" = ( +/obj/item/device/radio/intercom{ + dir = 8; + name = "Station Intercom (General)"; + pixel_x = 28 + }, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/living_quarters) +"ah" = ( +/turf/closed/indestructible/necropolis, +/area/ruin/unpowered{ + name = "Necropolis Bridge" + }) +"ai" = ( +/turf/open/indestructible/necropolis, +/area/ruin/unpowered{ + name = "Necropolis Bridge" + }) +"aj" = ( +/turf/open/indestructible/necropolis, +/area/lavaland/surface/outdoors) +"ak" = ( +/obj/effect/light_emitter, +/turf/open/indestructible/necropolis, +/area/lavaland/surface/outdoors) +"al" = ( +/turf/closed/mineral/random/volcanic, +/area/lavaland/surface/outdoors) +"am" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"an" = ( +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"ao" = ( +/obj/structure/table, +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"ap" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aq" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/medical, +/obj/machinery/camera{ + c_tag = "Labor Camp Medical"; + dir = 8; + network = list("Labor") + }, +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"ar" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/item/weapon/storage/bag/ore, +/obj/item/weapon/pickaxe, +/obj/item/device/flashlight, +/obj/item/clothing/glasses/meson, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"as" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/item/weapon/storage/bag/ore, +/obj/item/device/flashlight, +/obj/item/weapon/pickaxe, +/obj/item/clothing/glasses/meson, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"at" = ( +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"au" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"av" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aw" = ( +/obj/machinery/door/airlock/glass_medical{ + id_tag = null; + name = "Infirmary"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"ax" = ( +/obj/structure/closet/crate/internals, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"ay" = ( +/obj/structure/table, +/obj/item/trash/plate, +/obj/item/weapon/kitchen/fork, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"az" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aA" = ( +/obj/item/device/radio/intercom{ + desc = "Talk through this. It looks like it has been modified to not broadcast."; + dir = 2; + name = "Prison Intercom (General)"; + pixel_x = 0; + pixel_y = 24; + prison_radio = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aB" = ( +/obj/machinery/door/airlock{ + name = "Labor Camp Storage" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aC" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aD" = ( +/obj/machinery/door/airlock{ + name = "Vending" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aE" = ( +/obj/machinery/door/airlock{ + name = "Labor Camp External Access" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aF" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aG" = ( +/obj/machinery/vending/sustenance, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aH" = ( +/obj/item/device/radio/intercom{ + dir = 8; + name = "Station Intercom (General)"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"aI" = ( +/obj/machinery/mineral/unloading_machine{ + dir = 1; + icon_state = "unloader-corner"; + input_dir = 1; + output_dir = 2 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aJ" = ( +/obj/machinery/camera{ + c_tag = "Labor Camp External"; + dir = 4; + network = list("Labor") + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"aK" = ( +/obj/machinery/flasher{ + id = "Labor"; + pixel_x = 0; + pixel_y = 0 + }, +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aL" = ( +/obj/machinery/mineral/processing_unit_console{ + dir = 2; + machinedir = 4 + }, +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aM" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aN" = ( +/obj/structure/closet/crate, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors/explored) +"aO" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Labor Camp Shuttle Security Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aP" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/button/door{ + id = "Labor"; + name = "Labor Camp Lockdown"; + pixel_x = 0; + pixel_y = 28; + req_access_txt = "2" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aQ" = ( +/obj/machinery/door/poddoor/preopen{ + id = "Labor"; + name = "labor camp blast door" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aR" = ( +/obj/machinery/camera{ + c_tag = "Labor Camp Central"; + network = list("Labor") + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aS" = ( +/obj/machinery/conveyor{ + dir = 8; + id = "gulag" + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aT" = ( +/obj/machinery/conveyor{ + dir = 2; + id = "gulag" + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aU" = ( +/obj/item/weapon/pickaxe, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"aV" = ( +/obj/machinery/conveyor{ + dir = 10; + icon_state = "conveyor0"; + id = "gulag" + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aW" = ( +/obj/machinery/power/terminal, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aX" = ( +/obj/machinery/power/smes{ + charge = 5e+006 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + icon_state = "0-9"; + d1 = 2; + d2 = 4 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"aY" = ( +/obj/structure/ore_box, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"aZ" = ( +/obj/machinery/computer/shuttle/labor/one_way, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"ba" = ( +/obj/machinery/status_display{ + density = 0; + layer = 4; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bb" = ( +/obj/effect/spawner/structure/window, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"bc" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bd" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Labor Camp Backroom"; + req_access_txt = "2" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"be" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bf" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Labor Camp APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"bh" = ( +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"bi" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"bj" = ( +/turf/open/floor/mech_bay_recharge_floor{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"bk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4"; + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"bl" = ( +/obj/docking_port/stationary{ + area_type = /area/lavaland/surface/outdoors; + dir = 8; + dwidth = 2; + height = 5; + id = "laborcamp_away"; + name = "labor camp"; + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; + width = 9 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors/explored) +"bm" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Labor Camp Shuttle Prisoner Airlock"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bn" = ( +/obj/structure/ore_box, +/turf/open/floor/plasteel/brown{ + dir = 10; + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"bo" = ( +/obj/structure/closet/secure_closet/miner, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"bp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/living_quarters) +"bq" = ( +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/obj/machinery/computer/shuttle/mining{ + req_access = "0" + }, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/production) +"br" = ( +/obj/structure/table, +/obj/item/stack/packageWrap, +/obj/item/stack/packageWrap, +/obj/item/stack/packageWrap, +/obj/item/weapon/hand_labeler, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/eva) +"bs" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/door/airlock/glass_mining{ + name = "Mining Station Bridge"; + req_access_txt = "48" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"bt" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/mine/eva) +"bu" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Labor Camp Monitoring"; + req_access_txt = "2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bv" = ( +/obj/structure/closet/secure_closet/miner, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 6 + }, +/area/mine/living_quarters) +"bw" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Labor Camp Maintenance"; + req_access_txt = "2" + }, +/obj/structure/cable{ + icon_state = "1-10"; + d1 = 2; + d2 = 4 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bx" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"by" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; + name = "KEEP CLEAR: DOCKING AREA"; + pixel_y = 0 + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"bz" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/door/airlock/glass_mining{ + name = "Mining Station EVA"; + req_access_txt = "54" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"bA" = ( +/turf/open/floor/plating/lava/smooth/lava_land_surface, +/area/lavaland/surface/outdoors/explored) +"bB" = ( +/obj/structure/table, +/obj/machinery/recharger, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp/security) +"bC" = ( +/obj/structure/chair/office/dark, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/mob/living/simple_animal/bot/secbot/beepsky{ + desc = "Powered by the tears and sweat of laborers."; + name = "Prison Ofitser" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp/security) +"bD" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/weapon/pen, +/obj/machinery/power/apc{ + dir = 4; + name = "Labor Camp Security APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/machinery/camera{ + c_tag = "Labor Camp Monitoring"; + network = list("Labor") + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp/security) +"bE" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "5-6"; + d1 = 2; + d2 = 4 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bF" = ( +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bG" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bH" = ( +/obj/machinery/door/airlock/external{ + glass = 1; + name = "Mining Shuttle Airlock"; + opacity = 0; + req_access_txt = "0" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"bI" = ( +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"bJ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"bK" = ( +/obj/machinery/computer/secure_data, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp/security) +"bL" = ( +/obj/machinery/computer/security{ + name = "Labor Camp Monitoring"; + network = list("Labor") + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp/security) +"bM" = ( +/obj/machinery/computer/prisoner, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp/security) +"bN" = ( +/obj/machinery/power/port_gen/pacman{ + anchored = 1 + }, +/obj/structure/cable, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bO" = ( +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"bP" = ( +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/production) +"bQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/living_quarters) +"bR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"bS" = ( +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"bT" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 30; + pixel_y = 0 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"bU" = ( +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"bV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"bW" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"bX" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"bY" = ( +/obj/structure/cable, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/power/port_gen/pacman{ + anchored = 1 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"bZ" = ( +/obj/machinery/power/port_gen/pacman{ + anchored = 1 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"ca" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cb" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/door/airlock/glass_mining{ + name = "Mining Station Bridge"; + req_access_txt = "48" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cc" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/airlock/maintenance{ + name = "Mining Station Maintenance"; + req_access_txt = "48" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cd" = ( +/obj/machinery/mineral/equipment_vendor, +/turf/open/floor/plasteel/brown{ + dir = 9; + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"ce" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cf" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1; + }, +/area/mine/living_quarters) +"cg" = ( +/obj/machinery/camera{ + c_tag = "Crew Area Hallway East"; + network = list("MINE") + }, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/living_quarters) +"ch" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"ci" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4"; + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cj" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"ck" = ( +/obj/docking_port/stationary{ + area_type = /area/lavaland/surface/outdoors; + dir = 8; + dwidth = 3; + height = 5; + id = "mining_away"; + name = "lavaland mine"; + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; + width = 7 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cm" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"cn" = ( +/obj/machinery/door/airlock/glass_mining{ + name = "Processing Area"; + req_access_txt = "48" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"co" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"cp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cr" = ( +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 6 + }, +/area/mine/production) +"cs" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"ct" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/airlock{ + glass = 1; + name = "Break Room"; + opacity = 0 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cu" = ( +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/living_quarters) +"cv" = ( +/obj/machinery/light, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cw" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cx" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cy" = ( +/obj/machinery/door/airlock/mining{ + name = "Mining Station Storage"; + req_access_txt = "48" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cz" = ( +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/obj/structure/closet/crate{ + icon_state = "crateopen"; + opened = 1 + }, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cA" = ( +/obj/structure/closet/crate{ + icon_state = "crateopen"; + opened = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cB" = ( +/obj/docking_port/stationary{ + area_type = /area/lavaland/surface/outdoors; + dir = 2; + dwidth = 11; + height = 22; + id = "whiteship_lavaland"; + name = "lavaland wastes"; + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; + width = 35 + }, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) +"cC" = ( +/obj/structure/closet/crate, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cD" = ( +/obj/structure/closet/crate{ + icon_state = "crateopen"; + opened = 1 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 6 + }, +/area/mine/production) +"cE" = ( +/turf/open/floor/plasteel/loadingarea{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"cF" = ( +/obj/machinery/conveyor{ + dir = 8; + id = "mining_internal" + }, +/obj/structure/plasticflaps, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cG" = ( +/obj/machinery/conveyor{ + dir = 8; + id = "mining_internal" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cH" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/living_quarters) +"cI" = ( +/obj/machinery/conveyor{ + icon_state = "conveyor0"; + dir = 10; + id = "mining_internal" + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"cJ" = ( +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/living_quarters) +"cK" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/brown, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/carpet{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cL" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/carpet{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cM" = ( +/obj/machinery/door/airlock{ + id_tag = "miningdorm1"; + name = "Room 1" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/living_quarters) +"cO" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cP" = ( +/obj/machinery/vending/snack, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cQ" = ( +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cS" = ( +/obj/machinery/vending/cigarette, +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cT" = ( +/obj/structure/table, +/obj/machinery/microwave{ + pixel_y = 6 + }, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cU" = ( +/obj/structure/ore_box, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/living_quarters) +"cV" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cW" = ( +/obj/structure/table, +/turf/open/floor/carpet{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cX" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "miningdorm1"; + name = "Door Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 25; + pixel_y = 0; + req_access_txt = "0"; + specialfunctions = 4 + }, +/turf/open/floor/carpet{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cY" = ( +/obj/structure/chair, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"cZ" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"da" = ( +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"db" = ( +/obj/structure/closet/secure_closet/miner, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dc" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dd" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"de" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"df" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + layer = 2.4; + on = 1 + }, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dg" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dh" = ( +/obj/machinery/door/airlock{ + id_tag = "miningdorm2"; + name = "Room 2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"di" = ( +/obj/machinery/camera{ + c_tag = "Crew Area"; + dir = 1; + network = list("MINE") + }, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = 0; + pixel_y = -32 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dj" = ( +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dk" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/donkpockets, +/turf/open/floor/plasteel/bar{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dl" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "miningdorm2"; + name = "Door Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 25; + pixel_y = 0; + req_access_txt = "0"; + specialfunctions = 4 + }, +/turf/open/floor/carpet{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dm" = ( +/turf/open/floor/circuit{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"dn" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"do" = ( +/obj/machinery/door/airlock{ + id_tag = "miningdorm3"; + name = "Room 3" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dp" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "miningdorm3"; + name = "Door Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 25; + pixel_y = 0; + req_access_txt = "0"; + specialfunctions = 4 + }, +/turf/open/floor/carpet{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"dq" = ( +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors/explored) +"dr" = ( +/obj/machinery/conveyor_switch/oneway{ + id = "gulag" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"ds" = ( +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"dt" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"du" = ( +/obj/structure/table, +/obj/item/weapon/pickaxe, +/obj/item/device/gps/mining, +/obj/item/device/gps/mining, +/obj/item/device/gps/mining, +/obj/item/device/gps/mining, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 9 + }, +/area/mine/eva) +"dv" = ( +/obj/machinery/suit_storage_unit/mining, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/eva) +"dw" = ( +/obj/machinery/suit_storage_unit/mining, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 5 + }, +/area/mine/eva) +"dx" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"dy" = ( +/obj/machinery/camera{ + c_tag = "EVA"; + dir = 4; + network = list("MINE") + }, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23; + pixel_y = 0 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/eva) +"dz" = ( +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"dA" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/eva) +"dB" = ( +/obj/structure/closet/crate, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/production) +"dC" = ( +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"dD" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + on = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"dE" = ( +/obj/structure/tank_dispenser/oxygen, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"dF" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/eva) +"dG" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"dH" = ( +/obj/item/device/radio/beacon, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"dI" = ( +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"dJ" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"dK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"dL" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/eva) +"dM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"dN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"dO" = ( +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/eva) +"dP" = ( +/obj/machinery/door/airlock/external{ + glass = 1; + name = "Mining External Airlock"; + opacity = 0; + req_access_txt = "54" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"dQ" = ( +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/eva) +"dR" = ( +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"dS" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + layer = 2.4; + on = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"dT" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"dU" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Mining EVA APC"; + pixel_x = 1; + pixel_y = -23 + }, +/obj/structure/cable, +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/eva) +"dV" = ( +/obj/machinery/mech_bay_recharge_port, +/obj/structure/cable, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/eva) +"dW" = ( +/obj/machinery/computer/mech_bay_power_console, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/eva) +"dX" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/eva) +"dY" = ( +/obj/structure/ore_box, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/eva) +"dZ" = ( +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"ea" = ( +/obj/machinery/door/airlock{ + name = "Closet"; + req_access_txt = "0" + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"eb" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"ec" = ( +/obj/machinery/space_heater, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"ed" = ( +/turf/closed/mineral/random/high_chance/volcanic, +/area/lavaland/surface/outdoors) +"ee" = ( +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"ef" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE" + }, +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"eg" = ( +/obj/item/device/radio/intercom{ + dir = 8; + name = "Station Intercom (General)"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"eh" = ( +/turf/closed/wall/r_wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"ei" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"ej" = ( +/obj/machinery/power/smes{ + charge = 5e+006 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"ek" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/closet/crate/secure/loot, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"el" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"em" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"en" = ( +/obj/structure/fluff/drake_statue, +/turf/open/indestructible/necropolis, +/area/lavaland/surface/outdoors) +"eo" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Mining Station Starboard Wing APC"; + pixel_x = -27; + pixel_y = 2 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"ep" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"eq" = ( +/obj/machinery/mineral/equipment_vendor, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 5 + }, +/area/mine/production) +"er" = ( +/obj/machinery/mineral/mint{ + input_dir = 4 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"es" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/loadingarea{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"et" = ( +/obj/structure/closet/crate, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"eu" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/obj/structure/table, +/obj/item/weapon/paper{ + anchored = 0; + info = "A hastily written note has been scribbled here...

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

--The Research Staff"; + name = "URGENT!" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"ev" = ( +/obj/structure/ore_box, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"ew" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"ex" = ( +/obj/structure/cable{ + icon_state = "0-2"; + pixel_y = 1; + d2 = 2 + }, +/obj/machinery/power/apc{ + dir = 1; + name = "Mining Communications APC"; + pixel_x = 1; + pixel_y = 25 + }, +/turf/open/floor/plasteel/black{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"ey" = ( +/obj/machinery/telecomms/relay/preset/mining, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8; + }, +/area/mine/maintenance) +"ez" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/black{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"eA" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/whiteblue/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1; + }, +/area/mine/living_quarters) +"eB" = ( +/turf/open/floor/plasteel/whiteblue/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1; + }, +/area/mine/living_quarters) +"eC" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/toxin{ + pixel_x = 3; + pixel_y = 3 + }, +/turf/open/floor/plasteel/whiteblue/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 5; + }, +/area/mine/living_quarters) +"eD" = ( +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"eE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"eF" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"eG" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 8 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"eH" = ( +/obj/machinery/mineral/equipment_vendor, +/turf/open/floor/plasteel/purple/side{ + dir = 4 + }, +/area/mine/production) +"eI" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"eJ" = ( +/turf/open/floor/plasteel/loadingarea{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"eK" = ( +/turf/open/floor/plasteel/loadingarea{ + dir = 4; + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"eL" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"eM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/circuit{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"eN" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/black{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"eO" = ( +/obj/machinery/light_switch{ + pixel_y = -25 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/circuit{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"eP" = ( +/obj/machinery/camera{ + c_tag = "Communications Relay"; + dir = 8; + network = list("MINE") + }, +/turf/open/floor/circuit{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"eQ" = ( +/obj/structure/closet/crate/freezer, +/obj/item/weapon/reagent_containers/blood/empty, +/obj/item/weapon/reagent_containers/blood/empty{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/weapon/reagent_containers/blood/AMinus, +/obj/item/weapon/reagent_containers/blood/BMinus{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/weapon/reagent_containers/blood/BPlus{ + pixel_x = 1; + pixel_y = 2 + }, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OPlus{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/weapon/reagent_containers/blood/random, +/obj/item/weapon/reagent_containers/blood/random, +/obj/item/weapon/reagent_containers/blood/random, +/obj/machinery/camera{ + c_tag = "Sleeper Room"; + dir = 1; + network = list("MINE") + }, +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"eR" = ( +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"eS" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"eT" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel/whiteblue/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4; + }, +/area/mine/living_quarters) +"eU" = ( +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/production) +"eV" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Shuttle Docking Foyer"; + dir = 8; + network = list("MINE") + }, +/obj/machinery/newscaster{ + pixel_x = 30; + pixel_y = 1 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"eW" = ( +/obj/structure/closet/crate{ + icon_state = "crateopen"; + opened = 1 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"eX" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + on = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"eY" = ( +/obj/machinery/camera{ + c_tag = "Processing Area Room"; + dir = 8; + network = list("MINE") + }, +/obj/item/device/radio/intercom{ + dir = 8; + name = "Station Intercom (General)"; + pixel_x = 28 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"eZ" = ( +/obj/machinery/mineral/unloading_machine{ + dir = 1; + icon_state = "unloader-corner"; + input_dir = 1; + output_dir = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"fa" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Mining Station Communications"; + req_access_txt = "48" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"fb" = ( +/obj/effect/spawner/structure/window, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fc" = ( +/obj/machinery/door/airlock/glass_medical{ + id_tag = null; + name = "Infirmary"; + req_access_txt = "0" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fd" = ( +/obj/machinery/camera{ + c_tag = "Storage"; + dir = 2; + network = list("MINE") + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 5 + }, +/area/mine/living_quarters) +"fe" = ( +/turf/open/floor/plasteel/brown/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1; + }, +/area/mine/production) +"ff" = ( +/obj/effect/spawner/structure/window, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"fg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"fh" = ( +/obj/machinery/conveyor_switch/oneway{ + id = "mining_internal"; + name = "mining conveyor" + }, +/turf/open/floor/plasteel/purple/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"fi" = ( +/obj/machinery/conveyor{ + dir = 2; + id = "mining_internal" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"fj" = ( +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fk" = ( +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/living_quarters) +"fl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1; + }, +/area/mine/living_quarters) +"fm" = ( +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/living_quarters) +"fn" = ( +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fo" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1; + }, +/area/mine/living_quarters) +"fp" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Mining Station Port Wing APC"; + pixel_x = 1; + pixel_y = 25 + }, +/obj/structure/cable{ + icon_state = "0-2"; + pixel_y = 1; + d2 = 2 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fq" = ( +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fr" = ( +/obj/machinery/door/airlock/glass_mining{ + name = "Processing Area"; + req_access_txt = "48" + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fs" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/production) +"ft" = ( +/obj/machinery/mineral/processing_unit_console, +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"fu" = ( +/obj/machinery/mineral/processing_unit{ + dir = 1; + output_dir = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/production) +"fv" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fw" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4"; + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fx" = ( +/obj/structure/fluff/drake_statue/falling, +/turf/open/indestructible/necropolis, +/area/lavaland/surface/outdoors) +"fy" = ( +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/turf/closed/mineral/random/volcanic, +/area/lavaland/surface/outdoors) +"fz" = ( +/obj/machinery/camera{ + c_tag = "Crew Area Hallway West"; + network = list("MINE") + }, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/living_quarters) +"fA" = ( +/obj/machinery/camera{ + c_tag = "Dormatories"; + dir = 4; + network = list("MINE") + }, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 1 + }, +/area/mine/living_quarters) +"fB" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/purple/corner{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4 + }, +/area/mine/living_quarters) +"fC" = ( +/obj/machinery/airalarm{ + pixel_y = 24 + }, +/turf/open/floor/circuit{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/maintenance) +"fD" = ( +/turf/open/floor/plasteel/white{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"fE" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/loadingarea{ + dir = 4; + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"fF" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"fG" = ( +/obj/machinery/mineral/processing_unit{ + dir = 1; + output_dir = 2 + }, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"fH" = ( +/turf/open/floor/plasteel/loadingarea{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/mine/laborcamp) +"fI" = ( +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/lavaland/surface/outdoors) +"fJ" = ( +/turf/closed/mineral/random/volcanic, +/area/lavaland/surface/outdoors/explored) +"fK" = ( +/turf/closed/mineral/random/labormineral/volcanic, +/area/lavaland/surface/outdoors) +"fL" = ( +/obj/structure/ore_box, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors/explored) +"fM" = ( +/obj/structure/gulag_beacon, +/turf/open/floor/plasteel{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp) +"fN" = ( +/turf/closed/wall{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp/security) +"fO" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface + }, +/area/mine/laborcamp/security) +"fP" = ( +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, +/turf/closed/indestructible/riveted, +/area/space) + +(1,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(2,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(3,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ed +ed +ed +ed +ed +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(4,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +al +al +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(5,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +fK +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(6,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ed +ed +ed +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +af +af +af +af +af +fK +fK +fK +fK +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +af +af +af +af +af +af +af +af +ab +al +dq +ab +af +af +af +af +af +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(7,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +af +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +al +al +al +al +al +al +al +ed +af +af +af +af +af +af +af +af +fK +fK +fK +fK +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +bA +bA +ab +dq +ab +af +af +af +af +af +af +af +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +"} +(8,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +ed +af +ab +ab +ed +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ed +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +ab +ab +fK +fK +ab +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +ab +af +af +af +bA +bA +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +"} +(9,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +af +ab +ab +af +af +af +af +bA +bA +af +af +bA +bA +af +af +bA +af +ab +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +af +ab +af +af +af +af +af +af +af +af +af +af +af +"} +(10,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +ab +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +af +af +af +bA +bA +bA +bA +bA +bA +bA +bA +bA +bA +bA +bA +bA +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +ab +af +af +af +af +af +af +af +"} +(11,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +ab +fK +fK +fK +fK +fK +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +bA +bA +dq +bA +bA +bA +bA +bA +bA +bA +bA +bA +bA +bA +bA +bA +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +ab +af +af +af +af +af +af +af +"} +(12,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +af +af +af +af +af +af +af +af +fK +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +bA +bA +bA +dq +bA +bA +bA +bA +bA +dq +bA +bA +dq +bA +bA +bA +af +bA +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(13,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +ab +af +af +af +af +af +af +ab +fK +fK +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +ab +af +bA +bA +bA +dq +dq +dq +dq +dq +dq +dq +dq +dq +bA +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +af +af +af +af +af +af +af +"} +(14,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +ab +fK +fK +fK +fK +fK +fK +fK +fK +af +af +af +af +af +af +af +ab +ab +af +af +af +af +af +af +af +bA +bA +bA +bA +dq +dq +dq +dq +dq +dq +dq +dq +dq +bA +bA +ab +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +af +ab +af +af +af +af +af +"} +(15,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +al +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +bA +bA +bA +bA +dq +dq +dq +dq +dq +dq +dq +dq +dq +bA +bA +bA +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +af +af +af +af +af +af +af +"} +(16,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +af +af +af +af +af +ab +af +af +af +af +af +af +ab +ed +ed +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +bA +bA +bA +dq +dq +dq +dq +dq +dq +dq +dq +dq +bA +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +af +af +af +af +af +af +af +"} +(17,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +ed +ab +ab +af +af +af +af +af +ab +af +af +af +af +af +af +ab +af +ed +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +bA +bA +dq +dq +dq +dq +dq +dq +dq +bl +dq +dq +dq +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +af +af +ab +af +af +af +af +"} +(18,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +af +af +af +af +ab +ab +ab +af +af +af +af +af +ab +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +ab +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +an +an +an +an +an +aO +an +an +an +bm +an +bA +bA +af +af +af +af +af +al +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(19,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +af +af +af +af +ab +ab +ab +af +af +af +af +af +ab +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +ab +fK +ab +af +af +af +af +af +ab +an +ay +aC +aG +an +aP +an +aZ +an +aF +an +dq +fJ +af +af +dq +af +ab +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(20,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +af +af +af +af +ab +ab +ab +ab +af +af +af +af +ab +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +af +af +af +ab +ab +an +az +at +au +an +aO +an +fM +an +bm +an +fJ +fJ +fJ +af +af +af +al +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(21,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +af +af +af +af +ab +ab +ab +ab +af +af +af +af +ab +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +am +am +am +an +an +an +aD +an +an +aQ +an +ba +at +at +an +fN +fN +fN +af +af +af +al +ed +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(22,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +af +af +af +ab +ab +ab +ab +af +af +af +af +ab +ab +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +am +ao +ao +an +at +at +at +at +at +at +at +at +at +at +an +bB +bK +fO +af +af +af +af +al +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(23,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +af +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +an +ap +fD +aw +at +at +at +at +aK +aR +at +at +at +bc +bu +bC +bL +fO +af +af +af +af +af +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(24,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +ab +ab +ab +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +an +aq +aM +an +aA +at +at +at +at +at +au +fH +at +be +an +bD +bM +fO +af +af +af +af +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(25,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +ab +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +an +an +an +an +an +at +at +at +at +dr +an +aS +an +bd +an +an +an +an +af +af +af +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(26,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +ed +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +an +ar +ar +ar +an +at +fE +an +an +aL +an +aS +an +be +an +bE +bN +an +af +af +af +ab +ab +ab +ab +ab +ab +af +af +af +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(27,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +an +as +at +at +aB +at +fF +aI +aT +fG +aT +aV +an +bf +bw +aW +aX +an +af +af +ab +ed +al +ab +ab +ab +al +ab +ab +ab +ed +al +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(28,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +al +ab +ab +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +an +an +av +ax +an +aE +an +an +an +an +an +an +an +an +an +bx +bO +an +af +eh +eh +eh +eh +ei +ei +ei +ee +ei +ei +ei +ee +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(29,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +al +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +an +an +an +an +at +an +fL +aN +aN +dq +dq +dq +dq +an +bF +bG +an +af +eh +dm +dm +eh +fj +fj +fj +ee +cd +cU +bn +ee +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(30,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +af +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +an +aF +an +fL +dq +dq +dq +dq +dq +dq +an +an +an +an +af +eh +ex +eM +eh +fk +fv +fq +ee +fB +fj +da +ei +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(31,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +ab +ab +ab +af +af +af +af +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +al +af +af +af +af +af +fK +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +an +aE +an +fL +dq +dq +dq +dq +dq +af +af +af +af +af +ab +eh +ey +eN +fa +fl +fw +cs +cy +fo +cV +db +ei +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(32,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +ab +ab +ab +af +af +af +af +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +aJ +dq +dq +dq +dq +dq +af +af +af +af +af +ab +ed +eh +ez +eO +eh +fm +bg +cu +ee +cJ +fj +bo +ei +ab +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(33,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +af +af +af +ab +ab +af +af +af +af +af +af +af +ab +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +al +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +dq +dq +dq +dq +dq +dq +dq +af +af +af +af +ab +al +eh +fC +eP +eh +fz +bg +cv +ee +fd +ag +bv +ee +al +ed +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(34,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +af +af +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +dq +dq +dq +dq +dq +af +af +af +af +ab +ab +eh +eh +eh +eh +fn +bg +fj +ee +ee +ee +ee +ee +ee +ee +ee +ee +ee +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(35,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ab +ab +ab +af +af +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +dq +dq +dq +dq +dq +af +af +af +af +af +ab +ee +eA +eQ +ee +fj +bg +fj +ee +cK +cW +ee +cK +cW +ee +cK +cW +ee +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(36,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +af +af +ab +ab +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +dq +dq +dq +dq +dq +dq +af +af +af +af +ab +ei +eB +eR +fb +fk +bg +fj +ee +cL +cX +ee +cL +dl +ee +cL +dp +ee +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(37,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +af +af +af +ab +ab +ab +af +af +ab +af +ab +ab +ab +ab +ab +ab +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +fL +fK +dq +dq +af +af +af +af +ab +ei +eB +eS +fc +fo +bi +fj +ee +cM +ee +ee +dh +ee +ee +do +ee +ee +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(38,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +af +af +af +ab +ab +ab +ab +af +af +af +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +fK +fK +fK +ab +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +dq +af +af +al +ed +ee +eC +eT +fb +fm +bg +fj +cu +cN +fA +cu +cN +fm +cu +cN +fm +ei +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(39,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +af +af +af +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +ab +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +af +af +al +ee +ee +ee +ee +ee +fp +ci +cl +cl +cO +cl +cl +cO +dn +cl +cO +cV +ei +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(40,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +af +af +af +af +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +al +al +al +af +af +af +af +af +af +af +ab +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +af +af +ee +ej +bX +bY +ee +cx +bg +fj +ee +ee +fb +fb +ee +ee +ee +ei +ei +ee +al +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +"} +(41,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +af +af +af +af +af +ab +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +af +af +ef +ek +eD +bZ +ee +fk +bg +cv +ee +cP +cQ +cQ +aH +ee +ab +ab +ab +al +ed +al +al +ab +ab +ab +ab +af +af +af +af +af +af +af +af +"} +(42,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +af +af +ee +el +eE +bJ +cc +cf +bk +fq +fb +cQ +cQ +dc +cQ +ee +ab +af +ab +ab +al +al +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +"} +(43,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +ab +ab +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +af +af +af +af +af +ab +ab +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +af +ab +ee +eD +eF +ca +ee +cg +cj +cs +ct +cR +cY +dd +di +ee +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(44,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +ab +af +af +af +af +af +af +af +af +af +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +dq +dq +af +af +ab +ee +em +eG +eG +ee +fj +bg +cu +fb +cQ +cQ +de +dj +ee +ed +af +af +af +af +af +af +ab +ab +af +af +af +af +af +af +af +af +af +af +"} +(45,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +af +af +af +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +af +af +af +af +af +af +af +af +af +af +af +af +fK +fK +ab +af +af +ab +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +fK +ab +af +af +fK +fK +fK +fK +fK +dq +dq +dq +dq +af +af +af +af +ee +ee +ee +ee +ee +fj +bg +fj +ee +cS +cQ +df +cQ +ee +al +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +"} +(46,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +fK +fK +fK +fK +fK +af +af +af +af +af +af +af +dq +dq +dq +dq +af +af +af +af +af +af +af +af +ab +ab +ei +fj +bg +fj +ee +cT +cZ +dg +dk +ee +al +al +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +af +"} +(47,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +al +al +al +af +af +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +ab +ei +fq +bp +cH +ee +ei +ei +ei +ei +ee +al +al +al +af +ab +af +af +ab +ab +af +ab +ab +ab +af +af +af +af +af +af +"} +(48,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +ab +af +af +af +af +af +ei +ei +bs +ei +ei +ab +ab +ab +ab +al +al +al +ab +af +af +af +af +ab +ab +ab +al +ed +ed +ab +ab +af +af +af +af +"} +(49,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +ed +ab +ab +ab +al +af +af +af +af +af +af +af +al +al +al +al +al +al +al +af +af +af +af +af +al +al +al +al +al +al +al +ab +ab +al +al +al +al +af +af +af +af +al +al +af +af +af +af +af +af +af +al +al +al +af +af +af +af +af +af +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ei +bQ +ei +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +ed +ed +ed +ed +ed +al +al +af +af +af +"} +(50,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +ei +bg +ei +ab +af +af +af +af +af +af +af +af +af +ab +af +ab +ab +ed +ed +ed +ed +ed +ed +ed +ed +ab +af +af +"} +(51,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +ei +bg +ei +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ed +ed +ed +ed +ed +ed +ed +ab +af +af +"} +(52,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +ab +ab +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +ei +bg +ei +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ed +ed +ed +ed +ed +ed +ed +ab +af +af +"} +(53,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +ab +ab +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +ab +dx +bV +dx +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ed +ed +al +ed +ab +ab +af +af +"} +(54,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +ab +ab +ab +ab +ck +ab +ab +ab +ab +af +af +ab +dx +bV +dx +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +af +af +af +af +"} +(55,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ed +ed +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +ab +af +af +af +af +af +ab +ab +by +bH +dx +ab +ab +af +af +af +ab +dx +bV +dx +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +af +af +af +af +af +"} +(56,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +af +af +af +af +af +af +ab +dx +dI +dx +ab +af +af +af +af +ab +dx +dK +dx +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +"} +(57,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +dx +dx +bH +dx +dx +ab +af +af +ab +dx +dx +cb +dx +dx +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +"} +(58,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +bh +dx +dH +dR +bP +dx +bh +bh +bh +bh +dx +bU +bW +bP +dx +bh +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(59,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +ed +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +ab +bh +bq +dI +dS +dI +bU +eg +eo +dR +eU +fe +dI +bV +dI +cz +bh +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +"} +(60,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +af +ab +af +af +ab +ab +af +ab +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +ab +dx +dB +dJ +dT +bR +bR +bR +ep +bR +bR +bR +bR +ce +cw +cA +bh +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(61,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +ab +ab +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +ab +ab +dx +dC +dK +bI +bS +dZ +bT +bI +dI +dI +dI +dI +ch +dI +cC +dx +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(62,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +al +ab +ds +ds +ds +bb +bz +bb +ds +ea +bh +eq +eH +eV +dC +bS +cm +bI +cD +dx +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(63,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +af +af +ab +ab +ab +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ds +du +dy +br +dL +dU +ds +eb +bh +bh +eI +bh +ff +fr +cn +ff +bh +bh +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(64,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +af +af +af +af +af +ab +ab +ab +ab +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +dt +dv +dz +dz +dM +dV +ds +ec +bh +er +eJ +eW +bU +dR +co +bP +dI +dx +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(65,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +af +ab +ab +af +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +ab +dt +dv +dz +dD +dN +bj +ds +bh +bh +es +dI +dI +dI +dI +cp +bS +cE +bh +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(66,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +ab +ds +dw +dA +dE +dO +dW +ds +ed +bh +et +dI +eX +fg +fg +cq +bh +cF +bh +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +"} +(67,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +ab +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +ab +ds +ds +ds +dt +dP +dt +ds +al +bh +eu +dI +eY +fh +fs +cr +ff +cG +bh +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +"} +(68,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +ab +af +af +af +af +af +ab +ab +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +ab +ab +ab +ds +dF +dQ +dX +ds +al +bh +ev +eK +bh +ff +ft +ff +ff +cG +bh +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +"} +(69,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +ab +ab +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +ab +ab +ds +dG +dO +dY +ds +al +bh +ew +eL +eZ +fi +fu +fi +fi +cI +bh +ab +ab +ab +af +af +af +af +af +af +af +af +ab +af +af +af +af +af +af +af +af +af +af +af +"} +(70,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +ab +ab +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +al +al +af +af +ab +ds +dt +dP +dt +ds +al +bh +bh +bh +bh +bh +bh +bh +bh +bh +bh +ab +ab +ab +af +af +af +af +ab +af +af +af +ab +af +af +af +af +af +ab +af +af +af +af +af +"} +(71,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +af +af +af +af +ab +ab +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +fy +ab +ab +ab +ab +ab +ab +ab +bt +ab +ab +ab +bt +al +al +ab +ab +af +af +af +af +ab +ab +ab +ab +ab +ab +af +af +ab +af +af +af +af +ab +ab +af +af +af +af +af +af +af +af +af +af +af +"} +(72,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +af +af +af +af +ab +ab +ab +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +af +af +af +af +af +ab +af +af +af +af +af +"} +(73,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +ed +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +ab +af +ab +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +fy +ab +ab +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +ab +af +af +ab +af +af +af +af +ab +ab +af +af +af +af +ab +ab +ab +af +af +af +af +"} +(74,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +al +ab +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +af +af +ab +af +af +af +af +ab +ab +af +af +af +af +ab +ab +ab +af +af +af +af +"} +(75,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +ab +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +al +al +ab +ab +ab +af +ab +ab +ab +af +af +af +ab +ab +ab +af +af +af +ab +ab +ab +af +af +af +af +"} +(76,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +al +ab +ab +ab +ab +ab +ab +fy +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +al +al +al +al +al +ab +ab +af +ab +ab +ab +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(77,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +ab +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +al +ab +ab +ab +ab +al +al +ab +ab +ab +ab +al +al +al +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +ab +af +ab +ab +ab +ab +ab +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(78,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +al +al +ab +ab +ab +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(79,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +ed +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +ab +ab +ab +ab +ab +ab +ab +af +ab +af +af +af +af +"} +(80,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +al +al +al +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +"} +(81,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +al +al +al +ed +ab +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +"} +(82,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +al +al +al +ed +ab +af +af +af +af +af +af +af +af +af +ab +ab +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +"} +(83,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ed +ed +ab +ab +af +af +af +af +af +af +af +ab +af +ab +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +fy +ab +ab +ab +ab +ab +ab +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +ab +af +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +"} +(84,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +fy +ab +ab +ab +ab +ab +ab +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +"} +(85,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +fy +al +al +al +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +"} +(86,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +af +ab +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +al +fy +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +"} +(87,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +ab +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +fy +ab +ab +ab +ab +ab +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +ab +ab +ab +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(88,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +af +ab +af +ab +ab +ab +af +ab +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +ab +al +al +al +al +al +al +fy +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(89,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +af +af +ab +ab +af +ab +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +fy +al +al +al +al +al +al +al +al +al +al +al +al +al +fy +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(90,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +af +af +af +af +af +ab +ab +ab +ab +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(91,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +af +af +af +af +af +ab +ab +ab +ab +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(92,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +fy +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +"} +(93,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +"} +(94,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(95,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(96,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +ab +ab +ab +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +ab +ab +"} +(97,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +ab +ab +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +al +al +ab +ab +ab +ab +ab +al +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(98,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +al +al +ab +ab +ab +ab +ab +ab +af +af +af +af +af +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +al +ab +ab +ab +ab +ab +ab +al +fy +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +"} +(99,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +al +al +ed +ab +ab +ab +ab +af +af +af +af +af +af +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +al +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +ab +ab +al +al +al +al +al +al +al +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(100,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ed +al +al +ed +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +fy +ab +ab +al +al +al +al +al +al +fy +ab +ab +ab +ab +fy +fy +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +"} +(101,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ed +ed +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +af +ab +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +fy +fy +ab +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +cB +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +"} +(102,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +al +al +al +al +al +al +aU +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +"} +(103,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +al +al +al +al +al +al +aY +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(104,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +al +al +al +al +al +al +ab +ab +ab +ab +ab +fy +fy +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(105,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(106,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +ab +ab +fy +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(107,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +af +af +af +af +af +af +af +af +ab +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +al +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(108,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +"} +(109,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +"} +(110,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +"} +(111,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ed +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +"} +(112,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +"} +(113,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +ab +ab +ab +ab +"} +(114,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +ab +af +af +"} +(115,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ed +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +"} +(116,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ed +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +ab +af +af +"} +(117,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ed +ed +al +al +ed +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(118,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ed +al +al +ed +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(119,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ed +al +al +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +"} +(120,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +ab +ab +af +ab +ab +af +af +af +af +"} +(121,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +ab +ab +ab +ab +ab +ab +ab +af +af +ab +af +af +af +ab +ab +af +af +af +ab +ab +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +af +af +ab +af +af +af +af +"} +(122,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +aj +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +ed +ab +ab +ab +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +af +af +af +af +af +af +af +"} +(123,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +en +aj +aj +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +ab +ab +ab +ab +ab +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +af +af +ab +af +af +af +af +"} +(124,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +aj +aj +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +ed +al +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +ab +af +af +ab +ab +af +af +af +"} +(125,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +aj +aj +aj +ab +ab +aa +aa +af +af +af +af +af +af +af +af +af +af +af +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +ab +af +af +af +"} +(126,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +ab +af +af +af +af +af +af +af +"} +(127,1,1) = {" +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ae +ak +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(128,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ed +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(129,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +aj +aj +aj +ab +ab +aa +aa +af +af +af +af +af +af +af +af +af +af +af +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ed +ed +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +af +af +af +af +af +af +af +af +af +af +af +"} +(130,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +aj +aj +ab +ab +ab +ab +ab +af +af +af +ab +af +af +af +af +af +af +af +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +al +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +ab +af +af +af +af +af +"} +(131,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +fx +aj +aj +ab +ab +ab +ab +ab +af +af +af +ab +ab +af +ab +ab +af +af +af +ab +ab +al +ed +ab +ab +ab +ab +ab +ab +ed +al +al +ed +ab +ab +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +"} +(132,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +aj +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +"} +(133,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aj +aj +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +ab +af +af +af +af +"} +(134,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +ab +af +ab +af +af +af +af +af +af +"} +(135,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +"} +(136,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ed +ed +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +"} +(137,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +af +"} +(138,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(139,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(140,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(141,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(142,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(143,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(144,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +ab +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(145,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +ab +ab +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(146,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +ab +ab +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(147,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +ab +ab +af +af +af +af +af +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(148,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ed +ab +ab +ab +ab +ab +af +af +af +ab +ab +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(149,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +af +af +af +ab +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(150,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +af +af +af +ab +af +af +af +af +af +af +ab +ab +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(151,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ed +ed +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(152,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ed +ed +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(153,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(154,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(155,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(156,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(157,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(158,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(159,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(160,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(161,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(162,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(163,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(164,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +ab +af +af +af +af +ab +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(165,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(166,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ed +ed +ab +ab +af +af +af +af +ab +ab +ab +af +ab +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(167,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +al +al +al +al +ab +af +af +af +ab +ab +ab +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +ab +af +ab +af +af +af +af +af +af +"} +(168,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +"} +(169,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ed +al +al +al +al +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +af +af +af +af +af +ab +af +af +af +af +af +"} +(170,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ed +ed +al +al +al +al +ed +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +af +af +af +af +af +af +af +af +af +af +af +"} +(171,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ed +al +al +al +al +ed +ed +ab +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +ab +af +af +af +af +af +"} +(172,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ed +al +al +al +al +ed +ed +ab +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +ab +af +af +af +af +af +"} +(173,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ed +al +al +al +al +ed +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(174,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ed +al +al +al +al +ed +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(175,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +al +al +al +al +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(176,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +al +al +al +al +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(177,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ed +ed +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(178,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(179,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(180,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(181,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(182,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(183,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(184,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ed +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(185,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +al +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(186,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +al +ed +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +"} +(187,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +al +ed +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +al +af +af +af +af +af +af +af +af +af +"} +(188,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +al +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(189,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(190,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +ab +af +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(191,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +af +af +af +af +af +af +af +af +af +"} +(192,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(193,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(194,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(195,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(196,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(197,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(198,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ed +ed +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(199,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(200,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(201,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(202,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(203,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(204,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(205,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(206,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +al +al +ab +ab +ab +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +"} +(207,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ed +al +al +ab +ab +ab +af +ab +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(208,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +al +al +ed +ab +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(209,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ed +ab +ab +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(210,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(211,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(212,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(213,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +"} +(214,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +ab +af +af +af +af +af +af +af +af +af +"} +(215,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(216,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(217,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(218,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(219,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(220,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +al +al +al +al +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +"} +(221,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +al +al +al +al +ed +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +"} +(222,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +al +al +al +al +ed +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +"} +(223,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +al +al +al +al +ed +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(224,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +al +al +al +al +ed +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +"} +(225,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +al +al +al +al +ed +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +"} +(226,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ed +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(227,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +al +al +al +al +ab +ab +ab +ab +ab +ab +ab +ab +af +af +ab +ab +ab +ed +ed +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(228,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ed +ed +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +af +af +af +af +af +af +af +af +af +af +"} +(229,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +af +af +af +af +af +af +af +af +af +af +"} +(230,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +"} +(231,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ab +ab +af +af +af +af +af +af +af +af +af +af +"} +(232,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(233,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(234,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(235,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(236,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +ab +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(237,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ed +ed +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +af +af +af +af +af +af +af +af +af +"} +(238,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +af +af +af +af +af +ab +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(239,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +af +af +af +af +ab +ab +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(240,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +af +ab +af +ab +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(241,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +af +af +af +af +af +ab +ab +ab +ab +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(242,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(243,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(244,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(245,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(246,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(247,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(248,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(249,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ed +ed +ed +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +"} +(250,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ab +ab +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +al +al +al +al +al +af +af +af +af +af +af +af +af +af +"} +(251,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +ed +af +af +af +af +af +af +af +af +af +af +af +"} +(252,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +af +"} +(253,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ed +ed +ed +ab +ab +ab +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +af +"} +(254,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +"} +(255,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ed +ab +ab +ab +af +af +af +af +af +af +af +af +af +ab +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +al +af +af +af +af +af +af +af +af +af +af +af +af +af +af +"} diff --git a/_maps/map_files/OmegaStation/OmegaStation.dmm b/_maps/map_files/OmegaStation/OmegaStation.dmm index 3c366273e0..ecc1416291 100644 --- a/_maps/map_files/OmegaStation/OmegaStation.dmm +++ b/_maps/map_files/OmegaStation/OmegaStation.dmm @@ -2830,7 +2830,7 @@ pixel_x = 30; pixel_y = 30 }, -/turf/open/floor/greengrid, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "aeD" = ( /obj/machinery/door/window{ @@ -3313,7 +3313,7 @@ tag = "icon-1-2"; icon_state = "1-2" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "afs" = ( /obj/structure/table/reinforced, @@ -3580,6 +3580,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, /turf/open/floor/plasteel, /area/shuttle/supply) "afL" = ( @@ -3853,7 +3857,7 @@ name = "AI Chamber APC"; pixel_y = 24 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "agj" = ( /obj/machinery/computer/upload/borg, @@ -4369,7 +4373,7 @@ tag = "icon-1-4"; icon_state = "1-4" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "agZ" = ( /obj/structure/cable/white{ @@ -4426,7 +4430,7 @@ tag = "icon-1-8"; icon_state = "1-8" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "ahd" = ( /obj/structure/table/reinforced, @@ -4939,7 +4943,7 @@ }, /area/ai_monitored/turret_protected/ai) "ahQ" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "ahR" = ( /obj/machinery/light_switch{ @@ -4947,7 +4951,7 @@ pixel_y = -24 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "ahS" = ( /obj/structure/cable/white{ @@ -4960,7 +4964,7 @@ /area/ai_monitored/turret_protected/ai) "ahT" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "ahU" = ( /obj/machinery/firealarm{ @@ -4968,7 +4972,7 @@ pixel_x = 0; pixel_y = -24 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "ahV" = ( /obj/structure/table/reinforced, @@ -8650,6 +8654,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/obj/machinery/light/small{ + dir = 8 + }, /turf/open/floor/plasteel{ tag = "icon-plasteel_warn (NORTHWEST)" }, @@ -8672,6 +8679,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/plasteel, /area/shuttle/mining) "anx" = ( @@ -11358,6 +11368,9 @@ /obj/item/weapon/pickaxe/emergency, /obj/item/weapon/pickaxe/emergency, /obj/effect/turf_decal/delivery, +/obj/machinery/light/small{ + dir = 8 + }, /turf/open/floor/plasteel, /area/shuttle/mining) "aro" = ( @@ -11378,6 +11391,9 @@ /obj/structure/ore_box, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/plasteel, /area/shuttle/mining) "arq" = ( @@ -12088,11 +12104,11 @@ "ass" = ( /obj/machinery/mineral/mint, /obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ - pixel_y = 32 - }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/end, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel, /area/hallway/primary/central{ name = "Primary Hallway" @@ -12559,7 +12575,7 @@ name = "Central Port Maintenance" }) "atc" = ( -/obj/structure/sign/poster, +/obj/structure/sign/poster/contraband/random, /turf/closed/wall, /area/maintenance/fpmaint2{ name = "Central Port Maintenance" @@ -12913,13 +12929,13 @@ /turf/closed/wall/r_wall, /area/atmos) "atK" = ( -/obj/structure/sign/poster{ - pixel_x = 32 - }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 + }, /turf/open/floor/plasteel/caution/corner{ tag = "icon-cautioncorner (NORTH)"; icon_state = "cautioncorner"; @@ -13516,7 +13532,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/sign/poster, +/obj/structure/sign/poster/contraband/random, /turf/closed/wall, /area/hallway/primary/central{ name = "Primary Hallway" @@ -13907,10 +13923,10 @@ }, /area/crew_quarters/bar) "avn" = ( -/obj/structure/sign/poster, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/structure/sign/poster/random, /turf/closed/wall, /area/crew_quarters/bar) "avo" = ( @@ -15473,7 +15489,8 @@ departmentType = 0; name = "Bar RC"; pixel_x = 32; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ tag = "icon-manifold (EAST)"; @@ -16984,7 +17001,7 @@ }, /area/crew_quarters/sleep) "aAK" = ( -/obj/structure/sign/poster, +/obj/structure/sign/poster/random, /turf/closed/wall, /area/crew_quarters/theatre) "aAL" = ( @@ -18287,7 +18304,7 @@ /obj/item/toy/crayon/spraycan/lubecan{ charges = 5 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/contraband/clown{ pixel_x = -32 }, /turf/open/floor/plasteel/vault{ @@ -18331,10 +18348,10 @@ }, /area/crew_quarters/theatre) "aCT" = ( -/obj/structure/sign/poster, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/structure/sign/poster/random, /turf/closed/wall, /area/crew_quarters/theatre) "aCU" = ( @@ -18450,20 +18467,6 @@ tag = "icon-1-4"; icon_state = "1-4" }, -/turf/open/floor/plasteel/escape{ - tag = "icon-escape (NORTH)"; - icon_state = "escape"; - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aDf" = ( -/obj/structure/cable/white{ - tag = "icon-4-8"; - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/escape{ tag = "icon-escape (NORTH)"; icon_state = "escape"; @@ -19211,7 +19214,7 @@ tag = "icon-0-4"; icon_state = "0-4" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/engineering) "aEw" = ( /obj/structure/cable/white{ @@ -19229,7 +19232,7 @@ tag = "icon-0-8"; icon_state = "0-8" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/engineering) "aEx" = ( /obj/structure/closet/radiation, @@ -19478,12 +19481,12 @@ "aES" = ( /obj/structure/table/wood, /obj/item/weapon/reagent_containers/food/snacks/baguette, -/obj/structure/sign/poster{ - pixel_y = -32 - }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/contraband/random{ pixel_x = -32 }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -19505,13 +19508,13 @@ }, /area/crew_quarters/theatre) "aEU" = ( -/obj/structure/sign/poster{ - pixel_y = -32 - }, /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 1; on = 1 }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, /turf/open/floor/plasteel/vault{ dir = 5 }, @@ -19695,7 +19698,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/hallway/primary/central{ name = "Primary Hallway" @@ -19727,22 +19729,6 @@ "aFl" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aFm" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/start{ - name = "Assistant" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -20886,63 +20872,6 @@ /area/hallway/primary/central{ name = "Primary Hallway" }) -"aGZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/hallway/primary/central{ - name = "Primary Hallway" - }) -"aHa" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass{ - name = "Departure Lounge" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aHb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aHc" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/neutral, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aHd" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (EAST)"; - icon_state = "manifold"; - dir = 4 - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) "aHe" = ( /turf/open/floor/plasteel/vault{ dir = 1 @@ -21594,7 +21523,7 @@ icon_state = "plant-21"; layer = 4.1 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/random{ pixel_x = 32 }, /turf/open/floor/plasteel/redyellow, @@ -21672,7 +21601,7 @@ }, /area/engine/gravity_generator) "aIc" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/gravity_generator) "aId" = ( /turf/open/floor/plasteel/vault{ @@ -22328,12 +22257,6 @@ "aJc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/escape, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aJd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/escape, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -22681,11 +22604,11 @@ /turf/open/floor/plasteel/yellow, /area/engine/engineering) "aJH" = ( -/obj/machinery/computer/atmos_alert, /obj/structure/cable/white{ tag = "icon-2-4"; icon_state = "2-4" }, +/obj/machinery/computer/apc_control, /turf/open/floor/plasteel/yellow/side{ dir = 4 }, @@ -23030,22 +22953,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aKk" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_mining{ - name = "Cargo Port"; - req_access_txt = "48;50" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/stripes/line{ - dir = 2 - }, -/turf/open/floor/plasteel{ - tag = "icon-plasteel_warn_side (EAST)" - }, /area/hallway/secondary/exit{ name = "\improper Departure Lounge" }) @@ -23725,69 +23632,6 @@ /area/hallway/primary/central{ name = "Primary Hallway" }) -"aLo" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/glass_mining{ - name = "Cargo Port"; - req_access_txt = "48;50" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTHWEST)"; - icon_state = "brown"; - dir = 9 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLq" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - tag = "icon-manifold (NORTH)"; - icon_state = "manifold"; - dir = 1 - }, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - tag = "icon-intact (NORTHWEST)"; - icon_state = "intact"; - dir = 9 - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) -"aLs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/brown{ - tag = "icon-brown (NORTH)"; - icon_state = "brown"; - dir = 1 - }, -/area/hallway/secondary/exit{ - name = "\improper Departure Lounge" - }) "aLt" = ( /turf/open/floor/plasteel/brown{ tag = "icon-brown (NORTHEAST)"; @@ -24607,7 +24451,7 @@ d2 = 8; icon_state = "0-8" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/engineering) "aMS" = ( /obj/structure/grille, @@ -24652,7 +24496,7 @@ icon_state = "0-4"; d2 = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/engine/engineering) "aMY" = ( /obj/structure/cable{ @@ -26906,6 +26750,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/effect/landmark{ + name = "Observer-Start" + }, /turf/open/floor/plasteel{ icon_state = "L8" }, @@ -27073,8 +26920,14 @@ }, /area/tcommsat/server) "aQG" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 6 + }, /turf/open/floor/plasteel/vault{ - dir = 8 + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 }, /area/tcommsat/server) "aQH" = ( @@ -27083,9 +26936,16 @@ d2 = 2; icon_state = "1-2" }, -/turf/open/floor/plasteel/vault{ - dir = 8 +/obj/machinery/door/airlock/command{ + cyclelinkeddir = 2; + name = "Telecoms Server Room"; + req_access = null; + req_access_txt = "61" }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/grimy, /area/tcommsat/server) "aQI" = ( /obj/machinery/light{ @@ -27505,18 +27365,12 @@ }, /area/maintenance/starboard) "aRB" = ( -/obj/machinery/telecomms/bus/preset_one/birdstation, -/obj/machinery/power/apc{ - dir = 8; - name = "Telecoms Server Room APC"; - pixel_x = -26; - pixel_y = 0 +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plasteel/circuit/gcircuit, /area/tcommsat/server) "aRC" = ( /obj/structure/cable{ @@ -27530,19 +27384,31 @@ }, /area/tcommsat/server) "aRD" = ( -/obj/machinery/blackbox_recorder, /obj/structure/cable{ d1 = 1; - d2 = 8; - icon_state = "1-8" + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 }, -/turf/open/floor/plasteel/circuit/gcircuit, /area/tcommsat/server) "aRE" = ( -/obj/machinery/telecomms/broadcaster/preset_left/birdstation, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 2; + min_temperature = 80; + on = 1; + target_temperature = 80 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 }, /area/tcommsat/server) "aRF" = ( @@ -28026,7 +27892,8 @@ departmentType = 0; name = "Research RC"; pixel_x = 0; - pixel_y = 32 + pixel_y = 32; + receive_ore_updates = 1 }, /turf/open/floor/plasteel/whitepurple/corner{ dir = 4 @@ -28121,7 +27988,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard) "aSH" = ( -/obj/structure/sign/poster, +/obj/structure/sign/poster/contraband/random, /turf/closed/wall, /area/maintenance/starboard) "aSI" = ( @@ -28157,21 +28024,35 @@ /area/maintenance/starboard) "aSL" = ( /obj/machinery/telecomms/server/presets/common/birdstation, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/tcommsat/server) "aSM" = ( -/obj/machinery/telecomms/hub/preset, -/turf/open/floor/plasteel/circuit/gcircuit, +/obj/machinery/door/airlock/command{ + cyclelinkeddir = 2; + name = "Telecoms Server Room"; + req_access = null; + req_access_txt = "61" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, /area/tcommsat/server) "aSN" = ( -/obj/machinery/announcement_system, -/obj/machinery/ai_status_display{ - pixel_x = 32 - }, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" - }, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/plating, /area/tcommsat/server) "aSO" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -28787,15 +28668,15 @@ /area/maintenance/starboard) "aTU" = ( /obj/structure/table/wood, -/obj/item/weapon/poster/contraband{ +/obj/item/weapon/poster/random_contraband{ pixel_x = 3; pixel_y = 3 }, -/obj/item/weapon/poster/contraband{ +/obj/item/weapon/poster/random_contraband{ pixel_x = -3; pixel_y = -3 }, -/obj/item/weapon/poster/contraband, +/obj/item/weapon/poster/random_contraband, /turf/open/floor/plating, /area/maintenance/starboard) "aTV" = ( @@ -28812,23 +28693,46 @@ /turf/open/floor/wood, /area/maintenance/starboard) "aTX" = ( -/obj/machinery/telecomms/receiver/preset_left/birdstation, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 }, -/turf/open/floor/plasteel/circuit/gcircuit, /area/tcommsat/server) "aTY" = ( -/obj/machinery/message_server, -/turf/open/floor/plasteel/circuit/gcircuit, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, /area/tcommsat/server) "aTZ" = ( -/obj/machinery/telecomms/processor/preset_one/birdstation, -/turf/open/floor/bluegrid{ - name = "Mainframe Base"; - initial_gas_mix = "n2=100;TEMP=80" +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 }, /area/tcommsat/server) "aUa" = ( @@ -29217,19 +29121,32 @@ }, /area/maintenance/starboard) "aUO" = ( -/obj/machinery/status_display{ - pixel_y = -32 +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 7 }, /turf/open/floor/plasteel/vault{ - dir = 8 + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 }, /area/tcommsat/server) "aUP" = ( -/obj/machinery/ntnet_relay, -/turf/open/floor/plasteel/vault{ - tag = "icon-vault (WEST)"; - icon_state = "vault"; - dir = 8 +/obj/machinery/blackbox_recorder, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/circuit/green{ + initial_gas_mix = "n2=100;TEMP=80"; + temperature = 80 }, /area/tcommsat/server) "aUQ" = ( @@ -29468,7 +29385,8 @@ departmentType = 0; name = "Chemistry RC"; pixel_x = 32; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /turf/open/floor/plasteel/whiteyellow/corner, /area/medical/chemistry) @@ -29609,7 +29527,7 @@ on = 1; pressure_checks = 0 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -29640,7 +29558,7 @@ network = list("SS13","RD"); pixel_x = 22 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -30056,7 +29974,7 @@ /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 8 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -30082,7 +30000,7 @@ icon_state = "intact"; dir = 9 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -31572,20 +31490,6 @@ heat_capacity = 1e+006 }, /area/hallway/primary/central) -"aYX" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/device/radio/intercom{ - name = "Station Intercom"; - pixel_x = 0; - pixel_y = -24 - }, -/turf/open/floor/plasteel/neutral/side{ - dir = 1; - heat_capacity = 1e+006 - }, -/area/hallway/primary/central) "aYY" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -31723,12 +31627,12 @@ /obj/structure/table/wood, /obj/item/clothing/gloves/color/black, /obj/item/device/taperecorder, -/obj/structure/sign/poster{ - pixel_y = 32 - }, /obj/machinery/light/small{ dir = 1 }, +/obj/structure/sign/poster/contraband/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -31751,8 +31655,8 @@ name = "Port Maintenance" }) "aZs" = ( -/obj/structure/sign/poster, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/sign/poster/contraband/random, /turf/closed/wall, /area/maintenance/fpmaint2{ name = "Port Maintenance" @@ -31834,10 +31738,10 @@ name = "Port Maintenance" }) "aZz" = ( -/obj/structure/sign/poster, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/structure/sign/poster/contraband/random, /turf/closed/wall, /area/maintenance/fpmaint2{ name = "Port Maintenance" @@ -32298,7 +32202,8 @@ departmentType = 0; name = "Robotics RC"; pixel_x = 0; - pixel_y = 32 + pixel_y = 32; + receive_ore_updates = 1 }, /obj/machinery/light_switch{ pixel_x = 24 @@ -33169,7 +33074,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/turf/open/floor/plasteel/circuit, +/turf/open/floor/circuit, /area/assembly/chargebay) "bbE" = ( /obj/effect/decal/cleanable/dirt, @@ -33430,7 +33335,7 @@ name = "Port Maintenance" }) "bca" = ( -/obj/structure/sign/poster, +/obj/structure/sign/poster/contraband/random, /turf/closed/wall, /area/maintenance/fpmaint2{ name = "Port Maintenance" @@ -33633,11 +33538,11 @@ /turf/open/floor/plasteel, /area/assembly/chargebay) "bcu" = ( -/turf/open/floor/plasteel/circuit, +/turf/open/floor/circuit, /area/assembly/chargebay) "bcv" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plasteel/circuit, +/turf/open/floor/circuit, /area/assembly/chargebay) "bcw" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -34093,7 +33998,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "bdn" = ( /obj/effect/decal/cleanable/dirt, @@ -34102,14 +34007,14 @@ icon_state = "intact"; dir = 9 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "bdo" = ( /obj/machinery/light{ dir = 4; icon_state = "tube1" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "bdp" = ( /obj/machinery/status_display, @@ -34409,7 +34314,7 @@ /obj/machinery/light/small{ dir = 4 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/contraband/random{ pixel_x = 32 }, /turf/open/floor/plasteel/vault{ @@ -34650,7 +34555,7 @@ /obj/machinery/ai_status_display{ pixel_y = -32 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "bei" = ( /obj/effect/decal/cleanable/dirt, @@ -34797,11 +34702,11 @@ }) "bev" = ( /obj/machinery/computer/slot_machine, -/obj/structure/sign/poster{ - pixel_y = -32 - }, /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small, +/obj/structure/sign/poster/contraband/random{ + pixel_y = -32 + }, /turf/open/floor/plasteel/vault{ dir = 8 }, @@ -34856,7 +34761,7 @@ "bez" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/contraband/random{ pixel_y = -32 }, /turf/open/floor/plating, @@ -36509,7 +36414,7 @@ /area/toxins/xenobiology) "bgZ" = ( /mob/living/simple_animal/slime, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/toxins/xenobiology) "bha" = ( /obj/structure/cable/white{ @@ -36605,13 +36510,13 @@ }, /area/toxins/xenobiology) "bhg" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/toxins/xenobiology) "bhh" = ( /obj/effect/landmark{ name = "revenantspawn" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/toxins/xenobiology) "bhi" = ( /obj/machinery/light{ @@ -37741,7 +37646,7 @@ on = 1; pressure_checks = 0 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -37763,7 +37668,7 @@ name = "science camera"; network = list("SS13","RD") }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -37824,10 +37729,6 @@ }, /turf/open/floor/plating, /area/chapel/main) -"bjm" = ( -/obj/structure/sign/vacuum, -/turf/closed/wall, -/area/chapel/main) "bjn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/extinguisher_cabinet{ @@ -38048,7 +37949,7 @@ /turf/open/floor/plasteel, /area/toxins/xenobiology) "bjI" = ( -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -38169,13 +38070,14 @@ departmentType = 0; name = "Xenobiology RC"; pixel_x = 0; - pixel_y = -32 + pixel_y = -32; + receive_ore_updates = 1 }, /obj/structure/cable/white{ tag = "icon-1-4"; icon_state = "1-4" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/toxins/xenobiology) "bjS" = ( /obj/structure/table/reinforced, @@ -38521,6 +38423,7 @@ "bkr" = ( /obj/machinery/holopad, /obj/effect/turf_decal/bot, +/obj/machinery/light, /turf/open/floor/plasteel, /area/shuttle/arrival) "bks" = ( @@ -38563,7 +38466,6 @@ /obj/structure/chair{ dir = 4 }, -/obj/effect/landmark/latejoin, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/shuttle/arrival) @@ -38571,7 +38473,6 @@ /obj/structure/chair{ dir = 8 }, -/obj/effect/landmark/latejoin, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/shuttle/arrival) @@ -38600,7 +38501,6 @@ name = "Arrivals" }) "bkA" = ( -/obj/structure/extinguisher_cabinet, /turf/closed/wall/shuttle/smooth/nodiagonal, /area/shuttle/arrival) "bkB" = ( @@ -38753,12 +38653,9 @@ /turf/closed/wall/mineral/titanium, /area/shuttle/arrival) "bkU" = ( -/obj/machinery/door/airlock/glass_command{ - name = "Cockpit"; - req_access_txt = "19" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 2 +/obj/machinery/door/airlock/shuttle{ + name = "Arrival Shuttle Airlock"; + req_access_txt = "0" }, /turf/open/floor/plasteel{ tag = "icon-plasteel_warn_side (WEST)" @@ -38800,6 +38697,9 @@ name = "Arrivals" }) "bkY" = ( +/obj/machinery/light/small{ + dir = 1 + }, /turf/open/floor/plasteel/blue/side{ dir = 8 }, @@ -38811,6 +38711,9 @@ }, /area/shuttle/arrival) "bla" = ( +/obj/machinery/light/small{ + dir = 1 + }, /turf/open/floor/plasteel/blue/side{ tag = "icon-blue (EAST)"; icon_state = "blue"; @@ -39007,13 +38910,11 @@ /turf/open/floor/plasteel/purple/corner, /area/hallway/primary/central) "blq" = ( -/obj/machinery/camera{ - c_tag = "Communications Relay"; - dir = 8; - network = list("MINE") - }, -/turf/open/floor/plasteel/vault{ - dir = 8 +/obj/machinery/telecomms/broadcaster/preset_left/birdstation, +/turf/open/floor/circuit{ + initial_gas_mix = "n2=100;TEMP=80"; + name = "Mainframe Base"; + temperature = 80 }, /area/tcommsat/server) "blr" = ( @@ -39085,17 +38986,6 @@ /area/hallway/secondary/entry{ name = "Arrivals" }) -"blw" = ( -/obj/machinery/camera{ - c_tag = "Xenobiology Test Chamber"; - dir = 2; - network = list("Xeno","RD"); - pixel_x = 0 - }, -/turf/open/floor/plasteel/vault{ - dir = 5 - }, -/area/toxins/xenobiology) "blx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/camera{ @@ -39144,10 +39034,6 @@ dir = 5 }, /area/chapel/main) -"blB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall, -/area/chapel/main) "blC" = ( /obj/machinery/mass_driver{ id = "chapelgun" @@ -39173,13 +39059,6 @@ dir = 5 }, /area/chapel/main) -"blE" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - tag = "icon-manifold-b-f (EAST)"; - dir = 4 - }, -/turf/closed/wall, -/area/chapel/main) "blF" = ( /obj/structure/fans/tiny, /turf/open/floor/plating, @@ -39209,12 +39088,6 @@ dir = 5 }, /area/chapel/main) -"blH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/closed/wall, -/area/chapel/main) "blI" = ( /obj/machinery/door/poddoor{ id = "chapelmassdoor"; @@ -39238,6 +39111,2848 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) +"blL" = ( +/obj/machinery/door/airlock/glass{ + name = "Departure Lounge" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"blM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"blN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"blO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"blU" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"blX" = ( +/turf/open/floor/plasteel, +/area/hallway/primary/central{ + name = "Primary Hallway" + }) +"blY" = ( +/obj/machinery/door/airlock/glass{ + name = "Departure Lounge" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"blZ" = ( +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bmb" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bmh" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 0; + frequency = 1441; + id_tag = "o2_out"; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bmw" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bmx" = ( +/turf/closed/wall, +/area/space) +"bmy" = ( +/turf/open/floor/plasteel, +/area/space) +"bmz" = ( +/turf/open/floor/plasteel, +/area/space) +"bmB" = ( +/turf/closed/wall, +/area/space) +"bmC" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bmD" = ( +/turf/open/floor/plasteel, +/area/space) +"bmF" = ( +/turf/closed/wall, +/area/space) +"bmG" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bmH" = ( +/turf/open/floor/plasteel, +/area/space) +"bmJ" = ( +/turf/closed/wall, +/area/space) +"bmK" = ( +/turf/closed/wall, +/area/space) +"bmL" = ( +/turf/closed/wall, +/area/space) +"bmM" = ( +/turf/closed/wall, +/area/space) +"bmN" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 9 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 8; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bmO" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bmP" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "syndieshutters"; + name = "blast shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bmQ" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "syndieshutters"; + name = "blast shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bmR" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "syndieshutters"; + name = "blast shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bmS" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "syndieshutters"; + name = "blast shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bmT" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "syndieshutters"; + name = "blast shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bmU" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bmV" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bmW" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bmX" = ( +/obj/machinery/computer/med_data{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bmY" = ( +/obj/machinery/computer/crew{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bmZ" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bna" = ( +/obj/machinery/computer/shuttle/syndicate, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bnb" = ( +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bnc" = ( +/obj/machinery/computer/camera_advanced{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bnd" = ( +/obj/structure/frame/computer, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bne" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnf" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bng" = ( +/obj/structure/table/reinforced, +/obj/machinery/status_display{ + pixel_x = -32 + }, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/syndie, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bnh" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bni" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnj" = ( +/obj/structure/chair/office/dark{ + dir = 1; + name = "tactical swivel chair" + }, +/obj/machinery/button/door{ + id = "syndieshutters"; + name = "Cockpit View Control"; + pixel_x = 32; + pixel_y = 32; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"bnk" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnl" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnm" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnn" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bno" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnp" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"bnq" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnr" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bns" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnt" = ( +/obj/item/device/radio/intercom{ + desc = "Talk through this. Evilly"; + freerange = 1; + frequency = 1213; + name = "Syndicate Intercom"; + pixel_y = -32; + subspace_transmission = 1; + syndie = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnu" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnv" = ( +/obj/structure/closet/syndicate/personal, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnw" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnx" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bny" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnz" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnA" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnB" = ( +/obj/machinery/door/airlock/hatch{ + name = "Cockpit"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bnC" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnD" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnE" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnF" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bnG" = ( +/turf/open/space, +/area/shuttle/syndicate) +"bnH" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnI" = ( +/obj/structure/table/reinforced, +/obj/item/stack/cable_coil/white, +/obj/item/stack/cable_coil/white, +/obj/item/weapon/crowbar/red, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"bnJ" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnK" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/handcuffs{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/zipties, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"bnL" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnM" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bnN" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnO" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnP" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnQ" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"bnR" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnS" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 9 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 8; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bnT" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnU" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnV" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnW" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnX" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bnY" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bnZ" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boa" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bob" = ( +/obj/machinery/porta_turret/syndicate{ + dir = 4 + }, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"boc" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bod" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/shuttle/syndicate) +"boe" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bof" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bog" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"boh" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"boi" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boj" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bok" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bol" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bom" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bon" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boo" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bop" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"boq" = ( +/obj/structure/tank_dispenser/oxygen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bor" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bos" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bot" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bou" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bov" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bow" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"box" = ( +/obj/machinery/door/poddoor{ + id = "smindicate"; + name = "outer blast door" + }, +/obj/machinery/button/door{ + id = "smindicate"; + name = "external door control"; + pixel_x = -26; + pixel_y = 0; + req_access_txt = "150" + }, +/obj/docking_port/mobile{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate"; + name = "syndicate infiltrator"; + port_angle = 0; + roundstart_move = "syndicate_away"; + width = 18 + }, +/obj/docking_port/stationary{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate_nw"; + name = "northwest of station"; + turf_type = /turf/open/space; + width = 18 + }, +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"boy" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0 + }, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"boz" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"boA" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"boB" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boC" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boD" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boE" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"boF" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"boG" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"boH" = ( +/obj/machinery/door/airlock/external{ + name = "Ready Room"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"boI" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"boJ" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"boK" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boL" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boM" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boN" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"boO" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"boP" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boQ" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boR" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boS" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boT" = ( +/obj/machinery/door/airlock/external{ + name = "E.V.A. Gear Storage"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"boU" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boV" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boW" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boX" = ( +/obj/machinery/door/airlock/external{ + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boY" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"boZ" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpa" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpb" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpc" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpd" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpe" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpf" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpg" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bph" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "EVA Storage"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpi" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpj" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpk" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpl" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bpm" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpn" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpo" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpp" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpq" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bpr" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 9 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 8; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bps" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpt" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpu" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpv" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpw" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpx" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpy" = ( +/obj/item/device/radio/intercom{ + desc = "Talk through this. Evilly"; + freerange = 1; + frequency = 1213; + name = "Syndicate Intercom"; + pixel_x = -32; + subspace_transmission = 1; + syndie = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpz" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpA" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpB" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpC" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpD" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpE" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpF" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpG" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpH" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bpI" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpJ" = ( +/obj/machinery/sleeper/syndie{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpK" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpL" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpM" = ( +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = 6; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = -3 + }, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 3; + pixel_y = -2 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 4; + pixel_y = 1 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 2; + pixel_y = 8 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpN" = ( +/obj/structure/table/reinforced, +/obj/item/stack/medical/gauze, +/obj/item/stack/medical/bruise_pack, +/obj/item/stack/medical/ointment, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpO" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpP" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpQ" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpR" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bpS" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpT" = ( +/obj/item/weapon/stock_parts/cell/high{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/stock_parts/cell/high, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpU" = ( +/obj/item/weapon/screwdriver{ + pixel_y = 9 + }, +/obj/item/device/assembly/voice{ + pixel_y = 3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpV" = ( +/obj/item/weapon/wrench, +/obj/item/device/assembly/infra, +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpW" = ( +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpX" = ( +/obj/item/weapon/weldingtool/largetank{ + pixel_y = 3 + }, +/obj/item/device/multitool, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bpY" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bpZ" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bqa" = ( +/obj/structure/bed/roller, +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bqb" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqc" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqd" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqe" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqf" = ( +/obj/structure/sign/bluecross_2, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bqg" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqh" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqi" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqj" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bqk" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bql" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqm" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqn" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqo" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/syndicate, +/obj/item/weapon/crowbar/red, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqp" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bqq" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bqr" = ( +/obj/machinery/sleeper/syndie{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqs" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqt" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqu" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqv" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqw" = ( +/obj/machinery/door/airlock/hatch{ + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bqx" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqy" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqz" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqA" = ( +/obj/machinery/door/window/westright{ + name = "Tool Storage"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqB" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqC" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqD" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqE" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqF" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqG" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bqH" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bqI" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqJ" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqK" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqL" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqM" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqN" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Infirmary"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"bqO" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqP" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqQ" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqR" = ( +/obj/machinery/door/window{ + dir = 8; + name = "Tool Storage"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqS" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqT" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqU" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqV" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bqW" = ( +/obj/structure/closet/syndicate/nuclear, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bqX" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bqY" = ( +/obj/machinery/porta_turret/syndicate{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bqZ" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/item/bodypart/r_arm/robot, +/obj/item/bodypart/l_arm/robot, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"bra" = ( +/obj/machinery/door/window{ + dir = 1; + name = "Surgery"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"brb" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"brc" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/brute, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"brd" = ( +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"bre" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brf" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"brg" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"brh" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bri" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brj" = ( +/obj/item/device/sbeacondrop/bomb{ + pixel_y = 5 + }, +/obj/item/device/sbeacondrop/bomb, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"brk" = ( +/obj/item/weapon/grenade/syndieminibomb{ + pixel_x = 4; + pixel_y = 2 + }, +/obj/item/weapon/grenade/syndieminibomb{ + pixel_x = -1 + }, +/obj/structure/table/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"brl" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"brm" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"brn" = ( +/obj/machinery/recharge_station, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bro" = ( +/obj/machinery/porta_turret/syndicate{ + dir = 4 + }, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brp" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brq" = ( +/obj/item/weapon/surgicaldrill, +/obj/item/weapon/circular_saw, +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"brr" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"brs" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = 30 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"brt" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bru" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brv" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brw" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"brx" = ( +/obj/machinery/nuclearbomb/syndicate, +/obj/machinery/door/window{ + dir = 1; + name = "Theatre Stage"; + req_access_txt = "0" + }, +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) +"bry" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"brz" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brA" = ( +/obj/machinery/telecomms/allinone{ + intercept = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"brB" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brC" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"brD" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"brE" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"brF" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brG" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brH" = ( +/obj/item/weapon/cautery, +/obj/item/weapon/scalpel, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"brI" = ( +/obj/structure/table/optable, +/obj/item/weapon/surgical_drapes, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"brJ" = ( +/obj/item/weapon/retractor, +/obj/item/weapon/hemostat, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"brK" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brL" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brM" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"brN" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"brO" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"brP" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brQ" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brR" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brS" = ( +/obj/machinery/recharge_station, +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) +"brT" = ( +/obj/machinery/telecomms/allinone{ + intercept = 1 + }, +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) +"brU" = ( +/obj/structure/rack, +/obj/item/clothing/suit/space/syndicate/black/red, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"brV" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brW" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"brX" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"brY" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"brZ" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bsa" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bsb" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bsc" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_l" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"bsd" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"bse" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_r" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"bsf" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bsg" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bsh" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bsi" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bsj" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bsk" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"bsl" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bsm" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_l" + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bsn" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bso" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_r" + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bsp" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 6 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bsq" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 10 + }, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bsr" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_l" + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bss" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bst" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_r" + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bsu" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bsv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable/white{ + tag = "icon-2-8"; + icon_state = "2-8" + }, +/obj/structure/cable/white{ + tag = "icon-2-4"; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/escape{ + tag = "icon-escape (NORTH)"; + icon_state = "escape"; + dir = 1 + }, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsw" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/bot, +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsx" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/bot, +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsy" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/bot, +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/white{ + tag = "icon-1-4"; + icon_state = "1-4" + }, +/obj/structure/cable/white{ + tag = "icon-2-4"; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 4 + }, +/area/hallway/primary/central{ + name = "Primary Hallway" + }) +"bsA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central{ + name = "Primary Hallway" + }) +"bsB" = ( +/obj/machinery/door/airlock/glass{ + name = "Departure Lounge" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsE" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/machinery/light, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsH" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsJ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/light, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsM" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-2-8"; + icon_state = "2-8" + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsN" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Departure Lounge" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsP" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + tag = "icon-manifold (NORTH)"; + icon_state = "manifold"; + dir = 1 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/neutral, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsQ" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + tag = "icon-manifold (EAST)"; + icon_state = "manifold"; + dir = 4 + }, +/obj/effect/turf_decal/bot, +/obj/structure/cable/white{ + tag = "icon-1-8"; + icon_state = "1-8" + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/white{ + tag = "icon-2-8"; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/neutral, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsS" = ( +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsT" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/neutral, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsU" = ( +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/space) +"bsV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/escape, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsW" = ( +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/space) +"bsX" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_mining{ + name = "Cargo Port"; + req_access_txt = "48;50" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsY" = ( +/obj/structure/cable/white{ + tag = "icon-1-4"; + icon_state = "1-4" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bsZ" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_mining{ + name = "Cargo Port"; + req_access_txt = "48;50" + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bta" = ( +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTHWEST)"; + icon_state = "brown"; + dir = 9 + }, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"btb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + tag = "icon-intact (SOUTHEAST)"; + icon_state = "intact"; + dir = 6 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTH)"; + icon_state = "brown"; + dir = 1 + }, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"btc" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + tag = "icon-intact (NORTHWEST)"; + icon_state = "intact"; + dir = 9 + }, +/obj/effect/turf_decal/delivery, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"btd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/white{ + tag = "icon-1-8"; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTH)"; + icon_state = "brown"; + dir = 1 + }, +/area/hallway/secondary/exit{ + name = "\improper Departure Lounge" + }) +"bte" = ( +/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/grille, +/turf/open/floor/plating, +/area/maintenance/starboard) +"btf" = ( +/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/grille, +/turf/open/floor/plating, +/area/space) +"btg" = ( +/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/grille, +/turf/open/floor/plating, +/area/space) +"bth" = ( +/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/grille, +/turf/open/floor/plating, +/area/space) +"bti" = ( +/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/grille, +/turf/open/floor/plating, +/area/space) +"btj" = ( +/obj/docking_port/mobile/arrivals{ + dir = 2; + dwidth = 4; + height = 17; + name = "delta arrivals shuttle"; + width = 9 + }, +/obj/docking_port/stationary{ + dir = 2; + dwidth = 4; + height = 17; + id = "arrivals_stationary"; + name = "delta arrivals"; + width = 9 + }, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/arrival) +"btk" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"btl" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"btm" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"btn" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "External Docking Port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry{ + name = "Arrivals" + }) +"bto" = ( +/obj/machinery/computer/secure_data{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"btp" = ( +/obj/structure/chair/office/dark{ + dir = 8; + name = "tactical swivel chair" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"btq" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"btr" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"bts" = ( +/obj/structure/chair/office/dark{ + dir = 4; + name = "tactical swivel chair" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"btt" = ( +/obj/structure/table/reinforced, +/obj/machinery/ai_status_display{ + pixel_x = 32 + }, +/obj/item/weapon/storage/fancy/donut_box, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"btu" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"btv" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btw" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btx" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"bty" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btz" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"btA" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btB" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btC" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btD" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btE" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"btF" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"btG" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btH" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btI" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"btJ" = ( +/obj/item/weapon/storage/toolbox/syndicate, +/obj/item/weapon/crowbar/red, +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/shuttle/syndicate) +"btK" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"btL" = ( +/obj/structure/chair{ + name = "tactical chair" + }, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"btM" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"btN" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"btO" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"btP" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"btQ" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"btR" = ( +/obj/structure/chair{ + dir = 1; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"btS" = ( +/obj/structure/chair{ + dir = 1; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"btT" = ( +/obj/structure/rack, +/obj/item/clothing/suit/space/syndicate/black/red, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"btU" = ( +/obj/machinery/ai_status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"btV" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"btW" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"btX" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"btY" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"btZ" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"bua" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"bub" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 9 + }, +/area/shuttle/syndicate) +"buc" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"bud" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"bue" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"buf" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"bug" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"buh" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"bui" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"buj" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/shuttle/syndicate) +"buk" = ( +/obj/structure/closet/syndicate/personal, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bul" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker, +/obj/item/weapon/reagent_containers/dropper, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"bum" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/shuttle/syndicate) +"bun" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"buo" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"bup" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"buq" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"bur" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"bus" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"but" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"buu" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"buv" = ( +/obj/machinery/door/window{ + dir = 1; + name = "Technological Storage"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"buw" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/table/reinforced, +/obj/item/device/aicard, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"bux" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"buy" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/shuttle/supply) +"buz" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/shuttle/supply) +"buA" = ( +/obj/machinery/requests_console{ + department = "Arrival shuttle"; + name = "Arrivals Shuttle console"; + pixel_y = 0 + }, +/turf/closed/wall/shuttle/smooth/nodiagonal, +/area/shuttle/arrival) +"buB" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/neutral, +/area/shuttle/arrival) +"buC" = ( +/turf/open/floor/plasteel/grimy, +/area/tcommsat/server) +"buD" = ( +/turf/open/floor/plasteel/grimy, +/area/tcommsat/server) +"buE" = ( +/turf/open/floor/plasteel/grimy, +/area/tcommsat/server) +"buF" = ( +/turf/open/floor/plasteel/grimy, +/area/tcommsat/server) +"buG" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, +/area/tcommsat/server) +"buH" = ( +/obj/machinery/telecomms/bus/preset_one/birdstation, +/obj/machinery/power/apc{ + dir = 8; + name = "Telecoms Server Room APC"; + pixel_x = -26; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/circuit/green{ + initial_gas_mix = "n2=100;TEMP=80"; + temperature = 80 + }, +/area/tcommsat/server) +"buI" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 7 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, +/area/tcommsat/server) +"buJ" = ( +/obj/machinery/telecomms/server/presets/common/birdstation, +/turf/open/floor/circuit/green{ + initial_gas_mix = "n2=100;TEMP=80"; + temperature = 80 + }, +/area/tcommsat/server) +"buK" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, +/area/tcommsat/server) +"buL" = ( +/obj/machinery/telecomms/hub/preset, +/turf/open/floor/circuit/green{ + initial_gas_mix = "n2=100;TEMP=80"; + temperature = 80 + }, +/area/tcommsat/server) +"buM" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, +/area/tcommsat/server) +"buN" = ( +/obj/machinery/announcement_system, +/obj/machinery/ai_status_display{ + pixel_x = 32 + }, +/turf/open/floor/circuit{ + initial_gas_mix = "n2=100;TEMP=80"; + name = "Mainframe Base"; + temperature = 80 + }, +/area/tcommsat/server) +"buO" = ( +/obj/machinery/telecomms/receiver/preset_left/birdstation, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23; + pixel_y = 0 + }, +/turf/open/floor/circuit/green{ + initial_gas_mix = "n2=100;TEMP=80"; + temperature = 80 + }, +/area/tcommsat/server) +"buP" = ( +/obj/machinery/message_server, +/turf/open/floor/circuit/green{ + initial_gas_mix = "n2=100;TEMP=80"; + temperature = 80 + }, +/area/tcommsat/server) +"buQ" = ( +/obj/machinery/telecomms/processor/preset_one/birdstation, +/turf/open/floor/circuit{ + initial_gas_mix = "n2=100;TEMP=80"; + name = "Mainframe Base"; + temperature = 80 + }, +/area/tcommsat/server) +"buR" = ( +/obj/machinery/status_display{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, +/area/tcommsat/server) +"buS" = ( +/obj/machinery/ntnet_relay, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, +/area/tcommsat/server) +"buT" = ( +/obj/machinery/status_display{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, +/area/tcommsat/server) +"buU" = ( +/obj/machinery/camera{ + c_tag = "Communications Relay"; + dir = 8; + network = list("MINE") + }, +/turf/open/floor/plasteel/vault{ + dir = 5; + initial_gas_mix = "n2=100;TEMP=80"; + tag = ""; + temperature = 80 + }, +/area/tcommsat/server) (1,1,1) = {" aaa @@ -67381,12 +70096,12 @@ aMJ aMJ aMJ aMJ +aMJ +aMJ +aMJ abP aad aad -aad -aad -aac aaa aaa aaa @@ -67631,19 +70346,19 @@ aLG aMJ aNT aOv +buC aPG -aQF aRB -aSL +aPG aTX -aQG +buH +buJ +buO +aRB aMJ acG ahu aad -aad -aad -aac aac aaa aaa @@ -67799,16 +70514,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmN +bmO +bmO +bmO +bmO +bmO +bmO +bmO +bmO +bnx aaa aaa aaa @@ -67888,19 +70603,19 @@ aLH aMK aNU aOw +buD +aPG +aRB aPG aQG -aRC -aQG -aQG aUO +buK +aRB +buR aMJ afM afL aad -aad -aad -aad aac aaa aaa @@ -68050,22 +70765,22 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmN +bmO +bmO +bmO +bmO +bmO +bmO +bpJ +bqa +bpJ +bul +bqZ +brq +brH +brM +bsc aaa aaa aaa @@ -68145,20 +70860,20 @@ aLI aML aNV aNV -aPH +aNV aQH aRD aSM aTY aUP +buL +buP +buS aMJ afM aad aad aad -aad -aad -aad aaa aaa aaa @@ -68307,22 +71022,22 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmO +bod +btF +btF +btF +btO +bmO +btN +bnp +btv +btv +bra +btv +brI +brM +bsd aaa aaa aaa @@ -68402,20 +71117,20 @@ aLJ aMM aNW aOx +buE aPG -aQG -aQG -aQG -aQG -aUO +aRB +aPG +buG +buI +buM +aRB +buT aMJ aad aad aad aad -aad -aad -aad aaa aaa aaa @@ -68564,22 +71279,22 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmO +btv +btv +btv +btv +btv +btU +bpL +bnp +bub +bum +brb +brs +brJ +brM +bse aaa aaa aaa @@ -68659,19 +71374,19 @@ aLK aMJ aNX aOy +buF aPG -aQI aRE aSN aTZ blq +buN +buQ +buU aMJ agE afL aad -aad -aad -aad aaa aaa aaa @@ -68814,29 +71529,29 @@ aaa aaa aaa aaa +bmN +bmO +bmO +bmO +bnx aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmO +btv +btv +btv +btv +btv +bmO +bpM +bnp +buc +btK +brc +bmO +bmO +bmO +bsp aaa aaa aaa @@ -68919,6 +71634,9 @@ aMN aMN aMN aMN +aMN +aMN +aMN aSO aMJ aMJ @@ -68926,9 +71644,6 @@ aMJ abi ahu ahu -aad -aad -aad aac aaa aaa @@ -69071,26 +71786,26 @@ aaa aaa aaa aaa +bmO +bmX +bng +bnp +bmO +bsq aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmO +bog +boq +boE +btN +btP +bmO +bpN +bnp +buc +btK +brd +bmO aaa aaa aaa @@ -69328,28 +72043,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmP +bmY +btp +bnp +bmO +bmO +bmO +bmO +bmO +bmO +bmO +boT +boG +bmO +bmO +bmO +bqw +boG +bmO +bmO +bmO +bnx aaa aaa aaa @@ -69585,28 +72300,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmP +bmZ +btq +bnp +btu +bnI +btw +bty +btw +btw +boG +btv +btv +btv +btv +btY +buc +btK +bnp +boG +brM +bsc aaa aaa aaa @@ -69842,28 +72557,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmP +bna +bnj +bnp +bnB +btv +btq +btq +btq +btv +boH +btv +btq +btq +btq +btq +buc +btK +bnp +brx +brM +bsd aaa aaa aaa @@ -70099,28 +72814,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmP +bnb +btq +bnp +bmO +bnK +bnQ +btA +bnQ +bnQ +boG +btv +btv +btv +btv +bua +buc +btK +bnp +boG +brM +bse aaa aaa aaa @@ -70356,28 +73071,28 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmP +bnc +bts +bnp +bmO +bmO +bmO +bob +bmO +bmO +bmO +boX +boG +bmO +bmO +bmO +bqw +boG +bmO +bmO +bmO +bnF aaa aaa aaa @@ -70613,26 +73328,26 @@ aaa aaa aaa aaa +bmO +bto +btt +bnp +bmO +bsp aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmO +btJ +btv +btR +bmO +bpT +bnp +buc +btK +brj +bmO aaa aaa aaa @@ -70870,29 +73585,29 @@ aaa aaa aaa aaa +bmV +bmO +bmO +bmO +bnF aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +box +btK +btv +btR +bmO +bpU +bnp +buc +btK +brk +bmO +bmO +bmO +bsq aaa aaa aaa @@ -71136,20 +73851,20 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +boy +btL +btv +btT +btu +bpV +bnp +buj +buu +brb +btv +brS +brM +bsc aaa aaa aaa @@ -71393,20 +74108,20 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmV +bmO +bmO +bmO +bmO +bpW +bnp +btv +btv +buv +btv +brT +brM +bsd aaa aaa aaa @@ -71653,17 +74368,17 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bpq +bmO +bpX +bnp +buk +bqW +buw +bua +brS +brM +bse aaa aaa aaa @@ -71911,16 +74626,16 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bmV +bmO +bmO +bmO +bmO +bmO +bmO +bmO +bmO +bnF aaa aaa aaa @@ -79227,14 +81942,14 @@ bgU bgP bjY bgU -bkh +btk bgU bku bkz bkC bkE bgU -bkh +btk bgU bjX bgP @@ -79741,14 +82456,14 @@ aaa aaa aaa bgU -bkj +btl bgU aae aaa aaa aae bgU -bkj +btl bgU aaa aaa @@ -81022,18 +83737,18 @@ blv bgU aaa aaa -bjO +btj bjO bjZ bkf bko bkr +buA bkx -bkA bkD -bkF bkx -bkL +bkF +buB bkP bkU bkZ @@ -84841,7 +87556,7 @@ anl aDZ aFh aFY -aGY +bsz aDZ aIY aDZ @@ -85097,8 +87812,8 @@ aCh aDc aEa aFi -aib -aGZ +blX +bsA aHY aIZ blm @@ -85347,22 +88062,22 @@ avv acx axf abt +abt +abt +abt +abt +abt axW -azb -axW -axW -axW -azb -aFj -aFZ -aHa -azb -axW -aKh -aLo -azb -axW +blL +blY +bsB axW +abt +abt +abt +abt +abt +abt anQ anQ abt @@ -85604,22 +88319,22 @@ avw awz axg abt -ayW -azV -aBc -aCi -aDd -aEb -aFk -aDh -aHb -aHZ -aJa -azb -aLp -aMz -aNG -azb +aaa +aaa +aaa +aaa +aaa +axW +blM +blZ +bsC +axW +aaa +aaa +aaa +aaa +aaa +aaa aae aae aRy @@ -85861,22 +88576,22 @@ abt abt abt abt -ayX -azW -aBd -aCj -aDe -aEc -aFl -aGa -aHc -aIa -aJb -aKi -aLq -aIa -aNH +aaa +aaa +aaa +aaa +aaa axW +blN +blZ +bsD +axW +aaa +aaa +aaa +aaa +aaa +bte aPz aPz aRz @@ -86117,23 +88832,23 @@ abt aad aad aad +aaa +aaa +aaa +aaa +aaa +aaa axW -ayY -azX -aBe -aCk -aDf -aEd -aFm -aEd -aHd -aEd -aJc -aKj -aLr -aMA -aNI +blO +bmb +bsE axW +aaa +aaa +aaa +aaa +aaa +bte aPA aQB aRz @@ -86374,23 +89089,23 @@ abt aad aad aad -axW -ayZ -azY -aBf -aCl -aDg -aEe -aFn -aGb -aEe -aEe -aJd -aKk -aLs -aMB -aNJ -axW +aaa +aaa +aaa +aaa +aaa +aaa +azb +blM +blZ +bsC +azb +aaa +aaa +aaa +aaa +aaa +bte aPB aQC aRz @@ -86631,23 +89346,23 @@ abt aad aac aac -axW -aza -azZ -aBg -aCm -aDh -aEf -aEf -bll -aEf -aEf -aDh +aaa +aaa +aaa +aaa +aaa +aaa azb -aLt -aMC -aNK -axW +blM +blZ +bsC +azb +aaa +aaa +aaa +aaa +aaa +bte aPC aQD aRA @@ -86888,23 +89603,23 @@ abu aac aac aae -axW +aaa +aaa +aaa +aaa +aaa +aaa azb +blM +blZ +bsC azb -aBh -aCn -aDi -azb -azb -aGc -azb -azb -aDi -aKl -aDi -azb -azb -axW +aaa +aaa +aaa +aaa +aaa +bte aPz aPz aRz @@ -87145,23 +89860,23 @@ aac aae aae aae -aae -aae +aaa +aaa +aaa +aaa +aaa +aaa azb -aBi +blM +blZ +bsC azb -aBi -azb -aae -aae -aae -azb -aBi -azb -aLu -azb -aae -aae +aaa +aaa +aaa +aaa +aaa +aaa aae aae aRz @@ -87404,19 +90119,19 @@ aaa aaa aaa aaa -azb -aBh -azb -aDi -azb aaa aaa aaa -azb -aDi -azb -aLv -azb +aaa +axW +blO +blZ +bsJ +axW +axW +axW +axW +axW aaa aaa aaa @@ -87659,24 +90374,24 @@ aaa aaa aaa aaa -axX -axX -axX -aBj -axZ -aDj -axX -axY -axY -axY -axX -aJe -axZ -aJe -axX -axX -aLz -aPD +aaa +aaa +aaa +aaa +aaa +aaa +axW +blU +bmh +bsC +bmw +blZ +bmC +bmG +axW +aaa +aaa +aaa aaa aaa aaa @@ -87916,25 +90631,25 @@ aaa aaa aaa aaa -axX -azc -aAa -aAb -axY -aDk -aEg -aEm -aEm -aEm -aEg -aDk -axY -aDk -aMD -aNL -axX -aPD -aQE +aaa +aaa +aaa +aaa +aaa +aaa +axW +blM +blZ +bsC +blZ +blZ +blZ +blZ +axW +aaa +aaa +aaa +aaa aaa aaa aaa @@ -88173,25 +90888,25 @@ aaa aaa aaa aaa -axY -azd -aAb -aAb -aCo -aDl -aEh -aEh -aEh -aEh -aEh -aJf -aKm -aLw -aME -aNM -axY -aPE -aQE +aaa +aaa +aaa +aaa +aaa +aaa +axW +blM +blZ +bsM +bsS +bsS +bsS +bsY +axW +aaa +aaa +aaa +aaa aaa aaa aaa @@ -88430,25 +91145,25 @@ aaa aaa aaa aaa -axY -azd -aAb -aAb -axY -aDl -aEi -aEi -aEi -aEi -aEi -aJf -aKm -aLx -aMF -aNN -axY -aPF -aQE +axW +axW +azb +axW +axW +axW +azb +aFj +aFZ +bsN +azb +axW +aKh +bsZ +azb +axW +axW +aaa +aaa aaa aaa aaa @@ -88663,7 +91378,7 @@ aaa aaa aaa abQ -acB +buy adt adt adt @@ -88687,25 +91402,25 @@ aaa aaa aaa aaa -axX -aze -aAb -aBk -axY -aDl -aEj -aFo -aEl -aFp -aEj -aJf -axY -aLy -aMG -aNO -axX -aPF -aQE +axW +ayW +azV +aBc +aCi +aDd +aEb +aFk +aDh +bsO +aHZ +aJa +azb +bta +aMz +aNG +azb +aaa +aaa aaa aaa aaa @@ -88944,25 +91659,25 @@ aaa aaa aaa aaa -axZ -axY -aAc -axY -aCp -aDl -aEk -aEj -aGd -aEl -aEk -aJf -aKn -aLz -axY -aLz -aLz -aPD -aPD +axW +ayX +azW +aBd +aCj +aDe +aEc +aFl +aGa +bsP +aIa +aJb +aKi +btb +aIa +aNH +axW +aaa +aaa aaa aaa aaa @@ -89181,7 +91896,7 @@ acC adu aek adu -aek +buz aek adu aij @@ -89201,25 +91916,25 @@ aaa aaa aaa aaa -axX -azf -aAd -aBl -axY -aDl -aEl -aFp -aEj -aFo -aEl -aJf -axY -aLA -aMH -aNP -axX -aPF -aQE +axW +ayY +azX +aBe +aCk +bsv +bsw +bsx +bsw +bsQ +aEd +aJc +aKj +btc +aMA +aNI +axW +aaa +aaa aaa aaa aaa @@ -89458,25 +92173,25 @@ aaa aaa aaa aaa -axY -azg -aAe -aAd -aCq -aDl -aEm -aEm -aEm -aEm -aEm -aJf -aKo -aLB -aLB -aNQ -axY -aPF -aQE +axW +ayZ +azY +aBf +aCl +aDg +aEe +aFn +aGb +bsR +bsT +bsV +bsX +btd +aMB +aNJ +axW +aaa +aaa aaa aaa aaa @@ -89715,25 +92430,25 @@ aaa aaa aaa aaa -axY -azh -aAd -aBm -axY -aDl -aEh -aEh -aEh -aEh -aEh -aJf -aKo -aLB -aLB -aNR -axY -aPF -aQE +axW +aza +azZ +aBg +aCm +aDh +aEf +aEf +bll +aEf +aEf +aDh +azb +aLt +aMC +aNK +axW +aaa +aaa aaa aaa aaa @@ -89972,25 +92687,25 @@ aaa aaa aaa aaa -axY -azi -aAf -aBn -axX -aDm -aEi -aEi -aEi -aEi -aEi -aJg -axY -aLC -aMI -aNS -axX -aPD -aQE +axW +azb +azb +aBh +aCn +aDi +azb +azb +aGc +azb +azb +aDi +aKl +aDi +azb +azb +axW +aaa +aaa aaa aaa aaa @@ -90229,24 +92944,24 @@ aaa aaa aaa aaa -axX -axY -axY -axX -axZ -axX -axY -axY -axY -axY -axY -axX -axZ -axX -axX -axX -aLz -aPD +aae +aae +azb +aBi +azb +aBi +azb +aae +aae +aae +azb +aBi +azb +aLu +azb +aae +aae +aaa aaa aaa aaa @@ -90488,19 +93203,19 @@ aaa aaa aaa aaa +azb +aBh +azb +aDi +azb aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +azb +aDi +azb +aLv +azb aaa aaa aaa @@ -90743,24 +93458,24 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axX +axX +axX +aBj +axZ +aDj +axX +axY +axY +axY +axX +aJe +axZ +aJe +axX +axX +aLz +aPD aaa aaa aaa @@ -91000,25 +93715,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axX +azc +aAa +aAb +axY +aDk +aEg +aEm +aEm +aEm +aEg +aDk +axY +aDk +aMD +aNL +axX +aPD +aQE aaa aaa aaa @@ -91257,25 +93972,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axY +azd +aAb +aAb +aCo +aDl +aEh +aEh +aEh +aEh +aEh +aJf +aKm +aLw +aME +aNM +axY +aPE +aQE aaa aaa aaa @@ -91514,25 +94229,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axY +azd +aAb +aAb +axY +aDl +aEi +aEi +aEi +aEi +aEi +aJf +aKm +aLx +aMF +aNN +axY +aPF +aQE aaa aaa aaa @@ -91771,25 +94486,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axX +aze +aAb +aBk +axY +aDl +aEj +aFo +aEl +aFp +aEj +aJf +axY +aLy +aMG +aNO +axX +aPF +aQE aaa aaa aaa @@ -92028,25 +94743,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axZ +axY +aAc +axY +aCp +aDl +aEk +aEj +aGd +aEl +aEk +aJf +aKn +aLz +axY +aLz +aLz +aPD +aPD aaa aaa aaa @@ -92285,25 +95000,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axX +azf +aAd +aBl +axY +aDl +aEl +aFp +aEj +aFo +aEl +aJf +axY +aLA +aMH +aNP +axX +aPF +aQE aaa aaa aaa @@ -92542,25 +95257,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axY +azg +aAe +aAd +aCq +aDl +aEm +aEm +aEm +aEm +aEm +aJf +aKo +aLB +aLB +aNQ +axY +aPF +aQE aaa aaa aaa @@ -92799,25 +95514,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axY +azh +aAd +aBm +axY +aDl +aEh +aEh +aEh +aEh +aEh +aJf +aKo +aLB +aLB +aNR +axY +aPF +aQE aaa aaa aaa @@ -93056,25 +95771,25 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axY +azi +aAf +aBn +axX +aDm +aEi +aEi +aEi +aEi +aEi +aJg +axY +aLC +aMI +aNS +axX +aPD +aQE aaa aaa aaa @@ -93313,24 +96028,24 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +axX +axY +axY +axX +axZ +axX +axY +axY +axY +axY +axY +axX +axZ +axX +axX +axX +aLz +aPD aaa aaa aaa diff --git a/_maps/map_files/OmegaStation/job_changes.dm b/_maps/map_files/OmegaStation/job_changes.dm new file mode 100644 index 0000000000..1aa52e6eac --- /dev/null +++ b/_maps/map_files/OmegaStation/job_changes.dm @@ -0,0 +1,167 @@ + +//custom access for some jobs. pasted together from ministation. + +#define JOB_MODIFICATION_MAP_NAME "OmegaStation" + +/datum/job/New() + ..() + MAP_JOB_CHECK + supervisors = "the captain and the head of personnel" + +/datum/outfit/job/New() + ..() + MAP_JOB_CHECK + box = /obj/item/weapon/storage/box/survival/radio + +/datum/job/assistant // Here so assistant appears on the top of the select job list. + +//Command + +/datum/job/captain/New() + ..() + MAP_JOB_CHECK + supervisors = "Nanotrasen and Central Command" + +/datum/job/hop/New() + ..() + MAP_JOB_CHECK + supervisors = "the captain and Central Command" + +/datum/job/hop/get_access() + MAP_JOB_CHECK_BASE + return get_all_accesses() + +//Security + +/datum/job/officer/New() + ..() + MAP_JOB_CHECK + total_positions = 3 + spawn_positions = 3 + access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_morgue, access_weapons, access_forensics_lockers) + minimal_access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_morgue, access_weapons, access_forensics_lockers) + +/datum/outfit/job/officer/New() + ..() + MAP_JOB_CHECK + box = /obj/item/weapon/storage/box/security/radio + +/datum/job/detective/New() + ..() + MAP_JOB_CHECK + access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_morgue, access_weapons, access_forensics_lockers) + minimal_access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_morgue, access_weapons, access_forensics_lockers) + +/datum/outfit/job/detective/New() + ..() + MAP_JOB_CHECK + box = /obj/item/weapon/storage/box/security/radio + +//Medbay + +/datum/job/doctor/New() + ..() + MAP_JOB_CHECK + selection_color = "#ffffff" + total_positions = 3 + spawn_positions = 3 + access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) + minimal_access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) + +//Engineering + +/datum/job/engineer/New() + ..() + MAP_JOB_CHECK + total_positions = 2 + spawn_positions = 2 + access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics, access_tcomsat) + minimal_access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction, access_atmospherics, access_tcomsat) + +/datum/outfit/job/engineer/New() + ..() + MAP_JOB_CHECK + box = /obj/item/weapon/storage/box/engineer/radio + +/datum/job/atmos/New() + ..() + MAP_JOB_CHECK + total_positions = 2 + spawn_positions = 2 + +//Science + +/datum/job/scientist/New() + ..() + MAP_JOB_CHECK + total_positions = 3 + spawn_positions = 3 + access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_mineral_storeroom, access_tech_storage) + minimal_access = list(access_robotics, access_tox, access_tox_storage, access_research, access_xenobiology, access_mineral_storeroom, access_tech_storage) + +//Cargo + +/datum/job/cargo_tech/New() + ..() + MAP_JOB_CHECK + total_positions = 2 + spawn_positions = 2 + access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station, access_mineral_storeroom) + minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station, access_mineral_storeroom) + +/datum/job/mining/New() + ..() + MAP_JOB_CHECK + total_positions = 2 + spawn_positions = 2 + access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station, access_mineral_storeroom) + minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station, access_mineral_storeroom) + +/datum/outfit/job/mining/New() + ..() + box = /obj/item/weapon/storage/box/engineer/radio + +//Service + +/datum/job/bartender/New() + ..() + MAP_JOB_CHECK + access = list(access_hydroponics, access_bar, access_kitchen, access_morgue, access_weapons) + minimal_access = list(access_hydroponics, access_bar, access_kitchen, access_morgue, access_weapons) + +/datum/job/cook/New() + ..() + MAP_JOB_CHECK + access = list(access_hydroponics, access_bar, access_kitchen, access_morgue, access_weapons) + minimal_access = list(access_hydroponics, access_bar, access_kitchen, access_morgue, access_weapons) + +/datum/job/hydro/New() + ..() + MAP_JOB_CHECK + access = list(access_hydroponics, access_bar, access_kitchen, access_morgue, access_maint_tunnels) + minimal_access = list(access_hydroponics, access_bar, access_kitchen, access_morgue, access_maint_tunnels) + // they get maint access because of all the hydro content in maint + +/datum/job/janitor/New() + ..() + MAP_JOB_CHECK + access = list(access_janitor, access_hydroponics, access_bar, access_kitchen, access_morgue, access_maint_tunnels) + minimal_access = list(access_janitor, access_hydroponics, access_bar, access_kitchen, access_morgue, access_maint_tunnels) + + +//Civilian + +/datum/job/clown/New() + ..() + MAP_JOB_CHECK + supervisors = "nobody but yourself" //Honk + +MAP_REMOVE_JOB(hos) +MAP_REMOVE_JOB(chief_engineer) +MAP_REMOVE_JOB(qm) +MAP_REMOVE_JOB(cmo) +MAP_REMOVE_JOB(geneticist) +MAP_REMOVE_JOB(virologist) +MAP_REMOVE_JOB(rd) +MAP_REMOVE_JOB(warden) +MAP_REMOVE_JOB(lawyer) \ No newline at end of file diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm index 992ec1f31c..e7a41aabfd 100644 --- a/_maps/map_files/PubbyStation/PubbyStation.dmm +++ b/_maps/map_files/PubbyStation/PubbyStation.dmm @@ -59,7 +59,7 @@ /turf/open/floor/plasteel/black, /area/wreck/ai) "aam" = ( -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aan" = ( /obj/machinery/camera/motion{ @@ -73,7 +73,7 @@ pixel_x = 0; pixel_y = -24 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aao" = ( /obj/effect/turf_decal/stripes/line{ @@ -144,7 +144,7 @@ dir = 1; pixel_y = 26 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aau" = ( /obj/machinery/power/smes{ @@ -169,7 +169,7 @@ /obj/machinery/ai_status_display{ pixel_y = 32 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aav" = ( /obj/structure/cable{ @@ -194,7 +194,7 @@ pixel_x = 27; pixel_y = 0 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aaw" = ( /obj/structure/bed, @@ -228,7 +228,7 @@ icon_state = "2-4"; tag = "" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aaz" = ( /obj/structure/cable/yellow{ @@ -323,7 +323,7 @@ d2 = 2; icon_state = "1-2" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aaI" = ( /obj/effect/landmark/start{ @@ -364,7 +364,7 @@ pixel_x = 28; pixel_y = -28 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aaJ" = ( /turf/open/space, @@ -375,7 +375,7 @@ d2 = 4; icon_state = "1-4" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aaL" = ( /obj/structure/cable/yellow{ @@ -383,17 +383,17 @@ d2 = 8; icon_state = "2-8" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aaM" = ( /obj/machinery/door/firedoor/heavy, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aaN" = ( /obj/machinery/airalarm{ pixel_y = 22 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aaO" = ( /obj/machinery/camera/motion{ @@ -412,7 +412,7 @@ /obj/machinery/ai_status_display{ pixel_y = 37 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "aaP" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on, @@ -1066,6 +1066,9 @@ /obj/item/seeds/potato, /obj/item/seeds/carrot, /obj/item/seeds/corn, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel/black, /area/security/prison) "acw" = ( @@ -1076,9 +1079,6 @@ icon_state = "1-4"; tag = "" }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, /turf/open/floor/plasteel/black, /area/security/prison) "acx" = ( @@ -1113,9 +1113,6 @@ icon_state = "4-8"; pixel_x = 0 }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, /turf/open/floor/plasteel/black, /area/security/prison) "acz" = ( @@ -1127,6 +1124,9 @@ icon_state = "4-8"; pixel_x = 0 }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel/black, /area/security/prison) "acA" = ( @@ -1141,13 +1141,13 @@ d2 = 2; icon_state = "1-2" }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, /turf/open/floor/plasteel/black, /area/security/prison) "acB" = ( /obj/machinery/biogenerator, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel/darkgreen/side{ dir = 8 }, @@ -2975,7 +2975,7 @@ req_access_txt = "3" }, /obj/item/weapon/book/codex_gigas, -/obj/item/weapon/poster/contraband, +/obj/item/weapon/poster/random_contraband, /obj/item/weapon/grenade/smokebomb, /turf/open/floor/plasteel/black, /area/security/armory) @@ -3576,9 +3576,8 @@ "ahz" = ( /obj/structure/bed, /obj/item/weapon/bedsheet, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 }, /turf/open/floor/plating, /area/maintenance/fpmaint2{ @@ -3871,9 +3870,8 @@ /area/maintenance/fsmaint) "aia" = ( /obj/item/weapon/cigbutt/cigarbutt, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 }, /turf/open/floor/plating{ burnt = 1; @@ -6233,6 +6231,9 @@ pixel_x = 32; pixel_y = 0 }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/pod_1) "amn" = ( @@ -7153,9 +7154,6 @@ /area/crew_quarters/sleep) "aoe" = ( /obj/structure/table, -/obj/structure/sign/poster{ - pixel_x = 32 - }, /obj/item/clothing/under/color/grey, /obj/machinery/power/apc{ dir = 1; @@ -7166,6 +7164,9 @@ icon_state = "0-2"; d2 = 2 }, +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, /turf/open/floor/plasteel/barber, /area/crew_quarters/sleep) "aof" = ( @@ -7292,6 +7293,7 @@ pixel_y = -26; req_access_txt = "1" }, +/obj/machinery/light, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/labor) "aoq" = ( @@ -8019,7 +8021,7 @@ /obj/machinery/light_switch{ pixel_y = 28 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/ai_monitored/nuke_storage) @@ -8030,7 +8032,7 @@ /obj/machinery/light{ dir = 1 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/ai_monitored/nuke_storage) @@ -8045,7 +8047,7 @@ icon_state = "0-2"; d2 = 2 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/ai_monitored/nuke_storage) @@ -8170,12 +8172,12 @@ pixel_y = 0; tag = "" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/maintenance/fpmaint2{ name = "Brig Maintenance" }) "aqg" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/maintenance/fpmaint2{ name = "Brig Maintenance" }) @@ -8463,7 +8465,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/ai_monitored/nuke_storage) @@ -8482,7 +8484,7 @@ d2 = 2; icon_state = "1-2" }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/ai_monitored/nuke_storage) @@ -8814,7 +8816,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/ai_monitored/nuke_storage) @@ -8825,7 +8827,7 @@ /obj/effect/landmark{ name = "revenantspawn" }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/ai_monitored/nuke_storage) @@ -8839,7 +8841,7 @@ d2 = 2; icon_state = "1-2" }, -/turf/open/floor/plasteel/circuit/gcircuit{ +/turf/open/floor/circuit/green{ luminosity = 2 }, /area/ai_monitored/nuke_storage) @@ -9921,13 +9923,13 @@ /turf/closed/wall/r_wall, /area/ai_monitored/nuke_storage) "atF" = ( -/obj/structure/sign/poster{ - pixel_x = -32 - }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8; initialize_directions = 11 }, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 + }, /turf/open/floor/plasteel, /area/crew_quarters/sleep) "atG" = ( @@ -10642,7 +10644,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "avm" = ( -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_x = 32 }, /turf/open/floor/plasteel/red/side{ @@ -13122,7 +13124,7 @@ pixel_x = 0; tag = "" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) "aAe" = ( /obj/machinery/holopad, @@ -13142,10 +13144,10 @@ d2 = 8; icon_state = "1-8" }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) "aAf" = ( -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) "aAg" = ( /obj/machinery/porta_turret/ai{ @@ -13634,7 +13636,7 @@ pixel_x = 0; pixel_y = -24 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) "aAY" = ( /obj/structure/cable{ @@ -13660,7 +13662,7 @@ pixel_x = 0; pixel_y = -24 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) "aBa" = ( /obj/machinery/light, @@ -14190,11 +14192,10 @@ /turf/open/floor/plating, /area/maintenance/apmaint) "aCd" = ( -/obj/structure/sign/poster{ - pixel_x = 0; +/obj/effect/decal/cleanable/vomit/old, +/obj/structure/sign/poster/contraband/random{ pixel_y = 32 }, -/obj/effect/decal/cleanable/vomit/old, /turf/open/floor/plating, /area/maintenance/apmaint) "aCe" = ( @@ -14422,9 +14423,8 @@ /area/storage/emergency) "aCK" = ( /obj/machinery/space_heater, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 }, /turf/open/floor/plating, /area/storage/emergency) @@ -15783,6 +15783,10 @@ pixel_x = -24; pixel_y = -6 }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) "aFp" = ( @@ -17043,8 +17047,7 @@ /obj/machinery/light{ dir = 1 }, -/obj/structure/sign/poster{ - pixel_x = 0; +/obj/structure/sign/poster/official/random{ pixel_y = 32 }, /turf/open/floor/plating, @@ -17122,8 +17125,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/sign/poster{ - pixel_x = 0; +/obj/structure/sign/poster/official/random{ pixel_y = 32 }, /turf/open/floor/plasteel/floorgrime, @@ -17809,9 +17811,8 @@ /area/quartermaster/office) "aJy" = ( /obj/structure/closet/crate/freezer, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 +/obj/structure/sign/poster/official/random{ + pixel_x = -32 }, /turf/open/floor/plasteel/floorgrime, /area/quartermaster/storage) @@ -20216,8 +20217,7 @@ dir = 8; id = "QMLoad" }, -/obj/structure/sign/poster{ - pixel_x = 0; +/obj/structure/sign/poster/official/random{ pixel_y = 32 }, /turf/open/floor/plating, @@ -20813,6 +20813,9 @@ /obj/structure/sign/nosmoking_2{ pixel_x = 32 }, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "aPD" = ( @@ -21071,7 +21074,7 @@ /turf/open/floor/plasteel/black, /area/crew_quarters/bar) "aQd" = ( -/obj/structure/sign/poster{ +/obj/structure/sign/poster/random{ pixel_x = -32 }, /turf/open/floor/wood, @@ -21082,13 +21085,13 @@ }, /area/crew_quarters/theatre) "aQf" = ( -/obj/structure/sign/poster{ - pixel_y = 32 - }, /obj/item/weapon/twohanded/required/kirbyplants{ icon_state = "plant-04"; layer = 4.1 }, +/obj/structure/sign/poster/random{ + pixel_y = 32 + }, /turf/open/floor/carpet{ icon_state = "carpetsymbol" }, @@ -21106,10 +21109,10 @@ }, /area/crew_quarters/theatre) "aQh" = ( -/obj/structure/sign/poster{ +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/sign/poster/random{ pixel_x = 32 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/wood, /area/crew_quarters/theatre) "aQi" = ( @@ -21131,7 +21134,7 @@ /obj/machinery/light{ dir = 1 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/contraband/clown{ pixel_y = 32 }, /turf/open/floor/plasteel/black, @@ -21315,6 +21318,10 @@ pixel_x = -24; pixel_y = 8 }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/supply) "aQB" = ( @@ -21529,7 +21536,8 @@ department = "Bar"; departmentType = 2; pixel_x = 0; - pixel_y = 30 + pixel_y = 30; + receive_ore_updates = 1 }, /obj/machinery/camera{ c_tag = "Bar Access"; @@ -22026,13 +22034,13 @@ scrub_N2O = 0; scrub_Toxins = 0 }, -/obj/structure/sign/poster{ - pixel_x = -32 - }, /obj/machinery/light/small{ brightness = 3; dir = 8 }, +/obj/structure/sign/poster/random{ + pixel_x = -32 + }, /turf/open/floor/wood, /area/crew_quarters/theatre) "aSa" = ( @@ -22053,9 +22061,6 @@ }, /area/crew_quarters/theatre) "aSc" = ( -/obj/structure/sign/poster{ - pixel_x = 32 - }, /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 1; on = 1 @@ -22063,6 +22068,9 @@ /obj/machinery/light/small{ dir = 4 }, +/obj/structure/sign/poster/random{ + pixel_x = 32 + }, /turf/open/floor/wood, /area/crew_quarters/theatre) "aSd" = ( @@ -22339,7 +22347,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_x = 32 }, /turf/open/floor/plasteel/neutral/corner, @@ -24116,6 +24124,7 @@ }) "aWl" = ( /obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; name = "Port Docking Bay 1" }, /turf/open/floor/plating, @@ -24944,6 +24953,9 @@ /area/quartermaster/miningdock) "aXW" = ( /obj/structure/table, +/obj/machinery/light/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/labor) "aXX" = ( @@ -25905,8 +25917,12 @@ "aZW" = ( /obj/machinery/requests_console{ department = "Arrival shuttle"; + name = "Arrivals Shuttle console"; pixel_y = 30 }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "aZX" = ( @@ -26050,9 +26066,6 @@ /area/crew_quarters/kitchen) "bak" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sign/poster{ - pixel_y = 32 - }, /obj/structure/chair{ dir = 4 }, @@ -26060,6 +26073,9 @@ pixel_x = -27; pixel_y = 0 }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel/neutral/corner{ dir = 1 }, @@ -26173,10 +26189,10 @@ pixel_y = 0; tag = "" }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "bay" = ( -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "baz" = ( /obj/structure/cable{ @@ -26194,7 +26210,7 @@ pixel_x = 27; pixel_y = 0 }, -/turf/open/floor/plasteel/circuit/gcircuit, +/turf/open/floor/circuit/green, /area/assembly/chargebay) "baA" = ( /obj/structure/cable{ @@ -26237,9 +26253,6 @@ /obj/structure/chair{ dir = 8 }, -/obj/effect/landmark{ - name = "JoinLate" - }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "baF" = ( @@ -26547,7 +26560,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/assembly/chargebay) "bbf" = ( /obj/structure/cable{ @@ -26559,7 +26572,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/assembly/chargebay) "bbg" = ( /obj/machinery/door/airlock/maintenance{ @@ -26669,6 +26682,9 @@ /area/shuttle/labor) "bbo" = ( /obj/structure/ore_box, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/labor) "bbp" = ( @@ -26924,6 +26940,7 @@ name = "Station Intercom (General)"; pixel_y = -29 }, +/obj/machinery/light, /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "bbR" = ( @@ -26975,7 +26992,7 @@ /obj/structure/chair{ dir = 4 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_x = -32 }, /turf/open/floor/plasteel, @@ -28153,7 +28170,7 @@ tag = "every single paper bin is edited to this" }, /obj/item/weapon/pen, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_x = 32 }, /turf/open/floor/plasteel/freezer, @@ -28434,7 +28451,8 @@ department = "Robotics"; departmentType = 2; name = "Robotics RC"; - pixel_y = 30 + pixel_y = 30; + receive_ore_updates = 1 }, /turf/open/floor/plasteel, /area/assembly/robotics) @@ -29718,7 +29736,7 @@ "bhN" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_x = -32 }, /turf/open/floor/plasteel/whiteblue/side{ @@ -29759,7 +29777,7 @@ /turf/open/floor/plasteel/black, /area/medical/morgue) "bhR" = ( -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_x = -32 }, /turf/open/floor/plasteel/whiteblue/side{ @@ -30018,7 +30036,8 @@ dir = 2; name = "Science Requests Console"; pixel_x = 0; - pixel_y = 30 + pixel_y = 30; + receive_ore_updates = 1 }, /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -30660,13 +30679,12 @@ desc = "A machine used to process slimes and retrieve their extract."; name = "Slime Processor" }, -/obj/structure/sign/poster{ - pixel_x = -32; - pixel_y = 0 - }, /obj/machinery/light{ dir = 8 }, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 + }, /turf/open/floor/plasteel/whitepurple/side{ dir = 8 }, @@ -30685,7 +30703,7 @@ /area/toxins/xenobiology) "bjI" = ( /obj/machinery/shieldwallgen{ - req_access = list(55) + req_access_txt = "55" }, /obj/structure/cable{ icon_state = "0-4"; @@ -30782,7 +30800,7 @@ /area/toxins/xenobiology) "bjO" = ( /obj/machinery/shieldwallgen{ - req_access = list(55) + req_access_txt = "55" }, /obj/structure/cable{ icon_state = "0-2"; @@ -31135,7 +31153,7 @@ dir = 9; pixel_y = 0 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_x = 32 }, /turf/open/floor/plasteel/whiteblue/corner{ @@ -31231,7 +31249,8 @@ departmentType = 2; name = "Science Requests Console"; pixel_x = -32; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/item/weapon/book/manual/research_and_development, /turf/open/floor/plasteel/purple/side{ @@ -31853,7 +31872,7 @@ dir = 8; pixel_x = -26 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_y = 32 }, /turf/open/floor/plasteel/blue, @@ -32361,11 +32380,11 @@ /turf/open/floor/plating, /area/toxins/xenobiology) "bmJ" = ( -/turf/open/floor/plasteel/airless/circuit, +/turf/open/floor/plating/airless, /area/toxins/xenobiology) "bmK" = ( /obj/effect/decal/remains/xeno, -/turf/open/floor/plasteel/airless/circuit, +/turf/open/floor/plating/airless, /area/toxins/xenobiology) "bmL" = ( /obj/structure/chair{ @@ -33078,7 +33097,7 @@ dir = 8; network = list("SS13","RD") }, -/turf/open/floor/plasteel/airless/circuit, +/turf/open/floor/plating/airless, /area/toxins/xenobiology) "bnZ" = ( /obj/structure/closet/crate, @@ -33262,7 +33281,8 @@ department = "Chemistry"; departmentType = 2; pixel_x = 32; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/white, @@ -35006,7 +35026,8 @@ departmentType = 2; name = "Science Requests Console"; pixel_x = 32; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /turf/open/floor/plasteel/whitepurple/side{ dir = 6 @@ -36152,12 +36173,12 @@ network = list("SS13","RD"); pixel_y = 0 }, -/obj/structure/sign/poster{ - pixel_y = 32 - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" @@ -36170,15 +36191,15 @@ }) "btC" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/sign/poster{ - pixel_y = 32 - }, /obj/structure/extinguisher_cabinet{ pixel_x = 24 }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel, /area/toxins/mixing{ name = "\improper Toxins Lab" @@ -36560,7 +36581,7 @@ /area/toxins/server) "buj" = ( /obj/machinery/r_n_d/server/core, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -36818,7 +36839,8 @@ departmentType = 2; name = "Science Requests Console"; pixel_x = 32; - pixel_y = 0 + pixel_y = 0; + receive_ore_updates = 1 }, /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -37080,7 +37102,7 @@ on = 1; pressure_checks = 0 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -37689,7 +37711,7 @@ pressure_checks = 2; pump_direction = 0 }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -37980,10 +38002,6 @@ icon_state = "4-8"; pixel_y = 0 }, -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = 32 - }, /obj/machinery/camera{ c_tag = "Toxins Launch Area"; dir = 2; @@ -37992,6 +38010,9 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel, /area/toxins/mineral_storeroom) "bwS" = ( @@ -38316,7 +38337,7 @@ /area/toxins/server) "bxw" = ( /obj/machinery/r_n_d/server/robotics, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80" }, @@ -38343,7 +38364,8 @@ departmentType = 5; name = "Research Director RC"; pixel_x = 0; - pixel_y = -30 + pixel_y = -30; + receive_ore_updates = 1 }, /turf/open/floor/plasteel/whitepurple/side, /area/crew_quarters/hor) @@ -39432,8 +39454,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/sign/poster{ - pixel_x = 0; +/obj/structure/sign/poster/contraband/random{ pixel_y = 32 }, /turf/open/floor/plating, @@ -39498,9 +39519,8 @@ dir = 9; pixel_y = 0 }, -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 }, /turf/open/floor/plating, /area/maintenance/maintcentral{ @@ -39639,9 +39659,8 @@ /turf/open/floor/plasteel/black, /area/maintenance/aft) "bzT" = ( -/obj/structure/sign/poster{ - pixel_x = 32; - pixel_y = 0 +/obj/structure/sign/poster/contraband/random{ + pixel_x = 32 }, /turf/open/floor/plating, /area/maintenance/aft) @@ -40674,7 +40693,8 @@ /obj/machinery/requests_console{ department = "Virology"; name = "Virology Requests Console"; - pixel_x = 32 + pixel_x = 32; + receive_ore_updates = 1 }, /obj/item/weapon/storage/box/monkeycubes{ layer = 3.1 @@ -42055,8 +42075,7 @@ /turf/open/space, /area/space) "bFh" = ( -/obj/structure/sign/poster{ - pixel_x = 0; +/obj/structure/sign/poster/contraband/random{ pixel_y = -32 }, /turf/open/floor/plating, @@ -42483,7 +42502,7 @@ /obj/item/weapon/circuitboard/computer/teleporter, /obj/item/weapon/circuitboard/machine/circuit_imprinter, /obj/item/weapon/circuitboard/machine/mechfab, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_y = 32 }, /turf/open/floor/plasteel/black, @@ -42530,7 +42549,7 @@ /obj/item/weapon/electronics/firealarm, /obj/item/weapon/electronics/firelock, /obj/item/weapon/electronics/tracker, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_y = 32 }, /turf/open/floor/plasteel/black, @@ -44300,11 +44319,11 @@ }, /area/engine/chiefs_office) "bJW" = ( -/obj/machinery/computer/atmos_alert, /obj/machinery/airalarm{ dir = 2; pixel_y = 22 }, +/obj/machinery/computer/apc_control, /turf/open/floor/plasteel/yellow/side{ dir = 1 }, @@ -47451,16 +47470,15 @@ /turf/open/floor/plating, /area/engine/engineering) "bQm" = ( -/obj/structure/sign/poster{ - pixel_x = 0; - pixel_y = 32 - }, /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 4; external_pressure_bound = 101.325; on = 1; pressure_checks = 1 }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, /turf/open/floor/plasteel, /area/engine/engineering) "bQn" = ( @@ -48820,7 +48838,7 @@ d2 = 8; icon_state = "0-8" }, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -48853,14 +48871,14 @@ /area/tcommsat/computer) "bTq" = ( /obj/machinery/blackbox_recorder, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTr" = ( /obj/machinery/message_server, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -48889,42 +48907,42 @@ /area/tcommsat/server) "bTv" = ( /obj/machinery/telecomms/bus/preset_three, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTw" = ( /obj/machinery/telecomms/receiver/preset_left, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTx" = ( /obj/machinery/telecomms/processor/preset_three, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTy" = ( /obj/machinery/telecomms/processor/preset_one, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTz" = ( /obj/machinery/telecomms/receiver/preset_right, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTA" = ( /obj/machinery/telecomms/bus/preset_one, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -48975,49 +48993,49 @@ }) "bTH" = ( /obj/machinery/telecomms/server/presets/security, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTI" = ( /obj/machinery/telecomms/server/presets/science, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTJ" = ( /obj/machinery/telecomms/hub/preset, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTK" = ( /obj/machinery/telecomms/server/presets/common, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTL" = ( /obj/machinery/telecomms/server/presets/service, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTM" = ( /obj/machinery/telecomms/server/presets/medical, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTN" = ( /obj/machinery/telecomms/server/presets/command, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -49025,21 +49043,21 @@ "bTO" = ( /obj/machinery/power/terminal, /obj/machinery/ntnet_relay, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTP" = ( /obj/machinery/telecomms/server/presets/supply, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTQ" = ( /obj/machinery/telecomms/server/presets/engineering, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -49073,42 +49091,42 @@ /area/tcommsat/server) "bTV" = ( /obj/machinery/telecomms/processor/preset_four, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTW" = ( /obj/machinery/telecomms/broadcaster/preset_left, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTX" = ( /obj/machinery/telecomms/bus/preset_four, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTY" = ( /obj/machinery/telecomms/bus/preset_two, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bTZ" = ( /obj/machinery/telecomms/broadcaster/preset_right, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, /area/tcommsat/server) "bUa" = ( /obj/machinery/telecomms/processor/preset_two, -/turf/open/floor/bluegrid{ +/turf/open/floor/circuit{ name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80" }, @@ -49203,7 +49221,7 @@ pixel_x = 0; pixel_y = 24 }, -/turf/open/floor/bluegrid, +/turf/open/floor/circuit, /area/wreck/ai) "bUm" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ @@ -49825,6 +49843,9 @@ pixel_x = 27; pixel_y = 0 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "bVA" = ( @@ -50185,7 +50206,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/random{ pixel_y = 32 }, /turf/open/floor/plasteel, @@ -50265,7 +50286,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/contraband/random{ pixel_y = 32 }, /turf/open/floor/plating, @@ -50426,7 +50447,7 @@ }, /area/hallway/primary/central) "bWY" = ( -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_y = 32 }, /turf/open/floor/plasteel/neutral/corner{ @@ -50480,7 +50501,7 @@ /area/maintenance/apmaint) "bXf" = ( /obj/structure/closet/radiation, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/contraband/random{ pixel_x = 32 }, /turf/open/floor/plating, @@ -50499,7 +50520,7 @@ /area/maintenance/apmaint) "bXi" = ( /obj/structure/chair, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/contraband/random{ pixel_x = 32 }, /turf/open/floor/plating{ @@ -50510,6 +50531,7 @@ /obj/structure/extinguisher_cabinet{ pixel_y = -29 }, +/obj/machinery/light, /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "bXk" = ( @@ -50804,7 +50826,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_y = 32 }, /turf/open/floor/plasteel/white, @@ -50994,7 +51016,7 @@ /area/maintenance/aft) "bYw" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/sign/poster{ +/obj/structure/sign/poster/official/random{ pixel_x = -32 }, /turf/open/floor/plasteel/yellow/corner{ @@ -54383,10 +54405,10 @@ dir = 8; icon_state = "diagonalWall3" }, -/area/space) +/area/shuttle/syndicate) "cfJ" = ( /turf/closed/wall/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cfK" = ( /obj/structure/grille, /obj/machinery/door/poddoor/shutters{ @@ -54395,7 +54417,7 @@ }, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, -/area/space) +/area/shuttle/syndicate) "cfL" = ( /turf/open/space, /obj/machinery/porta_turret/syndicate{ @@ -54405,63 +54427,82 @@ dir = 1; icon_state = "diagonalWall3" }, -/area/space) +/area/shuttle/syndicate) "cfM" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/mineral/plastitanium, -/area/space) -"cfN" = ( -/turf/open/floor/mineral/plastitanium, -/area/space) -"cfO" = ( -/obj/structure/table, -/obj/item/device/flashlight/lamp{ - pixel_x = 4; - pixel_y = 1 +/obj/machinery/computer/med_data{ + icon_keyboard = "syndi_key" }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cfN" = ( +/obj/machinery/computer/crew{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cfO" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cfP" = ( /obj/machinery/computer/shuttle/syndicate, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cfQ" = ( -/obj/structure/table, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cfR" = ( +/obj/machinery/computer/camera_advanced{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cfS" = ( +/obj/structure/table/reinforced, +/obj/machinery/status_display{ + pixel_x = -32 + }, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/syndie, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cfT" = ( +/obj/structure/chair/office/dark{ + dir = 1; + name = "tactical swivel chair" + }, /obj/machinery/button/door{ id = "syndieshutters"; - name = "remote shutter control"; + name = "Cockpit View Control"; + pixel_x = 32; + pixel_y = 32; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, -/area/space) -"cfR" = ( -/obj/structure/frame/computer, -/turf/open/floor/mineral/plastitanium, -/area/space) -"cfS" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/space) -"cfT" = ( -/obj/structure/chair/comfy/beige{ - dir = 1; - icon_state = "comfychair" - }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) "cfU" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass{ - amount = 10 - }, -/obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) "cfV" = ( /obj/item/device/radio/intercom{ desc = "Talk through this. Evilly"; @@ -54473,76 +54514,91 @@ syndie = 1 }, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cfW" = ( /obj/structure/closet/syndicate/personal, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cfX" = ( /turf/open/space, /turf/closed/wall/mineral/plastitanium{ icon_state = "diagonalWall3" }, -/area/space) +/area/shuttle/syndicate) "cfY" = ( -/obj/machinery/door/window{ +/obj/machinery/door/airlock/hatch{ name = "Cockpit"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cfZ" = ( /turf/open/space, /turf/closed/wall/mineral/plastitanium{ dir = 4; icon_state = "diagonalWall3" }, -/area/space) +/area/shuttle/syndicate) "cga" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, +/obj/structure/table/reinforced, +/obj/item/stack/cable_coil/white, +/obj/item/stack/cable_coil/white, /obj/item/weapon/crowbar/red, -/turf/open/floor/mineral/plastitanium, -/area/space) -"cgb" = ( -/obj/structure/table, -/obj/item/weapon/storage/box/zipties{ - pixel_x = 1; - pixel_y = 2 +/turf/open/floor/plasteel/vault{ + dir = 5 }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) +"cgb" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/handcuffs{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/zipties, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) "cgc" = ( /obj/structure/chair{ - dir = 8 + dir = 8; + name = "tactical chair" }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) "cgd" = ( /obj/machinery/porta_turret/syndicate{ dir = 4 }, /turf/closed/wall/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cge" = ( /obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/mineral/plastitanium, -/area/space) -"cgf" = ( -/obj/structure/closet/syndicate/nuclear, -/turf/open/floor/mineral/plastitanium, -/area/space) -"cgg" = ( -/obj/structure/chair/stool{ - pixel_y = 8 +/turf/open/floor/plasteel/podhatch{ + dir = 5 }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) +"cgf" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cgg" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) "cgh" = ( -/obj/structure/table, -/obj/item/device/aicard, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/structure/tank_dispenser/oxygen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgi" = ( /obj/machinery/door/poddoor{ id = "smindicate"; @@ -54576,8 +54632,13 @@ turf_type = /turf/open/space; width = 18 }, -/turf/open/floor/plating, -/area/space) +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) "cgj" = ( /obj/structure/sign/securearea{ desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; @@ -54587,57 +54648,45 @@ pixel_x = 0 }, /turf/closed/wall/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgk" = ( -/obj/structure/table, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -5 +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light{ + dir = 4 }, -/obj/item/weapon/c4{ - pixel_x = -3; - pixel_y = 3 +/turf/open/floor/plasteel/vault{ + dir = 8 }, -/obj/item/weapon/c4{ - pixel_x = 2; - pixel_y = -3 - }, -/obj/item/weapon/c4{ - pixel_x = -2; - pixel_y = -1 - }, -/obj/item/weapon/c4{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgl" = ( /obj/structure/grille, /obj/structure/window/reinforced/fulltile, /turf/open/floor/plating, -/area/space) +/area/shuttle/syndicate) "cgm" = ( -/obj/machinery/door/window{ +/obj/machinery/door/airlock/external{ name = "Ready Room"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgn" = ( -/obj/machinery/door/window{ - dir = 4; - name = "EVA Storage"; +/obj/machinery/door/airlock/external{ + name = "E.V.A. Gear Storage"; req_access_txt = "150" }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgo" = ( /obj/machinery/door/airlock/external{ req_access_txt = "150" }, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgp" = ( /obj/machinery/door/window{ base_state = "right"; @@ -54647,14 +54696,14 @@ req_access_txt = "150" }, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgq" = ( /turf/open/space, /turf/closed/wall/mineral/plastitanium{ dir = 1; icon_state = "diagonalWall3" }, -/area/space) +/area/shuttle/syndicate) "cgr" = ( /obj/item/device/radio/intercom{ desc = "Talk through this. Evilly"; @@ -54666,61 +54715,109 @@ syndie = 1 }, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgs" = ( /obj/machinery/sleeper/syndie{ dir = 4 }, -/turf/open/floor/mineral/titanium, -/area/space) -"cgt" = ( -/turf/open/floor/mineral/titanium, -/area/space) -"cgu" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/mineral/titanium, -/area/space) -"cgv" = ( -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/mineral/titanium, -/area/space) -"cgw" = ( -/obj/structure/table, -/obj/item/stack/medical/ointment, -/obj/item/stack/medical/bruise_pack, -/obj/structure/extinguisher_cabinet{ - pixel_x = -5; - pixel_y = 30 +/turf/open/floor/plasteel/vault{ + dir = 8 }, -/turf/open/floor/mineral/titanium, -/area/space) +/area/shuttle/syndicate) +"cgt" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cgu" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cgv" = ( +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = 6; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = -3 + }, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 3; + pixel_y = -2 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 4; + pixel_y = 1 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 2; + pixel_y = 8 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cgw" = ( +/obj/structure/table/reinforced, +/obj/item/stack/medical/gauze, +/obj/item/stack/medical/bruise_pack, +/obj/item/stack/medical/ointment, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgx" = ( -/obj/structure/table, /obj/item/weapon/stock_parts/cell/high{ pixel_x = -3; pixel_y = 3 }, /obj/item/weapon/stock_parts/cell/high, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgy" = ( -/obj/structure/table, /obj/item/weapon/screwdriver{ pixel_y = 9 }, /obj/item/device/assembly/voice{ pixel_y = 3 }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgz" = ( -/obj/structure/table, /obj/item/weapon/wrench, /obj/item/device/assembly/infra, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgA" = ( -/obj/structure/table, /obj/item/device/assembly/signaler, /obj/item/device/assembly/signaler, /obj/item/device/assembly/prox_sensor{ @@ -54731,45 +54828,53 @@ pixel_x = -8; pixel_y = 4 }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgB" = ( -/obj/structure/table, /obj/item/weapon/weldingtool/largetank{ pixel_y = 3 }, /obj/item/device/multitool, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgC" = ( /obj/structure/bed/roller, -/turf/open/floor/mineral/titanium, -/area/space) +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgD" = ( /obj/structure/sign/bluecross_2, /turf/closed/wall/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgE" = ( /obj/structure/table, /obj/item/weapon/storage/toolbox/syndicate, /obj/item/weapon/crowbar/red, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgF" = ( -/obj/machinery/door/window{ - dir = 4; - name = "Infirmary"; +/obj/machinery/door/airlock/hatch{ req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, -/area/space) +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgG" = ( /obj/machinery/door/window/westright{ name = "Tool Storage"; req_access_txt = "150" }, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgH" = ( /obj/machinery/door/window{ base_state = "right"; @@ -54779,7 +54884,7 @@ req_access_txt = "150" }, /turf/open/floor/mineral/titanium, -/area/space) +/area/shuttle/syndicate) "cgI" = ( /obj/machinery/door/window{ dir = 8; @@ -54787,42 +54892,43 @@ req_access_txt = "150" }, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgJ" = ( -/obj/machinery/recharge_station, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/structure/closet/syndicate/nuclear, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgK" = ( /obj/machinery/porta_turret/syndicate{ dir = 5 }, /turf/closed/wall/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgL" = ( /obj/structure/window/reinforced{ dir = 1 }, -/obj/structure/table, /obj/item/bodypart/r_arm/robot, /obj/item/bodypart/l_arm/robot, -/turf/open/floor/mineral/titanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) "cgM" = ( /obj/machinery/door/window{ dir = 1; name = "Surgery"; req_access_txt = "150" }, -/turf/open/floor/mineral/titanium, -/area/space) +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) "cgN" = ( /obj/structure/window/reinforced{ dir = 1 }, -/turf/open/floor/mineral/titanium, -/area/space) +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) "cgO" = ( -/obj/structure/table, /obj/structure/window/reinforced{ dir = 8 }, @@ -54835,10 +54941,10 @@ pixel_x = -3; pixel_y = -3 }, -/turf/open/floor/mineral/titanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) "cgP" = ( -/obj/structure/table, /obj/item/weapon/storage/firstaid/regular{ pixel_x = 3; pixel_y = 3 @@ -54848,18 +54954,20 @@ pixel_x = -3; pixel_y = -3 }, -/turf/open/floor/mineral/titanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) "cgQ" = ( -/obj/structure/table, /obj/item/device/sbeacondrop/bomb{ pixel_y = 5 }, /obj/item/device/sbeacondrop/bomb, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgR" = ( -/obj/structure/table, /obj/item/weapon/grenade/syndieminibomb{ pixel_x = 4; pixel_y = 2 @@ -54867,14 +54975,31 @@ /obj/item/weapon/grenade/syndieminibomb{ pixel_x = -1 }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/structure/table/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgS" = ( -/obj/structure/table, /obj/item/weapon/surgicaldrill, /obj/item/weapon/circular_saw, -/turf/open/floor/mineral/titanium, -/area/space) +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgT" = ( /obj/structure/sink{ dir = 4; @@ -54885,86 +55010,91 @@ /obj/structure/mirror{ pixel_x = 30 }, -/turf/open/floor/mineral/titanium, -/area/space) +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) "cgU" = ( /obj/machinery/nuclearbomb/syndicate, /obj/machinery/door/window{ dir = 1; - name = "Secure Storage"; - req_access_txt = "150" + name = "Theatre Stage"; + req_access_txt = "0" }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) "cgV" = ( /obj/machinery/telecomms/allinone{ intercept = 1 }, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "cgW" = ( -/obj/structure/table, /obj/item/weapon/cautery, /obj/item/weapon/scalpel, -/turf/open/floor/mineral/titanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgX" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, -/turf/open/floor/mineral/titanium, -/area/space) +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgY" = ( -/obj/structure/table, /obj/item/weapon/retractor, /obj/item/weapon/hemostat, -/turf/open/floor/mineral/titanium, -/area/space) +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) "cgZ" = ( /obj/structure/shuttle/engine/heater, /obj/structure/window/reinforced{ dir = 1 }, -/turf/open/floor/plating, -/area/space) +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) "cha" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/mineral/plastitanium, -/area/space) +/obj/machinery/recharge_station, +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) "chb" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal{ - amount = 50 +/obj/machinery/telecomms/allinone{ + intercept = 1 }, -/obj/item/stack/sheet/glass{ - amount = 50 - }, -/obj/item/stack/rods{ - amount = 50 - }, -/turf/open/floor/mineral/plastitanium, -/area/space) +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) "chc" = ( /obj/structure/rack, /obj/item/clothing/suit/space/syndicate/black/red, /obj/item/clothing/head/helmet/space/syndicate/black/red, /turf/open/floor/mineral/plastitanium, -/area/space) +/area/shuttle/syndicate) "chd" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion_l" }, -/turf/open/floor/plating, -/area/space) +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) "che" = ( /obj/structure/shuttle/engine/propulsion, -/turf/open/floor/plating, -/area/space) +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) "chf" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion_r" }, -/turf/open/floor/plating, -/area/space) +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) "chg" = ( /turf/open/space, /obj/machinery/porta_turret/syndicate{ @@ -54974,7 +55104,7 @@ dir = 4; icon_state = "diagonalWall3" }, -/area/space) +/area/shuttle/syndicate) "chh" = ( /turf/open/space, /obj/machinery/porta_turret/syndicate{ @@ -54983,7 +55113,7 @@ /turf/closed/wall/mineral/plastitanium{ icon_state = "diagonalWall3" }, -/area/space) +/area/shuttle/syndicate) "chi" = ( /obj/structure/lattice, /obj/structure/grille, @@ -55469,6 +55599,554 @@ /obj/machinery/door/airlock/external, /turf/open/floor/pod/dark, /area/shuttle/transport) +"cii" = ( +/obj/structure/sign/poster/official/random, +/turf/open/floor/plating, +/area/quartermaster/storage) +"cij" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/landmark{ + name = "Observer-Start" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"cik" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 1" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cil" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 1" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cim" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 4; + icon_state = "propulsion" + }, +/obj/docking_port/mobile/arrivals{ + height = 13; + name = "pubby arrivals shuttle"; + width = 6 + }, +/obj/docking_port/stationary{ + dir = 8; + dwidth = 3; + height = 13; + id = "arrivals_stationary"; + name = "pubby arrivals"; + width = 6 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/arrival) +"cin" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 1" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cio" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 1" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cip" = ( +/obj/machinery/computer/secure_data{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"ciq" = ( +/obj/structure/chair/office/dark{ + dir = 8; + name = "tactical swivel chair" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cir" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cis" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cit" = ( +/obj/structure/chair/office/dark{ + dir = 4; + name = "tactical swivel chair" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"ciu" = ( +/obj/structure/table/reinforced, +/obj/machinery/ai_status_display{ + pixel_x = 32 + }, +/obj/item/weapon/storage/fancy/donut_box, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"civ" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"ciw" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cix" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ciy" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"ciz" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ciA" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"ciB" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ciC" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ciD" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ciE" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ciF" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"ciG" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"ciH" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ciI" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"ciJ" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"ciK" = ( +/obj/item/weapon/storage/toolbox/syndicate, +/obj/item/weapon/crowbar/red, +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/shuttle/syndicate) +"ciL" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"ciM" = ( +/obj/structure/chair{ + name = "tactical chair" + }, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"ciN" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"ciO" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"ciP" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"ciQ" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"ciR" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"ciS" = ( +/obj/structure/chair{ + dir = 1; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"ciT" = ( +/obj/structure/chair{ + dir = 1; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"ciU" = ( +/obj/structure/rack, +/obj/item/clothing/suit/space/syndicate/black/red, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"ciV" = ( +/obj/machinery/ai_status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"ciW" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"ciX" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"ciY" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"ciZ" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cja" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cjb" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cjc" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 9 + }, +/area/shuttle/syndicate) +"cjd" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cje" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cjf" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cjg" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cjh" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cji" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cjj" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cjk" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/shuttle/syndicate) +"cjl" = ( +/obj/structure/closet/syndicate/personal, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cjm" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker, +/obj/item/weapon/reagent_containers/dropper, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cjn" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/shuttle/syndicate) +"cjo" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cjp" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cjq" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cjr" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cjs" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cjt" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cju" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cjv" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"cjw" = ( +/obj/machinery/door/window{ + dir = 1; + name = "Technological Storage"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cjx" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/table/reinforced, +/obj/item/device/aicard, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cjy" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cjz" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"cjA" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cjB" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cjC" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cjD" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cjE" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cjF" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cjG" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cjH" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"cjI" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"cjJ" = ( +/obj/structure/table, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"cjK" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"cjL" = ( +/obj/structure/closet/crate, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"cjM" = ( +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"cjN" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"cjO" = ( +/obj/machinery/light/small, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"cjP" = ( +/obj/machinery/light, +/turf/open/floor/pod/light, +/area/shuttle/transport) (1,1,1) = {" aaa @@ -61674,7 +62352,7 @@ cfJ cfJ cfJ cfJ -cgK +cfJ cfJ cfJ cfJ @@ -61930,7 +62608,7 @@ cfJ cgs cgC cgs -cgt +cjm cgL cgS cgW @@ -62179,17 +62857,17 @@ aaa aaa cfJ cge -cge -cge -cge -cge +ciG +ciG +ciG +ciP cfJ -cgt -cgt -cgt -cgt +ciO +cfU +ciw +ciw cgM -cgt +ciw cgX cgZ che @@ -62435,16 +63113,16 @@ aaa aaa aaa cfJ -cfN -cfN -cfN -cfN -cfN -cfJ +ciw +ciw +ciw +ciw +ciw +ciV cgu -cgt -cgt -cgt +cfU +cjc +cjn cgN cgT cgY @@ -62692,16 +63370,16 @@ cfX aaa aaa cfJ -cfN -cgg -cfN -cfN -cfN +ciw +ciw +ciw +ciw +ciw cfJ cgv -cgt -cgt -cgt +cfU +cjd +ciL cgO cfJ cfJ @@ -62946,19 +63624,19 @@ cfM cfS cfU cfJ -aaa +chh aaa cfJ cgf cgh cgk -cfN -cfN +ciO +ciQ cfJ cgw -cgt -cgt -cgt +cfU +cjd +ciL cgP cfJ aaa @@ -63200,8 +63878,8 @@ aaa aaa cfK cfN -cfN -cfN +ciq +cfU cfJ cfJ cfJ @@ -63210,12 +63888,12 @@ cfJ cfJ cfJ cgn -cgp +cgl +cfJ cfJ cfJ -cgD cgF -cgH +cgl cfJ cfJ cfJ @@ -63457,23 +64135,23 @@ aaa aaa cfK cfO -cfN -cfN -cfJ +cir +cfU +civ cga -cfN -cfN -cfN -cfN +cix +ciz +cix +cix cgl -cfN -cfN -cgr -cfN -cfN -cfN -cfN -cfN +ciw +ciw +ciw +ciw +ciZ +cjd +ciL +cfU cgl cgZ chd @@ -63491,16 +64169,16 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -63715,22 +64393,22 @@ aaa cfK cfP cfT -cfN +cfU cfY -cfN -cfN -cfN -cfN -cfN +ciw +cir +cir +cir +ciw cgm -cfN -cfN -cfN -cfN -cfN -cfN -cfN -cfN +ciw +cir +cir +cir +cir +cjd +ciL +cfU cgU cgZ che @@ -63742,22 +64420,22 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -63971,23 +64649,23 @@ aaa aaa cfK cfQ -cfN -cfV +cir +cfU cfJ cgb cgc -cgc +ciB cgc cgc cgl -cfN -cfN -cfN -cfN -cfN -cfN -cfN -cfN +ciw +ciw +ciw +ciw +cjb +cjd +ciL +cfU cgl cgZ chf @@ -63999,22 +64677,22 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -64228,8 +64906,8 @@ aaa aaa cfK cfR -cfN -cfN +cit +cfU cfJ cfJ cfJ @@ -64242,8 +64920,8 @@ cgl cfJ cfJ cfJ -cgG -cgI +cgF +cgl cfJ cfJ cfJ @@ -64256,22 +64934,22 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -64484,51 +65162,51 @@ aaa aaa aaa cfJ -cfR -cfN -cfW +cip +ciu +cfU cfJ -cfZ +chg aaa aaa aaa cfJ -cfN -cfN -cfN +ciK +ciw +ciS cfJ cgx -cfN -cfN -cfN +cfU +cjd +ciL cgQ -cgV cfJ aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -64750,39 +65428,39 @@ aaa aaa aaa cgi -cfN -cfN -cfN +ciL +ciw +ciS cfJ cgy -cfN -cfN -cfN +cfU +cjd +ciL cgR cfJ cfJ cfJ chh -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -65007,41 +65685,41 @@ aaa aaa aaa cgj -cfN -cfN -cfN -cfJ +ciM +ciw +ciU +civ cgz -cfN -cfN -cfN -cfN -cfN +cfU +cjk +cjv +cgN +ciw cha cgZ chd -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -65269,36 +65947,36 @@ cfJ cfJ cfJ cgA -cgg -cfN -cfN -cfN -cfN +cfU +ciw +ciw +cjw +ciw chb cgZ che -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -65526,36 +66204,36 @@ aaa cgq cfJ cgB -cgE -cfN +cfU +cjl cgJ -cgJ -cfN -chc +cjx +cjb +cha cgZ chf -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -65786,33 +66464,33 @@ cfJ cfJ cfJ cfJ -cgd +cfJ cfJ cfJ cfJ cfZ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -66048,28 +66726,28 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -66305,27 +66983,27 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -66562,29 +67240,29 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -66828,20 +67506,20 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -67085,20 +67763,20 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -67345,17 +68023,17 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -67603,16 +68281,16 @@ aaa aaa aaa aaa -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ -aaJ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -70479,11 +71157,11 @@ aCh aCh aCh aCh -aDz +cjC aJL aJL aJL -aDz +cjE aCh aCh aCh @@ -70743,7 +71421,7 @@ aDz aDz aCh aOK -aIy +cjG aOK aQF aRA @@ -70988,7 +71666,7 @@ aaa aaa aCi aCW -aDz +cjA aEs aEs aCi @@ -71502,7 +72180,7 @@ aaa aaa aCi aCY -aDz +cjB aEt aEt aCi @@ -72014,18 +72692,18 @@ atT aaa aaa aaa -chn -chn +aaa +aaa aCh aCh aCh aCh aCh -aDz +cjC aJK aJK aJK -aDz +cjE aCh aCh aCh @@ -73583,7 +74261,7 @@ aaa aaa aYW aZS -aZS +cjM aYW aaa aaa @@ -73594,7 +74272,7 @@ aaa aaa aaa bjZ -blt +cjO bjZ aaa aaa @@ -74350,16 +75028,16 @@ aUh aVm aWl aXj -aWl +cik aYX aZS baE baE aZS -bct +aYX aWl aXj -aWl +cik aVm bhz aTr @@ -74572,7 +75250,7 @@ ana anD aop amZ -aqh +cjz aqh aqh atc @@ -74609,7 +75287,7 @@ aTr aTr aTr aYW -bWO +cjK aZS aZS bXj @@ -74621,7 +75299,7 @@ aVm bhz aTr bjZ -blt +cjN blt blt bjZ @@ -75124,8 +75802,8 @@ aXl aTr aYY aZV -baF -bbt +aZS +aZS aZS aYY aTr @@ -75137,7 +75815,7 @@ aTr bjZ blt blt -blt +cjP bjZ aaa aaa @@ -75380,8 +76058,8 @@ aWn aXm aTr aYY -bWP -bXd +aZS +baE baE aZS aYY @@ -75892,7 +76570,7 @@ aUj aVp aWl aXj -aWl +cik aYX aZS aZS @@ -75901,7 +76579,7 @@ aZS aYX aWl aXj -aWl +cik aXs bhz aTr @@ -76407,12 +77085,12 @@ aVp aWm aWm aTs +aYW aYZ -aYZ -baG +cim baG bbR -aYZ +aYW aTs aWm aWm @@ -78114,7 +78792,7 @@ aaa aaa aaa aaa -aaa +aar aaa aaa aaa @@ -78285,7 +78963,7 @@ aaa aaa aaa aaa -aaa +bJJ aaa aaa aaa @@ -80587,7 +81265,7 @@ aaa aaa aaa aaa -bJJ +aaa aaa aaa aaa @@ -81982,7 +82660,7 @@ aaa aaa aaa aaa -aar +aaa aaa aaa aaa @@ -86152,7 +86830,7 @@ awZ aad aDl aDW -aEN +cij aFC aGH aGE @@ -91396,7 +92074,7 @@ aaa aaa aaa aaa -bSs +aaa aaa aaa aaa @@ -92707,7 +93385,7 @@ aaa aaa aaa aaa -aaa +bSs aaa aaa aaa @@ -97470,7 +98148,7 @@ aaa aaa aGT aOx -aPw +cii aKE aPw aSs @@ -97997,7 +98675,7 @@ aXW aqh aqh aYS -arQ +cjL amZ aAC aUf @@ -98503,11 +99181,11 @@ aMH aMH aMH aMH -aMH +cjI aLC aaa amZ -aXW +cjJ aqh aqh aYS @@ -99013,7 +99691,7 @@ aLC aMH aMH aMH -aMH +cjH aMH aMH aMH @@ -104215,7 +104893,7 @@ aaa aaa aaa aaa -bQz +aaa aaa aaa aaa @@ -106687,7 +107365,7 @@ aaa aaa aaa aaa -ajL +aaa aaa aaa aaa @@ -108056,7 +108734,7 @@ aaa aaa aaa aaa -aaa +bQz aaa aaa aaa @@ -112338,7 +113016,7 @@ aaa aaa aaa aaa -aaa +ajL aaa aaa aaa diff --git a/_maps/map_files/PubbyStation/job_changes.dm b/_maps/map_files/PubbyStation/job_changes.dm new file mode 100644 index 0000000000..8693063def --- /dev/null +++ b/_maps/map_files/PubbyStation/job_changes.dm @@ -0,0 +1,22 @@ +#define JOB_MODIFICATION_MAP_NAME "PubbyStation" + +/datum/job/hos/New() + ..() + MAP_JOB_CHECK + access += access_crematorium + minimal_access += access_crematorium + +/datum/job/warden/New() + ..() + MAP_JOB_CHECK + access += access_crematorium + minimal_access += access_crematorium + +/datum/job/officer/New() + ..() + MAP_JOB_CHECK + access += access_crematorium + minimal_access += access_crematorium + +MAP_REMOVE_JOB(librarian) +MAP_REMOVE_JOB(lawyer) \ No newline at end of file diff --git a/_maps/map_files/TgStation/tgstation.2.1.3.dmm b/_maps/map_files/TgStation/tgstation.2.1.3.dmm index 9d5a357b6b..f5e353e53a 100644 --- a/_maps/map_files/TgStation/tgstation.2.1.3.dmm +++ b/_maps/map_files/TgStation/tgstation.2.1.3.dmm @@ -1,7187 +1,130728 @@ -"aaa" = (/turf/open/space,/area/space) -"aab" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_n"; name = "north of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) -"aac" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 9},/turf/closed/wall/mineral/plastitanium{dir = 8; icon_state = "diagonalWall3"},/area/shuttle/syndicate) -"aad" = (/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) -"aae" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters{id = "syndieshutters"; name = "blast shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/shuttle/syndicate) -"aaf" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 5},/turf/closed/wall/mineral/plastitanium{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/syndicate) -"aag" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aah" = (/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aai" = (/obj/structure/table,/obj/item/device/flashlight/lamp{pixel_x = 4; pixel_y = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaj" = (/obj/machinery/computer/shuttle/syndicate,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aak" = (/obj/structure/table,/obj/machinery/button/door{id = "syndieshutters"; name = "remote shutter control"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aal" = (/obj/structure/frame/computer,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aam" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aan" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aao" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 10},/obj/item/device/multitool,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aap" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_y = -32; subspace_transmission = 1; syndie = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaq" = (/obj/structure/closet/syndicate/personal,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aar" = (/turf/open/space,/turf/closed/wall/mineral/plastitanium{icon_state = "diagonalWall3"},/area/shuttle/syndicate) -"aas" = (/obj/machinery/door/window{name = "Cockpit"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aat" = (/turf/open/space,/turf/closed/wall/mineral/plastitanium{dir = 4; icon_state = "diagonalWall3"},/area/shuttle/syndicate) -"aau" = (/turf/open/space,/area/shuttle/syndicate) -"aav" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/weapon/crowbar/red,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaw" = (/obj/structure/table,/obj/item/weapon/storage/box/zipties{pixel_x = 1; pixel_y = 2},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aax" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aay" = (/obj/machinery/porta_turret/syndicate{dir = 4},/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) -"aaz" = (/obj/machinery/suit_storage_unit/syndicate,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaA" = (/obj/structure/closet/syndicate/nuclear,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaB" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_ne"; name = "northeast of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) -"aaC" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaD" = (/obj/structure/table,/obj/item/device/aicard,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaE" = (/obj/machinery/door/poddoor{id = "smindicate"; name = "outer blast door"},/obj/machinery/button/door{id = "smindicate"; name = "external door control"; pixel_x = -26; pixel_y = 0; req_access_txt = "150"},/obj/docking_port/mobile{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate"; name = "syndicate infiltrator"; port_angle = 0; roundstart_move = "syndicate_away"; width = 18},/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_nw"; name = "northwest of station"; turf_type = /turf/open/space; width = 18},/turf/open/floor/plating,/area/shuttle/syndicate) -"aaF" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) -"aaG" = (/obj/structure/table,/obj/item/weapon/c4{pixel_x = 2; pixel_y = -5},/obj/item/weapon/c4{pixel_x = -3; pixel_y = 3},/obj/item/weapon/c4{pixel_x = 2; pixel_y = -3},/obj/item/weapon/c4{pixel_x = -2; pixel_y = -1},/obj/item/weapon/c4{pixel_x = 3; pixel_y = 3},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaH" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/shuttle/syndicate) -"aaI" = (/obj/machinery/door/window{name = "Ready Room"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaJ" = (/obj/effect/landmark{name = "carpspawn"},/turf/open/space,/area/space) -"aaK" = (/obj/machinery/door/window{dir = 4; name = "EVA Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaL" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaM" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "EVA Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaN" = (/turf/open/space,/turf/closed/wall/mineral/plastitanium{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/syndicate) -"aaO" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = -32; subspace_transmission = 1; syndie = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaP" = (/obj/machinery/sleeper/syndie{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"aaQ" = (/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"aaR" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"aaS" = (/obj/structure/tank_dispenser/oxygen,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"aaT" = (/obj/structure/table,/obj/item/stack/medical/ointment,/obj/item/stack/medical/bruise_pack,/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"aaU" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell/high{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaV" = (/obj/structure/table,/obj/item/weapon/screwdriver{pixel_y = 9},/obj/item/device/assembly/voice{pixel_y = 3},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaW" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/device/assembly/infra,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaX" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaY" = (/obj/structure/table,/obj/item/weapon/weldingtool/largetank{pixel_y = 3},/obj/item/device/multitool,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"aaZ" = (/obj/structure/bed/roller,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"aba" = (/obj/structure/sign/bluecross_2,/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) -"abb" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/weapon/crowbar/red,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abc" = (/obj/machinery/door/window{dir = 4; name = "Infirmary"; req_access_txt = "150"},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abd" = (/obj/machinery/door/window/westright{name = "Tool Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abe" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Infirmary"; req_access_txt = "150"},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abf" = (/obj/machinery/door/window{dir = 8; name = "Tool Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abg" = (/obj/machinery/recharge_station,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abh" = (/obj/structure/lattice,/turf/open/space,/area/space) -"abi" = (/obj/machinery/porta_turret/syndicate{dir = 5},/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) -"abj" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/bodypart/r_arm/robot,/obj/item/bodypart/l_arm/robot,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abk" = (/obj/machinery/door/window{dir = 1; name = "Surgery"; req_access_txt = "150"},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abl" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abm" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/brute,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abn" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abo" = (/obj/structure/table,/obj/item/device/sbeacondrop/bomb{pixel_y = 5},/obj/item/device/sbeacondrop/bomb,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abp" = (/obj/structure/table,/obj/item/weapon/grenade/syndieminibomb{pixel_x = 4; pixel_y = 2},/obj/item/weapon/grenade/syndieminibomb{pixel_x = -1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abq" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/space) -"abr" = (/obj/structure/table,/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abs" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 30},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abt" = (/obj/machinery/nuclearbomb/syndicate,/obj/machinery/door/window{dir = 1; name = "Secure Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abu" = (/obj/machinery/telecomms/allinone{intercept = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abv" = (/obj/structure/sign/securearea{pixel_y = -32},/turf/open/space,/area/space) -"abw" = (/obj/structure/table,/obj/item/weapon/cautery,/obj/item/weapon/scalpel,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abx" = (/obj/structure/table/optable,/obj/item/weapon/surgical_drapes,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"aby" = (/obj/structure/table,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) -"abz" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/shuttle/syndicate) -"abA" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abB" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abC" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate/black/red,/obj/item/clothing/head/helmet/space/syndicate/black/red,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) -"abD" = (/turf/closed/wall/r_wall,/area/security/prison) -"abE" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/prison) -"abF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall/r_wall,/area/security/prison) -"abG" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/prison) -"abH" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/prison) -"abI" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_l"},/turf/open/floor/plating,/area/shuttle/syndicate) -"abJ" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating,/area/shuttle/syndicate) -"abK" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_r"},/turf/open/floor/plating,/area/shuttle/syndicate) -"abL" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/ambrosia,/turf/open/floor/plasteel/green/side{dir = 9},/area/security/prison) -"abM" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/carrot,/turf/open/floor/plasteel/green/side{dir = 1},/area/security/prison) -"abN" = (/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plating,/area/security/prison) -"abO" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/glowshroom,/turf/open/floor/plasteel/green/side{dir = 1},/area/security/prison) -"abP" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/hydroponics/soil,/obj/item/device/plant_analyzer,/obj/machinery/camera{c_tag = "Prison Common Room"; network = list("SS13","Prison")},/turf/open/floor/plasteel/green/side{dir = 5},/area/security/prison) -"abQ" = (/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"abR" = (/obj/structure/sink{pixel_y = 20},/turf/open/floor/plating,/area/security/prison) -"abS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"abT" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"abU" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 6},/turf/closed/wall/mineral/plastitanium{dir = 4; icon_state = "diagonalWall3"},/area/shuttle/syndicate) -"abV" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 10},/turf/closed/wall/mineral/plastitanium{icon_state = "diagonalWall3"},/area/shuttle/syndicate) -"abW" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plating,/area/security/prison) -"abX" = (/turf/open/floor/plating,/area/security/prison) -"abY" = (/mob/living/simple_animal/mouse/brown/Tom,/turf/open/floor/plating,/area/security/prison) -"abZ" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plating,/area/security/prison) -"aca" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acb" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/seeds/potato,/turf/open/floor/plasteel/green/side{dir = 10},/area/security/prison) -"acc" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/seeds/grass,/turf/open/floor/plasteel/green/side{dir = 2},/area/security/prison) -"acd" = (/obj/structure/window/reinforced,/turf/open/floor/plating,/area/security/prison) -"ace" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/weapon/cultivator,/turf/open/floor/plasteel/green/side{dir = 2},/area/security/prison) -"acf" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/weapon/cultivator,/turf/open/floor/plasteel/green/side{dir = 6},/area/security/prison) -"acg" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"ach" = (/turf/open/floor/plating/airless,/area/space/nearstation) -"aci" = (/obj/structure/bookcase,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acj" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"ack" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/barber,/area/security/prison) -"acl" = (/obj/machinery/washing_machine,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/barber,/area/security/prison) -"acm" = (/obj/machinery/computer/libraryconsole/bookmanagement{pixel_y = 0},/obj/structure/table,/obj/machinery/newscaster{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acn" = (/obj/structure/table,/obj/item/weapon/storage/pill_bottle/dice,/turf/open/floor/plasteel,/area/security/prison) -"aco" = (/obj/structure/table,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/prison) -"acp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/barber,/area/security/prison) -"acq" = (/obj/structure/table,/obj/structure/bedsheetbin,/turf/open/floor/plasteel/barber,/area/security/prison) -"acr" = (/obj/structure/lattice,/obj/structure/sign/securearea{pixel_y = -32},/turf/open/space,/area/space) -"acs" = (/obj/structure/grille,/obj/structure/lattice,/turf/open/space,/area/space) -"act" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acu" = (/obj/structure/chair/stool,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acv" = (/obj/structure/table,/obj/item/toy/cards/deck,/turf/open/floor/plasteel,/area/security/prison) -"acw" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/prison) -"acx" = (/obj/structure/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/barber,/area/security/prison) -"acy" = (/obj/machinery/washing_machine,/obj/structure/window/reinforced,/turf/open/floor/plasteel/barber,/area/security/prison) -"acz" = (/turf/closed/wall/r_wall,/area/ai_monitored/security/armory) -"acA" = (/obj/structure/lattice,/obj/structure/grille/broken,/turf/open/space,/area/space) -"acB" = (/turf/closed/wall/r_wall,/area/security/transfer) -"acC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall/r_wall,/area/security/transfer) -"acD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/transfer) -"acE" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall/r_wall,/area/security/transfer) -"acF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall/r_wall,/area/security/transfer) -"acG" = (/obj/machinery/vending/sustenance,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acH" = (/obj/machinery/holopad,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acI" = (/obj/machinery/light/small{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/freezer,/area/security/prison) -"acJ" = (/obj/machinery/shower{dir = 8},/obj/item/weapon/soap/nanotrasen,/turf/open/floor/plasteel/freezer,/area/security/prison) -"acK" = (/obj/structure/lattice,/obj/structure/grille,/turf/open/space,/area/space) -"acL" = (/obj/structure/grille,/turf/open/space,/area/space) -"acM" = (/turf/closed/wall/r_wall,/area/security/main) -"acN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/main) -"acO" = (/turf/closed/wall/r_wall,/area/security/hos) -"acP" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/hos) -"acQ" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxport) -"acR" = (/obj/machinery/door/poddoor{id = "executionspaceblast"; name = "blast door"},/turf/open/floor/plating,/area/security/transfer) -"acS" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/black,/area/security/transfer) -"acT" = (/obj/machinery/light/small{dir = 1},/obj/machinery/flasher{id = "executionflash"; pixel_x = 0; pixel_y = 25},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/black,/area/security/transfer) -"acU" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/black,/area/security/transfer) -"acV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/security/transfer) -"acW" = (/obj/machinery/vending/cola/random,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acX" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"acZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"ada" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"add" = (/obj/machinery/door/window/westleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Unisex Showers"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/security/prison) -"ade" = (/turf/open/floor/plasteel/freezer,/area/security/prison) -"adf" = (/turf/closed/wall/r_wall,/area/space) -"adg" = (/obj/structure/closet/secure_closet/security/sec,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"adh" = (/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"adi" = (/obj/structure/closet/secure_closet/security/sec,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"adj" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Security's Desk"; departmentType = 5; name = "Head of Security RC"; pixel_x = 0; pixel_y = 30},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = -31},/obj/structure/table/wood,/obj/item/weapon/storage/box/seccarts{pixel_x = 3; pixel_y = 2},/obj/item/weapon/storage/box/deputy,/turf/open/floor/carpet,/area/security/hos) -"adk" = (/obj/machinery/computer/secure_data,/turf/open/floor/carpet,/area/security/hos) -"adl" = (/obj/machinery/computer/security,/turf/open/floor/carpet,/area/security/hos) -"adm" = (/obj/machinery/computer/card/minor/hos,/turf/open/floor/carpet,/area/security/hos) -"adn" = (/obj/machinery/airalarm{pixel_y = 23},/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/turf/open/floor/carpet,/area/security/hos) -"ado" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxstarboard) -"adp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"adq" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/black,/area/security/transfer) -"adr" = (/obj/structure/bed,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/black,/area/security/transfer) -"ads" = (/obj/machinery/sparker{dir = 2; id = "executionburn"; pixel_x = 25},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/black,/area/security/transfer) -"adt" = (/turf/closed/wall,/area/security/prison) -"adu" = (/obj/machinery/door/poddoor/preopen{id = "permacell3"; name = "cell blast door"},/obj/machinery/door/airlock/glass{id_tag = "permabolt3"; name = "Cell 3"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adv" = (/obj/machinery/door/poddoor/preopen{id = "permacell2"; name = "cell blast door"},/obj/machinery/door/airlock/glass{id_tag = "permabolt2"; name = "Cell 2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/poddoor/preopen{id = "permacell1"; name = "cell blast door"},/obj/machinery/door/airlock/glass{id_tag = "permabolt1"; name = "Cell 1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adx" = (/obj/machinery/door/airlock{name = "Unisex Restroom"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/security/prison) -"ady" = (/obj/structure/closet/bombcloset,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"adz" = (/obj/effect/landmark{name = "secequipment"},/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"adA" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"adB" = (/obj/machinery/newscaster/security_unit{pixel_x = -30; pixel_y = 0},/obj/machinery/camera{c_tag = "Head of Security's Office"; dir = 4; network = list("SS13")},/obj/machinery/recharger{pixel_y = 4},/obj/structure/table/wood,/turf/open/floor/carpet,/area/security/hos) -"adC" = (/obj/structure/chair/comfy/black,/turf/open/floor/carpet,/area/security/hos) -"adD" = (/turf/open/floor/carpet,/area/security/hos) -"adE" = (/obj/machinery/holopad,/turf/open/floor/carpet,/area/security/hos) -"adF" = (/obj/machinery/keycard_auth{pixel_x = 24; pixel_y = 10},/obj/structure/table/wood,/obj/item/device/radio/off,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/carpet,/area/security/hos) -"adG" = (/obj/structure/sign/securearea{pixel_y = -32},/obj/structure/lattice/catwalk,/turf/open/space,/area/space) -"adH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"adI" = (/obj/structure/lattice,/obj/item/stack/cable_coil/random,/turf/open/space,/area/space) -"adJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/black,/area/security/transfer) -"adK" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/black,/area/security/transfer) -"adL" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 2},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel/black,/area/security/transfer) -"adM" = (/obj/structure/bed,/obj/machinery/camera{c_tag = "Prison Cell 3"; network = list("SS13","Prison")},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adN" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "permabolt3"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adO" = (/obj/structure/bed,/obj/machinery/camera{c_tag = "Prison Cell 2"; network = list("SS13","Prison")},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adP" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adQ" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "permabolt2"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adR" = (/obj/structure/bed,/obj/machinery/camera{c_tag = "Prison Cell 1"; network = list("SS13","Prison")},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adT" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "permabolt1"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"adU" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/freezer,/area/security/prison) -"adV" = (/obj/structure/table,/obj/item/weapon/storage/box/firingpins,/obj/item/weapon/storage/box/firingpins,/obj/item/key/security,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"adW" = (/obj/structure/table,/obj/item/weapon/storage/box/chemimp{pixel_x = 6},/obj/item/weapon/storage/box/trackimp{pixel_x = -3},/obj/item/weapon/storage/lockbox/loyalty,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"adX" = (/obj/structure/rack,/obj/machinery/firealarm{pixel_y = 24},/obj/item/weapon/gun/energy/e_gun/dragnet,/obj/item/weapon/gun/energy/e_gun/dragnet,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"adY" = (/obj/structure/rack,/obj/item/clothing/suit/armor/bulletproof{pixel_x = -3; pixel_y = 3},/obj/item/clothing/suit/armor/bulletproof{pixel_y = 0},/obj/item/clothing/suit/armor/bulletproof{pixel_x = 3; pixel_y = -3},/obj/item/clothing/head/helmet/alt{layer = 3.00001; pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/helmet/alt{layer = 3.00001},/obj/item/clothing/head/helmet/alt{layer = 3.00001; pixel_x = 3; pixel_y = -3},/obj/machinery/camera/motion{c_tag = "Armory Motion Sensor"; dir = 2; name = "motion-sensitive security camera"},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"adZ" = (/obj/structure/rack,/obj/item/clothing/suit/armor/riot{pixel_x = -3; pixel_y = 3},/obj/item/clothing/suit/armor/riot,/obj/item/clothing/suit/armor/riot{pixel_x = 3; pixel_y = -3},/obj/machinery/light{dir = 1},/obj/item/clothing/head/helmet/riot{pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/helmet/riot,/obj/item/clothing/head/helmet/riot{pixel_x = 3; pixel_y = -3},/obj/item/weapon/shield/riot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/shield/riot,/obj/item/weapon/shield/riot{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"aea" = (/obj/structure/rack,/obj/machinery/airalarm{pixel_y = 23},/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/gun/energy/temperature/security,/obj/item/clothing/suit/armor/laserproof,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"aeb" = (/obj/structure/closet/secure_closet/lethalshots,/turf/open/floor/plasteel/black,/area/ai_monitored/security/armory) -"aec" = (/obj/vehicle/secway,/turf/open/floor/plasteel/black,/area/ai_monitored/security/armory) -"aed" = (/obj/structure/closet/l3closet/security,/obj/machinery/camera{c_tag = "Brig Equipment Room"; dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"aee" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"aef" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{on = 0; pixel_x = -3; pixel_y = 8},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/carpet,/area/security/hos) -"aeg" = (/obj/structure/table/wood,/obj/item/weapon/folder/red,/obj/item/weapon/stamp/hos,/turf/open/floor/carpet,/area/security/hos) -"aeh" = (/obj/item/weapon/book/manual/wiki/security_space_law,/obj/structure/table/wood,/turf/open/floor/carpet,/area/security/hos) -"aei" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/suit_storage_unit/hos,/turf/open/floor/carpet,/area/security/hos) -"aej" = (/turf/closed/wall,/area/security/main) -"aek" = (/obj/machinery/door/airlock/external{name = "Security External Airlock"; req_access_txt = "63"},/turf/open/floor/plating,/area/security/main) -"ael" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxport) -"aem" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"aen" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/poddoor/preopen{id = "executionfireblast"; layer = 2.9; name = "blast door"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/security/transfer) -"aeo" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "executionfireblast"; layer = 2.9; name = "blast door"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/security/transfer) -"aep" = (/obj/machinery/door/poddoor/preopen{id = "executionfireblast"; layer = 2.9; name = "blast door"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/window/westright{dir = 1; name = "Transfer Room"; req_access_txt = "2"},/turf/open/floor/plasteel/vault{dir = 8},/area/security/transfer) -"aeq" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/machinery/flasher{id = "PCell 3"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"aer" = (/obj/structure/table,/obj/item/weapon/paper,/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"aes" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/machinery/flasher{id = "PCell 2"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"aet" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"aeu" = (/obj/structure/table,/obj/item/weapon/paper,/obj/item/weapon/pen,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"aev" = (/obj/machinery/flasher{id = "PCell 1"; pixel_x = -28},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"aew" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"aex" = (/obj/structure/toilet{dir = 1},/turf/open/floor/plasteel/freezer,/area/security/prison) -"aey" = (/obj/item/weapon/grenade/barrier{pixel_x = 4},/obj/item/weapon/grenade/barrier,/obj/item/weapon/grenade/barrier{pixel_x = -4},/obj/structure/table,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"aez" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"aeA" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"aeB" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "Armory APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"aeC" = (/obj/machinery/vending/security,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"aeD" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/carpet,/area/security/hos) -"aeE" = (/obj/structure/chair{dir = 1},/turf/open/floor/carpet,/area/security/hos) -"aeF" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/security/hos) -"aeG" = (/obj/item/weapon/storage/secure/safe/HoS{pixel_x = 35},/obj/structure/closet/secure_closet/hos,/turf/open/floor/carpet,/area/security/hos) -"aeH" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/security/main) -"aeI" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxstarboard) -"aeJ" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"aeK" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"aeL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"aeM" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"aeN" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"aeO" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"aeP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"aeQ" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"aeR" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/turf/open/space,/area/space) -"aeS" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/turf/open/floor/plasteel/black,/area/security/transfer) -"aeT" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/device/taperecorder{pixel_x = -3; pixel_y = 0},/obj/item/device/assembly/flash/handheld,/obj/item/weapon/reagent_containers/spray/pepper,/turf/open/floor/plasteel/black,/area/security/transfer) -"aeU" = (/obj/machinery/button/flasher{id = "executionflash"; pixel_x = 24; pixel_y = 5},/obj/machinery/button/door{id = "executionspaceblast"; name = "Vent to Space"; pixel_x = 25; pixel_y = -5; req_access_txt = "7"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/open/floor/plasteel/black,/area/security/transfer) -"aeV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/prison) -"aeW" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 3"; req_access_txt = "2"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"aeX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/prison) -"aeY" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 2"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"aeZ" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 1"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) -"afa" = (/obj/structure/closet/secure_closet{anchored = 1; name = "Contraband Locker"; req_access_txt = "3"},/turf/open/floor/plasteel/black,/area/ai_monitored/security/armory) -"afb" = (/obj/item/weapon/storage/toolbox/drone,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afc" = (/obj/structure/rack,/obj/item/weapon/gun/ballistic/shotgun/riot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/ballistic/shotgun/riot,/obj/item/weapon/gun/ballistic/shotgun/riot{pixel_x = 3; pixel_y = -3},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/ai_monitored/security/armory) -"afd" = (/obj/structure/rack,/obj/item/weapon/gun/energy/e_gun{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/e_gun,/obj/item/weapon/gun/energy/e_gun{pixel_x = 3; pixel_y = -3},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/ai_monitored/security/armory) -"afe" = (/obj/structure/rack,/obj/item/weapon/gun/energy/laser{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/laser,/obj/item/weapon/gun/energy/laser{pixel_x = 3; pixel_y = -3},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/ai_monitored/security/armory) -"aff" = (/obj/structure/rack,/obj/item/weapon/gun/energy/e_gun/advtaser{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/e_gun/advtaser,/obj/item/weapon/gun/energy/e_gun/advtaser{pixel_x = 3; pixel_y = -3},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/ai_monitored/security/armory) -"afg" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afi" = (/obj/machinery/door/window/eastleft{name = "armoury desk"; req_access_txt = "1"},/obj/machinery/door/window/westleft{name = "armoury desk"; req_access_txt = "3"},/obj/structure/table/reinforced,/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afj" = (/obj/machinery/power/apc{dir = 8; name = "Head of Security's Office APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/security/hos) -"afk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/carpet,/area/security/hos) -"afl" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/security/hos) -"afm" = (/obj/machinery/light_switch{pixel_y = -23},/obj/effect/landmark/event_spawn,/turf/open/floor/carpet,/area/security/hos) -"afn" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/carpet,/area/security/hos) -"afo" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"afp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"afq" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"afr" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"afs" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"aft" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"afu" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"afv" = (/obj/structure/cable,/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxport) -"afw" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/security/transfer) -"afx" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/security/transfer) -"afy" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/security/transfer) -"afz" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/black,/area/security/transfer) -"afA" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/button/ignition{id = "executionburn"; pixel_x = 24; pixel_y = 5},/obj/machinery/button/door{id = "executionfireblast"; name = "Transfer Area Lockdown"; pixel_x = 25; pixel_y = -5; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/open/floor/plasteel/black,/area/security/transfer) -"afB" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall/r_wall,/area/security/transfer) -"afC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/prison) -"afD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/prison) -"afE" = (/obj/machinery/button/door{id = "permacell3"; name = "Cell 3 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/button/flasher{id = "PCell 3"; pixel_x = 6; pixel_y = 24},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/prison) -"afF" = (/obj/machinery/light{dir = 1},/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/prison) -"afG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/prison) -"afH" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/prison) -"afI" = (/obj/machinery/button/door{id = "permacell2"; name = "Cell 2 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/button/flasher{id = "PCell 2"; pixel_x = 6; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/prison) -"afJ" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/camera{c_tag = "Prison Hallway"; network = list("SS13","Prison")},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/prison) -"afK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/prison) -"afL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/prison) -"afM" = (/obj/machinery/button/door{id = "permacell1"; name = "Cell 1 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/button/flasher{id = "PCell 1"; pixel_x = 6; pixel_y = 24},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/prison) -"afN" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/light{dir = 1},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/prison) -"afO" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/power/apc{dir = 4; name = "Prison Wing APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/prison) -"afP" = (/obj/machinery/flasher/portable,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"afQ" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afR" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afS" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afT" = (/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afU" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afV" = (/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"afX" = (/obj/machinery/door/poddoor/shutters{id = "armory"; name = "Armoury Shutter"},/obj/machinery/button/door{id = "armory"; name = "Armory Shutters"; pixel_x = 0; pixel_y = -26; req_access_txt = "3"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/ai_monitored/security/armory) -"afY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"afZ" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"aga" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/hos) -"agb" = (/obj/machinery/door/airlock/glass_command{name = "Head of Security"; req_access_txt = "58"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/security/hos) -"agc" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/hos) -"agd" = (/obj/structure/table,/obj/item/stack/packageWrap,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/main) -"age" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/security/main) -"agf" = (/obj/machinery/camera{c_tag = "Security Escape Pod"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/security/main) -"agg" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/closed/wall/mineral/titanium,/area/shuttle/pod_3) -"agh" = (/turf/closed/wall/mineral/titanium,/area/shuttle/pod_3) -"agi" = (/obj/structure/cable,/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxstarboard) -"agj" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/security/transfer) -"agk" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/plating,/area/security/transfer) -"agl" = (/obj/structure/rack,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/weapon/tank/internals/anesthetic{pixel_x = -3; pixel_y = 1},/obj/item/weapon/tank/internals/oxygen/red{pixel_x = 3},/turf/open/floor/plasteel/vault{dir = 8},/area/security/transfer) -"agm" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/black,/area/security/transfer) -"agn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/black,/area/security/transfer) -"ago" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{aiControlDisabled = 0; icon_state = "door_closed"; id_tag = null; locked = 0; name = "Prisoner Transfer Centre"; req_access = null; req_access_txt = "2"},/turf/open/floor/plasteel/black,/area/security/transfer) -"agp" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/prison) -"agq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/security/prison) -"agr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/security/prison) -"ags" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/security/prison) -"agt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/prison) -"agu" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/security/prison) -"agv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/prison) -"agw" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/prison) -"agx" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/prison) -"agy" = (/obj/structure/rack,/obj/item/weapon/storage/box/rubbershot{pixel_x = -3; pixel_y = 3},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/storage/box/rubbershot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/box/rubbershot,/obj/item/weapon/storage/box/rubbershot,/obj/item/weapon/storage/box/rubbershot{pixel_x = 3; pixel_y = -3},/obj/item/weapon/storage/box/rubbershot{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"agz" = (/obj/structure/rack,/obj/item/weapon/storage/box/teargas{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/box/handcuffs,/obj/item/weapon/storage/box/flashbangs{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) -"agA" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"agB" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"agC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/suit_storage_unit/security,/turf/open/floor/plasteel/red/side,/area/ai_monitored/security/armory) -"agD" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/suit_storage_unit/security,/turf/open/floor/plasteel/red/side,/area/ai_monitored/security/armory) -"agE" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"agF" = (/obj/machinery/recharger,/obj/structure/table,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"agG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"agH" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/closet/wardrobe/red,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"agI" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/main) -"agJ" = (/obj/effect/landmark/start{name = "Security Officer"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) -"agK" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) -"agL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) -"agM" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) -"agN" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) -"agO" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/main) -"agP" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/security/main) -"agQ" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Escape Pod Three"; req_access_txt = "0"},/turf/open/floor/plating,/area/security/main) -"agR" = (/turf/open/floor/plating,/area/security/main) -"agS" = (/obj/machinery/door/airlock/external{name = "Escape Pod Three"; req_access_txt = "0"},/turf/open/floor/plating,/area/security/main) -"agT" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 4; id = "pod3"; name = "escape pod 3"; port_angle = 180; preferred_direction = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_3) -"agU" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -32},/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_3) -"agV" = (/obj/machinery/computer/shuttle/pod{pixel_y = -32; possible_destinations = "pod_asteroid3"; shuttleId = "pod3"},/obj/structure/chair{dir = 4},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_3) -"agW" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_3) -"agX" = (/obj/docking_port/stationary/random{dir = 4; id = "pod_asteroid3"; name = "asteroid"},/turf/open/space,/area/space) -"agY" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/transfer) -"agZ" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/security/transfer) -"aha" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; layer = 2.4},/obj/machinery/door/window/southleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Armory"; req_access_txt = "2"},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/security/transfer) -"ahb" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plasteel/black,/area/security/transfer) -"ahc" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plasteel/black,/area/security/transfer) -"ahd" = (/obj/machinery/light_switch{pixel_x = 25; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 9},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/security/transfer) -"ahe" = (/obj/structure/table,/obj/item/weapon/restraints/handcuffs,/turf/open/floor/plasteel/red/side{dir = 10},/area/security/prison) -"ahf" = (/obj/structure/extinguisher_cabinet{pixel_x = 1; pixel_y = -27},/turf/open/floor/plasteel/red/side,/area/security/prison) -"ahg" = (/turf/open/floor/plasteel/red/side,/area/security/prison) -"ahh" = (/obj/structure/table,/obj/item/device/electropack,/turf/open/floor/plasteel/red/side,/area/security/prison) -"ahi" = (/obj/structure/table,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/weapon/storage/box/hug,/obj/item/weapon/razor{pixel_x = -6},/turf/open/floor/plasteel/red/side,/area/security/prison) -"ahj" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/clothing/suit/straight_jacket,/turf/open/floor/plasteel/red/side,/area/security/prison) -"ahk" = (/obj/structure/closet/secure_closet/brig{anchored = 1},/turf/open/floor/plasteel/red/side,/area/security/prison) -"ahl" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/prison) -"ahm" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 5},/area/security/prison) -"ahn" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/ai_monitored/security/armory) -"aho" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/ai_monitored/security/armory) -"ahp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/window/southleft{name = "Armory"; req_access_txt = "3"},/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"ahq" = (/obj/machinery/door/firedoor,/obj/machinery/door/window/southleft{base_state = "right"; icon_state = "right"; name = "Armory"; req_access_txt = "3"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) -"ahr" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/ai_monitored/security/armory) -"ahs" = (/obj/structure/reagent_dispensers/peppertank,/turf/closed/wall/r_wall,/area/ai_monitored/security/armory) -"aht" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/securearea{pixel_x = -32},/turf/open/floor/plating,/area/security/main) -"ahu" = (/obj/machinery/door/airlock/glass_security{name = "Equipment Room"; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) -"ahv" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/main) -"ahw" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/main) -"ahx" = (/obj/structure/table,/obj/item/weapon/restraints/handcuffs,/obj/item/device/assembly/timer,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) -"ahy" = (/turf/open/floor/plasteel,/area/security/main) -"ahz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Head of Security"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) -"ahA" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/security/main) -"ahB" = (/obj/structure/table,/obj/item/device/radio/off,/obj/item/weapon/screwdriver{pixel_y = 10},/turf/open/floor/plasteel,/area/security/main) -"ahC" = (/obj/effect/landmark/start{name = "Security Officer"},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/security/main) -"ahD" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) -"ahE" = (/obj/structure/sign/pods{pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/security/main) -"ahF" = (/obj/structure/closet/emcloset,/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/security/main) -"ahG" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 1},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/security/transfer) -"ahH" = (/obj/structure/table,/obj/item/device/electropack,/obj/item/weapon/screwdriver,/obj/item/weapon/wrench,/obj/item/clothing/head/helmet,/obj/item/device/assembly/signaler,/obj/machinery/light/small,/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/black,/area/security/transfer) -"ahI" = (/obj/structure/closet/secure_closet/injection,/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "Prisoner Transfer Centre"; pixel_x = 0; pixel_y = -27},/turf/open/floor/plasteel/black,/area/security/transfer) -"ahJ" = (/obj/machinery/door/airlock/security{name = "Interrogation"; req_access = null; req_access_txt = "63"},/turf/open/floor/plasteel/black,/area/security/prison) -"ahK" = (/turf/closed/wall,/area/security/brig) -"ahL" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "Prison Gate"; name = "prison blast door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/security/brig) -"ahM" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "Prison Gate"; name = "prison blast door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/security/brig) -"ahN" = (/turf/closed/wall/r_wall,/area/security/warden) -"ahO" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_x = -30; pixel_y = 0},/obj/machinery/camera{c_tag = "Brig Control Room"; dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/rack,/obj/item/clothing/mask/gas/sechailer{pixel_x = -3; pixel_y = 3},/obj/item/clothing/mask/gas/sechailer,/obj/item/clothing/mask/gas/sechailer{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ahP" = (/obj/machinery/computer/prisoner,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ahQ" = (/obj/machinery/computer/security,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ahR" = (/obj/machinery/computer/secure_data,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ahS" = (/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ahT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ahU" = (/obj/structure/table,/obj/item/clothing/glasses/sunglasses{pixel_x = 3; pixel_y = 3},/obj/item/clothing/glasses/sunglasses{pixel_x = 3; pixel_y = 3},/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ahV" = (/obj/structure/table,/obj/machinery/recharger,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ahW" = (/obj/structure/table,/obj/machinery/syndicatebomb/training,/obj/item/weapon/gun/energy/laser/practice,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/main) -"ahX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) -"ahY" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) -"ahZ" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) -"aia" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/main) -"aib" = (/obj/structure/table,/obj/item/device/assembly/flash/handheld,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) -"aic" = (/obj/machinery/holopad,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) -"aid" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/main) -"aie" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) -"aif" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/security/prison) -"aig" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) -"aih" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) -"aii" = (/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/security/prison) -"aij" = (/turf/open/floor/plasteel/black,/area/security/prison) -"aik" = (/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/table/glass,/turf/open/floor/plasteel/whitered/side{dir = 9},/area/security/brig) -"ail" = (/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/regular,/obj/structure/table/glass,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/security/brig) -"aim" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 24},/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/security/brig) -"ain" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/iv_drip{density = 0},/obj/item/weapon/reagent_containers/blood/empty,/turf/open/floor/plasteel/whitered/side{dir = 5},/area/security/brig) -"aio" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) -"aip" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) -"aiq" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) -"air" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ais" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ait" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aiu" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aiv" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aiw" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aix" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) -"aiy" = (/obj/structure/table,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/main) -"aiz" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel,/area/security/main) -"aiA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) -"aiB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) -"aiC" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) -"aiD" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/security/main) -"aiE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) -"aiF" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j2s"; sortType = 8},/turf/open/floor/plasteel,/area/security/main) -"aiG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plasteel,/area/security/main) -"aiH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Security Officer"},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/security/main) -"aiI" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j2s"; sortType = 7},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) -"aiJ" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Security Delivery"; req_access_txt = "1"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/security/main) -"aiK" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "Security"},/obj/structure/plasticflaps{opacity = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/security/main) -"aiL" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/fsmaint) -"aiM" = (/turf/closed/wall,/area/maintenance/fsmaint) -"aiN" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) -"aiO" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel/black,/area/security/prison) -"aiP" = (/obj/structure/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/security/prison) -"aiQ" = (/obj/item/weapon/storage/box/bodybags,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/item/weapon/reagent_containers/syringe{name = "steel point"},/obj/item/weapon/reagent_containers/glass/bottle/charcoal,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/table/glass,/turf/open/floor/plasteel/whitered/side{dir = 10},/area/security/brig) -"aiR" = (/turf/open/floor/plasteel/whitered/corner{tag = "icon-whiteredcorner (WEST)"; dir = 8},/area/security/brig) -"aiS" = (/turf/open/floor/plasteel/white,/area/security/brig) -"aiT" = (/obj/machinery/door/window/westleft{base_state = "left"; dir = 4; icon_state = "left"; name = "Brig Infirmary"; req_access_txt = "0"},/turf/open/floor/plasteel/whitered/side{dir = 4},/area/security/brig) -"aiU" = (/obj/machinery/power/apc{dir = 8; name = "Brig Control APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aiV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aiW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aiX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aiY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aiZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"aja" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajc" = (/obj/machinery/door/airlock/glass_security{name = "Brig Control"; req_access_txt = "3"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajd" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/main) -"aje" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) -"ajf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) -"ajg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) -"ajh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) -"aji" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-y"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) -"ajj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/chair,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel,/area/security/main) -"ajk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) -"ajl" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) -"ajm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) -"ajn" = (/obj/machinery/power/apc{dir = 4; name = "Security Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) -"ajo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/security/main) -"ajp" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/fsmaint) -"ajq" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/plasteel/black,/area/security/prison) -"ajr" = (/obj/machinery/camera{c_tag = "Brig Interrogation"; dir = 8},/turf/open/floor/plasteel/black,/area/security/prison) -"ajs" = (/obj/structure/bodycontainer/morgue,/obj/machinery/camera{c_tag = "Brig Infirmary"; dir = 4},/turf/open/floor/plasteel/black,/area/security/brig) -"ajt" = (/turf/open/floor/plasteel/whitered/side{dir = 8},/area/security/brig) -"aju" = (/obj/machinery/door/window/westleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Brig Infirmary"; req_access_txt = "0"},/turf/open/floor/plasteel/whitered/side{dir = 4},/area/security/brig) -"ajv" = (/obj/structure/closet/secure_closet/warden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajw" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajx" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start{name = "Warden"},/obj/machinery/button/door{id = "Prison Gate"; name = "Prison Wing Lockdown"; pixel_x = -27; pixel_y = 8; req_access_txt = "2"},/obj/machinery/button/door{id = "Secure Gate"; name = "Cell Shutters"; pixel_x = -27; pixel_y = -2; req_access_txt = "0"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajy" = (/obj/structure/table,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajz" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajC" = (/obj/machinery/light_switch{pixel_y = -23},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"ajD" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) -"ajE" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/main) -"ajF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/side,/area/security/main) -"ajG" = (/obj/structure/noticeboard{dir = 1; pixel_y = -27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/main) -"ajH" = (/obj/machinery/light_switch{pixel_y = -23},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/side,/area/security/main) -"ajI" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) -"ajJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) -"ajK" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/side,/area/security/main) -"ajL" = (/obj/machinery/camera{c_tag = "Security Office"; dir = 1; network = list("SS13")},/obj/machinery/computer/secure_data,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) -"ajM" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/computer/security,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) -"ajN" = (/obj/structure/filingcabinet,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/main) -"ajO" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) -"ajP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/red/side,/area/security/main) -"ajQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/main) -"ajR" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/security/main) -"ajS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"ajT" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fsmaint) -"ajU" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint) -"ajV" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/security/prison) -"ajW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) -"ajX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/security/prison) -"ajY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/security/prison) -"ajZ" = (/obj/structure/bodycontainer/morgue,/turf/open/floor/plasteel/black,/area/security/brig) -"aka" = (/turf/open/floor/plasteel/whitered/side{dir = 10},/area/security/brig) -"akb" = (/obj/structure/bed,/obj/item/clothing/suit/straight_jacket,/turf/open/floor/plasteel/whitered/side,/area/security/brig) -"akc" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/bed,/obj/item/clothing/suit/straight_jacket,/turf/open/floor/plasteel/whitered/side{dir = 6},/area/security/brig) -"akd" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) -"ake" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) -"akf" = (/obj/structure/table/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/window/brigdoor{dir = 1; name = "Armory Desk"; req_access_txt = "3"},/obj/machinery/door/window/southleft{name = "Reception Desk"; req_access_txt = "63"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"akg" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) -"akh" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) -"aki" = (/obj/machinery/door/airlock/glass_security{name = "Brig Control"; req_access_txt = "3"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) -"akj" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable,/turf/open/floor/plating,/area/security/warden) -"akk" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Security Office"; req_access = null; req_access_txt = "1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) -"akl" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"akm" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"akn" = (/obj/item/stack/rods,/turf/open/space,/area/space) -"ako" = (/turf/closed/wall/r_wall,/area/security/processing) -"akp" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) -"akq" = (/obj/machinery/door/airlock/security{name = "Interrogation"; req_access = null; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/security/prison) -"akr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/brig) -"aks" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/brig) -"akt" = (/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"aku" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akv" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akw" = (/obj/structure/sign/goldenplaque{pixel_y = 32},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akx" = (/obj/machinery/camera{c_tag = "Brig East"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"aky" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akA" = (/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) -"akB" = (/turf/closed/wall/r_wall,/area/security/brig) -"akC" = (/obj/machinery/light_switch{pixel_y = 28},/obj/structure/closet/secure_closet/courtroom,/obj/effect/decal/cleanable/cobweb,/obj/structure/sign/securearea{pixel_x = -32},/obj/item/weapon/gavelhammer,/turf/open/floor/plasteel,/area/crew_quarters/courtroom) -"akD" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/machinery/camera{c_tag = "Courtroom North"},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) -"akE" = (/obj/structure/chair{name = "Judge"},/turf/open/floor/plasteel/blue/side{dir = 9},/area/crew_quarters/courtroom) -"akF" = (/obj/structure/chair{name = "Judge"},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/blue/side{dir = 1},/area/crew_quarters/courtroom) -"akG" = (/obj/structure/chair{name = "Judge"},/turf/open/floor/plasteel/blue/side{dir = 5},/area/crew_quarters/courtroom) -"akH" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) -"akI" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"akJ" = (/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"akK" = (/turf/closed/wall,/area/crew_quarters/courtroom) -"akL" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) -"akM" = (/obj/machinery/gulag_teleporter,/turf/open/floor/plasteel,/area/security/processing) -"akN" = (/obj/machinery/computer/gulag_teleporter_computer,/turf/open/floor/plasteel,/area/security/processing) -"akO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/machinery/computer/security{name = "Labor Camp Monitoring"; network = list("Labor")},/turf/open/floor/plasteel,/area/security/processing) -"akP" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/table,/obj/item/weapon/storage/box/prisoner,/obj/machinery/camera{c_tag = "Labor Shuttle Dock North"},/turf/open/floor/plasteel,/area/security/processing) -"akQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/brig) -"akR" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) -"akS" = (/obj/machinery/power/apc{dir = 1; name = "Labor Shuttle Dock APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akT" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akU" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akV" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) -"akX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/brig) -"akY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) -"akZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/security/brig) -"ala" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/brig) -"alb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/brig) -"alc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) -"ald" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/brig) -"ale" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) -"alf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) -"alg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/brig) -"alh" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Brig"; req_access = null; req_access_txt = "63; 42"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) -"ali" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) -"alj" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 9},/area/crew_quarters/courtroom) -"alk" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{broadcasting = 0; dir = 8; listening = 1; name = "Station Intercom (Court)"; pixel_x = 0},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/courtroom) -"all" = (/obj/structure/table/wood,/obj/item/weapon/gavelblock,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/courtroom) -"alm" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/courtroom) -"aln" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/courtroom) -"alo" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/vault{dir = 8},/area/crew_quarters/courtroom) -"alp" = (/obj/machinery/door/window/southleft{name = "Court Cell"; req_access_txt = "2"},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"alq" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/auxsolarport) -"alr" = (/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"als" = (/turf/closed/wall/mineral/titanium,/area/shuttle/labor) -"alt" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/labor) -"alu" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/security/processing) -"alv" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel,/area/security/processing) -"alw" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) -"alx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/security/processing) -"aly" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Labor Shuttle"; req_access = null; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) -"alz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/brig) -"alA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) -"alB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "Brig West"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 2},/area/security/brig) -"alC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/brig) -"alD" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/security/brig) -"alE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) -"alF" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/corner{dir = 2},/area/security/brig) -"alG" = (/obj/machinery/light,/obj/machinery/door_timer{id = "Cell 1"; name = "Cell 1"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/brig) -"alH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/security/brig) -"alI" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 2},/area/security/brig) -"alJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door_timer{id = "Cell 2"; name = "Cell 2"; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/brig) -"alK" = (/obj/machinery/camera{c_tag = "Brig Central"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door_timer{id = "Cell 3"; name = "Cell 3"; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/brig) -"alL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/brig) -"alM" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) -"alN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) -"alO" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door_timer{id = "Cell 4"; name = "Cell 4"; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/brig) -"alP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/security/brig) -"alQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/brig) -"alR" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/brig) -"alS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/brig) -"alT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) -"alU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/courtroom) -"alV" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/courtroom) -"alW" = (/turf/open/floor/plasteel,/area/crew_quarters/courtroom) -"alX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"alY" = (/obj/machinery/computer/shuttle/labor,/obj/structure/reagent_dispensers/peppertank{pixel_x = -31; pixel_y = 0},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) -"alZ" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) -"ama" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/restraints/handcuffs,/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) -"amb" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) -"amc" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/security/processing) -"amd" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/security/processing) -"ame" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) -"amf" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/processing) -"amg" = (/obj/machinery/door/airlock/glass_security{id_tag = null; name = "Evidence Storage"; req_access_txt = "63"},/turf/open/floor/plasteel/red/side,/area/security/brig) -"amh" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"ami" = (/obj/machinery/door/window/brigdoor{id = "Cell 1"; name = "Cell 1"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side,/area/security/brig) -"amj" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"amk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall/r_wall,/area/security/brig) -"aml" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"amm" = (/obj/machinery/door/window/brigdoor{id = "Cell 2"; name = "Cell 2"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side,/area/security/brig) -"amn" = (/obj/machinery/door/window/brigdoor{id = "Cell 3"; name = "Cell 3"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side,/area/security/brig) -"amo" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"amp" = (/obj/machinery/door/airlock/glass_security{name = "Brig Desk"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/black,/area/security/brig) -"amq" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"amr" = (/obj/machinery/door/airlock/glass_security{cyclelinkeddir = 2; id_tag = "innerbrig"; name = "Brig"; req_access_txt = "63"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) -"ams" = (/obj/machinery/door/airlock/glass_security{cyclelinkeddir = 2; id_tag = "innerbrig"; name = "Brig"; req_access_txt = "63"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) -"amt" = (/obj/structure/grille,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"amu" = (/obj/machinery/door/window/brigdoor{id = "Cell 4"; name = "Cell 4"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/brig) -"amv" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"amw" = (/obj/structure/chair{dir = 4; name = "Prosecution"},/turf/open/floor/plasteel/red/side{dir = 9},/area/crew_quarters/courtroom) -"amx" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/courtroom) -"amy" = (/obj/machinery/holopad,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/crew_quarters/courtroom) -"amz" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/courtroom) -"amA" = (/obj/structure/chair{dir = 8; name = "Defense"},/turf/open/floor/plasteel/green/side{dir = 5},/area/crew_quarters/courtroom) -"amB" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"amC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"amD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"amE" = (/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) -"amF" = (/obj/machinery/button/flasher{id = "gulagshuttleflasher"; name = "Flash Control"; pixel_x = 0; pixel_y = -26; req_access_txt = "1"},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) -"amG" = (/obj/machinery/mineral/labor_claim_console{machinedir = 2; pixel_x = 30; pixel_y = 30},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) -"amH" = (/obj/machinery/door/airlock/titanium{name = "Labor Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) -"amI" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Labor Camp Shuttle Airlock"; req_access_txt = "2"; shuttledocked = 1},/turf/open/floor/plating,/area/security/processing) -"amJ" = (/turf/open/floor/plating,/area/security/processing) -"amK" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Labor Camp Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/security/processing) -"amL" = (/turf/open/floor/plasteel,/area/security/processing) -"amM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) -"amN" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/processing) -"amO" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) -"amP" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) -"amQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = -25; pixel_y = -2; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"amR" = (/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"amS" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"amT" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = -25; pixel_y = -2; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"amU" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"amV" = (/obj/machinery/button/door{id = "briggate"; name = "Desk Shutters"; pixel_x = -26; pixel_y = 6; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/button/flasher{id = "brigentry"; pixel_x = -28; pixel_y = -8},/turf/open/floor/plasteel/black,/area/security/brig) -"amW" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel/black,/area/security/brig) -"amX" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/eastleft{name = "Brig Desk"; req_access_txt = "1"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel/black,/area/security/brig) -"amY" = (/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) -"amZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"ana" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/flasher{id = "Cell 4"; pixel_x = 28},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anb" = (/obj/structure/chair{dir = 4; name = "Prosecution"},/turf/open/floor/plasteel/red/side{dir = 10},/area/crew_quarters/courtroom) -"anc" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 10},/area/crew_quarters/courtroom) -"and" = (/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/courtroom) -"ane" = (/obj/item/device/radio/beacon,/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/courtroom) -"anf" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/courtroom) -"ang" = (/obj/structure/chair{dir = 8; name = "Defense"},/turf/open/floor/plasteel/green/side{dir = 6},/area/crew_quarters/courtroom) -"anh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) -"ani" = (/turf/closed/wall,/area/maintenance/fsmaint2) -"anj" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ank" = (/turf/closed/wall/r_wall,/area/maintenance/auxsolarport) -"anl" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Port Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"anm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"ann" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"ano" = (/turf/closed/wall,/area/maintenance/fpmaint2) -"anp" = (/obj/effect/decal/cleanable/vomit,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"anq" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"anr" = (/obj/item/weapon/cigbutt/cigarbutt,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ans" = (/obj/machinery/door/airlock/titanium{name = "Labor Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plasteel/black,/area/shuttle/labor) -"ant" = (/obj/machinery/mineral/stacking_machine/laborstacker{input_dir = 2; output_dir = 1},/turf/open/floor/plasteel/black,/area/shuttle/labor) -"anu" = (/obj/machinery/computer/shuttle/labor,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/security/processing) -"anv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/processing) -"anw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/processing) -"anx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/processing) -"any" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/brig) -"anz" = (/turf/open/floor/plasteel,/area/security/brig) -"anA" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/brig) -"anB" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/flasher{id = "Cell 1"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anC" = (/obj/structure/closet/secure_closet/brig{id = "Cell 1"; name = "Cell 1 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anD" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/flasher{id = "Cell 2"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anE" = (/obj/structure/closet/secure_closet/brig{id = "Cell 2"; name = "Cell 2 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anF" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/flasher{id = "Cell 3"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anG" = (/obj/structure/closet/secure_closet/brig{id = "Cell 3"; name = "Cell 3 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anH" = (/obj/machinery/light/small{dir = 8},/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "outerbrig"; name = "Brig Exterior Doors Control"; normaldoorcontrol = 1; pixel_x = -26; pixel_y = -5; req_access_txt = "63"},/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "innerbrig"; name = "Brig Interior Doors Control"; normaldoorcontrol = 1; pixel_x = -26; pixel_y = 5; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/security/brig) -"anI" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel/black,/area/security/brig) -"anJ" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/eastright{name = "Brig Desk"; req_access_txt = "2"},/obj/item/weapon/restraints/handcuffs,/obj/item/device/radio/off,/turf/open/floor/plasteel/black,/area/security/brig) -"anK" = (/obj/machinery/flasher{id = "brigentry"; pixel_x = 28},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) -"anL" = (/obj/structure/closet/secure_closet/brig{id = "Cell 4"; name = "Cell 4 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anM" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anN" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 25; pixel_y = -2; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/brig) -"anO" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/courtroom) -"anP" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/courtroom) -"anQ" = (/obj/machinery/door/airlock/glass{name = "Courtroom"; req_access_txt = "42"},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"anR" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/courtroom) -"anS" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"anT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"anU" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"anV" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"anW" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"anX" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"anY" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 2},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"anZ" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoa" = (/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aob" = (/obj/structure/bed,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bedsheet,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoc" = (/obj/machinery/computer/slot_machine{balance = 15; money = 500},/obj/item/weapon/coin/iron,/obj/item/weapon/coin/diamond,/obj/item/weapon/coin/diamond,/obj/item/weapon/coin/diamond,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aod" = (/obj/structure/chair{dir = 1},/obj/item/toy/sword,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoe" = (/obj/structure/chair{dir = 1},/obj/structure/noticeboard{dir = 8; pixel_x = 27; pixel_y = 0},/obj/item/trash/plate,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aof" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) -"aog" = (/obj/machinery/mineral/labor_claim_console{machinedir = 1; pixel_x = 30; pixel_y = 0},/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) -"aoh" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/closed/wall/r_wall,/area/security/processing) -"aoi" = (/obj/machinery/door/airlock/glass_security{name = "Prisoner Processing"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) -"aoj" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) -"aok" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/brig) -"aol" = (/obj/machinery/light,/turf/open/floor/plasteel/red/side,/area/security/brig) -"aom" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/brig) -"aon" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/grille,/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "Secure Gate"; name = "brig shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"aoo" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "Secure Gate"; name = "brig shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"aop" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/southleft{name = "Brig Desk"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/black,/area/security/brig) -"aoq" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/southleft{base_state = "right"; icon_state = "right"; name = "Brig Desk"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/black,/area/security/brig) -"aor" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "briggate"; name = "security blast door"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) -"aos" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{cyclelinkeddir = 1; id_tag = "outerbrig"; name = "Brig"; req_access_txt = "63"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) -"aot" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{cyclelinkeddir = 1; id_tag = "outerbrig"; name = "Brig"; req_access_txt = "63"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) -"aou" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"aov" = (/obj/structure/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"aow" = (/obj/structure/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"aox" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 8; name = "Courtroom APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/crew_quarters/courtroom) -"aoy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"aoz" = (/obj/machinery/light/small{dir = 4},/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint) -"aoA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"aoB" = (/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aoC" = (/turf/closed/wall,/area/mining_construction) -"aoD" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Fore Port Solar APC"; pixel_x = -25; pixel_y = 3},/obj/machinery/camera{c_tag = "Fore Port Solar Control"; dir = 1},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"aoE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"aoF" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/auxsolarport) -"aoG" = (/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{icon_state = "manifold"; dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoH" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoI" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoJ" = (/obj/item/trash/sosjerky,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoK" = (/obj/item/weapon/electronics/airalarm,/obj/item/weapon/circuitboard/machine/seed_extractor,/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoL" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoM" = (/obj/item/weapon/cigbutt,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aoN" = (/obj/structure/chair{dir = 8},/obj/machinery/flasher{id = "gulagshuttleflasher"; pixel_x = 25},/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) -"aoO" = (/obj/machinery/gulag_item_reclaimer{pixel_y = 24},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/security/processing) -"aoP" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/processing) -"aoQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 5},/area/security/processing) -"aoR" = (/obj/machinery/button/door{desc = "A remote control switch for the exit."; id = "laborexit"; name = "exit button"; normaldoorcontrol = 1; pixel_x = 26; pixel_y = -6; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/processing) -"aoS" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) -"aoT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) -"aoU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) -"aoV" = (/turf/open/floor/plasteel,/area/hallway/primary/fore) -"aoW" = (/obj/machinery/light{dir = 1},/obj/structure/sign/securearea{pixel_y = 32},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) -"aoX" = (/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) -"aoY" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/crew_quarters/courtroom) -"aoZ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"apa" = (/turf/open/floor/plating,/area/maintenance/fsmaint) -"apb" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fsmaint) -"apc" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/maintenance/fsmaint) -"apd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"ape" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"apf" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"apg" = (/obj/structure/closet/secure_closet/miner{locked = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"aph" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Port Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarport) -"api" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/auxsolarport) -"apj" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"apk" = (/obj/effect/decal/cleanable/egg_smudge,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"apl" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"apm" = (/obj/structure/closet/crate,/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) -"apn" = (/obj/machinery/door/airlock/titanium{id_tag = "prisonshuttle"; name = "Labor Shuttle Airlock"},/obj/docking_port/mobile{dir = 8; dwidth = 2; height = 5; id = "laborcamp"; name = "labor camp shuttle"; port_angle = 90; width = 9},/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 5; id = "laborcamp_home"; name = "fore bay 1"; width = 9},/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) -"apo" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Labor Camp Shuttle Airlock"; shuttledocked = 1},/turf/open/floor/plating,/area/security/processing) -"app" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Labor Camp Shuttle Airlock"},/turf/open/floor/plating,/area/security/processing) -"apq" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{id_tag = "laborexit"; name = "Labor Shuttle"; req_access = null; req_access_txt = "63"},/turf/open/floor/plasteel,/area/security/processing) -"apr" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/fore) -"aps" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/fore) -"apt" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/hallway/primary/fore) -"apu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/fore) -"apv" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Courtroom"},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"apw" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"apx" = (/obj/machinery/light/small,/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"apy" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"apz" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/machinery/camera{c_tag = "Courtroom South"; dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"apA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"apB" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint) -"apC" = (/obj/structure/disposalpipe/segment,/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"apD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/fsmaint) -"apE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fsmaint) -"apF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/closed/wall,/area/maintenance/fsmaint) -"apG" = (/turf/closed/wall/r_wall,/area/maintenance/auxsolarstarboard) -"apH" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Starboard Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"apI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"apJ" = (/obj/structure/rack,/obj/item/clothing/mask/gas,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/item/device/multitool,/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"apK" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"apL" = (/turf/open/floor/plating,/area/shuttle/auxillary_base) -"apM" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"apN" = (/obj/machinery/camera{c_tag = "Fore Port Solar Access"},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"apO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"apP" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"apQ" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"apR" = (/obj/structure/chair,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"apS" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/monkey_recycler,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"apT" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plating/airless,/area/shuttle/labor) -"apU" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) -"apV" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/security/processing) -"apW" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/processing) -"apX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/camera{c_tag = "Labor Shuttle Dock South"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/processing) -"apY" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/processing) -"apZ" = (/turf/open/floor/plasteel/red/corner{dir = 8},/area/hallway/primary/fore) -"aqa" = (/obj/machinery/camera{c_tag = "Fore Primary Hallway West"; dir = 1},/turf/open/floor/plasteel/red/corner{dir = 8},/area/hallway/primary/fore) -"aqb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/hallway/primary/fore) -"aqc" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=EVA"; location = "Security"},/turf/open/floor/plasteel,/area/hallway/primary/fore) -"aqd" = (/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) -"aqe" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) -"aqf" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) -"aqg" = (/obj/machinery/camera{c_tag = "Fore Primary Hallway East"; dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) -"aqh" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) -"aqi" = (/obj/machinery/vending/snack/random,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) -"aqj" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) -"aqk" = (/obj/structure/table,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"aql" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) -"aqm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/fsmaint) -"aqn" = (/obj/machinery/light/small{dir = 8},/obj/structure/chair/stool{pixel_y = 8},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) -"aqo" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Air Out"; on = 1},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating,/area/maintenance/fsmaint) -"aqp" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"aqq" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"aqr" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"aqs" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aqt" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aqu" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/mining_construction) -"aqv" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aqw" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aqx" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aqy" = (/obj/structure/bed,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aqz" = (/turf/open/space,/area/space/nearstation) -"aqA" = (/obj/structure/lattice,/turf/open/space,/area/space/nearstation) -"aqB" = (/turf/open/floor/plasteel/airless,/area/space/nearstation) -"aqC" = (/obj/structure/table,/obj/item/weapon/stamp,/obj/item/weapon/poster/legit,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aqD" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aqE" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/labor) -"aqF" = (/obj/structure/plasticflaps,/turf/open/floor/plating,/area/security/processing) -"aqG" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/security/processing) -"aqH" = (/turf/closed/wall/r_wall,/area/security/vacantoffice2) -"aqI" = (/turf/closed/wall,/area/security/vacantoffice2) -"aqJ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Vacant Office B"; req_access_txt = "32"},/turf/open/floor/plating,/area/security/vacantoffice2) -"aqK" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aqL" = (/turf/closed/wall,/area/lawoffice) -"aqM" = (/obj/machinery/door/airlock{name = "Law Office"; req_access_txt = "38"},/turf/open/floor/plasteel,/area/lawoffice) -"aqN" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) -"aqO" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/fore) -"aqP" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) -"aqQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fsmaint) -"aqR" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/closed/wall,/area/maintenance/fsmaint) -"aqS" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/closed/wall,/area/maintenance/fsmaint) -"aqT" = (/obj/machinery/space_heater,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"aqU" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"aqV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"aqW" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "Dormitory Maintenance APC"; pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"aqX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"aqY" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"aqZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint) -"ara" = (/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access_txt = "12;24"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arb" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "Air In"; on = 1},/obj/effect/landmark{name = "blobstart"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arc" = (/obj/item/weapon/wrench,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"ard" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Fore Starboard Solar APC"; pixel_x = -25; pixel_y = 3},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"are" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"arf" = (/obj/machinery/camera{c_tag = "Fore Starboard Solars"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"arg" = (/turf/closed/wall/r_wall,/area/maintenance/fsmaint2) -"arh" = (/obj/structure/closet/wardrobe/mixed,/obj/item/clothing/shoes/jackboots,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ari" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"arj" = (/obj/machinery/light,/turf/open/floor/plating,/area/shuttle/auxillary_base) -"ark" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/mining_construction) -"arl" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/mining_construction) -"arm" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/mining_construction) -"arn" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/yellow/side{dir = 5},/area/mining_construction) -"aro" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"arp" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) -"arq" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) -"arr" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ars" = (/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 35},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"art" = (/obj/effect/landmark{name = "carpspawn"},/obj/structure/lattice,/turf/open/space,/area/space/nearstation) -"aru" = (/turf/closed/wall,/area/security/processing) -"arv" = (/obj/item/weapon/paper{info = "01001001 00100000 01101000 01101111 01110000 01100101 00100000 01111001 01101111 01110101 00100000 01110011 01110100 01100001 01111001 00100000 01110011 01100001 01100110 01100101 00101110 00100000 01001100 01101111 01110110 01100101 00101100 00100000 01101101 01101111 01101101 00101110"; name = "Note from Beepsky's Mom"},/turf/open/floor/plating,/area/security/processing) -"arw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/security/processing) -"arx" = (/obj/structure/chair,/turf/open/floor/plating,/area/security/vacantoffice2) -"ary" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/structure/chair,/turf/open/floor/plating,/area/security/vacantoffice2) -"arz" = (/turf/open/floor/plasteel,/area/security/vacantoffice2) -"arA" = (/turf/open/floor/plating,/area/security/vacantoffice2) -"arB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"arC" = (/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/wood,/area/lawoffice) -"arD" = (/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/wood,/area/lawoffice) -"arE" = (/turf/open/floor/wood,/area/lawoffice) -"arF" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/briefcase,/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/wood,/area/lawoffice) -"arG" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) -"arH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/fsmaint) -"arI" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"arL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arM" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arN" = (/obj/machinery/power/apc{dir = 2; name = "Dormitory APC"; pixel_y = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/sleep) -"arO" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arQ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arS" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/light/small{dir = 4},/obj/machinery/power/apc{dir = 2; name = "Fitness Room APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/fitness) -"arT" = (/obj/structure/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/internals/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arU" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint) -"arV" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"arW" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"arX" = (/obj/structure/grille,/obj/effect/landmark{name = "Syndicate Breach Area"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"arY" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"arZ" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Starboard Solar Access"; req_access_txt = "10"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) -"asb" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/auxsolarstarboard) -"asc" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asd" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ase" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asf" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asg" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ash" = (/obj/effect/decal/cleanable/cobweb,/obj/item/weapon/coin/gold,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asi" = (/obj/machinery/computer/slot_machine{balance = 15; money = 500},/obj/item/weapon/coin/iron,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asj" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ask" = (/obj/machinery/camera{c_tag = "Auxillary Mining Base"; dir = 8; network = list("SS13","AuxBase")},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"asl" = (/obj/docking_port/mobile/auxillary_base{dheight = 4; dir = 4; dwidth = 4; height = 9; width = 9},/obj/machinery/bluespace_beacon,/obj/machinery/computer/auxillary_base{pixel_y = 0},/turf/closed/wall,/area/shuttle/auxillary_base) -"asm" = (/obj/structure/mining_shuttle_beacon{dir = 4},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"asn" = (/obj/effect/turf_decal/stripes/line{dir = 4},/obj/docking_port/stationary/public_mining_dock{dir = 8},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"aso" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Construction Zone"; req_access = null; req_access_txt = "0"; req_one_access_txt = "0"},/turf/open/floor/plating,/area/mining_construction) -"asp" = (/turf/open/floor/plasteel/yellow/side{dir = 8},/area/mining_construction) -"asq" = (/turf/open/floor/plasteel,/area/mining_construction) -"asr" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/camera{c_tag = "Auxillary Base Construction"; dir = 8},/obj/machinery/computer/camera_advanced/base_construction,/turf/open/floor/plasteel/yellow/side{dir = 4},/area/mining_construction) -"ass" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) -"ast" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 5},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"asu" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 10},/obj/machinery/meter,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"asv" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"asw" = (/obj/machinery/power/apc{dir = 1; name = "Arrivals North Maintenance APC"; pixel_x = -1; pixel_y = 26},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"asx" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 1},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"asy" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) -"asz" = (/turf/open/floor/plating,/area/maintenance/fpmaint) -"asA" = (/obj/item/weapon/bedsheet/red,/mob/living/simple_animal/bot/secbot/beepsky{name = "Officer Beepsky"},/turf/open/floor/plating,/area/security/processing) -"asB" = (/obj/machinery/light/small{dir = 4},/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/potato{name = "\improper Beepsky's emergency battery"},/turf/open/floor/plating,/area/security/processing) -"asC" = (/obj/machinery/power/apc{dir = 8; name = "Labor Shuttle Dock APC"; pixel_x = -24},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/security/processing) -"asD" = (/obj/structure/table/wood,/obj/item/weapon/pen,/turf/open/floor/plating,/area/security/vacantoffice2) -"asE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/obj/structure/table/wood,/obj/item/device/flashlight/lamp,/turf/open/floor/plating,/area/security/vacantoffice2) -"asF" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plating,/area/security/vacantoffice2) -"asG" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/requests_console{department = "Law office"; pixel_x = -32; pixel_y = 0},/obj/structure/closet/lawcloset,/turf/open/floor/wood,/area/lawoffice) -"asH" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/pen/red,/turf/open/floor/wood,/area/lawoffice) -"asI" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/open/floor/wood,/area/lawoffice) -"asJ" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "lawyer_blast"; name = "privacy door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/lawoffice) -"asK" = (/turf/closed/wall,/area/crew_quarters/sleep) -"asL" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"asM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/fsmaint) -"asN" = (/turf/closed/wall,/area/crew_quarters/fitness) -"asO" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"asP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/crew_quarters/fitness) -"asQ" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"asR" = (/turf/open/floor/engine{name = "Holodeck Projector Floor"},/area/holodeck/rec_center) -"asS" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asT" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance{lootcount = 8; name = "8maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asU" = (/obj/machinery/power/apc{dir = 1; name = "Bar Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asW" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asX" = (/obj/machinery/camera{c_tag = "Fore Starboard Solar Access"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asY" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"asZ" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ata" = (/obj/structure/table,/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"atb" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"atc" = (/obj/item/weapon/coin/gold,/obj/item/weapon/coin/iron,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"atd" = (/obj/structure/closet,/obj/item/weapon/coin/iron,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ate" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"atf" = (/obj/machinery/light{dir = 1},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"atg" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/yellow/side{dir = 8},/area/mining_construction) -"ath" = (/obj/structure/rack{dir = 4},/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/item/device/assault_pod/mining,/obj/machinery/computer/security/telescreen{desc = "Used for the Auxillary Mining Base."; dir = 8; name = "Auxillary Base Monitor"; network = list("AuxBase"); pixel_x = 28},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/mining_construction) -"ati" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 5},/turf/closed/wall,/area/maintenance/fpmaint2) -"atj" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) -"atk" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"atl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"atm" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"atn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ato" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/fpmaint2) -"atp" = (/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"atq" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"atr" = (/obj/machinery/monkey_recycler,/obj/item/weapon/reagent_containers/food/snacks/monkeycube,/obj/item/weapon/reagent_containers/food/snacks/monkeycube,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ats" = (/turf/closed/wall,/area/maintenance/fpmaint) -"att" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/fpmaint) -"atu" = (/obj/structure/rack,/turf/open/floor/plasteel,/area/security/vacantoffice2) -"atv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/chair{dir = 1},/turf/open/floor/plating,/area/security/vacantoffice2) -"atw" = (/obj/structure/table/wood,/turf/open/floor/plating,/area/security/vacantoffice2) -"atx" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plating,/area/security/vacantoffice2) -"aty" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/lawoffice) -"atz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/filingcabinet/employment,/turf/open/floor/wood,/area/lawoffice) -"atA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/lawoffice) -"atB" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/law,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/lawoffice) -"atC" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Lawyer"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/wood,/area/lawoffice) -"atD" = (/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) -"atE" = (/obj/structure/table,/obj/machinery/light/small{dir = 8},/turf/open/floor/carpet,/area/crew_quarters/sleep) -"atF" = (/obj/structure/closet/secure_closet/personal,/turf/open/floor/carpet,/area/crew_quarters/sleep) -"atG" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm4"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) -"atH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/sleep) -"atI" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 9},/area/crew_quarters/sleep) -"atJ" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/sleep) -"atK" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/wood,/area/crew_quarters/sleep) -"atL" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/wood,/area/crew_quarters/sleep) -"atM" = (/obj/machinery/airalarm{pixel_y = 23},/obj/structure/closet/secure_closet/personal/cabinet,/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/wood,/area/crew_quarters/sleep) -"atN" = (/obj/structure/dresser,/turf/open/floor/wood,/area/crew_quarters/sleep) -"atO" = (/obj/machinery/airalarm{pixel_y = 23},/obj/structure/closet/secure_closet/personal/cabinet,/turf/open/floor/wood,/area/crew_quarters/sleep) -"atP" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/neutral/side{dir = 9},/area/crew_quarters/fitness) -"atQ" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal/bin,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) -"atR" = (/obj/structure/closet/athletic_mixed,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) -"atS" = (/obj/structure/closet/boxinggloves,/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/clothing/shoes/jackboots,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) -"atT" = (/obj/machinery/camera{c_tag = "Fitness Room"},/obj/structure/closet/masks,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) -"atU" = (/obj/structure/closet/lasertag/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) -"atV" = (/obj/structure/closet/lasertag/red,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/fitness) -"atW" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"atX" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"atY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"atZ" = (/obj/structure/door_assembly/door_assembly_mai,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aua" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aub" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"auc" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/donut,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aud" = (/turf/closed/wall,/area/maintenance/electrical) -"aue" = (/turf/closed/wall,/area/space/nearstation) -"auf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side{dir = 8},/area/mining_construction) -"aug" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/mining_construction) -"auh" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aui" = (/obj/structure/reagent_dispensers/watertank,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"auj" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"auk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aul" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aum" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aun" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/closed/wall,/area/maintenance/fpmaint2) -"auo" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aup" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/fpmaint) -"auq" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aur" = (/obj/structure/chair/stool,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aus" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/closet/secure_closet/chemical,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aut" = (/obj/structure/closet/secure_closet/chemical,/turf/open/floor/plating,/area/maintenance/fpmaint) -"auu" = (/obj/structure/closet/secure_closet/medical1,/turf/open/floor/plating,/area/maintenance/fpmaint) -"auv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/vacantoffice2) -"auw" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/security/vacantoffice2) -"aux" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint) -"auy" = (/obj/machinery/door/airlock/maintenance{name = "Law Office Maintenance"; req_access_txt = "38"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/lawoffice) -"auz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/wood,/area/lawoffice) -"auA" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start{name = "Lawyer"},/turf/open/floor/wood,/area/lawoffice) -"auB" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) -"auC" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/crew_quarters/sleep) -"auD" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/sleep) -"auE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/sleep) -"auF" = (/obj/machinery/door/airlock{id_tag = "Dorm4"; name = "Dorm 4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"auG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) -"auH" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) -"auI" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/crew_quarters/sleep) -"auJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/sleep) -"auK" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/button/door{id = "Dorm5"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/sleep) -"auL" = (/turf/open/floor/wood,/area/crew_quarters/sleep) -"auM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/crew_quarters/sleep) -"auN" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/button/door{id = "Dorm6"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/sleep) -"auO" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/fitness) -"auP" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"auQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"auR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"auS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/crew_quarters/fitness) -"auT" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/crew_quarters/fitness) -"auU" = (/obj/structure/table,/obj/item/weapon/shard,/obj/item/weapon/shard{icon_state = "medium"},/obj/item/weapon/shard{icon_state = "small"},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"auV" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"auW" = (/turf/open/floor/plating{icon_state = "panelscorched"},/area/maintenance/fsmaint2) -"auX" = (/obj/machinery/button/door{id = "maint3"; name = "Blast Door Control C"; pixel_x = 0; pixel_y = 24; req_access_txt = "0"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"auY" = (/obj/structure/table,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"auZ" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ava" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) -"avb" = (/obj/item/stack/rods{amount = 50},/obj/structure/rack,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil{amount = 5},/obj/item/stack/sheet/mineral/plasma{amount = 10; layer = 2.9},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) -"avc" = (/obj/machinery/power/port_gen/pacman,/turf/open/floor/plating,/area/maintenance/electrical) -"avd" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/electrical) -"ave" = (/turf/open/floor/mech_bay_recharge_floor,/area/maintenance/electrical) -"avf" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/bluegrid,/area/maintenance/electrical) -"avg" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/mining_construction) -"avh" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/mining_construction) -"avi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"avj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fpmaint2) -"avk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) -"avl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"avm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/fpmaint2) -"avn" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/space/nearstation) -"avo" = (/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/space/nearstation) -"avp" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"avq" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"avr" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"avs" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"avt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fpmaint) -"avu" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/light,/turf/open/floor/plating,/area/security/vacantoffice2) -"avv" = (/obj/machinery/camera{c_tag = "Vacant Office B"; dir = 1},/obj/structure/table/wood,/turf/open/floor/plasteel,/area/security/vacantoffice2) -"avw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/security/vacantoffice2) -"avx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/lawoffice) -"avy" = (/obj/structure/table/wood,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/weapon/cartridge/lawyer,/turf/open/floor/wood,/area/lawoffice) -"avz" = (/obj/structure/table/wood,/obj/machinery/camera{c_tag = "Law Office"; dir = 1; network = list("SS13")},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; dir = 1; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = -27},/turf/open/floor/wood,/area/lawoffice) -"avA" = (/obj/machinery/photocopier,/obj/machinery/button/door{id = "lawyer_blast"; name = "Privacy Shutters"; pixel_x = 25; pixel_y = 8},/turf/open/floor/wood,/area/lawoffice) -"avB" = (/obj/machinery/power/apc{dir = 8; name = "Fore Primary Hallway APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/camera{c_tag = "Fore Primary Hallway"; dir = 4; network = list("SS13")},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) -"avC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) -"avD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) -"avE" = (/obj/machinery/door/airlock{id_tag = "Dorm5"; name = "Cabin 1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/sleep) -"avF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/sleep) -"avG" = (/obj/machinery/door/airlock{id_tag = "Dorm6"; name = "Cabin 2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/sleep) -"avH" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/fitness) -"avI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"avJ" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Fitness Ring"},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) -"avK" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) -"avL" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) -"avM" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"avN" = (/turf/open/floor/plasteel/red/side{dir = 4},/area/crew_quarters/fitness) -"avO" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"avP" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"avQ" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"avR" = (/obj/machinery/camera{c_tag = "Holodeck"},/obj/machinery/airalarm{pixel_y = 24},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"avS" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"avT" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"avU" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"avV" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"avW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"avX" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"avY" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"avZ" = (/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) -"awa" = (/turf/open/floor/plating,/area/maintenance/electrical) -"awb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) -"awc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) -"awd" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) -"awe" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"awf" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/shuttle/auxillary_base) -"awg" = (/obj/machinery/portable_atmospherics/canister/air,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/shuttle/auxillary_base) -"awh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/mining_construction) -"awi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side,/area/mining_construction) -"awj" = (/obj/structure/table,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/pipe_dispenser,/obj/machinery/button/door{id = "aux_base_shutters"; name = "Public Shutters Control"; pixel_x = 24; pixel_y = 0; req_access_txt = "0"; req_one_access_txt = "32;47;48"},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/mining_construction) -"awk" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Auxillary Base Construction APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/mining_construction) -"awl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"awm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"awn" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) -"awo" = (/obj/structure/mirror{icon_state = "mirror_broke"; pixel_y = 28; broken = 1},/obj/machinery/iv_drip,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"awp" = (/obj/structure/frame/computer,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"awq" = (/obj/structure/mirror{icon_state = "mirror_broke"; pixel_y = 28; broken = 1},/obj/item/weapon/shard{icon_state = "medium"},/obj/item/weapon/circuitboard/computer/operating,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"awr" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/structure/chair,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aws" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"awt" = (/obj/item/weapon/airlock_painter,/obj/structure/lattice,/obj/structure/closet,/turf/open/space,/area/space/nearstation) -"awu" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"awv" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fpmaint) -"aww" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint) -"awx" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fpmaint) -"awy" = (/obj/machinery/door/airlock/maintenance{name = "Chemical Storage"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fpmaint) -"awz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/vacantoffice2) -"awA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/vacantoffice2) -"awB" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/power/apc{dir = 8; name = "Vacant Office B APC"; pixel_x = -24; pixel_y = 0},/turf/open/floor/plating,/area/security/vacantoffice2) -"awC" = (/obj/machinery/power/apc{dir = 1; name = "Law Office APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/lawoffice) -"awD" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) -"awE" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) -"awF" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm3"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) -"awG" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) -"awH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/crew_quarters/sleep) -"awI" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) -"awJ" = (/obj/machinery/requests_console{department = "Crew Quarters"; pixel_y = 30},/obj/machinery/camera{c_tag = "Dormitory North"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) -"awK" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) -"awL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) -"awM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) -"awN" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) -"awO" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) -"awP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/sleep) -"awQ" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"awR" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/fitness) -"awS" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) -"awT" = (/turf/open/floor/plasteel/vault{dir = 5},/area/crew_quarters/fitness) -"awU" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) -"awV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"awW" = (/obj/machinery/computer/holodeck,/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"awX" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"awY" = (/obj/machinery/door/poddoor/preopen{id = "maint3"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"awZ" = (/obj/machinery/door/poddoor/preopen{id = "maint3"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"axa" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall,/area/maintenance/electrical) -"axb" = (/obj/machinery/power/apc{dir = 1; name = "Electrical Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/electrical) -"axc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/electrical) -"axd" = (/obj/structure/table,/obj/item/clothing/gloves/color/fyellow,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/device/multitool,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) -"axe" = (/turf/closed/wall/r_wall,/area/hallway/secondary/entry) -"axf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/poddoor/shutters{id = "aux_base_shutters"; name = "Auxillary Base Shutters"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/mining_construction) -"axg" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 1; name = "Auxillary Base Construction"; req_access_txt = "0"; req_one_access_txt = "32;47;48"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/mining_construction) -"axh" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"axi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/fpmaint2) -"axj" = (/obj/item/weapon/wrench,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"axk" = (/obj/structure/table/optable{name = "Robotics Operating Table"},/obj/item/weapon/surgical_drapes,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"axl" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/space/nearstation) -"axm" = (/obj/structure/table,/obj/machinery/cell_charger,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"axn" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"axo" = (/obj/machinery/light/small{dir = 4},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"axp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fpmaint2) -"axq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) -"axr" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) -"axs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint) -"axt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"axu" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/closed/wall,/area/maintenance/fpmaint) -"axv" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"axw" = (/obj/machinery/power/apc{dir = 1; name = "EVA Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"axx" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint) -"axy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"axz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"axA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"axB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"axC" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"axD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"axE" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"axF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/fore) -"axG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/fore) -"axH" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) -"axI" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) -"axJ" = (/obj/machinery/door/airlock{id_tag = "Dorm3"; name = "Dorm 3"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axK" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axM" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axN" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/weapon/storage/pill_bottle/dice,/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axO" = (/obj/structure/table/wood,/obj/item/weapon/storage/firstaid/regular,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axP" = (/obj/structure/table/wood,/obj/item/weapon/coin/silver,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axQ" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"axT" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Fitness"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"axU" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"axV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"axW" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/vault{dir = 5},/area/crew_quarters/fitness) -"axX" = (/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/green/side{dir = 4},/area/crew_quarters/fitness) -"axY" = (/obj/structure/table,/obj/item/weapon/paper{desc = ""; info = "Brusies sustained in the holodeck can be healed simply by sleeping."; name = "Holodeck Disclaimer"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"axZ" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aya" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ayb" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ayc" = (/obj/structure/girder,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ayd" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aye" = (/obj/machinery/button/door{id = "maint2"; name = "Blast Door Control B"; pixel_x = -28; pixel_y = 4; req_access_txt = "0"},/obj/machinery/button/door{id = "maint1"; name = "Blast Door Control A"; pixel_x = -28; pixel_y = -6; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ayf" = (/obj/structure/janitorialcart,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ayg" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ayh" = (/obj/structure/table/glass,/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ayi" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ayj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"ayk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/engineering{name = "Electrical Maintenance"; req_access_txt = "11"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) -"ayl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) -"aym" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) -"ayn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) -"ayo" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plating,/area/maintenance/electrical) -"ayp" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/electrical) -"ayq" = (/obj/structure/table,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) -"ayr" = (/turf/closed/wall/mineral/titanium,/area/shuttle/pod_2) -"ays" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4; icon_state = "propulsion"; tag = "icon-propulsion (WEST)"},/turf/closed/wall/mineral/titanium,/area/shuttle/pod_2) -"ayt" = (/turf/closed/wall,/area/hallway/secondary/entry) -"ayu" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/hallway/secondary/entry) -"ayv" = (/obj/structure/sign/pods,/turf/closed/wall,/area/hallway/secondary/entry) -"ayw" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) -"ayx" = (/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) -"ayy" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) -"ayz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/hallway/secondary/entry) -"ayA" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/hallway/secondary/entry) -"ayB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/hallway/secondary/entry) -"ayC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) -"ayD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/arrival{dir = 5},/area/hallway/secondary/entry) -"ayE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ayF" = (/obj/machinery/sleeper{dir = 4; icon_state = "sleeper-open"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ayG" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ayH" = (/obj/structure/table/glass,/obj/item/weapon/storage/bag/trash,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ayI" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/closed/wall,/area/maintenance/fpmaint2) -"ayJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ayK" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ayL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ayM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ayN" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"ayO" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayU" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayX" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint) -"ayZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) -"aza" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) -"azb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/ai_monitored/storage/eva) -"azc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) -"azd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/fore) -"aze" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) -"azf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fsmaint) -"azg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) -"azh" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"azi" = (/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"azj" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"azk" = (/obj/structure/table/wood,/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"azl" = (/obj/structure/table/wood,/obj/item/device/paicard,/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"azm" = (/obj/structure/table/wood,/obj/item/toy/cards/deck{pixel_x = 2},/obj/item/clothing/mask/balaclava{pixel_x = -8; pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"azn" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"azo" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"azp" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"azq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Fitness"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"azr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"azs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"azt" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) -"azu" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) -"azv" = (/obj/machinery/door/window/eastright{base_state = "left"; icon_state = "left"; name = "Fitness Ring"},/obj/structure/window/reinforced,/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) -"azw" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/crew_quarters/fitness) -"azx" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"azy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"azz" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"azA" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"azB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"azC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"azD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"azE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"azF" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/electrical) -"azG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/electrical) -"azH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) -"azI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plating,/area/maintenance/electrical) -"azJ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plating,/area/maintenance/electrical) -"azK" = (/obj/docking_port/stationary/random{dir = 8; id = "pod_asteroid2"; name = "asteroid"},/turf/open/space,/area/space) -"azL" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_2) -"azM" = (/obj/machinery/computer/shuttle/pod{pixel_x = 0; pixel_y = -32; possible_destinations = "pod_asteroid2"; shuttleId = "pod2"},/obj/structure/chair{dir = 8},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_2) -"azN" = (/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -28},/obj/item/device/radio/intercom{pixel_x = 0; pixel_y = 25},/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_2) -"azO" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 8; id = "pod2"; name = "escape pod 2"; port_angle = 180},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_2) -"azP" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Escape Pod One"},/turf/open/floor/plating,/area/hallway/secondary/entry) -"azQ" = (/turf/open/floor/plating,/area/hallway/secondary/entry) -"azR" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"azS" = (/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"azT" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"azU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"azV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"azW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"azX" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"azY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"azZ" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) -"aAa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAb" = (/obj/structure/closet/wardrobe/white,/obj/item/clothing/shoes/jackboots,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAc" = (/obj/structure/table/glass,/obj/item/weapon/hemostat,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAd" = (/obj/structure/table/glass,/obj/item/weapon/restraints/handcuffs/cable/zipties,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAe" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAh" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAi" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aAk" = (/turf/closed/wall/r_wall,/area/maintenance/fpmaint2) -"aAl" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aAm" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aAn" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aAo" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aAp" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aAq" = (/turf/closed/wall/r_wall,/area/maintenance/fpmaint) -"aAr" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aAs" = (/turf/closed/wall/r_wall,/area/gateway) -"aAt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aAu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aAv" = (/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) -"aAw" = (/obj/structure/closet/crate/rcd,/obj/machinery/camera/motion{c_tag = "EVA Motion Sensor"; name = "motion-sensitive security camera"},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aAx" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/machinery/light{dir = 1},/obj/item/weapon/hand_labeler,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aAy" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/item/clothing/head/welding,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aAz" = (/obj/machinery/power/apc{dir = 1; name = "EVA Storage APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aAA" = (/obj/machinery/airalarm{pixel_y = 23},/obj/item/device/radio/off,/obj/item/device/assembly/timer,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aAB" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aAC" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/weapon/screwdriver{pixel_y = 16},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aAD" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/sign/securearea{pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) -"aAE" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/device/multitool,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aAF" = (/obj/machinery/light{dir = 1},/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aAG" = (/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aAH" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/head/welding,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aAI" = (/turf/closed/wall,/area/ai_monitored/storage/eva) -"aAJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) -"aAK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) -"aAL" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm2"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) -"aAM" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) -"aAN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"aAO" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel/neutral/corner{dir = 2},/area/crew_quarters/sleep) -"aAP" = (/obj/machinery/light,/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) -"aAQ" = (/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) -"aAR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/sleep) -"aAS" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/neutral/side{dir = 10},/area/crew_quarters/fitness) -"aAT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/corner{dir = 8},/area/crew_quarters/fitness) -"aAU" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"aAV" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"aAW" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"aAX" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"aAY" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) -"aAZ" = (/obj/machinery/camera{c_tag = "Fitness Room South"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/green/side{dir = 4},/area/crew_quarters/fitness) -"aBa" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/crew_quarters/fitness) -"aBb" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"aBc" = (/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aBd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aBe" = (/obj/machinery/power/terminal,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/electrical) -"aBf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/electrical) -"aBg" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/maintenance/electrical) -"aBh" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/electrical) -"aBi" = (/obj/machinery/light_switch{pixel_y = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/electrical) -"aBj" = (/obj/machinery/power/terminal,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/maintenance/electrical) -"aBk" = (/obj/machinery/camera{c_tag = "Arrivals Escape Pod 2"; dir = 8},/obj/machinery/light/small,/turf/open/floor/plating,/area/hallway/secondary/entry) -"aBl" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) -"aBm" = (/obj/machinery/door/airlock/external{name = "Port Docking Bay 1"},/turf/open/floor/plating,/area/hallway/secondary/entry) -"aBn" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aBo" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aBp" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aBq" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aBr" = (/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aBs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) -"aBt" = (/turf/closed/wall,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aBu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aBv" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aBw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall,/area/maintenance/fpmaint2) -"aBx" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/space,/area/space) -"aBy" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/space,/area/space) -"aBz" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/black,/area/gateway) -"aBA" = (/obj/machinery/gateway{dir = 9},/turf/open/floor/plasteel/vault{dir = 1},/area/gateway) -"aBB" = (/obj/machinery/gateway{dir = 1},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) -"aBC" = (/obj/machinery/gateway{dir = 5},/turf/open/floor/plasteel/vault{dir = 4},/area/gateway) -"aBD" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/gateway) -"aBE" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint) -"aBF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{name = "EVA Maintenance"; req_access_txt = "18"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aBG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aBH" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aBI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aBJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aBK" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "EVA Storage"; req_access_txt = "18"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aBL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aBM" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aBN" = (/obj/structure/table,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aBO" = (/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) -"aBP" = (/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) -"aBQ" = (/obj/machinery/door/airlock{id_tag = "Dorm2"; name = "Dorm 2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"aBR" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel/neutral/corner{dir = 2},/area/crew_quarters/sleep) -"aBS" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) -"aBT" = (/obj/machinery/light_switch{pixel_y = -25},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) -"aBU" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) -"aBV" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) -"aBW" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/sleep) -"aBX" = (/turf/closed/wall,/area/crew_quarters/toilet) -"aBY" = (/obj/machinery/door/airlock{name = "Unisex Showers"; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aBZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/neutral/side{dir = 10},/area/crew_quarters/fitness) -"aCa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) -"aCb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) -"aCc" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) -"aCd" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) -"aCe" = (/obj/structure/reagent_dispensers/water_cooler,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/fitness) -"aCf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aCg" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 8},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aCh" = (/obj/structure/closet,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aCi" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aCj" = (/obj/machinery/door/poddoor/preopen{id = "maint2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aCk" = (/obj/machinery/door/poddoor/preopen{id = "maint2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aCl" = (/obj/structure/closet,/obj/effect/landmark{name = "blobstart"},/obj/effect/spawner/lootdrop/maintenance,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aCm" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aCn" = (/obj/machinery/power/smes{charge = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/electrical) -"aCo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/closed/wall,/area/maintenance/electrical) -"aCp" = (/obj/machinery/computer/monitor{name = "backup power monitoring console"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/electrical) -"aCq" = (/obj/machinery/power/smes{charge = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/maintenance/electrical) -"aCr" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/closed/wall/r_wall,/area/hallway/secondary/entry) -"aCs" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) -"aCt" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aCu" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aCv" = (/obj/machinery/camera{c_tag = "Arrivals Bay 1 North"; dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aCw" = (/obj/machinery/vending/coffee,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aCx" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aCy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) -"aCz" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/power/apc{dir = 2; name = "Security Checkpoint APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/security/checkpoint2) -"aCA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aCB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aCC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aCD" = (/obj/machinery/power/apc{dir = 4; name = "Garden APC"; pixel_x = 27; pixel_y = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aCE" = (/obj/machinery/hydroponics/soil,/turf/open/floor/grass,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aCF" = (/obj/machinery/light{dir = 1},/obj/structure/sink{pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aCG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aCH" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aCI" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aCJ" = (/obj/structure/sink{pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aCK" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aCL" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aCM" = (/obj/machinery/power/apc{dir = 2; name = "Primary Tool Storage APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/primary) -"aCN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aCO" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aCP" = (/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) -"aCQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) -"aCR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) -"aCS" = (/turf/open/floor/plasteel/black,/area/gateway) -"aCT" = (/obj/machinery/gateway{dir = 8},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) -"aCU" = (/obj/machinery/gateway/centerstation,/turf/open/floor/plasteel/black,/area/gateway) -"aCV" = (/obj/machinery/gateway{dir = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) -"aCW" = (/obj/machinery/power/apc{dir = 8; name = "Gateway APC"; pixel_x = -24; pixel_y = -1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/gateway) -"aCX" = (/obj/machinery/camera{c_tag = "EVA Maintenance"; dir = 8; network = list("SS13")},/obj/machinery/light/small{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aCY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) -"aCZ" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/item/weapon/tank/jetpack/carbondioxide,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDa" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/jetpack/carbondioxide,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDc" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDd" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDe" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDf" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDg" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) -"aDh" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) -"aDj" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) -"aDk" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) -"aDl" = (/obj/machinery/shower{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aDm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aDn" = (/obj/machinery/shower{dir = 8},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aDo" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aDp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/fsmaint2) -"aDq" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aDr" = (/obj/item/clothing/under/rank/mailman,/obj/item/clothing/head/mailman,/obj/structure/closet,/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aDs" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aDt" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aDu" = (/turf/closed/wall,/area/security/checkpoint2) -"aDv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/checkpoint2) -"aDw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/checkpoint2) -"aDx" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "1"},/turf/open/floor/plating,/area/security/checkpoint2) -"aDy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aDz" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aDA" = (/obj/item/seeds/apple,/obj/item/seeds/banana,/obj/item/seeds/cocoapod,/obj/item/seeds/grape,/obj/item/seeds/orange,/obj/item/seeds/sugarcane,/obj/item/seeds/wheat,/obj/item/seeds/watermelon,/obj/structure/table/glass,/obj/item/seeds/tower,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aDB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aDC" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aDD" = (/obj/machinery/door/airlock/maintenance{name = "Garden Maintenance"; req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) -"aDE" = (/turf/closed/wall,/area/storage/primary) -"aDF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/storage/primary) -"aDG" = (/turf/closed/wall/r_wall,/area/storage/primary) -"aDH" = (/obj/machinery/computer/bank_machine,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/nuke_storage) -"aDI" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) -"aDJ" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/light{dir = 1},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) -"aDK" = (/obj/machinery/power/apc{dir = 1; name = "Vault APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) -"aDL" = (/obj/structure/filingcabinet,/obj/item/weapon/folder/documents,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/nuke_storage) -"aDM" = (/obj/machinery/gateway{dir = 10},/turf/open/floor/plasteel/vault{dir = 4},/area/gateway) -"aDN" = (/obj/machinery/gateway,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) -"aDO" = (/obj/machinery/gateway{dir = 6},/turf/open/floor/plasteel/vault{dir = 1},/area/gateway) -"aDP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/meter,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aDQ" = (/obj/machinery/requests_console{department = "EVA"; pixel_x = -32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDR" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDS" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/item/weapon/pen{desc = "Writes upside down!"; name = "astronaut pen"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDV" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDW" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) -"aDX" = (/obj/machinery/camera{c_tag = "EVA East"; dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aDY" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm1"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) -"aDZ" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aEa" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aEb" = (/obj/structure/urinal{pixel_y = 32},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aEc" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bikehorn/rubberducky,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aEd" = (/obj/structure/table/wood,/obj/machinery/requests_console{department = "Theatre"; departmentType = 0; name = "theatre RC"; pixel_x = -32; pixel_y = 0},/obj/item/weapon/reagent_containers/food/snacks/baguette,/obj/item/toy/dummy,/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) -"aEe" = (/obj/machinery/camera{c_tag = "Theatre Storage"},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) -"aEf" = (/obj/machinery/vending/autodrobe,/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) -"aEg" = (/turf/closed/wall,/area/crew_quarters/theatre) -"aEh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEi" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"aEj" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"aEk" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) -"aEl" = (/obj/machinery/atmospherics/components/binary/valve,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEm" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEn" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEo" = (/obj/structure/grille/broken,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/window{icon_state = "window"; dir = 4},/obj/structure/window,/turf/open/floor/plating{icon_state = "panelscorched"},/area/maintenance/fsmaint2) -"aEp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fsmaint2) -"aEq" = (/obj/machinery/door/poddoor/preopen{id = "maint1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEr" = (/obj/machinery/door/poddoor/preopen{id = "maint1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fsmaint2) -"aEt" = (/obj/structure/girder,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEu" = (/obj/machinery/space_heater,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEv" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEy" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEz" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEA" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEB" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aEC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) -"aED" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/black,/area/chapel/main) -"aEE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/chapel/main) -"aEF" = (/turf/closed/wall,/area/chapel/main) -"aEG" = (/turf/closed/wall/mineral/titanium,/area/shuttle/arrival) -"aEH" = (/obj/machinery/door/airlock/titanium{name = "Arrivals Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/arrival) -"aEI" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/arrival) -"aEJ" = (/obj/machinery/camera{c_tag = "Arrivals North"; dir = 8; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) -"aEK" = (/obj/structure/closet/secure_closet/security,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint2) -"aEL" = (/obj/structure/closet/wardrobe/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) -"aEM" = (/obj/machinery/computer/security,/obj/structure/reagent_dispensers/peppertank{pixel_x = 0; pixel_y = 30},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) -"aEN" = (/obj/machinery/computer/card,/obj/machinery/light{dir = 1},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) -"aEO" = (/obj/machinery/computer/secure_data,/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) -"aEP" = (/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint2) -"aEQ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aER" = (/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aES" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aET" = (/obj/machinery/vending/assist,/turf/open/floor/plasteel,/area/storage/primary) -"aEU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/storage/primary) -"aEV" = (/obj/structure/table,/obj/item/weapon/wirecutters,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/storage/primary) -"aEW" = (/obj/structure/table,/obj/item/device/t_scanner,/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/storage/primary) -"aEX" = (/obj/structure/table,/obj/item/device/assembly/igniter{pixel_x = -8; pixel_y = -4},/obj/item/device/assembly/igniter,/obj/item/weapon/screwdriver{pixel_y = 16},/obj/machinery/camera{c_tag = "Primary Tool Storage"},/obj/machinery/requests_console{department = "Tool Storage"; departmentType = 0; pixel_y = 30},/turf/open/floor/plasteel,/area/storage/primary) -"aEY" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/item/device/multitool,/obj/item/device/multitool{pixel_x = 4},/turf/open/floor/plasteel,/area/storage/primary) -"aEZ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/light_switch{pixel_y = 28},/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel,/area/storage/primary) -"aFa" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel,/area/storage/primary) -"aFb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/primary) -"aFc" = (/obj/machinery/vending/tool,/turf/open/floor/plasteel,/area/storage/primary) -"aFd" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/vault{dir = 1},/area/ai_monitored/nuke_storage) -"aFe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) -"aFf" = (/obj/machinery/nuclearbomb/selfdestruct,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/nuke_storage) -"aFg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) -"aFh" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/vault{dir = 4},/area/ai_monitored/nuke_storage) -"aFi" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/black,/area/gateway) -"aFj" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/black,/area/gateway) -"aFk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/window{name = "Gateway Chamber"; req_access_txt = "62"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/black,/area/gateway) -"aFl" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/gateway) -"aFm" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/gateway) -"aFn" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aFo" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aFp" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aFq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aFr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aFs" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/machinery/light,/obj/machinery/camera{c_tag = "EVA Storage"; dir = 1},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aFt" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aFu" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) -"aFv" = (/obj/machinery/door/airlock/command{name = "Command Tool Storage"; req_access = null; req_access_txt = "19"},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aFw" = (/obj/machinery/door/airlock/command{cyclelinkeddir = 2; name = "Command Tool Storage"; req_access = null; req_access_txt = "19"},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aFx" = (/obj/machinery/door/airlock{id_tag = "Dorm1"; name = "Dorm 1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) -"aFy" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) -"aFz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/toilet) -"aFA" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aFB" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aFC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aFD" = (/obj/machinery/door/airlock{name = "Unisex Showers"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aFE" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aFF" = (/obj/machinery/light/small,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aFG" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aFH" = (/obj/structure/table/wood,/obj/structure/mirror{pixel_x = -28},/obj/item/weapon/lipstick/random{pixel_x = 2; pixel_y = 2},/obj/item/weapon/lipstick/random{pixel_x = -2; pixel_y = -2},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) -"aFI" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Mime"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) -"aFJ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) -"aFK" = (/obj/machinery/door/airlock/maintenance{name = "Theatre Maintenance"; req_access_txt = "46"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/theatre) -"aFL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j1s"; sortType = 18},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFM" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFP" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFQ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aFY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/power/apc{dir = 2; name = "Chapel APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/chapel/main) -"aFZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Chapel Maintenance"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aGa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) -"aGb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/chapel/main) -"aGc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/chapel/main) -"aGd" = (/obj/machinery/door/window{dir = 8; name = "Mass Driver"; req_access_txt = "22"},/obj/machinery/mass_driver{dir = 4; id = "chapelgun"; name = "Holy Driver"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/chapel/main) -"aGe" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/chapel/main) -"aGf" = (/obj/machinery/door/poddoor{id = "chapelgun"; name = "Chapel Launcher Door"},/turf/open/floor/plating,/area/chapel/main) -"aGg" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aGh" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aGi" = (/obj/machinery/computer/arcade,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aGj" = (/obj/structure/closet/wardrobe/green,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aGk" = (/obj/structure/closet/wardrobe/black,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aGl" = (/obj/structure/closet/wardrobe/mixed,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aGm" = (/obj/structure/closet/wardrobe/grey,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aGn" = (/obj/machinery/requests_console{department = "Arrival shuttle"; pixel_y = 30},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aGo" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/shuttle/arrival) -"aGp" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "burst_r"},/turf/open/floor/plasteel/black,/area/shuttle/arrival) -"aGq" = (/obj/machinery/power/apc{dir = 4; name = "Entry Hall APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable,/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) -"aGr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint2) -"aGs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/security/checkpoint2) -"aGt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/security/checkpoint2) -"aGu" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/security/checkpoint2) -"aGv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint2) -"aGw" = (/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint2) -"aGx" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/food/snacks/grown/wheat,/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon,/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon,/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon,/obj/item/weapon/reagent_containers/food/snacks/grown/citrus/orange,/obj/item/weapon/reagent_containers/food/snacks/grown/grapes,/obj/item/weapon/reagent_containers/food/snacks/grown/cocoapod,/turf/open/floor/plasteel/green/side{dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) -"aGy" = (/obj/machinery/door/airlock{name = "Garden"; req_access_txt = "0"},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aGz" = (/turf/open/floor/plasteel,/area/storage/primary) -"aGA" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/storage/primary) -"aGB" = (/obj/structure/closet/crate{name = "Gold Crate"},/obj/item/stack/sheet/mineral/gold{pixel_x = -1; pixel_y = 5},/obj/item/stack/sheet/mineral/gold{pixel_y = 2},/obj/item/stack/sheet/mineral/gold{pixel_x = 1; pixel_y = -2},/obj/item/weapon/storage/belt/champion,/turf/open/floor/plasteel/vault{dir = 1},/area/ai_monitored/nuke_storage) -"aGC" = (/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) -"aGD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) -"aGE" = (/obj/item/weapon/coin/silver{pixel_x = 7; pixel_y = 12},/obj/item/weapon/coin/silver{pixel_x = 12; pixel_y = 7},/obj/item/weapon/coin/silver{pixel_x = 4; pixel_y = 8},/obj/item/weapon/coin/silver{pixel_x = -6; pixel_y = 5},/obj/item/weapon/coin/silver{pixel_x = 5; pixel_y = -8},/obj/structure/closet/crate{name = "Silver Crate"},/turf/open/floor/plasteel/vault{dir = 4},/area/ai_monitored/nuke_storage) -"aGF" = (/obj/machinery/camera{c_tag = "Gateway"; dir = 4; network = list("SS13")},/obj/structure/table,/obj/structure/sign/biohazard{pixel_x = -32},/obj/item/weapon/storage/firstaid/regular,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) -"aGG" = (/obj/structure/table,/obj/item/weapon/paper/pamphlet,/turf/open/floor/plasteel,/area/gateway) -"aGH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/gateway) -"aGI" = (/obj/structure/table,/obj/item/device/radio/off{pixel_y = 6},/obj/item/device/radio/off{pixel_x = 6; pixel_y = 4},/obj/item/device/radio/off{pixel_x = -6; pixel_y = 4},/obj/item/device/radio/off,/turf/open/floor/plasteel,/area/gateway) -"aGJ" = (/obj/structure/table,/obj/machinery/recharger,/obj/structure/sign/biohazard{pixel_x = 32},/turf/open/floor/plasteel,/area/gateway) -"aGK" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aGL" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/ai_monitored/storage/eva) -"aGM" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "EVA Storage"; req_access_txt = "18"},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aGN" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/storage/eva) -"aGO" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) -"aGP" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aGQ" = (/obj/machinery/camera{c_tag = "Dormitory South"; c_tag_order = 999; dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) -"aGR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) -"aGS" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aGT" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aGU" = (/obj/machinery/power/apc{dir = 4; name = "Dormitory Bathrooms APC"; pixel_x = 26; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aGV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/toilet) -"aGW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall,/area/crew_quarters/toilet) -"aGX" = (/obj/machinery/light/small{dir = 8},/obj/structure/dresser,/turf/open/floor/plasteel/redblue/redside,/area/crew_quarters/theatre) -"aGY" = (/turf/open/floor/plasteel/redblue/redside,/area/crew_quarters/theatre) -"aGZ" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plasteel/redblue/redside,/area/crew_quarters/theatre) -"aHa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHc" = (/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHd" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHe" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/space,/area/space/nearstation) -"aHf" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHj" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHk" = (/turf/closed/wall,/area/library) -"aHl" = (/turf/closed/wall,/area/chapel/office) -"aHm" = (/obj/machinery/power/apc{dir = 2; name = "Chapel Office APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/chapel/office) -"aHn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aHo" = (/turf/open/floor/plasteel/black,/area/chapel/main) -"aHp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/chapel/main) -"aHq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/computer/pod/old{density = 0; icon = 'icons/obj/airlock_machines.dmi'; icon_state = "airlock_control_standby"; id = "chapelgun"; name = "Mass Driver Controller"; pixel_x = 24; pixel_y = 0},/turf/open/floor/plasteel/black,/area/chapel/main) -"aHr" = (/obj/structure/chair,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aHs" = (/obj/structure/chair{dir = 8},/obj/effect/landmark{name = "JoinLate"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aHt" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "propulsion"},/turf/open/floor/plasteel/black,/area/shuttle/arrival) -"aHu" = (/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) -"aHv" = (/obj/machinery/camera{c_tag = "Security Checkpoint"; dir = 1},/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light_switch{pixel_x = 6; pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint2) -"aHw" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) -"aHx" = (/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) -"aHy" = (/obj/structure/chair/office/dark,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) -"aHz" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table,/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) -"aHA" = (/obj/item/device/radio/off,/obj/item/weapon/crowbar,/obj/item/device/assembly/flash/handheld,/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint2) -"aHB" = (/obj/structure/table/glass,/obj/item/weapon/cultivator,/obj/item/weapon/hatchet,/obj/item/weapon/crowbar,/obj/item/device/plant_analyzer,/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel/green/side{dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) -"aHC" = (/obj/machinery/camera{c_tag = "Garden"; dir = 8; network = list("SS13")},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aHD" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 2; pixel_y = -2},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/weapon/screwdriver{pixel_y = 16},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/storage/primary) -"aHE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/storage/primary) -"aHF" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/storage/primary) -"aHG" = (/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/storage/primary) -"aHH" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/storage/primary) -"aHI" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/storage/primary) -"aHJ" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/storage/primary) -"aHK" = (/obj/machinery/camera/motion{c_tag = "Vault"; dir = 1; network = list("MiniSat")},/turf/open/floor/plasteel/vault{dir = 1},/area/ai_monitored/nuke_storage) -"aHL" = (/obj/machinery/light,/turf/open/floor/plasteel/vault{dir = 6},/area/ai_monitored/nuke_storage) -"aHM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/vault,/area/ai_monitored/nuke_storage) -"aHN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/light,/turf/open/floor/plasteel/vault{dir = 10},/area/ai_monitored/nuke_storage) -"aHO" = (/obj/structure/safe,/obj/item/clothing/head/bearpelt,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/gun/ballistic/revolver/russian,/obj/item/ammo_box/a357,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/turf/open/floor/plasteel/vault{dir = 4},/area/ai_monitored/nuke_storage) -"aHP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aHQ" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) -"aHR" = (/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/gateway) -"aHS" = (/turf/open/floor/plasteel,/area/gateway) -"aHT" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/gateway) -"aHU" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aHV" = (/obj/structure/table,/obj/item/stack/sheet/rglass{amount = 50},/obj/item/stack/sheet/rglass{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aHW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aHX" = (/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aHY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aHZ" = (/obj/item/stack/sheet/plasteel{amount = 10},/obj/structure/table,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aIa" = (/obj/machinery/light{dir = 8},/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aIb" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/rglass{amount = 50},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aIc" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) -"aId" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) -"aIe" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aIf" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aIg" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aIh" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aIi" = (/obj/machinery/light/small{dir = 8},/obj/machinery/recharge_station,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aIj" = (/obj/structure/table/wood,/obj/structure/mirror{pixel_x = -28},/obj/item/device/flashlight/lamp/bananalamp{pixel_y = 3},/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) -"aIk" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Clown"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) -"aIl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/closet/secure_closet/freezer/cream_pie,/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) -"aIm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/theatre) -"aIn" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIp" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIt" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = 19},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = 20},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIx" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIz" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIB" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aID" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIE" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/space,/area/space/nearstation) -"aIG" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j2s"; sortType = 17},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aIH" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aII" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/library) -"aIJ" = (/obj/machinery/door/airlock/maintenance{name = "Library Maintenance"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/library) -"aIK" = (/obj/structure/table/wood,/obj/item/weapon/storage/pill_bottle/dice,/turf/open/floor/wood,/area/library) -"aIL" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/stack/packageWrap,/turf/open/floor/wood,/area/library) -"aIM" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/wood,/area/library) -"aIN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/chapel/office) -"aIO" = (/obj/machinery/door/airlock/maintenance{name = "Crematorium Maintenance"; req_access_txt = "27"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/chapel/office) -"aIP" = (/obj/structure/closet/wardrobe/chaplain_black,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aIQ" = (/obj/machinery/light/small{dir = 1},/obj/machinery/requests_console{department = "Chapel"; departmentType = 2; pixel_y = 30},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aIR" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera{c_tag = "Chapel Office"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aIS" = (/obj/machinery/airalarm{pixel_y = 25},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aIT" = (/obj/structure/closet/coffin,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/office) -"aIU" = (/obj/structure/closet/coffin,/obj/machinery/door/window/eastleft{name = "Coffin Storage"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/office) -"aIV" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/chapel/main) -"aIW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) -"aIX" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) -"aIY" = (/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) -"aIZ" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/food/snacks/grown/poppy,/obj/item/weapon/reagent_containers/food/snacks/grown/harebell,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) -"aJa" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/chapel/main) -"aJb" = (/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"aJc" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/escape) -"aJd" = (/obj/effect/landmark{name = "Marauder Entry"},/turf/open/space,/area/space) -"aJe" = (/obj/machinery/door/airlock/titanium{name = "Arrivals Shuttle Airlock"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aJf" = (/obj/effect/landmark{name = "Observer-Start"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aJg" = (/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/white/corner{dir = 4},/area/hallway/secondary/entry) -"aJh" = (/obj/machinery/door/airlock/security{name = "Security Checkpoint"; req_access = null; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/checkpoint2) -"aJi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint2) -"aJj" = (/obj/machinery/door/firedoor,/obj/structure/table/reinforced,/obj/item/weapon/paper,/obj/machinery/door/window/westright{dir = 1; name = "Security Checkpoint"; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aJk" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/green/side{dir = 5},/area/hallway/secondary/construction{name = "\improper Garden"}) -"aJl" = (/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aJm" = (/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/weapon/reagent_containers/spray/pestspray{pixel_x = 3; pixel_y = 4},/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez,/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh{pixel_x = 2; pixel_y = 1},/obj/structure/table/glass,/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/green/side{dir = 9},/area/hallway/secondary/construction{name = "\improper Garden"}) -"aJn" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/open/floor/plasteel,/area/storage/primary) -"aJo" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/storage/primary) -"aJp" = (/obj/structure/table,/obj/item/weapon/weldingtool,/obj/item/weapon/crowbar,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/turf/open/floor/plasteel,/area/storage/primary) -"aJq" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) -"aJr" = (/obj/machinery/door/airlock/vault{icon_state = "door_locked"; locked = 1; req_access_txt = "53"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/vault{dir = 5},/area/ai_monitored/nuke_storage) -"aJs" = (/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/gateway) -"aJt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/gateway) -"aJu" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/gateway) -"aJv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/gateway) -"aJw" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/l3closet/scientist,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/gateway) -"aJx" = (/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aJy" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/weapon/crowbar,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aJz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aJA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aJB" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aJC" = (/obj/machinery/door/airlock/command{cyclelinkeddir = 1; name = "Command Tool Storage"; req_access = null; req_access_txt = "19"},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) -"aJD" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) -"aJE" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aJF" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/open/floor/plasteel/blue/side{dir = 4},/area/hallway/primary/central) -"aJG" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Dormitory"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) -"aJH" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Dormitory"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) -"aJI" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aJJ" = (/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aJK" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aJL" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aJM" = (/obj/machinery/door/airlock{name = "Unit B"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aJN" = (/obj/structure/table/wood,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/storage/crayons{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/food/snacks/pie/cream{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) -"aJO" = (/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) -"aJP" = (/obj/structure/closet/secure_closet/freezer/cream_pie,/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) -"aJQ" = (/obj/machinery/power/apc{dir = 8; name = "Theatre APC"; pixel_x = -25},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/crew_quarters/theatre) -"aJR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aJS" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aJT" = (/obj/machinery/power/apc{dir = 2; name = "Bar APC"; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/bar) -"aJU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/bar) -"aJV" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Bar Storage Maintenance"; req_access_txt = "25"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/bar) -"aJW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall,/area/crew_quarters/bar) -"aJX" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Bar"},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/crew_quarters/bar) -"aJY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/kitchen) -"aJZ" = (/obj/machinery/power/apc{dir = 2; name = "Kitchen APC"; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/kitchen) -"aKa" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aKb" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aKc" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aKd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aKe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = 21},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aKf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aKg" = (/obj/machinery/power/apc{dir = 2; name = "Hydroponics APC"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/hydroponics) -"aKh" = (/turf/closed/wall,/area/hydroponics) -"aKi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/hydroponics) -"aKj" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aKk" = (/obj/structure/filingcabinet,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/library) -"aKl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/wood,/area/library) -"aKm" = (/obj/structure/chair/office/dark,/obj/machinery/camera{c_tag = "Library North"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/library) -"aKn" = (/obj/structure/chair/office/dark,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/library) -"aKo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/library) -"aKp" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/wood,/area/library) -"aKq" = (/obj/structure/bodycontainer/crematorium,/obj/effect/landmark{name = "revenantspawn"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/chapel/office) -"aKr" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/chapel/office) -"aKs" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aKt" = (/obj/effect/landmark/start{name = "Chaplain"},/obj/structure/chair,/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aKu" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aKv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aKw" = (/obj/structure/closet/coffin,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/office) -"aKx" = (/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) -"aKy" = (/obj/structure/table/glass,/turf/open/floor/plasteel/chapel,/area/chapel/main) -"aKz" = (/turf/open/floor/mineral/titanium,/turf/closed/wall/mineral/titanium/interior,/area/shuttle/escape) -"aKA" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aKB" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aKC" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aKD" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aKE" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aKF" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aKG" = (/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aKH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aKI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aKJ" = (/obj/machinery/camera{c_tag = "Arrivals Lounge"; dir = 2},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aKK" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aKL" = (/obj/structure/sign/map/left{pixel_y = 32},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aKM" = (/obj/structure/sign/map/right{pixel_y = 32},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aKN" = (/obj/structure/table/glass,/obj/item/weapon/hatchet,/obj/item/weapon/cultivator,/obj/item/weapon/crowbar,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/device/plant_analyzer,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/green/side{dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) -"aKO" = (/obj/item/weapon/storage/bag/plants/portaseeder,/obj/structure/table/glass,/obj/item/device/plant_analyzer,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/light_switch{pixel_x = -6; pixel_y = -25},/turf/open/floor/plasteel/green/side{dir = 8},/area/hallway/secondary/construction{name = "\improper Garden"}) -"aKP" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/device/analyzer,/turf/open/floor/plasteel,/area/storage/primary) -"aKQ" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/storage/primary) -"aKR" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/gloves/color/fyellow,/turf/open/floor/plasteel,/area/storage/primary) -"aKS" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/storage/primary) -"aKT" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/storage/primary) -"aKU" = (/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/storage/primary) -"aKV" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "Tool Storage"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/storage/primary) -"aKW" = (/obj/structure/disposalpipe/trunk,/obj/machinery/disposal/bin,/turf/open/floor/plasteel,/area/storage/primary) -"aKX" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) -"aKY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/vault{dir = 5},/area/hallway/primary/port) -"aKZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) -"aLa" = (/obj/machinery/button/door{id = "stationawaygate"; name = "Gateway Access Shutter Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "31"},/turf/open/floor/plasteel,/area/gateway) -"aLb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/gateway) -"aLc" = (/obj/machinery/light{dir = 4},/obj/structure/closet/secure_closet/exile,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/gateway) -"aLd" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/extinguisher,/obj/item/weapon/extinguisher,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aLe" = (/obj/machinery/camera{c_tag = "EVA South"; dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aLf" = (/obj/structure/tank_dispenser/oxygen,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) -"aLg" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/central) -"aLh" = (/turf/open/floor/plasteel/blue/side{dir = 9},/area/hallway/primary/central) -"aLi" = (/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Central Hallway North"; dir = 2},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) -"aLj" = (/turf/open/floor/plasteel/blue/corner{dir = 1},/area/hallway/primary/central) -"aLk" = (/turf/open/floor/plasteel,/area/hallway/primary/central) -"aLl" = (/obj/structure/sign/directions/security{dir = 1; icon_state = "direction_sec"; pixel_x = 32; pixel_y = 40},/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_x = 32; pixel_y = 32},/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = 32; pixel_y = 24},/turf/open/floor/plasteel/blue/corner{dir = 4},/area/hallway/primary/central) -"aLm" = (/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) -"aLn" = (/turf/open/floor/plasteel/blue/side{dir = 5},/area/hallway/primary/central) -"aLo" = (/turf/closed/wall,/area/hallway/primary/central) -"aLp" = (/obj/machinery/vending/cola/random,/turf/open/floor/plasteel/black,/area/hallway/primary/central) -"aLq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/hallway/primary/central) -"aLr" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/hallway/primary/central) -"aLs" = (/obj/machinery/camera{c_tag = "Dormitory Toilets"; dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aLt" = (/obj/machinery/light/small,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) -"aLu" = (/obj/machinery/door/airlock{name = "Theatre Backstage"; req_access_txt = "46"},/turf/open/floor/plasteel,/area/crew_quarters/theatre) -"aLv" = (/obj/machinery/door/airlock/maintenance{name = "Bar Maintenance"; req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aLw" = (/turf/closed/wall,/area/crew_quarters/bar) -"aLx" = (/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/item/weapon/gun/ballistic/revolver/doublebarrel,/obj/structure/table/wood,/obj/item/stack/spacecash/c10,/obj/item/stack/spacecash/c100,/turf/open/floor/wood,/area/crew_quarters/bar) -"aLy" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/bar) -"aLz" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/bar) -"aLA" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Bar Delivery"; req_access_txt = "25"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/crew_quarters/bar) -"aLB" = (/turf/closed/wall,/area/crew_quarters/kitchen) -"aLC" = (/obj/machinery/door/airlock/maintenance{name = "Kitchen Maintenance"; req_access_txt = "28"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/kitchen) -"aLD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/kitchen) -"aLE" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Kitchen"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/crew_quarters/kitchen) -"aLF" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Hydroponics"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/hydroponics) -"aLG" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Hydroponics Maintenance"; req_access_txt = "35"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/hydroponics) -"aLH" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aLI" = (/obj/structure/table,/obj/item/weapon/book/manual/hydroponics_pod_people,/obj/item/weapon/paper/hydroponics,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aLJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/wood,/area/library) -"aLK" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/wood,/area/library) -"aLL" = (/obj/structure/table/wood,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/turf/open/floor/wood,/area/library) -"aLM" = (/obj/structure/table/wood,/obj/structure/disposalpipe/segment,/turf/open/floor/wood,/area/library) -"aLN" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/wood,/area/library) -"aLO" = (/obj/machinery/newscaster{pixel_x = 30},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/library) -"aLP" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/office) -"aLQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/button/crematorium{pixel_x = 25},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/office) -"aLR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/chapel/office) -"aLS" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp{pixel_y = 10},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aLT" = (/obj/structure/table/wood,/obj/item/weapon/pen,/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aLU" = (/obj/structure/table/wood,/obj/item/weapon/nullrod,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aLV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aLW" = (/obj/structure/closet/coffin,/obj/machinery/door/window/eastleft{dir = 8; name = "Coffin Storage"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/office) -"aLX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/xmastree,/turf/open/floor/plasteel/black,/area/chapel/main) -"aLY" = (/obj/structure/table/glass,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) -"aLZ" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aMa" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aMb" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aMc" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aMd" = (/obj/machinery/computer/security,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aMe" = (/obj/structure/closet/emcloset,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aMf" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) -"aMg" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "burst_l"},/turf/open/floor/plasteel/black,/area/shuttle/arrival) -"aMh" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/neutral/corner{dir = 2},/area/hallway/secondary/entry) -"aMi" = (/turf/open/floor/plasteel/neutral/side,/area/hallway/secondary/entry) -"aMj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side,/area/hallway/secondary/entry) -"aMk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side,/area/hallway/secondary/entry) -"aMl" = (/turf/open/floor/plasteel/neutral/corner{dir = 8},/area/hallway/secondary/entry) -"aMm" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aMn" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Garden"},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) -"aMo" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/storage/primary) -"aMp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Primary Tool Storage"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/storage/primary) -"aMq" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Primary Tool Storage"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/primary) -"aMr" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/storage/primary) -"aMs" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) -"aMt" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) -"aMu" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) -"aMv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/vault{dir = 5},/area/hallway/primary/port) -"aMw" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/structure/cable,/turf/open/floor/plating,/area/hallway/primary/port) -"aMx" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) -"aMy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) -"aMz" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{icon_state = "door_closed"; lockdownbyai = 0; locked = 0; name = "Gateway Access"; req_access_txt = "62"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) -"aMA" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters{id = "stationawaygate"; name = "Gateway Access Shutters"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/gateway) -"aMB" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters{id = "stationawaygate"; name = "Gateway Access Shutters"},/turf/open/floor/plasteel,/area/gateway) -"aMC" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/gateway) -"aMD" = (/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) -"aME" = (/turf/open/floor/plasteel/blue/side{dir = 4},/area/hallway/primary/central) -"aMF" = (/obj/machinery/vending/snack/random,/turf/open/floor/plasteel/black,/area/hallway/primary/central) -"aMG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/hallway/primary/central) -"aMH" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/light{dir = 1},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aMI" = (/turf/open/floor/wood,/area/crew_quarters/theatre) -"aMJ" = (/obj/machinery/airalarm{dir = 2; pixel_y = 24},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aMK" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/camera{c_tag = "Theatre Stage"; dir = 2},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aML" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aMM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aMN" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aMO" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aMP" = (/obj/machinery/reagentgrinder,/obj/structure/table/wood,/turf/open/floor/wood,/area/crew_quarters/bar) -"aMQ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/bar) -"aMR" = (/obj/machinery/camera{c_tag = "Bar Storage"},/turf/open/floor/wood,/area/crew_quarters/bar) -"aMS" = (/turf/open/floor/wood,/area/crew_quarters/bar) -"aMT" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aMU" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aMV" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Kitchen Delivery"; req_access_txt = "28"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/crew_quarters/kitchen) -"aMW" = (/obj/machinery/door/window/eastright{name = "Hydroponics Delivery"; req_access_txt = "35"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/hydroponics) -"aMX" = (/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aMY" = (/obj/structure/sink{pixel_y = 30},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aMZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aNa" = (/obj/structure/closet/wardrobe/botanist,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aNb" = (/obj/structure/closet/secure_closet/hydroponics,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aNc" = (/obj/machinery/airalarm{pixel_y = 24},/obj/machinery/camera{c_tag = "Hydroponics Storage"},/obj/machinery/light/small{dir = 1},/obj/machinery/plantgenes,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aNd" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aNe" = (/obj/structure/table,/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 0; pixel_y = 3},/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 8; pixel_y = 8},/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 13; pixel_y = 5},/obj/item/weapon/watertank,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aNf" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/wood,/area/library) -"aNg" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/library) -"aNh" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/library) -"aNi" = (/obj/structure/table/wood,/obj/structure/disposalpipe/segment,/obj/item/toy/cards/deck/cas,/obj/item/toy/cards/deck/cas/black{pixel_x = -2; pixel_y = 6},/turf/open/floor/wood,/area/library) -"aNj" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/wood,/area/library) -"aNk" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera{c_tag = "Chapel Crematorium"; dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/chapel/office) -"aNl" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/office) -"aNm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock{name = "Crematorium"; req_access_txt = "27"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/office) -"aNn" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aNo" = (/obj/structure/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aNp" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aNq" = (/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aNr" = (/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/main) -"aNs" = (/obj/machinery/computer/crew,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aNt" = (/obj/structure/chair{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aNu" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aNv" = (/obj/machinery/button/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = -24},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aNw" = (/obj/machinery/computer/communications,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aNx" = (/obj/machinery/door/airlock/titanium{name = "Arrivals Shuttle Airlock"},/obj/docking_port/mobile{dwidth = 5; height = 7; id = "arrival"; name = "arrival shuttle"; port_angle = -90; preferred_direction = 8; width = 15},/obj/docking_port/stationary{dwidth = 5; height = 7; id = "arrival_home"; name = "port bay 1"; width = 15},/turf/open/floor/plating,/area/shuttle/arrival) -"aNy" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aNz" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) -"aNA" = (/obj/structure/chair/comfy/beige,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aNB" = (/obj/structure/chair/comfy/beige,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aNC" = (/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aND" = (/obj/structure/chair/comfy/beige,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aNE" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aNF" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) -"aNG" = (/turf/open/floor/plasteel/neutral/side{dir = 8},/area/hallway/secondary/entry) -"aNH" = (/obj/machinery/door/firedoor,/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aNI" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNJ" = (/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNK" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{name = "Port Hall APC"; dir = 1; pixel_y = 26},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNM" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNN" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNO" = (/obj/machinery/light{dir = 1},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNP" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNQ" = (/obj/machinery/camera{c_tag = "Port Hallway 2"; dir = 2},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNR" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNU" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNV" = (/obj/machinery/light{dir = 1},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNY" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aNZ" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOb" = (/obj/machinery/camera{c_tag = "Central Hallway North-West"; dir = 2},/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOc" = (/obj/machinery/light{dir = 1},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOd" = (/turf/open/floor/plasteel/blue/corner{dir = 4},/area/hallway/primary/central) -"aOe" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOf" = (/turf/open/floor/plasteel{icon_state = "L1"},/area/hallway/primary/central) -"aOg" = (/turf/open/floor/plasteel{icon_state = "L3"},/area/hallway/primary/central) -"aOh" = (/turf/open/floor/plasteel{icon_state = "L5"},/area/hallway/primary/central) -"aOi" = (/turf/open/floor/plasteel{icon_state = "L7"},/area/hallway/primary/central) -"aOj" = (/turf/open/floor/plasteel{icon_state = "L9"},/area/hallway/primary/central) -"aOk" = (/turf/open/floor/plasteel{icon_state = "L11"},/area/hallway/primary/central) -"aOl" = (/turf/open/floor/plasteel{desc = ""; icon_state = "L13"; name = "floor"},/area/hallway/primary/central) -"aOm" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/hallway/primary/central) -"aOo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/hallway/primary/central) -"aOp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/hallway/primary/central) -"aOq" = (/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/hallway/primary/central) -"aOr" = (/obj/machinery/camera{c_tag = "Central Hallway North-East"; dir = 2},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOs" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOt" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOu" = (/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aOv" = (/obj/structure/piano{tag = "icon-piano"; icon_state = "piano"},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aOw" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aOx" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aOy" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aOz" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aOA" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aOB" = (/obj/machinery/computer/slot_machine,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aOC" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/obj/structure/reagent_dispensers/beerkeg,/turf/open/floor/wood,/area/crew_quarters/bar) -"aOD" = (/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/bar) -"aOE" = (/obj/machinery/vending/cola/random,/turf/open/floor/wood,/area/crew_quarters/bar) -"aOF" = (/obj/machinery/vending/coffee,/turf/open/floor/wood,/area/crew_quarters/bar) -"aOG" = (/obj/machinery/icecream_vat,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aOH" = (/obj/machinery/chem_master/condimaster{name = "CondiMaster Neo"},/obj/machinery/camera{c_tag = "Kitchen Cold Room"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aOI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aOJ" = (/obj/structure/closet/crate/hydroponics,/obj/item/weapon/shovel/spade,/obj/item/weapon/wrench,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/wirecutters,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aOK" = (/obj/machinery/light/small,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aOL" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aOM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aON" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = -31},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aOO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aOP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aOQ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aOR" = (/obj/machinery/chem_master/condimaster,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aOS" = (/turf/open/floor/wood,/area/library) -"aOT" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/wood,/area/library) -"aOU" = (/obj/structure/chair/office/dark{dir = 1},/obj/structure/disposalpipe/segment,/turf/open/floor/wood,/area/library) -"aOV" = (/obj/structure/bodycontainer/morgue,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/black,/area/chapel/office) -"aOW" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/black,/area/chapel/office) -"aOX" = (/obj/structure/table/wood,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/turf/open/floor/plasteel/grimy,/area/chapel/office) -"aOY" = (/obj/machinery/camera{c_tag = "Chapel North"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/black,/area/chapel/main) -"aOZ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/chapel/main) -"aPa" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) -"aPb" = (/turf/closed/wall,/area/hallway/secondary/exit) -"aPc" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/exit) -"aPd" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Cockpit"; req_access_txt = "19"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aPe" = (/obj/machinery/status_display,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"aPf" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aPg" = (/obj/structure/table/wood,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aPh" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/chips,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/hallway/secondary/entry) -"aPi" = (/turf/open/floor/carpet,/area/hallway/secondary/entry) -"aPj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/hallway/secondary/entry) -"aPk" = (/obj/structure/chair/comfy/beige{dir = 8},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aPl" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) -"aPm" = (/turf/open/floor/goonplaque,/area/hallway/secondary/entry) -"aPn" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=CHW"; location = "Lockers"},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPo" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPp" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPs" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPt" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPu" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPv" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPx" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPA" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPB" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aPC" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aPD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aPE" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) -"aPF" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aPG" = (/turf/open/floor/plasteel{icon_state = "L2"},/area/hallway/primary/central) -"aPH" = (/turf/open/floor/plasteel{icon_state = "L4"},/area/hallway/primary/central) -"aPI" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Lockers"; location = "EVA"},/turf/open/floor/plasteel{icon_state = "L6"},/area/hallway/primary/central) -"aPJ" = (/turf/open/floor/plasteel{icon_state = "L8"},/area/hallway/primary/central) -"aPK" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Security"; location = "EVA2"},/turf/open/floor/plasteel{icon_state = "L10"},/area/hallway/primary/central) -"aPL" = (/turf/open/floor/plasteel{icon_state = "L12"},/area/hallway/primary/central) -"aPM" = (/turf/open/floor/plasteel{desc = ""; icon_state = "L14"},/area/hallway/primary/central) -"aPN" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/central) -"aPO" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=EVA2"; location = "Dorm"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aPP" = (/obj/structure/table/wood,/obj/item/device/instrument/guitar{pixel_x = -7},/obj/item/device/instrument/eguitar{pixel_x = 5},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aPQ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aPR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/crew_quarters/theatre) -"aPS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aPT" = (/obj/machinery/door/window{dir = 4; name = "Theatre Stage"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aPU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aPV" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aPW" = (/obj/machinery/computer/slot_machine,/obj/machinery/light/small{dir = 4},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aPX" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/turf/open/floor/wood,/area/crew_quarters/bar) -"aPY" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/wood,/area/crew_quarters/bar) -"aPZ" = (/obj/structure/closet/gmcloset,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/cable_coil,/obj/item/device/flashlight/lamp,/obj/item/device/flashlight/lamp/green,/turf/open/floor/wood,/area/crew_quarters/bar) -"aQa" = (/obj/structure/kitchenspike,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aQb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/hostile/retaliate/goat{name = "Pete"},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aQc" = (/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aQd" = (/obj/machinery/light/small{dir = 4},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/chefcloset,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aQe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/hydroponics) -"aQf" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hydroponics) -"aQg" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Hydroponics"; req_access_txt = "35"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) -"aQh" = (/obj/machinery/bookbinder{pixel_y = 0},/turf/open/floor/wood,/area/library) -"aQi" = (/obj/structure/disposalpipe/segment,/turf/open/floor/wood,/area/library) -"aQj" = (/obj/machinery/photocopier,/turf/open/floor/wood,/area/library) -"aQk" = (/obj/machinery/door/airlock/glass{name = "Chapel Office"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/office) -"aQl" = (/obj/machinery/door/morgue{name = "Confession Booth (Chaplain)"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/main) -"aQm" = (/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1480; name = "Confessional Intercom"; pixel_x = 25},/obj/structure/chair,/turf/open/floor/plasteel/black,/area/chapel/main) -"aQn" = (/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 9},/area/hallway/secondary/exit) -"aQo" = (/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 1},/area/hallway/secondary/exit) -"aQp" = (/obj/machinery/light{dir = 1},/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 1},/area/hallway/secondary/exit) -"aQq" = (/obj/structure/chair,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aQr" = (/obj/structure/chair,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aQs" = (/obj/structure/chair,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aQt" = (/obj/machinery/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = 24},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aQu" = (/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aQv" = (/obj/structure/closet/emcloset,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aQw" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aQx" = (/obj/machinery/vending/snack/random,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aQy" = (/obj/item/device/radio/beacon,/obj/machinery/camera{c_tag = "Arrivals Bay 1 South"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aQz" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aQA" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aQB" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/cigarettes{pixel_y = 2},/obj/item/weapon/lighter/greyscale{pixel_x = 4; pixel_y = 2},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aQC" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/hallway/secondary/entry) -"aQD" = (/obj/machinery/vending/cola/random,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) -"aQE" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQF" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQG" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQH" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQI" = (/obj/machinery/camera{c_tag = "Port Hallway 3"; dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQJ" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQK" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Port Hallway"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQN" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQW" = (/obj/structure/sign/directions/security{dir = 4; icon_state = "direction_sec"; pixel_x = 32; pixel_y = -24},/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = 32; pixel_y = -32},/obj/structure/sign/directions/engineering{pixel_x = 32; pixel_y = -40},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQX" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aQY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aQZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aRa" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=QM"; location = "CHW"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aRb" = (/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) -"aRc" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) -"aRd" = (/obj/machinery/light,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) -"aRe" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/door/firedoor,/obj/machinery/light,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) -"aRf" = (/obj/structure/window/reinforced,/obj/structure/table/wood,/obj/item/device/instrument/violin,/turf/open/floor/wood,/area/crew_quarters/theatre) -"aRg" = (/obj/structure/window/reinforced,/turf/open/floor/wood,/area/crew_quarters/theatre) -"aRh" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) -"aRi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aRj" = (/obj/machinery/door/airlock{name = "Bar Storage"; req_access_txt = "25"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel{icon_state = "wood"},/area/crew_quarters/bar) -"aRk" = (/obj/effect/landmark{name = "blobstart"},/obj/item/toy/beach_ball/holoball,/turf/open/floor/plating,/area/crew_quarters/bar) -"aRl" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aRm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aRn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aRo" = (/obj/machinery/gibber,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aRp" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plasteel/black,/area/hydroponics) -"aRq" = (/obj/machinery/requests_console{department = "Hydroponics"; departmentType = 2; pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/hydroponics) -"aRr" = (/obj/machinery/hydroponics/constructable,/turf/open/floor/plasteel/black,/area/hydroponics) -"aRs" = (/obj/machinery/hydroponics/constructable,/obj/machinery/camera{c_tag = "Hydroponics North"; dir = 2},/turf/open/floor/plasteel/black,/area/hydroponics) -"aRt" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/hydroponics) -"aRu" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/black,/area/hydroponics) -"aRv" = (/obj/structure/bookcase/random/religion,/turf/open/floor/wood,/area/library) -"aRw" = (/turf/open/floor/carpet,/area/library) -"aRx" = (/obj/structure/disposalpipe/segment,/turf/open/floor/carpet,/area/library) -"aRy" = (/obj/structure/bookcase/random/reference,/turf/open/floor/wood,/area/library) -"aRz" = (/obj/machinery/computer/libraryconsole,/obj/structure/table/wood,/turf/open/floor/wood,/area/library) -"aRA" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/turf/open/floor/engine/cult,/area/library) -"aRB" = (/obj/structure/table/wood,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/device/camera,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/engine/cult,/area/library) -"aRC" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen/invisible,/turf/open/floor/engine/cult,/area/library) -"aRD" = (/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel/black,/area/chapel/main) -"aRE" = (/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) -"aRF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) -"aRG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) -"aRH" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/turf/open/floor/plasteel/black,/area/chapel/main) -"aRI" = (/obj/machinery/camera{c_tag = "Escape Arm Holding Area"; dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/open/floor/plasteel/red/side{dir = 8},/area/hallway/secondary/exit) -"aRJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aRK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aRL" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aRM" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aRN" = (/obj/machinery/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = 6},/obj/machinery/button/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = -6},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aRO" = (/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aRP" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Brig"; req_access_txt = "2"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aRQ" = (/turf/closed/wall/mineral/titanium,/area/shuttle/pod_1) -"aRR" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4; icon_state = "propulsion"; tag = "icon-propulsion (WEST)"},/turf/closed/wall/mineral/titanium,/area/shuttle/pod_1) -"aRS" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aRT" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aRU" = (/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aRV" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aRW" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aRX" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) -"aRY" = (/obj/machinery/vending/snack/random,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) -"aRZ" = (/turf/closed/wall,/area/maintenance/port) -"aSa" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) -"aSb" = (/turf/closed/wall,/area/crew_quarters/locker) -"aSc" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aSd" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aSe" = (/obj/machinery/status_display{density = 0; layer = 4},/turf/closed/wall,/area/crew_quarters/locker) -"aSf" = (/turf/closed/wall,/area/storage/art) -"aSg" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/storage/art) -"aSh" = (/obj/machinery/door/airlock/glass{name = "Art Storage"},/turf/open/floor/plasteel,/area/storage/art) -"aSi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/storage/art) -"aSj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) -"aSk" = (/turf/closed/wall,/area/storage/emergency2) -"aSl" = (/obj/structure/table,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aSm" = (/obj/structure/table,/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel,/area/hallway/primary/port) -"aSn" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aSo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aSp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) -"aSq" = (/turf/closed/wall,/area/storage/tools) -"aSr" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aSs" = (/turf/closed/wall/r_wall,/area/bridge) -"aSt" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) -"aSu" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) -"aSv" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/status_display{density = 0; layer = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) -"aSw" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) -"aSx" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/status_display{density = 0; layer = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) -"aSy" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) -"aSz" = (/obj/structure/table,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -31},/obj/item/clothing/head/hardhat/cakehat,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aSA" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aSB" = (/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aSC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aSD" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/crew_quarters/bar) -"aSE" = (/obj/machinery/disposal/bin,/obj/structure/sign/securearea{desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; icon_state = "monkey_painting"; name = "Mr. Deempisi portrait"; pixel_x = -28; pixel_y = -4},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/button/door{id = "barShutters"; name = "bar shutters"; pixel_x = 4; pixel_y = 28},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aSF" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aSG" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/table,/obj/machinery/chem_dispenser/drinks/beer,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aSH" = (/obj/machinery/door/airlock{name = "Kitchen cold room"; req_access_txt = "28"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) -"aSI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/green/side{dir = 9},/area/hydroponics) -"aSJ" = (/turf/open/floor/plasteel/green/side{dir = 1},/area/hydroponics) -"aSK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/green/side{dir = 5},/area/hydroponics) -"aSL" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/wood,/area/library) -"aSM" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/wood,/area/library) -"aSN" = (/obj/machinery/light/small,/turf/open/floor/engine/cult,/area/library) -"aSO" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/chair/comfy/brown{dir = 1},/turf/open/floor/engine/cult,/area/library) -"aSP" = (/obj/structure/destructible/cult/tome,/obj/item/clothing/under/suit_jacket/red,/obj/item/weapon/book/codex_gigas,/turf/open/floor/engine/cult,/area/library) -"aSQ" = (/turf/open/floor/plasteel/chapel,/area/chapel/main) -"aSR" = (/obj/structure/table/wood,/turf/open/floor/plasteel/black,/area/chapel/main) -"aSS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) -"aST" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel,/area/chapel/main) -"aSU" = (/obj/machinery/door/morgue{name = "Confession Booth"},/turf/open/floor/plasteel/black,/area/chapel/main) -"aSV" = (/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1480; name = "Confessional Intercom"; pixel_x = 25},/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/black,/area/chapel/main) -"aSW" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/hallway/secondary/exit) -"aSX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aSY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aSZ" = (/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aTa" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Security Escape Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/hallway/secondary/exit) -"aTb" = (/turf/open/floor/plating,/area/hallway/secondary/exit) -"aTc" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/hallway/secondary/exit) -"aTd" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Security Escape Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/hallway/secondary/exit) -"aTe" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aTf" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aTg" = (/obj/structure/chair,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aTh" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aTi" = (/obj/structure/table,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aTj" = (/obj/docking_port/stationary/random{dir = 8; id = "pod_asteroid1"; name = "asteroid"},/turf/open/space,/area/space) -"aTk" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_1) -"aTl" = (/obj/machinery/computer/shuttle/pod{pixel_x = 0; pixel_y = -32; possible_destinations = "pod_asteroid1"; shuttleId = "pod1"},/obj/structure/chair{dir = 8},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_1) -"aTm" = (/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -28},/obj/item/device/radio/intercom{pixel_x = 0; pixel_y = 25},/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_1) -"aTn" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 8; id = "pod1"; name = "escape pod 1"; port_angle = 180},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_1) -"aTo" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aTp" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aTq" = (/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aTr" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/hallway/secondary/entry) -"aTs" = (/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) -"aTt" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) -"aTu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) -"aTv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) -"aTw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) -"aTx" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) -"aTy" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/hallway/secondary/entry) -"aTz" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/port) -"aTA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/port) -"aTB" = (/obj/structure/closet/wardrobe/white,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTC" = (/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTD" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTE" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTF" = (/obj/machinery/vending/cola/random,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTG" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTH" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTI" = (/obj/machinery/vending/clothing,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTJ" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTK" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTL" = (/obj/structure/closet/secure_closet/personal,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aTM" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/structure/table,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/turf/open/floor/plasteel,/area/storage/art) -"aTN" = (/turf/open/floor/plasteel,/area/storage/art) -"aTO" = (/obj/machinery/light/small{dir = 4},/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel,/area/storage/art) -"aTP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) -"aTQ" = (/obj/machinery/door/airlock{name = "Port Emergency Storage"; req_access_txt = "0"},/turf/open/floor/plating,/area/storage/emergency2) -"aTR" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/storage/tools) -"aTS" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Auxiliary Tool Storage"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/tools) -"aTT" = (/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aTU" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/secure/briefcase,/obj/item/weapon/storage/box/PDAs{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/ids,/turf/open/floor/plasteel,/area/bridge) -"aTV" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/bridge) -"aTW" = (/obj/machinery/computer/station_alert,/turf/open/floor/plasteel/yellow/side,/area/bridge) -"aTX" = (/obj/machinery/computer/monitor{name = "bridge power monitoring console"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/bridge) -"aTY" = (/obj/machinery/computer/shuttle/labor,/turf/open/floor/plasteel/blue/side{dir = 10},/area/bridge) -"aTZ" = (/obj/machinery/computer/communications,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aUa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/computer/shuttle/mining,/turf/open/floor/plasteel/blue/side{dir = 6},/area/bridge) -"aUb" = (/obj/machinery/modular_computer/console/preset/command,/turf/open/floor/plasteel/green/side{dir = 10},/area/bridge) -"aUc" = (/obj/machinery/computer/crew,/turf/open/floor/plasteel/green/side{dir = 2},/area/bridge) -"aUd" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/green/side{dir = 6},/area/bridge) -"aUe" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/emergency,/obj/item/weapon/wrench,/obj/item/device/assembly/timer,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/turf/open/floor/plasteel,/area/bridge) -"aUf" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aUg" = (/obj/effect/landmark/event_spawn,/turf/closed/wall,/area/crew_quarters/bar) -"aUh" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aUi" = (/obj/structure/chair,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aUj" = (/obj/structure/chair/stool/bar,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aUk" = (/obj/structure/table/reinforced,/obj/item/weapon/lighter,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aUl" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aUm" = (/obj/machinery/vending/boozeomat,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aUn" = (/obj/machinery/vending/dinnerware,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aUo" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/machinery/food_cart,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aUp" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aUq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aUr" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/camera{c_tag = "Kitchen"; dir = 2},/obj/structure/closet/secure_closet/freezer/fridge,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aUs" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/airalarm{pixel_y = 24},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aUt" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aUu" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aUv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/green/side{dir = 8},/area/hydroponics) -"aUw" = (/turf/open/floor/plasteel,/area/hydroponics) -"aUx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/green/side{dir = 4},/area/hydroponics) -"aUy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/apc{dir = 4; name = "Library APC"; pixel_x = 24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/library) -"aUz" = (/obj/structure/bookcase/random/fiction,/turf/open/floor/wood,/area/library) -"aUA" = (/obj/structure/bookcase/random/nonfiction,/turf/open/floor/wood,/area/library) -"aUB" = (/obj/machinery/camera{c_tag = "Library South"; dir = 8; network = list("SS13")},/turf/open/floor/wood,/area/library) -"aUC" = (/obj/machinery/door/morgue{name = "Private Study"; req_access_txt = "37"},/turf/open/floor/engine/cult,/area/library) -"aUD" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/black,/area/chapel/main) -"aUE" = (/turf/open/floor/carpet,/area/chapel/main) -"aUF" = (/obj/effect/landmark/event_spawn,/turf/open/floor/carpet,/area/chapel/main) -"aUG" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/exit) -"aUH" = (/obj/machinery/door/airlock/glass_security{name = "Holding Area"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"aUI" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/exit) -"aUJ" = (/turf/closed/wall/mineral/titanium/nodiagonal,/area/shuttle/escape) -"aUK" = (/obj/machinery/camera{c_tag = "Arrivals Escape Pod 1"; dir = 8},/obj/machinery/light/small,/turf/open/floor/plating,/area/hallway/secondary/entry) -"aUL" = (/obj/machinery/light,/turf/open/floor/plasteel/arrival{dir = 2},/area/hallway/secondary/entry) -"aUM" = (/turf/open/floor/plasteel/arrival{dir = 2},/area/hallway/secondary/entry) -"aUN" = (/turf/open/floor/plasteel/white/corner{dir = 8},/area/hallway/secondary/entry) -"aUO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aUP" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aUQ" = (/obj/machinery/firealarm{dir = 2; pixel_y = -24},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aUR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aUS" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aUT" = (/obj/machinery/camera{c_tag = "Arrivals Hallway"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aUU" = (/turf/open/floor/plating,/area/maintenance/port) -"aUV" = (/obj/structure/closet/wardrobe/mixed,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aUW" = (/obj/effect/landmark{name = "lightsout"},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aUX" = (/obj/structure/table,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil,/obj/item/weapon/paper_bin/construction,/obj/item/stack/cable_coil,/turf/open/floor/plasteel,/area/storage/art) -"aUY" = (/obj/machinery/light_switch{pixel_y = 28},/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plating,/area/storage/emergency2) -"aUZ" = (/turf/open/floor/plating,/area/storage/emergency2) -"aVa" = (/obj/item/weapon/extinguisher,/turf/open/floor/plating,/area/storage/emergency2) -"aVb" = (/obj/machinery/power/apc{dir = 1; name = "Auxiliary Tool Storage APC"; pixel_y = 24},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel,/area/storage/tools) -"aVc" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/rack,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/electronics/apc,/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel,/area/storage/tools) -"aVd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/tools) -"aVe" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera{c_tag = "Auxiliary Tool Storage"; dir = 2},/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plasteel,/area/storage/tools) -"aVf" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/emergency,/turf/open/floor/plasteel,/area/storage/tools) -"aVg" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tools) -"aVh" = (/obj/structure/table/reinforced,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel,/area/bridge) -"aVi" = (/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/bridge) -"aVj" = (/obj/structure/chair{dir = 1; name = "Engineering Station"},/turf/open/floor/plasteel,/area/bridge) -"aVk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/bridge) -"aVl" = (/obj/structure/table/reinforced,/obj/item/device/aicard,/obj/item/device/multitool,/turf/open/floor/plasteel/blue/side{dir = 8},/area/bridge) -"aVm" = (/obj/structure/chair{dir = 1; name = "Command Station"},/obj/machinery/button/door{id = "bridge blast"; name = "Bridge Blast Door Control"; pixel_x = 28; pixel_y = -2; req_access_txt = "19"},/obj/machinery/keycard_auth{pixel_x = 29; pixel_y = 8},/turf/open/floor/plasteel,/area/bridge) -"aVn" = (/obj/structure/table/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/blue/side{dir = 4},/area/bridge) -"aVo" = (/turf/open/floor/plasteel/green/corner{dir = 1},/area/bridge) -"aVp" = (/obj/structure/chair{dir = 1; name = "Crew Station"},/turf/open/floor/plasteel,/area/bridge) -"aVq" = (/turf/open/floor/plasteel/green/corner{dir = 4},/area/bridge) -"aVr" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel,/area/bridge) -"aVs" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/door/poddoor/preopen{id = "barShutters"; name = "privacy shutters"},/turf/open/floor/plating,/area/crew_quarters/bar) -"aVt" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aVu" = (/obj/structure/table,/obj/item/weapon/kitchen/fork,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aVv" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aVw" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aVx" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aVy" = (/obj/structure/table/wood/poker,/obj/item/toy/cards/deck,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aVz" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aVA" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aVB" = (/mob/living/carbon/monkey/punpun,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aVC" = (/obj/machinery/door/airlock/glass{name = "Kitchen"; req_access_txt = "28"},/turf/open/floor/plasteel/bar,/area/crew_quarters/kitchen) -"aVD" = (/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aVE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aVF" = (/obj/effect/landmark/start{name = "Cook"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aVG" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aVH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aVI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aVJ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aVK" = (/obj/machinery/smartfridge,/turf/closed/wall,/area/crew_quarters/kitchen) -"aVL" = (/turf/open/floor/plasteel/black,/area/hydroponics) -"aVM" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/green/side{dir = 8},/area/hydroponics) -"aVN" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel,/area/hydroponics) -"aVO" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel,/area/hydroponics) -"aVP" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/green/side{dir = 4},/area/hydroponics) -"aVQ" = (/obj/machinery/door/window/northright{base_state = "right"; dir = 8; icon_state = "right"; name = "Library Desk Door"; req_access_txt = "37"},/turf/open/floor/wood,/area/library) -"aVR" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/wood,/area/library) -"aVS" = (/obj/structure/table/wood,/obj/machinery/computer/libraryconsole/bookmanagement{pixel_y = 0},/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/wood,/area/library) -"aVT" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) -"aVU" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/chapel,/area/chapel/main) -"aVV" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) -"aVW" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel,/area/chapel/main) -"aVX" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/black,/area/chapel/main) -"aVY" = (/obj/machinery/vending/cola/random,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/escape{dir = 9},/area/hallway/secondary/exit) -"aVZ" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/secondary/exit) -"aWa" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Escape Airlock"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/hallway/secondary/exit) -"aWb" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) -"aWc" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/obj/docking_port/mobile/emergency{name = "Box emergency shuttle"; timid = 0},/obj/docking_port/stationary{dir = 4; dwidth = 12; height = 18; id = "emergency_home"; name = "BoxStation emergency evac bay"; turf_type = /turf/open/space; width = 32},/turf/open/floor/plating,/area/shuttle/escape) -"aWd" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aWe" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aWf" = (/obj/machinery/door/firedoor,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aWg" = (/turf/closed/wall,/area/security/vacantoffice) -"aWh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/vacantoffice) -"aWi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/vacantoffice) -"aWj" = (/turf/closed/wall,/area/security/vacantoffice{name = "Vacant Office A"}) -"aWk" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/port) -"aWl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/port) -"aWm" = (/obj/structure/closet/wardrobe/green,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aWn" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aWo" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aWp" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aWq" = (/obj/structure/table,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aWr" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aWs" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aWt" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aWu" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/camera{c_tag = "Locker Room East"; dir = 8; network = list("SS13")},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aWv" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/open/floor/plasteel,/area/storage/art) -"aWw" = (/obj/structure/table,/obj/item/weapon/storage/crayons,/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel,/area/storage/art) -"aWx" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/table,/obj/item/device/camera_film,/obj/item/device/camera,/turf/open/floor/plasteel,/area/storage/art) -"aWy" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/storage/emergency2) -"aWz" = (/obj/machinery/light/small,/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/storage/emergency2) -"aWA" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/storage/emergency2) -"aWB" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/turf/open/floor/plating,/area/storage/emergency2) -"aWC" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/open/floor/plasteel,/area/storage/tools) -"aWD" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel,/area/storage/tools) -"aWE" = (/turf/open/floor/plasteel,/area/storage/tools) -"aWF" = (/obj/structure/rack,/obj/item/clothing/gloves/color/fyellow,/obj/item/clothing/suit/hazardvest,/obj/item/device/multitool,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/storage/tools) -"aWG" = (/turf/closed/wall/r_wall,/area/hallway/primary/central) -"aWH" = (/obj/machinery/computer/prisoner,/turf/open/floor/plasteel/red/side{dir = 10},/area/bridge) -"aWI" = (/obj/machinery/computer/security,/turf/open/floor/plasteel/red/side,/area/bridge) -"aWJ" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel/red/side{dir = 6},/area/bridge) -"aWK" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/turf/open/floor/plasteel,/area/bridge) -"aWL" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/bridge) -"aWM" = (/turf/open/floor/plasteel,/area/bridge) -"aWN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/bridge) -"aWO" = (/turf/open/floor/plasteel/blue/corner{dir = 1},/area/bridge) -"aWP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/blue/corner{dir = 4},/area/bridge) -"aWQ" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/bridge) -"aWR" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/bridge) -"aWS" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/bridge) -"aWT" = (/obj/machinery/computer/teleporter,/turf/open/floor/plasteel/brown{dir = 10},/area/bridge) -"aWU" = (/obj/machinery/computer/cargo/request,/turf/open/floor/plasteel/brown{dir = 2},/area/bridge) -"aWV" = (/obj/machinery/computer/security/mining{network = list("MINE","AuxBase")},/turf/open/floor/plasteel/brown{dir = 6},/area/bridge) -"aWW" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera{c_tag = "Bar West"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aWX" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aWY" = (/obj/effect/landmark/event_spawn,/obj/effect/landmark/xmastree,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aWZ" = (/obj/structure/table/reinforced,/obj/item/clothing/head/that{throwforce = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aXa" = (/obj/effect/landmark/start{name = "Bartender"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aXb" = (/obj/machinery/requests_console{department = "Bar"; departmentType = 2; pixel_x = 30; pixel_y = 0},/obj/machinery/camera{c_tag = "Bar"; dir = 8; network = list("SS13")},/obj/structure/table,/obj/machinery/chem_dispenser/drinks,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aXc" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/mint,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aXd" = (/obj/structure/table,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aXe" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aXf" = (/obj/structure/table,/obj/item/weapon/book/manual/chef_recipes,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aXg" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aXh" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastleft{name = "Hydroponics Desk"; req_access_txt = "35"},/obj/machinery/door/firedoor,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/crew_quarters/kitchen) -"aXi" = (/turf/open/floor/plasteel/vault{dir = 8},/area/hydroponics) -"aXj" = (/turf/open/floor/plasteel/green/side{dir = 8},/area/hydroponics) -"aXk" = (/obj/machinery/vending/hydronutrients,/turf/open/floor/plasteel,/area/hydroponics) -"aXl" = (/obj/machinery/vending/hydroseeds{slogan_delay = 700},/turf/open/floor/plasteel,/area/hydroponics) -"aXm" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/hydroponics) -"aXn" = (/obj/machinery/hydroponics/constructable,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/black,/area/hydroponics) -"aXo" = (/obj/structure/bookcase/random/adult,/turf/open/floor/wood,/area/library) -"aXp" = (/obj/structure/chair/comfy/black,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/wood,/area/library) -"aXq" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/open/floor/wood,/area/library) -"aXr" = (/obj/effect/landmark/start{name = "Librarian"},/obj/structure/chair/office/dark,/turf/open/floor/wood,/area/library) -"aXs" = (/obj/machinery/libraryscanner,/turf/open/floor/wood,/area/library) -"aXt" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel/black,/area/chapel/main) -"aXu" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) -"aXv" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) -"aXw" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) -"aXx" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) -"aXy" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) -"aXz" = (/obj/structure/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aXA" = (/obj/structure/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aXB" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aXC" = (/turf/closed/wall/mineral/titanium,/area/shuttle/transport) -"aXD" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/transport) -"aXE" = (/obj/machinery/door/airlock/external,/turf/open/floor/pod/dark,/area/shuttle/transport) -"aXF" = (/obj/machinery/camera{c_tag = "Arrivals Bay 2"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"aXG" = (/turf/open/floor/wood,/area/security/vacantoffice) -"aXH" = (/obj/structure/chair/office/dark{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/security/vacantoffice) -"aXI" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/security/vacantoffice) -"aXJ" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/wood,/area/security/vacantoffice) -"aXK" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/wood,/area/security/vacantoffice) -"aXL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/security/vacantoffice) -"aXM" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/port) -"aXN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/port) -"aXO" = (/obj/structure/closet/wardrobe/grey,/obj/machinery/requests_console{department = "Locker Room"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXR" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXS" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXT" = (/obj/structure/table,/obj/item/clothing/head/soft/grey{pixel_x = -2; pixel_y = 3},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXU" = (/obj/structure/table,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXV" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aXZ" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/closet/toolcloset,/turf/open/floor/plasteel,/area/storage/tools) -"aYa" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel,/area/storage/tools) -"aYb" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/light/small,/turf/open/floor/plasteel,/area/storage/tools) -"aYc" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/storage/tools) -"aYd" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 5},/area/hallway/primary/central) -"aYe" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) -"aYf" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) -"aYg" = (/obj/machinery/camera{c_tag = "Bridge West"; dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/red/corner{dir = 1},/area/bridge) -"aYh" = (/obj/structure/chair{dir = 1; name = "Security Station"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aYi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 4},/area/bridge) -"aYj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aYk" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/bridge) -"aYl" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aYm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/bridge) -"aYn" = (/obj/machinery/holopad,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aYo" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aYp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aYq" = (/obj/item/device/radio/beacon,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aYr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aYs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 1},/area/bridge) -"aYt" = (/obj/structure/chair{dir = 1; name = "Logistics Station"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aYu" = (/obj/machinery/camera{c_tag = "Bridge East"; dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/brown/corner{dir = 4},/area/bridge) -"aYv" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) -"aYw" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 9},/area/hallway/primary/central) -"aYx" = (/obj/machinery/camera{c_tag = "Bridge East Entrance"; dir = 2},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) -"aYy" = (/obj/machinery/holopad,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aYz" = (/obj/structure/chair,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aYA" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/item/weapon/reagent_containers/food/snacks/pie/cream,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aYB" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/enzyme{layer = 5},/obj/item/stack/packageWrap,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aYC" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 5},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aYD" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aYE" = (/obj/machinery/processor,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"aYF" = (/obj/machinery/light{dir = 8},/obj/machinery/hydroponics/constructable,/turf/open/floor/plasteel/black,/area/hydroponics) -"aYG" = (/obj/effect/landmark/start{name = "Botanist"},/turf/open/floor/plasteel,/area/hydroponics) -"aYH" = (/obj/machinery/hydroponics/constructable,/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/hydroponics) -"aYI" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) -"aYJ" = (/obj/structure/table/wood,/obj/item/weapon/paper,/turf/open/floor/wood,/area/library) -"aYK" = (/obj/structure/chair/comfy/black{dir = 8},/turf/open/floor/wood,/area/library) -"aYL" = (/obj/structure/table/wood,/obj/item/device/camera_film,/obj/item/device/camera_film,/turf/open/floor/wood,/area/library) -"aYM" = (/obj/structure/table/wood,/obj/item/weapon/pen/red,/obj/item/weapon/pen/blue{pixel_x = 5; pixel_y = 5},/turf/open/floor/wood,/area/library) -"aYN" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/wood,/area/library) -"aYO" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) -"aYP" = (/obj/machinery/camera{c_tag = "Chapel South"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel/black,/area/chapel/main) -"aYQ" = (/obj/item/device/radio/intercom{pixel_x = -25},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) -"aYR" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_l"},/turf/open/floor/plating,/area/shuttle/transport) -"aYS" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/shuttle/transport) -"aYT" = (/obj/structure/chair,/turf/open/floor/pod/dark,/area/shuttle/transport) -"aYU" = (/turf/open/floor/pod/light,/area/shuttle/transport) -"aYV" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) -"aYW" = (/obj/machinery/camera{c_tag = "Vacant Office"; dir = 4; network = list("SS13")},/turf/open/floor/wood,/area/security/vacantoffice) -"aYX" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/security/vacantoffice) -"aYY" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp,/turf/open/floor/wood,/area/security/vacantoffice) -"aYZ" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/wood,/area/security/vacantoffice) -"aZa" = (/obj/structure/table/wood,/obj/item/weapon/pen/red,/turf/open/floor/wood,/area/security/vacantoffice) -"aZb" = (/obj/structure/grille,/obj/structure/window{icon_state = "window"; dir = 8},/obj/structure/window,/turf/open/floor/plating,/area/maintenance/port) -"aZc" = (/obj/structure/grille,/obj/structure/window{icon_state = "window"; dir = 1},/turf/open/floor/plating,/area/maintenance/port) -"aZd" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) -"aZe" = (/obj/structure/closet/wardrobe/black,/obj/item/clothing/shoes/jackboots,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aZf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aZg" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aZh" = (/obj/machinery/camera{c_tag = "Locker Room West"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aZi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aZj" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aZk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aZl" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"aZm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/port) -"aZn" = (/obj/machinery/power/apc{dir = 1; name = "Art Storage"; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/storage/art) -"aZo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/maintenance/port) -"aZp" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/maintenance/port) -"aZq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/port) -"aZr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/port) -"aZs" = (/obj/machinery/power/apc{dir = 1; name = "Port Emergency Storage APC"; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/storage/emergency2) -"aZt" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/port) -"aZu" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/port) -"aZv" = (/turf/closed/wall/r_wall,/area/security/detectives_office) -"aZw" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 4},/area/hallway/primary/central) -"aZx" = (/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/airlock/glass_command{cyclelinkeddir = 4; name = "Bridge"; req_access_txt = "19"},/turf/open/floor/plasteel,/area/bridge) -"aZy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) -"aZz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_command{cyclelinkeddir = 8; name = "Bridge"; req_access_txt = "19"},/turf/open/floor/plasteel,/area/bridge) -"aZA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/bridge) -"aZB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/bridge) -"aZC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aZD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/corner,/area/bridge) -"aZE" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/machinery/light,/obj/machinery/light_switch{pixel_x = -6; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aZF" = (/obj/structure/fireaxecabinet{pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aZG" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aZH" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge RC"; pixel_y = -30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aZI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aZJ" = (/obj/machinery/turretid{control_area = "AI Upload Chamber"; name = "AI Upload turret control"; pixel_y = -25},/obj/machinery/camera{c_tag = "Bridge Center"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aZK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aZL" = (/obj/machinery/newscaster{pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aZM" = (/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "Bridge APC"; pixel_y = -24},/obj/structure/cable,/obj/machinery/light,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"aZN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/bridge) -"aZO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/bridge) -"aZP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/bridge) -"aZQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_command{cyclelinkeddir = 4; name = "Bridge"; req_access_txt = "19"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aZR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) -"aZS" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/airlock/glass_command{cyclelinkeddir = 8; name = "Bridge"; req_access_txt = "19"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/bridge) -"aZT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) -"aZU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aZV" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aZW" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"aZX" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -31},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aZY" = (/obj/structure/table/wood/poker,/obj/item/clothing/mask/cigarette/cigar,/obj/item/toy/cards/deck,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"aZZ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 5; pixel_y = -2},/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2; pixel_y = 2},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"baa" = (/obj/machinery/door/window/southright{name = "Bar Door"; req_access_txt = "0"; req_one_access_txt = "25;28"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bab" = (/obj/structure/table/reinforced,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/glass/rag,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bac" = (/obj/effect/landmark/start{name = "Cook"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"bad" = (/obj/machinery/deepfryer,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"bae" = (/obj/structure/table,/obj/machinery/reagentgrinder,/obj/machinery/requests_console{department = "Kitchen"; departmentType = 2; pixel_x = 30; pixel_y = 0},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"baf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 16},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bag" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/airalarm{pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bah" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bai" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Library"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) -"baj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) -"bak" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) -"bal" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) -"bam" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/carpet,/area/library) -"ban" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Chapel"},/turf/open/floor/carpet,/area/chapel/main) -"bao" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/carpet,/area/chapel/main) -"bap" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/chapel/main) -"baq" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/carpet,/area/chapel/main) -"bar" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Chapel"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/chapel/main) -"bas" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) -"bat" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bau" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bav" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"baw" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bax" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/open/floor/plating,/area/shuttle/transport) -"bay" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/pod/light,/area/shuttle/transport) -"baz" = (/obj/machinery/computer/shuttle/ferry/request,/turf/open/floor/pod/dark,/area/shuttle/transport) -"baA" = (/obj/machinery/door/airlock/titanium,/obj/docking_port/mobile{dir = 8; dwidth = 2; height = 13; id = "ferry"; name = "ferry shuttle"; port_angle = 0; preferred_direction = 4; roundstart_move = "ferry_away"; width = 5},/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 13; id = "ferry_home"; name = "port bay 2"; turf_type = /turf/open/space; width = 5},/turf/open/floor/pod/light,/area/shuttle/transport) -"baB" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; id_tag = null; name = "Port Docking Bay 2"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) -"baC" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; id_tag = null; name = "Port Docking Bay 2"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) -"baD" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/light_switch{pixel_x = -28; pixel_y = 0},/turf/open/floor/wood,/area/security/vacantoffice) -"baE" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/wood,/area/security/vacantoffice) -"baF" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/security/vacantoffice) -"baG" = (/turf/open/floor/carpet,/area/security/vacantoffice) -"baH" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/security/vacantoffice) -"baI" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) -"baJ" = (/obj/machinery/light{dir = 4},/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/wood,/area/security/vacantoffice) -"baK" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/port) -"baL" = (/turf/closed/wall,/area/crew_quarters/locker/locker_toilet) -"baM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/locker/locker_toilet) -"baN" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"baO" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"baP" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"baQ" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"baR" = (/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"baS" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"baT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"baU" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"baV" = (/obj/machinery/power/apc{dir = 8; name = "Locker Room Maintenance APC"; pixel_x = -27; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/open/floor/plating,/area/maintenance/port) -"baW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/port) -"baX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/port) -"baY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/port) -"baZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall,/area/maintenance/port) -"bba" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/machinery/door/airlock/maintenance{name = "Cargo Bay Warehouse Maintenance"; req_access_txt = "31"},/turf/open/floor/plating,/area/maintenance/port) -"bbb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) -"bbc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/security/detectives_office) -"bbd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/detectives_office) -"bbe" = (/obj/structure/closet/secure_closet/detective,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bbf" = (/obj/machinery/computer/med_data,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bbg" = (/obj/machinery/computer/secure_data,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bbh" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/security/detectives_office) -"bbi" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/evidence,/obj/item/weapon/hand_labeler{pixel_x = 5},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bbj" = (/obj/structure/table/wood,/obj/item/device/taperecorder,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/button/door{id = "kanyewest"; name = "Privacy Shutters"; pixel_x = 0; pixel_y = 24},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bbk" = (/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) -"bbl" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/central) -"bbm" = (/obj/machinery/camera{c_tag = "Bridge West Entrance"; dir = 1},/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/central) -"bbn" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 6},/area/hallway/primary/central) -"bbo" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) -"bbp" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) -"bbq" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"bbr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"bbs" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"bbt" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel/blue/side{dir = 6},/area/bridge) -"bbu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"bbv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"bbw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"bbx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/highsecurity{icon_state = "door_closed"; locked = 0; name = "AI Upload Access"; req_access_txt = "16"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bby" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"bbz" = (/obj/machinery/ai_status_display,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"bbA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"bbB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"bbC" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/filingcabinet/filingcabinet,/turf/open/floor/plasteel/blue/side{dir = 10},/area/bridge) -"bbD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) -"bbE" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 10},/area/hallway/primary/central) -"bbF" = (/obj/machinery/power/apc{dir = 2; name = "Central Hall APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/central) -"bbG" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) -"bbH" = (/obj/structure/chair{dir = 1},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bbI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bbJ" = (/obj/structure/chair/stool/bar,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bbK" = (/obj/structure/chair/stool/bar,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bbL" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Kitchen"; req_access_txt = "28"},/turf/open/floor/plasteel/bar,/area/crew_quarters/kitchen) -"bbM" = (/obj/machinery/light_switch{pixel_y = -25},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"bbN" = (/obj/machinery/light,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"bbO" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"bbP" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/button/door{id = "kitchen"; name = "Kitchen Shutters Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "28"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"bbQ" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"bbR" = (/obj/structure/reagent_dispensers/watertank/high,/turf/open/floor/plasteel,/area/hydroponics) -"bbS" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel,/area/hydroponics) -"bbT" = (/obj/machinery/hydroponics/constructable,/turf/open/floor/plasteel/green/side{dir = 1},/area/hydroponics) -"bbU" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Botanist"},/turf/open/floor/plasteel,/area/hydroponics) -"bbV" = (/obj/machinery/camera{c_tag = "Hydroponics South"; dir = 8; network = list("SS13")},/obj/structure/reagent_dispensers/watertank/high,/turf/open/floor/plasteel,/area/hydroponics) -"bbW" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/closed/wall,/area/hydroponics) -"bbX" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bbY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bbZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Library"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/library) -"bca" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/library) -"bcb" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/library) -"bcc" = (/obj/machinery/holopad,/turf/open/floor/carpet,/area/library) -"bcd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/carpet,/area/chapel/main) -"bce" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/chapel/main) -"bcf" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/carpet,/area/chapel/main) -"bcg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/chapel/main) -"bch" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Chapel"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/chapel/main) -"bci" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) -"bcj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bck" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bcl" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bcm" = (/obj/machinery/camera{c_tag = "Escape Arm Airlocks"; dir = 8; network = list("SS13")},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bcn" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 1; pixel_y = 1},/turf/open/floor/plating,/area/shuttle/transport) -"bco" = (/obj/structure/chair{dir = 1},/turf/open/floor/pod/dark,/area/shuttle/transport) -"bcp" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"bcq" = (/obj/machinery/door/airlock/engineering{name = "Vacant Office A"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) -"bcr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) -"bcs" = (/obj/structure/chair/office/dark,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) -"bct" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/security/vacantoffice) -"bcu" = (/obj/structure/chair/office/dark,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) -"bcv" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/components/unary/tank/air{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bcw" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/port) -"bcx" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bcy" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bcz" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bcA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bcB" = (/obj/structure/table,/obj/item/weapon/razor,/obj/structure/window{icon_state = "window"; dir = 1},/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) -"bcC" = (/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) -"bcD" = (/obj/structure/closet,/obj/item/clothing/under/suit_jacket/female{pixel_x = 3; pixel_y = 1},/obj/item/clothing/under/suit_jacket/really_black{pixel_x = -2; pixel_y = 0},/obj/structure/window{icon_state = "window"; dir = 1},/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) -"bcE" = (/obj/machinery/portable_atmospherics/pump,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"bcF" = (/obj/machinery/portable_atmospherics/scrubber,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"bcG" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"bcH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"bcI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) -"bcJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/port) -"bcK" = (/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bcL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bcM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bcN" = (/turf/closed/wall,/area/quartermaster/storage) -"bcO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) -"bcP" = (/obj/machinery/light/small{dir = 8},/obj/structure/rack,/obj/item/weapon/storage/briefcase,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bcQ" = (/turf/open/floor/carpet,/area/security/detectives_office) -"bcR" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bcS" = (/obj/machinery/firealarm{pixel_y = 24},/obj/machinery/camera{c_tag = "Detective's Office"; dir = 2},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bcT" = (/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bcU" = (/obj/machinery/light_switch{pixel_x = 27},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bcV" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) -"bcW" = (/turf/closed/wall/r_wall,/area/bridge/meeting_room) -"bcX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/bridge/meeting_room) -"bcY" = (/obj/machinery/door/airlock/command{name = "Conference Room"; req_access = null; req_access_txt = "19"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) -"bcZ" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bda" = (/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) -"bdb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bdc" = (/obj/machinery/porta_turret/ai{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bdd" = (/turf/closed/wall/r_wall,/area/crew_quarters/captain) -"bde" = (/obj/machinery/door/airlock/command{name = "Captain's Office"; req_access = null; req_access_txt = "20"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"bdf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/crew_quarters/captain) -"bdg" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) -"bdh" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdi" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdj" = (/obj/machinery/newscaster{pixel_y = -28},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdk" = (/obj/machinery/light,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdl" = (/obj/machinery/light,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdm" = (/obj/machinery/camera{c_tag = "Bar South"; dir = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdn" = (/obj/structure/noticeboard{pixel_y = -27},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdo" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdp" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdq" = (/obj/machinery/light/small,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) -"bdr" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "kitchen"; name = "kitchen shutters"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"bds" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "kitchen"; name = "kitchen shutters"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) -"bdt" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/hydroponics) -"bdu" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/hydroponics) -"bdv" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hydroponics) -"bdw" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/northleft{name = "Hydroponics Desk"; req_access_txt = "35"},/turf/open/floor/plasteel,/area/hydroponics) -"bdx" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/westright{dir = 1; name = "Hydroponics Desk"; req_access_txt = "35"},/turf/open/floor/plasteel,/area/hydroponics) -"bdy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bdz" = (/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bdA" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bdB" = (/obj/machinery/vending/coffee,/turf/open/floor/wood,/area/library) -"bdC" = (/obj/structure/chair/comfy/black{dir = 4},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/wood,/area/library) -"bdD" = (/obj/structure/table/wood,/obj/item/weapon/pen,/turf/open/floor/wood,/area/library) -"bdE" = (/obj/structure/chair/comfy/black{dir = 4},/turf/open/floor/wood,/area/library) -"bdF" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/wood,/area/library) -"bdG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/black,/area/chapel/main) -"bdH" = (/turf/open/floor/carpet{icon_state = "carpetsymbol"},/area/chapel/main) -"bdI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/chapel/main) -"bdJ" = (/obj/machinery/power/apc{dir = 8; name = "Escape Hallway APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) -"bdK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bdL" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bdM" = (/obj/machinery/door/airlock/external,/turf/open/floor/pod/light,/area/shuttle/transport) -"bdN" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"bdO" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"bdP" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/wood,/area/security/vacantoffice) -"bdQ" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/security/vacantoffice) -"bdR" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bdS" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bdT" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/power/apc{dir = 4; name = "Locker Restrooms APC"; pixel_x = 27; pixel_y = 2},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/crew_quarters/locker/locker_toilet) -"bdU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bdV" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bdW" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) -"bdX" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/stack/sheet/cardboard,/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bdY" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/electronics/apc,/obj/item/weapon/stock_parts/cell{maxcharge = 2000},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bdZ" = (/obj/effect/landmark/event_spawn,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bea" = (/obj/item/weapon/storage/secure/safe{pixel_x = -23},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"beb" = (/obj/structure/chair/comfy/brown,/obj/effect/landmark/start{name = "Detective"},/turf/open/floor/carpet,/area/security/detectives_office) -"bec" = (/obj/structure/table/wood,/obj/item/device/camera/detective,/turf/open/floor/carpet,/area/security/detectives_office) -"bed" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bee" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Detective's Office"; req_access_txt = "4"},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bef" = (/obj/machinery/photocopier,/turf/open/floor/wood,/area/bridge/meeting_room) -"beg" = (/obj/machinery/button/door{id = "heads_meeting"; name = "Security Shutters"; pixel_x = 0; pixel_y = 24},/turf/open/floor/wood,/area/bridge/meeting_room) -"beh" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/wood,/area/bridge/meeting_room) -"bei" = (/obj/machinery/camera{c_tag = "Conference Room"; dir = 2},/turf/open/floor/wood,/area/bridge/meeting_room) -"bej" = (/turf/open/floor/wood,/area/bridge/meeting_room) -"bek" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) -"bel" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) -"bem" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/wood,/area/bridge/meeting_room) -"ben" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"beo" = (/obj/structure/table,/obj/item/weapon/aiModule/reset,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bep" = (/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"beq" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"ber" = (/obj/structure/table,/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bes" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"bet" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/wood,/area/crew_quarters/captain) -"beu" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/wood,/area/crew_quarters/captain) -"bev" = (/obj/machinery/light_switch{pixel_y = 28},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/captain) -"bew" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bex" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bey" = (/obj/machinery/status_display{pixel_x = 0; pixel_y = 32},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bez" = (/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Captain's Office APC"; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/wood,/area/crew_quarters/captain) -"beA" = (/turf/open/floor/wood,/area/crew_quarters/captain) -"beB" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Diner"},/turf/open/floor/plasteel,/area/crew_quarters/bar) -"beC" = (/obj/structure/sign/barsign,/turf/closed/wall,/area/crew_quarters/bar) -"beD" = (/turf/open/floor/plasteel/white/corner{dir = 1},/area/hallway/primary/starboard) -"beE" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 2"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/white/corner{dir = 1},/area/hallway/primary/starboard) -"beF" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Hydroponics"; req_access_txt = "35"},/turf/open/floor/plasteel,/area/hydroponics) -"beG" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/library) -"beH" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/chapel/main) -"beI" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) -"beJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"beK" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) -"beL" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/escape) -"beM" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"beN" = (/obj/machinery/power/apc{dir = 8; name = "Vacant Office A APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/security/vacantoffice{name = "Vacant Office A"}) -"beO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) -"beP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/port) -"beQ" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"beR" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 28},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"beS" = (/obj/machinery/washing_machine,/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) -"beT" = (/obj/machinery/washing_machine,/obj/machinery/light,/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) -"beU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/closet/crate,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"beV" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"beW" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"beX" = (/obj/machinery/door/airlock/maintenance{name = "Detective Maintenance"; req_access_txt = "4"},/turf/open/floor/plating,/area/security/detectives_office) -"beY" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{pixel_x = 3},/obj/item/weapon/lighter,/turf/open/floor/carpet,/area/security/detectives_office) -"beZ" = (/obj/structure/table/wood,/obj/machinery/computer/security/wooden_tv,/turf/open/floor/carpet,/area/security/detectives_office) -"bfa" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/clothing/glasses/sunglasses,/turf/open/floor/carpet,/area/security/detectives_office) -"bfb" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/carpet,/area/security/detectives_office) -"bfc" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/shutters/preopen{id = "kanyewest"; layer = 2.9; name = "privacy shutters"},/turf/open/floor/plating,/area/security/detectives_office) -"bfd" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "heads_meeting"; layer = 2.9; name = "privacy shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge/meeting_room) -"bfe" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table,/turf/open/floor/wood,/area/bridge/meeting_room) -"bff" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/bridge/meeting_room) -"bfg" = (/obj/structure/chair/comfy/black,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) -"bfh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) -"bfi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/wood,/area/bridge/meeting_room) -"bfj" = (/obj/machinery/vending/snack/random,/turf/open/floor/wood,/area/bridge/meeting_room) -"bfk" = (/obj/structure/table,/obj/item/weapon/aiModule/supplied/quarantine,/obj/machinery/camera/motion{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bfl" = (/obj/machinery/holopad,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bfm" = (/obj/structure/table,/obj/item/weapon/aiModule/supplied/freeform,/obj/structure/sign/kiddieplaque{pixel_x = 32},/obj/machinery/camera/motion{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bfn" = (/obj/machinery/vending/cigarette,/turf/open/floor/wood,/area/crew_quarters/captain) -"bfo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"bfp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"bfq" = (/obj/structure/chair/comfy/brown{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bfr" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/carpet,/area/crew_quarters/captain) -"bfs" = (/obj/structure/chair/comfy/brown{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bft" = (/obj/structure/displaycase/captain,/turf/open/floor/wood,/area/crew_quarters/captain) -"bfu" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Dorm"; location = "HOP2"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bfv" = (/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = 32; pixel_y = 28},/obj/structure/sign/directions/security{dir = 1; icon_state = "direction_sec"; pixel_x = 32; pixel_y = 36},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bfw" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bfx" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bfy" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bfz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bfA" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bfB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bfC" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bfD" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bfE" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 5"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bfF" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/white/corner{dir = 4},/area/hallway/secondary/exit) -"bfG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bfH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bfI" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bfJ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bfK" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Cargo"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"bfL" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Infirmary"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"bfM" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/blue/corner{dir = 1},/area/hallway/secondary/entry) -"bfN" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bfO" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bfP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) -"bfQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bfR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/port) -"bfS" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) -"bfT" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/port) -"bfU" = (/obj/structure/rack{dir = 4},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/port) -"bfV" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) -"bfW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 1},/turf/open/floor/plating,/area/maintenance/port) -"bfX" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bfY" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bfZ" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) -"bga" = (/obj/machinery/camera{c_tag = "Locker Room South"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) -"bgb" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/obj/structure/closet/crate/freezer,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bgc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bgd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bge" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/quartermaster/storage) -"bgf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/power/apc{dir = 4; name = "Detective's Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/port) -"bgg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/detectives_office) -"bgh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bgi" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bgj" = (/obj/machinery/light/small,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bgk" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/filingcabinet,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) -"bgl" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bgm" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "heads_meeting"; layer = 2.9; name = "privacy shutters"},/turf/open/floor/plating,/area/bridge/meeting_room) -"bgn" = (/obj/item/weapon/hand_labeler,/obj/item/device/assembly/timer,/obj/structure/table,/turf/open/floor/wood,/area/bridge/meeting_room) -"bgo" = (/obj/structure/chair/comfy/black{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) -"bgp" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Command)"; pixel_x = 0},/turf/open/floor/carpet,/area/bridge/meeting_room) -"bgq" = (/obj/item/weapon/book/manual/wiki/security_space_law,/obj/structure/table/wood,/turf/open/floor/carpet,/area/bridge/meeting_room) -"bgr" = (/obj/structure/chair/comfy/black{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/bridge/meeting_room) -"bgs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) -"bgt" = (/obj/machinery/vending/cola/random,/turf/open/floor/wood,/area/bridge/meeting_room) -"bgu" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bgv" = (/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/ai_upload) -"bgw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) -"bgx" = (/obj/machinery/computer/arcade,/turf/open/floor/wood,/area/crew_quarters/captain) -"bgy" = (/obj/structure/table/wood,/turf/open/floor/carpet,/area/crew_quarters/captain) -"bgz" = (/obj/machinery/camera{c_tag = "Central Hallway East"; dir = 4; network = list("SS13")},/obj/structure/disposalpipe/segment,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) -"bgA" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgB" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgD" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgE" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgH" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgJ" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=HOP2"; location = "Stbd"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgK" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bgL" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bgM" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bgN" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bgO" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bgP" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Cargo Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) -"bgQ" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/hallway/secondary/exit) -"bgR" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Cargo Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) -"bgS" = (/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"bgT" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"bgU" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"bgV" = (/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"bgW" = (/turf/closed/wall,/area/maintenance/disposal) -"bgX" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/maintenance/disposal) -"bgY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/disposal) -"bgZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) -"bha" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) -"bhb" = (/obj/machinery/door/airlock{name = "Unit 3"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bhc" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bhd" = (/obj/item/latexballon,/turf/open/floor/plating,/area/maintenance/port) -"bhe" = (/obj/effect/landmark{name = "blobstart"},/obj/item/clothing/suit/ianshirt,/obj/structure/closet,/turf/open/floor/plating,/area/maintenance/port) -"bhf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/locker) -"bhg" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) -"bhh" = (/obj/structure/closet/crate/internals,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bhi" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bhj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bhk" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bhl" = (/obj/structure/disposalpipe/segment,/turf/closed/wall/r_wall,/area/security/detectives_office) -"bhm" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bhn" = (/obj/item/weapon/storage/fancy/donut_box,/obj/structure/table,/turf/open/floor/wood,/area/bridge/meeting_room) -"bho" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/structure/table/wood,/turf/open/floor/carpet,/area/bridge/meeting_room) -"bhp" = (/obj/item/weapon/folder/blue,/obj/structure/table/wood,/turf/open/floor/carpet,/area/bridge/meeting_room) -"bhq" = (/obj/structure/table,/obj/item/weapon/aiModule/core/full/asimov,/obj/item/weapon/aiModule/core/freeformcore,/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Core Modules"; req_access_txt = "20"},/obj/structure/window/reinforced,/obj/item/weapon/aiModule/core/full/corp,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/aiModule/core/full/custom,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bhr" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bhs" = (/obj/machinery/computer/upload/ai,/obj/machinery/flasher{id = "AI"; pixel_x = 0; pixel_y = -21},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) -"bht" = (/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "Upload APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) -"bhu" = (/obj/machinery/computer/upload/borg,/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1447; listening = 0; name = "Station Intercom (AI Private)"; pixel_y = -29},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) -"bhv" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bhw" = (/obj/structure/table,/obj/item/weapon/aiModule/supplied/oxygen,/obj/item/weapon/aiModule/zeroth/oneHuman,/obj/machinery/door/window{base_state = "left"; dir = 8; icon_state = "left"; name = "High-Risk Modules"; req_access_txt = "20"},/obj/item/weapon/aiModule/reset/purge,/obj/structure/window/reinforced,/obj/item/weapon/aiModule/core/full/antimov,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/aiModule/supplied/protectStation,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) -"bhx" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/wood,/area/crew_quarters/captain) -"bhy" = (/obj/structure/chair,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"bhz" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/wood,/area/crew_quarters/captain) -"bhA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bhB" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bhC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bhD" = (/obj/structure/table/wood,/obj/machinery/camera{c_tag = "Captain's Office"; dir = 8},/obj/item/weapon/storage/lockbox/medal{pixel_y = 0},/turf/open/floor/wood,/area/crew_quarters/captain) -"bhE" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) -"bhF" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Stbd"; location = "HOP"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bhG" = (/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_x = 32; pixel_y = -24},/obj/structure/sign/directions/science{dir = 4; icon_state = "direction_sci"; pixel_x = 32; pixel_y = -32},/obj/structure/sign/directions/engineering{pixel_x = 32; pixel_y = -40},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bhH" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bhI" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/starboard) -"bhJ" = (/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/starboard) -"bhK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/starboard) -"bhL" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/starboard) -"bhM" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bhN" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/obj/machinery/light,/turf/open/floor/plasteel/white/corner{dir = 2},/area/hallway/primary/starboard) -"bhO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 2},/area/hallway/primary/starboard) -"bhP" = (/turf/open/floor/plasteel/white/corner{dir = 8},/area/hallway/primary/starboard) -"bhQ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bhR" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 3"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bhS" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bhT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bhU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bhV" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bhW" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 4"; dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bhX" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/secondary/exit) -"bhY" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel/escape{dir = 2},/area/hallway/secondary/exit) -"bhZ" = (/obj/machinery/newscaster{pixel_y = -32},/obj/machinery/light,/turf/open/floor/plasteel/escape{dir = 2},/area/hallway/secondary/exit) -"bia" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/corner{dir = 8},/area/hallway/secondary/exit) -"bib" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"bic" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Port Docking Bay 4"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) -"bid" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Port Docking Bay 3"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) -"bie" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/chair{dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"bif" = (/obj/structure/chair{dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"big" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) -"bih" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) -"bii" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/disposal) -"bij" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/obj/machinery/recycler,/obj/structure/sign/securearea{name = "\improper STAY CLEAR HEAVY MACHINERY"; pixel_y = 32},/turf/open/floor/plating,/area/maintenance/disposal) -"bik" = (/obj/machinery/conveyor{dir = 6; id = "garbage"; verted = -1},/turf/open/floor/plating,/area/maintenance/disposal) -"bil" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/port) -"bim" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bin" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bio" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bip" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/port) -"biq" = (/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bir" = (/obj/machinery/camera{c_tag = "Locker Room Toilets"; dir = 8; network = list("SS13")},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bis" = (/obj/machinery/power/apc{dir = 1; name = "Locker Room APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/crew_quarters/locker) -"bit" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"biu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) -"biv" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) -"biw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) -"bix" = (/obj/structure/closet/crate/medical,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"biy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/stack/sheet/cardboard,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"biz" = (/obj/item/clothing/gloves/color/rainbow,/obj/item/clothing/head/soft/rainbow,/obj/item/clothing/shoes/sneakers/rainbow,/obj/item/clothing/under/color/rainbow,/turf/open/floor/plating,/area/maintenance/port) -"biA" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) -"biB" = (/obj/machinery/conveyor{dir = 4; id = "packageSort2"},/turf/open/floor/plating,/area/quartermaster/office) -"biC" = (/obj/machinery/conveyor{dir = 4; id = "packageSort2"},/obj/structure/plasticflaps,/turf/open/floor/plating,/area/quartermaster/office) -"biD" = (/obj/machinery/disposal/deliveryChute{dir = 8},/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating,/area/quartermaster/office) -"biE" = (/turf/closed/wall,/area/quartermaster/office) -"biF" = (/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) -"biG" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge RC"; pixel_y = -30},/obj/machinery/light,/turf/open/floor/wood,/area/bridge/meeting_room) -"biH" = (/turf/open/floor/carpet,/area/bridge/meeting_room) -"biI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/bridge/meeting_room) -"biJ" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) -"biK" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) -"biL" = (/obj/structure/noticeboard{dir = 8; pixel_x = 27; pixel_y = 0},/turf/open/floor/wood,/area/bridge/meeting_room) -"biM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"biN" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"biO" = (/obj/machinery/ai_status_display,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"biP" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"biQ" = (/obj/machinery/status_display{density = 0; layer = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"biR" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"biS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) -"biT" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/wood,/area/crew_quarters/captain) -"biU" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/captain,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"biV" = (/obj/structure/table/wood,/obj/item/weapon/hand_tele,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"biW" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/wood,/area/crew_quarters/captain) -"biX" = (/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/crew_quarters/captain) -"biY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/wood,/area/crew_quarters/captain) -"biZ" = (/obj/structure/table/wood,/obj/item/weapon/pinpointer,/obj/item/weapon/disk/nuclear,/obj/item/weapon/storage/secure/safe{pixel_x = 35; pixel_y = 5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/wood,/area/crew_quarters/captain) -"bja" = (/turf/closed/wall,/area/medical/chemistry) -"bjb" = (/obj/structure/sign/bluecross_2,/turf/closed/wall,/area/medical/medbay) -"bjc" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/medbay) -"bjd" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bje" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bjf" = (/turf/closed/wall,/area/security/checkpoint/medical) -"bjg" = (/turf/closed/wall,/area/medical/morgue) -"bjh" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) -"bji" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bjj" = (/obj/machinery/power/apc{dir = 2; name = "Starboard Primary Hallway APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel,/area/hallway/primary/starboard) -"bjk" = (/turf/closed/wall,/area/storage/emergency) -"bjl" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bjm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/assembly/chargebay) -"bjn" = (/turf/open/floor/plasteel/loadingarea{dir = 1},/area/hallway/primary/starboard) -"bjo" = (/turf/closed/wall/r_wall,/area/assembly/robotics) -"bjp" = (/turf/open/floor/plasteel/purple/side{dir = 10},/area/hallway/primary/starboard) -"bjq" = (/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) -"bjr" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) -"bjs" = (/obj/structure/sign/securearea{pixel_x = 0; pixel_y = -32},/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) -"bjt" = (/obj/machinery/light,/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) -"bju" = (/turf/open/floor/plasteel/purple/side{dir = 6},/area/hallway/primary/starboard) -"bjv" = (/turf/closed/wall/r_wall,/area/toxins/lab) -"bjw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/escape{dir = 10},/area/hallway/secondary/exit) -"bjx" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/escape{dir = 2},/area/hallway/secondary/exit) -"bjy" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bjz" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/hallway/secondary/exit) -"bjA" = (/obj/structure/closet,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"bjB" = (/obj/structure/closet/crate,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"bjC" = (/obj/machinery/camera{c_tag = "Arrivals Bay 3 & 4"; dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"bjD" = (/obj/machinery/vending/cigarette,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/hallway/secondary/entry) -"bjE" = (/obj/machinery/conveyor{dir = 5; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) -"bjF" = (/obj/machinery/conveyor{dir = 4; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) -"bjG" = (/obj/machinery/conveyor{dir = 10; id = "garbage"; verted = -1},/turf/open/floor/plating,/area/maintenance/disposal) -"bjH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/closed/wall,/area/maintenance/disposal) -"bjI" = (/obj/machinery/power/apc{dir = 8; name = "Disposal APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) -"bjJ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bjK" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bjL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) -"bjM" = (/obj/machinery/door/airlock{name = "Unit 4"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bjN" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) -"bjO" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/port) -"bjP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/port) -"bjQ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bjR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bjS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) -"bjT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bjU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/power/apc{dir = 2; name = "Cargo Bay APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/port) -"bjV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/maintenance/port) -"bjW" = (/obj/structure/closet/cardboard,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bjX" = (/obj/machinery/button/door{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "31"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/closet/crate,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bjY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/closet/crate,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) -"bjZ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/closed/wall,/area/quartermaster/storage) -"bka" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/closed/wall,/area/quartermaster/office) -"bkb" = (/obj/machinery/conveyor_switch/oneway{id = "packageSort2"},/obj/machinery/camera{c_tag = "Cargo Delivery Office"; dir = 4; network = list("SS13")},/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) -"bkc" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) -"bkd" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) -"bke" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) -"bkf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced{dir = 1; layer = 2.9},/obj/structure/filingcabinet/filingcabinet,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) -"bkg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/quartermaster/office) -"bkh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) -"bki" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bkj" = (/obj/machinery/camera{c_tag = "Central Hallway West"; dir = 8},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) -"bkk" = (/obj/machinery/door/window/eastright{dir = 1; name = "Bridge Delivery"; req_access_txt = "19"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/bridge/meeting_room) -"bkl" = (/turf/closed/wall,/area/bridge/meeting_room) -"bkm" = (/obj/structure/reagent_dispensers/water_cooler,/turf/open/floor/wood,/area/bridge/meeting_room) -"bkn" = (/obj/machinery/computer/slot_machine,/turf/open/floor/wood,/area/bridge/meeting_room) -"bko" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -32},/turf/open/floor/wood,/area/bridge/meeting_room) -"bkp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) -"bkq" = (/obj/machinery/vending/coffee,/obj/machinery/light{dir = 4},/turf/open/floor/wood,/area/bridge/meeting_room) -"bkr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"bks" = (/turf/open/floor/plasteel/black,/area/engine/gravity_generator) -"bkt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"bku" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Captain's Desk"; departmentType = 5; name = "Captain RC"; pixel_x = -30; pixel_y = 0},/obj/structure/filingcabinet,/turf/open/floor/wood,/area/crew_quarters/captain) -"bkv" = (/obj/structure/chair/comfy/brown{dir = 4},/obj/effect/landmark/start{name = "Captain"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"bkw" = (/obj/machinery/computer/communications,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"bkx" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/coin/plasma,/turf/open/floor/wood,/area/crew_quarters/captain) -"bky" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/holopad,/turf/open/floor/wood,/area/crew_quarters/captain) -"bkz" = (/obj/structure/table/wood,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/device/camera,/obj/item/weapon/storage/photo_album{pixel_y = -10},/turf/open/floor/wood,/area/crew_quarters/captain) -"bkA" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bkB" = (/obj/structure/closet/secure_closet/chemical,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bkC" = (/obj/machinery/power/apc{dir = 1; name = "Chemistry APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/mob/living/simple_animal/bot/cleanbot{name = "C.L.E.A.N."},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bkD" = (/obj/machinery/camera{c_tag = "Chemistry"; dir = 2; network = list("SS13")},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/chem_heater,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bkE" = (/obj/machinery/chem_dispenser,/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/chemistry) -"bkF" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/whiteyellow/side{dir = 5},/area/medical/chemistry) -"bkG" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bkH" = (/obj/structure/chair,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bkI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bkJ" = (/turf/open/floor/plasteel/white,/area/medical/medbay) -"bkK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/medical) -"bkL" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Doors Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 26; req_access_txt = "5"},/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/medical) -"bkM" = (/obj/machinery/camera{c_tag = "Security Post - Medbay"; dir = 2; network = list("SS13")},/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/medical) -"bkN" = (/obj/structure/filingcabinet,/obj/machinery/newscaster{pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/medical) -"bkO" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bkP" = (/turf/open/floor/plasteel/black,/area/medical/morgue) -"bkQ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bkR" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bkS" = (/obj/machinery/power/apc{dir = 1; name = "Morgue APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bkT" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bkU" = (/obj/machinery/door/airlock{name = "Starboard Emergency Storage"; req_access_txt = "0"},/turf/open/floor/plating,/area/storage/emergency) -"bkV" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bkW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/assembly/chargebay) -"bkX" = (/turf/closed/wall/r_wall,/area/assembly/chargebay) -"bkY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Mech Bay"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bkZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters{id = "Skynet_launch"; name = "mech bay"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/assembly/chargebay) -"bla" = (/obj/machinery/computer/rdconsole/robotics,/obj/machinery/airalarm{pixel_y = 25},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"blb" = (/obj/structure/table,/obj/item/weapon/book/manual/robotics_cyborgs{pixel_x = 2; pixel_y = 5},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics RC"; pixel_y = 30},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"blc" = (/obj/machinery/r_n_d/circuit_imprinter,/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bld" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/assembly/robotics) -"ble" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{base_state = "left"; dir = 2; icon_state = "left"; name = "Robotics Desk"; req_access_txt = "29"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/turf/open/floor/plating,/area/assembly/robotics) -"blf" = (/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) -"blg" = (/obj/machinery/door/airlock/research{cyclelinkeddir = 2; name = "Research Division Access"; req_access_txt = "47"},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"blh" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd"; name = "research lab shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/lab) -"bli" = (/obj/structure/table/reinforced,/obj/machinery/door/window/southright{name = "Research and Development Desk"; req_access_txt = "7"},/obj/machinery/door/poddoor/shutters/preopen{id = "rnd"; name = "research lab shutters"},/turf/open/floor/plating,/area/toxins/lab) -"blj" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/clothing/glasses/welding,/turf/open/floor/plasteel/white,/area/toxins/lab) -"blk" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bll" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"blm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/asmaint2) -"bln" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) -"blo" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Port Docking Bay 4"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) -"blp" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Port Docking Bay 3"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) -"blq" = (/obj/machinery/conveyor{dir = 1; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) -"blr" = (/obj/structure/disposalpipe/trunk{dir = 2},/obj/machinery/disposal/deliveryChute{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; layer = 3},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) -"bls" = (/obj/machinery/mineral/stacking_machine{input_dir = 1; stack_amt = 10},/turf/open/floor/plating,/area/maintenance/disposal) -"blt" = (/obj/machinery/mineral/stacking_unit_console{dir = 2; machinedir = 8},/turf/closed/wall,/area/maintenance/disposal) -"blu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/port) -"blv" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) -"blw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/port) -"blx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/locker/locker_toilet) -"bly" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window{icon_state = "window"; dir = 8},/turf/open/floor/plating,/area/maintenance/port) -"blz" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window{icon_state = "window"; dir = 1},/obj/structure/window,/turf/open/floor/plating,/area/maintenance/port) -"blA" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window,/turf/open/floor/plating,/area/maintenance/port) -"blB" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"blC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) -"blD" = (/obj/machinery/door/poddoor/shutters{id = "qm_warehouse"; name = "warehouse shutters"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/quartermaster/storage) -"blE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/quartermaster/storage) -"blF" = (/obj/structure/disposalpipe/wrapsortjunction{dir = 1},/turf/closed/wall,/area/quartermaster/storage) -"blG" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) -"blH" = (/obj/machinery/door/window/eastleft{dir = 4; icon_state = "right"; name = "Mail"; req_access_txt = "50"},/turf/open/floor/plating,/area/quartermaster/office) -"blI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/office) -"blJ" = (/turf/open/floor/plasteel,/area/quartermaster/office) -"blK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"blL" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/yellow,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/quartermaster/office) -"blM" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/office) -"blN" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) -"blO" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; dir = 1; freq = 1400; location = "Bridge"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/bridge/meeting_room) -"blP" = (/obj/machinery/vending/cigarette,/turf/open/floor/wood,/area/bridge/meeting_room) -"blQ" = (/turf/open/floor/plasteel/vault{dir = 1},/area/engine/gravity_generator) -"blR" = (/turf/open/floor/plasteel/vault{dir = 8},/area/engine/gravity_generator) -"blS" = (/turf/open/floor/plasteel/vault{dir = 4},/area/engine/gravity_generator) -"blT" = (/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Command)"; pixel_x = -28},/obj/machinery/suit_storage_unit/captain,/turf/open/floor/wood,/area/crew_quarters/captain) -"blU" = (/obj/machinery/computer/card,/obj/item/weapon/card/id/captains_spare,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"blV" = (/obj/structure/table/wood,/obj/machinery/recharger,/obj/item/weapon/melee/chainofcommand,/turf/open/floor/wood,/area/crew_quarters/captain) -"blW" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/machinery/requests_console{department = "Chemistry"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"blX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"blY" = (/turf/open/floor/plasteel/white,/area/medical/chemistry) -"blZ" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Chemist"},/turf/open/floor/plasteel/whiteyellow/side{dir = 4},/area/medical/chemistry) -"bma" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{dir = 8; name = "Chemistry Desk"; req_access_txt = "33"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/medical/chemistry) -"bmb" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bmc" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start/depsec/medical,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/medical) -"bmd" = (/turf/open/floor/plasteel,/area/security/checkpoint/medical) -"bme" = (/obj/machinery/computer/secure_data,/obj/item/device/radio/intercom{pixel_x = 25},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/medical) -"bmf" = (/obj/structure/bodycontainer/morgue,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bmg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) -"bmh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bmi" = (/turf/open/floor/plating,/area/storage/emergency) -"bmj" = (/obj/machinery/light/small{dir = 1},/obj/item/weapon/extinguisher,/turf/open/floor/plating,/area/storage/emergency) -"bmk" = (/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plating,/area/storage/emergency) -"bml" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/apc{dir = 4; name = "Mech Bay APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/assembly/chargebay) -"bmm" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bmn" = (/turf/open/floor/plasteel,/area/assembly/chargebay) -"bmo" = (/obj/machinery/button/door{dir = 2; id = "Skynet_launch"; name = "Mech Bay Door Control"; pixel_x = 6; pixel_y = 24},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bmp" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bmq" = (/obj/machinery/power/apc{dir = 8; name = "Robotics Lab APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bmr" = (/obj/structure/chair/office/light{dir = 1},/obj/effect/landmark/start{name = "Roboticist"},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bms" = (/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bmt" = (/obj/machinery/camera{c_tag = "Robotics Lab"; dir = 2; network = list("SS13","RD")},/obj/machinery/button/door{dir = 2; id = "robotics"; name = "Shutters Control Button"; pixel_x = 6; pixel_y = 24; req_access_txt = "29"},/turf/open/floor/plasteel/whitered/corner{dir = 4},/area/assembly/robotics) -"bmu" = (/turf/open/floor/plasteel/whitered/side{dir = 1},/area/assembly/robotics) -"bmv" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/assembly/robotics) -"bmw" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/assembly/robotics) -"bmx" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bmy" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bmz" = (/obj/machinery/camera{c_tag = "Research Division Access"; dir = 2; network = list("SS13")},/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bmA" = (/turf/open/floor/plasteel/whitepurple/side{dir = 1},/area/toxins/lab) -"bmB" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/whitepurple/side{dir = 1},/area/toxins/lab) -"bmC" = (/obj/machinery/camera{c_tag = "Research and Development"; dir = 2; network = list("SS13","RD"); pixel_x = 0},/obj/machinery/button/door{dir = 2; id = "rnd"; name = "Shutters Control Button"; pixel_x = -6; pixel_y = 24; req_access_txt = "47"},/turf/open/floor/plasteel/whitepurple/corner{dir = 1},/area/toxins/lab) -"bmD" = (/turf/open/floor/plasteel/white,/area/toxins/lab) -"bmE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bmF" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) -"bmG" = (/turf/closed/wall/mineral/titanium,/area/shuttle/abandoned) -"bmH" = (/obj/machinery/door/airlock/titanium,/obj/docking_port/mobile{dheight = 0; dir = 2; dwidth = 11; height = 22; id = "whiteship"; launch_status = 0; name = "NT Medical Ship"; port_angle = -90; preferred_direction = 4; roundstart_move = "whiteship_away"; timid = null; width = 35},/obj/docking_port/stationary{dir = 2; dwidth = 11; height = 22; id = "whiteship_home"; name = "SS13 Arrival Docking"; turf_type = /turf/open/space; width = 35},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bmI" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bmJ" = (/obj/machinery/conveyor{dir = 1; id = "garbage"},/obj/structure/sign/vacuum{pixel_x = -32},/turf/open/floor/plating,/area/maintenance/disposal) -"bmK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/disposal) -"bmL" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/disposal) -"bmM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/disposal) -"bmN" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) -"bmO" = (/obj/machinery/door/airlock/maintenance{name = "Disposal Access"; req_access_txt = "12"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) -"bmP" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bmQ" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/port) -"bmR" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/port) -"bmS" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bmT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bmU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bmV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) -"bmW" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) -"bmX" = (/obj/structure/table,/obj/item/clothing/head/soft,/obj/item/clothing/head/soft,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bmY" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/weapon/hand_labeler,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = 0; pixel_y = 30},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bmZ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bna" = (/obj/machinery/camera{c_tag = "Cargo Bay North"},/obj/structure/closet/wardrobe/cargotech,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bnb" = (/turf/open/floor/plasteel,/area/quartermaster/storage) -"bnc" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bnd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bne" = (/obj/machinery/button/door{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = -1; pixel_y = 24; req_access_txt = "31"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bnf" = (/obj/machinery/photocopier,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel,/area/quartermaster/office) -"bng" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel,/area/quartermaster/office) -"bnh" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/quartermaster/office) -"bni" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/machinery/airalarm{dir = 4; locked = 0; pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel,/area/quartermaster/office) -"bnj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) -"bnk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) -"bnl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/chair{dir = 4},/obj/effect/landmark/start{name = "Cargo Technician"},/turf/open/floor/plasteel,/area/quartermaster/office) -"bnm" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/item/weapon/hand_labeler,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) -"bnn" = (/obj/machinery/door/firedoor,/obj/machinery/door/window/westleft{name = "Delivery Desk"; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/office) -"bno" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) -"bnp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bnq" = (/turf/closed/wall/r_wall,/area/maintenance/maintcentral) -"bnr" = (/turf/open/floor/plating,/area/maintenance/maintcentral) -"bns" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/maintcentral) -"bnt" = (/obj/machinery/power/apc{dir = 1; name = "Bridge Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/maintcentral) -"bnu" = (/obj/structure/closet/wardrobe/black,/turf/open/floor/plating,/area/maintenance/maintcentral) -"bnv" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) -"bnw" = (/obj/machinery/newscaster/security_unit{pixel_x = -32; pixel_y = 0},/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) -"bnx" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Captain's Desk Door"; req_access_txt = "20"},/turf/open/floor/wood,/area/crew_quarters/captain) -"bny" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/wood,/area/crew_quarters/captain) -"bnz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/wood,/area/crew_quarters/captain) -"bnA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/wood,/area/crew_quarters/captain) -"bnB" = (/obj/structure/table/glass,/obj/machinery/reagentgrinder,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bnC" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bnD" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bnE" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/dropper,/turf/open/floor/plasteel/whiteyellow/side{dir = 4},/area/medical/chemistry) -"bnF" = (/obj/machinery/smartfridge/chemistry,/turf/open/floor/plating,/area/medical/chemistry) -"bnG" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bnH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/whiteblue/corner{dir = 2},/area/medical/medbay) -"bnI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) -"bnJ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) -"bnK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) -"bnL" = (/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) -"bnM" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/medical) -"bnN" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint/medical) -"bnO" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/medical) -"bnP" = (/obj/machinery/camera{c_tag = "Medbay Morgue"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bnQ" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/storage/emergency) -"bnR" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/storage/emergency) -"bnS" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/storage/emergency) -"bnT" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/turf/open/floor/plating,/area/storage/emergency) -"bnU" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/bluegrid,/area/assembly/chargebay) -"bnV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/bluegrid,/area/assembly/chargebay) -"bnW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bnX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bnY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_research{name = "Robotics Lab"; req_access_txt = "29"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bnZ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"boa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bob" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"boc" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = 6},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/obj/item/clothing/glasses/welding,/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bod" = (/obj/structure/closet/firecloset,/obj/machinery/light{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"boe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bof" = (/obj/machinery/shower{dir = 8},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bog" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = -30; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/lab) -"boh" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/toxins/lab) -"boi" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/lab) -"boj" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bok" = (/turf/closed/wall,/area/maintenance/asmaint2) -"bol" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_l"},/turf/open/floor/plating/airless,/area/shuttle/abandoned) -"bom" = (/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bon" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"boo" = (/obj/structure/table,/obj/item/weapon/screwdriver,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bop" = (/obj/machinery/conveyor{dir = 1; id = "garbage"; layer = 2.5},/obj/machinery/door/poddoor/preopen{id = "Disposal Exit"; layer = 3; name = "disposal exit vent"},/turf/open/floor/plating,/area/maintenance/disposal) -"boq" = (/obj/machinery/button/door{id = "Disposal Exit"; name = "Disposal Vent Control"; pixel_x = -25; pixel_y = 4; req_access_txt = "12"},/obj/machinery/button/massdriver{id = "trash"; pixel_x = -26; pixel_y = -6},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/disposal) -"bor" = (/turf/open/floor/plating,/area/maintenance/disposal) -"bos" = (/obj/effect/decal/cleanable/oil,/obj/machinery/light_switch{pixel_x = 25; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/disposal) -"bot" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/port) -"bou" = (/turf/closed/wall/r_wall,/area/maintenance/port) -"bov" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/port) -"bow" = (/obj/machinery/door/airlock/maintenance{name = "Cargo Bay Maintenance"; req_access_txt = "31"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/quartermaster/storage) -"box" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/quartermaster/storage) -"boy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) -"boz" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/storage) -"boA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/quartermaster/office) -"boB" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) -"boC" = (/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 2},/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) -"boD" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Cargo Office"; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/office) -"boE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) -"boF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"boG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/quartermaster/office) -"boH" = (/obj/structure/table/reinforced,/obj/item/device/destTagger,/obj/item/device/destTagger,/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel,/area/quartermaster/office) -"boI" = (/obj/structure/table/reinforced,/obj/item/stack/wrapping_paper{pixel_x = 3; pixel_y = 4},/obj/item/stack/packageWrap{pixel_x = -1; pixel_y = -1},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -26},/turf/open/floor/plasteel,/area/quartermaster/office) -"boJ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) -"boK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) -"boL" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/maintcentral) -"boM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/maintcentral) -"boN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/power/apc{dir = 2; name = "Head of Personnel APC"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/crew_quarters/heads) -"boO" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/maintcentral) -"boP" = (/obj/machinery/power/apc{dir = 4; name = "Conference Room APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/bridge/meeting_room) -"boQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"boR" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) -"boS" = (/obj/machinery/gravity_generator/main/station,/turf/open/floor/plasteel/vault{dir = 8},/area/engine/gravity_generator) -"boT" = (/obj/machinery/camera{c_tag = "Gravity Generator Room"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) -"boU" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"boV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/crew_quarters/captain) -"boW" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/captain) -"boX" = (/obj/machinery/door/airlock/maintenance{name = "Captain's Office Maintenance"; req_access_txt = "20"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/crew_quarters/captain) -"boY" = (/obj/structure/disposalpipe/segment,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"boZ" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/syringes,/obj/item/clothing/glasses/science{pixel_x = 2; pixel_y = 4},/obj/item/clothing/glasses/science,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bpa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bpb" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bpc" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Chemistry Desk"; req_access_txt = "33"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/medical/chemistry) -"bpd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bpe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/medical/medbay) -"bpf" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bpg" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/britcup{desc = "Kingston's personal cup."},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bph" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bpi" = (/obj/structure/table/reinforced,/obj/machinery/camera{c_tag = "Medbay Foyer"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/cell_charger,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bpj" = (/obj/machinery/power/apc{dir = 8; name = "Medbay Security APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/medical) -"bpk" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/checkpoint/medical) -"bpl" = (/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/medical) -"bpm" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable,/turf/open/floor/plating,/area/assembly/chargebay) -"bpn" = (/turf/open/floor/mech_bay_recharge_floor,/area/assembly/chargebay) -"bpo" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/bluegrid,/area/assembly/chargebay) -"bpp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) -"bpq" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bpr" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/assembly/robotics) -"bps" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/device/multitool{pixel_x = 3},/obj/item/device/multitool{pixel_x = 3},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/assembly/robotics) -"bpt" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/assembly/robotics) -"bpu" = (/obj/machinery/mecha_part_fabricator,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/assembly/robotics) -"bpv" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bpw" = (/obj/machinery/ai_status_display{pixel_x = 32; pixel_y = 0},/obj/structure/table,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bpx" = (/obj/structure/closet/firecloset,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bpy" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bpz" = (/obj/machinery/r_n_d/destructive_analyzer,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/lab) -"bpA" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/lab) -"bpB" = (/obj/machinery/r_n_d/protolathe,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/lab) -"bpC" = (/obj/structure/disposalpipe/segment,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bpD" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/toxins/lab) -"bpE" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/beaker/large{pixel_x = -3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 8; pixel_y = 2},/obj/item/weapon/reagent_containers/dropper,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bpF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bpG" = (/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bpH" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bpI" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/item/weapon/cigbutt,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bpJ" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bpK" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion"},/turf/open/floor/plating/airless,/area/shuttle/abandoned) -"bpL" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/shuttle/abandoned) -"bpM" = (/turf/open/floor/plating,/turf/closed/wall/mineral/titanium/interior,/area/shuttle/abandoned) -"bpN" = (/obj/machinery/computer/pod{id = "oldship_gun"},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bpO" = (/obj/machinery/light/small{dir = 8},/obj/machinery/mass_driver{id = "trash"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/disposal) -"bpP" = (/obj/machinery/conveyor_switch/oneway{convdir = -1; id = "garbage"; name = "disposal coveyor"},/turf/open/floor/plating,/area/maintenance/disposal) -"bpQ" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/disposal) -"bpR" = (/obj/structure/closet,/turf/open/floor/plating,/area/maintenance/disposal) -"bpS" = (/turf/closed/wall/mineral/titanium,/area/shuttle/supply) -"bpT" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/storage) -"bpU" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bpV" = (/obj/structure/closet/emcloset,/obj/machinery/airalarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bpW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bpX" = (/obj/machinery/light{dir = 1},/obj/machinery/firealarm{pixel_y = 27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bpY" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bpZ" = (/mob/living/simple_animal/sloth/paperwork,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bqa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bqb" = (/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"; req_access_txt = "31"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bqc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/office) -"bqd" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/office) -"bqe" = (/obj/machinery/status_display{density = 0; pixel_y = 2; supply_display = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/quartermaster/office) -"bqf" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) -"bqg" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/quartermaster/office) -"bqh" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Delivery Office"; req_access_txt = "50"},/turf/open/floor/plasteel,/area/quartermaster/office) -"bqi" = (/obj/machinery/light{dir = 8},/obj/machinery/door/firedoor,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) -"bqj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bqk" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/maintcentral) -"bql" = (/turf/closed/wall,/area/crew_quarters/heads) -"bqm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/heads) -"bqn" = (/obj/machinery/door/airlock/command{name = "Head of Personnel"; req_access = null; req_access_txt = "57"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/heads) -"bqo" = (/turf/closed/wall/r_wall,/area/crew_quarters/heads) -"bqp" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) -"bqq" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) -"bqr" = (/obj/machinery/light/small{dir = 1},/obj/structure/dresser,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bqs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bqt" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/crew_quarters/captain) -"bqu" = (/obj/machinery/door/airlock{name = "Private Restroom"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) -"bqv" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 28},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) -"bqw" = (/turf/closed/wall,/area/crew_quarters/captain) -"bqx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/crew_quarters/captain) -"bqy" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bqz" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bqA" = (/obj/structure/table/glass,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bqB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bqC" = (/obj/structure/disposalpipe/segment,/obj/machinery/chem_heater,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bqD" = (/obj/machinery/chem_dispenser,/turf/open/floor/plasteel/whiteyellow/side{dir = 2},/area/medical/chemistry) -"bqE" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/whiteyellow/side{dir = 6},/area/medical/chemistry) -"bqF" = (/obj/item/device/radio/intercom{broadcasting = 1; freerange = 0; frequency = 1485; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -30},/obj/machinery/light,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bqG" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bqH" = (/obj/structure/chair/office/light{dir = 8},/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Doors Control"; normaldoorcontrol = 1; pixel_x = -26; req_access_txt = "5"},/obj/effect/landmark/start{name = "Medical Doctor"},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bqI" = (/obj/structure/chair/office/light{dir = 1},/obj/structure/sign/nosmoking_2{pixel_x = 28},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bqJ" = (/obj/structure/closet,/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/medical) -"bqK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/medical) -"bqL" = (/obj/machinery/light_switch{pixel_x = 28; pixel_y = 0},/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/device/radio/off,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/medical) -"bqM" = (/obj/structure/table,/obj/item/weapon/paper/morguereminder{pixel_x = 5; pixel_y = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bqN" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bqO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bqP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) -"bqQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bqR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/medical/morgue) -"bqS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Morgue Maintenance"; req_access_txt = "6"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/morgue) -"bqT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bqU" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/power/apc{dir = 1; name = "Starboard Emergency Storage APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/storage/emergency) -"bqV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/sortjunction{sortType = 9},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bqW" = (/obj/machinery/light{dir = 8},/obj/machinery/camera{c_tag = "Mech Bay"; dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bqX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bqY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bqZ" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bra" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/assembly/robotics) -"brb" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/cable_coil,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/robotics) -"brc" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Roboticist"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/robotics) -"brd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/assembly/robotics) -"bre" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"brf" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/assembly/robotics) -"brg" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"brh" = (/obj/machinery/door/airlock/research{cyclelinkeddir = 1; name = "Research Division Access"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bri" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) -"brj" = (/obj/machinery/computer/rdconsole/core,/turf/open/floor/plasteel,/area/toxins/lab) -"brk" = (/turf/open/floor/plasteel,/area/toxins/lab) -"brl" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/open/floor/plasteel,/area/toxins/lab) -"brm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/toxins/lab) -"brn" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/micro_laser,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bro" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"brp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"brq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"brr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint2) -"brs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/maintenance/asmaint2) -"brt" = (/turf/open/floor/plating,/area/shuttle/abandoned) -"bru" = (/turf/open/floor/mineral/titanium,/turf/closed/wall/mineral/titanium/interior,/area/shuttle/abandoned) -"brv" = (/obj/structure/rack,/obj/item/clothing/suit/space/hardsuit/medical,/obj/item/clothing/mask/breath,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"brw" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plating,/area/shuttle/abandoned) -"brx" = (/obj/machinery/mass_driver{dir = 4; icon_state = "mass_driver"; id = "oldship_gun"},/turf/open/floor/plating,/area/shuttle/abandoned) -"bry" = (/obj/machinery/door/poddoor{id = "oldship_gun"; name = "pod bay door"},/turf/open/floor/plating,/area/shuttle/abandoned) -"brz" = (/obj/machinery/door/poddoor{id = "trash"; name = "disposal bay door"},/turf/open/floor/plating,/area/maintenance/disposal) -"brA" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/supply) -"brB" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) -"brC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) -"brD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) -"brE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/storage) -"brF" = (/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"; req_access_txt = "31"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/storage) -"brG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/office) -"brH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/office) -"brI" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"brJ" = (/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stamp/denied{pixel_x = 4; pixel_y = -2},/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"brK" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/clipboard,/obj/item/weapon/pen/red,/obj/structure/table,/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel,/area/quartermaster/office) -"brL" = (/obj/machinery/computer/cargo/request,/turf/open/floor/plasteel,/area/quartermaster/office) -"brM" = (/obj/machinery/firealarm{pixel_y = 27},/turf/open/floor/plasteel,/area/quartermaster/office) -"brN" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/quartermaster/office) -"brO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) -"brP" = (/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/central) -"brQ" = (/obj/machinery/button/flasher{id = "hopflash"; pixel_x = 6; pixel_y = 36},/obj/machinery/button/door{id = "hop"; name = "Privacy Shutters Control"; pixel_x = 6; pixel_y = 25; req_access_txt = "57"},/obj/machinery/button/door{id = "hopqueue"; name = "Queue Shutters Control"; pixel_x = -4; pixel_y = 25; req_access_txt = "57"},/obj/machinery/light_switch{pixel_x = -4; pixel_y = 36},/obj/machinery/pdapainter,/turf/open/floor/plasteel/blue/side{dir = 9},/area/crew_quarters/heads) -"brR" = (/obj/structure/table,/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = 32},/obj/item/weapon/hand_labeler,/obj/item/stack/packageWrap,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"brS" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"brT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/bed/dogbed{anchored = 1; desc = "Ian's bed! Looks comfy."; name = "Ian's bed"},/mob/living/simple_animal/pet/dog/corgi/Ian{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/heads) -"brU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"brV" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) -"brW" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) -"brX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_engineering{name = "Gravity Generator"; req_access_txt = "11"; req_one_access_txt = "0"},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) -"brY" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 32; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) -"brZ" = (/obj/structure/bed,/obj/item/weapon/bedsheet/captain,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/crew_quarters/captain) -"bsa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/captain) -"bsb" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/carpet,/area/crew_quarters/captain) -"bsc" = (/obj/structure/toilet{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) -"bsd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bse" = (/obj/structure/table/glass,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/screwdriver{pixel_x = -2; pixel_y = 6},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bsf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bsg" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/device/radio/headset/headset_med,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bsh" = (/turf/closed/wall,/area/medical/medbay) -"bsi" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "MedbayFoyer"; name = "Medbay"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 1},/area/medical/medbay) -"bsj" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "MedbayFoyer"; name = "Medbay"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 1},/area/medical/medbay) -"bsk" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/medbay) -"bsl" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bsm" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 30; pixel_y = 0; pixel_z = 0},/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bsn" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/security/checkpoint/medical) -"bso" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/security/checkpoint/medical) -"bsp" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6;5"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) -"bsq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/medical/morgue) -"bsr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/medical/morgue) -"bss" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall/r_wall,/area/medical/genetics) -"bst" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/genetics) -"bsu" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bsv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/assembly/chargebay) -"bsw" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/assembly/chargebay) -"bsx" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) -"bsy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) -"bsz" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/assembly/robotics) -"bsA" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel,/area/assembly/robotics) -"bsB" = (/turf/open/floor/plasteel,/area/assembly/robotics) -"bsC" = (/obj/structure/table,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus{pixel_x = 5; pixel_y = -5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/crowbar,/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bsD" = (/turf/closed/wall,/area/assembly/robotics) -"bsE" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) -"bsF" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) -"bsG" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) -"bsH" = (/turf/closed/wall,/area/toxins/lab) -"bsI" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bsJ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bsK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bsL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bsM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bsN" = (/obj/item/weapon/stock_parts/console_screen,/obj/structure/table/glass,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module,/obj/machinery/power/apc{dir = 4; name = "Research Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bsO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/plasticflaps{opacity = 1},/turf/open/floor/plasteel/loadingarea,/area/toxins/lab) -"bsP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/toxins/lab) -"bsQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bsR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bsS" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bsT" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/storage) -"bsU" = (/obj/machinery/conveyor_switch/oneway{id = "QMLoad2"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bsV" = (/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bsW" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/quartermaster/storage) -"bsX" = (/turf/open/floor/plasteel/brown/corner{dir = 1},/area/quartermaster/office) -"bsY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/office) -"bsZ" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"bta" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"btb" = (/obj/effect/landmark/start{name = "Cargo Technician"},/obj/structure/chair/office/dark{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) -"btc" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/westleft{name = "Cargo Desk"; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) -"btd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/quartermaster/office) -"bte" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/office) -"btf" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) -"btg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bth" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/hallway/primary/central) -"bti" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor/shutters/preopen{id = "hopqueue"; name = "HoP Queue Shutters"},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/hallway/primary/central) -"btj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/hallway/primary/central) -"btk" = (/obj/structure/table/reinforced,/obj/machinery/door/window/northleft{dir = 8; icon_state = "left"; name = "Reception Window"; req_access_txt = "0"},/obj/machinery/door/window/brigdoor{base_state = "rightsecure"; dir = 4; icon_state = "rightsecure"; name = "Head of Personnel's Desk"; req_access = null; req_access_txt = "57"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/flasher{id = "hopflash"; pixel_x = 0; pixel_y = 28},/obj/machinery/door/poddoor/shutters/preopen{id = "hop"; layer = 2.9; name = "Privacy Shutters"},/turf/open/floor/plasteel,/area/crew_quarters/heads) -"btl" = (/obj/structure/chair/office/dark{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 8},/area/crew_quarters/heads) -"btm" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/heads) -"btn" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/carpet,/area/crew_quarters/heads) -"bto" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/heads) -"btp" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"btq" = (/obj/structure/chair/office/light,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"btr" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"bts" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"btt" = (/obj/structure/closet/secure_closet/captains,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/crew_quarters/captain) -"btu" = (/obj/structure/chair/comfy/brown{dir = 4},/obj/machinery/camera{c_tag = "Captain's Quarters"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) -"btv" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/matches,/obj/item/weapon/razor{pixel_x = -4; pixel_y = 2},/obj/item/clothing/mask/cigarette/cigar,/obj/item/weapon/reagent_containers/food/drinks/flask/gold,/turf/open/floor/carpet,/area/crew_quarters/captain) -"btw" = (/obj/machinery/shower{dir = 1},/obj/item/weapon/soap/deluxe,/obj/item/weapon/bikehorn/rubberducky,/obj/effect/landmark{name = "revenantspawn"},/obj/structure/curtain,/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) -"btx" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bty" = (/obj/structure/closet/wardrobe/chemistry_white,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"btz" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/table,/obj/item/weapon/book/manual/wiki/chemistry,/obj/item/weapon/book/manual/wiki/chemistry{pixel_x = 3; pixel_y = 3},/turf/open/floor/plasteel/white,/area/medical/chemistry) -"btA" = (/obj/structure/chair,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"btB" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/stack/packageWrap,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"btC" = (/obj/structure/bed/roller,/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Exit Button"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 26},/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) -"btD" = (/obj/machinery/status_display,/turf/closed/wall,/area/medical/medbay) -"btE" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Medbay Reception"; req_access_txt = "5"},/turf/open/floor/plasteel/white,/area/medical/medbay) -"btF" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/medbay) -"btG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"btH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/white,/area/medical/medbay) -"btI" = (/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 30},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"btJ" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"btK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"btL" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) -"btM" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"btN" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/medical/medbay) -"btO" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/genetics) -"btP" = (/obj/structure/table/glass,/obj/item/weapon/folder/white,/obj/item/device/radio/headset/headset_medsci,/obj/machinery/requests_console{department = "Genetics"; departmentType = 0; name = "Genetics Requests Console"; pixel_x = 0; pixel_y = 30},/obj/item/weapon/storage/pill_bottle/mutadone,/obj/item/weapon/storage/pill_bottle/mannitol,/turf/open/floor/plasteel/white,/area/medical/genetics) -"btQ" = (/obj/machinery/power/apc{dir = 1; name = "Genetics APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/white,/area/medical/genetics) -"btR" = (/obj/machinery/light{dir = 1},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/white,/area/medical/genetics) -"btS" = (/obj/machinery/dna_scannernew,/turf/open/floor/plasteel/whiteblue/side{dir = 5},/area/medical/genetics) -"btT" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel,/area/medical/genetics) -"btU" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel,/area/medical/genetics) -"btV" = (/turf/closed/wall/r_wall,/area/medical/genetics) -"btW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall/r_wall,/area/assembly/chargebay) -"btX" = (/obj/structure/extinguisher_cabinet{pixel_x = -27},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/bluegrid,/area/assembly/chargebay) -"btY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/bluegrid,/area/assembly/chargebay) -"btZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/bluegrid,/area/assembly/chargebay) -"bua" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bub" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) -"buc" = (/obj/structure/table,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/turf/open/floor/plasteel,/area/assembly/robotics) -"bud" = (/obj/structure/table,/obj/item/device/mmi,/obj/item/device/mmi,/obj/item/device/mmi,/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/open/floor/plasteel,/area/assembly/robotics) -"bue" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/turf/open/floor/plasteel/white,/area/assembly/robotics) -"buf" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/obj/structure/window/fulltile,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/turf/open/floor/plating,/area/assembly/robotics) -"bug" = (/turf/open/floor/plasteel/white/corner{dir = 2},/area/medical/research{name = "Research Division"}) -"buh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 2},/area/medical/research{name = "Research Division"}) -"bui" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white/corner{dir = 8},/area/medical/research{name = "Research Division"}) -"buj" = (/obj/item/weapon/folder/white,/obj/structure/table,/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/design_disk,/obj/item/weapon/disk/design_disk,/turf/open/floor/plasteel/white,/area/toxins/lab) -"buk" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/white,/area/toxins/lab) -"bul" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/toxins/lab) -"bum" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/lab) -"bun" = (/obj/machinery/light_switch{pixel_x = 0; pixel_y = -23},/turf/open/floor/plasteel/white,/area/toxins/lab) -"buo" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Research Division Delivery"; req_access_txt = "47"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/toxins/lab) -"bup" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "Research Division"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/toxins/lab) -"buq" = (/turf/closed/wall/r_wall,/area/toxins/explab) -"bur" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_r"},/turf/open/floor/plating/airless,/area/shuttle/abandoned) -"bus" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/plating,/area/shuttle/abandoned) -"but" = (/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"buu" = (/obj/structure/rack,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"buv" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"buw" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/door/poddoor{id = "QMLoaddoor2"; name = "supply dock loading door"},/turf/open/floor/plating,/area/shuttle/supply) -"bux" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/door/poddoor{id = "QMLoaddoor2"; name = "supply dock loading door"},/turf/open/floor/plating,/area/quartermaster/storage) -"buy" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/open/floor/plating,/area/quartermaster/storage) -"buz" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/quartermaster/storage) -"buA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/loadingarea{dir = 4},/area/quartermaster/storage) -"buB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) -"buC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) -"buD" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/storage) -"buE" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel,/area/quartermaster/storage) -"buF" = (/obj/machinery/autolathe,/obj/machinery/light_switch{pixel_x = -27},/turf/open/floor/plasteel,/area/quartermaster/office) -"buG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"buH" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"buI" = (/obj/machinery/computer/cargo,/turf/open/floor/plasteel,/area/quartermaster/office) -"buJ" = (/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/office) -"buK" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/quartermaster/office) -"buL" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/quartermaster/office) -"buM" = (/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/central) -"buN" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hallway/primary/central) -"buO" = (/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/primary/central) -"buP" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/shutters/preopen{id = "hop"; layer = 2.9; name = "Privacy Shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/heads) -"buQ" = (/obj/machinery/computer/card,/turf/open/floor/plasteel/blue/side{dir = 10},/area/crew_quarters/heads) -"buR" = (/turf/open/floor/carpet,/area/crew_quarters/heads) -"buS" = (/obj/machinery/holopad,/turf/open/floor/carpet,/area/crew_quarters/heads) -"buT" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"buU" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Gravity Generator APC"; pixel_x = -25; pixel_y = 1},/obj/structure/table,/obj/item/weapon/paper/gravity_gen{layer = 3},/obj/item/weapon/pen/blue,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"buV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"buW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/holopad,/turf/open/floor/plasteel,/area/engine/gravity_generator) -"buX" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/obj/machinery/power/smes{charge = 5e+006},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"buY" = (/turf/closed/wall/r_wall,/area/teleporter) -"buZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/teleporter) -"bva" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/teleporter) -"bvb" = (/obj/machinery/door/airlock/maintenance{name = "Teleporter Maintenance"; req_access_txt = "17"},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/teleporter) -"bvc" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bvd" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bve" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Chemistry Lab"; req_access_txt = "5; 33"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/chemistry) -"bvf" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/medical/chemistry) -"bvg" = (/obj/structure/table/reinforced,/obj/machinery/door/window/southleft{dir = 1; name = "Chemistry Desk"; req_access_txt = "33"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/medical/chemistry) -"bvh" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bvi" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bvj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bvk" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bvl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bvm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bvn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bvo" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bvp" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/rxglasses,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bvq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bvr" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Geneticist"},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bvs" = (/obj/machinery/computer/scan_consolenew,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/genetics) -"bvt" = (/obj/structure/window/reinforced{dir = 8},/mob/living/carbon/monkey,/turf/open/floor/plasteel,/area/medical/genetics) -"bvu" = (/turf/open/floor/plasteel,/area/medical/genetics) -"bvv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 14},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) -"bvw" = (/obj/machinery/door/airlock/maintenance{name = "Mech Bay Maintenance"; req_access_txt = "29"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/assembly/chargebay) -"bvx" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bvy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bvz" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bvA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/assembly/chargebay) -"bvB" = (/obj/structure/table,/obj/item/weapon/circular_saw,/obj/item/weapon/scalpel{pixel_y = 12},/turf/open/floor/plasteel/white/corner{dir = 2},/area/assembly/robotics) -"bvC" = (/obj/structure/table,/obj/item/clothing/gloves/color/latex,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/open/floor/plasteel/white/corner{dir = 8},/area/assembly/robotics) -"bvD" = (/obj/machinery/button/door{dir = 2; id = "robotics2"; name = "Shutters Control Button"; pixel_x = 24; pixel_y = -24; req_access_txt = "29"},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bvE" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Robotics Desk"; req_access_txt = "29"},/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plating,/area/assembly/robotics) -"bvF" = (/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bvG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bvH" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd2"; name = "research lab shutters"},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/lab) -"bvI" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd2"; name = "research lab shutters"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/toxins/lab) -"bvJ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd2"; name = "research lab shutters"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/toxins/lab) -"bvK" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 0; pixel_y = 6},/turf/open/floor/plasteel/white/corner{dir = 2},/area/toxins/explab) -"bvL" = (/obj/structure/table,/obj/item/weapon/pen,/obj/machinery/camera{c_tag = "Experimentor Lab"; dir = 2; network = list("SS13","RD")},/obj/item/weapon/hand_labeler,/obj/item/stack/packageWrap,/turf/open/floor/plasteel/white/side{dir = 2},/area/toxins/explab) -"bvM" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/item/device/radio/off,/turf/open/floor/plasteel/white/side{dir = 2},/area/toxins/explab) -"bvN" = (/obj/structure/closet/l3closet/scientist,/turf/open/floor/plasteel/white/side{dir = 2},/area/toxins/explab) -"bvO" = (/obj/structure/closet/emcloset{pixel_x = -2},/turf/open/floor/plasteel/white/corner{dir = 8},/area/toxins/explab) -"bvP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bvQ" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bvR" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bvS" = (/obj/machinery/door/airlock/titanium{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/turf/open/floor/plating,/area/shuttle/supply) -"bvT" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Supply Dock Airlock"; req_access_txt = "31"},/turf/open/floor/plating,/area/quartermaster/storage) -"bvU" = (/turf/open/floor/plating,/area/quartermaster/storage) -"bvV" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Supply Dock Airlock"; req_access_txt = "31"},/turf/open/floor/plating,/area/quartermaster/storage) -"bvW" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bvX" = (/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bvY" = (/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bvZ" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #1"},/obj/effect/turf_decal/bot,/mob/living/simple_animal/bot/mulebot{beacon_freq = 1400; home_destination = "QM #1"; suffix = "#1"},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bwa" = (/obj/structure/table,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/device/multitool,/obj/machinery/camera{c_tag = "Cargo Office"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel,/area/quartermaster/office) -"bwb" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Cargo Office"; req_access_txt = "50"},/turf/open/floor/plasteel,/area/quartermaster/office) -"bwc" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/quartermaster/office) -"bwd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bwe" = (/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bwf" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/door/poddoor/shutters/preopen{id = "hop"; layer = 2.9; name = "Privacy Shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/heads) -"bwg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bwh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/carpet,/area/crew_quarters/heads) -"bwi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/heads) -"bwj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bwk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"bwl" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"bwm" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"bwn" = (/turf/open/floor/plasteel,/area/engine/gravity_generator) -"bwo" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"bwp" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"bwq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"bwr" = (/turf/closed/wall,/area/teleporter) -"bws" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/obj/structure/table,/obj/item/device/radio/beacon,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/teleporter) -"bwt" = (/obj/structure/table,/obj/item/weapon/hand_tele,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/teleporter) -"bwu" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/structure/closet/crate,/obj/item/weapon/crowbar,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/teleporter) -"bwv" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/teleporter) -"bww" = (/obj/machinery/camera{c_tag = "Teleporter"},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/teleporter) -"bwx" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/teleporter) -"bwy" = (/obj/machinery/light_switch{pixel_x = 27},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/teleporter) -"bwz" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) -"bwA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bwB" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) -"bwC" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/clothing/neck/stethoscope,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/corner{dir = 4},/area/medical/medbay) -"bwD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/medbay) -"bwE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/medbay) -"bwF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/medbay) -"bwG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/corner{dir = 1},/area/medical/medbay) -"bwH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/camera{c_tag = "Medbay West"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bwI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bwJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bwK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bwL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bwM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bwN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bwO" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/whiteblue/corner{dir = 2},/area/medical/medbay) -"bwP" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) -"bwQ" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/medbay) -"bwR" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/disks{pixel_x = 2; pixel_y = 2},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bwS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bwT" = (/turf/open/floor/plasteel/white,/area/medical/genetics) -"bwU" = (/obj/machinery/door/window/westleft{name = "Monkey Pen"; req_access_txt = "9"},/turf/open/floor/plasteel,/area/medical/genetics) -"bwV" = (/obj/structure/table,/obj/item/weapon/crowbar/large,/turf/open/floor/plasteel,/area/assembly/chargebay) -"bwW" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plasteel,/area/assembly/chargebay) -"bwX" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/assembly/chargebay) -"bwY" = (/obj/machinery/recharge_station,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/assembly/chargebay) -"bwZ" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/turf/open/floor/plasteel/white/side{dir = 4},/area/assembly/robotics) -"bxa" = (/obj/structure/table/optable{name = "Robotics Operating Table"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bxb" = (/obj/machinery/computer/operating{name = "Robotics Operating Computer"},/obj/machinery/light,/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bxc" = (/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bxd" = (/obj/structure/closet/wardrobe/robotics_black,/obj/item/device/radio/headset/headset_sci{pixel_x = -3},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"bxe" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bxf" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bxg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bxh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bxi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Research Division North"; dir = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bxj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 10},/area/medical/research{name = "Research Division"}) -"bxk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bxl" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bxm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 6},/area/medical/research{name = "Research Division"}) -"bxn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bxo" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/explab) -"bxp" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"bxq" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/explab) -"bxr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"bxs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"bxt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"bxu" = (/obj/machinery/door/airlock/maintenance{name = "Experimentation Lab Maintenance"; req_access_txt = "7"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/explab) -"bxv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bxw" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/abandoned) -"bxx" = (/obj/machinery/button/door{dir = 2; id = "QMLoaddoor2"; name = "Loading Doors"; pixel_x = 24; pixel_y = 8},/obj/machinery/button/door{id = "QMLoaddoor"; name = "Loading Doors"; pixel_x = 24; pixel_y = -8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/supply) -"bxy" = (/obj/machinery/camera{c_tag = "Cargo Recieving Dock"; dir = 4},/obj/machinery/button/door{id = "QMLoaddoor"; layer = 4; name = "Loading Doors"; pixel_x = -24; pixel_y = -8},/obj/machinery/button/door{dir = 2; id = "QMLoaddoor2"; layer = 4; name = "Loading Doors"; pixel_x = -24; pixel_y = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bxz" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #2"},/obj/effect/turf_decal/bot,/mob/living/simple_animal/bot/mulebot{home_destination = "QM #2"; suffix = "#2"},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bxA" = (/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/folder/yellow,/turf/open/floor/plasteel,/area/quartermaster/office) -"bxB" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/quartermaster/office) -"bxC" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"bxD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) -"bxE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/quartermaster/office) -"bxF" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/office) -"bxG" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) -"bxH" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/blue/side{dir = 9},/area/crew_quarters/heads) -"bxI" = (/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bxJ" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bxK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bxL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bxM" = (/turf/closed/wall/r_wall,/area/engine/gravity_generator) -"bxN" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Gravity Generator"; req_access_txt = "11"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/gravity_generator) -"bxO" = (/obj/machinery/power/apc{dir = 8; name = "Teleporter APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/teleporter) -"bxP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/teleporter) -"bxQ" = (/obj/machinery/holopad,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/teleporter) -"bxR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/bluespace_beacon,/turf/open/floor/plasteel,/area/teleporter) -"bxS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/teleporter) -"bxT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/teleporter) -"bxU" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{name = "Teleport Access"; req_access_txt = "17"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/teleporter) -"bxV" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) -"bxW" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bxX" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) -"bxY" = (/obj/structure/table,/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bxZ" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bya" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"byb" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"byc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"byd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -30},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bye" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"byf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) -"byg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/white,/area/medical/medbay) -"byh" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"byi" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/medbay) -"byj" = (/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = 30; pixel_y = 0},/obj/machinery/camera{c_tag = "Medbay East"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/turf/open/floor/plasteel/white,/area/medical/medbay) -"byk" = (/turf/closed/wall,/area/medical/genetics) -"byl" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Genetics"; req_access_txt = "5; 68"},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bym" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) -"byn" = (/obj/structure/chair/office/light{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"byo" = (/obj/machinery/computer/scan_consolenew,/turf/open/floor/plasteel/whiteblue/side{dir = 5},/area/medical/genetics) -"byp" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/assembly/robotics) -"byq" = (/obj/machinery/door/airlock/research{name = "Robotics Lab"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/open/floor/plasteel/white,/area/assembly/robotics) -"byr" = (/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bys" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"byt" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"byu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"byv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"byw" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"byx" = (/obj/machinery/light,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"byy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"byz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/research{name = "Experimentation Lab"; req_access_txt = "7"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"byA" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"byB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"byC" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"byD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/toxins/explab) -"byE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"byF" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/explab) -"byG" = (/obj/machinery/power/apc{dir = 4; name = "Experimentation Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) -"byH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/explab) -"byI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"byJ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint2) -"byK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint2) -"byL" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) -"byM" = (/obj/machinery/door/airlock/titanium{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/obj/docking_port/mobile/supply{dwidth = 5; width = 12},/obj/docking_port/stationary{dir = 8; dwidth = 5; height = 7; id = "supply_home"; name = "Cargo Bay"; width = 12},/turf/open/floor/plating,/area/shuttle/supply) -"byN" = (/obj/machinery/conveyor_switch/oneway{convdir = -1; id = "QMLoad"},/turf/open/floor/plasteel,/area/quartermaster/storage) -"byO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) -"byP" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #3"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/storage) -"byQ" = (/obj/structure/table,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel,/area/quartermaster/office) -"byR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"byS" = (/obj/machinery/mineral/ore_redemption{input_dir = 8; output_dir = 4},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/office) -"byT" = (/turf/open/floor/plasteel/loadingarea{dir = 4},/area/quartermaster/office) -"byU" = (/obj/structure/chair{dir = 8},/obj/machinery/light,/turf/open/floor/plasteel,/area/quartermaster/office) -"byV" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/primary/central) -"byW" = (/obj/machinery/keycard_auth{pixel_x = -24; pixel_y = 0},/obj/machinery/computer/cargo,/turf/open/floor/plasteel/blue/side{dir = 8},/area/crew_quarters/heads) -"byX" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Head of Personnel"},/turf/open/floor/plasteel,/area/crew_quarters/heads) -"byY" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/hop,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"byZ" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bza" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall,/area/engine/gravity_generator) -"bzb" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"bzc" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/camera{c_tag = "Gravity Generator Foyer"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"bzd" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/closed/wall,/area/engine/gravity_generator) -"bze" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/teleporter) -"bzf" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/teleporter) -"bzg" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/teleporter) -"bzh" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/teleporter) -"bzi" = (/obj/machinery/shieldwallgen,/obj/structure/window/reinforced{dir = 8},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/teleporter) -"bzj" = (/obj/machinery/shieldwallgen,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/teleporter) -"bzk" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/teleporter) -"bzl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) -"bzm" = (/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = -30; pixel_y = 0; pixel_z = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bzn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bzo" = (/obj/machinery/vending/medical{pixel_x = -2},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bzp" = (/turf/closed/wall,/area/medical/sleeper) -"bzq" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/sleeper) -"bzr" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bzs" = (/obj/machinery/button/door{desc = "A remote control switch for the genetics doors."; id = "GeneticsDoor"; name = "Genetics Exit Button"; normaldoorcontrol = 1; pixel_x = 8; pixel_y = 24},/obj/structure/table,/obj/item/weapon/book/manual/medical_cloning{pixel_y = 6},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bzt" = (/obj/structure/closet/wardrobe/white,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bzu" = (/obj/structure/closet/secure_closet/personal/patient,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bzv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bzw" = (/obj/machinery/dna_scannernew,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/genetics) -"bzx" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/medical/genetics) -"bzy" = (/obj/structure/window/reinforced,/mob/living/carbon/monkey,/turf/open/floor/plasteel,/area/medical/genetics) -"bzz" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 12},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bzA" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/sign/securearea{pixel_x = 32},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bzB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) -"bzC" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) -"bzD" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/research{name = "Research Division"}) -"bzE" = (/obj/machinery/camera{c_tag = "Research Division West"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bzF" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bzG" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bzH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 10},/area/medical/research{name = "Research Division"}) -"bzI" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bzJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 6},/area/medical/research{name = "Research Division"}) -"bzK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bzL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bzM" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bzN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/hor) -"bzO" = (/turf/closed/wall,/area/crew_quarters/hor) -"bzP" = (/turf/closed/wall/r_wall,/area/crew_quarters/hor) -"bzQ" = (/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/toxins/explab) -"bzR" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/toxins/explab) -"bzS" = (/turf/open/floor/plasteel/white,/area/toxins/explab) -"bzT" = (/obj/structure/chair/office/light,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/white,/area/toxins/explab) -"bzU" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/toxins/explab) -"bzV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bzW" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bzX" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bzY" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bzZ" = (/turf/open/floor/plating,/area/maintenance/asmaint2) -"bAa" = (/obj/machinery/door/window,/turf/open/floor/mineral/titanium/purple,/area/shuttle/abandoned) -"bAb" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/mineral/titanium/purple,/area/shuttle/abandoned) -"bAc" = (/obj/structure/table,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bAd" = (/obj/structure/table,/obj/item/weapon/gun/energy/laser/retro,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bAe" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/door/poddoor{id = "QMLoaddoor"; name = "supply dock loading door"},/turf/open/floor/plating,/area/shuttle/supply) -"bAf" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/door/poddoor{id = "QMLoaddoor"; name = "supply dock loading door"},/turf/open/floor/plating,/area/quartermaster/storage) -"bAg" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/turf/open/floor/plating,/area/quartermaster/storage) -"bAh" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/quartermaster/storage) -"bAi" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/light,/obj/machinery/status_display{density = 0; pixel_y = -30; supply_display = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/quartermaster/storage) -"bAj" = (/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/quartermaster/storage) -"bAk" = (/obj/machinery/camera{c_tag = "Cargo Bay South"; dir = 1},/turf/open/floor/plasteel,/area/quartermaster/storage) -"bAl" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #4"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/storage) -"bAm" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/open/floor/plasteel,/area/quartermaster/office) -"bAn" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/quartermaster/office) -"bAo" = (/obj/machinery/light,/obj/machinery/power/apc{dir = 2; name = "Cargo Office APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/brown/corner{dir = 2},/area/quartermaster/office) -"bAp" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) -"bAq" = (/turf/open/floor/plasteel/brown/corner{dir = 8},/area/quartermaster/office) -"bAr" = (/turf/closed/wall,/area/security/checkpoint/supply) -"bAs" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/supply) -"bAt" = (/obj/machinery/camera{c_tag = "Cargo Bay Entrance"; dir = 4; network = list("SS13")},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) -"bAu" = (/obj/machinery/door/poddoor/shutters/preopen{id = "hopqueue"; name = "HoP Queue Shutters"},/turf/open/floor/plasteel/loadingarea{dir = 4},/area/hallway/primary/central) -"bAv" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/structure/closet/secure_closet/hop,/turf/open/floor/plasteel/blue/side{dir = 10},/area/crew_quarters/heads) -"bAw" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Personnel's Desk"; departmentType = 5; name = "Head of Personnel RC"; pixel_y = -30},/obj/machinery/camera{c_tag = "Head of Personnel's Office"; dir = 1},/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bAx" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bAy" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bAz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bAA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/engine/gravity_generator) -"bAB" = (/obj/structure/closet/radiation,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = -32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"bAC" = (/obj/structure/closet/radiation,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/gravity_generator) -"bAD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/engine/gravity_generator) -"bAE" = (/obj/machinery/computer/teleporter,/turf/open/floor/plating,/area/teleporter) -"bAF" = (/obj/machinery/teleport/station,/turf/open/floor/plating,/area/teleporter) -"bAG" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/teleporter) -"bAH" = (/obj/structure/rack,/obj/item/weapon/tank/internals/oxygen,/obj/item/clothing/mask/gas,/turf/open/floor/plating,/area/teleporter) -"bAI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bAJ" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; dir = 4; freq = 1400; location = "Medbay"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/medbay) -"bAK" = (/obj/machinery/door/window/eastleft{name = "Medical Delivery"; req_access_txt = "5"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/medical/medbay) -"bAL" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bAM" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bAN" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bAO" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bAP" = (/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bAQ" = (/turf/open/floor/plasteel/white/side{dir = 8},/area/medical/sleeper) -"bAR" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/open/floor/plasteel,/area/medical/sleeper) -"bAS" = (/obj/structure/sign/nosmoking_2,/turf/closed/wall,/area/medical/sleeper) -"bAT" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/turf/open/floor/plasteel,/area/medical/sleeper) -"bAU" = (/obj/machinery/atmospherics/components/unary/cryo_cell,/turf/open/floor/plasteel,/area/medical/sleeper) -"bAV" = (/obj/structure/table,/obj/machinery/cell_charger,/turf/open/floor/plasteel,/area/medical/sleeper) -"bAW" = (/obj/structure/table/glass,/obj/machinery/camera{c_tag = "Medbay Cryogenics"; dir = 2; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel,/area/medical/sleeper) -"bAX" = (/obj/machinery/camera{c_tag = "Genetics Cloning"; dir = 4; network = list("SS13")},/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/storage/box/rxglasses{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bAY" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bAZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bBa" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/genetics) -"bBb" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bBc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bBd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bBe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whitepurple/side{dir = 4},/area/medical/genetics) -"bBf" = (/obj/machinery/door/airlock/research{name = "Genetics Research"; req_access_txt = "9"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bBg" = (/obj/structure/disposalpipe/sortjunction{sortType = 23},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bBh" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bBi" = (/obj/machinery/door/airlock/research{name = "Genetics Research Access"; req_access_txt = "47"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bBj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) -"bBk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/research{name = "Research Division"}) -"bBl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bBm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bBn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bBo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bBp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bBq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bBr" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bBs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bBt" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bBu" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the RD's goons and the AI's satellite from the safety of his office."; name = "Research Monitor"; network = list("RD","MiniSat"); pixel_x = 0; pixel_y = 2},/obj/structure/table,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bBv" = (/obj/machinery/computer/aifixer,/obj/machinery/requests_console{announcementConsole = 1; department = "Research Director's Desk"; departmentType = 5; name = "Research Director RC"; pixel_x = -2; pixel_y = 30},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bBw" = (/obj/structure/rack,/obj/item/weapon/circuitboard/aicore{pixel_x = -2; pixel_y = 4},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) -"bBx" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) -"bBy" = (/obj/effect/landmark/xmastree/rdrod,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) -"bBz" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/explab) -"bBA" = (/turf/closed/wall,/area/toxins/explab) -"bBB" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/book/manual/experimentor,/turf/open/floor/plasteel/white/corner{dir = 4},/area/toxins/explab) -"bBC" = (/obj/machinery/computer/rdconsole/experiment,/turf/open/floor/plasteel/white/side{dir = 1},/area/toxins/explab) -"bBD" = (/obj/structure/closet/radiation,/turf/open/floor/plasteel/white/corner{dir = 1},/area/toxins/explab) -"bBE" = (/obj/machinery/button/door{id = "telelab"; name = "Test Chamber Blast Doors"; pixel_x = 25; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/explab) -"bBF" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bBG" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bBH" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bBI" = (/obj/structure/lattice,/obj/effect/landmark{name = "carpspawn"},/turf/open/space,/area/space) -"bBJ" = (/obj/machinery/door/airlock/glass,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bBK" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) -"bBL" = (/obj/structure/chair{dir = 4},/obj/effect/decal/remains/human,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bBM" = (/obj/machinery/computer/shuttle/white_ship,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bBN" = (/turf/closed/wall,/area/quartermaster/qm) -"bBO" = (/obj/machinery/door/airlock/glass_mining{name = "Quartermaster"; req_access_txt = "41"},/turf/open/floor/plasteel,/area/quartermaster/qm) -"bBP" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/qm) -"bBQ" = (/turf/closed/wall,/area/quartermaster/miningdock) -"bBR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/quartermaster/miningdock) -"bBS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/mining{req_access_txt = "48"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bBT" = (/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/supply) -"bBU" = (/obj/item/weapon/book/manual/wiki/security_space_law,/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/supply) -"bBV" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/supply) -"bBW" = (/obj/machinery/computer/secure_data,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/supply) -"bBX" = (/obj/machinery/door/airlock/command{name = "Head of Personnel"; req_access = null; req_access_txt = "57"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/heads) -"bBY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall,/area/engine/gravity_generator) -"bBZ" = (/obj/machinery/ai_status_display,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/engine/gravity_generator) -"bCa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/engine/gravity_generator) -"bCb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall,/area/engine/gravity_generator) -"bCc" = (/obj/machinery/camera{c_tag = "Central Hallway South-East"; dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bCd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/medical/sleeper) -"bCe" = (/obj/machinery/door/airlock/glass_medical{id_tag = ""; name = "Surgery Observation"; req_access_txt = "0"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bCf" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bCg" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bCh" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/medical/sleeper) -"bCi" = (/turf/open/floor/plasteel,/area/medical/sleeper) -"bCj" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plasteel,/area/medical/sleeper) -"bCk" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel,/area/medical/sleeper) -"bCl" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/plasteel,/area/medical/sleeper) -"bCm" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10; pixel_x = 0; initialize_directions = 10},/turf/open/floor/plasteel,/area/medical/sleeper) -"bCn" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bCo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bCp" = (/obj/structure/chair,/obj/effect/landmark/start{name = "Geneticist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bCq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bCr" = (/obj/machinery/door/airlock/glass_research{name = "Genetics Research"; req_access_txt = "5; 9; 68"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bCs" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bCt" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bCu" = (/obj/machinery/camera{c_tag = "Genetics Research"; dir = 1; network = list("SS13","RD"); pixel_x = 0},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whitepurple/side{dir = 4},/area/medical/genetics) -"bCv" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/genetics) -"bCw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bCx" = (/obj/machinery/camera{c_tag = "Genetics Access"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bCy" = (/turf/closed/wall/r_wall,/area/toxins/server) -"bCz" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{name = "Server Room"; req_access = null; req_access_txt = "30"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/toxins/server) -"bCA" = (/turf/closed/wall,/area/security/checkpoint/science) -"bCB" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/security/checkpoint/science) -"bCC" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/security/checkpoint/science) -"bCD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/science) -"bCE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bCF" = (/obj/structure/table,/obj/machinery/button/door{id = "Biohazard"; name = "Biohazard Shutter Control"; pixel_x = -5; pixel_y = 5; req_access_txt = "47"},/obj/machinery/button/door{id = "rnd2"; name = "Research Lab Shutter Control"; pixel_x = 5; pixel_y = 5; req_access_txt = "47"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bCG" = (/obj/structure/chair/office/light{dir = 8},/obj/effect/landmark/start{name = "Research Director"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bCH" = (/obj/machinery/computer/robotics,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bCI" = (/obj/structure/rack,/obj/item/device/aicard,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) -"bCJ" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/crew_quarters/hor) -"bCK" = (/obj/structure/displaycase/labcage,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) -"bCL" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "telelab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/firedoor/heavy,/turf/open/floor/engine,/area/toxins/explab) -"bCM" = (/obj/machinery/door/poddoor/preopen{id = "telelab"; name = "test chamber blast door"},/obj/machinery/door/firedoor/heavy,/turf/open/floor/engine,/area/toxins/explab) -"bCN" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bCO" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bCP" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bCQ" = (/obj/structure/table,/obj/item/weapon/tank/internals/oxygen,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bCR" = (/turf/open/floor/mineral/titanium/blue,/turf/closed/wall/mineral/titanium/interior,/area/shuttle/supply) -"bCS" = (/obj/structure/table,/obj/item/weapon/cartridge/quartermaster{pixel_x = 6; pixel_y = 5},/obj/item/weapon/cartridge/quartermaster,/obj/item/weapon/cartridge/quartermaster{pixel_x = -4; pixel_y = 7},/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/weapon/coin/silver,/turf/open/floor/plasteel/brown{dir = 9},/area/quartermaster/qm) -"bCT" = (/obj/machinery/power/apc{dir = 1; name = "Quartermaster APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) -"bCU" = (/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) -"bCV" = (/obj/machinery/holopad,/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) -"bCW" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) -"bCX" = (/obj/structure/closet/secure_closet/quartermaster,/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel/brown{dir = 5},/area/quartermaster/qm) -"bCY" = (/obj/machinery/power/apc{dir = 1; name = "Mining Dock APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bCZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bDa" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bDb" = (/obj/machinery/light{dir = 1},/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bDc" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/supply) -"bDd" = (/obj/structure/chair/office/dark{dir = 1},/obj/effect/landmark/start/depsec/supply,/turf/open/floor/plasteel,/area/security/checkpoint/supply) -"bDe" = (/turf/open/floor/plasteel,/area/security/checkpoint/supply) -"bDf" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/computer/security/mining{network = list("MINE","AuxBase")},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/supply) -"bDg" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bDh" = (/obj/structure/sign/securearea{pixel_y = 32},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) -"bDi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) -"bDj" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) -"bDk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bDl" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bDm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bDn" = (/obj/structure/sign/securearea{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bDo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bDp" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bDq" = (/obj/structure/chair,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bDr" = (/obj/structure/chair,/obj/machinery/camera{c_tag = "Surgery Observation"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bDs" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bDt" = (/obj/structure/chair,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bDu" = (/obj/structure/chair,/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bDv" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/shower{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bDw" = (/obj/effect/landmark/start{name = "Medical Doctor"},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bDx" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 6},/turf/open/floor/plasteel,/area/medical/sleeper) -"bDy" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 1},/turf/open/floor/plasteel,/area/medical/sleeper) -"bDz" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel,/area/medical/sleeper) -"bDA" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bDB" = (/obj/machinery/dna_scannernew,/turf/open/floor/plasteel/whiteblue/side{dir = 10},/area/medical/genetics) -"bDC" = (/obj/machinery/computer/cloning,/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/genetics) -"bDD" = (/obj/machinery/clonepod,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/genetics) -"bDE" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/medical/genetics) -"bDF" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light_switch{pixel_y = -28},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bDG" = (/obj/structure/closet/secure_closet/medical1,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bDH" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/genetics) -"bDI" = (/obj/structure/closet/wardrobe/genetics_white,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/white,/area/medical/genetics) -"bDJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/asmaint) -"bDK" = (/obj/machinery/r_n_d/server/robotics,/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) -"bDL" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; external_pressure_bound = 140; on = 1; pressure_checks = 0},/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) -"bDM" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/server) -"bDN" = (/obj/machinery/atmospherics/pipe/simple{dir = 10},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/black,/area/toxins/server) -"bDO" = (/obj/machinery/camera{c_tag = "Server Room"; dir = 2; network = list("SS13","RD"); pixel_x = 22},/obj/machinery/power/apc{dir = 1; name = "Server Room APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/black,/area/toxins/server) -"bDP" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{target_temperature = 80; dir = 2; on = 1},/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/plasteel/black,/area/toxins/server) -"bDQ" = (/obj/structure/reagent_dispensers/peppertank{pixel_x = -30; pixel_y = 0},/obj/machinery/airalarm{pixel_y = 25},/obj/structure/closet,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/science) -"bDR" = (/obj/machinery/light_switch{pixel_x = 8; pixel_y = 28},/obj/machinery/button/door{id = "Biohazard"; name = "Biohazard Shutter Control"; pixel_x = -5; pixel_y = 28; req_access_txt = "47"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/science) -"bDS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/science) -"bDT" = (/obj/structure/table,/obj/machinery/computer/security/telescreen{desc = "Used for watching the RD's goons from the safety of your own office."; name = "Research Monitor"; network = list("RD"); pixel_x = 0; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/science) -"bDU" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/science) -"bDV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bDW" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/hor) -"bDX" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/weapon/folder/white,/obj/item/weapon/stamp/rd{pixel_x = 3; pixel_y = -2},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bDY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bDZ" = (/obj/machinery/computer/mecha,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bEa" = (/obj/structure/rack,/obj/item/device/taperecorder{pixel_x = -3},/obj/item/device/paicard{pixel_x = 4},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) -"bEb" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) -"bEc" = (/obj/machinery/modular_computer/console/preset/research,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) -"bEd" = (/turf/open/floor/engine,/area/toxins/explab) -"bEe" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bEf" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/mineral/titanium/purple,/area/shuttle/abandoned) -"bEg" = (/obj/machinery/door/window/northright,/obj/effect/decal/remains/human,/turf/open/floor/mineral/titanium/purple,/area/shuttle/abandoned) -"bEh" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/supply) -"bEi" = (/obj/machinery/computer/cargo,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/qm) -"bEj" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/quartermaster/qm) -"bEk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/qm) -"bEl" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start{name = "Quartermaster"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/qm) -"bEm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/quartermaster/qm) -"bEn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 4},/area/quartermaster/qm) -"bEo" = (/obj/machinery/door/airlock/glass_mining{name = "Quartermaster"; req_access_txt = "41"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/qm) -"bEp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bEq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bEr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 3},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bEs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bEt" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/checkpoint/supply) -"bEu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/supply) -"bEv" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/security/checkpoint/supply) -"bEw" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/machinery/light{dir = 4},/obj/item/device/radio/off,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/supply) -"bEx" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AIW"; location = "QM"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bEy" = (/obj/machinery/door/firedoor,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bEz" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AftH"; location = "AIW"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bEA" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bEB" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=CHE"; location = "AIE"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bEC" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=HOP"; location = "CHE"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bED" = (/obj/structure/chair,/obj/structure/sign/nosmoking_2{pixel_x = -28},/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bEE" = (/obj/structure/chair,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bEF" = (/obj/machinery/holopad,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bEG" = (/obj/structure/chair,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/black,/area/medical/sleeper) -"bEH" = (/obj/structure/closet/secure_closet/medical1,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bEI" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/obj/machinery/camera{c_tag = "Medbay Treatment Center"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel,/area/medical/sleeper) -"bEJ" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel,/area/medical/sleeper) -"bEK" = (/obj/structure/table/reinforced,/obj/item/weapon/wrench/medical,/turf/open/floor/plasteel,/area/medical/sleeper) -"bEL" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1; name = "Connector Port (Air Supply)"},/obj/machinery/portable_atmospherics/canister/oxygen,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/light,/turf/open/floor/plasteel,/area/medical/sleeper) -"bEM" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1; name = "Connector Port (Air Supply)"},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel,/area/medical/sleeper) -"bEN" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 1},/turf/open/floor/plasteel,/area/medical/sleeper) -"bEO" = (/turf/open/floor/plating,/area/maintenance/asmaint) -"bEP" = (/obj/structure/reagent_dispensers/watertank,/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bEQ" = (/obj/machinery/airalarm/server{dir = 4; pixel_x = -22; pixel_y = 0},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/black{name = "Server Walkway"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) -"bER" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/black{name = "Server Walkway"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) -"bES" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "Server Room"; req_access_txt = "30"},/turf/open/floor/plasteel/black,/area/toxins/server) -"bET" = (/obj/machinery/atmospherics/pipe/manifold{dir = 8},/turf/open/floor/plasteel/black,/area/toxins/server) -"bEU" = (/obj/structure/chair/office/light,/obj/machinery/atmospherics/pipe/simple{dir = 4},/turf/open/floor/plasteel/black,/area/toxins/server) -"bEV" = (/obj/machinery/atmospherics/pipe/simple{dir = 9},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/black,/area/toxins/server) -"bEW" = (/obj/machinery/camera{c_tag = "Security Post - Science"; dir = 4; network = list("SS13","RD")},/obj/machinery/newscaster{pixel_x = -30},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/science) -"bEX" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/security/checkpoint/science) -"bEY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/security/checkpoint/science) -"bEZ" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start/depsec/science,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint/science) -"bFa" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/science) -"bFb" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bFc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bFd" = (/obj/machinery/door/airlock/glass_command{name = "Research Director"; req_access_txt = "30"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bFe" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bFf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bFg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bFh" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bFi" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bFj" = (/obj/machinery/r_n_d/experimentor,/turf/open/floor/engine,/area/toxins/explab) -"bFk" = (/obj/effect/landmark{name = "blobstart"},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/engine,/area/toxins/explab) -"bFl" = (/obj/machinery/atmospherics/components/unary/thermomachine/heater{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bFm" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bFn" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"},/turf/open/floor/plating/airless,/area/shuttle/supply) -"bFo" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/supply) -"bFp" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_r"},/turf/open/floor/plating/airless,/area/shuttle/supply) -"bFq" = (/obj/machinery/computer/security/mining{network = list("MINE","AuxBase")},/obj/machinery/camera{c_tag = "Quartermaster's Office"; dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/obj/machinery/status_display{density = 0; pixel_x = -32; pixel_y = 0; supply_display = 1},/turf/open/floor/plasteel/brown{dir = 10},/area/quartermaster/qm) -"bFr" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) -"bFs" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) -"bFt" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) -"bFu" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/stamp/qm{pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) -"bFv" = (/obj/structure/filingcabinet,/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 6},/area/quartermaster/qm) -"bFw" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/qm) -"bFx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bFy" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bFz" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bFA" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/security/checkpoint/supply) -"bFB" = (/obj/machinery/light_switch{pixel_y = -25},/obj/structure/closet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/supply) -"bFC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/checkpoint/supply) -"bFD" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = -30},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side,/area/security/checkpoint/supply) -"bFE" = (/obj/structure/filingcabinet,/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -32},/obj/machinery/camera{c_tag = "Security Post - Cargo"; dir = 1},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/supply) -"bFF" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) -"bFG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFH" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFI" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/camera{c_tag = "Central Primary Hallway South-West"; dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFJ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFK" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFL" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFM" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/sign/directions/engineering{pixel_x = -32; pixel_y = -40},/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_x = -32; pixel_y = -24},/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = -32; pixel_y = -32},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFN" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/status_display{pixel_y = -32},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Central Primary Hallway South"; dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFS" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 22},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFT" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFU" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFV" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/hallway/primary/central) -"bFZ" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/sleeper) -"bGa" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/medical/sleeper) -"bGb" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/medical/sleeper) -"bGc" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Recovery Room"; req_access_txt = "0"},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bGd" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bGe" = (/obj/structure/table,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/weapon/pen,/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 0; pixel_y = 30; pixel_z = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bGf" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bGg" = (/turf/closed/wall,/area/medical/cmo) -"bGh" = (/obj/machinery/suit_storage_unit/cmo,/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bGi" = (/obj/machinery/computer/crew,/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Medical Officer's Desk"; departmentType = 5; name = "Chief Medical Officer RC"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bGj" = (/obj/machinery/computer/med_data,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bGk" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bGl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) -"bGm" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) -"bGn" = (/obj/machinery/r_n_d/server/core,/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) -"bGo" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; external_pressure_bound = 120; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) -"bGp" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/server) -"bGq" = (/obj/machinery/atmospherics/pipe/simple{dir = 9},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/toxins/server) -"bGr" = (/obj/machinery/computer/rdservercontrol,/turf/open/floor/plasteel/black,/area/toxins/server) -"bGs" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plasteel/black,/area/toxins/server) -"bGt" = (/obj/item/device/radio/intercom{pixel_x = -25},/obj/structure/filingcabinet,/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/science) -"bGu" = (/obj/machinery/power/apc{dir = 2; name = "Science Security APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/science) -"bGv" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/device/radio/off,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/science) -"bGw" = (/obj/machinery/computer/secure_data,/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = -30},/turf/open/floor/plasteel/red/side,/area/security/checkpoint/science) -"bGx" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/science) -"bGy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bGz" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bGA" = (/obj/machinery/power/apc{dir = 8; name = "RD Office APC"; pixel_x = -25},/obj/structure/cable,/obj/machinery/light_switch{pixel_y = -23},/obj/item/weapon/twohanded/required/kirbyplants/dead,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bGB" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/obj/machinery/light,/obj/machinery/computer/card/minor/rd,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bGC" = (/obj/structure/table,/obj/item/weapon/cartridge/signal/toxins,/obj/item/weapon/cartridge/signal/toxins{pixel_x = -4; pixel_y = 2},/obj/item/weapon/cartridge/signal/toxins{pixel_x = 4; pixel_y = 6},/obj/machinery/camera{c_tag = "Research Director's Office"; dir = 1; network = list("SS13","RD")},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bGD" = (/obj/structure/closet/secure_closet/RD,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bGE" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bGF" = (/obj/machinery/suit_storage_unit/rd,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) -"bGG" = (/obj/machinery/camera{c_tag = "Experimentor Lab Chamber"; dir = 1; network = list("SS13","RD")},/obj/machinery/light,/obj/structure/sign/nosmoking_2{pixel_y = -32},/turf/open/floor/engine,/area/toxins/explab) -"bGH" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bGI" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bGJ" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bGK" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"bGL" = (/turf/closed/wall,/area/maintenance/aft) -"bGM" = (/turf/closed/wall,/area/storage/tech) -"bGN" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/central) -"bGO" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/central) -"bGP" = (/turf/closed/wall,/area/janitor) -"bGQ" = (/obj/machinery/door/airlock{name = "Custodial Closet"; req_access_txt = "26"},/obj/structure/disposalpipe/segment,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/janitor) -"bGR" = (/turf/closed/wall,/area/maintenance/asmaint) -"bGS" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) -"bGT" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/black,/area/hallway/primary/central) -"bGU" = (/obj/structure/disposalpipe/segment,/obj/structure/table,/obj/item/weapon/surgicaldrill,/turf/open/floor/plasteel,/area/medical/sleeper) -"bGV" = (/obj/structure/table,/obj/item/weapon/hemostat,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white/side{dir = 2},/area/medical/sleeper) -"bGW" = (/obj/structure/table,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bGX" = (/obj/structure/table,/obj/item/weapon/retractor,/turf/open/floor/plasteel/white/side{dir = 2},/area/medical/sleeper) -"bGY" = (/obj/structure/table,/obj/item/weapon/cautery{pixel_x = 4},/turf/open/floor/plasteel,/area/medical/sleeper) -"bGZ" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/gun/syringe,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/soap/nanotrasen,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bHa" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/whiteblue/corner{dir = 2},/area/medical/sleeper) -"bHb" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/sleeper) -"bHc" = (/obj/structure/closet/l3closet,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bHd" = (/obj/structure/closet/wardrobe/white/medical,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bHe" = (/obj/structure/closet/secure_closet/medical3,/obj/machinery/airalarm{pixel_y = 24},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bHf" = (/obj/structure/closet/secure_closet/medical3,/obj/machinery/camera{c_tag = "Medbay Storage"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bHg" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/rxglasses,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bHh" = (/obj/structure/disposalpipe/trunk,/obj/machinery/disposal/bin,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bHi" = (/turf/open/floor/plasteel/whiteblue/corner{dir = 8},/area/medical/medbay) -"bHj" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/cmo) -"bHk" = (/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bHl" = (/obj/structure/chair/office/light,/obj/effect/landmark/start{name = "Chief Medical Officer"},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bHm" = (/obj/machinery/keycard_auth{pixel_x = 24; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bHn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bHo" = (/turf/closed/wall/r_wall,/area/toxins/xenobiology) -"bHp" = (/turf/closed/wall/r_wall,/area/toxins/storage) -"bHq" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bHr" = (/obj/machinery/door/firedoor/heavy,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bHs" = (/obj/machinery/door/firedoor/heavy,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bHt" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bHu" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bHv" = (/obj/item/device/multitool,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bHw" = (/obj/structure/chair,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bHx" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 32},/turf/open/space,/area/space/nearstation) -"bHy" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/obj/machinery/requests_console{department = "Mining"; departmentType = 0; pixel_x = -30; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bHz" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bHA" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bHB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bHC" = (/obj/machinery/door/airlock/maintenance{name = "Mining Maintenance"; req_access_txt = "48"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/miningdock) -"bHD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bHE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/power/apc{dir = 1; name = "Cargo Security APC"; pixel_x = 1; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/security/checkpoint/supply) -"bHF" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bHG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bHH" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/aft) -"bHI" = (/obj/structure/table,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/machinery/ai_status_display{pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/storage/tech) -"bHJ" = (/obj/structure/table,/obj/item/weapon/electronics/apc,/obj/item/weapon/electronics/airlock,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/storage/tech) -"bHK" = (/obj/structure/table,/obj/item/weapon/screwdriver{pixel_y = 16},/obj/item/weapon/wirecutters,/turf/open/floor/plating,/area/storage/tech) -"bHL" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plating,/area/storage/tech) -"bHM" = (/obj/machinery/camera{c_tag = "Tech Storage"; dir = 2},/obj/machinery/power/apc{dir = 1; name = "Tech Storage APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/storage/tech) -"bHN" = (/obj/structure/table,/obj/item/device/analyzer,/obj/item/device/healthanalyzer,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/storage/tech) -"bHO" = (/obj/structure/table,/obj/item/device/plant_analyzer,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plating,/area/storage/tech) -"bHP" = (/turf/open/floor/plating,/area/storage/tech) -"bHQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bHR" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bHS" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"bHT" = (/obj/structure/closet/jcloset,/turf/open/floor/plasteel,/area/janitor) -"bHU" = (/obj/structure/closet/l3closet/janitor,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel,/area/janitor) -"bHV" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera{c_tag = "Custodial Closet"},/obj/vehicle/janicart,/turf/open/floor/plasteel,/area/janitor) -"bHW" = (/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plasteel,/area/janitor) -"bHX" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/janitor) -"bHY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/janitor) -"bHZ" = (/obj/machinery/portable_atmospherics/canister/water_vapor,/turf/open/floor/plasteel,/area/janitor) -"bIa" = (/obj/machinery/door/window/westleft{name = "Janitoral Delivery"; req_access_txt = "26"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/janitor) -"bIb" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 1; freq = 1400; location = "Janitor"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/janitor) -"bIc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/asmaint) -"bId" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/asmaint) -"bIe" = (/obj/structure/disposalpipe/segment,/obj/structure/table,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/item/clothing/suit/apron/surgical,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/white/side{dir = 4},/area/medical/sleeper) -"bIf" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bIg" = (/obj/effect/landmark/start{name = "Medical Doctor"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bIh" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bIi" = (/obj/structure/table,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 8},/area/medical/sleeper) -"bIj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/medical/sleeper) -"bIk" = (/obj/structure/table,/obj/structure/bedsheetbin{pixel_x = 2},/obj/item/clothing/suit/straight_jacket,/obj/item/clothing/mask/muzzle,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/corner{dir = 8},/area/medical/sleeper) -"bIl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bIm" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/medical/sleeper) -"bIn" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Medbay Storage"; req_access_txt = "45"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bIo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bIp" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bIq" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Medbay Storage"; req_access_txt = "45"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bIr" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/medbay) -"bIs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bIt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bIu" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bIv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bIw" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bIx" = (/obj/structure/table/glass,/obj/item/weapon/folder/white,/obj/item/weapon/stamp/cmo,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bIy" = (/obj/structure/table/glass,/obj/item/weapon/pen,/obj/item/clothing/neck/stethoscope,/mob/living/simple_animal/pet/cat/Runtime,/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bIz" = (/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{pixel_x = 25},/obj/machinery/camera{c_tag = "Chief Medical Office"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bIA" = (/turf/open/floor/engine,/area/toxins/xenobiology) -"bIB" = (/obj/machinery/camera{c_tag = "Xenobiology Test Chamber"; dir = 2; network = list("Xeno","RD"); pixel_x = 0},/obj/machinery/light{dir = 1},/turf/open/floor/engine,/area/toxins/xenobiology) -"bIC" = (/obj/machinery/portable_atmospherics/canister/toxins,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/toxins/storage) -"bID" = (/obj/machinery/portable_atmospherics/canister/toxins,/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 32},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/toxins/storage) -"bIE" = (/obj/machinery/power/apc{dir = 8; name = "Misc Research APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bIF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bIG" = (/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bIH" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bII" = (/turf/closed/wall/r_wall,/area/toxins/mixing) -"bIJ" = (/obj/structure/closet/bombcloset,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 28},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bIK" = (/obj/structure/closet/bombcloset,/obj/machinery/light{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bIL" = (/obj/machinery/portable_atmospherics/canister,/obj/structure/window/reinforced{dir = 8},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/camera{c_tag = "Toxins Lab West"; dir = 2; network = list("SS13","RD"); pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bIM" = (/obj/machinery/portable_atmospherics/canister,/obj/item/device/radio/intercom{pixel_y = 25},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bIN" = (/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/item/weapon/storage/firstaid/toxin,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bIO" = (/obj/machinery/portable_atmospherics/pump,/obj/structure/window/reinforced{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bIP" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bIQ" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/light{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bIR" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bIS" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bIT" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bIU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bIV" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bIW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/toxins/mixing) -"bIX" = (/turf/closed/wall,/area/toxins/mixing) -"bIY" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) -"bIZ" = (/obj/machinery/computer/security/mining{network = list("MINE","AuxBase")},/obj/machinery/camera{c_tag = "Mining Dock"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bJa" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bJb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bJc" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/wardrobe/miner,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bJd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/quartermaster/miningdock) -"bJe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bJf" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bJg" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = 15},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bJh" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bJi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/maintenance/aft) -"bJj" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) -"bJk" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) -"bJl" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) -"bJm" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) -"bJn" = (/obj/structure/table,/obj/item/device/aicard,/obj/item/weapon/aiModule/reset,/turf/open/floor/plating,/area/storage/tech) -"bJo" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plating,/area/storage/tech) -"bJp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/storage/tech) -"bJq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bJr" = (/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bJs" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"bJt" = (/turf/open/floor/plasteel,/area/janitor) -"bJu" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Janitor"},/turf/open/floor/plasteel,/area/janitor) -"bJv" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/janitor) -"bJw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/janitor) -"bJx" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/janitor) -"bJy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/hostile/lizard{name = "Wags-His-Tail"; real_name = "Wags-His-Tail"},/turf/open/floor/plasteel,/area/janitor) -"bJz" = (/obj/item/weapon/mop,/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel,/area/janitor) -"bJA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/apc{dir = 8; name = "Custodial Closet APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/janitor) -"bJB" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/asmaint) -"bJC" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 6},/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 25},/turf/open/floor/plating,/area/maintenance/asmaint) -"bJD" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) -"bJE" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) -"bJF" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) -"bJG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Surgery Maintenance"; req_access_txt = "45"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/sleeper) -"bJH" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bJI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bJJ" = (/obj/structure/table/optable,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bJK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bJL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bJM" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access_txt = "45"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/medical/sleeper) -"bJN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/sleeper) -"bJO" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bJP" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/iv_drip,/turf/open/floor/plasteel/whiteblue/corner{dir = 4},/area/medical/sleeper) -"bJQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/medical/sleeper) -"bJR" = (/obj/structure/table,/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/clothing/neck/stethoscope,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bJS" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bJT" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bJU" = (/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = -30; pixel_y = 0},/obj/machinery/camera{c_tag = "Medbay South"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bJV" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bJW" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bJX" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bJY" = (/obj/structure/disposalpipe/segment,/obj/machinery/light_switch{pixel_x = 28; pixel_y = 0},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bJZ" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bKa" = (/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bKb" = (/obj/effect/decal/cleanable/oil,/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bKc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bKd" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bKe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/storage) -"bKf" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bKg" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bKh" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bKi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/mixing) -"bKj" = (/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bKk" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bKl" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/obj/machinery/meter,/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bKm" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bKn" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bKo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/maintenance/asmaint2) -"bKp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/toxins/mixing) -"bKq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/toxins/mixing) -"bKr" = (/obj/machinery/doppler_array{dir = 4},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/mixing) -"bKs" = (/turf/closed/wall,/area/toxins/test_area) -"bKt" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/toxins/test_area) -"bKu" = (/obj/item/weapon/scalpel,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bKv" = (/obj/structure/table,/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) -"bKw" = (/obj/machinery/computer/shuttle/mining,/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) -"bKx" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/miningdock) -"bKy" = (/obj/machinery/computer/shuttle/mining,/turf/open/floor/plasteel/brown{dir = 9},/area/quartermaster/miningdock) -"bKz" = (/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bKA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bKB" = (/obj/structure/closet/secure_closet/miner,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bKC" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) -"bKD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bKE" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/aft) -"bKF" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) -"bKG" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/borgupload{pixel_x = -1; pixel_y = 1},/obj/item/weapon/circuitboard/computer/aiupload{pixel_x = 2; pixel_y = -2},/turf/open/floor/plasteel,/area/storage/tech) -"bKH" = (/obj/machinery/camera{c_tag = "Secure Tech Storage"; dir = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/storage/tech) -"bKI" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/storage/tech) -"bKJ" = (/obj/structure/table,/obj/machinery/cell_charger{pixel_y = 5},/obj/item/device/multitool,/turf/open/floor/plating,/area/storage/tech) -"bKK" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/pandemic{pixel_x = -3; pixel_y = 3},/obj/item/weapon/circuitboard/computer/rdconsole,/obj/item/weapon/circuitboard/machine/rdserver{pixel_x = 3; pixel_y = -3},/obj/item/weapon/circuitboard/machine/destructive_analyzer,/obj/item/weapon/circuitboard/machine/protolathe,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/circuitboard/computer/aifixer,/obj/item/weapon/circuitboard/computer/teleporter,/obj/item/weapon/circuitboard/machine/circuit_imprinter,/obj/item/weapon/circuitboard/machine/mechfab,/turf/open/floor/plating,/area/storage/tech) -"bKL" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/mining,/obj/item/weapon/circuitboard/machine/autolathe{pixel_x = 3; pixel_y = -3},/obj/item/weapon/circuitboard/computer/arcade/battle,/turf/open/floor/plating,/area/storage/tech) -"bKM" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/telecomms/processor,/obj/item/weapon/circuitboard/machine/telecomms/receiver,/obj/item/weapon/circuitboard/machine/telecomms/server,/obj/item/weapon/circuitboard/machine/telecomms/bus,/obj/item/weapon/circuitboard/machine/telecomms/broadcaster,/obj/item/weapon/circuitboard/computer/message_monitor{pixel_y = -5},/turf/open/floor/plating,/area/storage/tech) -"bKN" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"bKO" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/key/janitor,/turf/open/floor/plasteel,/area/janitor) -"bKP" = (/obj/structure/table,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/open/floor/plasteel,/area/janitor) -"bKQ" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light,/turf/open/floor/plasteel,/area/janitor) -"bKR" = (/obj/structure/janitorialcart,/turf/open/floor/plasteel,/area/janitor) -"bKS" = (/obj/item/weapon/restraints/legcuffs/beartrap,/obj/item/weapon/restraints/legcuffs/beartrap,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/janitor) -"bKT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/janitor) -"bKU" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/janitor) -"bKV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/asmaint) -"bKW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/asmaint) -"bKX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) -"bKY" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) -"bKZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 4; name = "Treatment Center APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/sleeper) -"bLa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 4},/area/medical/sleeper) -"bLb" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bLc" = (/obj/machinery/computer/operating,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bLd" = (/obj/structure/sign/nosmoking_2{pixel_x = -28},/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/plasteel/whiteblue/corner{dir = 1},/area/medical/sleeper) -"bLe" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bLf" = (/obj/machinery/vending/wallmed{pixel_x = 28; pixel_y = 0},/obj/machinery/camera{c_tag = "Medbay Recovery Room"; dir = 8; network = list("SS13")},/obj/machinery/iv_drip,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bLg" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/weapon/gun/syringe,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bLh" = (/obj/structure/closet/crate/freezer/surplus_limbs,/obj/item/weapon/reagent_containers/glass/beaker/synthflesh,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bLi" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/clothing/neck/stethoscope,/obj/machinery/vending/wallmed{pixel_y = 28},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bLj" = (/obj/structure/chair/office/light{dir = 8},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bLk" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/button/door{id = "medpriv4"; name = "Privacy Shutters"; pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bLl" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "medpriv4"; name = "privacy door"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) -"bLm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bLn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bLo" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bLp" = (/obj/machinery/door/airlock/glass_command{name = "Chief Medical Officer"; req_access_txt = "40"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bLq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bLr" = (/obj/machinery/holopad,/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bLs" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bLt" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/medical/cmo) -"bLu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bLv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{sortType = 10},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bLw" = (/obj/effect/landmark/event_spawn,/turf/open/floor/engine,/area/toxins/xenobiology) -"bLx" = (/obj/machinery/power/apc{dir = 8; name = "Toxins Storage APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/camera{c_tag = "Toxins Storage"; dir = 4; network = list("SS13","RD")},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bLy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bLz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bLA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bLB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/airlock/research{name = "Toxins Storage"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bLC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bLD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bLE" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bLF" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/research{name = "Toxins Lab"; req_access_txt = "8"},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bLG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bLH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bLI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/mixing) -"bLJ" = (/obj/structure/sign/securearea{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/toxins/mixing) -"bLK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/toxins/mixing) -"bLL" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/toxins/mixing) -"bLM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/toxins/mixing) -"bLN" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/toxins/mixing) -"bLO" = (/obj/machinery/button/massdriver{dir = 2; id = "toxinsdriver"; pixel_y = 24},/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/mixing) -"bLP" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the test chamber."; dir = 8; layer = 4; name = "Test Chamber Telescreen"; network = list("Toxins"); pixel_x = 30; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/mixing) -"bLQ" = (/obj/item/target,/obj/structure/window/reinforced,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/toxins/test_area) -"bLR" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bLS" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) -"bLT" = (/obj/item/weapon/ore/iron,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bLU" = (/obj/structure/closet/crate,/obj/machinery/light/small{dir = 4},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bLV" = (/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/miningdock) -"bLW" = (/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bLX" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bLY" = (/obj/machinery/light/small{dir = 1},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/aft) -"bLZ" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/aft) -"bMa" = (/turf/open/floor/plating,/area/maintenance/aft) -"bMb" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/crew{pixel_x = -1; pixel_y = 1},/obj/item/weapon/circuitboard/computer/card{pixel_x = 2; pixel_y = -2},/obj/item/weapon/circuitboard/computer/communications{pixel_x = 5; pixel_y = -5},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/storage/tech) -"bMc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/storage/tech) -"bMd" = (/obj/machinery/door/airlock/highsecurity{name = "Secure Tech Storage"; req_access_txt = "19;23"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/storage/tech) -"bMe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/storage/tech) -"bMf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating,/area/storage/tech) -"bMg" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/storage/tech) -"bMh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) -"bMi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) -"bMj" = (/obj/machinery/door/airlock/engineering{name = "Tech Storage"; req_access_txt = "23"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) -"bMk" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bMl" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bMm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"bMn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/janitor) -"bMo" = (/obj/machinery/door/airlock/maintenance{name = "Custodial Maintenance"; req_access_txt = "26"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/janitor) -"bMp" = (/obj/machinery/power/apc{dir = 8; name = "Medbay Maintenance APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/asmaint) -"bMq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/asmaint) -"bMr" = (/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 25},/turf/open/floor/plating,/area/maintenance/asmaint) -"bMs" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 35},/turf/open/floor/plating,/area/maintenance/asmaint) -"bMt" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) -"bMu" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bMv" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bMw" = (/obj/structure/closet/secure_closet/medical2,/turf/open/floor/plasteel,/area/medical/sleeper) -"bMx" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/sleeper) -"bMy" = (/obj/machinery/vending/wallmed{pixel_y = -28},/obj/machinery/camera{c_tag = "Surgery Operating"; dir = 1; network = list("SS13"); pixel_x = 22},/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bMz" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/sleeper) -"bMA" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/BMinus{pixel_x = -4; pixel_y = 4},/obj/item/weapon/reagent_containers/blood/BPlus{pixel_x = 1; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = -2; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/APlus,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel,/area/medical/sleeper) -"bMB" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bMC" = (/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bMD" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bME" = (/obj/structure/table,/obj/machinery/light,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bMF" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/o2,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bMG" = (/obj/structure/table,/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -30},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bMH" = (/obj/structure/table,/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 0; pixel_y = -30; pixel_z = 0},/obj/item/weapon/storage/firstaid/fire{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bMI" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/brute{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/brute,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bMJ" = (/obj/machinery/light,/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/syringes,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{pixel_x = 7; pixel_y = -3},/obj/item/weapon/reagent_containers/glass/bottle/morphine{pixel_x = 8; pixel_y = -3},/obj/item/weapon/reagent_containers/syringe{pixel_x = 6; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) -"bMK" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bML" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bMM" = (/obj/machinery/door/airlock/medical{name = "Patient Room"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bMN" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bMO" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bMP" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/cmo) -"bMQ" = (/obj/structure/table,/obj/item/weapon/cartridge/medical{pixel_x = -2; pixel_y = 6},/obj/item/weapon/cartridge/medical{pixel_x = 6; pixel_y = 3},/obj/item/weapon/cartridge/medical,/obj/item/weapon/cartridge/chemistry{pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bMR" = (/obj/machinery/computer/card/minor/cmo,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bMS" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bMT" = (/obj/structure/closet/secure_closet/CMO,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/barber,/area/medical/cmo) -"bMU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/toxins/xenobiology) -"bMV" = (/obj/structure/disposaloutlet{dir = 1},/obj/structure/disposalpipe/trunk,/turf/open/floor/engine,/area/toxins/xenobiology) -"bMW" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/toxins/storage) -"bMX" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/toxins/storage) -"bMY" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/toxins/storage) -"bMZ" = (/obj/machinery/portable_atmospherics/scrubber/huge,/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) -"bNa" = (/obj/structure/sign/nosmoking_2{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bNb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bNc" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bNd" = (/obj/item/device/assembly/prox_sensor{pixel_x = -4; pixel_y = 1},/obj/item/device/assembly/prox_sensor{pixel_x = 8; pixel_y = 9},/obj/item/device/assembly/prox_sensor{pixel_x = 9; pixel_y = -2},/obj/item/device/assembly/prox_sensor{pixel_x = 0; pixel_y = 2},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bNe" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bNf" = (/obj/structure/table/reinforced,/obj/item/weapon/wrench,/obj/item/weapon/screwdriver{pixel_y = 10},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bNg" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bNh" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bNi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/research{name = "Toxins Launch Room Access"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bNj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/toxins/mixing) -"bNk" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) -"bNl" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) -"bNm" = (/obj/machinery/door/airlock/research{name = "Toxins Launch Room"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) -"bNn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) -"bNo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/toxins/mixing) -"bNp" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/mixing) -"bNq" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'BOMB RANGE"; name = "BOMB RANGE"},/turf/closed/wall,/area/toxins/test_area) -"bNr" = (/obj/structure/chair,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bNs" = (/obj/item/device/flashlight/lamp,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bNt" = (/obj/structure/chair,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bNu" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/obj/effect/decal/remains/human,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) -"bNv" = (/obj/machinery/door/airlock/titanium{name = "Mining Shuttle Airlock"; req_access_txt = "0"},/obj/docking_port/mobile{dir = 8; dwidth = 3; height = 5; id = "mining"; name = "mining shuttle"; port_angle = 90; width = 7},/obj/docking_port/stationary{dir = 8; dwidth = 3; height = 5; id = "mining_home"; name = "mining shuttle bay"; width = 7},/turf/open/floor/plating,/area/shuttle/labor) -"bNw" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Mining Dock Airlock"; req_access = null; req_access_txt = "48"; shuttledocked = 1},/turf/open/floor/plating,/area/quartermaster/miningdock) -"bNx" = (/obj/machinery/door/airlock/glass_mining{cyclelinkeddir = 8; name = "Mining Dock"; req_access_txt = "48"},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bNy" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bNz" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) -"bNA" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/aft) -"bNB" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/robotics{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/computer/mecha_control{pixel_x = 1; pixel_y = -1},/turf/open/floor/plasteel,/area/storage/tech) -"bNC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/storage/tech) -"bND" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/storage/tech) -"bNE" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/turf/open/floor/plating,/area/storage/tech) -"bNF" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/cloning{pixel_x = 0},/obj/item/weapon/circuitboard/computer/med_data{pixel_x = 3; pixel_y = -3},/obj/item/weapon/circuitboard/machine/clonescanner,/obj/item/weapon/circuitboard/machine/clonepod,/obj/item/weapon/circuitboard/computer/scan_consolenew,/turf/open/floor/plating,/area/storage/tech) -"bNG" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/secure_data{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/computer/security{pixel_x = 1; pixel_y = -1},/turf/open/floor/plating,/area/storage/tech) -"bNH" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/powermonitor{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/computer/stationalert{pixel_x = 1; pixel_y = -1},/obj/item/weapon/circuitboard/computer/atmos_alert{pixel_x = 3; pixel_y = -3},/turf/open/floor/plating,/area/storage/tech) -"bNI" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plating,/area/storage/tech) -"bNJ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bNK" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bNL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"bNM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bNN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bNO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bNP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bNQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bNR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bNS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) -"bNT" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/asmaint) -"bNU" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bNV" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bNW" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plating,/area/maintenance/asmaint) -"bNX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/sleeper) -"bNY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall/r_wall,/area/medical/sleeper) -"bNZ" = (/turf/closed/wall/r_wall,/area/medical/medbay) -"bOa" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bOb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bOc" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/shieldwallgen{req_access = list(55)},/turf/open/floor/plating,/area/toxins/xenobiology) -"bOd" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"bOe" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"bOf" = (/obj/machinery/door/window/southleft{dir = 1; name = "Test Chamber"; req_access_txt = "55"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) -"bOg" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"bOh" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"bOi" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bOj" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bOk" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bOl" = (/obj/structure/closet/l3closet/scientist{pixel_x = -2},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bOm" = (/obj/structure/closet/wardrobe/science_white,/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bOn" = (/obj/item/device/assembly/signaler{pixel_x = 0; pixel_y = 8},/obj/item/device/assembly/signaler{pixel_x = -8; pixel_y = 5},/obj/item/device/assembly/signaler{pixel_x = 6; pixel_y = 5},/obj/item/device/assembly/signaler{pixel_x = -2; pixel_y = -2},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bOo" = (/obj/item/device/transfer_valve{pixel_x = -5},/obj/item/device/transfer_valve{pixel_x = -5},/obj/item/device/transfer_valve{pixel_x = 0},/obj/item/device/transfer_valve{pixel_x = 0},/obj/item/device/transfer_valve{pixel_x = 5},/obj/item/device/transfer_valve{pixel_x = 5},/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bOp" = (/obj/item/device/assembly/timer{pixel_x = 5; pixel_y = 4},/obj/item/device/assembly/timer{pixel_x = -4; pixel_y = 2},/obj/item/device/assembly/timer{pixel_x = 6; pixel_y = -4},/obj/item/device/assembly/timer{pixel_x = 0; pixel_y = 0},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bOq" = (/obj/structure/tank_dispenser,/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bOr" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bOs" = (/obj/machinery/power/apc{dir = 4; name = "Toxins Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable,/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bOt" = (/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) -"bOu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/toxins/mixing) -"bOv" = (/obj/machinery/camera{c_tag = "Toxins Launch Room Access"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/mixing) -"bOw" = (/obj/machinery/door/window/southleft{name = "Mass Driver Door"; req_access_txt = "7"},/turf/open/floor/plasteel/loadingarea,/area/toxins/mixing) -"bOx" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/mixing) -"bOy" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bOz" = (/turf/open/floor/plating/airless,/area/toxins/test_area) -"bOA" = (/obj/structure/chair{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bOB" = (/obj/item/weapon/ore/silver,/obj/item/weapon/ore/silver,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bOC" = (/obj/machinery/camera{c_tag = "Mining Dock External"; dir = 8},/obj/structure/reagent_dispensers/fueltank,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bOD" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/closed/wall,/area/quartermaster/miningdock) -"bOE" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/brown{dir = 10},/area/quartermaster/miningdock) -"bOF" = (/obj/structure/rack{dir = 1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/pickaxe{pixel_x = 5},/obj/item/weapon/shovel{pixel_x = -5},/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bOG" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bOH" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bOI" = (/obj/machinery/mineral/equipment_vendor,/turf/open/floor/plasteel,/area/quartermaster/miningdock) -"bOJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/aft) -"bOK" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) -"bOL" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) -"bOM" = (/obj/structure/table,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/turf/open/floor/plating,/area/storage/tech) -"bON" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/turf/open/floor/plating,/area/storage/tech) -"bOO" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plating,/area/storage/tech) -"bOP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) -"bOQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/storage/tech) -"bOR" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bOS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bOT" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"bOU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint) -"bOV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/maintenance/asmaint) -"bOW" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/closed/wall/r_wall,/area/maintenance/asmaint) -"bOX" = (/obj/structure/closet,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bOY" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bOZ" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPa" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bPc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/sign/securearea{pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPe" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bPf" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = 11},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPh" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPi" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "Medbay APC"; pixel_x = 24; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/medical/medbay) -"bPj" = (/obj/machinery/vending/wallmed{pixel_y = 28},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bPk" = (/obj/machinery/door/airlock/medical{name = "Patient Room 2"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bPl" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bPm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/medical/medbay) -"bPn" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPo" = (/obj/machinery/power/apc{dir = 1; name = "CM Office APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/cmo) -"bPp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPq" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bPr" = (/obj/item/weapon/wrench,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bPs" = (/obj/machinery/computer/security/telescreen{name = "Test Chamber Moniter"; network = list("Xeno"); pixel_x = 0; pixel_y = 2},/obj/structure/table/reinforced,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bPt" = (/obj/machinery/button/door{id = "misclab"; name = "Test Chamber Blast Doors"; pixel_x = 0; pixel_y = -2; req_access_txt = "55"},/obj/structure/table/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/window/reinforced{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bPu" = (/obj/machinery/door/window/southleft{name = "Test Chamber"; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bPv" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bPw" = (/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/obj/structure/table,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bPx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bPy" = (/obj/structure/sign/biohazard,/turf/closed/wall/r_wall,/area/toxins/xenobiology) -"bPz" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/door/firedoor/heavy,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bPA" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/heavy,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bPB" = (/obj/machinery/camera{c_tag = "Research Division South"; dir = 8; network = list("SS13")},/obj/machinery/door/firedoor/heavy,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) -"bPC" = (/obj/structure/sign/fire,/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) -"bPD" = (/obj/structure/sign/nosmoking_2{pixel_x = -32},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bPE" = (/obj/machinery/mass_driver{dir = 4; id = "toxinsdriver"},/turf/open/floor/plating,/area/toxins/mixing) -"bPF" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/toxins/mixing) -"bPG" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/toxins/mixing) -"bPH" = (/obj/machinery/door/poddoor{id = "toxinsdriver"; name = "toxins launcher bay door"},/turf/open/floor/plating,/area/toxins/mixing) -"bPI" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bPJ" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bPK" = (/obj/item/device/radio/beacon,/turf/open/floor/plating/airless,/area/toxins/test_area) -"bPL" = (/obj/machinery/camera{active_power_usage = 0; c_tag = "Bomb Test Site"; desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site."; dir = 8; invuln = 1; light = null; name = "Hardened Bomb-Test Camera"; network = list("Toxins"); use_power = 0},/obj/item/target/alien{anchored = 1},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating{luminosity = 2; initial_gas_mix = "o2=0.01;n2=0.01"},/area/toxins/test_area) -"bPM" = (/turf/closed/indestructible{desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; icon_state = "riveted"; name = "hyper-reinforced wall"},/area/toxins/test_area) -"bPN" = (/obj/structure/shuttle/engine/heater,/turf/open/floor/plating,/area/shuttle/labor) -"bPO" = (/obj/structure/ore_box,/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) -"bPP" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) -"bPQ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/aft) -"bPR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bPS" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/turf/open/floor/plating,/area/storage/tech) -"bPT" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/machinery/light/small,/turf/open/floor/plating,/area/storage/tech) -"bPU" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/turf/open/floor/plating,/area/storage/tech) -"bPV" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/clothing/gloves/color/yellow,/obj/item/device/t_scanner,/obj/item/device/multitool,/turf/open/floor/plating,/area/storage/tech) -"bPW" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/device/multitool,/obj/item/clothing/glasses/meson,/obj/machinery/light/small,/turf/open/floor/plating,/area/storage/tech) -"bPX" = (/obj/machinery/requests_console{department = "Tech storage"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/storage/tech) -"bPY" = (/obj/machinery/vending/assist,/turf/open/floor/plating,/area/storage/tech) -"bPZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/camera{c_tag = "Aft Primary Hallway 2"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bQa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bQb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bQc" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/caution{dir = 5},/area/hallway/primary/aft) -"bQd" = (/turf/closed/wall/r_wall,/area/atmos) -"bQe" = (/obj/machinery/portable_atmospherics/canister/air,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/atmos) -"bQf" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/atmos) -"bQg" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/atmos) -"bQh" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/atmos) -"bQi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/atmos) -"bQj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/maintenance{name = "Atmospherics Maintenance"; req_access_txt = "24"},/turf/open/floor/plating,/area/atmos) -"bQk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/closed/wall/r_wall,/area/atmos) -"bQl" = (/obj/machinery/atmospherics/pipe/simple/supply/visible,/turf/closed/wall/r_wall,/area/atmos) -"bQm" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bQn" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/clothing/neck/stethoscope,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bQo" = (/obj/structure/chair/office/light{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bQp" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/button/door{id = "medpriv1"; name = "Privacy Shutters"; pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bQq" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "medpriv1"; name = "privacy door"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) -"bQr" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white,/area/medical/medbay) -"bQs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) -"bQt" = (/obj/machinery/door/airlock/maintenance{name = "Medbay Maintenance"; req_access_txt = "5"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) -"bQu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bQv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bQw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bQx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"bQy" = (/obj/machinery/power/apc{dir = 8; name = "Xenobiology APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQz" = (/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQA" = (/obj/structure/chair/stool,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQC" = (/obj/machinery/monkey_recycler,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQD" = (/obj/machinery/processor{desc = "A machine used to process slimes and retrieve their extract."; name = "Slime Processor"},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQE" = (/obj/machinery/smartfridge/extract,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQF" = (/obj/structure/table,/obj/machinery/reagentgrinder,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQG" = (/obj/structure/closet/l3closet/scientist,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQH" = (/obj/structure/closet/l3closet/scientist,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 28},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bQI" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/xenobiology) -"bQJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bQK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/research{name = "Research Division"}) -"bQL" = (/obj/machinery/door/poddoor{id = "mixvent"; name = "Mixer Room Vent"},/turf/open/floor/engine/vacuum,/area/toxins/mixing) -"bQM" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/engine/vacuum,/area/toxins/mixing) -"bQN" = (/obj/machinery/sparker{dir = 2; id = "mixingsparker"; pixel_x = 25},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; external_pressure_bound = 0; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/vacuum,/area/toxins/mixing) -"bQO" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/closed/wall/r_wall,/area/toxins/mixing) -"bQP" = (/obj/machinery/airlock_sensor{id_tag = "tox_airlock_sensor"; master_tag = "tox_airlock_control"; pixel_y = 24},/obj/machinery/atmospherics/components/binary/pump{dir = 4; on = 1},/turf/open/floor/engine,/area/toxins/mixing) -"bQQ" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/obj/machinery/meter,/obj/machinery/embedded_controller/radio/airlock_controller{airpump_tag = "tox_airlock_pump"; exterior_door_tag = "tox_airlock_exterior"; id_tag = "tox_airlock_control"; interior_door_tag = "tox_airlock_interior"; pixel_x = -24; pixel_y = 0; sanitize_external = 1; sensor_tag = "tox_airlock_sensor"},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bQR" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4; name = "mix to port"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bQS" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/mixing) -"bQT" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bQU" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bQV" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bQW" = (/obj/structure/chair{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bQX" = (/obj/structure/shuttle/engine/propulsion/burst,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plating/airless,/area/shuttle/labor) -"bQY" = (/obj/structure/disposalpipe/segment,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bQZ" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bRa" = (/turf/open/floor/plasteel/caution{dir = 4},/area/hallway/primary/aft) -"bRb" = (/turf/closed/wall,/area/atmos) -"bRc" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plasteel,/area/atmos) -"bRd" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bRe" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/atmos) -"bRf" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) -"bRg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) -"bRh" = (/obj/machinery/pipedispenser,/turf/open/floor/plasteel,/area/atmos) -"bRi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bRj" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 8},/obj/machinery/light{dir = 1},/obj/machinery/meter{frequency = 1441; id_tag = "waste_meter"; name = "Waste Loop"},/turf/open/floor/plasteel,/area/atmos) -"bRk" = (/obj/machinery/camera{c_tag = "Atmospherics North East"},/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Distro to Waste"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"bRl" = (/obj/machinery/atmospherics/pipe/manifold/supply/visible{dir = 2},/obj/machinery/meter{frequency = 1441; id_tag = "distro_meter"; name = "Distribution Loop"},/turf/open/floor/plasteel,/area/atmos) -"bRm" = (/obj/machinery/atmospherics/pipe/manifold/supply/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) -"bRn" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Air to Distro"; on = 1},/turf/open/floor/plasteel,/area/atmos) -"bRo" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 10; initialize_directions = 10},/turf/open/floor/plasteel,/area/atmos) -"bRp" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) -"bRq" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/closed/wall/r_wall,/area/atmos) -"bRr" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/space,/area/space/nearstation) -"bRs" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/space,/area/space) -"bRt" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 10},/turf/open/space,/area/space/nearstation) -"bRu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/medical/virology) -"bRv" = (/turf/closed/wall/r_wall,/area/medical/virology) -"bRw" = (/turf/closed/wall,/area/medical/virology) -"bRx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/doorButtons/access_button{idDoor = "virology_airlock_exterior"; idSelf = "virology_airlock_control"; name = "Virology Access Button"; pixel_x = -24; pixel_y = 0; req_access_txt = "39"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/virology{autoclose = 0; frequency = 1449; icon_state = "door_locked"; id_tag = "virology_airlock_exterior"; locked = 1; name = "Virology Exterior Airlock"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/virology) -"bRy" = (/obj/structure/sign/biohazard,/turf/closed/wall,/area/medical/virology) -"bRz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 13},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) -"bRA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Xenobiology Maintenance"; req_access_txt = "55"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/xenobiology) -"bRB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bRC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bRD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bRE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bRF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bRG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bRH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bRI" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Xenobiology Lab"; req_access_txt = "55"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bRJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) -"bRK" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) -"bRL" = (/turf/open/floor/engine/vacuum,/area/toxins/mixing) -"bRM" = (/obj/effect/landmark/event_spawn,/turf/open/floor/engine/vacuum,/area/toxins/mixing) -"bRN" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1449; glass = 1; heat_proof = 1; icon_state = "door_locked"; id_tag = "tox_airlock_exterior"; locked = 1; name = "Mixing Room Exterior Airlock"; req_access_txt = "8"},/turf/open/floor/engine,/area/toxins/mixing) -"bRO" = (/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{dir = 2; frequency = 1449; id = "tox_airlock_pump"},/turf/open/floor/engine,/area/toxins/mixing) -"bRP" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1449; glass = 1; heat_proof = 1; icon_state = "door_locked"; id_tag = "tox_airlock_interior"; locked = 1; name = "Mixing Room Interior Airlock"; req_access_txt = "8"},/turf/open/floor/engine,/area/toxins/mixing) -"bRQ" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bRR" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bRS" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/camera{c_tag = "Toxins Lab East"; dir = 8; network = list("SS13","RD"); pixel_y = -22},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) -"bRT" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bRU" = (/obj/structure/closet/wardrobe/grey,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bRV" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bRW" = (/obj/structure/chair{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bRX" = (/obj/item/device/flashlight/lamp,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bRY" = (/obj/structure/chair{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating/airless,/area/toxins/test_area) -"bRZ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/test_area) -"bSa" = (/turf/closed/wall,/area/construction) -"bSb" = (/obj/structure/closet/crate,/turf/open/floor/plating,/area/construction) -"bSc" = (/turf/open/floor/plating,/area/construction) -"bSd" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plating,/area/construction) -"bSe" = (/turf/open/floor/plasteel,/area/construction) -"bSf" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel,/area/construction) -"bSg" = (/turf/open/floor/plasteel/caution{dir = 6},/area/hallway/primary/aft) -"bSh" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/turf/open/floor/plasteel,/area/atmos) -"bSi" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bSj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/atmos) -"bSk" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/camera{c_tag = "Atmospherics Monitoring"; dir = 2; network = list("SS13")},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/caution{dir = 5},/area/atmos) -"bSl" = (/obj/machinery/camera{c_tag = "Atmospherics North West"; dir = 4; network = list("SS13")},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"bSm" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) -"bSn" = (/turf/open/floor/plasteel,/area/atmos) -"bSo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/atmos) -"bSp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/atmos) -"bSq" = (/obj/machinery/pipedispenser/disposal,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bSr" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bSs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bSt" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/atmos) -"bSu" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Mix to Distro"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"bSv" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 8; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) -"bSw" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Mix to Incinerator"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"bSx" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 10; initialize_directions = 10},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bSy" = (/obj/structure/grille,/turf/closed/wall/r_wall,/area/atmos) -"bSz" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space/nearstation) -"bSA" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall/r_wall,/area/medical/virology) -"bSB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) -"bSC" = (/obj/item/weapon/storage/secure/safe{pixel_x = 5; pixel_y = 29},/obj/machinery/camera{c_tag = "Virology Break Room"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) -"bSD" = (/obj/machinery/light{dir = 1},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/white,/area/medical/virology) -"bSE" = (/obj/item/weapon/bedsheet,/obj/structure/bed,/turf/open/floor/plasteel/white,/area/medical/virology) -"bSF" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/medical/virology) -"bSG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) -"bSH" = (/obj/structure/closet/emcloset,/obj/machinery/camera{c_tag = "Virology Airlock"; dir = 2; network = list("SS13")},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/white,/area/medical/virology) -"bSI" = (/turf/open/floor/plasteel/white,/area/medical/virology) -"bSJ" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel/white,/area/medical/virology) -"bSK" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/white,/area/medical/virology) -"bSL" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bSM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/xenobiology) -"bSN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bSO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/chair/comfy/black,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bSP" = (/obj/effect/landmark/start{name = "Scientist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/chair/comfy/black,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bSQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bSR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bSS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bST" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bSU" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/xenobiology) -"bSV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/research{name = "Research Division"}) -"bSW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/research{name = "Research Division"}) -"bSX" = (/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/research{name = "Research Division"}) -"bSY" = (/obj/machinery/sparker{dir = 2; id = "mixingsparker"; pixel_x = 25},/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 4; frequency = 1441; id = "air_in"},/turf/open/floor/engine/vacuum,/area/toxins/mixing) -"bSZ" = (/obj/structure/sign/fire{pixel_y = -32},/obj/machinery/atmospherics/components/binary/pump{dir = 8; on = 1},/turf/open/floor/engine,/area/toxins/mixing) -"bTa" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/obj/machinery/meter,/obj/machinery/button/door{id = "mixvent"; name = "Mixing Room Vent Control"; pixel_x = -25; pixel_y = 5; req_access_txt = "7"},/obj/machinery/button/ignition{id = "mixingsparker"; pixel_x = -25; pixel_y = -5},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bTb" = (/obj/machinery/light,/obj/machinery/atmospherics/components/binary/valve{dir = 4; name = "port to mix"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) -"bTc" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/mixing) -"bTd" = (/obj/item/target,/obj/structure/window/reinforced{dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/toxins/test_area) -"bTe" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/space/nearstation) -"bTf" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/aft) -"bTg" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) -"bTh" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/aft) -"bTi" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) -"bTj" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/aft) -"bTk" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/aft) -"bTl" = (/obj/structure/light_construct{dir = 8},/turf/open/floor/plating,/area/construction) -"bTm" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/construction) -"bTn" = (/obj/structure/light_construct{dir = 4},/turf/open/floor/plasteel,/area/construction) -"bTo" = (/obj/structure/disposalpipe/segment,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bTp" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bTq" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/hallway/primary/aft) -"bTr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; dir = 4; freq = 1400; location = "Atmospherics"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/atmos) -"bTs" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/loadingarea{dir = 4},/area/atmos) -"bTt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bTu" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bTv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) -"bTw" = (/obj/machinery/computer/atmos_control,/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; name = "Atmos RC"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) -"bTx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/atmos) -"bTy" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel,/area/atmos) -"bTz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) -"bTA" = (/obj/machinery/pipedispenser/disposal/transit_tube,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bTB" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bTC" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Waste In"; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bTD" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/atmos) -"bTE" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible,/turf/open/floor/plasteel,/area/atmos) -"bTF" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix Outlet Pump"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"bTG" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air to Mix"; on = 0},/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bTH" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/manifold/yellow/visible,/turf/open/floor/plasteel/green/side{dir = 5},/area/atmos) -"bTI" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bTJ" = (/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/grille,/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) -"bTK" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "mix_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/vacuum,/area/atmos) -"bTL" = (/obj/machinery/camera{c_tag = "Atmospherics Waste Tank"},/turf/open/floor/engine/vacuum,/area/atmos) -"bTM" = (/turf/open/floor/engine/vacuum,/area/atmos) -"bTN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) -"bTO" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/open/floor/plasteel/white,/area/medical/virology) -"bTP" = (/obj/machinery/iv_drip,/turf/open/floor/plasteel/white,/area/medical/virology) -"bTQ" = (/obj/machinery/shower{dir = 4},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/medical/virology) -"bTR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/medical/virology) -"bTS" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/l3closet,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) -"bTT" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) -"bTU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/mob/living/carbon/monkey,/turf/open/floor/plasteel/white,/area/medical/virology) -"bTV" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/virology) -"bTW" = (/obj/machinery/disposal/bin,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = -32},/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bTX" = (/obj/machinery/computer/camera_advanced/xenobio,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bTY" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bTZ" = (/obj/structure/table/glass,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bUa" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bUb" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bUc" = (/obj/structure/table,/obj/item/weapon/extinguisher{pixel_x = 4; pixel_y = 3},/obj/item/weapon/extinguisher,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bUd" = (/obj/structure/table,/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bUe" = (/obj/structure/table,/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bUf" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/syringes,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bUg" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bUh" = (/turf/closed/wall,/area/toxins/xenobiology) -"bUi" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/misc_lab) -"bUj" = (/obj/machinery/door/airlock/research{name = "Testing Lab"; req_access_txt = "47"},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bUk" = (/turf/closed/wall/r_wall,/area/toxins/misc_lab) -"bUl" = (/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bUm" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bUn" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/aft) -"bUo" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/maintenance/aft) -"bUp" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/aft) -"bUq" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/aft) -"bUr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"bUs" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"bUt" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating,/area/maintenance/aft) -"bUu" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) -"bUv" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/aft) -"bUw" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bUx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/construction) -"bUy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) -"bUz" = (/obj/structure/closet/crate,/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) -"bUA" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/construction) -"bUB" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) -"bUC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/construction) -"bUD" = (/obj/machinery/door/airlock/engineering{name = "Construction Area"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) -"bUE" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bUF" = (/turf/open/floor/plasteel/caution{dir = 5},/area/hallway/primary/aft) -"bUG" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "atmos"; layer = 2.9; name = "atmos blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bUH" = (/obj/structure/tank_dispenser{pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) -"bUI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/atmos) -"bUJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bUK" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/atmos) -"bUL" = (/obj/machinery/computer/atmos_control,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) -"bUM" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/atmos) -"bUN" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bUO" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/atmos) -"bUP" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/atmos) -"bUQ" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/atmos) -"bUR" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 8},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/atmos) -"bUS" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix to Filter"; on = 1},/turf/open/floor/plasteel,/area/atmos) -"bUT" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bUU" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) -"bUV" = (/obj/machinery/atmospherics/pipe/manifold/green/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) -"bUW" = (/obj/machinery/atmospherics/pipe/manifold/green/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bUX" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "mix_in"; name = "Gas Mix Tank Control"; output_tag = "mix_out"; sensors = list("mix_sensor" = "Tank")},/turf/open/floor/plasteel/green/side{dir = 4},/area/atmos) -"bUY" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bUZ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/atmos) -"bVa" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "mix_sensor"},/turf/open/floor/engine/vacuum,/area/atmos) -"bVb" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/vacuum,/area/atmos) -"bVc" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/machinery/newscaster{pixel_x = -30},/turf/open/floor/plasteel/white,/area/medical/virology) -"bVd" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/white,/area/medical/virology) -"bVe" = (/obj/structure/closet/wardrobe/virology_white,/turf/open/floor/plasteel/white,/area/medical/virology) -"bVf" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/doorButtons/access_button{idDoor = "virology_airlock_interior"; idSelf = "virology_airlock_control"; name = "Virology Access Button"; pixel_x = 8; pixel_y = -28; req_access_txt = "39"},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/white,/area/medical/virology) -"bVg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/virology) -"bVh" = (/obj/structure/closet/l3closet,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel/white,/area/medical/virology) -"bVi" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/white,/area/medical/virology) -"bVj" = (/obj/structure/sign/biohazard,/turf/closed/wall,/area/toxins/xenobiology) -"bVk" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bVl" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bVm" = (/obj/machinery/door/firedoor,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/camera{c_tag = "Xenobiology North"; dir = 8; network = list("SS13","RD")},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bVn" = (/obj/structure/closet/bombcloset,/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bVo" = (/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bVp" = (/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"bVq" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; dir = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = 30},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bVr" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/clothing/ears/earmuffs,/obj/machinery/camera{c_tag = "Testing Lab North"; dir = 2; network = list("SS13","RD")},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bVs" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/engine,/area/toxins/misc_lab) -"bVt" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 1},/turf/open/floor/engine,/area/toxins/misc_lab) -"bVu" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4; req_access = null},/turf/open/floor/engine,/area/toxins/misc_lab) -"bVv" = (/obj/machinery/atmospherics/components/unary/thermomachine/heater{dir = 8},/turf/open/floor/engine,/area/toxins/misc_lab) -"bVw" = (/turf/closed/wall,/area/toxins/misc_lab) -"bVx" = (/obj/machinery/light/small{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bVy" = (/obj/machinery/light/small{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bVz" = (/obj/structure/rack,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bVA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/maintenance/aft) -"bVB" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/aft) -"bVC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/aft) -"bVD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/aft) -"bVE" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bVF" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/aft) -"bVG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Construction Area Maintenance"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) -"bVH" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) -"bVI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) -"bVJ" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/construction) -"bVK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/construction) -"bVL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bVM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bVN" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/heavy,/obj/machinery/door/window/northleft{dir = 4; icon_state = "left"; name = "Atmospherics Desk"; req_access_txt = "24"},/obj/machinery/door/poddoor/preopen{id = "atmos"; layer = 2.9; name = "atmos blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/atmos) -"bVO" = (/obj/structure/chair{dir = 8},/obj/effect/landmark/start{name = "Atmospheric Technician"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) -"bVP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) -"bVQ" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Atmospheric Technician"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/atmos) -"bVR" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) -"bVS" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/atmos) -"bVT" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel,/area/atmos) -"bVU" = (/obj/machinery/atmospherics/components/trinary/mixer{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"bVV" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"bVW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 6},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/atmos) -"bVX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bVY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_atmos{name = "Distribution Loop"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) -"bVZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) -"bWa" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) -"bWb" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Pure to Mix"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"bWc" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 5; initialize_directions = 12},/turf/open/floor/plasteel,/area/atmos) -"bWd" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Unfiltered to Mix"; on = 1},/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4; initialize_directions = 12},/turf/open/floor/plasteel,/area/atmos) -"bWe" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/green/side{dir = 6},/area/atmos) -"bWf" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bWg" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/space,/area/space/nearstation) -"bWh" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "mix_in"; pixel_y = 1},/turf/open/floor/engine/vacuum,/area/atmos) -"bWi" = (/obj/structure/table,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/machinery/reagentgrinder,/turf/open/floor/plasteel/white,/area/medical/virology) -"bWj" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/virology) -"bWk" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/white,/area/medical/virology) -"bWl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/virology{autoclose = 0; frequency = 1449; icon_state = "door_locked"; id_tag = "virology_airlock_interior"; locked = 1; name = "Virology Interior Airlock"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/virology) -"bWm" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/virology) -"bWn" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_virology{name = "Monkey Pen"; req_access_txt = "39"},/turf/open/floor/plasteel/white,/area/medical/virology) -"bWo" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/disposaloutlet,/turf/open/floor/engine,/area/toxins/xenobiology) -"bWp" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/engine,/area/toxins/xenobiology) -"bWq" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"bWr" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/window/reinforced,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bWs" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bWt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bWu" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/button/door{id = "xenobio8"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bWv" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "xenobio8"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"bWw" = (/obj/structure/closet/l3closet/scientist{pixel_x = -2},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bWx" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"bWy" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/item/device/electropack,/obj/item/device/healthanalyzer,/obj/item/device/assembly/signaler,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bWz" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/engine,/area/toxins/misc_lab) -"bWA" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/open/floor/engine,/area/toxins/misc_lab) -"bWB" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/engine,/area/toxins/misc_lab) -"bWC" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 8},/turf/open/floor/engine,/area/toxins/misc_lab) -"bWD" = (/obj/machinery/magnetic_module,/obj/effect/landmark{name = "blobstart"},/obj/structure/target_stake,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) -"bWE" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"bWF" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) -"bWG" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) -"bWH" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) -"bWI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"bWJ" = (/turf/closed/wall,/area/maintenance/bar) -"bWK" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) -"bWL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bWM" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating,/area/construction) -"bWN" = (/obj/machinery/camera{c_tag = "Construction Area"; dir = 1},/turf/open/floor/plating,/area/construction) -"bWO" = (/obj/structure/rack{dir = 1},/obj/item/clothing/suit/hazardvest,/turf/open/floor/plating,/area/construction) -"bWP" = (/obj/structure/table,/obj/item/stack/cable_coil{amount = 5},/obj/item/device/flashlight,/turf/open/floor/plating,/area/construction) -"bWQ" = (/obj/structure/table,/turf/open/floor/plating,/area/construction) -"bWR" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bWS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bWT" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "atmos"; layer = 2.9; name = "atmos blast door"},/turf/open/floor/plating,/area/atmos) -"bWU" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/table,/obj/item/weapon/tank/internals/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/weapon/tank/internals/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) -"bWV" = (/obj/structure/sign/atmosplaque{pixel_x = 0; pixel_y = -32},/obj/structure/table,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) -"bWW" = (/obj/machinery/computer/station_alert,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/button/door{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = 24; pixel_y = 4; req_access_txt = "24"},/turf/open/floor/plasteel/caution{dir = 6},/area/atmos) -"bWX" = (/obj/structure/table,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 7},/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/machinery/light{dir = 8},/obj/item/device/multitool,/turf/open/floor/plasteel,/area/atmos) -"bWY" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/storage/belt/utility,/obj/item/device/t_scanner,/obj/item/device/t_scanner,/obj/item/device/t_scanner,/turf/open/floor/plasteel,/area/atmos) -"bWZ" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/turf/open/floor/plasteel,/area/atmos) -"bXa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/atmos) -"bXb" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6; initialize_directions = 6},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bXc" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bXd" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bXe" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bXf" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bXg" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bXh" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 4; initialize_directions = 11},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"bXi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/white,/area/medical/virology) -"bXj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) -"bXk" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/virology{name = "Break Room"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) -"bXl" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) -"bXm" = (/obj/machinery/doorButtons/airlock_controller{idExterior = "virology_airlock_exterior"; idInterior = "virology_airlock_interior"; idSelf = "virology_airlock_control"; name = "Virology Access Console"; pixel_x = 8; pixel_y = 22; req_access_txt = "39"},/obj/machinery/light_switch{pixel_x = -4; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) -"bXn" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) -"bXo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/firealarm{pixel_y = 25},/turf/open/floor/plasteel/white,/area/medical/virology) -"bXp" = (/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Virology APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/camera{c_tag = "Virology Module"},/turf/open/floor/plasteel/white,/area/medical/virology) -"bXq" = (/obj/machinery/vending/medical,/turf/open/floor/plasteel/white,/area/medical/virology) -"bXr" = (/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/engine,/area/toxins/xenobiology) -"bXs" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) -"bXt" = (/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bXu" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bXv" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bXw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio8"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) -"bXx" = (/obj/structure/rack,/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/obj/machinery/airalarm{dir = 4; locked = 0; pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bXy" = (/obj/structure/table,/obj/machinery/cell_charger{pixel_y = 5},/obj/item/stack/cable_coil,/obj/item/device/multitool,/obj/item/weapon/stock_parts/cell/high/plus,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bXz" = (/turf/open/floor/engine,/area/toxins/misc_lab) -"bXA" = (/obj/machinery/atmospherics/components/binary/valve,/turf/open/floor/engine,/area/toxins/misc_lab) -"bXB" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/engine,/area/toxins/misc_lab) -"bXC" = (/obj/item/pipe{dir = 4; icon_state = "mixer"; name = "gas mixer fitting"; pipe_type = 14},/turf/open/floor/engine,/area/toxins/misc_lab) -"bXD" = (/obj/structure/table,/obj/item/device/assembly/igniter{pixel_x = -5; pixel_y = 3},/obj/item/device/assembly/igniter{pixel_x = 5; pixel_y = -4},/obj/item/device/assembly/igniter{pixel_x = 2; pixel_y = 6},/obj/item/device/assembly/igniter{pixel_x = 2; pixel_y = -1},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/turf/open/floor/engine,/area/toxins/misc_lab) -"bXE" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bXF" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bXG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/toxins/misc_lab) -"bXH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) -"bXI" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/aft) -"bXJ" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/maintenance/bar) -"bXK" = (/obj/machinery/shower{dir = 8},/obj/item/weapon/soap,/turf/open/floor/plasteel/freezer,/area/maintenance/bar) -"bXL" = (/obj/machinery/vending/autodrobe{req_access_txt = "0"},/turf/open/floor/wood,/area/maintenance/bar) -"bXM" = (/obj/machinery/vending/clothing,/turf/open/floor/wood,/area/maintenance/bar) -"bXN" = (/obj/machinery/vending/kink,/turf/open/floor/wood,/area/maintenance/bar) -"bXO" = (/obj/structure/table/wood,/obj/machinery/newscaster{pixel_y = 32},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/open/floor/wood,/area/maintenance/bar) -"bXP" = (/obj/structure/table/wood,/obj/machinery/firealarm{pixel_y = 24},/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/wood,/area/maintenance/bar) -"bXQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/maintenance/bar) -"bXR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bXS" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall,/area/maintenance/aft) -"bXT" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bXU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/maintenance/aft) -"bXV" = (/obj/machinery/power/apc{name = "Aft Hall APC"; dir = 8; pixel_x = -25; pixel_y = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"bXW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bXX" = (/obj/item/weapon/crowbar,/obj/item/weapon/wrench,/obj/structure/window/reinforced,/turf/open/floor/plasteel/caution{dir = 6},/area/hallway/primary/aft) -"bXY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/atmos) -"bXZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/atmos) -"bYa" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/glass_atmos{name = "Atmospherics Monitoring"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) -"bYb" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6; initialize_directions = 6},/turf/open/floor/plasteel,/area/atmos) -"bYc" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bYd" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) -"bYe" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) -"bYf" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) -"bYg" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) -"bYh" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bYi" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "N2O Outlet Pump"; on = 0},/turf/open/floor/plasteel/escape{dir = 5},/area/atmos) -"bYj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "n2o_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/n2o,/area/atmos) -"bYk" = (/turf/open/floor/engine/n2o,/area/atmos) -"bYl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall/r_wall,/area/medical/virology) -"bYm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/virology) -"bYn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/medical/virology) -"bYo" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plasteel/white,/area/medical/virology) -"bYp" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/virology) -"bYq" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/virology) -"bYr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/virology) -"bYs" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"bYt" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio3"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bYu" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bYv" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"bYw" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio8"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"bYx" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet{dir = 1},/turf/open/floor/engine,/area/toxins/xenobiology) -"bYy" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"bYz" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10; pixel_x = 0; initialize_directions = 10},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bYA" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bYB" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/engine,/area/toxins/misc_lab) -"bYC" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/turf/open/floor/engine,/area/toxins/misc_lab) -"bYD" = (/turf/open/floor/plating,/area/toxins/misc_lab) -"bYE" = (/obj/structure/target_stake,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/toxins/misc_lab) -"bYF" = (/obj/machinery/door/airlock{name = "Shower"},/turf/open/floor/plasteel/freezer,/area/maintenance/bar) -"bYG" = (/turf/open/floor/wood,/area/maintenance/bar) -"bYH" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/maintenance/bar) -"bYI" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) -"bYJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/bar) -"bYK" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bYL" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-y"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bYM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bYN" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bYO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bYP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/power/apc{dir = 1; name = "Construction Area APC"; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) -"bYQ" = (/obj/machinery/power/apc{dir = 2; name = "Telecoms Monitoring APC"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/tcommsat/computer) -"bYR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"bYS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/aft) -"bYT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"bYU" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/arrival{dir = 8},/area/atmos) -"bYV" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 1},/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) -"bYW" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution{dir = 8},/area/atmos) -"bYX" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) -"bYY" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) -"bYZ" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/atmos{name = "Atmospherics"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) -"bZa" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Air to External"; on = 1},/turf/open/floor/plasteel,/area/atmos) -"bZb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"bZc" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) -"bZd" = (/obj/item/device/radio/beacon,/turf/open/floor/plasteel,/area/atmos) -"bZe" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air to Port"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"bZf" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Mix to Port"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"bZg" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Pure to Port"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"bZh" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plasteel,/area/atmos) -"bZi" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/open/floor/plasteel,/area/atmos) -"bZj" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "n2o_in"; name = "Nitrous Oxide Supply Control"; output_tag = "n2o_out"; sensors = list("n2o_sensor" = "Tank")},/turf/open/floor/plasteel/escape{dir = 4},/area/atmos) -"bZk" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2o_sensor"},/turf/open/floor/engine/n2o,/area/atmos) -"bZl" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/turf/open/floor/engine/n2o,/area/atmos) -"bZm" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/n2o,/area/atmos) -"bZn" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/asmaint) -"bZo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"bZp" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) -"bZq" = (/obj/machinery/smartfridge/chemistry/virology,/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) -"bZr" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/medical/virology) -"bZs" = (/obj/machinery/computer/pandemic,/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) -"bZt" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/medical/virology) -"bZu" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_virology{name = "Isolation A"; req_access_txt = "39"},/turf/open/floor/plasteel/white,/area/medical/virology) -"bZv" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/virology) -"bZw" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_virology{name = "Isolation B"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/virology) -"bZx" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall,/area/toxins/xenobiology) -"bZy" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bZz" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"bZA" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"bZB" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"bZC" = (/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bZD" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bZE" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"bZF" = (/obj/machinery/camera{c_tag = "Testing Firing Range"; dir = 8; network = list("SS13","RD"); pixel_y = -22},/turf/open/floor/plating,/area/toxins/misc_lab) -"bZG" = (/obj/structure/target_stake,/turf/open/floor/plating,/area/toxins/misc_lab) -"bZH" = (/obj/structure/table,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/item/weapon/screwdriver,/turf/open/floor/plating,/area/maintenance/aft) -"bZI" = (/obj/structure/table,/obj/item/weapon/poster/contraband,/turf/open/floor/plating,/area/maintenance/aft) -"bZJ" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/turf/open/floor/wood,/area/maintenance/bar) -"bZK" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/wood,/area/maintenance/bar) -"bZL" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/wood,/area/maintenance/bar) -"bZM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/bar) -"bZN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) -"bZO" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/carpet,/area/maintenance/bar) -"bZP" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/maintenance/bar) -"bZQ" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/carpet,/area/maintenance/bar) -"bZR" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/bar) -"bZS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bZT" = (/turf/closed/wall/r_wall,/area/tcommsat/server) -"bZU" = (/turf/closed/wall/r_wall,/area/tcommsat/computer) -"bZV" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) -"bZW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"bZX" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 9},/turf/closed/wall/r_wall,/area/atmos) -"bZY" = (/obj/machinery/camera{c_tag = "Atmospherics Access"; dir = 4; network = list("SS13")},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/caution{dir = 8},/area/atmos) -"bZZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/atmos) -"caa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) -"cab" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) -"cac" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/structure/sign/securearea,/turf/closed/wall,/area/atmos) -"cad" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "External to Filter"; on = 1},/turf/open/floor/plasteel,/area/atmos) -"cae" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"caf" = (/obj/structure/reagent_dispensers/watertank/high,/turf/open/floor/plasteel,/area/atmos) -"cag" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/atmos) -"cah" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/gloves/color/black,/obj/item/clothing/gloves/color/black,/obj/item/clothing/gloves/color/black,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel,/area/atmos) -"cai" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"caj" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) -"cak" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel,/area/atmos) -"cal" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 1; filter_type = "n2o"; on = 1},/turf/open/floor/plasteel,/area/atmos) -"cam" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/escape{dir = 6},/area/atmos) -"can" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "n2o_in"; pixel_y = 1},/turf/open/floor/engine/n2o,/area/atmos) -"cao" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/asmaint) -"cap" = (/obj/structure/table/glass,/obj/item/clothing/gloves/color/latex,/obj/machinery/requests_console{department = "Virology"; name = "Virology Requests Console"; pixel_x = -32},/obj/item/device/healthanalyzer,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) -"caq" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/device/radio/headset/headset_med,/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) -"car" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/medical/virology) -"cas" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/virology) -"cat" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/white,/area/medical/virology) -"cau" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/medical/virology) -"cav" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"caw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"cax" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/button/door{id = "xenobio7"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"cay" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "xenobio7"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"caz" = (/obj/item/device/radio/intercom{pixel_x = -25},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"caA" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"caB" = (/obj/structure/chair/office/light,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"caC" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"caD" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"caE" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"caF" = (/obj/structure/closet/secure_closet/personal/cabinet,/turf/open/floor/wood,/area/maintenance/bar) -"caG" = (/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/wood,/area/maintenance/bar) -"caH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/button/door{id = "MaintDorm2"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 10; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/maintenance/bar) -"caI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock{id_tag = "MaintDorm2"; name = "Dorm 2"},/turf/open/floor/wood,/area/maintenance/bar) -"caJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/wood,/area/maintenance/bar) -"caK" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/maintenance/bar) -"caL" = (/obj/structure/table/wood/poker,/obj/item/weapon/coin/iron,/obj/item/weapon/coin/iron,/obj/item/weapon/coin/iron,/turf/open/floor/carpet,/area/maintenance/bar) -"caM" = (/obj/structure/table/wood/poker,/obj/item/weapon/storage/pill_bottle/dice,/obj/item/weapon/dice/d20,/turf/open/floor/carpet,/area/maintenance/bar) -"caN" = (/turf/open/floor/wood{icon_state = "wood-broken"},/area/maintenance/bar) -"caO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/bar) -"caP" = (/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"caQ" = (/obj/machinery/telecomms/server/presets/engineering,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"caR" = (/obj/machinery/telecomms/bus/preset_four,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"caS" = (/obj/machinery/light{dir = 1},/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Telecoms Server APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"caT" = (/obj/machinery/telecomms/processor/preset_three,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"caU" = (/obj/machinery/telecomms/server/presets/security,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"caV" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/tcommsat/computer) -"caW" = (/obj/structure/table,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/tcommsat/computer) -"caX" = (/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Telecoms)"; pixel_x = 0; pixel_y = 26},/turf/open/floor/plasteel,/area/tcommsat/computer) -"caY" = (/obj/machinery/light{dir = 1},/obj/machinery/announcement_system,/turf/open/floor/plasteel,/area/tcommsat/computer) -"caZ" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"cba" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel/escape{dir = 8},/area/atmos) -"cbb" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 1},/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) -"cbc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/door/poddoor/preopen{id = "atmos"; name = "atmos blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/atmos) -"cbd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/obj/machinery/door/poddoor/preopen{id = "atmos"; name = "atmos blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/atmos) -"cbe" = (/turf/closed/wall/r_wall,/area/security/checkpoint/engineering) -"cbf" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/turf/open/floor/plasteel,/area/atmos) -"cbg" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/camera{c_tag = "Atmospherics West"; dir = 8; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/atmos) -"cbh" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air to Port"; on = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"cbi" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"cbj" = (/obj/structure/door_assembly/door_assembly_mai,/turf/open/floor/plating,/area/maintenance/asmaint) -"cbk" = (/obj/structure/table/glass,/obj/item/device/radio/intercom{pixel_x = -25},/obj/machinery/light{dir = 8},/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/syringes,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) -"cbl" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/virology) -"cbm" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Virologist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) -"cbn" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/pen/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) -"cbo" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/virology) -"cbp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/virology) -"cbq" = (/obj/structure/table,/turf/open/floor/plasteel/white,/area/medical/virology) -"cbr" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) -"cbs" = (/obj/effect/landmark{name = "revenantspawn"},/mob/living/simple_animal/slime,/turf/open/floor/engine,/area/toxins/xenobiology) -"cbt" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) -"cbu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio7"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) -"cbv" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"cbw" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/general/visible,/obj/machinery/button/ignition{id = "testigniter"; pixel_x = -6; pixel_y = 2},/obj/machinery/button/door{id = "testlab"; name = "Test Chamber Blast Doors"; pixel_x = 4; pixel_y = 2; req_access_txt = "55"},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"cbx" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"cby" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 0; pixel_y = 6},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"cbz" = (/obj/structure/rack,/obj/item/weapon/wrench,/obj/item/weapon/crowbar,/obj/machinery/computer/security/telescreen{name = "Test Chamber Moniter"; network = list("Test"); pixel_x = 0; pixel_y = -30},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"cbA" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/droneDispenser,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cbB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cbC" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"cbD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cbE" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/recharger{pixel_y = 4},/obj/item/weapon/paper/range,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/toxins/misc_lab) -"cbF" = (/obj/structure/table/reinforced,/obj/machinery/magnetic_controller{autolink = 1},/obj/structure/window/reinforced{dir = 1},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/toxins/misc_lab) -"cbG" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/tinted/fulltile,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cbH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/shard,/turf/open/floor/plating,/area/maintenance/aft) -"cbI" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/maintenance/bar) -"cbJ" = (/obj/structure/table/wood/poker,/obj/effect/landmark/event_spawn,/turf/open/floor/carpet,/area/maintenance/bar) -"cbK" = (/obj/structure/table/wood/poker,/obj/item/weapon/book/manual/daredice,/turf/open/floor/carpet,/area/maintenance/bar) -"cbL" = (/obj/machinery/light{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) -"cbM" = (/obj/machinery/telecomms/server/presets/common,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cbN" = (/obj/machinery/telecomms/processor/preset_four,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cbO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cbP" = (/obj/machinery/telecomms/bus/preset_three,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cbQ" = (/obj/machinery/telecomms/server/presets/command,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cbR" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) -"cbS" = (/obj/machinery/computer/message_monitor,/turf/open/floor/plasteel/yellow/side{dir = 8},/area/tcommsat/computer) -"cbT" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel,/area/tcommsat/computer) -"cbU" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/tcommsat/computer) -"cbV" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/tcommsat/computer) -"cbW" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/light/small,/turf/open/floor/plasteel/escape{dir = 8},/area/atmos) -"cbX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/turf/closed/wall/r_wall,/area/atmos) -"cbY" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/atmos{name = "Atmospherics"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) -"cbZ" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/atmos) -"cca" = (/obj/machinery/power/apc{dir = 8; name = "Engineering Security APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/engineering) -"ccb" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/structure/closet,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/engineering) -"ccc" = (/obj/structure/filingcabinet,/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/engineering) -"ccd" = (/obj/structure/fireaxecabinet{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel,/area/atmos) -"cce" = (/obj/structure/closet/secure_closet/atmospherics,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"ccf" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/atmos) -"ccg" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/atmos) -"cch" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"cci" = (/obj/machinery/camera{c_tag = "Atmospherics East"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Plasma Outlet Pump"; on = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/atmos) -"ccj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "tox_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/plasma,/area/atmos) -"cck" = (/turf/open/floor/engine/plasma,/area/atmos) -"ccl" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/engine/plasma,/area/atmos) -"ccm" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint) -"ccn" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) -"cco" = (/obj/structure/table/glass,/obj/structure/reagent_dispensers/virusfood{density = 0; pixel_x = -30},/obj/item/weapon/book/manual/wiki/infections{pixel_y = 7},/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) -"ccp" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) -"ccq" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/virology) -"ccr" = (/obj/machinery/disposal/bin,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = -32},/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) -"ccs" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/virology) -"cct" = (/obj/structure/closet/secure_closet/personal/patient,/turf/open/floor/plasteel/white,/area/medical/virology) -"ccu" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"ccv" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio2"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"ccw" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio7"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"ccx" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/machinery/atmospherics/pipe/simple/general/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/misc_lab) -"ccy" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/misc_lab) -"ccz" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/engine,/area/toxins/misc_lab) -"ccA" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) -"ccB" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/window/reinforced{dir = 4},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) -"ccC" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"ccD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"ccE" = (/obj/machinery/door/airlock/glass_research{name = "Firing Range"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"ccF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"ccG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"ccH" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"ccI" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"ccJ" = (/obj/structure/closet/crate,/obj/item/clothing/under/color/lightpurple,/obj/item/stack/spacecash/c200,/turf/open/floor/plating,/area/maintenance/asmaint2) -"ccK" = (/obj/structure/girder,/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"ccL" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/wood{icon_state = "wood-broken7"},/area/maintenance/bar) -"ccM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/button/door{id = "MaintDorm1"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 10; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/maintenance/bar) -"ccN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock{id_tag = "MaintDorm1"; name = "Dorm 1"},/turf/open/floor/wood,/area/maintenance/bar) -"ccO" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/wood,/area/maintenance/bar) -"ccP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/maintenance/bar) -"ccQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/chair/stool,/turf/open/floor/carpet,/area/maintenance/bar) -"ccR" = (/obj/structure/chair/stool,/turf/open/floor/carpet,/area/maintenance/bar) -"ccS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/maintenance/bar) -"ccT" = (/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ccU" = (/obj/machinery/blackbox_recorder,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ccV" = (/obj/machinery/telecomms/broadcaster/preset_right,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ccW" = (/obj/machinery/telecomms/receiver/preset_right,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ccX" = (/obj/machinery/computer/telecomms/server{network = "tcommsat"},/turf/open/floor/plasteel/yellow/side{dir = 10},/area/tcommsat/computer) -"ccY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/tcommsat/computer) -"ccZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/tcommsat/computer) -"cda" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/item/weapon/pen/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) -"cdb" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"cdc" = (/turf/closed/wall,/area/engine/break_room) -"cdd" = (/turf/open/floor/plasteel/caution{dir = 9},/area/engine/break_room) -"cde" = (/turf/open/floor/plasteel/caution{dir = 1},/area/engine/break_room) -"cdf" = (/turf/open/floor/plasteel/caution{dir = 5},/area/engine/break_room) -"cdg" = (/turf/closed/wall,/area/security/checkpoint/engineering) -"cdh" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/machinery/button/door{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -24; pixel_y = -6; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/device/radio/off,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/engineering) -"cdi" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/security/checkpoint/engineering) -"cdj" = (/obj/machinery/camera{c_tag = "Security Post - Engineering"; dir = 8; network = list("SS13")},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/engineering) -"cdk" = (/obj/machinery/suit_storage_unit/atmos,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"cdl" = (/obj/structure/sign/nosmoking_2,/turf/closed/wall,/area/atmos) -"cdm" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) -"cdn" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "tox_in"; name = "Plasma Supply Control"; output_tag = "tox_out"; sensors = list("tox_sensor" = "Tank")},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"cdo" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "tox_sensor"},/turf/open/floor/engine/plasma,/area/atmos) -"cdp" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/open/floor/engine/plasma,/area/atmos) -"cdq" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/plasma,/area/atmos) -"cdr" = (/obj/structure/closet/l3closet/virology,/turf/open/floor/plasteel/whitegreen/side{dir = 2},/area/medical/virology) -"cds" = (/obj/structure/closet/secure_closet/medical1,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/whitegreen/side{dir = 2},/area/medical/virology) -"cdt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/medical/virology) -"cdu" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/camera{c_tag = "Xenobiology South"; dir = 4; network = list("SS13","RD")},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"cdv" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"cdw" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1},/turf/open/floor/engine,/area/toxins/misc_lab) -"cdx" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/engine,/area/toxins/misc_lab) -"cdy" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cdz" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cdA" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/misc_lab) -"cdB" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cdC" = (/obj/structure/rack,/obj/item/weapon/gun/energy/laser/practice,/obj/item/clothing/ears/earmuffs,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cdD" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating,/area/maintenance/aft) -"cdE" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/effect/landmark{name = "blobstart"},/turf/open/floor/wood,/area/maintenance/bar) -"cdF" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/wood,/area/maintenance/bar) -"cdG" = (/obj/structure/bed,/obj/item/weapon/bedsheet/blue,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/wood,/area/maintenance/bar) -"cdH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood{icon_state = "wood-broken6"},/area/maintenance/bar) -"cdI" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/wood,/area/maintenance/bar) -"cdJ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/wood,/area/maintenance/bar) -"cdK" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/wood,/area/maintenance/bar) -"cdL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/maintenance/bar) -"cdM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cdN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cdO" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cdP" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/tcommsat/computer) -"cdQ" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) -"cdR" = (/obj/machinery/status_display,/turf/closed/wall,/area/tcommsat/computer) -"cdS" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/turf/open/floor/plating,/area/tcommsat/computer) -"cdT" = (/obj/machinery/door/airlock/glass_command{name = "Control Room"; req_access_txt = "19; 61"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) -"cdU" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/tcommsat/computer) -"cdV" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"cdW" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"cdX" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"cdY" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/engine/break_room) -"cdZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/engine/break_room) -"cea" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/engine/break_room) -"ceb" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) -"cec" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/checkpoint/engineering) -"ced" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/engineering) -"cee" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start/depsec/engineering,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint/engineering) -"cef" = (/obj/machinery/computer/secure_data,/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/engineering) -"ceg" = (/obj/machinery/power/apc{dir = 8; name = "Atmospherics APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/atmos) -"ceh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/atmos) -"cei" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/item/weapon/wrench,/turf/open/floor/plasteel,/area/atmos) -"cej" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) -"cek" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 1; filter_type = "plasma"; on = 1},/turf/open/floor/plasteel,/area/atmos) -"cel" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/atmos) -"cem" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "tox_in"; pixel_y = 1},/turf/open/floor/engine/plasma,/area/atmos) -"cen" = (/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint) -"ceo" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/asmaint) -"cep" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) -"ceq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall/r_wall,/area/medical/virology) -"cer" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/item/weapon/wrench,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) -"ces" = (/obj/machinery/atmospherics/components/binary/valve/open{icon_state = "mvalve_map"; dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) -"cet" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) -"ceu" = (/obj/structure/closet/emcloset,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/asmaint) -"cev" = (/obj/structure/rack{dir = 1},/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) -"cew" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"cex" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio6"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"cey" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "xenobio6"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"cez" = (/obj/item/device/radio/intercom{pixel_x = -25},/turf/open/floor/engine,/area/toxins/misc_lab) -"ceA" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/misc_lab) -"ceB" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"ceC" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"ceD" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/open/floor/plating,/area/maintenance/asmaint2) -"ceE" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/asmaint2) -"ceF" = (/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) -"ceG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock{name = "Gaming Room"},/turf/open/floor/wood,/area/maintenance/bar) -"ceH" = (/obj/machinery/door/airlock{name = "Gaming Room"},/turf/open/floor/wood,/area/maintenance/bar) -"ceI" = (/obj/machinery/power/terminal{dir = 4},/obj/machinery/ntnet_relay,/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ceJ" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ceK" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ceL" = (/obj/machinery/telecomms/hub/preset,/turf/open/floor/plasteel/vault{dir = 8; name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ceM" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ceN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ceO" = (/obj/machinery/door/airlock/glass_engineering{cyclelinkeddir = 4; name = "Server Room"; req_access_txt = "61"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/vault{dir = 5},/area/tcommsat/computer) -"ceP" = (/turf/open/floor/plasteel/vault{dir = 5},/area/tcommsat/computer) -"ceQ" = (/obj/machinery/door/airlock/glass_engineering{cyclelinkeddir = 8; name = "Server Room"; req_access_txt = "61"},/turf/open/floor/plasteel/vault{dir = 5},/area/tcommsat/computer) -"ceR" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/tcommsat/computer) -"ceS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) -"ceT" = (/obj/structure/closet/emcloset,/obj/machinery/camera{c_tag = "Telecoms Monitoring"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) -"ceU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/aft) -"ceV" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"ceW" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"ceX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"ceY" = (/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"ceZ" = (/obj/structure/table,/obj/item/clothing/glasses/meson,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel,/area/engine/break_room) -"cfa" = (/turf/open/floor/plasteel,/area/engine/break_room) -"cfb" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) -"cfc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/engine/break_room) -"cfd" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/security/checkpoint/engineering) -"cfe" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/engineering) -"cff" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/engineering) -"cfg" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/engineering) -"cfh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/checkpoint/engineering) -"cfi" = (/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; name = "Atmos RC"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/atmos) -"cfj" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/camera{c_tag = "Atmospherics Central"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Port to Filter"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"cfk" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/atmos) -"cfl" = (/obj/machinery/atmospherics/components/unary/thermomachine/heater{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"cfm" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 5},/turf/open/space,/area/space/nearstation) -"cfn" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cfo" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cfp" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) -"cfq" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) -"cfr" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) -"cfs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"cft" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) -"cfu" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"cfv" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) -"cfw" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plating,/area/maintenance/asmaint) -"cfx" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/machinery/portable_atmospherics/canister/air,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) -"cfy" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) -"cfz" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"cfA" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) -"cfB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio6"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) -"cfC" = (/obj/machinery/sparker{id = "testigniter"; pixel_x = -25},/turf/open/floor/engine,/area/toxins/misc_lab) -"cfD" = (/obj/item/device/radio/beacon,/turf/open/floor/engine,/area/toxins/misc_lab) -"cfE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/engine,/area/toxins/misc_lab) -"cfF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/engine,/area/toxins/misc_lab) -"cfG" = (/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/machinery/door/airlock/glass_research{cyclelinkeddir = 4; name = "Test Chamber"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/engine,/area/toxins/misc_lab) -"cfH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/toxins/misc_lab) -"cfI" = (/obj/machinery/door/airlock/glass_research{cyclelinkeddir = 8; name = "Test Chamber"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/toxins/misc_lab) -"cfJ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cfK" = (/obj/machinery/power/apc{dir = 4; name = "Testing Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"cfL" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cfM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cfN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) -"cfO" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cfP" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cfQ" = (/obj/structure/closet/secure_closet/freezer/kitchen/maintenance,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cfR" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cfS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cfT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock{name = "Kitchen"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cfU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cfV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cfW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cfX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/machinery/door/window/eastleft{name = "Bar Counter"},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cfY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/maintenance/bar) -"cfZ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/maintenance/bar) -"cga" = (/obj/machinery/light{dir = 1},/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) -"cgb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/maintenance/bar) -"cgc" = (/obj/machinery/camera{c_tag = "Telecoms Server Room"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cgd" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) -"cge" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/tcommsat/computer) -"cgf" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 0},/turf/closed/wall,/area/tcommsat/computer) -"cgg" = (/turf/open/floor/plasteel,/area/tcommsat/computer) -"cgh" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) -"cgi" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Telecoms Admin"; departmentType = 5; name = "Telecoms RC"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) -"cgj" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 5},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) -"cgk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"cgl" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/camera{c_tag = "Aft Primary Hallway 1"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) -"cgm" = (/obj/machinery/power/apc{dir = 8; name = "Engineering Foyer APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/engine/break_room) -"cgn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) -"cgo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) -"cgp" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/engineering) -"cgq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel,/area/atmos) -"cgr" = (/obj/structure/closet/wardrobe/atmospherics_yellow,/turf/open/floor/plasteel,/area/atmos) -"cgs" = (/obj/machinery/space_heater,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/atmos) -"cgt" = (/obj/machinery/space_heater,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/atmos) -"cgu" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"cgv" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Port to Filter"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"cgw" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/obj/item/weapon/cigbutt,/turf/open/floor/plasteel,/area/atmos) -"cgx" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 8},/turf/open/floor/plasteel,/area/atmos) -"cgy" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "CO2 Outlet Pump"; on = 0},/turf/open/floor/plasteel/yellow/side{dir = 5},/area/atmos) -"cgz" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "co2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/co2,/area/atmos) -"cgA" = (/turf/open/floor/engine/co2,/area/atmos) -"cgB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/asmaint) -"cgC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"cgD" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"cgE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"cgF" = (/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access_txt = "12;24"},/turf/open/floor/plating,/area/maintenance/asmaint) -"cgG" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) -"cgH" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"cgI" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"cgJ" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio1"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/xenobiology) -"cgK" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"cgL" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio6"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) -"cgM" = (/obj/machinery/camera{c_tag = "Testing Chamber"; dir = 1; network = list("Test","RD"); pixel_x = 0},/obj/machinery/light,/turf/open/floor/engine,/area/toxins/misc_lab) -"cgN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cgO" = (/obj/machinery/camera{c_tag = "Testing Lab South"; dir = 8; network = list("SS13","RD"); pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cgP" = (/obj/structure/closet/crate,/obj/item/target,/obj/item/target,/obj/item/target,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cgQ" = (/obj/structure/closet/crate,/obj/item/target/syndicate,/obj/item/target/alien,/obj/item/target/clown,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cgR" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/port) -"cgS" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"cgT" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/port) -"cgU" = (/turf/closed/wall/r_wall,/area/maintenance/aft) -"cgV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) -"cgW" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cgX" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cgY" = (/obj/structure/reagent_dispensers/keg/mead,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cgZ" = (/obj/structure/table,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cha" = (/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"chb" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"chc" = (/obj/structure/chair/stool/bar,/turf/open/floor/wood,/area/maintenance/bar) -"chd" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/maintenance/bar) -"che" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/bar) -"chf" = (/obj/machinery/message_server,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"chg" = (/obj/machinery/telecomms/broadcaster/preset_left,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"chh" = (/obj/machinery/telecomms/receiver/preset_left,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"chi" = (/obj/structure/table,/obj/item/device/multitool,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/tcommsat/computer) -"chj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) -"chk" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) -"chl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/tcommsat/computer) -"chm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 9},/area/hallway/primary/aft) -"chn" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/hallway/primary/aft) -"cho" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/hallway/primary/aft) -"chp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"chq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/hallway/primary/aft) -"chr" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 5},/area/hallway/primary/aft) -"chs" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/engine/break_room) -"cht" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) -"chu" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) -"chv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) -"chw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) -"chx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/break_room) -"chy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/engine/break_room) -"chz" = (/obj/machinery/vending/snack/random,/turf/open/floor/plasteel,/area/engine/break_room) -"chA" = (/turf/closed/wall/r_wall,/area/engine/engineering) -"chB" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/atmos) -"chC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 5},/turf/open/floor/plasteel,/area/atmos) -"chD" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 1},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) -"chE" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) -"chF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/atmos) -"chG" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "N2 to Pure"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"chH" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "co2_in"; name = "Carbon Dioxide Supply Control"; output_tag = "co2_out"; sensors = list("co2_sensor" = "Tank")},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/atmos) -"chI" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "co2_sensor"},/turf/open/floor/engine/co2,/area/atmos) -"chJ" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/open/floor/engine/co2,/area/atmos) -"chK" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/co2,/area/atmos) -"chL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/asmaint) -"chM" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) -"chN" = (/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 28},/turf/open/floor/plating,/area/maintenance/asmaint) -"chO" = (/obj/structure/chair/stool,/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"chP" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) -"chQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"chR" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"chS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) -"chT" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"chU" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) -"chV" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) -"chW" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"chX" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"chY" = (/obj/structure/rack,/obj/item/clothing/shoes/winterboots,/obj/item/clothing/suit/hooded/wintercoat,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"chZ" = (/obj/machinery/portable_atmospherics/pump,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) -"cia" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"cib" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) -"cic" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/asmaint2) -"cid" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cie" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cif" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"cig" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) -"cih" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/aft) -"cii" = (/obj/structure/table,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/item/weapon/kitchen/rollingpin,/obj/item/weapon/reagent_containers/food/condiment/sugar,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/obj/item/weapon/reagent_containers/glass/beaker,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cij" = (/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cik" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cil" = (/obj/structure/table,/obj/machinery/power/apc{auto_name = 1; dir = 8; name = "Maintenance Bar APC"; pixel_x = -25; pixel_y = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cim" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cin" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cio" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cip" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/chair/stool/bar,/turf/open/floor/wood,/area/maintenance/bar) -"ciq" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/wood,/area/maintenance/bar) -"cir" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/wood,/area/maintenance/bar) -"cis" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/maintenance/bar) -"cit" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/airlock/maintenance{name = "Maintenance Bar"},/turf/open/floor/wood,/area/maintenance/bar) -"ciu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/bar) -"civ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating,/area/maintenance/aft) -"ciw" = (/obj/machinery/telecomms/server/presets/supply,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cix" = (/obj/machinery/telecomms/bus/preset_two,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ciy" = (/obj/machinery/telecomms/processor/preset_one,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ciz" = (/obj/machinery/telecomms/server/presets/medical,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"ciA" = (/obj/machinery/computer/telecomms/monitor{network = "tcommsat"},/turf/open/floor/plasteel/yellow/side{dir = 8},/area/tcommsat/computer) -"ciB" = (/obj/structure/chair/office/dark{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/tcommsat/computer) -"ciC" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) -"ciD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/tcommsat/computer) -"ciE" = (/obj/machinery/door/airlock/engineering{name = "Telecommunications"; req_access_txt = "61"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/tcommsat/computer) -"ciF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 8},/area/hallway/primary/aft) -"ciG" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"ciH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"ciI" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AIE"; location = "AftH"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"ciJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) -"ciK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/hallway/primary/aft) -"ciL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_engineering{name = "Engineering"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) -"ciM" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) -"ciN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) -"ciO" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel,/area/engine/break_room) -"ciP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) -"ciQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) -"ciR" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/break_room) -"ciS" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel,/area/atmos) -"ciT" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel,/area/atmos) -"ciU" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) -"ciV" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible,/turf/open/floor/plasteel,/area/atmos) -"ciW" = (/obj/machinery/atmospherics/components/trinary/mixer{dir = 4; node1_concentration = 0.8; node2_concentration = 0.2; on = 1; pixel_x = 0; pixel_y = 0; target_pressure = 4500},/turf/open/floor/plasteel,/area/atmos) -"ciX" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "O2 to Pure"; on = 0},/turf/open/floor/plasteel,/area/atmos) -"ciY" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 1; filter_type = "co2"; on = 1},/turf/open/floor/plasteel,/area/atmos) -"ciZ" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/atmos) -"cja" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "co2_in"; pixel_y = 1},/turf/open/floor/engine/co2,/area/atmos) -"cjb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/asmaint) -"cjc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) -"cjd" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cje" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) -"cjf" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"cjg" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) -"cjh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cji" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) -"cjj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/mouse,/turf/open/floor/plating,/area/maintenance/asmaint) -"cjk" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cjl" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) -"cjm" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cjn" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; external_pressure_bound = 140; on = 1; pressure_checks = 0},/obj/machinery/camera{c_tag = "Xenobiology Kill Room"; dir = 4; network = list("SS13","RD")},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) -"cjo" = (/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) -"cjp" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; external_pressure_bound = 120; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) -"cjq" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/biohazard,/turf/open/floor/plating,/area/toxins/xenobiology) -"cjr" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{target_temperature = 80; dir = 2; on = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"cjs" = (/obj/structure/closet/emcloset,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cjt" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cju" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cjv" = (/obj/machinery/portable_atmospherics/scrubber,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) -"cjw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"cjx" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cjy" = (/obj/structure/table,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cjz" = (/obj/machinery/power/apc{dir = 8; name = "Engineering Maintenance APC"; pixel_x = -25; pixel_y = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/aft) -"cjA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/aft) -"cjB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/aft) -"cjC" = (/obj/structure/table,/obj/machinery/airalarm{dir = 4; locked = 0; pixel_x = -23; pixel_y = 0},/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/kitchen/knife,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cjD" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cjE" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/table,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"cjF" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/bar) -"cjG" = (/obj/structure/table,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/chem_dispenser/drinks{name = "dusty old soda dispenser"},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cjH" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cjI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cjJ" = (/obj/structure/table,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/filled/cola,/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cjK" = (/obj/structure/chair/stool/bar,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) -"cjL" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) -"cjM" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/wood{icon_state = "wood-broken5"},/area/maintenance/bar) -"cjN" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/maintenance/bar) -"cjO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/bar) -"cjP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 1},/turf/open/floor/plating,/area/maintenance/aft) -"cjQ" = (/obj/machinery/telecomms/server/presets/service,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cjR" = (/obj/machinery/telecomms/processor/preset_two,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cjS" = (/obj/structure/sign/nosmoking_2{pixel_y = -32},/obj/machinery/light,/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cjT" = (/obj/machinery/telecomms/bus/preset_one,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cjU" = (/obj/machinery/telecomms/server/presets/science,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) -"cjV" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) -"cjW" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/tcommsat/computer) -"cjX" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/tcommsat/computer) -"cjY" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/light,/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel,/area/tcommsat/computer) -"cjZ" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel,/area/tcommsat/computer) -"cka" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/yellow/side{dir = 10},/area/hallway/primary/aft) -"ckb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) -"ckc" = (/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) -"ckd" = (/obj/machinery/light,/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) -"cke" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) -"ckf" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/hallway/primary/aft) -"ckg" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/break_room) -"ckh" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) -"cki" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) -"ckj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) -"ckk" = (/obj/machinery/camera{c_tag = "Engineering Foyer"; dir = 1},/obj/structure/noticeboard{dir = 1; pixel_y = -27},/turf/open/floor/plasteel,/area/engine/break_room) -"ckl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) -"ckm" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/engine/break_room) -"ckn" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/closet/firecloset,/turf/open/floor/plasteel,/area/engine/break_room) -"cko" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/engineering) -"ckp" = (/obj/machinery/camera{c_tag = "Atmospherics South West"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/atmos) -"ckq" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/floor/plasteel,/area/atmos) -"ckr" = (/obj/machinery/atmospherics/components/binary/valve/digital{name = "Waste Release"},/turf/open/floor/plasteel,/area/atmos) -"cks" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) -"ckt" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 9},/turf/open/floor/plating,/area/atmos) -"cku" = (/obj/machinery/power/apc{dir = 2; name = "Incinerator APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/incinerator) -"ckv" = (/obj/structure/sign/fire{pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"ckw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/maintenance/asmaint) -"ckx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cky" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) -"ckz" = (/obj/structure/sign/biohazard,/turf/closed/wall,/area/maintenance/asmaint) -"ckA" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/asmaint) -"ckB" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/maintenance/asmaint) -"ckC" = (/obj/structure/disposalpipe/segment,/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/asmaint) -"ckD" = (/obj/structure/disposalpipe/segment,/obj/structure/closet/l3closet,/turf/open/floor/plating,/area/maintenance/asmaint) -"ckE" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) -"ckF" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) -"ckG" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) -"ckH" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Kill Chamber"; req_access_txt = "55"},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plating,/area/toxins/xenobiology) -"ckI" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"ckJ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"ckK" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) -"ckL" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) -"ckM" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/cyan/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"ckN" = (/obj/machinery/atmospherics/pipe/simple/cyan/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) -"ckO" = (/obj/machinery/portable_atmospherics/canister,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) -"ckP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) -"ckQ" = (/obj/item/stack/sheet/cardboard,/turf/open/floor/plating,/area/maintenance/asmaint2) -"ckR" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"ckS" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/asmaint2) -"ckT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/maintenance/asmaint2) -"ckU" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/aft) -"ckV" = (/obj/machinery/processor,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"ckW" = (/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"ckX" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/item/clothing/glasses/sunglasses/reagent,/obj/item/ammo_box/foambox,/obj/item/weapon/gun/ballistic/shotgun/toy/unrestricted,/obj/item/weapon/lighter,/obj/item/clothing/mask/cigarette/cigar/cohiba,/obj/item/weapon/storage/box/drinkingglasses,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) -"ckY" = (/obj/structure/table,/obj/machinery/chem_dispenser/drinks/beer{name = "dusty old booze dispenser"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"ckZ" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"cla" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"clb" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) -"clc" = (/obj/structure/chair/stool/bar,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) -"cld" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) -"cle" = (/obj/machinery/vending/cigarette,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) -"clf" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/wood,/area/maintenance/bar) -"clg" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"clh" = (/turf/closed/wall/r_wall,/area/engine/chiefs_office) -"cli" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) -"clj" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/engine/chiefs_office) -"clk" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/machinery/door/airlock/glass_command{name = "Chief Engineer"; req_access_txt = "56"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/chiefs_office) -"cll" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/engine/break_room) -"clm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side,/area/engine/break_room) -"cln" = (/obj/machinery/light,/obj/structure/closet/firecloset,/turf/open/floor/plasteel/yellow/side{dir = 6},/area/engine/break_room) -"clo" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 2; filter_type = "n2"; on = 1},/turf/open/floor/plasteel,/area/atmos) -"clp" = (/turf/closed/wall,/area/maintenance/incinerator) -"clq" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/closed/wall,/area/maintenance/incinerator) -"clr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/incinerator) -"cls" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/atmos{name = "Turbine Access"; req_access_txt = "32"},/turf/open/floor/plating,/area/maintenance/incinerator) -"clt" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/item/toy/minimeteor,/obj/item/weapon/poster/contraband,/turf/open/floor/plating,/area/maintenance/asmaint) -"clu" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/obj/item/roller,/turf/open/floor/plating,/area/maintenance/asmaint) -"clv" = (/obj/structure/disposalpipe/segment,/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/obj/item/weapon/reagent_containers/food/snacks/donkpocket,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"clw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/weapon/c_tube,/turf/open/floor/plating,/area/maintenance/asmaint) -"clx" = (/obj/structure/mopbucket,/obj/item/weapon/caution,/turf/open/floor/plating,/area/maintenance/asmaint) -"cly" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/xenobiology) -"clz" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/toxins/xenobiology) -"clA" = (/obj/machinery/door/airlock/maintenance{name = "Air Supply Maintenance"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"clB" = (/obj/machinery/door/airlock/maintenance{name = "Testing Lab Maintenance"; req_access_txt = "47"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/toxins/misc_lab) -"clC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/toxins/misc_lab) -"clD" = (/obj/structure/closet/cardboard,/turf/open/floor/plating,/area/maintenance/asmaint2) -"clE" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"clF" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/maintenance/portsolar) -"clG" = (/turf/closed/wall/r_wall,/area/maintenance/portsolar) -"clH" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"clI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall,/area/maintenance/aft) -"clJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"clK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/aft) -"clL" = (/obj/structure/closet/wardrobe/black,/obj/effect/decal/cleanable/cobweb,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/aft) -"clM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"clN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"clO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"clP" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/aft) -"clQ" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/aft) -"clR" = (/obj/machinery/suit_storage_unit/ce,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/engine/chiefs_office) -"clS" = (/obj/machinery/holopad,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"clT" = (/obj/machinery/light{dir = 1},/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = 24},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"clU" = (/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"clV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"clW" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "CE Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"clX" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/engine/engineering) -"clY" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 2; name = "Engine Room"; req_access_txt = "10"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"clZ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/turf/closed/wall,/area/engine/engineering) -"cma" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel,/area/atmos) -"cmb" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel,/area/atmos) -"cmc" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/floor/plasteel,/area/atmos) -"cmd" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel,/area/atmos) -"cme" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4; filter_type = "o2"; on = 1},/turf/open/floor/plasteel,/area/atmos) -"cmf" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) -"cmg" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4; initialize_directions = 12},/turf/open/floor/plasteel,/area/atmos) -"cmh" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) -"cmi" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/extinguisher,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cmj" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "atmospherics mix pump"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cmk" = (/obj/machinery/light_switch{pixel_x = 0; pixel_y = 26},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cml" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/incinerator) -"cmm" = (/obj/machinery/disposal/bin,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = 32},/obj/structure/disposalpipe/trunk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/incinerator) -"cmn" = (/obj/machinery/power/smes{capacity = 9e+006; charge = 10000},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/turf/open/floor/plating,/area/maintenance/incinerator) -"cmo" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint) -"cmp" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) -"cmq" = (/obj/structure/disposalpipe/segment,/obj/structure/grille/broken,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cmr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cms" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cmt" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cmu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/barricade/wooden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cmv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmw" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating/airless,/area/space/nearstation) -"cmx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint2) -"cmC" = (/obj/machinery/space_heater,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmD" = (/obj/structure/sign/securearea{pixel_y = 32},/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmF" = (/obj/structure/rack{dir = 1},/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmG" = (/obj/machinery/door/airlock/maintenance{name = "Research Delivery access"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmH" = (/obj/machinery/light/small{dir = 1},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmI" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cmJ" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"cmK" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/portsolar) -"cmL" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/portsolar) -"cmM" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/portsolar) -"cmN" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/portsolar) -"cmO" = (/obj/machinery/camera{c_tag = "Aft Port Solar Access"; dir = 4},/obj/machinery/light/small{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"cmP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/aft) -"cmQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) -"cmR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/aft) -"cmS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"cmT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/aft) -"cmU" = (/obj/machinery/computer/atmos_alert,/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Engineer's Desk"; departmentType = 3; name = "Chief Engineer RC"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cmV" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/lighter,/obj/item/clothing/glasses/meson{pixel_y = 4},/obj/item/weapon/stamp/ce,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cmW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cmX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cmY" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) -"cmZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/closet/firecloset,/turf/open/floor/plasteel,/area/engine/engineering) -"cna" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cnb" = (/obj/machinery/camera{c_tag = "Engineering Access"},/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) -"cnc" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/red/side{dir = 10},/area/atmos) -"cnd" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "n2_in"; name = "Nitrogen Supply Control"; output_tag = "n2_out"; sensors = list("n2_sensor" = "Tank")},/turf/open/floor/plasteel/red/side,/area/atmos) -"cne" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "N2 Outlet Pump"; on = 1},/turf/open/floor/plasteel/red/side{dir = 6},/area/atmos) -"cnf" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel,/area/atmos) -"cng" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/open/floor/plasteel/blue/side{dir = 10},/area/atmos) -"cnh" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "o2_in"; name = "Oxygen Supply Control"; output_tag = "o2_out"; sensors = list("o2_sensor" = "Tank")},/turf/open/floor/plasteel/blue/side{dir = 0},/area/atmos) -"cni" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "O2 Outlet Pump"; on = 1},/turf/open/floor/plasteel/blue/side{dir = 6},/area/atmos) -"cnj" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/floor/plasteel/arrival{dir = 10},/area/atmos) -"cnk" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "air_in"; name = "Mixed Air Supply Control"; output_tag = "air_out"; sensors = list("air_sensor" = "Tank")},/turf/open/floor/plasteel/arrival,/area/atmos) -"cnl" = (/obj/machinery/camera{c_tag = "Atmospherics South East"; dir = 1},/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Air Outlet Pump"; on = 1},/turf/open/floor/plasteel/arrival{dir = 6},/area/atmos) -"cnm" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Atmospherics External Airlock"; req_access_txt = "24"},/turf/open/floor/plating,/area/atmos) -"cnn" = (/turf/open/floor/plating,/area/atmos) -"cno" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Atmospherics External Airlock"; req_access_txt = "24"},/turf/open/floor/plating,/area/atmos) -"cnp" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/turf/open/space,/area/space/nearstation) -"cnq" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/closed/wall,/area/maintenance/incinerator) -"cnr" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/obj/structure/reagent_dispensers/fueltank,/obj/item/weapon/storage/toolbox/emergency,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cns" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix to MiniSat"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cnt" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cnu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cnv" = (/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cnw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cnx" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/airalarm{desc = "This particular atmos control unit appears to have no access restrictions."; dir = 8; icon_state = "alarm0"; locked = 0; name = "all-access air alarm"; pixel_x = 24; req_access = "0"; req_one_access = "0"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cny" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnz" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) -"cnC" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnG" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnH" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnI" = (/obj/structure/rack{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/spawner/lootdrop/maintenance,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnM" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnN" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cnO" = (/obj/machinery/power/tracker,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/port) -"cnP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"cnQ" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"cnR" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"cnS" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"cnT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/portsolar) -"cnU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/portsolar) -"cnV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/portsolar) -"cnW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/portsolar) -"cnX" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/portsolar) -"cnY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/portsolar) -"cnZ" = (/obj/machinery/door/airlock/engineering{name = "Aft Port Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/portsolar) -"coa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/aft) -"cob" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/aft) -"coc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"cod" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"coe" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"cof" = (/obj/machinery/shieldgen,/turf/open/floor/plating,/area/engine/engineering) -"cog" = (/turf/open/floor/plating,/area/engine/engineering) -"coh" = (/obj/machinery/power/apc{cell_type = 15000; dir = 1; name = "Engineering APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) -"coi" = (/obj/machinery/light{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) -"coj" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) -"cok" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/item/clothing/gloves/color/yellow,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) -"col" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/clothing/mask/breath,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) -"com" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) -"con" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) -"coo" = (/turf/closed/wall,/area/engine/engineering) -"cop" = (/obj/machinery/computer/station_alert,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel,/area/engine/engineering) -"coq" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/modular_computer/console/preset/engineering,/turf/open/floor/plasteel,/area/engine/engineering) -"cor" = (/obj/machinery/computer/station_alert,/obj/machinery/button/door{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -24; pixel_y = -10; req_access_txt = "10"},/obj/machinery/button/door{desc = "A remote control-switch for secure storage."; id = "Secure Storage"; name = "Engineering Secure Storage"; pixel_x = -24; pixel_y = 0; req_access_txt = "11"},/obj/machinery/button/door{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = -24; pixel_y = 10; req_access_txt = "24"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cos" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Chief Engineer"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cot" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/yellow,/obj/item/weapon/paper/monitorkey,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cou" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cov" = (/obj/structure/closet/secure_closet/engineering_chief{req_access_txt = "0"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cow" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) -"cox" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/closet/firecloset,/turf/open/floor/plasteel,/area/engine/engineering) -"coy" = (/obj/effect/landmark{name = "lightsout"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"coz" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) -"coA" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/closed/wall/r_wall,/area/atmos) -"coB" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"coC" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plating,/area/atmos) -"coD" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"coE" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) -"coF" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/closed/wall/r_wall,/area/atmos) -"coG" = (/obj/machinery/atmospherics/components/unary/tank/toxins{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"coH" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "plasma tank pump"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"coI" = (/obj/machinery/atmospherics/pipe/manifold4w/general{level = 2},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"coJ" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "Mix to Incinerator"; on = 0},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"coK" = (/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"coL" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"coM" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{name = "output gas connector port"},/obj/machinery/portable_atmospherics/canister,/obj/structure/sign/nosmoking_2{pixel_x = 28},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"coN" = (/obj/structure/table,/obj/item/weapon/cartridge/medical,/turf/open/floor/plating,/area/maintenance/asmaint) -"coO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/closet/firecloset/full,/turf/open/floor/plating,/area/maintenance/asmaint) -"coP" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/item/latexballon,/turf/open/floor/plating,/area/maintenance/asmaint) -"coQ" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/aft) -"coR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/aft) -"coS" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"coT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"coU" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"coV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"coW" = (/obj/structure/rack,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"coX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) -"coY" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint2) -"coZ" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cpa" = (/obj/machinery/power/apc{dir = 8; name = "Science Maintenance APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/camera{c_tag = "Aft Starboard Solar Access"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cpb" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cpc" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cpd" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"cpe" = (/obj/machinery/power/solar_control{id = "portsolar"; name = "Aft Port Solar Control"; track = 0},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/portsolar) -"cpf" = (/turf/open/floor/plating,/area/maintenance/portsolar) -"cpg" = (/obj/machinery/power/apc{dir = 4; name = "Aft Port Solar APC"; pixel_x = 23; pixel_y = 2},/obj/machinery/camera{c_tag = "Aft Port Solar Control"; dir = 1},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/portsolar) -"cph" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"cpi" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"cpj" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/stack/sheet/mineral/plasma{amount = 30},/turf/open/floor/plating,/area/engine/engineering) -"cpk" = (/obj/machinery/portable_atmospherics/canister/freon,/turf/open/floor/plating,/area/engine/engineering) -"cpl" = (/obj/machinery/door/poddoor{id = "Secure Storage"; name = "secure storage"},/turf/open/floor/plating,/area/engine/engineering) -"cpm" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/engine/engineering) -"cpn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/engine/engineering) -"cpo" = (/turf/open/floor/plasteel,/area/engine/engineering) -"cpp" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/engine/engineering) -"cpq" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/engine/engineering) -"cpr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/engineering) -"cps" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/machinery/camera{c_tag = "Engineering Power Storage"},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/engine/engineering) -"cpt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/chair/office/dark{dir = 1},/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) -"cpu" = (/obj/machinery/camera{c_tag = "Chief Engineer's Office"; dir = 4; network = list("SS13")},/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/computer/card/minor/ce,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cpv" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/storage/fancy/cigarettes,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cpw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cpx" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/structure/filingcabinet/chestdrawer,/mob/living/simple_animal/parrot/Poly,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cpy" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engineering) -"cpz" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engineering) -"cpA" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engineering) -"cpB" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/open/space,/area/space/nearstation) -"cpC" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "waste_out"},/turf/open/floor/plating/airless,/area/atmos) -"cpD" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/space,/area/space/nearstation) -"cpE" = (/obj/structure/sign/nosmoking_2{pixel_x = -28},/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4; name = "input gas connector port"},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cpF" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "input port pump"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cpG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cpH" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cpI" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cpJ" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Incinerator to Output"; on = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cpK" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/incinerator) -"cpL" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/asmaint) -"cpM" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/closed/wall,/area/maintenance/asmaint) -"cpN" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/shard,/turf/open/floor/plating,/area/maintenance/asmaint) -"cpO" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/cigbutt/roach,/turf/open/floor/plating,/area/maintenance/asmaint) -"cpP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall,/area/maintenance/asmaint) -"cpQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"cpR" = (/obj/structure/chair,/obj/item/weapon/storage/fancy/cigarettes,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"cpS" = (/obj/structure/chair,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"cpT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/aft) -"cpU" = (/obj/structure/closet,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cpV" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cpW" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cpX" = (/obj/structure/rack,/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cpY" = (/turf/closed/wall/r_wall,/area/maintenance/starboardsolar) -"cpZ" = (/obj/machinery/door/airlock/engineering{name = "Aft Starboard Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"cqa" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/starboardsolar) -"cqb" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"cqc" = (/turf/closed/wall/r_wall,/area/engine/engine_smes) -"cqd" = (/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"cqe" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"cqf" = (/obj/machinery/portable_atmospherics/canister/toxins,/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "Engineering Secure Storage"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/engine/engineering) -"cqg" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/engine/engineering) -"cqh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/engine/engineering) -"cqi" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"cqj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cqk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/engine/engineering) -"cql" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) -"cqm" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cqn" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cqo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cqp" = (/obj/item/weapon/cartridge/engineering{pixel_x = 4; pixel_y = 5},/obj/item/weapon/cartridge/engineering{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cartridge/engineering{pixel_x = 3},/obj/structure/table/reinforced,/obj/machinery/light_switch{pixel_x = 27},/obj/item/weapon/cartridge/atmos,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"cqq" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/engine/engineering) -"cqr" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 1; name = "Engine Room"; req_access_txt = "10"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"cqs" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) -"cqt" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{name = "Mixed Air Tank In"},/turf/closed/wall/r_wall,/area/atmos) -"cqu" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{name = "Mixed Air Tank Out"},/turf/closed/wall/r_wall,/area/atmos) -"cqv" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/incinerator) -"cqw" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cqx" = (/obj/machinery/atmospherics/components/binary/valve{name = "Mix to Space"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cqy" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cqz" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cqA" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cqB" = (/obj/machinery/portable_atmospherics/canister,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/asmaint) -"cqC" = (/obj/machinery/door/airlock/maintenance{name = "Biohazard Disposals"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"cqD" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/maintenance/asmaint2) -"cqE" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cqF" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cqG" = (/obj/machinery/power/apc{dir = 8; name = "Aft Starboard Solar APC"; pixel_x = -26; pixel_y = 3},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"cqH" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"cqI" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/starboardsolar) -"cqJ" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/maintenance/aft) -"cqK" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"cqL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"cqM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"cqN" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"cqO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"cqP" = (/obj/machinery/field/generator,/turf/open/floor/plating,/area/engine/engineering) -"cqQ" = (/obj/machinery/power/emitter,/turf/open/floor/plating,/area/engine/engineering) -"cqR" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/engine/engineering) -"cqS" = (/obj/structure/table,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/apc,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel,/area/engine/engineering) -"cqT" = (/obj/structure/table,/obj/item/weapon/book/manual/engineering_singularity_safety,/obj/item/clothing/gloves/color/yellow,/obj/item/clothing/gloves/color/yellow,/turf/open/floor/plasteel,/area/engine/engineering) -"cqU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"cqV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"cqW" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/weapon/circuitboard/computer/solar_control,/obj/item/weapon/electronics/tracker,/obj/item/weapon/paper/solar,/turf/open/floor/plasteel,/area/engine/engineering) -"cqX" = (/obj/structure/tank_dispenser,/turf/open/floor/plasteel,/area/engine/engineering) -"cqY" = (/obj/machinery/suit_storage_unit/engine,/turf/open/floor/plasteel,/area/engine/engineering) -"cqZ" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) -"cra" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) -"crb" = (/obj/machinery/door/airlock/glass_command{name = "Chief Engineer"; req_access_txt = "56"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) -"crc" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) -"crd" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/engine/chiefs_office) -"cre" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/engine/engineering) -"crf" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) -"crg" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/yellow/side{dir = 5},/area/engine/engineering) -"crh" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "n2_in"},/turf/open/floor/engine/n2,/area/atmos) -"cri" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2_sensor"},/turf/open/floor/engine/n2,/area/atmos) -"crj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 0; frequency = 1441; id_tag = "n2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/n2,/area/atmos) -"crk" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "o2_in"},/turf/open/floor/engine/o2,/area/atmos) -"crl" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "o2_sensor"},/turf/open/floor/engine/o2,/area/atmos) -"crm" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 0; frequency = 1441; id_tag = "o2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/o2,/area/atmos) -"crn" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "air_in"},/turf/open/floor/engine/air,/area/atmos) -"cro" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "air_sensor"},/turf/open/floor/engine/air,/area/atmos) -"crp" = (/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{dir = 1; external_pressure_bound = 0; frequency = 1441; icon_state = "vent_map"; id_tag = "air_out"; internal_pressure_bound = 2000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/air,/area/atmos) -"crq" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/incinerator) -"crr" = (/obj/machinery/light/small,/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -31},/obj/machinery/computer/turbine_computer{id = "incineratorturbine"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"crs" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"crt" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the turbine vent."; dir = 1; name = "turbine vent monitor"; network = list("Turbine"); pixel_x = 0; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"cru" = (/obj/machinery/button/door{id = "auxincineratorvent"; name = "Auxiliary Vent Control"; pixel_x = 6; pixel_y = -24; req_access_txt = "32"},/obj/machinery/button/door{id = "turbinevent"; name = "Turbine Vent Control"; pixel_x = -6; pixel_y = -24; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"crv" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/binary/valve{dir = 4; name = "Incinerator to Space"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"crw" = (/obj/machinery/doorButtons/airlock_controller{idExterior = "incinerator_airlock_exterior"; idSelf = "incinerator_access_control"; idInterior = "incinerator_airlock_interior"; name = "Incinerator Access Console"; pixel_x = 6; pixel_y = -26; req_access_txt = "12"},/obj/machinery/button/ignition{id = "Incinerator"; pixel_x = -6; pixel_y = -24},/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) -"crx" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"cry" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/general/hidden{icon_state = "manifold"; dir = 1},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) -"crz" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/binary/pump{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"crA" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/machinery/meter,/turf/open/floor/plating,/area/maintenance/asmaint) -"crB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) -"crC" = (/obj/structure/disposalpipe/segment,/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint) -"crD" = (/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/aft) -"crE" = (/obj/structure/rack,/obj/structure/disposalpipe/segment,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"crF" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"crG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) -"crH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"crI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) -"crJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) -"crK" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) -"crL" = (/obj/structure/chair/stool,/obj/machinery/camera{c_tag = "Aft Starboard Solar Control"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"crM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"crN" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"crO" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) -"crP" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) -"crQ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"crR" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 1},/area/engine/engine_smes) -"crS" = (/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) -"crT" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 4},/area/engine/engine_smes) -"crU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"crV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/closed/wall,/area/engine/engineering) -"crW" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/engine/engineering) -"crX" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/engine/engineering) -"crY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_engineering{name = "Power Storage"; req_access_txt = "11"; req_one_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"crZ" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/engine/engineering) -"csa" = (/obj/structure/table,/obj/item/weapon/crowbar/large,/obj/item/weapon/storage/box/lights/mixed,/obj/item/clothing/glasses/meson,/obj/item/clothing/glasses/meson,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/engine/engineering) -"csb" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/wrench,/obj/item/weapon/weldingtool,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) -"csc" = (/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) -"csd" = (/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/engine/engineering) -"cse" = (/obj/machinery/light{dir = 1},/obj/structure/table,/obj/item/weapon/book/manual/wiki/engineering_hacking{pixel_x = 3; pixel_y = 3},/obj/item/weapon/book/manual/wiki/engineering_construction,/obj/item/clothing/glasses/meson,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) -"csf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) -"csg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"csh" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/closet/radiation,/turf/open/floor/plasteel/yellow/side{dir = 4},/area/engine/engineering) -"csi" = (/turf/open/floor/engine/n2,/area/atmos) -"csj" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/open/floor/engine/n2,/area/atmos) -"csk" = (/turf/open/floor/engine/o2,/area/atmos) -"csl" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/engine/o2,/area/atmos) -"csm" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/engine/air,/area/atmos) -"csn" = (/obj/machinery/portable_atmospherics/canister/air,/obj/effect/landmark/event_spawn,/turf/open/floor/engine/air,/area/atmos) -"cso" = (/turf/open/floor/engine/air,/area/atmos) -"csp" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/incinerator) -"csq" = (/turf/closed/wall/r_wall,/area/maintenance/incinerator) -"csr" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2},/turf/closed/wall/r_wall,/area/maintenance/incinerator) -"css" = (/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "incinerator_airlock_interior"; locked = 1; name = "Turbine Interior Airlock"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine,/area/maintenance/incinerator) -"cst" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/closed/wall/r_wall,/area/maintenance/incinerator) -"csu" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 9},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) -"csv" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) -"csw" = (/obj/structure/disposalpipe/junction{dir = 2; icon_state = "pipe-y"},/turf/open/floor/plating,/area/maintenance/asmaint) -"csx" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"csy" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/asmaint) -"csz" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/structure/disposalpipe/segment,/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) -"csA" = (/obj/structure/closet/toolcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) -"csB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"csC" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"csD" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint2) -"csE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/maintenance/asmaint2) -"csF" = (/obj/machinery/power/solar_control{id = "starboardsolar"; name = "Aft Starboard Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"csG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"csH" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"csI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"csJ" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) -"csK" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"csL" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) -"csM" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Engineering"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/engine/engineering) -"csN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/engine/engineering) -"csO" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = -32; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) -"csP" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/yellow/side{dir = 9},/area/engine/engineering) -"csQ" = (/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) -"csR" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/engine/engineering) -"csS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) -"csT" = (/obj/machinery/requests_console{announcementConsole = 0; department = "Engineering"; departmentType = 4; name = "Engineering RC"; pixel_y = 30},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) -"csU" = (/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) -"csV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) -"csW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"csX" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"csY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"csZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"cta" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plasteel,/area/engine/engineering) -"ctb" = (/obj/structure/closet/secure_closet/engineering_personal,/turf/open/floor/plasteel/yellow/side{dir = 4},/area/engine/engineering) -"ctc" = (/obj/machinery/light/small,/turf/open/floor/engine/n2,/area/atmos) -"ctd" = (/obj/machinery/light/small,/turf/open/floor/engine/o2,/area/atmos) -"cte" = (/obj/machinery/light/small,/turf/open/floor/engine/air,/area/atmos) -"ctf" = (/obj/structure/lattice,/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "Incinerator Output Pump"; on = 1},/turf/open/space,/area/maintenance/incinerator) -"ctg" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2; on = 1},/obj/machinery/doorButtons/access_button{idDoor = "incinerator_airlock_exterior"; idSelf = "incinerator_access_control"; layer = 3.1; name = "Incinerator airlock control"; pixel_x = 8; pixel_y = -24},/obj/machinery/light/small{dir = 8},/obj/structure/sign/fire{pixel_x = -32; pixel_y = 0},/turf/open/floor/engine,/area/maintenance/incinerator) -"cth" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine,/area/maintenance/incinerator) -"cti" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; on = 1},/obj/structure/sign/fire{pixel_x = 32; pixel_y = 0},/obj/machinery/doorButtons/access_button{idSelf = "incinerator_access_control"; idDoor = "incinerator_airlock_interior"; name = "Incinerator airlock control"; pixel_x = -8; pixel_y = 24},/obj/machinery/light/small{dir = 4},/turf/open/floor/engine,/area/maintenance/incinerator) -"ctj" = (/obj/machinery/light/small,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) -"ctk" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) -"ctl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) -"ctm" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) -"ctn" = (/obj/machinery/light/small,/obj/structure/table,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/spawner/lootdrop/maintenance,/obj/item/weapon/clipboard,/turf/open/floor/plating,/area/maintenance/asmaint) -"cto" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint) -"ctp" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) -"ctq" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/starboardsolar) -"ctr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"cts" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) -"ctt" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"ctu" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 4},/area/engine/engine_smes) -"ctv" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) -"ctw" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 1},/area/engine/engine_smes) -"ctx" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera{c_tag = "SMES Room"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"cty" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Engineering Delivery"; req_access_txt = "10"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/engine/engineering) -"ctz" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Engineering Maintenance"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/engine/engineering) -"ctA" = (/obj/machinery/camera{c_tag = "Engineering West"; dir = 4; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) -"ctB" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"ctC" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/open/floor/plasteel,/area/engine/engineering) -"ctD" = (/obj/machinery/holopad,/obj/effect/turf_decal/bot,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/engineering) -"ctE" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plasteel,/area/engine/engineering) -"ctF" = (/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) -"ctG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"ctH" = (/obj/structure/closet/secure_closet/engineering_personal,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/engine/engineering) -"ctI" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/space,/area/maintenance/incinerator) -"ctJ" = (/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "incinerator_airlock_exterior"; locked = 1; name = "Turbine Exterior Airlock"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine,/area/maintenance/incinerator) -"ctK" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/closed/wall,/area/maintenance/asmaint) -"ctL" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "Waste Out"; on = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) -"ctM" = (/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"},/turf/open/floor/plating,/area/maintenance/asmaint) -"ctN" = (/obj/structure/closet/emcloset,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) -"ctO" = (/obj/structure/disposalpipe/segment,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) -"ctP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"ctQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"ctR" = (/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"ctS" = (/obj/machinery/door/window{name = "SMES Chamber"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"ctT" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"ctU" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) -"ctV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/engine_smes) -"ctW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engine_smes) -"ctX" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "SMES Access"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/engine_smes) -"ctY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/loadingarea,/area/engine/engineering) -"ctZ" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel,/area/engine/engineering) -"cua" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cub" = (/obj/machinery/firealarm{pixel_y = 24},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cud" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cue" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cug" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuh" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"cui" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/storage/firstaid/fire,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuj" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/engine/engineering) -"cul" = (/obj/structure/closet/radiation,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"cum" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/turf/closed/wall/r_wall,/area/engine/engineering) -"cun" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/engine/engineering) -"cuo" = (/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) -"cup" = (/obj/structure/table,/obj/item/device/flashlight{pixel_y = 5},/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/weapon/airlock_painter,/turf/open/floor/plasteel,/area/engine/engineering) -"cuq" = (/obj/machinery/camera{c_tag = "Engineering East"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/structure/closet/wardrobe/engineering_yellow,/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/engine/engineering) -"cur" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "inc_in"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) -"cus" = (/obj/machinery/igniter{icon_state = "igniter0"; id = "Incinerator"; luminosity = 2; on = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) -"cut" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 0; initialize_directions = 1; internal_pressure_bound = 4000; on = 0; pressure_checks = 2; pump_direction = 0},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) -"cuu" = (/obj/machinery/door/poddoor{id = "auxincineratorvent"; name = "Auxiliary Incinerator Vent"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) -"cuv" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) -"cuw" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cux" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cuy" = (/obj/structure/table,/obj/item/weapon/weldingtool,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cuz" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cuA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/starboardsolar) -"cuB" = (/obj/machinery/power/port_gen/pacman,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cuC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cuD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cuE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cuF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cuG" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 4; name = "SMES Room"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engine_smes) -"cuH" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cuI" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cuJ" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 8; name = "SMES Room"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engine_smes) -"cuK" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engineering) -"cuL" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"cuM" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"cuN" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuO" = (/obj/machinery/door/firedoor,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuQ" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuR" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/engineering_hacking{pixel_x = 3; pixel_y = 3},/obj/item/weapon/book/manual/wiki/engineering_construction,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/engine/engineering) -"cuS" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cuU" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/color/black,/obj/item/weapon/extinguisher{pixel_x = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/engine/engineering) -"cuV" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/engine/engineering) -"cuW" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) -"cuX" = (/obj/machinery/camera{c_tag = "Engineering Center"; dir = 2; pixel_x = 23},/obj/machinery/light{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) -"cuY" = (/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating,/area/engine/engineering) -"cuZ" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/storage/belt/utility,/turf/open/floor/plasteel,/area/engine/engineering) -"cva" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/engine/engineering) -"cvb" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/engineering_guide,/obj/item/weapon/book/manual/engineering_particle_accelerator{pixel_y = 6},/turf/open/floor/plasteel,/area/engine/engineering) -"cvc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) -"cvd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/vending/engivend,/turf/open/floor/plasteel,/area/engine/engineering) -"cve" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/closet/secure_closet/engineering_electrical,/turf/open/floor/plasteel,/area/engine/engineering) -"cvf" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 5},/obj/structure/closet/secure_closet/engineering_welding,/turf/open/floor/plasteel,/area/engine/engineering) -"cvg" = (/obj/structure/closet/emcloset,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/engine/engineering) -"cvh" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/closed/wall/mineral/titanium,/area/shuttle/pod_4) -"cvi" = (/turf/closed/wall/mineral/titanium,/area/shuttle/pod_4) -"cvj" = (/obj/machinery/power/compressor{comp_id = "incineratorturbine"; dir = 1; luminosity = 2},/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/camera{c_tag = "Turbine Chamber"; dir = 4; network = list("Turbine")},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) -"cvk" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/space,/area/maintenance/asmaint) -"cvl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"cvm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cvn" = (/turf/open/floor/plasteel,/area/engine/engine_smes) -"cvo" = (/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cvp" = (/obj/machinery/light,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/engine/engine_smes) -"cvq" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cvr" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cvs" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cvt" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"cvu" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"cvv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"cvw" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/open/floor/plasteel,/area/engine/engineering) -"cvx" = (/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/storage/toolbox/electrical{pixel_y = 5},/turf/open/floor/plasteel,/area/engine/engineering) -"cvy" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/engine/engineering) -"cvz" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel,/area/engine/engineering) -"cvA" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/engineering) -"cvB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/engine/engineering) -"cvC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) -"cvD" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/engine/engineering) -"cvE" = (/obj/structure/particle_accelerator/end_cap,/turf/open/floor/plating,/area/engine/engineering) -"cvF" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/engine/engineering) -"cvG" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/engine/engineering) -"cvH" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/engine/engineering) -"cvI" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/engine/engineering) -"cvJ" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) -"cvK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cvL" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cvM" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Escape Pod Four"; req_access = null; req_access_txt = "0"},/turf/open/floor/plating,/area/engine/engineering) -"cvN" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Escape Pod Four"; req_access = null; req_access_txt = "0"; shuttledocked = 1},/turf/open/floor/plating,/area/engine/engineering) -"cvO" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 4; id = "pod4"; name = "escape pod 4"; port_angle = 180; preferred_direction = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_4) -"cvP" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -32},/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_4) -"cvQ" = (/obj/machinery/computer/shuttle/pod{pixel_y = -32; possible_destinations = "pod_asteroid4"; shuttleId = "pod4"},/obj/structure/chair{dir = 4},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_4) -"cvR" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_4) -"cvS" = (/obj/docking_port/stationary/random{dir = 4; id = "pod_asteroid4"; name = "asteroid"},/turf/open/space,/area/space) -"cvT" = (/obj/machinery/power/turbine{luminosity = 2},/obj/structure/cable/yellow,/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) -"cvU" = (/obj/item/weapon/wrench,/obj/structure/lattice/catwalk,/turf/open/space,/area/space/nearstation) -"cvV" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1},/turf/open/floor/plating/airless,/area/maintenance/asmaint) -"cvW" = (/obj/effect/decal/cleanable/dirt,/obj/structure/table_frame,/obj/item/weapon/wirerod,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cvX" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cvY" = (/obj/structure/disposaloutlet,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating/airless,/area/space) -"cvZ" = (/obj/machinery/door/airlock{name = "Observatory Access"},/turf/open/floor/plating,/area/maintenance/aft) -"cwa" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "SMES room APC"; pixel_y = -24},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cwb" = (/obj/structure/chair/office/light{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/engine/engine_smes) -"cwc" = (/obj/structure/table,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/obj/item/weapon/stock_parts/cell/high/plus,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/engine/engine_smes) -"cwd" = (/obj/structure/table,/obj/machinery/camera{c_tag = "Engineering Storage"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel,/area/engine/engineering) -"cwe" = (/obj/structure/table,/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel,/area/engine/engineering) -"cwf" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) -"cwg" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = -32},/obj/machinery/light,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) -"cwh" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) -"cwi" = (/obj/item/clothing/glasses/meson,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) -"cwj" = (/obj/structure/chair/stool,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) -"cwk" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = 25; pixel_y = 0; req_access_txt = "11"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) -"cwl" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = -25; pixel_y = 0; req_access_txt = "11"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) -"cwm" = (/obj/machinery/particle_accelerator/control_box,/obj/structure/cable/yellow,/turf/open/floor/plating,/area/engine/engineering) -"cwn" = (/obj/structure/particle_accelerator/fuel_chamber,/turf/open/floor/plating,/area/engine/engineering) -"cwo" = (/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plating,/area/engine/engineering) -"cwp" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = 25; pixel_y = 0; req_access_txt = "11"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/engine/engineering) -"cwq" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = -25; pixel_y = 0; req_access_txt = "11"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) -"cwr" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) -"cws" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) -"cwt" = (/obj/structure/closet/firecloset,/turf/open/floor/plasteel,/area/engine/engineering) -"cwu" = (/obj/structure/sign/pods{pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/engine/engineering) -"cwv" = (/obj/machinery/camera{c_tag = "Engineering Escape Pod"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/engine/engineering) -"cww" = (/obj/effect/landmark{name = "carpspawn"},/turf/open/space,/area/space/nearstation) -"cwx" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1},/turf/open/floor/plating/airless,/area/maintenance/incinerator) -"cwy" = (/obj/structure/sign/fire{pixel_x = 0; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/incinerator) -"cwz" = (/obj/machinery/door/poddoor{id = "turbinevent"; name = "Turbine Vent"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) -"cwA" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cwB" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/plating,/area/maintenance/aft) -"cwC" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/engine/engineering) -"cwD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/engine/engineering) -"cwE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) -"cwF" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cwG" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel,/area/engine/engineering) -"cwH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/open/floor/plating,/area/engine/engineering) -"cwI" = (/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/turf/open/floor/plating,/area/engine/engineering) -"cwJ" = (/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/engine/engineering) -"cwK" = (/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/weapon/crowbar,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) -"cwL" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/engine/engineering) -"cwM" = (/obj/structure/particle_accelerator/power_box,/turf/open/floor/plating,/area/engine/engineering) -"cwN" = (/obj/item/weapon/screwdriver,/turf/open/floor/plating,/area/engine/engineering) -"cwO" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/engine/engineering) -"cwP" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/asmaint2) -"cwQ" = (/obj/effect/decal/cleanable/dirt,/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/asmaint2) -"cwR" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"cwS" = (/obj/structure/chair,/turf/open/floor/plating,/area/maintenance/aft) -"cwT" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) -"cwU" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel,/area/engine/engineering) -"cwV" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/open/floor/plasteel,/area/engine/engineering) -"cwW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) -"cwX" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/turf/open/floor/plasteel,/area/engine/engineering) -"cwY" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/engine/engineering) -"cwZ" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/engine/engineering) -"cxa" = (/obj/machinery/light/small{dir = 8},/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/engine/engineering) -"cxb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32},/turf/open/floor/plating,/area/engine/engineering) -"cxc" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) -"cxd" = (/obj/machinery/power/rad_collector{anchored = 1},/obj/structure/cable/yellow,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) -"cxe" = (/obj/machinery/power/rad_collector{anchored = 1},/obj/item/weapon/tank/internals/plasma,/obj/structure/cable/yellow,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) -"cxf" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) -"cxg" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) -"cxh" = (/obj/structure/particle_accelerator/particle_emitter/left,/turf/open/floor/plating,/area/engine/engineering) -"cxi" = (/obj/structure/particle_accelerator/particle_emitter/center,/turf/open/floor/plating,/area/engine/engineering) -"cxj" = (/obj/structure/particle_accelerator/particle_emitter/right,/turf/open/floor/plating,/area/engine/engineering) -"cxk" = (/obj/structure/reagent_dispensers/watertank,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) -"cxl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32},/turf/open/floor/plating,/area/engine/engineering) -"cxm" = (/obj/machinery/light/small{dir = 4},/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/engine/engineering) -"cxn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) -"cxo" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/engineering) -"cxp" = (/obj/machinery/camera{c_tag = "Engineering MiniSat Access"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cxq" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/engine/engineering) -"cxr" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) -"cxs" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "starboardsolar"; name = "Starboard Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/starboard) -"cxt" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"cxu" = (/obj/structure/table,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) -"cxv" = (/obj/structure/table,/obj/item/weapon/storage/box/matches,/obj/item/weapon/storage/fancy/cigarettes,/turf/open/floor/plating,/area/maintenance/aft) -"cxw" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/engine/engineering) -"cxx" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/engine/engineering) -"cxy" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) -"cxz" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) -"cxA" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) -"cxB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/obj/structure/fans/tiny,/turf/open/floor/plating,/area/engine/engineering) -"cxC" = (/obj/structure/cable/yellow{icon_state = "1-4"; d1 = 1; d2 = 4},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/engine/engineering) -"cxD" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/engine/engineering) -"cxE" = (/obj/item/weapon/wirecutters,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/engine/engineering) -"cxF" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/engine/engineering) -"cxG" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/engine/engineering) -"cxH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) -"cxI" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cxJ" = (/obj/machinery/door/airlock/command{name = "MiniSat Access"; req_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) -"cxK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) -"cxL" = (/obj/structure/transit_tube_pod,/obj/structure/transit_tube/station/reverse/flipped{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) -"cxM" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space) -"cxN" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"cxO" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"cxP" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"cxQ" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"cxR" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"cxS" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"cxT" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating/airless,/area/engine/engineering) -"cxU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/engine/engineering) -"cxV" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity North-West"; dir = 2; network = list("Singularity")},/obj/machinery/power/grounding_rod,/turf/open/floor/plating/airless,/area/engine/engineering) -"cxW" = (/obj/machinery/power/grounding_rod,/turf/open/floor/plating/airless,/area/space/nearstation) -"cxX" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/engine/engineering) -"cxY" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity North East"; dir = 2; network = list("Singularity")},/obj/machinery/power/grounding_rod,/turf/open/floor/plating/airless,/area/engine/engineering) -"cxZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/engine/engineering) -"cya" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating/airless,/area/engine/engineering) -"cyb" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/open/floor/plasteel,/area/engine/engineering) -"cyc" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/engine/engineering) -"cyd" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/engine/engineering) -"cye" = (/obj/structure/transit_tube,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) -"cyf" = (/obj/structure/cable,/obj/machinery/power/solar{id = "starboardsolar"; name = "Starboard Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/starboard) -"cyg" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/engine/engineering) -"cyh" = (/turf/open/floor/plating/airless,/area/engine/engineering) -"cyi" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) -"cyj" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating/airless,/area/space/nearstation) -"cyk" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/open/floor/plating/airless,/area/space/nearstation) -"cyl" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) -"cym" = (/obj/item/weapon/wrench,/turf/open/floor/plating/airless,/area/engine/engineering) -"cyn" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/engine/engineering) -"cyo" = (/obj/structure/closet/emcloset,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32},/turf/open/floor/plating,/area/engine/engineering) -"cyp" = (/obj/structure/window/reinforced/fulltile,/obj/structure/transit_tube,/turf/open/floor/plating,/area/engine/engineering) -"cyq" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/engine/engineering) -"cyr" = (/obj/machinery/power/emitter{anchored = 1; dir = 4; state = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating/airless,/area/engine/engineering) -"cys" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating/airless,/area/engine/engineering) -"cyt" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/space/nearstation) -"cyu" = (/obj/machinery/field/generator{anchored = 1; state = 2},/turf/open/floor/plating/airless,/area/space/nearstation) -"cyv" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating/airless,/area/engine/engineering) -"cyw" = (/obj/machinery/power/emitter{anchored = 1; dir = 8; state = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating/airless,/area/engine/engineering) -"cyx" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/engine/engineering) -"cyy" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/open/floor/plating,/area/engine/engineering) -"cyz" = (/obj/structure/sign/securearea,/turf/closed/wall,/area/engine/engineering) -"cyA" = (/obj/structure/transit_tube/curved/flipped{dir = 1},/turf/open/space,/area/space) -"cyB" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"cyC" = (/obj/item/device/multitool,/turf/open/floor/plating/airless,/area/engine/engineering) -"cyD" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{icon_state = "1-4"; d1 = 1; d2 = 4},/turf/open/floor/plating/airless,/area/space/nearstation) -"cyE" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/power/tesla_coil,/turf/open/floor/plating/airless,/area/space/nearstation) -"cyF" = (/obj/item/weapon/wirecutters,/obj/structure/lattice,/turf/open/space,/area/space/nearstation) -"cyG" = (/obj/structure/cable/yellow{icon_state = "0-4"; d2 = 4},/obj/machinery/power/tesla_coil,/turf/open/floor/plating/airless,/area/space/nearstation) -"cyH" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) -"cyI" = (/obj/structure/transit_tube/curved{dir = 4},/turf/open/space,/area/space) -"cyJ" = (/obj/structure/lattice,/obj/structure/transit_tube/crossing/horizontal,/turf/open/space,/area/space) -"cyK" = (/obj/structure/transit_tube/horizontal,/turf/open/space,/area/space) -"cyL" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/transit_tube/crossing/horizontal,/turf/open/space,/area/space) -"cyM" = (/obj/structure/window/reinforced/fulltile,/obj/structure/transit_tube/horizontal,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"cyN" = (/obj/structure/transit_tube/horizontal,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"cyO" = (/obj/structure/transit_tube/station/reverse,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"cyP" = (/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"cyQ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) -"cyR" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) -"cyS" = (/obj/effect/landmark/event_spawn,/turf/open/space,/area/space/nearstation) -"cyT" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) -"cyU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) -"cyV" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"cyW" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"cyX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) -"cyY" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating/airless,/area/space/nearstation) -"cyZ" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating/airless,/area/space/nearstation) -"cza" = (/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating/airless,/area/space/nearstation) -"czb" = (/obj/item/weapon/crowbar,/turf/open/space,/area/space/nearstation) -"czc" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "MiniSat External Access"; req_access = null; req_access_txt = "65;13"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"czd" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"cze" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "MiniSat External Access"; req_access = null; req_access_txt = "65;13"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"czf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"czg" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"czh" = (/obj/machinery/light{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) -"czi" = (/obj/machinery/the_singularitygen,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating/airless,/area/space/nearstation) -"czj" = (/obj/item/weapon/wrench,/turf/open/floor/plating/airless,/area/space/nearstation) -"czk" = (/obj/machinery/the_singularitygen/tesla,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating/airless,/area/space/nearstation) -"czl" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) -"czm" = (/obj/structure/lattice/catwalk,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space) -"czn" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"czo" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/securearea{pixel_y = -32},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"czp" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/obj/machinery/light/small,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"czq" = (/obj/machinery/camera{c_tag = "MiniSat Pod Access"; dir = 1; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 2; on = 1},/obj/machinery/light/small,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"czr" = (/obj/item/weapon/weldingtool,/turf/open/space,/area/space/nearstation) -"czs" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating/airless,/area/space/nearstation) -"czt" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plating/airless,/area/space/nearstation) -"czu" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating/airless,/area/space/nearstation) -"czv" = (/turf/closed/wall,/area/ai_monitored/turret_protected/aisat_interior) -"czw" = (/obj/machinery/door/airlock/hatch{name = "MiniSat Foyer"; req_one_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"czx" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall,/area/ai_monitored/turret_protected/aisat_interior) -"czy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/ai_monitored/turret_protected/aisat_interior) -"czz" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8},/turf/open/floor/plating/airless,/area/ai_monitored/turret_protected/aisat_interior) -"czA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"czB" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) -"czC" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/item/weapon/folder{pixel_x = 3},/obj/item/weapon/phone{pixel_x = -3; pixel_y = 3},/obj/item/weapon/pen,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) -"czD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"czE" = (/obj/structure/rack{dir = 1},/obj/machinery/light/small{dir = 1},/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/device/radio/off{pixel_y = 4},/obj/item/weapon/screwdriver{pixel_y = 10},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) -"czF" = (/obj/item/device/radio/off,/turf/open/floor/plating/airless,/area/engine/engineering) -"czG" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/computer/station_alert,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) -"czH" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) -"czI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) -"czJ" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) -"czK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"czL" = (/obj/machinery/door/poddoor/shutters{id = "teledoor"; name = "MiniSat Teleport Access"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"czM" = (/obj/machinery/button/door{id = "teledoor"; name = "MiniSat Teleport Shutters Control"; pixel_x = 0; pixel_y = 25; req_access_txt = "17;65"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"czN" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"czO" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/engine/engineering) -"czP" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/engine/engineering) -"czQ" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -31},/obj/machinery/computer/monitor,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) -"czR" = (/obj/structure/chair/office/dark{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) -"czS" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/landmark/start{name = "Cyborg"},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) -"czT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) -"czU" = (/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"czV" = (/obj/machinery/door/airlock/hatch{name = "MiniSat Teleporter"; req_access_txt = "17;65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"czW" = (/obj/machinery/bluespace_beacon,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"czX" = (/obj/machinery/teleport/station,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"czY" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) -"czZ" = (/obj/structure/cable/yellow{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tesla_coil,/turf/open/floor/plating/airless,/area/space/nearstation) -"cAa" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 5},/turf/open/space,/area/space) -"cAb" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 10},/obj/structure/lattice,/turf/open/space,/area/space) -"cAc" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = 0; pixel_y = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) -"cAd" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) -"cAe" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) -"cAf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) -"cAg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "MiniSat Foyer APC"; pixel_x = 27; pixel_y = 0},/obj/structure/chair,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cAh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/ai_monitored/turret_protected/aisat_interior) -"cAi" = (/obj/machinery/camera{c_tag = "MiniSat Teleporter"; dir = 1; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cAj" = (/obj/machinery/computer/teleporter,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) -"cAk" = (/obj/structure/cable,/obj/machinery/power/tracker,/turf/open/floor/plasteel/airless/solarpanel,/area/solar/starboard) -"cAl" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity West"; dir = 1; network = list("Singularity")},/turf/open/floor/plating/airless,/area/engine/engineering) -"cAm" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/open/floor/plating/airless,/area/space/nearstation) -"cAn" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) -"cAo" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) -"cAp" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity East"; dir = 1; network = list("Singularity")},/turf/open/floor/plating/airless,/area/engine/engineering) -"cAq" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAr" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/machinery/meter,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAs" = (/obj/structure/rack{dir = 1},/obj/machinery/status_display{pixel_y = -32},/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) -"cAt" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/obj/machinery/light/small,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cAu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cAv" = (/obj/machinery/turretid{control_area = null; enabled = 1; icon_state = "control_standby"; name = "Antechamber Turret Control"; pixel_x = 0; pixel_y = -24; req_access = list(65)},/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/camera/motion{c_tag = "MiniSat Foyer"; dir = 1; network = list("MiniSat")},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cAw" = (/obj/machinery/ai_status_display{pixel_y = -32},/obj/structure/table,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) -"cAx" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cAy" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/engine/engineering) -"cAz" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/rack,/obj/item/weapon/wrench,/obj/item/weapon/crowbar/red,/obj/item/clothing/head/welding,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAA" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAB" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/aisat_interior) -"cAC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Antechamber"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cAD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/aisat_interior) -"cAE" = (/obj/machinery/recharge_station,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cAF" = (/obj/structure/grille,/turf/closed/wall/r_wall,/area/engine/engineering) -"cAG" = (/obj/machinery/portable_atmospherics/canister/air,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plating{tag = "icon-warnplatecorner"},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAH" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "Mix to MiniSat"},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAI" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air Out"; on = 0},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAJ" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAK" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 4; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = -9; pixel_y = 2},/turf/open/floor/plasteel/darkblue/corner{dir = 1},/area/ai_monitored/turret_protected/aisat_interior) -"cAL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cAM" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/darkblue/corner{dir = 4},/area/ai_monitored/turret_protected/aisat_interior) -"cAN" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 4; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = -9; pixel_y = 2},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cAO" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cAP" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/head/welding,/obj/item/stack/sheet/mineral/plasma{amount = 35; layer = 3.1},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cAQ" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "MiniSat Atmospherics"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/space_heater,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAS" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAT" = (/obj/machinery/light/small{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 28; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/darkblue/corner{dir = 4},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cAU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/aisat_interior) -"cAV" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "MiniSat Antechamber"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/turretid{control_area = "AI Satellite Atmospherics"; enabled = 1; icon_state = "control_standby"; name = "Atmospherics Turret Control"; pixel_x = -27; pixel_y = 0; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/darkblue/corner{dir = 1},/area/ai_monitored/turret_protected/aisat_interior) -"cAW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cAX" = (/obj/machinery/light/small{dir = 4},/obj/machinery/turretid{control_area = "AI Satellite Service"; enabled = 1; icon_state = "control_standby"; name = "Service Bay Turret Control"; pixel_x = 27; pixel_y = 0; req_access = list(65)},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/darkblue/corner{dir = 4},/area/ai_monitored/turret_protected/aisat_interior) -"cAY" = (/obj/machinery/light/small{dir = 8},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = -28; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/darkblue/corner{dir = 1},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cAZ" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBa" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBb" = (/obj/machinery/light/small{dir = 4},/obj/machinery/camera{c_tag = "MiniSat Service Bay"; dir = 8; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/device/multitool,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBc" = (/obj/machinery/power/apc{dir = 8; name = "MiniSat Atmospherics APC"; pixel_x = -27; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/portable_atmospherics/scrubber,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cBd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cBe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/ai_slipper{uses = 10},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cBf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cBg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Atmospherics"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cBh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cBi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/ai_slipper{uses = 10},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/mob/living/simple_animal/bot/secbot/pingsky,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cBj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cBk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Service Bay"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cBl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/ai_slipper{uses = 10},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBo" = (/obj/machinery/power/apc{dir = 4; name = "MiniSat Service Bay APC"; pixel_x = 27; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/port_gen/pacman,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBp" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cBq" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/mob/living/simple_animal/bot/floorbot,/turf/open/floor/plasteel/darkblue/corner,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) -"cBr" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/porta_turret/ai{dir = 4},/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1447; listening = 0; name = "Station Intercom (AI Private)"; pixel_y = -29},/turf/open/floor/plasteel/darkblue/corner{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) -"cBs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/turretid{control_area = "AI Satellite Hallway"; enabled = 1; icon_state = "control_standby"; name = "Chamber Hallway Turret Control"; pixel_x = 32; pixel_y = -24; req_access = list(65)},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) -"cBt" = (/obj/machinery/porta_turret/ai{dir = 4},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/darkblue/corner,/area/ai_monitored/turret_protected/aisat_interior) -"cBu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/mob/living/simple_animal/bot/cleanbot,/turf/open/floor/plasteel/darkblue/corner{dir = 8},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBw" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) -"cBx" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBy" = (/turf/closed/wall,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBz" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Chamber Hallway"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBC" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBD" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_southmaint"; name = "south maintenance airlock"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) -"cBE" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBG" = (/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBH" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBJ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBL" = (/obj/structure/rack,/obj/item/weapon/crowbar/red,/obj/item/weapon/wrench,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBM" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBN" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBO" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External NorthWest"; dir = 8; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) -"cBP" = (/obj/machinery/porta_turret/ai{dir = 4; installation = /obj/item/weapon/gun/energy/e_gun},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBR" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBS" = (/obj/machinery/porta_turret/ai{dir = 4; installation = /obj/item/weapon/gun/energy/e_gun},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBT" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External NorthEast"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) -"cBU" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBV" = (/obj/machinery/camera/motion{c_tag = "MiniSat Core Hallway"; dir = 4; network = list("MiniSat")},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBW" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBY" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cBZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCa" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCd" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCe" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCf" = (/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCg" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCh" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCj" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 4; name = "MiniSat Chamber Hallway APC"; pixel_x = 27; pixel_y = 0},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCk" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1447; listening = 0; name = "Station Intercom (AI Private)"; pixel_x = -28; pixel_y = -29},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCn" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai) -"cCo" = (/obj/machinery/status_display,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai) -"cCp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Chamber Observation"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCq" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai) -"cCr" = (/obj/machinery/ai_status_display,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai) -"cCs" = (/obj/machinery/light/small{dir = 1},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCt" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCw" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCx" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/white,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCy" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCB" = (/obj/structure/chair/office/dark,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCC" = (/obj/structure/grille,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) -"cCD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/turret_protected/ai) -"cCE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "AI Core"; req_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCF" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/ai) -"cCG" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_se"; name = "southeast of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) -"cCH" = (/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cCI" = (/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/ai_slipper{uses = 10},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCK" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/status_display{pixel_x = -32},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cCL" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCQ" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/ai_status_display{pixel_x = 32},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cCR" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cCS" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/turretid{name = "AI Chamber turret control"; pixel_x = 5; pixel_y = -24},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cCT" = (/obj/machinery/door/window{dir = 1; name = "AI Core Door"; req_access_txt = "16"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cCU" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "AI Chamber APC"; pixel_y = -24},/obj/machinery/flasher{id = "AI"; pixel_x = -11; pixel_y = -24},/obj/machinery/camera/motion{c_tag = "MiniSat AI Chamber North"; dir = 1; network = list("MiniSat")},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cCV" = (/turf/closed/wall,/area/ai_monitored/turret_protected/ai) -"cCW" = (/obj/effect/landmark/start{name = "AI"},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = -27; pixel_y = -9},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = -31},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 27; pixel_y = -9},/obj/machinery/newscaster/security_unit{pixel_x = -28; pixel_y = -28},/obj/machinery/requests_console{department = "AI"; departmentType = 5; pixel_x = 28; pixel_y = -28},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cCX" = (/obj/machinery/ai_slipper{uses = 10},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cCY" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External SouthWest"; dir = 8; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) -"cCZ" = (/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = 28},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = -27; pixel_y = 5},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 0; pixel_y = -25},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cDa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cDb" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 4; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = -9; pixel_y = 2},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cDc" = (/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = 28},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = 27; pixel_y = 5},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 0; pixel_y = -25},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cDd" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External SouthEast"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) -"cDe" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_s"; name = "south of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) -"cDf" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cDg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/closed/wall,/area/ai_monitored/turret_protected/ai) -"cDh" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cDi" = (/obj/machinery/camera/motion{c_tag = "MiniSat AI Chamber South"; dir = 2; network = list("MiniSat")},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cDj" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/ai_slipper{uses = 10},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) -"cDk" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cDl" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/holopad,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) -"cDm" = (/obj/machinery/camera{c_tag = "MiniSat External South"; dir = 2; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aaa" = ( +/turf/open/space, +/area/space) +"aab" = ( +/obj/docking_port/stationary{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate_n"; + name = "north of station"; + turf_type = /turf/open/space; + width = 18 + }, +/turf/open/space, +/area/space) +"aac" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"aad" = ( +/turf/closed/wall/shuttle{ + icon_state = "wall3" + }, +/area/shuttle/syndicate) +"aae" = ( +/obj/effect/landmark{ + name = "carpspawn" + }, +/turf/open/space, +/area/space) +"aaf" = ( +/obj/structure/lattice, +/turf/open/space, +/area/space) +"aag" = ( +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/space) +"aah" = ( +/obj/structure/sign/securearea{ + pixel_y = -32 + }, +/turf/open/space, +/area/space) +"aai" = ( +/turf/closed/wall/r_wall, +/area/security/prison) +"aaj" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/closed/wall/r_wall, +/area/security/prison) +"aak" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/prison) +"aal" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/prison) +"aam" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/prison) +"aan" = ( +/obj/machinery/hydroponics/soil, +/obj/item/seeds/ambrosia, +/turf/open/floor/plasteel/green/side{ + dir = 9 + }, +/area/security/prison) +"aao" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/turf/open/floor/plating, +/area/security/prison) +"aap" = ( +/obj/machinery/hydroponics/soil, +/obj/item/seeds/carrot, +/turf/open/floor/plasteel/green/side{ + dir = 1 + }, +/area/security/prison) +"aaq" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 32 + }, +/obj/machinery/hydroponics/soil, +/obj/item/device/plant_analyzer, +/obj/machinery/camera{ + c_tag = "Prison Common Room"; + network = list("SS13","Prison") + }, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/security/prison) +"aar" = ( +/obj/machinery/hydroponics/soil, +/obj/item/seeds/glowshroom, +/turf/open/floor/plasteel/green/side{ + dir = 1 + }, +/area/security/prison) +"aas" = ( +/obj/structure/sink{ + pixel_y = 20 + }, +/turf/open/floor/plating, +/area/security/prison) +"aat" = ( +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aau" = ( +/obj/machinery/biogenerator, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aav" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aaw" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plating, +/area/security/prison) +"aax" = ( +/mob/living/simple_animal/mouse/brown/Tom, +/turf/open/floor/plating, +/area/security/prison) +"aay" = ( +/turf/open/floor/plating, +/area/security/prison) +"aaz" = ( +/obj/item/weapon/reagent_containers/glass/bucket, +/turf/open/floor/plating, +/area/security/prison) +"aaA" = ( +/obj/machinery/seed_extractor, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aaB" = ( +/obj/structure/window/reinforced, +/obj/machinery/hydroponics/soil, +/obj/item/seeds/potato, +/turf/open/floor/plasteel/green/side{ + dir = 10 + }, +/area/security/prison) +"aaC" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plating, +/area/security/prison) +"aaD" = ( +/obj/structure/window/reinforced, +/obj/machinery/hydroponics/soil, +/obj/item/seeds/grass, +/turf/open/floor/plasteel/green/side{ + dir = 2 + }, +/area/security/prison) +"aaE" = ( +/obj/structure/window/reinforced, +/obj/machinery/hydroponics/soil, +/obj/item/weapon/cultivator, +/turf/open/floor/plasteel/green/side{ + dir = 6 + }, +/area/security/prison) +"aaF" = ( +/obj/structure/window/reinforced, +/obj/machinery/hydroponics/soil, +/obj/item/weapon/cultivator, +/turf/open/floor/plasteel/green/side{ + dir = 2 + }, +/area/security/prison) +"aaG" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aaH" = ( +/turf/open/floor/plating/airless, +/area/space/nearstation) +"aaI" = ( +/obj/structure/bookcase, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aaJ" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aaK" = ( +/obj/machinery/washing_machine, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/barber, +/area/security/prison) +"aaL" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/barber, +/area/security/prison) +"aaM" = ( +/obj/machinery/computer/libraryconsole/bookmanagement{ + pixel_y = 0 + }, +/obj/structure/table, +/obj/machinery/newscaster{ + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aaN" = ( +/obj/structure/table, +/obj/item/weapon/pen, +/turf/open/floor/plasteel, +/area/security/prison) +"aaO" = ( +/obj/structure/table, +/obj/item/weapon/storage/pill_bottle/dice, +/turf/open/floor/plasteel, +/area/security/prison) +"aaP" = ( +/obj/structure/table, +/obj/structure/bedsheetbin, +/turf/open/floor/plasteel/barber, +/area/security/prison) +"aaQ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/barber, +/area/security/prison) +"aaR" = ( +/obj/structure/lattice, +/obj/structure/sign/securearea{ + pixel_y = -32 + }, +/turf/open/space, +/area/space) +"aaS" = ( +/obj/structure/grille, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"aaT" = ( +/obj/structure/lattice, +/obj/structure/grille, +/turf/open/space, +/area/space) +"aaU" = ( +/obj/machinery/computer/arcade, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aaV" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/turf/open/floor/plasteel, +/area/security/prison) +"aaW" = ( +/obj/structure/table, +/obj/item/toy/cards/deck, +/turf/open/floor/plasteel, +/area/security/prison) +"aaX" = ( +/obj/machinery/washing_machine, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/barber, +/area/security/prison) +"aaY" = ( +/obj/structure/window/reinforced, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/barber, +/area/security/prison) +"aaZ" = ( +/turf/closed/wall/r_wall, +/area/ai_monitored/security/armory) +"aba" = ( +/obj/structure/lattice, +/obj/structure/grille/broken, +/turf/open/space, +/area/space) +"abb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/security/transfer) +"abc" = ( +/turf/closed/wall, +/area/security/transfer) +"abd" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/closed/wall, +/area/security/transfer) +"abe" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/security/transfer) +"abf" = ( +/obj/machinery/vending/sustenance, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abg" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall/r_wall, +/area/security/transfer) +"abh" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abi" = ( +/obj/machinery/shower{ + dir = 8 + }, +/obj/item/weapon/soap/nanotrasen, +/turf/open/floor/plasteel/freezer, +/area/security/prison) +"abj" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/freezer, +/area/security/prison) +"abk" = ( +/obj/machinery/keycard_auth{ + pixel_x = 24; + pixel_y = 10 + }, +/obj/structure/table/wood, +/obj/item/device/radio/off, +/obj/item/device/taperecorder{ + pixel_y = 0 + }, +/turf/open/floor/carpet, +/area/security/hos) +"abl" = ( +/obj/machinery/vending/security, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"abm" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/firingpins, +/obj/item/weapon/storage/box/firingpins, +/obj/item/key/security, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"abn" = ( +/obj/structure/rack, +/obj/machinery/firealarm{ + pixel_y = 24 + }, +/obj/item/weapon/gun/energy/e_gun/dragnet, +/obj/item/weapon/gun/energy/e_gun/dragnet, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"abo" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/main) +"abp" = ( +/turf/closed/wall, +/area/security/main) +"abq" = ( +/turf/closed/wall, +/area/security/hos) +"abr" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/hos) +"abs" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/tracker, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/auxport) +"abt" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"abu" = ( +/obj/machinery/door/poddoor{ + id = "executionspaceblast"; + name = "blast door" + }, +/turf/open/floor/plating, +/area/security/transfer) +"abv" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"abw" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/flasher{ + id = "executionflash"; + pixel_x = 0; + pixel_y = 25 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"abx" = ( +/obj/machinery/vending/cola/random, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"aby" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/security/transfer) +"abz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abA" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abD" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abF" = ( +/turf/open/floor/plasteel/freezer, +/area/security/prison) +"abG" = ( +/obj/machinery/door/window/westleft{ + base_state = "right"; + dir = 8; + icon_state = "right"; + name = "Unisex Showers"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/freezer, +/area/security/prison) +"abH" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/chemimp{ + pixel_x = 6 + }, +/obj/item/weapon/storage/box/trackimp{ + pixel_x = -3 + }, +/obj/item/weapon/storage/lockbox/loyalty, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"abI" = ( +/obj/structure/rack, +/obj/item/clothing/suit/armor/riot{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/suit/armor/riot, +/obj/item/clothing/suit/armor/riot{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/item/clothing/head/helmet/riot{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/head/helmet/riot, +/obj/item/clothing/head/helmet/riot{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/item/weapon/shield/riot{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/shield/riot, +/obj/item/weapon/shield/riot{ + pixel_x = 3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"abJ" = ( +/obj/structure/rack, +/obj/item/clothing/suit/armor/bulletproof{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/suit/armor/bulletproof{ + pixel_y = 0 + }, +/obj/item/clothing/suit/armor/bulletproof{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/item/clothing/head/helmet/alt{ + layer = 3.00001; + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/head/helmet/alt{ + layer = 3.00001 + }, +/obj/item/clothing/head/helmet/alt{ + layer = 3.00001; + pixel_x = 3; + pixel_y = -3 + }, +/obj/machinery/camera/motion{ + c_tag = "Armory Motion Sensor"; + dir = 2; + name = "motion-sensitive security camera" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"abK" = ( +/obj/structure/chair/stool, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/button/door{ + id = "permabolt3"; + name = "Cell Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 0; + pixel_y = 25; + req_access_txt = "0"; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abL" = ( +/obj/structure/chair/stool, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/button/door{ + id = "permabolt2"; + name = "Cell Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 0; + pixel_y = 25; + req_access_txt = "0"; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abM" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"abN" = ( +/obj/structure/closet/secure_closet/lethalshots, +/turf/open/floor/plasteel/black, +/area/ai_monitored/security/armory) +"abO" = ( +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"abP" = ( +/obj/structure/closet/secure_closet/security/sec, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"abQ" = ( +/obj/structure/rack, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/item/weapon/gun/energy/ionrifle, +/obj/item/weapon/gun/energy/temperature/security, +/obj/item/clothing/suit/armor/laserproof, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"abR" = ( +/obj/structure/closet/secure_closet/security/sec, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"abS" = ( +/obj/machinery/computer/secure_data, +/turf/open/floor/carpet, +/area/security/hos) +"abT" = ( +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Head of Security's Desk"; + departmentType = 5; + name = "Head of Security RC"; + pixel_x = 0; + pixel_y = 30 + }, +/obj/item/device/radio/intercom{ + dir = 4; + name = "Station Intercom (General)"; + pixel_x = -31 + }, +/obj/structure/table/wood, +/obj/item/weapon/storage/box/seccarts{ + pixel_x = 3; + pixel_y = 2 + }, +/obj/item/weapon/storage/box/deputy, +/turf/open/floor/carpet, +/area/security/hos) +"abU" = ( +/obj/machinery/computer/card/minor/hos, +/turf/open/floor/carpet, +/area/security/hos) +"abV" = ( +/obj/machinery/computer/security, +/turf/open/floor/carpet, +/area/security/hos) +"abW" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 30; + pixel_y = 0 + }, +/obj/structure/table/wood, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, +/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, +/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, +/turf/open/floor/carpet, +/area/security/hos) +"abX" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/tracker, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/auxstarboard) +"abY" = ( +/obj/structure/grille, +/turf/open/space, +/area/space) +"abZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"aca" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"acb" = ( +/obj/machinery/sparker{ + dir = 2; + id = "executionburn"; + pixel_x = 25 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"acc" = ( +/obj/structure/bed, +/obj/effect/landmark{ + name = "revenantspawn" + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"acd" = ( +/turf/closed/wall, +/area/security/prison) +"ace" = ( +/obj/machinery/door/poddoor/preopen{ + id = "permacell3"; + name = "cell blast door" + }, +/obj/machinery/door/airlock/glass{ + id_tag = "permabolt3"; + name = "Cell 3" + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"acf" = ( +/obj/machinery/door/poddoor/preopen{ + id = "permacell2"; + name = "cell blast door" + }, +/obj/machinery/door/airlock/glass{ + id_tag = "permabolt2"; + name = "Cell 2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"acg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/poddoor/preopen{ + id = "permacell1"; + name = "cell blast door" + }, +/obj/machinery/door/airlock/glass{ + id_tag = "permabolt1"; + name = "Cell 1" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"ach" = ( +/obj/machinery/door/airlock{ + name = "Unisex Restroom"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/freezer, +/area/security/prison) +"aci" = ( +/obj/vehicle/secway, +/turf/open/floor/plasteel/black, +/area/ai_monitored/security/armory) +"acj" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/suit_storage_unit/hos, +/turf/open/floor/carpet, +/area/security/hos) +"ack" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"acl" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"acm" = ( +/obj/machinery/power/apc{ + cell_type = 5000; + dir = 4; + name = "Armory APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-2"; + pixel_y = 1; + d2 = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"acn" = ( +/obj/item/weapon/storage/secure/safe/HoS{ + pixel_x = 35 + }, +/obj/structure/closet/secure_closet/hos, +/turf/open/floor/carpet, +/area/security/hos) +"aco" = ( +/obj/structure/closet/bombcloset, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"acp" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"acq" = ( +/obj/effect/landmark{ + name = "secequipment" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"acr" = ( +/obj/structure/chair/comfy/black, +/turf/open/floor/carpet, +/area/security/hos) +"acs" = ( +/obj/machinery/newscaster/security_unit{ + pixel_x = -30; + pixel_y = 0 + }, +/obj/machinery/camera{ + c_tag = "Head of Security's Office"; + dir = 4; + network = list("SS13") + }, +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/structure/table/wood, +/turf/open/floor/carpet, +/area/security/hos) +"act" = ( +/obj/machinery/holopad, +/turf/open/floor/carpet, +/area/security/hos) +"acu" = ( +/turf/open/floor/carpet, +/area/security/hos) +"acv" = ( +/obj/structure/closet/secure_closet{ + anchored = 1; + name = "Contraband Locker"; + req_access_txt = "3" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/security/armory) +"acw" = ( +/obj/structure/sign/securearea{ + pixel_y = -32 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/space) +"acx" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"acy" = ( +/obj/structure/lattice, +/obj/item/stack/cable_coil/random, +/turf/open/space, +/area/space) +"acz" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"acA" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"acB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"acC" = ( +/obj/structure/bed, +/obj/machinery/camera{ + c_tag = "Prison Cell 3"; + network = list("SS13","Prison") + }, +/obj/item/device/radio/intercom{ + desc = "Talk through this. It looks like it has been modified to not broadcast."; + dir = 2; + name = "Prison Intercom (General)"; + pixel_x = 0; + pixel_y = 24; + prison_radio = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"acD" = ( +/obj/structure/chair/stool, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/button/door{ + id = "permabolt1"; + name = "Cell Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 0; + pixel_y = 25; + req_access_txt = "0"; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"acE" = ( +/obj/structure/bed, +/obj/machinery/camera{ + c_tag = "Prison Cell 2"; + network = list("SS13","Prison") + }, +/obj/item/device/radio/intercom{ + desc = "Talk through this. It looks like it has been modified to not broadcast."; + dir = 2; + name = "Prison Intercom (General)"; + pixel_x = 0; + pixel_y = 24; + prison_radio = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"acF" = ( +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"acG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"acH" = ( +/obj/structure/bed, +/obj/machinery/camera{ + c_tag = "Prison Cell 1"; + network = list("SS13","Prison") + }, +/obj/item/device/radio/intercom{ + desc = "Talk through this. It looks like it has been modified to not broadcast."; + dir = 2; + name = "Prison Intercom (General)"; + pixel_x = 0; + pixel_y = 24; + prison_radio = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"acI" = ( +/obj/machinery/door/poddoor/preopen{ + id = "executionfireblast"; + layer = 2.9; + name = "blast door" + }, +/obj/machinery/atmospherics/pipe/simple/general/hidden, +/obj/machinery/door/firedoor, +/obj/machinery/door/window/westright{ + dir = 1; + name = "Transfer Room"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/security/transfer) +"acJ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"acK" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/freezer, +/area/security/prison) +"acL" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"acM" = ( +/obj/structure/rack, +/obj/item/weapon/gun/energy/e_gun{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/gun/energy/e_gun, +/obj/item/weapon/gun/energy/e_gun{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/ai_monitored/security/armory) +"acN" = ( +/obj/structure/chair/stool/bar, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"acO" = ( +/obj/structure/closet/l3closet/security, +/obj/machinery/camera{ + c_tag = "Brig Equipment Room"; + dir = 4 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"acP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"acQ" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/red, +/obj/item/weapon/stamp/hos, +/turf/open/floor/carpet, +/area/security/hos) +"acR" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green{ + on = 0; + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/turf/open/floor/carpet, +/area/security/hos) +"acS" = ( +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/structure/table/wood, +/turf/open/floor/carpet, +/area/security/hos) +"acT" = ( +/obj/machinery/door/window/eastleft{ + name = "armoury desk"; + req_access_txt = "1" + }, +/obj/machinery/door/window/westleft{ + name = "armoury desk"; + req_access_txt = "3" + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"acU" = ( +/obj/machinery/door/airlock/external{ + name = "Security External Airlock"; + req_access_txt = "63" + }, +/turf/open/floor/plating, +/area/security/main) +"acV" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/solar{ + id = "auxsolareast"; + name = "Port Auxiliary Solar Array" + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/auxport) +"acW" = ( +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"acX" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/poddoor/preopen{ + id = "executionfireblast"; + layer = 2.9; + name = "blast door" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/security/transfer) +"acY" = ( +/obj/structure/table, +/obj/item/weapon/paper, +/obj/item/weapon/pen, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"acZ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "executionfireblast"; + layer = 2.9; + name = "blast door" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/security/transfer) +"ada" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/obj/machinery/flasher{ + id = "PCell 3"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"adb" = ( +/obj/structure/table, +/obj/item/weapon/paper, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"adc" = ( +/obj/machinery/flasher{ + id = "PCell 1"; + pixel_x = -28 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"add" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/obj/machinery/flasher{ + id = "PCell 2"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"ade" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"adf" = ( +/obj/structure/toilet{ + dir = 1 + }, +/turf/open/floor/plasteel/freezer, +/area/security/prison) +"adg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"adh" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/turf/open/floor/carpet, +/area/security/hos) +"adi" = ( +/obj/machinery/flasher/portable, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"adj" = ( +/obj/structure/rack, +/obj/item/weapon/gun/energy/e_gun/advtaser{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/gun/energy/e_gun/advtaser, +/obj/item/weapon/gun/energy/e_gun/advtaser{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/ai_monitored/security/armory) +"adk" = ( +/obj/structure/rack, +/obj/item/weapon/gun/ballistic/shotgun/riot{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/gun/ballistic/shotgun/riot, +/obj/item/weapon/gun/ballistic/shotgun/riot{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/ai_monitored/security/armory) +"adl" = ( +/obj/machinery/door/poddoor/shutters{ + id = "armory"; + name = "Armoury Shutter" + }, +/obj/machinery/button/door{ + id = "armory"; + name = "Armory Shutters"; + pixel_x = 0; + pixel_y = -26; + req_access_txt = "3" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/ai_monitored/security/armory) +"adm" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/hos) +"adn" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/carpet, +/area/security/hos) +"ado" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/carpet, +/area/security/hos) +"adp" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/carpet, +/area/security/hos) +"adq" = ( +/obj/structure/table/wood, +/obj/item/device/instrument/guitar{ + pixel_x = -7 + }, +/obj/item/device/instrument/eguitar{ + pixel_x = 5 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"adr" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/security/main) +"ads" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/solar{ + id = "auxsolareast"; + name = "Port Auxiliary Solar Array" + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/auxstarboard) +"adt" = ( +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"adu" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"adv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"adw" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"adx" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"ady" = ( +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"adz" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"adA" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"adB" = ( +/obj/structure/sign/securearea{ + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/space, +/area/space) +"adC" = ( +/obj/structure/table, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/item/weapon/scalpel{ + pixel_y = 12 + }, +/obj/item/weapon/circular_saw, +/obj/item/weapon/hemostat, +/obj/item/weapon/retractor, +/obj/item/weapon/surgical_drapes, +/obj/item/weapon/razor, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"adD" = ( +/obj/machinery/button/flasher{ + id = "executionflash"; + pixel_x = 24; + pixel_y = 5 + }, +/obj/machinery/button/door{ + id = "executionspaceblast"; + name = "Vent to Space"; + pixel_x = 25; + pixel_y = -5; + req_access_txt = "7" + }, +/obj/machinery/atmospherics/pipe/simple/general/hidden, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"adE" = ( +/obj/structure/table, +/obj/item/weapon/folder/red{ + pixel_x = 3 + }, +/obj/item/device/taperecorder{ + pixel_x = -3; + pixel_y = 0 + }, +/obj/item/device/assembly/flash/handheld, +/obj/item/weapon/reagent_containers/spray/pepper, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"adF" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/security/prison) +"adG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/security/prison) +"adH" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Long-Term Cell 3"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"adI" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Long-Term Cell 2"; + req_access_txt = "2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"adJ" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Long-Term Cell 1"; + req_access_txt = "2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"adK" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"adL" = ( +/obj/structure/closet{ + name = "Evidence Closet" + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/brig) +"adM" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/carpet, +/area/security/hos) +"adN" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Head of Security's Office APC"; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/carpet, +/area/security/hos) +"adO" = ( +/obj/structure/chair/stool, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/floorgrime, +/area/security/prison) +"adP" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/carpet, +/area/security/hos) +"adQ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"adR" = ( +/turf/closed/wall/r_wall, +/area/security/main) +"adS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"adT" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"adU" = ( +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"adV" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"adW" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"adX" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"adY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"adZ" = ( +/obj/structure/cable, +/obj/machinery/power/solar{ + id = "auxsolareast"; + name = "Port Auxiliary Solar Array" + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/auxport) +"aea" = ( +/obj/machinery/portable_atmospherics/canister/nitrous_oxide, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating, +/area/security/transfer) +"aeb" = ( +/obj/structure/table, +/obj/item/device/flashlight/lamp, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"aec" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/carbon_dioxide, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/security/transfer) +"aed" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/machinery/button/ignition{ + id = "executionburn"; + pixel_x = 24; + pixel_y = 5 + }, +/obj/machinery/button/door{ + id = "executionfireblast"; + name = "Transfer Area Lockdown"; + pixel_x = 25; + pixel_y = -5; + req_access_txt = "2" + }, +/obj/machinery/atmospherics/pipe/simple/general/hidden, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"aee" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"aef" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/prison) +"aeg" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/security/transfer) +"aeh" = ( +/obj/machinery/button/door{ + id = "permacell3"; + name = "Cell 3 Lockdown"; + pixel_x = -4; + pixel_y = 25; + req_access_txt = "2" + }, +/obj/machinery/button/flasher{ + id = "PCell 3"; + pixel_x = 6; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/security/prison) +"aei" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"aej" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/security/prison) +"aek" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/computer/security/telescreen{ + desc = "Used for watching Prison Wing holding areas."; + name = "Prison Monitor"; + network = list("Prison"); + pixel_x = 0; + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/prison) +"ael" = ( +/obj/machinery/button/door{ + id = "permacell2"; + name = "Cell 2 Lockdown"; + pixel_x = -4; + pixel_y = 25; + req_access_txt = "2" + }, +/obj/machinery/button/flasher{ + id = "PCell 2"; + pixel_x = 6; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/security/prison) +"aem" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/prison) +"aen" = ( +/obj/machinery/computer/security/telescreen{ + desc = "Used for watching Prison Wing holding areas."; + name = "Prison Monitor"; + network = list("Prison"); + pixel_x = 0; + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Prison Hallway"; + network = list("SS13","Prison") + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/prison) +"aeo" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/security/prison) +"aep" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/prison) +"aeq" = ( +/obj/machinery/button/door{ + id = "permacell1"; + name = "Cell 1 Lockdown"; + pixel_x = -4; + pixel_y = 25; + req_access_txt = "2" + }, +/obj/machinery/button/flasher{ + id = "PCell 1"; + pixel_x = 6; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/security/prison) +"aer" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/machinery/power/apc{ + dir = 4; + name = "Prison Wing APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/prison) +"aes" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/suit_storage_unit/security, +/turf/open/floor/plasteel/red/side, +/area/ai_monitored/security/armory) +"aet" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"aeu" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/suit_storage_unit/security, +/turf/open/floor/plasteel/red/side, +/area/ai_monitored/security/armory) +"aev" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 30; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"aew" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"aex" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/hos) +"aey" = ( +/obj/machinery/door/airlock/glass_command{ + name = "Head of Security"; + req_access_txt = "58" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/carpet, +/area/security/hos) +"aez" = ( +/obj/structure/closet{ + name = "Evidence Closet" + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/brig) +"aeA" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/security/main) +"aeB" = ( +/obj/structure/table, +/obj/item/stack/packageWrap, +/obj/item/weapon/pen, +/turf/open/floor/plasteel, +/area/security/main) +"aeC" = ( +/obj/machinery/camera{ + c_tag = "Security Escape Pod"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plating, +/area/security/main) +"aeD" = ( +/obj/structure/shuttle/engine/propulsion/burst{ + dir = 8 + }, +/turf/closed/wall/mineral/titanium, +/area/shuttle/pod_3) +"aeE" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/pod_3) +"aeF" = ( +/turf/closed/wall/mineral/titanium/overspace, +/area/shuttle/pod_3) +"aeG" = ( +/obj/structure/cable, +/obj/machinery/power/solar{ + id = "auxsolareast"; + name = "Port Auxiliary Solar Array" + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/auxstarboard) +"aeH" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/nitrous_oxide, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/security/transfer) +"aeI" = ( +/obj/structure/rack, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/item/device/flashlight{ + pixel_x = 1; + pixel_y = 5 + }, +/obj/item/weapon/tank/internals/anesthetic{ + pixel_x = -3; + pixel_y = 1 + }, +/obj/item/weapon/tank/internals/oxygen/red{ + pixel_x = 3 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/security/transfer) +"aeJ" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/plating, +/area/security/transfer) +"aeK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/hidden, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"aeL" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"aeM" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/prison) +"aeN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/security{ + aiControlDisabled = 0; + icon_state = "door_closed"; + id_tag = null; + locked = 0; + name = "Prisoner Transfer Centre"; + req_access = null; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"aeO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/security/prison) +"aeP" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/prison) +"aeQ" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/security/prison) +"aeR" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"aeS" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"aeT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/security/prison) +"aeU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel, +/area/security/prison) +"aeV" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"aeW" = ( +/obj/machinery/requests_console{ + department = "Security"; + departmentType = 5; + pixel_x = -30; + pixel_y = 0 + }, +/obj/machinery/camera{ + c_tag = "Brig Control Room"; + dir = 4 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/structure/rack, +/obj/item/clothing/mask/gas/sechailer{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/mask/gas/sechailer, +/obj/item/clothing/mask/gas/sechailer{ + pixel_x = 3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"aeX" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/ai_monitored/security/armory) +"aeY" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/door/window/southleft{ + name = "Armory"; + req_access_txt = "3" + }, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"aeZ" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/ai_monitored/security/armory) +"afa" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock" + }, +/obj/docking_port/mobile/emergency{ + name = "Box emergency shuttle"; + timid = 0 + }, +/obj/docking_port/stationary{ + dir = 4; + dwidth = 12; + height = 18; + id = "emergency_home"; + name = "BoxStation emergency evac bay"; + turf_type = /turf/open/space; + width = 32 + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"afb" = ( +/obj/machinery/recharger, +/obj/structure/table, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"afc" = ( +/obj/structure/table, +/obj/machinery/recharger, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"afd" = ( +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 29 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/closet/wardrobe/red, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"afe" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"aff" = ( +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/main) +"afg" = ( +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/main) +"afh" = ( +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/main) +"afi" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/main) +"afj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/main) +"afk" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/main) +"afl" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/main) +"afm" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/main) +"afn" = ( +/turf/open/floor/plating, +/area/security/main) +"afo" = ( +/obj/machinery/door/airlock/external{ + name = "Escape Pod Three"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/security/main) +"afp" = ( +/obj/machinery/door/airlock/titanium{ + name = "Escape Pod Airlock" + }, +/obj/docking_port/mobile/pod{ + dir = 4; + id = "pod3"; + name = "escape pod 3"; + port_angle = 180; + preferred_direction = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_3) +"afq" = ( +/obj/machinery/computer/shuttle/pod{ + pixel_y = -32; + possible_destinations = "pod_asteroid3"; + shuttleId = "pod3" + }, +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_3) +"afr" = ( +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/obj/item/weapon/storage/pod{ + pixel_x = 6; + pixel_y = -32 + }, +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_3) +"afs" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/pod_3) +"aft" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating, +/area/security/transfer) +"afu" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/transfer) +"afv" = ( +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"afw" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + layer = 2.4 + }, +/obj/machinery/door/window/southleft{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Armory"; + req_access_txt = "2" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, +/area/security/transfer) +"afx" = ( +/obj/machinery/light_switch{ + pixel_x = 25; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + dir = 9 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"afy" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"afz" = ( +/obj/structure/table, +/obj/item/weapon/restraints/handcuffs, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/security/prison) +"afA" = ( +/turf/closed/wall/r_wall, +/area/security/transfer) +"afB" = ( +/obj/item/device/radio/intercom{ + dir = 4; + name = "Station Intercom (General)"; + pixel_x = 27 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/prison) +"afC" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/prison) +"afD" = ( +/obj/structure/table, +/obj/item/device/electropack, +/turf/open/floor/plasteel/red/side, +/area/security/prison) +"afE" = ( +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"afF" = ( +/obj/structure/table, +/obj/item/device/assembly/signaler, +/obj/item/clothing/suit/straight_jacket, +/turf/open/floor/plasteel/red/side, +/area/security/prison) +"afG" = ( +/obj/structure/table, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/item/weapon/storage/box/hug, +/obj/item/weapon/razor{ + pixel_x = -6 + }, +/turf/open/floor/plasteel/red/side, +/area/security/prison) +"afH" = ( +/obj/structure/closet/secure_closet/brig{ + anchored = 1 + }, +/turf/open/floor/plasteel/red/side, +/area/security/prison) +"afI" = ( +/turf/open/floor/plasteel/red/side, +/area/security/prison) +"afJ" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 1; + pixel_y = -27 + }, +/turf/open/floor/plasteel/red/side, +/area/security/prison) +"afK" = ( +/obj/machinery/door/airlock/glass_security{ + id_tag = null; + name = "Evidence Storage"; + req_access_txt = "63" + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"afL" = ( +/obj/structure/closet{ + name = "Evidence Closet" + }, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/brig) +"afM" = ( +/turf/open/floor/plasteel, +/area/security/brig) +"afN" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"afO" = ( +/obj/machinery/door/airlock/command{ + name = "Command Tool Storage"; + req_access = null; + req_access_txt = "19" + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"afP" = ( +/obj/machinery/door/airlock/command{ + cyclelinkeddir = 2; + name = "Command Tool Storage"; + req_access = null; + req_access_txt = "19" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"afQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/securearea{ + pixel_x = -32 + }, +/turf/open/floor/plating, +/area/security/main) +"afR" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/main) +"afS" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Equipment Room"; + req_access_txt = "1" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/showroomfloor, +/area/security/main) +"afT" = ( +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/main) +"afU" = ( +/turf/open/floor/plasteel, +/area/security/main) +"afV" = ( +/obj/structure/table, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/timer, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"afW" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/security/main) +"afX" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/landmark/start{ + name = "Head of Security" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"afY" = ( +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/security/main) +"afZ" = ( +/obj/structure/table, +/obj/item/device/radio/off, +/obj/item/weapon/screwdriver{ + pixel_y = 10 + }, +/turf/open/floor/plasteel, +/area/security/main) +"aga" = ( +/obj/structure/sign/pods{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/security/main) +"agb" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/main) +"agc" = ( +/obj/structure/closet/emcloset, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plating, +/area/security/main) +"agd" = ( +/obj/machinery/atmospherics/pipe/manifold4w/general/visible, +/turf/open/floor/plasteel, +/area/atmos) +"age" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/atmos) +"agf" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 1 + }, +/obj/item/weapon/storage/box/bodybags, +/obj/item/weapon/pen, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"agg" = ( +/obj/structure/closet/secure_closet/injection, +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 2; + name = "Prisoner Transfer Centre"; + pixel_x = 0; + pixel_y = -27 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"agh" = ( +/obj/structure/table, +/obj/item/device/electropack, +/obj/item/weapon/screwdriver, +/obj/item/weapon/wrench, +/obj/item/clothing/head/helmet, +/obj/item/device/assembly/signaler, +/obj/machinery/light/small, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/black, +/area/security/transfer) +"agi" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_security{ + name = "Prison Wing"; + req_access_txt = "2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/prison) +"agj" = ( +/turf/closed/wall, +/area/security/brig) +"agk" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_security{ + name = "Prison Wing"; + req_access_txt = "2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/prison) +"agl" = ( +/obj/machinery/door/airlock/security{ + name = "Interrogation"; + req_access = null; + req_access_txt = "63" + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"agm" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/table, +/obj/item/stack/sheet/plasteel{ + amount = 10 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"agn" = ( +/turf/closed/wall/r_wall, +/area/security/warden) +"ago" = ( +/obj/machinery/computer/security, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agp" = ( +/obj/machinery/computer/prisoner, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agq" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/window/southleft{ + base_state = "right"; + icon_state = "right"; + name = "Armory"; + req_access_txt = "3" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"agr" = ( +/obj/machinery/computer/secure_data, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ags" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"agt" = ( +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agu" = ( +/obj/structure/table, +/obj/machinery/recharger, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agv" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/atmos) +"agw" = ( +/obj/structure/table, +/obj/machinery/syndicatebomb/training, +/obj/item/weapon/gun/energy/laser/practice, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/main) +"agx" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/main) +"agy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/main) +"agz" = ( +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/security/main) +"agA" = ( +/obj/machinery/requests_console{ + department = "Security"; + departmentType = 5; + pixel_y = 30 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/main) +"agB" = ( +/obj/structure/table, +/obj/item/device/assembly/flash/handheld, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"agC" = ( +/obj/machinery/holopad, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"agD" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/preopen{ + id = "Prison Gate"; + name = "prison blast door" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/security/brig) +"agE" = ( +/obj/structure/table, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen, +/turf/open/floor/plasteel, +/area/security/main) +"agF" = ( +/obj/machinery/door/firedoor, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/sign/securearea{ + pixel_x = -32; + pixel_y = 0 + }, +/obj/machinery/door/poddoor/preopen{ + id = "Prison Gate"; + name = "prison blast door" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/security/brig) +"agG" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/main) +"agH" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"agI" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"agJ" = ( +/obj/item/weapon/cigbutt, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"agK" = ( +/turf/open/floor/plasteel/black, +/area/security/prison) +"agL" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"agM" = ( +/obj/item/clothing/gloves/color/latex, +/obj/item/clothing/mask/surgical, +/obj/item/weapon/reagent_containers/spray/cleaner, +/obj/structure/table/glass, +/turf/open/floor/plasteel/whitered/side{ + dir = 9 + }, +/area/security/brig) +"agN" = ( +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/regular, +/obj/structure/table/glass, +/turf/open/floor/plasteel/whitered/side{ + dir = 1 + }, +/area/security/brig) +"agO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/brig) +"agP" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/brig) +"agQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agR" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/warden) +"agS" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agT" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agU" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agV" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agW" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/warden) +"agX" = ( +/obj/structure/table, +/obj/machinery/recharger, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"agY" = ( +/obj/structure/table, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/main) +"agZ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"aha" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"ahb" = ( +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahc" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahd" = ( +/obj/structure/table, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"ahe" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 4; + icon_state = "pipe-j2s"; + sortType = 8 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahf" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"ahg" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahh" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahi" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 4; + icon_state = "pipe-j2s"; + sortType = 7 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/main) +"ahj" = ( +/obj/machinery/door/window/eastright{ + base_state = "left"; + dir = 8; + icon_state = "left"; + name = "Security Delivery"; + req_access_txt = "1" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/security/main) +"ahk" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"ahl" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=8"; + dir = 8; + freq = 1400; + location = "Security" + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/security/main) +"ahm" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/iv_drip{ + density = 0 + }, +/obj/item/weapon/reagent_containers/blood/empty, +/turf/open/floor/plasteel/whitered/side{ + dir = 5 + }, +/area/security/brig) +"ahn" = ( +/turf/closed/wall, +/area/maintenance/fsmaint) +"aho" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"ahp" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/security/prison) +"ahq" = ( +/obj/structure/table, +/obj/item/device/flashlight/lamp, +/turf/open/floor/plasteel/black, +/area/security/prison) +"ahr" = ( +/obj/structure/closet{ + name = "Evidence Closet" + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/brig) +"ahs" = ( +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 0; + pixel_y = 24 + }, +/obj/structure/table/glass, +/obj/machinery/computer/med_data/laptop, +/turf/open/floor/plasteel/whitered/side{ + dir = 1 + }, +/area/security/brig) +"aht" = ( +/turf/open/floor/plasteel/whitered/corner{ + dir = 8 + }, +/area/security/brig) +"ahu" = ( +/obj/item/weapon/storage/box/bodybags, +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/syringe{ + name = "steel point" + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/structure/table/glass, +/turf/open/floor/plasteel/whitered/side{ + dir = 10 + }, +/area/security/brig) +"ahv" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Brig Control APC"; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahw" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahx" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahy" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahz" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahA" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/main) +"ahB" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahC" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"ahD" = ( +/obj/machinery/door/window/westleft{ + base_state = "left"; + dir = 4; + icon_state = "left"; + name = "Brig Infirmary"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/whitered/side{ + dir = 4 + }, +/area/security/brig) +"ahE" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Brig Control"; + req_access_txt = "3" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahF" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahG" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahH" = ( +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-y"; + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahI" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahJ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahK" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/chair, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/effect/landmark/start{ + name = "Security Officer" + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahL" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahM" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/main) +"ahN" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Security Office APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/main) +"ahO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/security/main) +"ahP" = ( +/turf/open/floor/plasteel/white, +/area/security/brig) +"ahQ" = ( +/obj/structure/closet/secure_closet/warden, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahR" = ( +/obj/structure/chair/office/dark, +/obj/effect/landmark/start{ + name = "Warden" + }, +/obj/machinery/button/door{ + id = "Prison Gate"; + name = "Prison Wing Lockdown"; + pixel_x = -27; + pixel_y = 8; + req_access_txt = "2" + }, +/obj/machinery/button/door{ + id = "Secure Gate"; + name = "Cell Shutters"; + pixel_x = -27; + pixel_y = -2; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahS" = ( +/obj/structure/table, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahT" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"ahU" = ( +/obj/structure/closet{ + name = "Evidence Closet" + }, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/security/brig) +"ahV" = ( +/obj/structure/table, +/obj/item/weapon/folder/red, +/obj/item/device/taperecorder{ + pixel_y = 0 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"ahW" = ( +/obj/structure/bodycontainer/morgue, +/obj/machinery/camera{ + c_tag = "Brig Infirmary"; + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/security/brig) +"ahX" = ( +/obj/structure/table, +/obj/item/device/radio/intercom{ + dir = 4; + name = "Station Intercom (General)"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"ahY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/brig) +"ahZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/security/main) +"aia" = ( +/obj/structure/noticeboard{ + dir = 1; + pixel_y = -27 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"aib" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aic" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aid" = ( +/turf/open/floor/plasteel/whitered/side{ + dir = 10 + }, +/area/security/brig) +"aie" = ( +/obj/structure/table, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen, +/obj/item/weapon/hand_labeler, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/item/weapon/book/manual/wiki/security_space_law, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"aif" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aig" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"aih" = ( +/obj/structure/closet{ + name = "Evidence Closet" + }, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/brig) +"aii" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/warden) +"aij" = ( +/obj/machinery/light_switch{ + pixel_y = -23 + }, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"aik" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"ail" = ( +/obj/machinery/camera{ + c_tag = "Brig Interrogation"; + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"aim" = ( +/obj/machinery/light_switch{ + pixel_y = -23 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"ain" = ( +/turf/open/floor/plasteel/whitered/side{ + dir = 8 + }, +/area/security/brig) +"aio" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/rglass{ + amount = 50 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aip" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"aiq" = ( +/obj/machinery/camera{ + c_tag = "Security Office"; + dir = 1; + network = list("SS13") + }, +/obj/machinery/computer/secure_data, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"air" = ( +/obj/structure/chair, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"ais" = ( +/obj/structure/filingcabinet, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 + }, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"ait" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/obj/machinery/computer/security, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"aiu" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"aiv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"aiw" = ( +/obj/machinery/door/window/westleft{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Brig Infirmary"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/whitered/side{ + dir = 4 + }, +/area/security/brig) +"aix" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/main) +"aiy" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/security/brig) +"aiz" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/security/brig) +"aiA" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aiB" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"aiC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/security/prison) +"aiD" = ( +/obj/structure/bodycontainer/morgue, +/turf/open/floor/plasteel/black, +/area/security/brig) +"aiE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/black, +/area/security/prison) +"aiF" = ( +/obj/structure/bed, +/obj/item/clothing/suit/straight_jacket, +/turf/open/floor/plasteel/whitered/side, +/area/security/brig) +"aiG" = ( +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/brig) +"aiH" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"aiI" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_x = -32 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/warden) +"aiJ" = ( +/obj/structure/table/reinforced, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/door/window/brigdoor{ + dir = 1; + name = "Armory Desk"; + req_access_txt = "3" + }, +/obj/machinery/door/window/southleft{ + name = "Reception Desk"; + req_access_txt = "63" + }, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen{ + pixel_x = 4; + pixel_y = 4 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"aiK" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/warden) +"aiL" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/warden) +"aiM" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Brig Control"; + req_access_txt = "3" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"aiN" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/warden) +"aiO" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/bed, +/obj/item/clothing/suit/straight_jacket, +/turf/open/floor/plasteel/whitered/side{ + dir = 6 + }, +/area/security/brig) +"aiP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/security/main) +"aiQ" = ( +/obj/machinery/camera{ + c_tag = "Brig East" + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"aiR" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"aiS" = ( +/obj/item/stack/rods, +/turf/open/space, +/area/space) +"aiT" = ( +/turf/closed/wall, +/area/security/processing) +"aiU" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/processing) +"aiV" = ( +/turf/closed/wall/r_wall, +/area/security/processing) +"aiW" = ( +/obj/machinery/door/airlock/security{ + name = "Interrogation"; + req_access = null; + req_access_txt = "63" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/security/prison) +"aiX" = ( +/turf/closed/wall/r_wall, +/area/security/brig) +"aiY" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + on = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/courtroom) +"aiZ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/security/brig) +"aja" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"ajb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/brig) +"ajc" = ( +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"ajd" = ( +/obj/structure/sign/goldenplaque{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"aje" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"ajf" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"ajg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/brig) +"ajh" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/structure/closet/secure_closet/courtroom, +/obj/effect/decal/cleanable/cobweb, +/obj/structure/sign/securearea{ + pixel_x = -32 + }, +/obj/item/weapon/gavelhammer, +/turf/open/floor/plasteel, +/area/crew_quarters/courtroom) +"aji" = ( +/obj/structure/chair{ + name = "Judge" + }, +/turf/open/floor/plasteel/blue/side{ + dir = 9 + }, +/area/crew_quarters/courtroom) +"ajj" = ( +/obj/item/device/radio/intercom{ + broadcasting = 0; + listening = 1; + name = "Station Intercom (General)"; + pixel_y = 20 + }, +/obj/machinery/camera{ + c_tag = "Courtroom North" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/courtroom) +"ajk" = ( +/obj/structure/chair{ + name = "Judge" + }, +/turf/open/floor/plasteel/blue/side{ + dir = 5 + }, +/area/crew_quarters/courtroom) +"ajl" = ( +/obj/structure/chair{ + name = "Judge" + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 1 + }, +/area/crew_quarters/courtroom) +"ajm" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"ajn" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/courtroom) +"ajo" = ( +/turf/closed/wall, +/area/crew_quarters/courtroom) +"ajp" = ( +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"ajq" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxport) +"ajr" = ( +/obj/machinery/computer/gulag_teleporter_computer, +/turf/open/floor/plasteel, +/area/security/processing) +"ajs" = ( +/obj/machinery/gulag_teleporter, +/turf/open/floor/plasteel, +/area/security/processing) +"ajt" = ( +/obj/structure/sign/securearea{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/table, +/obj/item/weapon/storage/box/prisoner, +/obj/machinery/camera{ + c_tag = "Labor Shuttle Dock North" + }, +/turf/open/floor/plasteel, +/area/security/processing) +"aju" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/obj/machinery/computer/security{ + name = "Labor Camp Monitoring"; + network = list("Labor") + }, +/turf/open/floor/plasteel, +/area/security/processing) +"ajv" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/brig) +"ajw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/security/brig) +"ajx" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"ajy" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Labor Shuttle Dock APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"ajz" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"ajA" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"ajB" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/brig) +"ajC" = ( +/obj/item/weapon/storage/toolbox/drone, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"ajD" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"ajE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 5 + }, +/area/crew_quarters/courtroom) +"ajF" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/security/brig) +"ajG" = ( +/obj/machinery/light, +/obj/machinery/door_timer{ + id = "Cell 1"; + name = "Cell 1"; + pixel_y = -32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"ajH" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/crew_quarters/courtroom) +"ajI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"ajJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"ajK" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"ajL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/brig) +"ajM" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/courtroom) +"ajN" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/security{ + name = "Brig"; + req_access = null; + req_access_txt = "63; 42" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"ajO" = ( +/obj/structure/table/wood, +/obj/item/device/radio/intercom{ + broadcasting = 0; + dir = 8; + listening = 1; + name = "Station Intercom (Court)"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/courtroom) +"ajP" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 9 + }, +/area/crew_quarters/courtroom) +"ajQ" = ( +/obj/structure/table/wood, +/obj/item/weapon/book/manual/wiki/security_space_law, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/courtroom) +"ajR" = ( +/obj/structure/table/wood, +/obj/item/weapon/gavelblock, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/courtroom) +"ajS" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/crew_quarters/courtroom) +"ajT" = ( +/obj/structure/chair{ + dir = 8; + name = "Defense" + }, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/crew_quarters/courtroom) +"ajU" = ( +/obj/machinery/door/window/southleft{ + name = "Court Cell"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"ajV" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"ajW" = ( +/obj/machinery/door/airlock/external{ + name = "Solar Maintenance"; + req_access = null; + req_access_txt = "10; 13" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"ajX" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/labor) +"ajY" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Unfiltered to Port"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"ajZ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/mining_construction) +"aka" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"akb" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"akc" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"akd" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/processing) +"ake" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/brig) +"akf" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/security{ + name = "Labor Shuttle"; + req_access = null; + req_access_txt = "2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"akg" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/camera{ + c_tag = "Brig West"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/security/brig) +"akh" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"aki" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/security/brig) +"akj" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"akk" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/security/brig) +"akl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"akm" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/security/brig) +"akn" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/blue, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/crew_quarters/courtroom) +"ako" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door_timer{ + id = "Cell 2"; + name = "Cell 2"; + pixel_y = -32 + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"akp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"akq" = ( +/obj/machinery/camera{ + c_tag = "Brig Central"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door_timer{ + id = "Cell 3"; + name = "Cell 3"; + pixel_y = -32 + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"akr" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/brig) +"aks" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/security/brig) +"akt" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door_timer{ + id = "Cell 4"; + name = "Cell 4"; + pixel_y = -32 + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"aku" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/brig) +"akv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/brig) +"akw" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/courtroom) +"akx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/security/brig) +"aky" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/courtroom) +"akz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"akA" = ( +/obj/structure/chair{ + dir = 8; + name = "Defense" + }, +/turf/open/floor/plasteel/green/side{ + dir = 6 + }, +/area/crew_quarters/courtroom) +"akB" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"akC" = ( +/obj/machinery/computer/shuttle/labor, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = -31; + pixel_y = 0 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"akD" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/labor) +"akE" = ( +/obj/structure/table, +/obj/item/weapon/folder/red, +/obj/item/weapon/restraints/handcuffs, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"akF" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"akG" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/processing) +"akH" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"akI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"akJ" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"akK" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/processing) +"akL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/meter, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"akM" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"akN" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"akO" = ( +/obj/machinery/door/window/brigdoor{ + id = "Cell 1"; + name = "Cell 1"; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"akP" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"akQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/closed/wall, +/area/security/brig) +"akR" = ( +/obj/machinery/door/window/brigdoor{ + id = "Cell 2"; + name = "Cell 2"; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"akS" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"akT" = ( +/obj/machinery/door/window/brigdoor{ + id = "Cell 3"; + name = "Cell 3"; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"akU" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Brig Desk"; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/black, +/area/security/brig) +"akV" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"akW" = ( +/obj/machinery/door/airlock/glass_security{ + cyclelinkeddir = 2; + id_tag = "innerbrig"; + name = "Brig"; + req_access_txt = "63" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/brig) +"akX" = ( +/obj/machinery/door/airlock/glass_security{ + cyclelinkeddir = 2; + id_tag = "innerbrig"; + name = "Brig"; + req_access_txt = "63" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/brig) +"akY" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"akZ" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"ala" = ( +/obj/machinery/door/window/brigdoor{ + id = "Cell 4"; + name = "Cell 4"; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side, +/area/security/brig) +"alb" = ( +/obj/structure/chair{ + dir = 4; + name = "Prosecution" + }, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/crew_quarters/courtroom) +"alc" = ( +/obj/structure/table/wood, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/courtroom) +"ald" = ( +/obj/machinery/holopad, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/crew_quarters/courtroom) +"ale" = ( +/obj/structure/table/wood, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 6 + }, +/area/crew_quarters/courtroom) +"alf" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"alg" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"alh" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/external{ + name = "Solar Maintenance"; + req_access = null; + req_access_txt = "10; 13" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"ali" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"alj" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"alk" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"all" = ( +/obj/machinery/mineral/labor_claim_console{ + machinedir = 2; + pixel_x = 30; + pixel_y = 30 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"alm" = ( +/obj/machinery/button/flasher{ + id = "gulagshuttleflasher"; + name = "Flash Control"; + pixel_x = 0; + pixel_y = -26; + req_access_txt = "1" + }, +/obj/machinery/light, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"aln" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Labor Camp Shuttle Airlock"; + req_access_txt = "2"; + shuttledocked = 1 + }, +/turf/open/floor/plating, +/area/security/processing) +"alo" = ( +/obj/machinery/door/airlock/titanium{ + name = "Labor Shuttle Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"alp" = ( +/turf/open/floor/plating, +/area/security/processing) +"alq" = ( +/turf/open/floor/plasteel, +/area/security/processing) +"alr" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/processing) +"als" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/processing) +"alt" = ( +/obj/structure/reagent_dispensers/peppertank, +/turf/closed/wall/r_wall, +/area/ai_monitored/security/armory) +"alu" = ( +/obj/machinery/nuclearbomb/selfdestruct, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/nuke_storage) +"alv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/item/device/radio/intercom{ + desc = "Talk through this. It looks like it has been modified to not broadcast."; + dir = 2; + name = "Prison Intercom (General)"; + pixel_x = -25; + pixel_y = -2; + prison_radio = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"alw" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"alx" = ( +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"aly" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/item/device/radio/intercom{ + desc = "Talk through this. It looks like it has been modified to not broadcast."; + dir = 2; + name = "Prison Intercom (General)"; + pixel_x = -25; + pixel_y = -2; + prison_radio = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"alz" = ( +/obj/machinery/button/door{ + id = "briggate"; + name = "Desk Shutters"; + pixel_x = -26; + pixel_y = 6; + req_access_txt = "0" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/button/flasher{ + id = "brigentry"; + pixel_x = -28; + pixel_y = -8 + }, +/turf/open/floor/plasteel/black, +/area/security/brig) +"alA" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "briggate"; + name = "security shutters" + }, +/obj/machinery/door/window/eastleft{ + name = "Brig Desk"; + req_access_txt = "1" + }, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/black, +/area/security/brig) +"alB" = ( +/obj/machinery/computer/secure_data, +/turf/open/floor/plasteel/black, +/area/security/brig) +"alC" = ( +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/brig) +"alD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/crew_quarters/courtroom) +"alE" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/obj/machinery/flasher{ + id = "Cell 4"; + pixel_x = 28 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"alF" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 2 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"alG" = ( +/obj/structure/chair{ + dir = 4; + name = "Prosecution" + }, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/crew_quarters/courtroom) +"alH" = ( +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/courtroom) +"alI" = ( +/obj/structure/table/wood, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 10 + }, +/area/crew_quarters/courtroom) +"alJ" = ( +/obj/item/device/radio/beacon, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/courtroom) +"alK" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"alL" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/power/apc{ + dir = 8; + name = "Courtroom APC"; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/crew_quarters/courtroom) +"alM" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"alN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/auxstarboard) +"alO" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"alP" = ( +/turf/closed/wall, +/area/maintenance/fsmaint2) +"alQ" = ( +/obj/machinery/power/solar_control{ + id = "auxsolareast"; + name = "Fore Port Solar Control"; + track = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"alR" = ( +/turf/closed/wall/r_wall, +/area/maintenance/auxsolarport) +"alS" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"alT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"alU" = ( +/turf/closed/wall, +/area/maintenance/fpmaint2) +"alV" = ( +/obj/effect/decal/cleanable/vomit, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"alW" = ( +/obj/item/weapon/cigbutt/cigarbutt, +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"alX" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/floor/plasteel, +/area/atmos) +"alY" = ( +/obj/machinery/door/airlock/titanium{ + name = "Labor Shuttle Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/labor) +"alZ" = ( +/obj/machinery/mineral/stacking_machine/laborstacker{ + input_dir = 2; + output_dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/labor) +"ama" = ( +/mob/living/simple_animal/sloth/paperwork, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"amb" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"amc" = ( +/obj/machinery/computer/shuttle/labor, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"amd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/processing) +"ame" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"amf" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/flasher{ + id = "Cell 1"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"amg" = ( +/obj/structure/closet/secure_closet/brig{ + id = "Cell 1"; + name = "Cell 1 Locker" + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"amh" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/machinery/flasher{ + id = "Cell 2"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"ami" = ( +/obj/structure/closet/secure_closet/brig{ + id = "Cell 2"; + name = "Cell 2 Locker" + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"amj" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/machinery/flasher{ + id = "Cell 3"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"amk" = ( +/obj/structure/closet/secure_closet/brig{ + id = "Cell 3"; + name = "Cell 3 Locker" + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"aml" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/button/door{ + desc = "A remote control switch for the medbay foyer."; + id = "outerbrig"; + name = "Brig Exterior Doors Control"; + normaldoorcontrol = 1; + pixel_x = -26; + pixel_y = -5; + req_access_txt = "63" + }, +/obj/machinery/button/door{ + desc = "A remote control switch for the medbay foyer."; + id = "innerbrig"; + name = "Brig Interior Doors Control"; + normaldoorcontrol = 1; + pixel_x = -26; + pixel_y = 5; + req_access_txt = "63" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/security/brig) +"amm" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "briggate"; + name = "security shutters" + }, +/obj/machinery/door/window/eastright{ + name = "Brig Desk"; + req_access_txt = "2" + }, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/radio/off, +/turf/open/floor/plasteel/black, +/area/security/brig) +"amn" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/security/brig) +"amo" = ( +/obj/machinery/flasher{ + id = "brigentry"; + pixel_x = 28 + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/brig) +"amp" = ( +/obj/structure/closet/secure_closet/brig{ + id = "Cell 4"; + name = "Cell 4 Locker" + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"amq" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/item/device/radio/intercom{ + desc = "Talk through this. It looks like it has been modified to not broadcast."; + dir = 2; + name = "Prison Intercom (General)"; + pixel_x = 25; + pixel_y = -2; + prison_radio = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"amr" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/courtroom) +"ams" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/courtroom) +"amt" = ( +/obj/machinery/door/airlock/glass{ + name = "Courtroom"; + req_access_txt = "42" + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"amu" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"amv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Solar Maintenance"; + req_access = null; + req_access_txt = "10; 13" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"amw" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"amx" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"amy" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"amz" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/terminal, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"amA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"amB" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"amC" = ( +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"amD" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"amE" = ( +/obj/structure/bed, +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/obj/item/weapon/bedsheet, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"amF" = ( +/obj/machinery/computer/slot_machine{ + balance = 15; + money = 500 + }, +/obj/item/weapon/coin/iron, +/obj/item/weapon/coin/diamond, +/obj/item/weapon/coin/diamond, +/obj/item/weapon/coin/diamond, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"amG" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/item/toy/sword, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"amH" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/structure/noticeboard{ + dir = 8; + pixel_x = 27; + pixel_y = 0 + }, +/obj/item/trash/plate, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"amI" = ( +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"amJ" = ( +/obj/machinery/mineral/labor_claim_console{ + machinedir = 1; + pixel_x = 30; + pixel_y = 0 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"amK" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; + name = "KEEP CLEAR: DOCKING AREA"; + pixel_y = 0 + }, +/turf/closed/wall, +/area/security/processing) +"amL" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/processing) +"amM" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Prisoner Processing"; + req_access_txt = "2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/processing) +"amN" = ( +/obj/structure/table, +/obj/item/clothing/glasses/sunglasses{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/clothing/glasses/sunglasses{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/clothing/ears/earmuffs{ + pixel_x = -3; + pixel_y = -2 + }, +/obj/item/clothing/ears/earmuffs{ + pixel_x = -3; + pixel_y = -2 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"amO" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 9 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 8; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"amP" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "syndieshutters"; + name = "blast shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"amQ" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/grille, +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "Secure Gate"; + name = "brig shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"amR" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "Secure Gate"; + name = "brig shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"amS" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/closed/wall/r_wall, +/area/security/brig) +"amT" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "briggate"; + name = "security shutters" + }, +/obj/machinery/door/window/southleft{ + name = "Brig Desk"; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/black, +/area/security/brig) +"amU" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "briggate"; + name = "security blast door" + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/brig) +"amV" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "briggate"; + name = "security shutters" + }, +/obj/machinery/door/window/southleft{ + base_state = "right"; + icon_state = "right"; + name = "Brig Desk"; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/black, +/area/security/brig) +"amW" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_security{ + cyclelinkeddir = 1; + id_tag = "outerbrig"; + name = "Brig"; + req_access_txt = "63" + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/brig) +"amX" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_security{ + cyclelinkeddir = 1; + id_tag = "outerbrig"; + name = "Brig"; + req_access_txt = "63" + }, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/brig) +"amY" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"amZ" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"ana" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"anb" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"anc" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"and" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"ane" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"anf" = ( +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"ang" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/apc{ + dir = 8; + name = "Fore Port Solar APC"; + pixel_x = -25; + pixel_y = 3 + }, +/obj/machinery/camera{ + c_tag = "Fore Port Solar Control"; + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"anh" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/smes, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"ani" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"anj" = ( +/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{ + icon_state = "manifold"; + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ank" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"anl" = ( +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"anm" = ( +/obj/item/trash/sosjerky, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ann" = ( +/obj/item/weapon/electronics/airalarm, +/obj/item/weapon/circuitboard/machine/seed_extractor, +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ano" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"anp" = ( +/obj/item/weapon/cigbutt, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"anq" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"anr" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/flasher{ + id = "gulagshuttleflasher"; + pixel_x = 25 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"ans" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/processing) +"ant" = ( +/obj/machinery/gulag_item_reclaimer{ + pixel_y = 24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"anu" = ( +/obj/machinery/button/door{ + desc = "A remote control switch for the exit."; + id = "laborexit"; + name = "exit button"; + normaldoorcontrol = 1; + pixel_x = 26; + pixel_y = -6; + req_access_txt = "0" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/processing) +"anv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/processing) +"anw" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/hallway/primary/fore) +"anx" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 32 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/hallway/primary/fore) +"any" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 32 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/hallway/primary/fore) +"anz" = ( +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"anA" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/hallway/primary/fore) +"anB" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/sign/securearea{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/hallway/primary/fore) +"anC" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/courtroom) +"anD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"anE" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"anF" = ( +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"anG" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"anH" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 0 + }, +/turf/closed/wall/r_wall, +/area/maintenance/auxsolarport) +"anI" = ( +/obj/machinery/door/airlock/engineering{ + icon_state = "door_closed"; + locked = 0; + name = "Fore Port Solar Access"; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarport) +"anJ" = ( +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"anK" = ( +/obj/effect/decal/cleanable/egg_smudge, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"anL" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"anM" = ( +/obj/structure/closet/crate, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"anN" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Labor Camp Shuttle Airlock"; + shuttledocked = 1 + }, +/turf/open/floor/plating, +/area/security/processing) +"anO" = ( +/obj/machinery/door/airlock/titanium{ + id_tag = "prisonshuttle"; + name = "Labor Shuttle Airlock" + }, +/obj/docking_port/mobile{ + dir = 8; + dwidth = 2; + height = 5; + id = "laborcamp"; + name = "labor camp shuttle"; + port_angle = 90; + width = 9 + }, +/obj/docking_port/stationary{ + dir = 8; + dwidth = 2; + height = 5; + id = "laborcamp_home"; + name = "fore bay 1"; + width = 9 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"anP" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/security{ + id_tag = "laborexit"; + name = "Labor Shuttle"; + req_access = null; + req_access_txt = "63" + }, +/turf/open/floor/plasteel, +/area/security/processing) +"anQ" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 32 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"anR" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"anS" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"anT" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"anU" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Courtroom" + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"anV" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"anW" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"anX" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 + }, +/obj/machinery/camera{ + c_tag = "Courtroom South"; + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"anY" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"anZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aoa" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aob" = ( +/obj/machinery/light_switch{ + pixel_x = -20; + pixel_y = 0 + }, +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/wood, +/area/lawoffice) +"aoc" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/turf/open/floor/wood, +/area/lawoffice) +"aod" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/fsmaint) +"aoe" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/closed/wall, +/area/maintenance/fsmaint) +"aof" = ( +/turf/closed/wall/r_wall, +/area/maintenance/auxsolarstarboard) +"aog" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"aoh" = ( +/obj/machinery/power/solar_control{ + id = "auxsolareast"; + name = "Fore Starboard Solar Control"; + track = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"aoi" = ( +/obj/structure/rack, +/obj/item/clothing/mask/gas, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/obj/item/device/multitool, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"aoj" = ( +/obj/machinery/camera{ + c_tag = "Fore Port Solar Access" + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aok" = ( +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aol" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aom" = ( +/obj/machinery/atmospherics/components/binary/valve{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aon" = ( +/obj/structure/chair, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aoo" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/machine/monkey_recycler, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aop" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1; + layer = 2.9 + }, +/turf/open/floor/plating/airless, +/area/shuttle/labor) +"aoq" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = -32 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/processing) +"aor" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/processing) +"aos" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"aot" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/processing) +"aou" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/camera{ + c_tag = "Labor Shuttle Dock South"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/processing) +"aov" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/hallway/primary/fore) +"aow" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/hallway/primary/fore) +"aox" = ( +/obj/machinery/camera{ + c_tag = "Fore Primary Hallway West"; + dir = 1 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/hallway/primary/fore) +"aoy" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=EVA"; + location = "Security" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"aoz" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/hallway/primary/fore) +"aoA" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/hallway/primary/fore) +"aoB" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/hallway/primary/fore) +"aoC" = ( +/obj/machinery/vending/coffee, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/hallway/primary/fore) +"aoD" = ( +/obj/machinery/camera{ + c_tag = "Fore Primary Hallway East"; + dir = 1 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/hallway/primary/fore) +"aoE" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/hallway/primary/fore) +"aoF" = ( +/obj/machinery/vending/snack/random, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/hallway/primary/fore) +"aoG" = ( +/obj/structure/table, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"aoH" = ( +/obj/structure/table, +/obj/item/weapon/book/manual/wiki/security_space_law{ + pixel_x = -3; + pixel_y = 5 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/courtroom) +"aoI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/power/apc{ + dir = 2; + name = "Fitness Room APC"; + pixel_x = 0; + pixel_y = -24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"aoJ" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aoK" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aoL" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Air Out"; + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aoM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"aoN" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"aoO" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/terminal, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"aoP" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aoQ" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aoR" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aoS" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aoT" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aoU" = ( +/obj/structure/bed, +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aoV" = ( +/turf/open/space, +/area/space/nearstation) +"aoW" = ( +/obj/structure/table, +/obj/item/weapon/stamp, +/obj/item/weapon/poster/random_official, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aoX" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aoY" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/labor) +"aoZ" = ( +/obj/machinery/atmospherics/components/binary/valve/digital{ + name = "Waste Release" + }, +/turf/open/floor/plasteel, +/area/atmos) +"apa" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/floor/plasteel, +/area/atmos) +"apb" = ( +/obj/structure/plasticflaps, +/turf/open/floor/plating, +/area/security/processing) +"apc" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Security Maintenance"; + req_access_txt = "2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/security/processing) +"apd" = ( +/turf/closed/wall, +/area/security/detectives_office) +"ape" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/engineering{ + name = "Vacant Office B"; + req_access_txt = "32" + }, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"apf" = ( +/obj/structure/disposalpipe/segment, +/turf/closed/wall, +/area/security/detectives_office) +"apg" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aph" = ( +/turf/closed/wall, +/area/lawoffice) +"api" = ( +/obj/machinery/door/airlock{ + name = "Law Office"; + req_access_txt = "38" + }, +/turf/open/floor/plasteel, +/area/lawoffice) +"apj" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"apk" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/hallway/primary/fore) +"apl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/maintenance/fsmaint) +"apm" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/hallway/primary/fore) +"apn" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/closed/wall, +/area/maintenance/fsmaint) +"apo" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/closed/wall, +/area/maintenance/fsmaint) +"app" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"apq" = ( +/obj/machinery/space_heater, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"apr" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/apc{ + dir = 1; + name = "Dormitory Maintenance APC"; + pixel_y = 24 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aps" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/reagent_dispensers/watertank, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"apt" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"apu" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"apv" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"apw" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "Air In"; + on = 1 + }, +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"apx" = ( +/obj/machinery/door/airlock/atmos{ + name = "Atmospherics Maintenance"; + req_access_txt = "12;24" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"apy" = ( +/obj/item/weapon/wrench, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"apz" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"apA" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/apc{ + dir = 8; + name = "Fore Starboard Solar APC"; + pixel_x = -25; + pixel_y = 3 + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"apB" = ( +/obj/machinery/camera{ + c_tag = "Fore Starboard Solars"; + dir = 1 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/smes, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"apC" = ( +/turf/closed/wall/r_wall, +/area/maintenance/fsmaint2) +"apD" = ( +/obj/structure/closet/wardrobe/mixed, +/obj/item/clothing/shoes/jackboots, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"apE" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"apF" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/floor/plating, +/area/atmos) +"apG" = ( +/obj/machinery/portable_atmospherics/canister/water_vapor, +/turf/open/floor/plasteel, +/area/janitor) +"apH" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/pod_1) +"apI" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1; + frequency = 1441; + id = "waste_out" + }, +/turf/open/floor/plating/airless, +/area/atmos) +"apJ" = ( +/turf/closed/wall, +/area/mining_construction) +"apK" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/pod_2) +"apL" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/fpmaint2) +"apM" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/fpmaint2) +"apN" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"apO" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"apP" = ( +/obj/structure/grille, +/obj/structure/window/fulltile{ + obj_integrity = 35 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"apQ" = ( +/obj/structure/lattice, +/turf/open/space, +/area/space/nearstation) +"apR" = ( +/obj/item/weapon/paper{ + info = "01001001 00100000 01101000 01101111 01110000 01100101 00100000 01111001 01101111 01110101 00100000 01110011 01110100 01100001 01111001 00100000 01110011 01100001 01100110 01100101 00101110 00100000 01001100 01101111 01110110 01100101 00101100 00100000 01101101 01101111 01101101 00101110"; + name = "Note from Beepsky's Mom" + }, +/turf/open/floor/plating, +/area/security/processing) +"apS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/security/processing) +"apT" = ( +/obj/structure/chair/comfy/beige{ + desc = "It looks comfy and extra tactical.\nAlt-click to rotate it clockwise."; + dir = 1; + icon_state = "comfychair"; + name = "tactical armchair" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"apU" = ( +/turf/open/floor/plating, +/area/security/vacantoffice2) +"apV" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/construction) +"apW" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"apX" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/crew_quarters/fitness) +"apY" = ( +/obj/structure/closet/secure_closet/personal, +/turf/open/floor/carpet, +/area/crew_quarters/sleep) +"apZ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/wood, +/area/lawoffice) +"aqa" = ( +/obj/structure/table, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/carpet, +/area/crew_quarters/sleep) +"aqb" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/storage/briefcase, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/wood, +/area/lawoffice) +"aqc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/maintenance/fsmaint) +"aqd" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/hallway/primary/fore) +"aqe" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqf" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqg" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqh" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqi" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqk" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Dormitory APC"; + pixel_y = -24 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/crew_quarters/sleep) +"aql" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqm" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqn" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/button/door{ + id = "Dorm4"; + name = "Dorm Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 25; + pixel_y = 0; + req_access_txt = "0"; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/carpet, +/area/crew_quarters/sleep) +"aqo" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"aqp" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/item/clothing/suit/fire/firefighter, +/obj/item/weapon/tank/internals/oxygen, +/obj/item/clothing/mask/gas, +/obj/item/weapon/extinguisher, +/obj/item/clothing/head/hardhat/red, +/obj/item/clothing/glasses/meson, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqq" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"aqr" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"aqs" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"aqt" = ( +/obj/structure/grille, +/obj/effect/landmark{ + name = "Syndicate Breach Area" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"aqu" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"aqv" = ( +/obj/machinery/door/airlock/external{ + name = "External Access"; + req_access = null; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aqw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/engineering{ + icon_state = "door_closed"; + locked = 0; + name = "Fore Starboard Solar Access"; + req_access_txt = "10" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"aqx" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 0 + }, +/turf/closed/wall/r_wall, +/area/maintenance/auxsolarstarboard) +"aqy" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aqz" = ( +/obj/structure/table, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aqA" = ( +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aqB" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aqC" = ( +/obj/machinery/computer/slot_machine{ + balance = 15; + money = 500 + }, +/obj/item/weapon/coin/iron, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aqD" = ( +/obj/effect/decal/cleanable/cobweb, +/obj/item/weapon/coin/gold, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aqE" = ( +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aqF" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/pod_1) +"aqG" = ( +/obj/docking_port/stationary/random{ + dir = 4; + id = "pod_asteroid3"; + name = "asteroid" + }, +/turf/open/space, +/area/space) +"aqH" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/pod_2) +"aqI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"aqJ" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "External Access"; + req_access = null; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aqK" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/fpmaint2) +"aqL" = ( +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aqM" = ( +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 10 + }, +/obj/machinery/meter, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aqN" = ( +/obj/structure/closet/secure_closet/miner{ + locked = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"aqO" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aqP" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Arrivals North Maintenance APC"; + pixel_x = -1; + pixel_y = 26 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aqQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aqR" = ( +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aqS" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/weapon/stock_parts/cell/potato{ + name = "\improper Beepsky's emergency battery" + }, +/turf/open/floor/plating, +/area/security/processing) +"aqT" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Labor Shuttle Dock APC"; + pixel_x = -24 + }, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/security/processing) +"aqU" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Cargo Technician" + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"aqV" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"aqW" = ( +/turf/open/floor/carpet, +/area/security/detectives_office) +"aqX" = ( +/obj/machinery/airalarm{ + frequency = 1439; + locked = 0; + pixel_y = 23 + }, +/obj/structure/chair, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"aqY" = ( +/obj/structure/table/wood, +/obj/item/weapon/pen, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"aqZ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ara" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/requests_console{ + department = "Law office"; + pixel_x = -32; + pixel_y = 0 + }, +/obj/structure/closet/lawcloset, +/turf/open/floor/wood, +/area/lawoffice) +"arb" = ( +/obj/structure/table/wood, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/weapon/pen/red, +/turf/open/floor/wood, +/area/lawoffice) +"arc" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"ard" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "lawyer_blast"; + name = "privacy door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/lawoffice) +"are" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green{ + pixel_x = 1; + pixel_y = 5 + }, +/turf/open/floor/wood, +/area/lawoffice) +"arf" = ( +/turf/closed/wall, +/area/crew_quarters/sleep) +"arg" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/maintenance/fsmaint) +"arh" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"ari" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"arj" = ( +/turf/closed/wall, +/area/crew_quarters/fitness) +"ark" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/structure/closet/secure_closet/personal/cabinet, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"arl" = ( +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-j2"; + dir = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 9 + }, +/area/crew_quarters/fitness) +"arm" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"arn" = ( +/obj/structure/closet/athletic_mixed, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/fitness) +"aro" = ( +/turf/open/floor/engine{ + name = "Holodeck Projector Floor" + }, +/area/holodeck/rec_center) +"arp" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"arq" = ( +/obj/structure/table, +/obj/effect/decal/cleanable/cobweb, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 8; + name = "8maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"arr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"ars" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Bar Maintenance APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"art" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/camera{ + c_tag = "Fore Starboard Solar Access" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aru" = ( +/obj/structure/chair/stool, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"arv" = ( +/obj/structure/table, +/obj/item/weapon/pen, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"arw" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"arx" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"ary" = ( +/obj/structure/closet, +/obj/item/weapon/coin/iron, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"arz" = ( +/obj/item/weapon/coin/gold, +/obj/item/weapon/coin/iron, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"arA" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"arB" = ( +/turf/closed/wall/r_wall, +/area/hallway/secondary/entry) +"arC" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"arD" = ( +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"arE" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 8 + }, +/area/mining_construction) +"arF" = ( +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 5 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"arG" = ( +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"arH" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"arI" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"arJ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"arK" = ( +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 9 + }, +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/fpmaint2) +"arL" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"arM" = ( +/obj/structure/closet/crate{ + icon_state = "crateopen"; + opened = 1 + }, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"arN" = ( +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"arO" = ( +/obj/machinery/monkey_recycler, +/obj/item/weapon/reagent_containers/food/snacks/monkeycube, +/obj/item/weapon/reagent_containers/food/snacks/monkeycube, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"arP" = ( +/turf/closed/wall, +/area/maintenance/fpmaint) +"arQ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"arR" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + on = 1 + }, +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"arS" = ( +/obj/structure/table/wood, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"arT" = ( +/turf/open/floor/plasteel, +/area/security/vacantoffice2) +"arU" = ( +/obj/structure/rack, +/turf/open/floor/plasteel, +/area/security/vacantoffice2) +"arV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/filingcabinet/employment, +/turf/open/floor/wood, +/area/lawoffice) +"arW" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/lawoffice) +"arX" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/blue, +/obj/item/weapon/folder/blue, +/obj/item/weapon/folder/blue, +/obj/item/weapon/folder/blue, +/obj/item/weapon/stamp/law, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/lawoffice) +"arY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/lawoffice) +"arZ" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/effect/landmark/start{ + name = "Lawyer" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/wood, +/area/lawoffice) +"asa" = ( +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/hallway/primary/fore) +"asb" = ( +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/machinery/disposal/bin, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/fitness) +"asc" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"asd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/sleep) +"ase" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"asf" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 5 + }, +/area/crew_quarters/sleep) +"asg" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 9 + }, +/area/crew_quarters/sleep) +"ash" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"asi" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"asj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"ask" = ( +/obj/structure/dresser, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"asl" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"asm" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"asn" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"aso" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Law Office Maintenance"; + req_access_txt = "38" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/lawoffice) +"asp" = ( +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"asq" = ( +/obj/machinery/camera{ + c_tag = "Fitness Room" + }, +/obj/structure/closet/masks, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/fitness) +"asr" = ( +/obj/structure/closet/boxinggloves, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/item/clothing/shoes/jackboots, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/fitness) +"ass" = ( +/obj/structure/closet/lasertag/red, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 5 + }, +/area/crew_quarters/fitness) +"ast" = ( +/obj/structure/closet/lasertag/blue, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/fitness) +"asu" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/red, +/obj/machinery/button/door{ + id = "Dorm5"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 0; + pixel_y = -25; + req_access_txt = "0"; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"asv" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 3; + name = "3maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"asw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"asx" = ( +/obj/structure/door_assembly/door_assembly_mai, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"asy" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Firefighting equipment"; + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"asz" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/snacks/donut, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"asA" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"asB" = ( +/turf/closed/wall, +/area/maintenance/electrical) +"asC" = ( +/turf/open/floor/plasteel/airless, +/area/space/nearstation) +"asD" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"asE" = ( +/turf/closed/wall, +/area/hallway/secondary/entry) +"asF" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/mining_construction) +"asG" = ( +/obj/machinery/light, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"asH" = ( +/obj/structure/closet/toolcloset, +/turf/open/floor/plasteel/yellow/side{ + dir = 9 + }, +/area/mining_construction) +"asI" = ( +/obj/structure/closet/toolcloset, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/mining_construction) +"asJ" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/yellow/side{ + dir = 5 + }, +/area/mining_construction) +"asK" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"asL" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/red, +/obj/machinery/button/door{ + id = "Dorm6"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 0; + pixel_y = -25; + req_access_txt = "0"; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"asM" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/fitness) +"asN" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"asO" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"asP" = ( +/obj/structure/chair/stool, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"asQ" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"asR" = ( +/obj/effect/decal/cleanable/cobweb, +/obj/structure/closet/secure_closet/chemical, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"asS" = ( +/obj/structure/closet/secure_closet/medical1, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"asT" = ( +/obj/structure/closet/secure_closet/chemical, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"asU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/vacantoffice2) +"asV" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"asW" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/rack, +/obj/item/weapon/storage/briefcase, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"asX" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"asY" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"asZ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/crew_quarters/fitness) +"ata" = ( +/turf/open/floor/wood, +/area/lawoffice) +"atb" = ( +/obj/structure/table, +/obj/item/stack/sheet/plasteel{ + amount = 10 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 4 + }, +/area/mining_construction) +"atc" = ( +/obj/structure/chair/office/dark, +/obj/effect/landmark/start{ + name = "Lawyer" + }, +/turf/open/floor/wood, +/area/lawoffice) +"atd" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/hallway/primary/fore) +"ate" = ( +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/sleep) +"atf" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/carpet, +/area/crew_quarters/sleep) +"atg" = ( +/obj/machinery/door/airlock{ + id_tag = "Dorm4"; + name = "Dorm 4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"ath" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/sleep) +"ati" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/crew_quarters/sleep) +"atj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/sleep) +"atk" = ( +/obj/machinery/camera{ + c_tag = "Auxillary Mining Base"; + dir = 8; + network = list("SS13","AuxBase") + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"atl" = ( +/obj/docking_port/mobile/auxillary_base{ + dheight = 4; + dir = 4; + dwidth = 4; + height = 9; + width = 9 + }, +/obj/machinery/bluespace_beacon, +/obj/machinery/computer/auxillary_base{ + pixel_y = 0 + }, +/turf/closed/wall, +/area/shuttle/auxillary_base) +"atm" = ( +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"atn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"ato" = ( +/obj/machinery/light_switch{ + pixel_y = -23 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/carpet, +/area/security/hos) +"atp" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Construction Zone"; + req_access = null; + req_access_txt = "0"; + req_one_access_txt = "0" + }, +/turf/open/floor/plating, +/area/mining_construction) +"atq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"atr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ats" = ( +/obj/structure/table/wood, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/light, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"att" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"atu" = ( +/obj/machinery/camera{ + c_tag = "Vacant Office B"; + dir = 1 + }, +/obj/structure/table/wood, +/turf/open/floor/plasteel, +/area/security/vacantoffice2) +"atv" = ( +/obj/structure/table, +/obj/item/weapon/shard, +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/obj/item/weapon/shard{ + icon_state = "small" + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"atw" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"atx" = ( +/obj/machinery/button/door{ + id = "maint3"; + name = "Blast Door Control C"; + pixel_x = 0; + pixel_y = 24; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aty" = ( +/turf/open/floor/plating{ + icon_state = "panelscorched" + }, +/area/maintenance/fsmaint2) +"atz" = ( +/mob/living/simple_animal/mouse, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"atA" = ( +/obj/structure/table, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"atB" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"atC" = ( +/obj/item/stack/rods{ + amount = 50 + }, +/obj/structure/rack, +/obj/item/stack/cable_coil{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/stack/cable_coil{ + amount = 5 + }, +/obj/item/stack/sheet/mineral/plasma{ + amount = 10; + layer = 2.9 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/electrical) +"atD" = ( +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/electrical) +"atE" = ( +/obj/machinery/power/port_gen/pacman, +/turf/open/floor/plating, +/area/maintenance/electrical) +"atF" = ( +/turf/open/floor/mech_bay_recharge_floor, +/area/maintenance/electrical) +"atG" = ( +/obj/machinery/mech_bay_recharge_port, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"atH" = ( +/obj/machinery/computer/mech_bay_power_console, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/circuit, +/area/maintenance/electrical) +"atI" = ( +/turf/open/floor/plasteel/yellow/side{ + dir = 8 + }, +/area/mining_construction) +"atJ" = ( +/obj/machinery/space_heater, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"atK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"atL" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"atM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"atN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"atO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"atP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"atQ" = ( +/obj/machinery/door/airlock{ + id_tag = "Dorm5"; + name = "Cabin 1" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"atR" = ( +/obj/effect/landmark{ + name = "carpspawn" + }, +/obj/structure/lattice, +/turf/open/space, +/area/space/nearstation) +"atS" = ( +/turf/closed/wall, +/area/space/nearstation) +"atT" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"atU" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"atV" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/fitness) +"atW" = ( +/obj/structure/chair/stool, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"atX" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"atY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/security/vacantoffice2) +"atZ" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Holodeck Door" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"aua" = ( +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/crew_quarters/fitness) +"aub" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/yellow/side, +/area/mining_construction) +"auc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/side{ + dir = 10 + }, +/area/mining_construction) +"aud" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aue" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"auf" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/lawoffice) +"aug" = ( +/obj/structure/table/wood, +/obj/machinery/camera{ + c_tag = "Law Office"; + dir = 1; + network = list("SS13") + }, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/obj/machinery/computer/security/telescreen{ + desc = "Used for watching Prison Wing holding areas."; + dir = 1; + name = "Prison Monitor"; + network = list("Prison"); + pixel_x = 0; + pixel_y = -27 + }, +/turf/open/floor/wood, +/area/lawoffice) +"auh" = ( +/obj/structure/table/wood, +/obj/item/device/taperecorder{ + pixel_y = 0 + }, +/obj/item/weapon/cartridge/lawyer, +/turf/open/floor/wood, +/area/lawoffice) +"aui" = ( +/obj/machinery/photocopier, +/obj/machinery/button/door{ + id = "lawyer_blast"; + name = "Privacy Shutters"; + pixel_x = 25; + pixel_y = 8 + }, +/turf/open/floor/wood, +/area/lawoffice) +"auj" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/brig) +"auk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/crew_quarters/sleep) +"aul" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/sleep) +"aum" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aun" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/crew_quarters/sleep) +"auo" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aup" = ( +/obj/machinery/door/airlock{ + id_tag = "Dorm6"; + name = "Cabin 2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"auq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/security/vacantoffice2) +"aur" = ( +/obj/machinery/door/window/eastright{ + base_state = "left"; + dir = 8; + icon_state = "left"; + name = "Fitness Ring" + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/fitness) +"aus" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"aut" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/fitness) +"auu" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"auv" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/fitness) +"auw" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/button/door{ + id = "Dorm3"; + name = "Dorm Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 25; + pixel_y = 0; + req_access_txt = "0"; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/carpet, +/area/crew_quarters/sleep) +"aux" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 4 + }, +/area/crew_quarters/sleep) +"auy" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Holodeck Door" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"auz" = ( +/obj/machinery/camera{ + c_tag = "Holodeck" + }, +/obj/machinery/airalarm{ + pixel_y = 24 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"auA" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"auB" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"auC" = ( +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"auD" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"auE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"auF" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"auG" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"auH" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"auI" = ( +/turf/open/floor/plating, +/area/maintenance/electrical) +"auJ" = ( +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/electrical) +"auK" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/electrical) +"auL" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/electrical) +"auM" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/electrical) +"auN" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"auO" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"auP" = ( +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"auQ" = ( +/turf/open/floor/plasteel, +/area/mining_construction) +"auR" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/sleep) +"auS" = ( +/obj/machinery/requests_console{ + department = "Crew Quarters"; + pixel_y = 30 + }, +/obj/machinery/camera{ + c_tag = "Dormitory North" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/sleep) +"auT" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"auU" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/sleep) +"auV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"auW" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/sleep) +"auX" = ( +/obj/structure/mirror{ + icon_state = "mirror_broke"; + pixel_y = 28; + broken = 1 + }, +/obj/machinery/iv_drip, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"auY" = ( +/obj/structure/mirror{ + icon_state = "mirror_broke"; + pixel_y = 28; + broken = 1 + }, +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/obj/item/weapon/circuitboard/computer/operating, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"auZ" = ( +/obj/structure/frame/computer, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ava" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/structure/chair, +/obj/item/weapon/reagent_containers/blood/random, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"avb" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged3" + }, +/area/space/nearstation) +"avc" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"avd" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ave" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"avf" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Chemical Storage"; + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"avg" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/sleep) +"avh" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/power/apc{ + dir = 8; + name = "Vacant Office B APC"; + pixel_x = -24; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/security/vacantoffice2) +"avi" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Law Office APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/lawoffice) +"avj" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/hallway/primary/fore) +"avk" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/hallway/primary/fore) +"avl" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/sleep) +"avm" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/sleep) +"avn" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/crew_quarters/sleep) +"avo" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 0 + }, +/turf/closed/wall, +/area/maintenance/electrical) +"avp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/poddoor/shutters{ + id = "aux_base_shutters"; + name = "Auxillary Base Shutters" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/mining_construction) +"avq" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"avr" = ( +/obj/machinery/firealarm{ + pixel_y = 24 + }, +/obj/machinery/camera{ + c_tag = "Detective's Office"; + dir = 2 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"avs" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"avt" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"avu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 5 + }, +/area/crew_quarters/sleep) +"avv" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"avw" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/fitness) +"avx" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"avy" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/fitness) +"avz" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/crew_quarters/fitness) +"avA" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/fitness) +"avB" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/ai_monitored/security/armory) +"avC" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"avD" = ( +/obj/machinery/computer/holodeck, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"avE" = ( +/obj/machinery/door/poddoor/preopen{ + id = "maint3" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"avF" = ( +/obj/machinery/door/poddoor/preopen{ + id = "maint3" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"avG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"avH" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/electrical) +"avI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"avJ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"avK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/electrical) +"avL" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Electrical Maintenance APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"avM" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"avN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"avO" = ( +/obj/structure/table, +/obj/item/clothing/gloves/color/fyellow, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = -1 + }, +/obj/item/device/multitool, +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 29 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/electrical) +"avP" = ( +/obj/structure/sign/pods, +/turf/closed/wall, +/area/hallway/secondary/entry) +"avQ" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Auxillary Base Construction"; + dir = 8 + }, +/obj/machinery/computer/camera_advanced/base_construction, +/turf/open/floor/plasteel/yellow/side{ + dir = 4 + }, +/area/mining_construction) +"avR" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/firstaid/regular, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"avS" = ( +/obj/item/weapon/wrench, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"avT" = ( +/obj/docking_port/stationary{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate_ne"; + name = "northeast of station"; + turf_type = /turf/open/space; + width = 18 + }, +/turf/open/space, +/area/space) +"avU" = ( +/obj/item/weapon/paper/crumpled, +/turf/open/floor/plasteel/airless{ + icon_state = "damaged2" + }, +/area/space/nearstation) +"avV" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"avW" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"avX" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/structure/chair/stool, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"avY" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"avZ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/fpmaint) +"awa" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/closed/wall, +/area/maintenance/fpmaint) +"awb" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"awc" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"awd" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "EVA Maintenance APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"awe" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"awf" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"awg" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"awh" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"awi" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"awj" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"awk" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"awl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"awm" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"awn" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"awo" = ( +/obj/machinery/door/airlock{ + id_tag = "Dorm3"; + name = "Dorm 3" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"awp" = ( +/obj/structure/table/wood, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/item/weapon/storage/pill_bottle/dice, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"awq" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"awr" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"aws" = ( +/obj/structure/table/wood, +/obj/item/weapon/coin/silver, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"awt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"awu" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"awv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"aww" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/floorgrime, +/area/security/brig) +"awx" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awy" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"awz" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Fitness" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"awA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"awB" = ( +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/crew_quarters/fitness) +"awC" = ( +/obj/structure/table, +/obj/item/weapon/paper{ + desc = ""; + info = "Brusies sustained in the holodeck can be healed simply by sleeping."; + name = "Holodeck Disclaimer" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"awD" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awE" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awF" = ( +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awG" = ( +/obj/structure/girder, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awH" = ( +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awI" = ( +/obj/machinery/button/door{ + id = "maint2"; + name = "Blast Door Control B"; + pixel_x = -28; + pixel_y = 4; + req_access_txt = "0" + }, +/obj/machinery/button/door{ + id = "maint1"; + name = "Blast Door Control A"; + pixel_x = -28; + pixel_y = -6; + req_access_txt = "0" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awJ" = ( +/obj/structure/janitorialcart, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awK" = ( +/obj/structure/table/glass, +/obj/item/weapon/pen, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awL" = ( +/obj/structure/table/glass, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awM" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"awN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"awO" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"awP" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"awQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/engineering{ + name = "Electrical Maintenance"; + req_access_txt = "11" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"awR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"awS" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"awT" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"awU" = ( +/obj/structure/table, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/obj/item/wallframe/camera, +/obj/item/wallframe/camera, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/electrical) +"awV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"awW" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"awX" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"awY" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/arrival{ + dir = 1 + }, +/area/hallway/secondary/entry) +"awZ" = ( +/turf/open/floor/plasteel/arrival{ + dir = 1 + }, +/area/hallway/secondary/entry) +"axa" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"axb" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/arrival{ + dir = 5 + }, +/area/hallway/secondary/entry) +"axc" = ( +/obj/structure/rack{ + dir = 4 + }, +/obj/item/weapon/electronics/airlock, +/obj/item/weapon/electronics/airlock, +/obj/item/weapon/electronics/airlock, +/obj/item/weapon/electronics/airlock, +/obj/item/stack/cable_coil, +/obj/item/stack/cable_coil, +/obj/item/wallframe/camera, +/obj/item/wallframe/camera, +/obj/item/wallframe/camera, +/obj/item/wallframe/camera, +/obj/item/device/assault_pod/mining, +/obj/machinery/computer/security/telescreen{ + desc = "Used for the Auxillary Mining Base."; + dir = 8; + name = "Auxillary Base Monitor"; + network = list("AuxBase"); + pixel_x = 28 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 4 + }, +/area/mining_construction) +"axd" = ( +/mob/living/simple_animal/mouse, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axe" = ( +/obj/machinery/sleeper{ + dir = 4; + icon_state = "sleeper-open" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axf" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axg" = ( +/obj/structure/table/glass, +/obj/item/weapon/storage/bag/trash, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axh" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/arrival{ + dir = 1 + }, +/area/hallway/secondary/entry) +"axi" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axj" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Firefighting equipment"; + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axm" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = -32 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axn" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axo" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axp" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axr" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = -32 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axs" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axt" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axu" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axv" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axx" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"axy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/storage/eva) +"axz" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/ai_monitored/storage/eva) +"axA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/ai_monitored/storage/eva) +"axB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/fore) +"axC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/fore) +"axD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/fsmaint) +"axE" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/fore) +"axF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"axG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/arrival{ + dir = 1 + }, +/area/hallway/secondary/entry) +"axH" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/hallway/secondary/entry) +"axI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 4 + }, +/area/hallway/secondary/entry) +"axJ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"axK" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"axL" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"axM" = ( +/obj/structure/table/wood, +/obj/item/device/paicard, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"axN" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/crayons, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"axO" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"axP" = ( +/obj/structure/table/wood, +/obj/item/toy/cards/deck{ + pixel_x = 2 + }, +/obj/item/clothing/mask/balaclava{ + pixel_x = -8; + pixel_y = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"axQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"axR" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Fitness" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"axS" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/crew_quarters/fitness) +"axT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"axU" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/black, +/area/crew_quarters/fitness) +"axV" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"axW" = ( +/obj/machinery/door/window/eastright{ + base_state = "left"; + icon_state = "left"; + name = "Fitness Ring" + }, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/black, +/area/crew_quarters/fitness) +"axX" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"axY" = ( +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/crew_quarters/fitness) +"axZ" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Holodeck Door" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"aya" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"ayb" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"ayc" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"ayd" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aye" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"ayf" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"ayg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"ayh" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ayi" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ayj" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/weapon/stock_parts/cell/high/plus, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plating, +/area/maintenance/electrical) +"ayk" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"ayl" = ( +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aym" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"ayn" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"ayo" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"ayp" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"ayq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/side{ + dir = 8 + }, +/area/mining_construction) +"ayr" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/arrival{ + dir = 4 + }, +/area/hallway/secondary/entry) +"ays" = ( +/obj/structure/closet/wardrobe/white, +/obj/item/clothing/shoes/jackboots, +/obj/item/weapon/reagent_containers/blood/random, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ayt" = ( +/obj/structure/table/glass, +/obj/item/weapon/hemostat, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ayu" = ( +/obj/structure/table/glass, +/obj/item/weapon/restraints/handcuffs/cable/zipties, +/obj/item/weapon/reagent_containers/blood/random, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ayv" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/item/device/radio/off, +/obj/item/device/assembly/timer, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"ayw" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ayx" = ( +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ayy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"ayz" = ( +/turf/closed/wall/r_wall, +/area/maintenance/fpmaint2) +"ayA" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ayB" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ayC" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ayD" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ayE" = ( +/turf/closed/wall/r_wall, +/area/maintenance/fpmaint) +"ayF" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ayG" = ( +/turf/closed/wall/r_wall, +/area/gateway) +"ayH" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ayI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/sign/securearea{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ayJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"ayK" = ( +/obj/structure/closet/crate/rcd, +/obj/machinery/camera/motion{ + c_tag = "EVA Motion Sensor"; + name = "motion-sensitive security camera" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"ayL" = ( +/turf/closed/wall/r_wall, +/area/ai_monitored/storage/eva) +"ayM" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/item/clothing/head/welding, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"ayN" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/item/weapon/hand_labeler, +/obj/item/device/flashlight, +/obj/item/device/flashlight, +/obj/item/device/flashlight, +/obj/item/device/flashlight, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"ayO" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = -1 + }, +/obj/item/weapon/screwdriver{ + pixel_y = 16 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"ayP" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "EVA Storage APC"; + pixel_x = 0; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"ayQ" = ( +/obj/structure/table, +/obj/item/stack/cable_coil{ + pixel_x = 3; + pixel_y = -7 + }, +/obj/machinery/cell_charger, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"ayR" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/device/multitool, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"ayS" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/sign/securearea{ + pixel_y = 32 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ai_monitored/storage/eva) +"ayT" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/table, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"ayU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"ayV" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/button/door{ + id = "Dorm2"; + name = "Dorm Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 25; + pixel_y = 0; + req_access_txt = "0"; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/carpet, +/area/crew_quarters/sleep) +"ayW" = ( +/turf/closed/wall, +/area/ai_monitored/storage/eva) +"ayX" = ( +/obj/structure/table, +/obj/item/weapon/storage/belt/utility, +/obj/item/weapon/storage/belt/utility, +/obj/item/weapon/storage/belt/utility, +/obj/item/clothing/head/welding, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"ayY" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/fore) +"ayZ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/fore) +"aza" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/sleep) +"azb" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 2 + }, +/area/crew_quarters/sleep) +"azc" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/sleep) +"azd" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 6 + }, +/area/crew_quarters/sleep) +"aze" = ( +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/sleep) +"azf" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"azg" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"azh" = ( +/obj/machinery/camera{ + c_tag = "Fitness Room South"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/crew_quarters/fitness) +"azi" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"azj" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 10 + }, +/area/crew_quarters/fitness) +"azk" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"azl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/corner{ + dir = 8 + }, +/area/crew_quarters/fitness) +"azm" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"azn" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"azo" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"azp" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"azq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"azr" = ( +/obj/structure/grille/broken, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"azs" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"azt" = ( +/obj/machinery/power/terminal, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"azu" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"azv" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"azw" = ( +/obj/machinery/light_switch{ + pixel_y = -25 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"azx" = ( +/obj/machinery/power/terminal, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"azy" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Port Docking Bay 1" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"azz" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"azA" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"azB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"azC" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"azD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/arrival{ + dir = 4 + }, +/area/hallway/secondary/entry) +"azE" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"azF" = ( +/turf/closed/wall, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"azG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"azH" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/space, +/area/space) +"azI" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/space, +/area/space) +"azJ" = ( +/obj/machinery/gateway{ + dir = 9 + }, +/turf/open/floor/plasteel/vault{ + dir = 1 + }, +/area/gateway) +"azK" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/gateway) +"azL" = ( +/obj/machinery/gateway{ + dir = 5 + }, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/gateway) +"azM" = ( +/obj/machinery/gateway{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/gateway) +"azN" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/gateway) +"azO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"azP" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"azQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/maintenance{ + name = "EVA Maintenance"; + req_access_txt = "18" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"azR" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"azS" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_command{ + name = "EVA Storage"; + req_access_txt = "18" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"azT" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/corner{ + dir = 2 + }, +/area/crew_quarters/sleep) +"azU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"azV" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/sleep) +"azW" = ( +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"azX" = ( +/obj/machinery/door/airlock{ + name = "Unisex Showers"; + req_access_txt = "0" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"azY" = ( +/obj/structure/table, +/obj/item/device/radio/off, +/obj/item/device/radio/off, +/obj/item/device/assembly/prox_sensor, +/obj/item/device/assembly/prox_sensor, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"azZ" = ( +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/fore) +"aAa" = ( +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/fore) +"aAb" = ( +/obj/machinery/door/airlock{ + id_tag = "Dorm2"; + name = "Dorm 2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"aAc" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aAd" = ( +/obj/machinery/light_switch{ + pixel_y = -25 + }, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/sleep) +"aAe" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aAf" = ( +/obj/structure/closet/wardrobe/pjs, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/sleep) +"aAg" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/sleep) +"aAh" = ( +/turf/closed/wall, +/area/crew_quarters/toilet) +"aAi" = ( +/obj/structure/closet/wardrobe/pjs, +/turf/open/floor/plasteel/neutral/side{ + dir = 6 + }, +/area/crew_quarters/sleep) +"aAj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/power/apc{ + dir = 2; + name = "Security Checkpoint APC"; + pixel_x = 1; + pixel_y = -24 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/security/checkpoint2) +"aAk" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/fitness) +"aAl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 10 + }, +/area/crew_quarters/fitness) +"aAm" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/fitness) +"aAn" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/light_switch{ + pixel_y = -25 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/fitness) +"aAo" = ( +/obj/structure/reagent_dispensers/water_cooler, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 6 + }, +/area/crew_quarters/fitness) +"aAp" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/neutral/side, +/area/crew_quarters/fitness) +"aAq" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aAr" = ( +/obj/structure/closet, +/obj/effect/decal/cleanable/cobweb, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aAs" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aAt" = ( +/obj/machinery/door/poddoor/preopen{ + id = "maint2" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aAu" = ( +/obj/machinery/door/poddoor/preopen{ + id = "maint2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aAv" = ( +/obj/structure/closet, +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/effect/spawner/lootdrop/maintenance, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aAw" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Garden APC"; + pixel_x = 27; + pixel_y = 2 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aAx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aAy" = ( +/obj/machinery/power/smes{ + charge = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"aAz" = ( +/obj/machinery/computer/monitor{ + name = "backup power monitoring console" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/maintenance/electrical) +"aAA" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/closed/wall, +/area/maintenance/electrical) +"aAB" = ( +/obj/machinery/power/smes{ + charge = 0 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/maintenance/electrical) +"aAC" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; + name = "KEEP CLEAR: DOCKING AREA"; + pixel_y = 0 + }, +/turf/closed/wall/r_wall, +/area/hallway/secondary/entry) +"aAD" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"aAE" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aAF" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aAG" = ( +/obj/machinery/vending/coffee, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aAH" = ( +/obj/machinery/camera{ + c_tag = "Arrivals Bay 1 North"; + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aAI" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aAJ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/arrival{ + dir = 4 + }, +/area/hallway/secondary/entry) +"aAK" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/sink{ + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aAL" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Primary Tool Storage APC"; + pixel_x = 1; + pixel_y = -24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/storage/primary) +"aAM" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aAN" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aAO" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aAP" = ( +/obj/machinery/hydroponics/soil, +/turf/open/floor/grass, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aAQ" = ( +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aAR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aAS" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aAT" = ( +/obj/machinery/seed_extractor, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aAU" = ( +/obj/structure/sink{ + pixel_y = 30 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aAV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aAW" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/tank/jetpack/carbondioxide, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aAX" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/sleep) +"aAY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aAZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aBa" = ( +/turf/closed/wall/r_wall, +/area/ai_monitored/nuke_storage) +"aBb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/ai_monitored/nuke_storage) +"aBc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall/r_wall, +/area/ai_monitored/nuke_storage) +"aBd" = ( +/obj/machinery/gateway{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/gateway) +"aBe" = ( +/turf/open/floor/plasteel/black, +/area/gateway) +"aBf" = ( +/obj/machinery/gateway{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/gateway) +"aBg" = ( +/obj/machinery/gateway/centerstation, +/turf/open/floor/plasteel/black, +/area/gateway) +"aBh" = ( +/obj/machinery/camera{ + c_tag = "EVA Maintenance"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aBi" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Gateway APC"; + pixel_x = -24; + pixel_y = -1 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aBj" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/item/weapon/tank/jetpack/carbondioxide, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aBk" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/storage/eva) +"aBl" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Security Maintenance"; + req_access_txt = "1" + }, +/turf/open/floor/plating, +/area/security/checkpoint2) +"aBm" = ( +/obj/effect/landmark/start{ + name = "Assistant" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aBn" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aBo" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aBp" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/clothing/shoes/magboots, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aBq" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/clothing/shoes/magboots, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aBr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aBs" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ai_monitored/storage/eva) +"aBt" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ai_monitored/storage/eva) +"aBu" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/fore) +"aBv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aBw" = ( +/obj/item/seeds/apple, +/obj/item/seeds/banana, +/obj/item/seeds/cocoapod, +/obj/item/seeds/grape, +/obj/item/seeds/orange, +/obj/item/seeds/sugarcane, +/obj/item/seeds/wheat, +/obj/item/seeds/watermelon, +/obj/structure/table/glass, +/obj/item/seeds/tower, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aBx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/closed/wall, +/area/crew_quarters/toilet) +"aBy" = ( +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aBz" = ( +/obj/machinery/shower{ + dir = 4 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aBA" = ( +/obj/machinery/shower{ + dir = 8 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aBB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/maintenance/fsmaint2) +"aBC" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aBD" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aBE" = ( +/obj/item/clothing/under/rank/mailman, +/obj/item/clothing/head/mailman, +/obj/structure/closet, +/obj/effect/landmark{ + name = "blobstart" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aBF" = ( +/obj/machinery/space_heater, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aBG" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aBH" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aBI" = ( +/turf/closed/wall, +/area/security/checkpoint2) +"aBJ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/security/checkpoint2) +"aBK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/security/checkpoint2) +"aBL" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Garden Maintenance"; + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aBM" = ( +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aBN" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/storage/primary) +"aBO" = ( +/obj/machinery/requests_console{ + department = "EVA"; + pixel_x = -32; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aBP" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aBQ" = ( +/turf/closed/wall, +/area/storage/primary) +"aBR" = ( +/turf/closed/wall/r_wall, +/area/storage/primary) +"aBS" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) +"aBT" = ( +/obj/machinery/computer/bank_machine, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/nuke_storage) +"aBU" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Vault APC"; + pixel_x = 0; + pixel_y = 25 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) +"aBV" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) +"aBW" = ( +/obj/structure/filingcabinet, +/obj/item/weapon/folder/documents, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/nuke_storage) +"aBX" = ( +/obj/machinery/gateway{ + dir = 10 + }, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/gateway) +"aBY" = ( +/obj/machinery/gateway{ + dir = 6 + }, +/turf/open/floor/plasteel/vault{ + dir = 1 + }, +/area/gateway) +"aBZ" = ( +/obj/machinery/gateway, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/gateway) +"aCa" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aCb" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/item/weapon/pen{ + desc = "Writes upside down!"; + name = "astronaut pen" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aCc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aCd" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/button/door{ + id = "Dorm1"; + name = "Dorm Bolt Control"; + normaldoorcontrol = 1; + pixel_x = 25; + pixel_y = 0; + req_access_txt = "0"; + specialfunctions = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/carpet, +/area/crew_quarters/sleep) +"aCe" = ( +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/obj/item/weapon/bikehorn/rubberducky, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aCf" = ( +/obj/machinery/camera{ + c_tag = "Theatre Storage" + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/theatre) +"aCg" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aCh" = ( +/obj/machinery/vending/autodrobe, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/theatre) +"aCi" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ai_monitored/storage/eva) +"aCj" = ( +/obj/machinery/camera{ + c_tag = "EVA East"; + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aCk" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCm" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/structure/mirror{ + pixel_x = -28 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aCn" = ( +/obj/structure/urinal{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aCo" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCp" = ( +/obj/machinery/camera{ + c_tag = "Arrivals North"; + dir = 8; + network = list("SS13") + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/arrival{ + dir = 4 + }, +/area/hallway/secondary/entry) +"aCq" = ( +/obj/structure/table/wood, +/obj/machinery/requests_console{ + department = "Theatre"; + departmentType = 0; + name = "theatre RC"; + pixel_x = -32; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/food/snacks/baguette, +/obj/item/toy/dummy, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/theatre) +"aCr" = ( +/turf/closed/wall, +/area/crew_quarters/theatre) +"aCs" = ( +/obj/structure/closet/wardrobe/red, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint2) +"aCt" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCu" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"aCv" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"aCw" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/fitness) +"aCx" = ( +/obj/machinery/atmospherics/components/binary/valve, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCy" = ( +/obj/effect/decal/cleanable/oil, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCz" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCA" = ( +/obj/structure/grille/broken, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/window{ + icon_state = "window"; + dir = 4 + }, +/obj/structure/window, +/turf/open/floor/plating{ + icon_state = "panelscorched" + }, +/area/maintenance/fsmaint2) +"aCB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/maintenance/fsmaint2) +"aCC" = ( +/obj/machinery/door/poddoor/preopen{ + id = "maint1" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCD" = ( +/obj/machinery/door/poddoor/preopen{ + id = "maint1" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/fsmaint2) +"aCF" = ( +/obj/structure/girder, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCH" = ( +/obj/machinery/space_heater, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCI" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCJ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCK" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCL" = ( +/obj/structure/closet/secure_closet/security, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/checkpoint2) +"aCM" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCN" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aCO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aCP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aCQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aCR" = ( +/turf/closed/wall, +/area/chapel/main) +"aCS" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/arrival) +"aCT" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 4 + }, +/area/mining_construction) +"aCU" = ( +/obj/machinery/door/airlock/titanium{ + name = "Arrivals Shuttle Airlock" + }, +/turf/open/floor/plating, +/area/shuttle/arrival) +"aCV" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/arrival) +"aCW" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aCX" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/mining_construction) +"aCY" = ( +/obj/machinery/computer/security, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 0; + pixel_y = 30 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint2) +"aCZ" = ( +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/checkpoint2) +"aDa" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aDb" = ( +/obj/structure/table, +/obj/item/weapon/wirecutters, +/obj/item/device/flashlight{ + pixel_x = 1; + pixel_y = 5 + }, +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDc" = ( +/obj/machinery/computer/card, +/obj/machinery/light{ + dir = 1 + }, +/obj/item/device/radio/intercom{ + broadcasting = 0; + name = "Station Intercom (General)"; + pixel_y = 20 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint2) +"aDd" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDe" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDf" = ( +/obj/machinery/computer/secure_data, +/obj/machinery/requests_console{ + department = "Security"; + departmentType = 5; + pixel_y = 30 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint2) +"aDg" = ( +/obj/machinery/biogenerator, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aDh" = ( +/obj/machinery/vending/assist, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDi" = ( +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/black, +/area/gateway) +"aDj" = ( +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/gateway) +"aDk" = ( +/obj/structure/table, +/obj/item/device/assembly/igniter{ + pixel_x = -8; + pixel_y = -4 + }, +/obj/item/device/assembly/igniter, +/obj/item/weapon/screwdriver{ + pixel_y = 16 + }, +/obj/machinery/camera{ + c_tag = "Primary Tool Storage" + }, +/obj/machinery/requests_console{ + department = "Tool Storage"; + departmentType = 0; + pixel_y = 30 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDl" = ( +/obj/structure/table, +/obj/item/device/t_scanner, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDm" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDn" = ( +/obj/structure/table, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/obj/item/device/radio/intercom{ + broadcasting = 0; + name = "Station Intercom (General)"; + pixel_y = 20 + }, +/obj/item/device/multitool, +/obj/item/device/multitool{ + pixel_x = 4 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDo" = ( +/turf/open/floor/plasteel, +/area/storage/primary) +"aDp" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDq" = ( +/obj/machinery/vending/tool, +/turf/open/floor/plasteel, +/area/storage/primary) +"aDr" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) +"aDs" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 1 + }, +/area/ai_monitored/nuke_storage) +"aDt" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) +"aDu" = ( +/obj/structure/table, +/obj/machinery/microwave, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"aDv" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/ai_monitored/nuke_storage) +"aDw" = ( +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/gateway) +"aDx" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/window{ + name = "Gateway Chamber"; + req_access_txt = "62" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/black, +/area/gateway) +"aDy" = ( +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/gateway) +"aDz" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aDA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aDB" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aDC" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aDD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aDE" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/obj/machinery/light, +/obj/machinery/camera{ + c_tag = "EVA Storage"; + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aDF" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aDG" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/crew_quarters/sleep) +"aDH" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/weapon/pen, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/item/weapon/folder/white, +/obj/item/weapon/stamp/rd{ + pixel_x = 3; + pixel_y = -2 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"aDI" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE" + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/storage/eva) +"aDJ" = ( +/obj/structure/table, +/obj/item/device/flashlight/lamp{ + pixel_x = 4; + pixel_y = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"aDK" = ( +/obj/machinery/door/airlock{ + id_tag = "Dorm1"; + name = "Dorm 1" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"aDL" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aDM" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aDN" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aDO" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aDP" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aDQ" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aDR" = ( +/obj/structure/table/wood, +/obj/structure/mirror{ + pixel_x = -28 + }, +/obj/item/weapon/lipstick/random{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/lipstick/random{ + pixel_x = -2; + pixel_y = -2 + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/theatre) +"aDS" = ( +/obj/machinery/door/airlock{ + name = "Unisex Showers"; + req_access_txt = "0" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aDT" = ( +/obj/machinery/light/small, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aDU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aDV" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aDW" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aDX" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aDY" = ( +/obj/structure/chair/stool, +/obj/effect/landmark/start{ + name = "Mime" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/theatre) +"aDZ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEa" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEb" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Theatre Maintenance"; + req_access_txt = "46" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/crew_quarters/theatre) +"aEc" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/crew_quarters/theatre) +"aEd" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEe" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEf" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEg" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/power/apc{ + dir = 2; + name = "Chapel APC"; + pixel_x = 0; + pixel_y = -24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/chapel/main) +"aEh" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aEi" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/door/airlock/maintenance{ + name = "Chapel Maintenance"; + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aEk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aEl" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEm" = ( +/obj/machinery/door/window{ + dir = 8; + name = "Mass Driver"; + req_access_txt = "22" + }, +/obj/machinery/mass_driver{ + dir = 4; + id = "chapelgun"; + name = "Holy Driver" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/chapel/main) +"aEn" = ( +/obj/machinery/door/poddoor{ + id = "chapelgun"; + name = "Chapel Launcher Door" + }, +/turf/open/floor/plating, +/area/chapel/main) +"aEo" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aEp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"aEq" = ( +/obj/machinery/computer/arcade, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aEr" = ( +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aEs" = ( +/obj/structure/closet/wardrobe/black, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aEt" = ( +/obj/structure/closet/wardrobe/green, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aEu" = ( +/obj/structure/closet/wardrobe/grey, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aEv" = ( +/obj/structure/closet/wardrobe/mixed, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aEw" = ( +/obj/machinery/requests_console{ + department = "Arrival shuttle"; + name = "Arrivals Shuttle console"; + pixel_y = 30 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aEx" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 4; + icon_state = "burst_r" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/arrival) +"aEy" = ( +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/arrival) +"aEz" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Entry Hall APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/structure/cable, +/turf/open/floor/plasteel/arrival{ + dir = 4 + }, +/area/hallway/secondary/entry) +"aEA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/sortjunction{ + dir = 2; + icon_state = "pipe-j1s"; + sortType = 18 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEB" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEC" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aED" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aEE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint2) +"aEF" = ( +/obj/structure/table/glass, +/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, +/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon, +/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon, +/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon, +/obj/item/weapon/reagent_containers/food/snacks/grown/citrus/orange, +/obj/item/weapon/reagent_containers/food/snacks/grown/grapes, +/obj/item/weapon/reagent_containers/food/snacks/grown/cocoapod, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aEG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/checkpoint2) +"aEH" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint2) +"aEI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint2) +"aEJ" = ( +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/checkpoint2) +"aEK" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint2) +"aEL" = ( +/obj/machinery/door/airlock{ + name = "Garden"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aEM" = ( +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) +"aEN" = ( +/obj/structure/closet/crate{ + name = "Gold Crate" + }, +/obj/item/stack/sheet/mineral/gold{ + pixel_x = -1; + pixel_y = 5 + }, +/obj/item/stack/sheet/mineral/gold{ + pixel_y = 2 + }, +/obj/item/stack/sheet/mineral/gold{ + pixel_x = 1; + pixel_y = -2 + }, +/obj/item/weapon/storage/belt/champion, +/turf/open/floor/plasteel/vault{ + dir = 1 + }, +/area/ai_monitored/nuke_storage) +"aEO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/circuit, +/area/ai_monitored/nuke_storage) +"aEP" = ( +/obj/item/weapon/coin/silver{ + pixel_x = 7; + pixel_y = 12 + }, +/obj/item/weapon/coin/silver{ + pixel_x = 12; + pixel_y = 7 + }, +/obj/item/weapon/coin/silver{ + pixel_x = 4; + pixel_y = 8 + }, +/obj/item/weapon/coin/silver{ + pixel_x = -6; + pixel_y = 5 + }, +/obj/item/weapon/coin/silver{ + pixel_x = 5; + pixel_y = -8 + }, +/obj/structure/closet/crate{ + name = "Silver Crate" + }, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/ai_monitored/nuke_storage) +"aEQ" = ( +/obj/structure/table, +/obj/item/weapon/paper/pamphlet, +/turf/open/floor/plasteel, +/area/gateway) +"aER" = ( +/obj/machinery/camera{ + c_tag = "Gateway"; + dir = 4; + network = list("SS13") + }, +/obj/structure/table, +/obj/structure/sign/biohazard{ + pixel_x = -32 + }, +/obj/item/weapon/storage/firstaid/regular, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/gateway) +"aES" = ( +/obj/structure/table, +/obj/item/device/radio/off{ + pixel_y = 6 + }, +/obj/item/device/radio/off{ + pixel_x = 6; + pixel_y = 4 + }, +/obj/item/device/radio/off{ + pixel_x = -6; + pixel_y = 4 + }, +/obj/item/device/radio/off, +/turf/open/floor/plasteel, +/area/gateway) +"aET" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/gateway) +"aEU" = ( +/obj/structure/table, +/obj/machinery/recharger, +/obj/structure/sign/biohazard{ + pixel_x = 32 + }, +/turf/open/floor/plasteel, +/area/gateway) +"aEV" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aEW" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/ai_monitored/storage/eva) +"aEX" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_command{ + name = "EVA Storage"; + req_access_txt = "18" + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aEY" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/ai_monitored/storage/eva) +"aEZ" = ( +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"aFa" = ( +/obj/machinery/suit_storage_unit/cmo, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"aFb" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"aFc" = ( +/obj/structure/sign/securearea, +/turf/closed/wall/r_wall, +/area/ai_monitored/storage/eva) +"aFd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/crew_quarters/sleep) +"aFe" = ( +/obj/machinery/camera{ + c_tag = "Dormitory South"; + c_tag_order = 999; + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/sleep) +"aFf" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aFg" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/toilet) +"aFh" = ( +/obj/machinery/door/airlock{ + name = "Unisex Restrooms"; + req_access_txt = "0" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aFi" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Dormitory Bathrooms APC"; + pixel_x = 26; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aFj" = ( +/turf/open/floor/plasteel/redblue/redside, +/area/crew_quarters/theatre) +"aFk" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/turf/open/floor/plasteel/redblue/redside, +/area/crew_quarters/theatre) +"aFl" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/dresser, +/turf/open/floor/plasteel/redblue/redside, +/area/crew_quarters/theatre) +"aFm" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aFn" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aFo" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aFp" = ( +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aFq" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/space, +/area/space) +"aFr" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aFs" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aFt" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aFu" = ( +/turf/closed/wall, +/area/library) +"aFv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aFw" = ( +/turf/closed/wall, +/area/chapel/office) +"aFx" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aFy" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Chapel Office APC"; + pixel_x = 0; + pixel_y = -24 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/chapel/office) +"aFz" = ( +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aFA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/computer/pod/old{ + density = 0; + icon = 'icons/obj/airlock_machines.dmi'; + icon_state = "airlock_control_standby"; + id = "chapelgun"; + name = "Mass Driver Controller"; + pixel_x = 24; + pixel_y = 0 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aFB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aFC" = ( +/obj/structure/chair, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aFD" = ( +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"aFE" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aFF" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 4; + icon_state = "propulsion" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/arrival) +"aFG" = ( +/turf/open/floor/plasteel/arrival{ + dir = 4 + }, +/area/hallway/secondary/entry) +"aFH" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint2) +"aFI" = ( +/obj/machinery/camera{ + c_tag = "Security Checkpoint"; + dir = 1 + }, +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/light_switch{ + pixel_x = 6; + pixel_y = -25 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/security/checkpoint2) +"aFJ" = ( +/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ + icon_state = "intact"; + dir = 1 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aFK" = ( +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/weapon/pen, +/obj/structure/table, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint2) +"aFL" = ( +/obj/item/device/radio/off, +/obj/item/weapon/crowbar, +/obj/item/device/assembly/flash/handheld, +/obj/structure/table, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/checkpoint2) +"aFM" = ( +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/structure/table, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint2) +"aFN" = ( +/obj/structure/table/glass, +/obj/item/weapon/cultivator, +/obj/item/weapon/hatchet, +/obj/item/weapon/crowbar, +/obj/item/device/plant_analyzer, +/obj/item/weapon/reagent_containers/glass/bucket, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aFO" = ( +/obj/machinery/camera{ + c_tag = "Garden"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aFP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aFQ" = ( +/obj/structure/table, +/obj/item/stack/cable_coil{ + pixel_x = 2; + pixel_y = -2 + }, +/obj/item/stack/cable_coil{ + pixel_x = 3; + pixel_y = -7 + }, +/obj/item/weapon/screwdriver{ + pixel_y = 16 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aFR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aFS" = ( +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aFT" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aFU" = ( +/obj/effect/landmark/start{ + name = "Assistant" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aFV" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aFW" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel, +/area/gateway) +"aFX" = ( +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = -30 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/gateway) +"aFY" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aFZ" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aGa" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 6 + }, +/area/ai_monitored/nuke_storage) +"aGb" = ( +/turf/open/floor/plasteel/vault{ + dir = 1 + }, +/area/ai_monitored/nuke_storage) +"aGc" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/camera/motion{ + c_tag = "Vault"; + dir = 1; + network = list("MiniSat") + }, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 10 + }, +/area/ai_monitored/nuke_storage) +"aGd" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/vault, +/area/ai_monitored/nuke_storage) +"aGe" = ( +/obj/structure/safe, +/obj/item/clothing/head/bearpelt, +/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, +/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass, +/obj/item/weapon/gun/ballistic/revolver/russian, +/obj/item/ammo_box/a357, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/ai_monitored/nuke_storage) +"aGf" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/gateway) +"aGg" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aGh" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aGi" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"aGj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"aGk" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aGl" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aGm" = ( +/obj/structure/toilet{ + pixel_y = 8 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aGn" = ( +/obj/structure/toilet{ + pixel_y = 8 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/effect/landmark{ + name = "blobstart" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aGo" = ( +/obj/structure/table, +/obj/item/stack/sheet/rglass{ + amount = 50 + }, +/obj/item/stack/sheet/rglass{ + amount = 50 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aGp" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aGq" = ( +/obj/item/stack/sheet/plasteel{ + amount = 10 + }, +/obj/structure/table, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aGr" = ( +/obj/structure/chair/stool, +/obj/effect/landmark/start{ + name = "Clown" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/redblue, +/area/crew_quarters/theatre) +"aGs" = ( +/obj/machinery/suit_storage_unit/rd, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"aGt" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/fore) +"aGu" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/fore) +"aGv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/theatre) +"aGw" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/closet/secure_closet/freezer/cream_pie, +/turf/open/floor/plasteel/redblue, +/area/crew_quarters/theatre) +"aGx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/toilet) +"aGy" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGz" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGA" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/sortjunction{ + dir = 4; + icon_state = "pipe-j1s"; + sortType = 19 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGB" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/sortjunction{ + dir = 4; + icon_state = "pipe-j1s"; + sortType = 20 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGC" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGD" = ( +/obj/structure/table/wood, +/obj/structure/mirror{ + pixel_x = -28 + }, +/obj/item/device/flashlight/lamp/bananalamp{ + pixel_y = 3 + }, +/turf/open/floor/plasteel/redblue, +/area/crew_quarters/theatre) +"aGE" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGF" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 4; + icon_state = "pipe-j2s"; + sortType = 17 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGG" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Library Maintenance"; + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/library) +"aGH" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGI" = ( +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-j1"; + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGJ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGK" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGL" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGM" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Crematorium Maintenance"; + req_access_txt = "27" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/chapel/office) +"aGN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/chapel/office) +"aGP" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGQ" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGR" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGS" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGT" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGU" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/requests_console{ + department = "Chapel"; + departmentType = 2; + pixel_y = 30 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aGV" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGW" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aGX" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/space, +/area/space) +"aGY" = ( +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aGZ" = ( +/obj/machinery/door/airlock/security{ + name = "Security Checkpoint"; + req_access = null; + req_access_txt = "1" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/checkpoint2) +"aHa" = ( +/obj/machinery/door/firedoor, +/obj/structure/table/reinforced, +/obj/item/weapon/paper, +/obj/machinery/door/window/westright{ + dir = 1; + name = "Security Checkpoint"; + req_access_txt = "1" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aHb" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/stack/packageWrap, +/turf/open/floor/wood, +/area/library) +"aHc" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/pill_bottle/dice, +/turf/open/floor/wood, +/area/library) +"aHd" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/turf/open/floor/wood, +/area/library) +"aHe" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = -1 + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aHf" = ( +/obj/structure/closet/wardrobe/chaplain_black, +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aHg" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/camera{ + c_tag = "Chapel Office"; + dir = 2; + network = list("SS13") + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aHh" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/gateway) +"aHi" = ( +/obj/structure/closet/coffin, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aHj" = ( +/obj/machinery/light_switch{ + pixel_x = -20; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/gateway) +"aHk" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aHl" = ( +/obj/structure/closet/coffin, +/obj/machinery/door/window/eastleft{ + name = "Coffin Storage"; + req_access_txt = "22" + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aHm" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aHn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aHo" = ( +/obj/structure/table/glass, +/obj/item/weapon/reagent_containers/food/snacks/grown/poppy, +/obj/item/weapon/reagent_containers/food/snacks/grown/harebell, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/chapel/main) +"aHp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"aHq" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/chapel/main) +"aHr" = ( +/obj/effect/landmark{ + name = "Marauder Entry" + }, +/turf/open/space, +/area/space) +"aHs" = ( +/obj/machinery/door/airlock/titanium{ + name = "Arrivals Shuttle Airlock" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aHt" = ( +/obj/effect/landmark{ + name = "Observer-Start" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aHu" = ( +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white/corner{ + dir = 4 + }, +/area/hallway/secondary/entry) +"aHv" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/gateway) +"aHw" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"aHx" = ( +/obj/structure/grille, +/obj/structure/window/fulltile{ + obj_integrity = 25 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aHy" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/checkpoint2) +"aHz" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aHA" = ( +/obj/item/weapon/reagent_containers/spray/plantbgone, +/obj/item/weapon/reagent_containers/spray/pestspray{ + pixel_x = 3; + pixel_y = 4 + }, +/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez, +/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh{ + pixel_x = 2; + pixel_y = 1 + }, +/obj/structure/table/glass, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/green/side{ + dir = 9 + }, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aHB" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"aHC" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"aHD" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel, +/area/storage/primary) +"aHE" = ( +/obj/structure/table, +/obj/item/weapon/weldingtool, +/obj/item/weapon/crowbar, +/obj/item/stack/packageWrap, +/obj/item/stack/packageWrap, +/obj/item/stack/packageWrap, +/obj/item/stack/packageWrap, +/turf/open/floor/plasteel, +/area/storage/primary) +"aHF" = ( +/obj/structure/sign/securearea, +/turf/closed/wall/r_wall, +/area/ai_monitored/nuke_storage) +"aHG" = ( +/obj/machinery/door/airlock/vault{ + icon_state = "door_locked"; + locked = 1; + req_access_txt = "53" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/ai_monitored/nuke_storage) +"aHH" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Dormitory" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/crew_quarters/sleep) +"aHI" = ( +/turf/open/floor/plasteel/redblue, +/area/crew_quarters/theatre) +"aHJ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/gateway) +"aHK" = ( +/obj/structure/closet/secure_closet/freezer/cream_pie, +/turf/open/floor/plasteel/redblue, +/area/crew_quarters/theatre) +"aHL" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/closet/l3closet/scientist, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/gateway) +"aHM" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/closed/wall, +/area/crew_quarters/bar) +"aHN" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/weapon/crowbar, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aHO" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aHP" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Central Access" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aHQ" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Central Access" + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"aHR" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Central Access" + }, +/turf/open/floor/plasteel/blue/side{ + dir = 4 + }, +/area/hallway/primary/central) +"aHS" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/airlock/maintenance{ + name = "Bar Storage Maintenance"; + req_access_txt = "25" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/crew_quarters/bar) +"aHT" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Dormitory" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/crew_quarters/sleep) +"aHU" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/structure/mirror{ + pixel_x = -28 + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aHV" = ( +/obj/machinery/door/airlock{ + name = "Unit 1" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aHW" = ( +/obj/machinery/door/airlock{ + name = "Unit 2" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aHX" = ( +/obj/machinery/door/airlock{ + name = "Unit B" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aHY" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aHZ" = ( +/obj/structure/table/wood, +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/item/weapon/storage/crayons{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/reagent_containers/food/snacks/pie/cream{ + pixel_x = -3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/redblue, +/area/crew_quarters/theatre) +"aIa" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aIb" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Theatre APC"; + pixel_x = -25 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/crew_quarters/theatre) +"aIc" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Bar APC"; + pixel_y = -24 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/crew_quarters/bar) +"aId" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aIe" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/bar) +"aIf" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aIg" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=2"; + freq = 1400; + location = "Bar" + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/crew_quarters/bar) +"aIh" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Kitchen APC"; + pixel_y = -24 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/crew_quarters/kitchen) +"aIi" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/kitchen) +"aIj" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/sortjunction{ + dir = 4; + icon_state = "pipe-j1s"; + sortType = 21 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aIk" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aIl" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aIm" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aIn" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Hydroponics APC"; + pixel_y = -24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/hydroponics) +"aIo" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aIp" = ( +/turf/closed/wall, +/area/hydroponics) +"aIq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/hydroponics) +"aIr" = ( +/obj/structure/filingcabinet, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/library) +"aIs" = ( +/obj/structure/chair/office/dark, +/obj/machinery/camera{ + c_tag = "Library North"; + dir = 2; + network = list("SS13") + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/library) +"aIt" = ( +/turf/open/floor/wood, +/area/library) +"aIu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/wood, +/area/library) +"aIv" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/library) +"aIw" = ( +/obj/structure/chair/office/dark, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/library) +"aIx" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/wood, +/area/library) +"aIy" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aIz" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aIA" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/weapon/storage/crayons, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aIB" = ( +/obj/structure/bodycontainer/crematorium, +/obj/effect/landmark{ + name = "revenantspawn" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aIC" = ( +/obj/effect/landmark/start{ + name = "Chaplain" + }, +/obj/structure/chair, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aID" = ( +/obj/structure/closet/coffin, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aIE" = ( +/obj/structure/table/glass, +/turf/open/floor/plasteel/chapel, +/area/chapel/main) +"aIF" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable, +/turf/open/floor/plating, +/area/security/warden) +"aIG" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aIH" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/lights/mixed, +/obj/item/weapon/pipe_dispenser, +/obj/machinery/button/door{ + id = "aux_base_shutters"; + name = "Public Shutters Control"; + pixel_x = 24; + pixel_y = 0; + req_access_txt = "0"; + req_one_access_txt = "32;47;48" + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 6 + }, +/area/mining_construction) +"aII" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aIJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aIK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aIL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aIM" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aIN" = ( +/obj/structure/table, +/obj/item/weapon/wrench, +/obj/item/device/analyzer, +/turf/open/floor/plasteel, +/area/storage/primary) +"aIO" = ( +/obj/machinery/camera{ + c_tag = "Arrivals Lounge"; + dir = 2 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aIP" = ( +/obj/structure/sign/map/left{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aIQ" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aIR" = ( +/obj/structure/sign/map/right{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aIS" = ( +/obj/structure/table/glass, +/obj/item/weapon/hatchet, +/obj/item/weapon/cultivator, +/obj/item/weapon/crowbar, +/obj/item/weapon/reagent_containers/glass/bucket, +/obj/item/device/plant_analyzer, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aIT" = ( +/obj/item/weapon/storage/bag/plants/portaseeder, +/obj/structure/table/glass, +/obj/item/device/plant_analyzer, +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 29 + }, +/obj/machinery/light_switch{ + pixel_x = -6; + pixel_y = -25 + }, +/turf/open/floor/plasteel/green/side{ + dir = 8 + }, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aIU" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=8"; + freq = 1400; + location = "Tool Storage" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/storage/primary) +"aIV" = ( +/obj/machinery/button/door{ + id = "stationawaygate"; + name = "Gateway Access Shutter Control"; + pixel_x = -1; + pixel_y = -24; + req_access_txt = "31" + }, +/turf/open/floor/plasteel, +/area/gateway) +"aIW" = ( +/obj/structure/table, +/obj/item/weapon/crowbar, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/clothing/gloves/color/fyellow, +/turf/open/floor/plasteel, +/area/storage/primary) +"aIX" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plasteel, +/area/storage/primary) +"aIY" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel, +/area/storage/primary) +"aIZ" = ( +/obj/structure/table, +/obj/item/weapon/storage/belt/utility, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel, +/area/storage/primary) +"aJa" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/gateway) +"aJb" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/storage/primary) +"aJc" = ( +/obj/structure/disposalpipe/trunk, +/obj/machinery/disposal/bin, +/turf/open/floor/plasteel, +/area/storage/primary) +"aJd" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/primary/port) +"aJe" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/hallway/primary/port) +"aJf" = ( +/obj/machinery/camera{ + c_tag = "EVA South"; + dir = 1 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aJg" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/hallway/primary/central) +"aJh" = ( +/turf/open/floor/plasteel, +/area/gateway) +"aJi" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/closet/secure_closet/exile, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/gateway) +"aJj" = ( +/obj/structure/table, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/weapon/extinguisher, +/obj/item/weapon/extinguisher, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aJk" = ( +/obj/machinery/door/airlock{ + name = "Theatre Backstage"; + req_access_txt = "46" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/theatre) +"aJl" = ( +/obj/structure/tank_dispenser/oxygen, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"aJm" = ( +/obj/structure/sink/kitchen{ + pixel_y = 28 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aJn" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/primary/central) +"aJo" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/camera{ + c_tag = "Central Hallway North"; + dir = 2 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 1 + }, +/area/hallway/primary/central) +"aJp" = ( +/turf/open/floor/plasteel/blue/side{ + dir = 9 + }, +/area/hallway/primary/central) +"aJq" = ( +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aJr" = ( +/turf/open/floor/plasteel/blue/corner{ + dir = 1 + }, +/area/hallway/primary/central) +"aJs" = ( +/turf/open/floor/plasteel/blue/side{ + dir = 1 + }, +/area/hallway/primary/central) +"aJt" = ( +/obj/structure/sign/directions/security{ + dir = 1; + icon_state = "direction_sec"; + pixel_x = 32; + pixel_y = 40 + }, +/obj/structure/sign/directions/medical{ + dir = 4; + icon_state = "direction_med"; + pixel_x = 32; + pixel_y = 32 + }, +/obj/structure/sign/directions/evac{ + dir = 4; + icon_state = "direction_evac"; + pixel_x = 32; + pixel_y = 24 + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 4 + }, +/area/hallway/primary/central) +"aJu" = ( +/turf/open/floor/plasteel/blue/side{ + dir = 5 + }, +/area/hallway/primary/central) +"aJv" = ( +/obj/machinery/vending/cola/random, +/turf/open/floor/plasteel/black, +/area/hallway/primary/central) +"aJw" = ( +/turf/closed/wall, +/area/hallway/primary/central) +"aJx" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aJy" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/hallway/primary/central) +"aJz" = ( +/obj/machinery/camera{ + c_tag = "Dormitory Toilets"; + dir = 1 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/toilet) +"aJA" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Kitchen Maintenance"; + req_access_txt = "28" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/crew_quarters/kitchen) +"aJB" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/airlock/maintenance{ + name = "Hydroponics Maintenance"; + req_access_txt = "35" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/hydroponics) +"aJC" = ( +/turf/closed/wall, +/area/crew_quarters/bar) +"aJD" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Bar Maintenance"; + req_access_txt = "12" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aJE" = ( +/obj/item/weapon/reagent_containers/food/drinks/shaker, +/obj/item/weapon/gun/ballistic/revolver/doublebarrel, +/obj/structure/table/wood, +/obj/item/stack/spacecash/c10, +/obj/item/stack/spacecash/c100, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aJF" = ( +/obj/machinery/newscaster{ + pixel_x = 30 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/wood, +/area/library) +"aJG" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/button/crematorium{ + pixel_x = 25 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aJH" = ( +/obj/machinery/door/window/southleft{ + base_state = "left"; + dir = 2; + icon_state = "left"; + name = "Bar Delivery"; + req_access_txt = "25" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/crew_quarters/bar) +"aJI" = ( +/turf/closed/wall, +/area/crew_quarters/kitchen) +"aJJ" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aJK" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=2"; + freq = 1400; + location = "Kitchen" + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/crew_quarters/kitchen) +"aJL" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=2"; + freq = 1400; + location = "Hydroponics" + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/hydroponics) +"aJM" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp{ + pixel_y = 10 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aJN" = ( +/obj/structure/table, +/obj/item/weapon/book/manual/hydroponics_pod_people, +/obj/item/weapon/paper/hydroponics, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aJO" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aJP" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/pen, +/turf/open/floor/wood, +/area/library) +"aJQ" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/wood, +/area/library) +"aJR" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/wood, +/area/library) +"aJS" = ( +/obj/structure/table/wood, +/obj/structure/disposalpipe/segment, +/turf/open/floor/wood, +/area/library) +"aJT" = ( +/obj/structure/table/wood, +/obj/item/weapon/nullrod, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aJU" = ( +/obj/structure/table/wood, +/obj/item/weapon/pen, +/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aJV" = ( +/obj/structure/closet/coffin, +/obj/machinery/door/window/eastleft{ + dir = 8; + name = "Coffin Storage"; + req_access_txt = "22" + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aJW" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aJX" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral/side, +/area/hallway/secondary/entry) +"aJY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side, +/area/hallway/secondary/entry) +"aJZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Primary Tool Storage" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/storage/primary) +"aKa" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Primary Tool Storage" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/storage/primary) +"aKb" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/obj/structure/cable, +/turf/open/floor/plating, +/area/hallway/primary/port) +"aKc" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/command{ + icon_state = "door_closed"; + lockdownbyai = 0; + locked = 0; + name = "Gateway Access"; + req_access_txt = "62" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/gateway) +"aKd" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters{ + id = "stationawaygate"; + name = "Gateway Access Shutters" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/gateway) +"aKe" = ( +/obj/structure/table/glass, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/chapel/main) +"aKf" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/apc{ + dir = 8; + name = "Auxillary Base Construction APC"; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/mining_construction) +"aKg" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aKh" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"aKi" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 4; + icon_state = "burst_l" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/arrival) +"aKj" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/neutral/corner{ + dir = 2 + }, +/area/hallway/secondary/entry) +"aKk" = ( +/turf/open/floor/plasteel/neutral/side, +/area/hallway/secondary/entry) +"aKl" = ( +/turf/open/floor/plasteel/neutral/corner{ + dir = 8 + }, +/area/hallway/secondary/entry) +"aKm" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Garden" + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aKn" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/hallway/secondary/construction{ + name = "\improper Garden" + }) +"aKo" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/hallway/primary/central) +"aKp" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/storage/primary) +"aKq" = ( +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/obj/machinery/camera{ + c_tag = "Theatre Stage"; + dir = 2 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aKr" = ( +/obj/machinery/airalarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aKs" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/storage/primary) +"aKt" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/primary/port) +"aKu" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/primary/port) +"aKv" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/primary/port) +"aKw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/hallway/primary/port) +"aKx" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/primary/port) +"aKy" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"aKz" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aKA" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters{ + id = "stationawaygate"; + name = "Gateway Access Shutters" + }, +/turf/open/floor/plasteel, +/area/gateway) +"aKB" = ( +/obj/structure/sign/securearea, +/turf/closed/wall/r_wall, +/area/gateway) +"aKC" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aKD" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aKE" = ( +/turf/open/floor/plasteel/blue/side{ + dir = 8 + }, +/area/hallway/primary/central) +"aKF" = ( +/turf/open/floor/plasteel/blue/side{ + dir = 4 + }, +/area/hallway/primary/central) +"aKG" = ( +/obj/machinery/vending/snack/random, +/turf/open/floor/plasteel/black, +/area/hallway/primary/central) +"aKH" = ( +/obj/structure/sink{ + pixel_y = 30 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aKI" = ( +/obj/structure/closet/secure_closet/hydroponics, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aKJ" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aKK" = ( +/obj/structure/closet/wardrobe/botanist, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aKL" = ( +/obj/machinery/airalarm{ + pixel_y = 24 + }, +/obj/machinery/camera{ + c_tag = "Hydroponics Storage" + }, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/plantgenes, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aKM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aKN" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aKO" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aKP" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aKQ" = ( +/obj/machinery/reagentgrinder, +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aKR" = ( +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aKS" = ( +/obj/machinery/camera{ + c_tag = "Bar Storage" + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aKT" = ( +/obj/structure/closet/secure_closet/freezer/meat, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aKU" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aKV" = ( +/obj/machinery/door/window/southleft{ + base_state = "left"; + dir = 2; + icon_state = "left"; + name = "Kitchen Delivery"; + req_access_txt = "28" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/crew_quarters/kitchen) +"aKW" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aKX" = ( +/obj/machinery/door/window/eastright{ + name = "Hydroponics Delivery"; + req_access_txt = "35" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/hydroponics) +"aKY" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"aKZ" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/camera{ + c_tag = "Chapel Crematorium"; + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aLa" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aLb" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/airlock{ + name = "Crematorium"; + req_access_txt = "27" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aLc" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aLd" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/spray/plantbgone{ + pixel_x = 0; + pixel_y = 3 + }, +/obj/item/weapon/reagent_containers/spray/plantbgone{ + pixel_x = 8; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/spray/plantbgone{ + pixel_x = 13; + pixel_y = 5 + }, +/obj/item/weapon/watertank, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aLe" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aLf" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/turf/open/floor/wood, +/area/library) +"aLg" = ( +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/library) +"aLh" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/wood, +/area/library) +"aLi" = ( +/obj/structure/chair/comfy/beige, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aLj" = ( +/obj/structure/chair/comfy/beige, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aLk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLl" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 32 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLm" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLn" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLo" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/chapel/office) +"aLp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLr" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aLs" = ( +/obj/machinery/door/airlock/titanium{ + name = "Arrivals Shuttle Airlock" + }, +/obj/docking_port/mobile{ + dwidth = 5; + height = 7; + id = "arrival"; + name = "arrival shuttle"; + port_angle = -90; + preferred_direction = 8; + width = 15 + }, +/obj/docking_port/stationary{ + dwidth = 5; + height = 7; + id = "arrival_home"; + name = "port bay 1"; + width = 15 + }, +/turf/open/floor/plating, +/area/shuttle/arrival) +"aLt" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/fpmaint2) +"aLu" = ( +/obj/machinery/door/airlock/engineering{ + cyclelinkeddir = 1; + name = "Auxillary Base Construction"; + req_access_txt = "0"; + req_one_access_txt = "32;47;48" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/mining_construction) +"aLv" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aLw" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"aLx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aLy" = ( +/obj/structure/chair/comfy/beige, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aLz" = ( +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aLA" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green{ + pixel_x = 1; + pixel_y = 5 + }, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aLB" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/hallway/secondary/entry) +"aLC" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plasteel/black, +/area/hallway/secondary/entry) +"aLD" = ( +/obj/machinery/door/firedoor, +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aLE" = ( +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLF" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLG" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/apc{ + name = "Port Hall APC"; + dir = 1; + pixel_y = 26 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLH" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLI" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = 30 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aLJ" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 32 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLK" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLL" = ( +/obj/machinery/camera{ + c_tag = "Port Hallway 2"; + dir = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLM" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLN" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 4 + }, +/area/hallway/primary/central) +"aLP" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLQ" = ( +/obj/machinery/camera{ + c_tag = "Central Hallway North-East"; + dir = 2 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aLR" = ( +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 1 + }, +/area/hallway/primary/central) +"aLS" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aLT" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aLU" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/reagent_dispensers/beerkeg, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aLV" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aLW" = ( +/obj/machinery/camera{ + c_tag = "Central Hallway North-West"; + dir = 2 + }, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aLX" = ( +/turf/open/floor/plasteel/blue/corner{ + dir = 4 + }, +/area/hallway/primary/central) +"aLY" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aLZ" = ( +/turf/open/floor/plasteel{ + icon_state = "L3" + }, +/area/hallway/primary/central) +"aMa" = ( +/turf/open/floor/plasteel{ + icon_state = "L1" + }, +/area/hallway/primary/central) +"aMb" = ( +/turf/open/floor/plasteel{ + icon_state = "L7" + }, +/area/hallway/primary/central) +"aMc" = ( +/turf/open/floor/plasteel{ + icon_state = "L5" + }, +/area/hallway/primary/central) +"aMd" = ( +/turf/open/floor/plasteel{ + icon_state = "L11" + }, +/area/hallway/primary/central) +"aMe" = ( +/turf/open/floor/plasteel{ + icon_state = "L9" + }, +/area/hallway/primary/central) +"aMf" = ( +/turf/open/floor/plasteel{ + desc = ""; + icon_state = "L13"; + name = "floor" + }, +/area/hallway/primary/central) +"aMg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 4 + }, +/area/hallway/primary/central) +"aMh" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aMi" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aMj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 1 + }, +/area/hallway/primary/central) +"aMk" = ( +/obj/machinery/chem_master/condimaster{ + name = "CondiMaster Neo" + }, +/obj/machinery/camera{ + c_tag = "Kitchen Cold Room" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aMl" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aMm" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aMn" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aMo" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aMp" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aMq" = ( +/obj/structure/piano{ + icon_state = "piano" + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aMr" = ( +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aMs" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aMt" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = -31 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aMu" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aMv" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aMw" = ( +/obj/machinery/computer/slot_machine, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aMx" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aMy" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aMz" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aMA" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aMB" = ( +/obj/machinery/vending/coffee, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aMC" = ( +/obj/machinery/vending/cola/random, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aMD" = ( +/obj/machinery/icecream_vat, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aME" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aMF" = ( +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aMG" = ( +/obj/structure/closet/crate/hydroponics, +/obj/item/weapon/shovel/spade, +/obj/item/weapon/wrench, +/obj/item/weapon/reagent_containers/glass/bucket, +/obj/item/weapon/wirecutters, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aMH" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/turf/open/floor/wood, +/area/library) +"aMI" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aMJ" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/wood, +/area/library) +"aMK" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aML" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aMM" = ( +/obj/machinery/camera{ + c_tag = "Chapel North"; + dir = 2; + network = list("SS13") + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aMN" = ( +/obj/machinery/chem_master/condimaster, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aMO" = ( +/obj/structure/table/wood, +/obj/item/weapon/reagent_containers/food/snacks/chips, +/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/carpet, +/area/hallway/secondary/entry) +"aMP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/carpet, +/area/hallway/secondary/entry) +"aMQ" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aMR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aMS" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aMT" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aMU" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aMV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aMW" = ( +/obj/structure/bodycontainer/morgue, +/obj/effect/landmark{ + name = "revenantspawn" + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aMX" = ( +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"aMY" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aMZ" = ( +/turf/closed/wall, +/area/hallway/secondary/exit) +"aNa" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"aNb" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aNc" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Central Access" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aNd" = ( +/obj/structure/table/wood, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aNe" = ( +/turf/open/floor/carpet, +/area/hallway/secondary/entry) +"aNf" = ( +/obj/structure/chair/comfy/beige{ + dir = 8 + }, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aNg" = ( +/obj/machinery/vending/coffee, +/turf/open/floor/plasteel/black, +/area/hallway/secondary/entry) +"aNh" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aNi" = ( +/turf/open/floor/goonplaque, +/area/hallway/secondary/entry) +"aNj" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=CHW"; + location = "Lockers" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aNk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aNl" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aNm" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aNn" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aNo" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aNp" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aNq" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aNr" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aNs" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aNt" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aNu" = ( +/obj/structure/closet/secure_closet/bar{ + req_access_txt = "25" + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aNv" = ( +/turf/open/floor/plasteel{ + icon_state = "L4" + }, +/area/hallway/primary/central) +"aNw" = ( +/turf/open/floor/plasteel{ + icon_state = "L2" + }, +/area/hallway/primary/central) +"aNx" = ( +/obj/effect/landmark{ + name = "Observer-Start" + }, +/turf/open/floor/plasteel{ + icon_state = "L8" + }, +/area/hallway/primary/central) +"aNy" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=Lockers"; + location = "EVA" + }, +/turf/open/floor/plasteel{ + icon_state = "L6" + }, +/area/hallway/primary/central) +"aNz" = ( +/turf/open/floor/plasteel{ + icon_state = "L12" + }, +/area/hallway/primary/central) +"aNA" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=Security"; + location = "EVA2" + }, +/turf/open/floor/plasteel{ + icon_state = "L10" + }, +/area/hallway/primary/central) +"aNB" = ( +/turf/open/floor/plasteel{ + desc = ""; + icon_state = "L14" + }, +/area/hallway/primary/central) +"aNC" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=EVA2"; + location = "Dorm" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aND" = ( +/obj/structure/closet/gmcloset, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/stack/cable_coil, +/obj/item/device/flashlight/lamp, +/obj/item/device/flashlight/lamp/green, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aNE" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"aNF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aNG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aNH" = ( +/obj/machinery/door/window{ + dir = 4; + name = "Theatre Stage"; + req_access_txt = "0" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aNI" = ( +/obj/machinery/computer/slot_machine, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aNJ" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aNK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/mob/living/simple_animal/hostile/retaliate/goat{ + name = "Pete" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aNL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/hydroponics) +"aNM" = ( +/obj/structure/kitchenspike, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aNN" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Hydroponics"; + req_access_txt = "35" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/hydrofloor, +/area/hydroponics) +"aNO" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/closet/chefcloset, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aNP" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/wood, +/area/library) +"aNQ" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/hydroponics) +"aNR" = ( +/obj/structure/table/wood, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/carpet, +/area/hallway/secondary/entry) +"aNS" = ( +/obj/machinery/bookbinder{ + pixel_y = 0 + }, +/turf/open/floor/wood, +/area/library) +"aNT" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aNU" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Port Hallway"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aNV" = ( +/obj/machinery/photocopier, +/turf/open/floor/wood, +/area/library) +"aNW" = ( +/obj/machinery/door/airlock/glass{ + name = "Chapel Office"; + req_access_txt = "22" + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"aNX" = ( +/obj/item/device/radio/intercom{ + broadcasting = 1; + frequency = 1480; + name = "Confessional Intercom"; + pixel_x = 25 + }, +/obj/structure/chair, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aNY" = ( +/obj/machinery/door/morgue{ + name = "Confession Booth (Chaplain)"; + req_access_txt = "22" + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aNZ" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/hallway/secondary/exit) +"aOa" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/chair, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/hallway/secondary/exit) +"aOb" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/hallway/secondary/exit) +"aOc" = ( +/obj/structure/chair, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aOd" = ( +/obj/structure/chair, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aOe" = ( +/obj/item/device/radio/beacon, +/obj/machinery/camera{ + c_tag = "Arrivals Bay 1 South" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aOf" = ( +/obj/machinery/vending/snack/random, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aOg" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aOh" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aOi" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOj" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/fancy/cigarettes{ + pixel_y = 2 + }, +/obj/item/weapon/lighter/greyscale{ + pixel_x = 4; + pixel_y = 2 + }, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aOk" = ( +/obj/machinery/vending/cola/random, +/turf/open/floor/plasteel/black, +/area/hallway/secondary/entry) +"aOl" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOm" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOn" = ( +/obj/machinery/light, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOo" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOp" = ( +/obj/machinery/camera{ + c_tag = "Port Hallway 3"; + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOq" = ( +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-j1"; + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOr" = ( +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-j2"; + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOs" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOt" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/light, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOu" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOv" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOw" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOx" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOy" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOz" = ( +/obj/structure/sign/directions/security{ + dir = 4; + icon_state = "direction_sec"; + pixel_x = 32; + pixel_y = -24 + }, +/obj/structure/sign/directions/evac{ + dir = 4; + icon_state = "direction_evac"; + pixel_x = 32; + pixel_y = -32 + }, +/obj/structure/sign/directions/engineering{ + pixel_x = 32; + pixel_y = -40 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOB" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Central Access" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aOC" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aOD" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=QM"; + location = "CHW" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aOE" = ( +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"aOF" = ( +/obj/machinery/light, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = -32 + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"aOG" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = -32 + }, +/obj/machinery/door/firedoor, +/obj/machinery/light, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"aOH" = ( +/obj/structure/window/reinforced, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aOI" = ( +/obj/structure/kitchenspike, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aOJ" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aOK" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/bar) +"aOL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aOM" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aON" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aOO" = ( +/obj/machinery/door/airlock{ + name = "Bar Storage"; + req_access_txt = "25" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel{ + icon_state = "wood" + }, +/area/crew_quarters/bar) +"aOP" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/item/toy/beach_ball/holoball, +/turf/open/floor/plating, +/area/crew_quarters/bar) +"aOQ" = ( +/obj/machinery/requests_console{ + department = "Hydroponics"; + departmentType = 2; + pixel_x = 0; + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aOR" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aOS" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/carpet, +/area/library) +"aOT" = ( +/obj/machinery/gibber, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aOU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aOV" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aOW" = ( +/obj/machinery/hydroponics/constructable, +/obj/machinery/camera{ + c_tag = "Hydroponics North"; + dir = 2 + }, +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aOX" = ( +/obj/machinery/hydroponics/constructable, +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aOY" = ( +/obj/structure/chair/comfy/beige{ + dir = 1; + icon_state = "comfychair" + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aOZ" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aPa" = ( +/obj/structure/chair/comfy/beige{ + dir = 1; + icon_state = "comfychair" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aPb" = ( +/obj/structure/bookcase/random/religion, +/turf/open/floor/wood, +/area/library) +"aPc" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aPd" = ( +/obj/structure/bookcase/random/reference, +/turf/open/floor/wood, +/area/library) +"aPe" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aPf" = ( +/obj/machinery/computer/libraryconsole, +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/library) +"aPg" = ( +/obj/structure/bookcase{ + name = "Forbidden Knowledge" + }, +/turf/open/floor/engine/cult, +/area/library) +"aPh" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen/invisible, +/turf/open/floor/engine/cult, +/area/library) +"aPi" = ( +/obj/structure/table/wood, +/obj/item/device/taperecorder{ + pixel_y = 0 + }, +/obj/item/device/camera, +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/engine/cult, +/area/library) +"aPj" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aPk" = ( +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/chapel/main) +"aPl" = ( +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/chapel/main) +"aPm" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/chapel/main) +"aPn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/chapel/main) +"aPo" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/tinted/fulltile, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aPp" = ( +/obj/machinery/camera{ + c_tag = "Escape Arm Holding Area"; + dir = 4 + }, +/obj/item/device/radio/intercom{ + dir = 8; + name = "Station Intercom (General)"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/hallway/secondary/exit) +"aPq" = ( +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aPr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aPs" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aPt" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aPu" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aPv" = ( +/obj/item/device/radio/intercom{ + broadcasting = 0; + name = "Station Intercom (General)"; + pixel_y = 20 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aPw" = ( +/obj/machinery/disposal/bin, +/obj/structure/sign/securearea{ + desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; + icon_state = "monkey_painting"; + name = "Mr. Deempisi portrait"; + pixel_x = -28; + pixel_y = -4 + }, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "barShutters"; + name = "bar shutters"; + pixel_x = 4; + pixel_y = 28 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aPx" = ( +/obj/structure/chair/comfy/beige{ + dir = 1; + icon_state = "comfychair" + }, +/turf/open/floor/plasteel/grimy, +/area/hallway/secondary/entry) +"aPy" = ( +/obj/machinery/vending/snack/random, +/turf/open/floor/plasteel/black, +/area/hallway/secondary/entry) +"aPz" = ( +/turf/closed/wall, +/area/maintenance/port) +"aPA" = ( +/turf/closed/wall, +/area/crew_quarters/locker) +"aPB" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aPC" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aPD" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aPE" = ( +/obj/machinery/status_display{ + density = 0; + layer = 4 + }, +/turf/closed/wall, +/area/crew_quarters/locker) +"aPF" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/storage/art) +"aPG" = ( +/turf/closed/wall, +/area/storage/art) +"aPH" = ( +/obj/machinery/door/airlock/glass{ + name = "Art Storage" + }, +/turf/open/floor/plasteel, +/area/storage/art) +"aPI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"aPJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/storage/art) +"aPK" = ( +/turf/closed/wall, +/area/storage/emergency2) +"aPL" = ( +/obj/structure/table, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aPM" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aPN" = ( +/obj/structure/table, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aPO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"aPP" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/structure/table, +/obj/machinery/chem_dispenser/drinks/beer, +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aPQ" = ( +/turf/closed/wall, +/area/storage/tools) +"aPR" = ( +/turf/closed/wall/r_wall, +/area/bridge) +"aPS" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + layer = 2.9; + name = "bridge blast door" + }, +/turf/open/floor/plating, +/area/bridge) +"aPT" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + layer = 2.9; + name = "bridge blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/bridge) +"aPU" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/status_display{ + density = 0; + layer = 4 + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + layer = 2.9; + name = "bridge blast door" + }, +/turf/open/floor/plating, +/area/bridge) +"aPV" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + layer = 2.9; + name = "bridge blast door" + }, +/turf/open/floor/plating, +/area/bridge) +"aPW" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/status_display{ + density = 0; + layer = 4 + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + layer = 2.9; + name = "bridge blast door" + }, +/turf/open/floor/plating, +/area/bridge) +"aPX" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + layer = 2.9; + name = "bridge blast door" + }, +/turf/open/floor/plating, +/area/bridge) +"aPY" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aPZ" = ( +/obj/structure/table, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = -31 + }, +/obj/item/clothing/head/hardhat/cakehat, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aQa" = ( +/obj/structure/table, +/obj/item/weapon/kitchen/fork, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aQb" = ( +/obj/structure/window/reinforced, +/obj/structure/table/wood, +/obj/item/device/instrument/violin, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"aQc" = ( +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aQd" = ( +/obj/structure/chair, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aQe" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/chair/stool, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aQf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/green/side{ + dir = 9 + }, +/area/hydroponics) +"aQg" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "barShutters"; + name = "privacy shutters" + }, +/turf/open/floor/plating, +/area/crew_quarters/bar) +"aQh" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/hydroponics) +"aQi" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aQj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/crew_quarters/kitchen) +"aQk" = ( +/obj/machinery/door/airlock{ + name = "Kitchen cold room"; + req_access_txt = "28" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/showroomfloor, +/area/crew_quarters/kitchen) +"aQl" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/hallway/secondary/entry) +"aQm" = ( +/turf/open/floor/plasteel/green/side{ + dir = 1 + }, +/area/hydroponics) +"aQn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/hallway/secondary/entry) +"aQo" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/hallway/secondary/entry) +"aQp" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/wood, +/area/library) +"aQq" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/wood, +/area/library) +"aQr" = ( +/obj/machinery/light/small, +/turf/open/floor/engine/cult, +/area/library) +"aQs" = ( +/obj/structure/destructible/cult/tome, +/obj/item/clothing/under/suit_jacket/red, +/obj/item/weapon/book/codex_gigas, +/turf/open/floor/engine/cult, +/area/library) +"aQt" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/structure/chair/comfy/brown{ + dir = 1 + }, +/turf/open/floor/engine/cult, +/area/library) +"aQu" = ( +/turf/open/floor/plasteel/chapel, +/area/chapel/main) +"aQv" = ( +/turf/open/floor/plasteel/chapel{ + dir = 8 + }, +/area/chapel/main) +"aQw" = ( +/obj/structure/table/wood, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aQx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/chapel, +/area/chapel/main) +"aQy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/chapel{ + dir = 8 + }, +/area/chapel/main) +"aQz" = ( +/obj/item/device/radio/intercom{ + broadcasting = 1; + frequency = 1480; + name = "Confessional Intercom"; + pixel_x = 25 + }, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aQA" = ( +/obj/machinery/door/morgue{ + name = "Confession Booth" + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aQB" = ( +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/hallway/secondary/exit) +"aQC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aQD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/hallway/secondary/entry) +"aQE" = ( +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"aQF" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Security Escape Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"aQG" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aQH" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aQI" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/neutral/corner{ + dir = 4 + }, +/area/hallway/secondary/entry) +"aQJ" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/hallway/secondary/entry) +"aQK" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 1 + }, +/area/hallway/secondary/entry) +"aQL" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/port) +"aQM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/port) +"aQN" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQO" = ( +/obj/structure/closet/wardrobe/white, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQP" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQQ" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQR" = ( +/obj/machinery/vending/cola/random, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQS" = ( +/obj/machinery/vending/coffee, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQT" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQU" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQV" = ( +/obj/machinery/vending/clothing, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQW" = ( +/obj/structure/closet/secure_closet/personal, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQX" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aQY" = ( +/obj/structure/table, +/obj/item/stack/cable_coil/random, +/obj/item/stack/cable_coil/random, +/turf/open/floor/plasteel, +/area/storage/art) +"aQZ" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/turf/open/floor/plasteel, +/area/storage/art) +"aRa" = ( +/turf/open/floor/plasteel, +/area/storage/art) +"aRb" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"aRc" = ( +/obj/machinery/door/airlock{ + name = "Port Emergency Storage"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/storage/emergency2) +"aRd" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/hallway/secondary/entry) +"aRe" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/storage/tools) +"aRf" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Auxiliary Tool Storage"; + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/storage/tools) +"aRg" = ( +/obj/machinery/vending/boozeomat, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aRh" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aRi" = ( +/obj/machinery/computer/atmos_alert, +/turf/open/floor/plasteel/yellow/side{ + dir = 10 + }, +/area/bridge) +"aRj" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/secure/briefcase, +/obj/item/weapon/storage/box/PDAs{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/weapon/storage/box/ids, +/turf/open/floor/plasteel, +/area/bridge) +"aRk" = ( +/obj/machinery/computer/monitor{ + name = "bridge power monitoring console" + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 6 + }, +/area/bridge) +"aRl" = ( +/obj/machinery/computer/station_alert, +/turf/open/floor/plasteel/yellow/side, +/area/bridge) +"aRm" = ( +/obj/machinery/computer/communications, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aRn" = ( +/obj/machinery/computer/shuttle/labor, +/turf/open/floor/plasteel/blue/side{ + dir = 10 + }, +/area/bridge) +"aRo" = ( +/obj/machinery/modular_computer/console/preset/command, +/turf/open/floor/plasteel/green/side{ + dir = 10 + }, +/area/bridge) +"aRp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/computer/shuttle/mining, +/turf/open/floor/plasteel/blue/side{ + dir = 6 + }, +/area/bridge) +"aRq" = ( +/obj/machinery/computer/med_data, +/turf/open/floor/plasteel/green/side{ + dir = 6 + }, +/area/bridge) +"aRr" = ( +/obj/machinery/computer/crew, +/turf/open/floor/plasteel/green/side{ + dir = 2 + }, +/area/bridge) +"aRs" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/toolbox/emergency, +/obj/item/weapon/wrench, +/obj/item/device/assembly/timer, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/turf/open/floor/plasteel, +/area/bridge) +"aRt" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aRu" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/structure/chair/stool, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aRv" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aRw" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aRx" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aRy" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aRz" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aRA" = ( +/obj/machinery/vending/dinnerware, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aRB" = ( +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/obj/machinery/camera{ + c_tag = "Kitchen"; + dir = 2 + }, +/obj/structure/closet/secure_closet/freezer/fridge, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aRC" = ( +/obj/structure/sink/kitchen{ + pixel_y = 28 + }, +/obj/machinery/food_cart, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aRD" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aRE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/green/side{ + dir = 8 + }, +/area/hydroponics) +"aRF" = ( +/obj/structure/table, +/obj/machinery/microwave{ + pixel_x = -3; + pixel_y = 6 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aRG" = ( +/obj/structure/table, +/obj/machinery/microwave{ + pixel_x = -3; + pixel_y = 6 + }, +/obj/machinery/airalarm{ + pixel_y = 24 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aRH" = ( +/obj/structure/closet/secure_closet/freezer/kitchen, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aRI" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/hydroponics) +"aRJ" = ( +/turf/open/floor/plasteel, +/area/hydroponics) +"aRK" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/power/apc{ + dir = 4; + name = "Library APC"; + pixel_x = 24 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/library) +"aRL" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Holding Area"; + req_access_txt = "2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aRM" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aRN" = ( +/obj/structure/bookcase/random/fiction, +/turf/open/floor/wood, +/area/library) +"aRO" = ( +/obj/structure/bookcase/random/nonfiction, +/turf/open/floor/wood, +/area/library) +"aRP" = ( +/obj/machinery/camera{ + c_tag = "Library South"; + dir = 8; + network = list("SS13") + }, +/turf/open/floor/wood, +/area/library) +"aRQ" = ( +/obj/machinery/door/morgue{ + name = "Private Study"; + req_access_txt = "37" + }, +/turf/open/floor/engine/cult, +/area/library) +"aRR" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aRS" = ( +/turf/open/floor/carpet, +/area/chapel/main) +"aRT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/rack, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/item/weapon/electronics/apc, +/obj/item/weapon/electronics/airlock, +/turf/open/floor/plasteel, +/area/storage/tools) +"aRU" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"aRV" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Auxiliary Tool Storage APC"; + pixel_y = 24 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/table, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/turf/open/floor/plasteel, +/area/storage/tools) +"aRW" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; + name = "KEEP CLEAR: DOCKING AREA"; + pixel_y = 0 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"aRX" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/arrival{ + dir = 2 + }, +/area/hallway/secondary/entry) +"aRY" = ( +/turf/open/floor/plasteel/arrival{ + dir = 2 + }, +/area/hallway/secondary/entry) +"aRZ" = ( +/turf/open/floor/plasteel/white/corner{ + dir = 8 + }, +/area/hallway/secondary/entry) +"aSa" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/camera{ + c_tag = "Auxiliary Tool Storage"; + dir = 2 + }, +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/weapon/storage/box/lights/mixed, +/turf/open/floor/plasteel, +/area/storage/tools) +"aSb" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aSc" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/storage/tools) +"aSd" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = -24 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aSe" = ( +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aSf" = ( +/obj/machinery/camera{ + c_tag = "Arrivals Hallway"; + dir = 8; + network = list("SS13") + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aSg" = ( +/turf/open/floor/plating, +/area/maintenance/port) +"aSh" = ( +/obj/structure/closet/wardrobe/mixed, +/obj/item/device/radio/intercom{ + dir = 0; + name = "Station Intercom (General)"; + pixel_x = -27 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aSi" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aSj" = ( +/obj/effect/landmark{ + name = "lightsout" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aSk" = ( +/obj/structure/table, +/obj/item/stack/cable_coil/random, +/obj/item/stack/cable_coil/random, +/obj/item/stack/cable_coil, +/obj/item/weapon/paper_bin/construction, +/obj/item/stack/cable_coil, +/turf/open/floor/plasteel, +/area/storage/art) +"aSl" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/item/weapon/storage/box/lights/mixed, +/turf/open/floor/plating, +/area/storage/emergency2) +"aSm" = ( +/turf/open/floor/plating, +/area/storage/emergency2) +"aSn" = ( +/obj/item/weapon/extinguisher, +/turf/open/floor/plating, +/area/storage/emergency2) +"aSo" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aSp" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aSq" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aSr" = ( +/turf/open/floor/plasteel, +/area/storage/tools) +"aSs" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/storage/tools) +"aSt" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel, +/area/storage/tools) +"aSu" = ( +/turf/open/floor/plasteel/yellow/corner{ + dir = 1 + }, +/area/bridge) +"aSv" = ( +/obj/structure/table/reinforced, +/obj/item/device/assembly/flash/handheld, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel, +/area/bridge) +"aSw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/yellow/corner{ + dir = 4 + }, +/area/bridge) +"aSx" = ( +/obj/structure/chair{ + dir = 1; + name = "Engineering Station" + }, +/turf/open/floor/plasteel, +/area/bridge) +"aSy" = ( +/obj/structure/chair{ + dir = 1; + name = "Command Station" + }, +/obj/machinery/button/door{ + id = "bridge blast"; + name = "Bridge Blast Door Control"; + pixel_x = 28; + pixel_y = -2; + req_access_txt = "19" + }, +/obj/machinery/keycard_auth{ + pixel_x = 29; + pixel_y = 8 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aSz" = ( +/obj/structure/table/reinforced, +/obj/item/device/aicard, +/obj/item/device/multitool, +/turf/open/floor/plasteel/blue/side{ + dir = 8 + }, +/area/bridge) +"aSA" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 1 + }, +/area/bridge) +"aSB" = ( +/obj/structure/table/reinforced, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 4 + }, +/area/bridge) +"aSC" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/bridge) +"aSD" = ( +/obj/structure/chair{ + dir = 1; + name = "Crew Station" + }, +/turf/open/floor/plasteel, +/area/bridge) +"aSE" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel, +/area/bridge) +"aSF" = ( +/mob/living/carbon/monkey/punpun, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aSG" = ( +/obj/structure/table/wood/poker, +/obj/item/toy/cards/deck, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aSH" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aSI" = ( +/obj/machinery/door/airlock/glass{ + name = "Kitchen"; + req_access_txt = "28" + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/kitchen) +"aSJ" = ( +/obj/effect/landmark/start{ + name = "Cook" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aSK" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aSL" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aSM" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aSN" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aSO" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aSP" = ( +/obj/machinery/smartfridge, +/turf/closed/wall, +/area/crew_quarters/kitchen) +"aSQ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/green/side{ + dir = 8 + }, +/area/hydroponics) +"aSR" = ( +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aSS" = ( +/obj/machinery/seed_extractor, +/turf/open/floor/plasteel, +/area/hydroponics) +"aST" = ( +/obj/machinery/biogenerator, +/turf/open/floor/plasteel, +/area/hydroponics) +"aSU" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/hydroponics) +"aSV" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aSW" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/storage/tools) +"aSX" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aSY" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/head/that{ + throwforce = 1 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aSZ" = ( +/obj/effect/landmark/start{ + name = "Bartender" + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aTa" = ( +/obj/machinery/requests_console{ + department = "Bar"; + departmentType = 2; + pixel_x = 30; + pixel_y = 0; + receive_ore_updates = 1 + }, +/obj/machinery/camera{ + c_tag = "Bar"; + dir = 8; + network = list("SS13") + }, +/obj/structure/table, +/obj/machinery/chem_dispenser/drinks, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aTb" = ( +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/turf/open/floor/wood, +/area/library) +"aTc" = ( +/obj/machinery/door/window/northright{ + base_state = "right"; + dir = 8; + icon_state = "right"; + name = "Library Desk Door"; + req_access_txt = "37" + }, +/turf/open/floor/wood, +/area/library) +"aTd" = ( +/obj/structure/table/wood, +/obj/machinery/computer/libraryconsole/bookmanagement{ + pixel_y = 0 + }, +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/turf/open/floor/wood, +/area/library) +"aTe" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aTf" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/chapel, +/area/chapel/main) +"aTg" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/chapel{ + dir = 8 + }, +/area/chapel/main) +"aTh" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/chapel, +/area/chapel/main) +"aTi" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel/chapel{ + dir = 8 + }, +/area/chapel/main) +"aTj" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aTk" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/hallway/secondary/exit) +"aTl" = ( +/obj/machinery/vending/cola/random, +/obj/machinery/status_display{ + layer = 4; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plasteel/escape{ + dir = 9 + }, +/area/hallway/secondary/exit) +"aTm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aTn" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Escape Airlock" + }, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"aTo" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "Escape Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"aTp" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"aTq" = ( +/turf/closed/wall, +/area/security/vacantoffice{ + name = "Vacant Office A" + }) +"aTr" = ( +/obj/machinery/door/firedoor, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aTs" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/security/vacantoffice) +"aTt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/security/vacantoffice) +"aTu" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aTv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aTw" = ( +/obj/structure/closet/wardrobe/green, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aTx" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aTy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aTz" = ( +/obj/structure/table, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aTA" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aTB" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aTC" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aTD" = ( +/obj/structure/closet/secure_closet/personal, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/machinery/camera{ + c_tag = "Locker Room East"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aTE" = ( +/obj/structure/table, +/obj/item/weapon/hand_labeler, +/turf/open/floor/plasteel, +/area/storage/art) +"aTF" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/structure/table, +/obj/item/device/camera_film, +/obj/item/device/camera, +/turf/open/floor/plasteel, +/area/storage/art) +"aTG" = ( +/obj/structure/table, +/obj/item/weapon/storage/crayons, +/obj/item/weapon/storage/crayons, +/turf/open/floor/plasteel, +/area/storage/art) +"aTH" = ( +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating, +/area/storage/emergency2) +"aTI" = ( +/obj/machinery/space_heater, +/turf/open/floor/plating, +/area/storage/emergency2) +"aTJ" = ( +/obj/machinery/light/small, +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/storage/emergency2) +"aTK" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/turf/open/floor/plating, +/area/storage/emergency2) +"aTL" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/emergency, +/turf/open/floor/plasteel, +/area/storage/tools) +"aTM" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/snacks/mint, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aTN" = ( +/obj/structure/table, +/obj/item/weapon/kitchen/rollingpin, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aTO" = ( +/obj/structure/table, +/obj/item/weapon/book/manual/chef_recipes, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aTP" = ( +/obj/structure/rack, +/obj/item/clothing/gloves/color/fyellow, +/obj/item/clothing/suit/hazardvest, +/obj/item/device/multitool, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plasteel, +/area/storage/tools) +"aTQ" = ( +/turf/closed/wall, +/area/bridge) +"aTR" = ( +/obj/machinery/computer/prisoner, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/bridge) +"aTS" = ( +/obj/machinery/computer/secure_data, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/bridge) +"aTT" = ( +/obj/machinery/computer/security, +/turf/open/floor/plasteel/red/side, +/area/bridge) +"aTU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aTV" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/plasteel, +/area/bridge) +"aTW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aTX" = ( +/turf/open/floor/plasteel, +/area/bridge) +"aTY" = ( +/turf/open/floor/plasteel/blue/corner{ + dir = 1 + }, +/area/bridge) +"aTZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 4 + }, +/area/bridge) +"aUa" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aUb" = ( +/obj/machinery/computer/teleporter, +/turf/open/floor/plasteel/brown{ + dir = 10 + }, +/area/bridge) +"aUc" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel, +/area/bridge) +"aUd" = ( +/obj/machinery/computer/security/mining{ + network = list("MINE","AuxBase") + }, +/turf/open/floor/plasteel/brown{ + dir = 6 + }, +/area/bridge) +"aUe" = ( +/obj/machinery/computer/cargo/request, +/turf/open/floor/plasteel/brown{ + dir = 2 + }, +/area/bridge) +"aUf" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/camera{ + c_tag = "Bar West"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aUg" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aUh" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/eastleft{ + name = "Hydroponics Desk"; + req_access_txt = "35" + }, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/crew_quarters/kitchen) +"aUi" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/hydroponics) +"aUj" = ( +/obj/machinery/vending/hydronutrients, +/turf/open/floor/plasteel, +/area/hydroponics) +"aUk" = ( +/obj/machinery/vending/hydroseeds{ + slogan_delay = 700 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"aUl" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUo" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUp" = ( +/obj/structure/table, +/obj/item/clothing/head/soft/grey{ + pixel_x = -2; + pixel_y = 3 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUq" = ( +/obj/structure/table, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUr" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUs" = ( +/obj/structure/table, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUu" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUw" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/storage/tools) +"aUx" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"aUy" = ( +/obj/machinery/camera{ + c_tag = "Vacant Office"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUz" = ( +/obj/machinery/hydroponics/constructable, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aUA" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUB" = ( +/obj/structure/bookcase/random/adult, +/turf/open/floor/wood, +/area/library) +"aUC" = ( +/obj/structure/chair/comfy/black, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/wood, +/area/library) +"aUD" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green{ + pixel_x = 1; + pixel_y = 5 + }, +/turf/open/floor/wood, +/area/library) +"aUE" = ( +/obj/machinery/libraryscanner, +/turf/open/floor/wood, +/area/library) +"aUF" = ( +/obj/effect/landmark/start{ + name = "Librarian" + }, +/obj/structure/chair/office/dark, +/turf/open/floor/wood, +/area/library) +"aUG" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aUH" = ( +/obj/structure/chair/stool, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/chapel/main) +"aUI" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/chapel/main) +"aUJ" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/chapel/main) +"aUK" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/chapel{ + dir = 1 + }, +/area/chapel/main) +"aUL" = ( +/obj/machinery/computer/arcade, +/turf/open/floor/plasteel/escape{ + dir = 8 + }, +/area/hallway/secondary/exit) +"aUM" = ( +/obj/machinery/camera{ + c_tag = "Arrivals Bay 2"; + dir = 8; + network = list("SS13") + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aUN" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUO" = ( +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUP" = ( +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUQ" = ( +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUR" = ( +/obj/structure/table/wood, +/obj/item/weapon/pen/red, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUS" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aUT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aUU" = ( +/obj/structure/closet/wardrobe/grey, +/obj/machinery/requests_console{ + department = "Locker Room"; + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUV" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUW" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aUX" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUY" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aUZ" = ( +/obj/structure/closet/secure_closet/personal, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aVa" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/structure/closet/toolcloset, +/turf/open/floor/plasteel, +/area/storage/tools) +"aVb" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 32 + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/blue/side{ + dir = 5 + }, +/area/hallway/primary/central) +"aVc" = ( +/obj/structure/sign/securearea{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + name = "bridge blast door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/bridge) +"aVd" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/bridge) +"aVe" = ( +/obj/machinery/camera{ + c_tag = "Bridge West"; + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/bridge) +"aVf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/bridge) +"aVg" = ( +/obj/structure/chair{ + dir = 1; + name = "Security Station" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVh" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Fore Primary Hallway APC"; + pixel_x = -24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/camera{ + c_tag = "Fore Primary Hallway"; + dir = 4; + network = list("SS13") + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/hallway/primary/fore) +"aVi" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVk" = ( +/obj/machinery/holopad, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVl" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVm" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVn" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVo" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVp" = ( +/obj/item/device/radio/beacon, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVq" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown/corner{ + dir = 1 + }, +/area/bridge) +"aVr" = ( +/obj/machinery/camera{ + c_tag = "Bridge East"; + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/brown/corner{ + dir = 4 + }, +/area/bridge) +"aVs" = ( +/obj/structure/chair{ + dir = 1; + name = "Logistics Station" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aVt" = ( +/obj/structure/sign/securearea{ + pixel_x = -32; + pixel_y = 0 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + name = "bridge blast door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/bridge) +"aVu" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 32 + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/blue/side{ + dir = 9 + }, +/area/hallway/primary/central) +"aVv" = ( +/obj/machinery/camera{ + c_tag = "Bridge East Entrance"; + dir = 2 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 1 + }, +/area/hallway/primary/central) +"aVw" = ( +/obj/structure/table/wood/poker, +/obj/item/clothing/mask/cigarette/cigar, +/obj/item/toy/cards/deck, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aVx" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aVy" = ( +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aVz" = ( +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aVA" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/reagent_containers/food/snacks/pie/cream, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aVB" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/condiment/enzyme{ + layer = 5 + }, +/obj/item/stack/packageWrap, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aVC" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aVD" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ + pixel_x = -3; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/food/condiment/peppermill{ + pixel_x = 3 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aVE" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/donkpockets{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/reagent_containers/glass/beaker{ + pixel_x = 5 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aVF" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aVG" = ( +/obj/structure/table, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aVH" = ( +/obj/machinery/processor, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aVI" = ( +/turf/open/floor/plasteel/green/side{ + dir = 8 + }, +/area/hydroponics) +"aVJ" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/hydroponics/constructable, +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aVK" = ( +/obj/effect/landmark/start{ + name = "Botanist" + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"aVL" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/sortjunction{ + dir = 2; + icon_state = "pipe-j2s"; + sortType = 16 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"aVM" = ( +/obj/machinery/hydroponics/constructable, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/hydroponics) +"aVN" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"aVO" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"aVP" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper, +/turf/open/floor/wood, +/area/library) +"aVQ" = ( +/obj/structure/chair/comfy/black{ + dir = 8 + }, +/turf/open/floor/wood, +/area/library) +"aVR" = ( +/obj/structure/table/wood, +/obj/item/weapon/pen/red, +/obj/item/weapon/pen/blue{ + pixel_x = 5; + pixel_y = 5 + }, +/turf/open/floor/wood, +/area/library) +"aVS" = ( +/obj/structure/table/wood, +/obj/item/device/camera_film, +/obj/item/device/camera_film, +/turf/open/floor/wood, +/area/library) +"aVT" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/turf/open/floor/wood, +/area/library) +"aVU" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/chapel{ + dir = 8 + }, +/area/chapel/main) +"aVV" = ( +/obj/machinery/camera{ + c_tag = "Chapel South"; + dir = 8; + network = list("SS13") + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"aVW" = ( +/obj/item/device/radio/intercom{ + pixel_x = -25 + }, +/turf/open/floor/plasteel/escape{ + dir = 8 + }, +/area/hallway/secondary/exit) +"aVX" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aVY" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/library) +"aVZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Library" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/library) +"aWa" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"aWb" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/library) +"aWc" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"aWd" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/carpet, +/area/library) +"aWe" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Chapel" + }, +/turf/open/floor/carpet, +/area/chapel/main) +"aWf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aWg" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/carpet, +/area/chapel/main) +"aWh" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aWi" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aWj" = ( +/obj/structure/grille, +/obj/structure/window{ + icon_state = "window"; + dir = 8 + }, +/obj/structure/window, +/turf/open/floor/plating, +/area/maintenance/port) +"aWk" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aWl" = ( +/obj/structure/grille, +/obj/structure/window{ + icon_state = "window"; + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aWm" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/light_switch{ + pixel_x = -28; + pixel_y = 0 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aWn" = ( +/obj/structure/closet/wardrobe/black, +/obj/item/clothing/shoes/jackboots, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aWo" = ( +/obj/machinery/camera{ + c_tag = "Locker Room West"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aWp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aWq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aWr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/carpet, +/area/security/vacantoffice) +"aWs" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/carpet, +/area/security/vacantoffice) +"aWt" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aWu" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aWv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aWw" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Art Storage"; + pixel_x = 0; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/storage/art) +"aWx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aWy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/crew_quarters/locker/locker_toilet) +"aWz" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Port Emergency Storage APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/storage/emergency2) +"aWA" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aWB" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/maintenance/port) +"aWC" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/port) +"aWD" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel, +/area/storage/tools) +"aWE" = ( +/obj/machinery/computer/med_data, +/obj/machinery/newscaster{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"aWF" = ( +/obj/structure/closet/toolcloset, +/turf/open/floor/plasteel, +/area/storage/tools) +"aWG" = ( +/obj/machinery/computer/secure_data, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"aWH" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/blue/side{ + dir = 4 + }, +/area/hallway/primary/central) +"aWI" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + name = "bridge blast door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/bridge) +"aWJ" = ( +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/door/airlock/glass_command{ + cyclelinkeddir = 4; + name = "Bridge"; + req_access_txt = "19" + }, +/turf/open/floor/plasteel, +/area/bridge) +"aWK" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/bridge) +"aWL" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/glass_command{ + cyclelinkeddir = 8; + name = "Bridge"; + req_access_txt = "19" + }, +/turf/open/floor/plasteel, +/area/bridge) +"aWM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aWN" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aWO" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 + }, +/obj/machinery/light, +/obj/machinery/light_switch{ + pixel_x = -6; + pixel_y = -22 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aWP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/corner, +/area/bridge) +"aWQ" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aWR" = ( +/obj/structure/fireaxecabinet{ + pixel_y = -32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aWS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aWT" = ( +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Bridge"; + departmentType = 5; + name = "Bridge RC"; + pixel_y = -30 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aWU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aWV" = ( +/obj/machinery/turretid{ + control_area = "AI Upload Chamber"; + name = "AI Upload turret control"; + pixel_y = -25 + }, +/obj/machinery/camera{ + c_tag = "Bridge Center"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aWW" = ( +/obj/machinery/power/apc{ + cell_type = 5000; + dir = 2; + name = "Bridge APC"; + pixel_y = -24 + }, +/obj/structure/cable, +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aWX" = ( +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aWY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/bridge) +"aWZ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/bridge) +"aXa" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aXb" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + name = "bridge blast door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/bridge) +"aXc" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/glass_command{ + cyclelinkeddir = 4; + name = "Bridge"; + req_access_txt = "19" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aXd" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 8 + }, +/area/hallway/primary/central) +"aXe" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/door/airlock/glass_command{ + cyclelinkeddir = 8; + name = "Bridge"; + req_access_txt = "19" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/bridge) +"aXf" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aXg" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aXh" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"aXi" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = -31 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aXj" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/lighter, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aXk" = ( +/obj/structure/table/reinforced, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = 32 + }, +/obj/item/weapon/book/manual/barman_recipes, +/obj/item/weapon/reagent_containers/glass/rag, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aXl" = ( +/obj/machinery/door/window/southright{ + name = "Bar Door"; + req_access_txt = "0"; + req_one_access_txt = "25;28" + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aXm" = ( +/obj/effect/landmark/start{ + name = "Cook" + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aXn" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder, +/obj/machinery/requests_console{ + department = "Kitchen"; + departmentType = 2; + pixel_x = 30; + pixel_y = 0 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aXo" = ( +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/hydroponics) +"aXp" = ( +/obj/machinery/door/airlock{ + name = "Unisex Restrooms"; + req_access_txt = "0" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"aXq" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"aXr" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aXs" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aXt" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aXu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/library) +"aXv" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aXw" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aXx" = ( +/obj/structure/closet/secure_closet/personal, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aXy" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Chapel" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/chapel/main) +"aXz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/carpet, +/area/chapel/main) +"aXA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aXB" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/carpet, +/area/chapel/main) +"aXC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aXD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/escape{ + dir = 8 + }, +/area/hallway/secondary/exit) +"aXE" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/closed/wall, +/area/maintenance/port) +"aXF" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/crew_quarters/fitness) +"aXG" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aXH" = ( +/obj/structure/table, +/obj/machinery/button/door{ + id = "syndieshutters"; + name = "remote shutter control"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"aXI" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + id_tag = null; + name = "Port Docking Bay 2"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"aXJ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/maintenance/port) +"aXK" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/closed/wall, +/area/security/detectives_office) +"aXL" = ( +/turf/open/floor/carpet, +/area/security/vacantoffice) +"aXM" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/obj/machinery/door/airlock/maintenance{ + name = "Cargo Bay Warehouse Maintenance"; + req_access_txt = "31" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aXN" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aXO" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aXP" = ( +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating, +/area/maintenance/port) +"aXQ" = ( +/turf/closed/wall, +/area/crew_quarters/locker/locker_toilet) +"aXR" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"aXS" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/closed/wall, +/area/hydroponics) +"aXT" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Library" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/library) +"aXU" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/carpet, +/area/library) +"aXV" = ( +/obj/machinery/holopad, +/turf/open/floor/carpet, +/area/library) +"aXW" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/carpet, +/area/chapel/main) +"aXX" = ( +/obj/machinery/door/airlock/engineering{ + name = "Vacant Office A"; + req_access_txt = "32" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aXY" = ( +/obj/structure/chair/office/dark, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aXZ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/security/vacantoffice) +"aYa" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Locker Room Maintenance APC"; + pixel_x = -27; + pixel_y = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-2"; + pixel_y = 1; + d2 = 2 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aYb" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aYc" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/port) +"aYd" = ( +/obj/structure/chair/office/dark, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aYe" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"aYf" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aYg" = ( +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/construction) +"aYh" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aYi" = ( +/obj/structure/closet/secure_closet/detective, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"aYj" = ( +/obj/structure/table/wood, +/obj/item/device/taperecorder, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/button/door{ + id = "kanyewest"; + name = "Privacy Shutters"; + pixel_x = 0; + pixel_y = 24 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"aYk" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/hallway/primary/central) +"aYl" = ( +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/central) +"aYm" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/blue/side{ + dir = 6 + }, +/area/hallway/primary/central) +"aYn" = ( +/obj/machinery/camera{ + c_tag = "Bridge West Entrance"; + dir = 1 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/hallway/primary/central) +"aYo" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + name = "bridge blast door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/bridge) +"aYp" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/bridge) +"aYq" = ( +/obj/structure/closet/emcloset, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aYr" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aYs" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aYt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"aYu" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/blue/side{ + dir = 6 + }, +/area/bridge) +"aYv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"aYw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/highsecurity{ + icon_state = "door_closed"; + locked = 0; + name = "AI Upload Access"; + req_access_txt = "16" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"aYx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"aYy" = ( +/obj/machinery/ai_status_display, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"aYz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"aYA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"aYB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"aYC" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/structure/filingcabinet/filingcabinet, +/turf/open/floor/plasteel/blue/side{ + dir = 10 + }, +/area/bridge) +"aYD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/bridge) +"aYE" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/blue/side{ + dir = 10 + }, +/area/hallway/primary/central) +"aYF" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Central Hall APC"; + pixel_y = -24 + }, +/obj/structure/cable, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/hallway/primary/central) +"aYG" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"aYH" = ( +/obj/structure/table, +/obj/item/weapon/razor, +/obj/structure/window{ + icon_state = "window"; + dir = 1 + }, +/turf/open/floor/plasteel/barber, +/area/crew_quarters/locker) +"aYI" = ( +/obj/structure/chair/stool/bar, +/obj/effect/landmark/start{ + name = "Assistant" + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aYJ" = ( +/obj/machinery/light_switch{ + pixel_y = -25 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aYK" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock{ + name = "Kitchen"; + req_access_txt = "28" + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/kitchen) +"aYL" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aYM" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/button/door{ + id = "kitchen"; + name = "Kitchen Shutters Control"; + pixel_x = -1; + pixel_y = -24; + req_access_txt = "28" + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aYN" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"aYO" = ( +/obj/item/weapon/reagent_containers/glass/bucket, +/turf/open/floor/plasteel, +/area/hydroponics) +"aYP" = ( +/obj/structure/reagent_dispensers/watertank/high, +/turf/open/floor/plasteel, +/area/hydroponics) +"aYQ" = ( +/obj/machinery/hydroponics/constructable, +/turf/open/floor/plasteel/green/side{ + dir = 1 + }, +/area/hydroponics) +"aYR" = ( +/obj/structure/chair/stool, +/obj/effect/landmark/start{ + name = "Botanist" + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"aYS" = ( +/obj/structure/closet, +/obj/item/clothing/under/suit_jacket/female{ + pixel_x = 3; + pixel_y = 1 + }, +/obj/item/clothing/under/suit_jacket/really_black{ + pixel_x = -2; + pixel_y = 0 + }, +/obj/structure/window{ + icon_state = "window"; + dir = 1 + }, +/turf/open/floor/plasteel/barber, +/area/crew_quarters/locker) +"aYT" = ( +/obj/machinery/camera{ + c_tag = "Hydroponics South"; + dir = 8; + network = list("SS13") + }, +/obj/structure/reagent_dispensers/watertank/high, +/turf/open/floor/plasteel, +/area/hydroponics) +"aYU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aYV" = ( +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"aYW" = ( +/turf/open/floor/carpet, +/area/library) +"aYX" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aYY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/library) +"aYZ" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/box/evidence, +/obj/item/weapon/hand_labeler{ + pixel_x = 5 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"aZa" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"aZb" = ( +/obj/machinery/camera{ + c_tag = "Bar South"; + dir = 1 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"aZc" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"aZd" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/wood, +/area/library) +"aZe" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Chapel" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/chapel/main) +"aZf" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/chapel/main) +"aZg" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/carpet, +/area/chapel/main) +"aZh" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/carpet, +/area/chapel/main) +"aZi" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aZj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/escape{ + dir = 8 + }, +/area/hallway/secondary/exit) +"aZk" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aZl" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aZm" = ( +/obj/machinery/camera{ + c_tag = "Escape Arm Airlocks"; + dir = 8; + network = list("SS13") + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"aZn" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/blue, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/security/vacantoffice) +"aZo" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"aZp" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/electronics/apc, +/obj/item/weapon/stock_parts/cell{ + maxcharge = 2000 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"aZq" = ( +/obj/machinery/button/door{ + id = "heads_meeting"; + name = "Security Shutters"; + pixel_x = 0; + pixel_y = 24 + }, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"aZr" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aZs" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aZt" = ( +/obj/structure/toilet{ + pixel_y = 8 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"aZu" = ( +/obj/machinery/photocopier, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"aZv" = ( +/obj/machinery/door/airlock{ + name = "Unit 1" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"aZw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"aZx" = ( +/turf/open/floor/plasteel/barber, +/area/crew_quarters/locker) +"aZy" = ( +/obj/machinery/camera{ + c_tag = "Conference Room"; + dir = 2 + }, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"aZz" = ( +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"aZA" = ( +/obj/machinery/portable_atmospherics/scrubber, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aZB" = ( +/obj/machinery/portable_atmospherics/pump, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"aZC" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"aZD" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"aZE" = ( +/turf/closed/wall, +/area/quartermaster/storage) +"aZF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/maintenance/port) +"aZG" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"aZH" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "packageSort2" + }, +/turf/open/floor/plating, +/area/quartermaster/office) +"aZI" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/stack/sheet/cardboard, +/obj/item/stack/rods{ + amount = 50 + }, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"aZJ" = ( +/obj/structure/table/wood, +/obj/item/device/camera/detective, +/turf/open/floor/carpet, +/area/security/detectives_office) +"aZK" = ( +/turf/closed/wall, +/area/quartermaster/office) +"aZL" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"aZM" = ( +/turf/closed/wall/r_wall, +/area/bridge/meeting_room) +"aZN" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/central) +"aZO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/bridge/meeting_room) +"aZP" = ( +/turf/closed/wall, +/area/bridge/meeting_room) +"aZQ" = ( +/obj/machinery/door/airlock/command{ + name = "Conference Room"; + req_access = null; + req_access_txt = "19" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"aZR" = ( +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai_upload) +"aZS" = ( +/obj/machinery/porta_turret/ai{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"aZT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"aZU" = ( +/obj/machinery/porta_turret/ai{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"aZV" = ( +/turf/closed/wall/r_wall, +/area/crew_quarters/captain) +"aZW" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/crew_quarters/captain) +"aZX" = ( +/obj/machinery/door/airlock/command{ + name = "Captain's Office"; + req_access = null; + req_access_txt = "20" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"aZY" = ( +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"aZZ" = ( +/obj/machinery/vending/cigarette{ + pixel_x = 0; + pixel_y = 0 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"baa" = ( +/obj/machinery/computer/arcade, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"bab" = ( +/obj/machinery/light, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"bac" = ( +/obj/machinery/newscaster{ + pixel_y = -28 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"bad" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"bae" = ( +/obj/structure/noticeboard{ + pixel_y = -27 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"baf" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bag" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"bah" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 0; + pixel_y = -30 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"bai" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"baj" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/fancy/donut_box, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "kitchen"; + name = "kitchen shutters" + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"bak" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "kitchen"; + name = "kitchen shutters" + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"bal" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"bam" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/hydroponics) +"ban" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/machinery/door/window/northleft{ + name = "Hydroponics Desk"; + req_access_txt = "35" + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"bao" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bap" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/machinery/door/window/westright{ + dir = 1; + name = "Hydroponics Desk"; + req_access_txt = "35" + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"baq" = ( +/obj/machinery/ai_status_display{ + pixel_y = 32 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bar" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bas" = ( +/obj/machinery/vending/coffee, +/turf/open/floor/wood, +/area/library) +"bat" = ( +/obj/structure/table/wood, +/obj/item/weapon/pen, +/turf/open/floor/wood, +/area/library) +"bau" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/wood, +/area/library) +"bav" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/wood, +/area/library) +"baw" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = 28 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"bax" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/turf/open/floor/wood, +/area/library) +"bay" = ( +/obj/structure/chair/comfy/black, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"baz" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"baA" = ( +/turf/open/floor/carpet{ + icon_state = "carpetsymbol" + }, +/area/chapel/main) +"baB" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"baC" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"baD" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Escape Hallway APC"; + pixel_x = -25 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/escape{ + dir = 8 + }, +/area/hallway/secondary/exit) +"baE" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"baF" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"baG" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"baH" = ( +/obj/structure/table/wood, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/security/vacantoffice) +"baI" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"baJ" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/turf/open/floor/wood, +/area/security/vacantoffice) +"baK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"baL" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"baM" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/power/apc{ + dir = 4; + name = "Locker Restrooms APC"; + pixel_x = 27; + pixel_y = 2 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/crew_quarters/locker/locker_toilet) +"baN" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"baO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"baP" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"baQ" = ( +/obj/structure/chair/comfy/brown{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"baR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"baS" = ( +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"baT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"baU" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"baV" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/security{ + name = "Detective's Office"; + req_access_txt = "4" + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"baW" = ( +/obj/item/weapon/storage/secure/safe{ + pixel_x = -23 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"baX" = ( +/obj/structure/chair/comfy/brown, +/obj/effect/landmark/start{ + name = "Detective" + }, +/turf/open/floor/carpet, +/area/security/detectives_office) +"baY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/closet/crate, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"baZ" = ( +/obj/machinery/status_display{ + layer = 4; + pixel_x = 0; + pixel_y = 32 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bba" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bbb" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 1 + }, +/area/hallway/secondary/entry) +"bbc" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bbd" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bbe" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bbf" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bbg" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bbh" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bbi" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bbj" = ( +/obj/structure/table, +/obj/item/weapon/aiModule/reset, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bbk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"bbl" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/crew_quarters/sleep) +"bbm" = ( +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bbn" = ( +/obj/structure/table, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bbo" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bbp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"bbq" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"bbr" = ( +/obj/machinery/camera{ + c_tag = "Locker Room South"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"bbs" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/locker) +"bbt" = ( +/obj/structure/closet/crate, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bbu" = ( +/obj/machinery/power/apc{ + cell_type = 2500; + dir = 1; + name = "Captain's Office APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bbv" = ( +/obj/machinery/status_display{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bbw" = ( +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bbx" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Diner" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/bar) +"bby" = ( +/obj/structure/sign/barsign, +/turf/closed/wall, +/area/crew_quarters/bar) +"bbz" = ( +/turf/open/floor/plasteel/white/corner{ + dir = 1 + }, +/area/hallway/primary/starboard) +"bbA" = ( +/obj/machinery/camera{ + c_tag = "Starboard Primary Hallway 2"; + dir = 2; + network = list("SS13") + }, +/turf/open/floor/plasteel/white/corner{ + dir = 1 + }, +/area/hallway/primary/starboard) +"bbB" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Hydroponics"; + req_access_txt = "35" + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"bbC" = ( +/obj/structure/chair/comfy/black{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bbD" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/library) +"bbE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/library) +"bbF" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/chapel/main) +"bbG" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/plasteel/escape{ + dir = 8 + }, +/area/hallway/secondary/exit) +"bbH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bbI" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Vacant Office A APC"; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/security/vacantoffice{ + name = "Vacant Office A" + }) +"bbJ" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bbK" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bbL" = ( +/obj/machinery/door/airlock{ + name = "Unit 2" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"bbM" = ( +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/structure/table/wood, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bbN" = ( +/obj/machinery/washing_machine, +/obj/machinery/light, +/turf/open/floor/plasteel/barber, +/area/crew_quarters/locker) +"bbO" = ( +/obj/machinery/washing_machine, +/turf/open/floor/plasteel/barber, +/area/crew_quarters/locker) +"bbP" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bbQ" = ( +/obj/structure/table/wood, +/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{ + pixel_x = 3 + }, +/obj/item/weapon/lighter, +/turf/open/floor/carpet, +/area/security/detectives_office) +"bbR" = ( +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bbS" = ( +/obj/structure/closet/crate, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bbT" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green, +/turf/open/floor/carpet, +/area/security/detectives_office) +"bbU" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Detective Maintenance"; + req_access_txt = "4" + }, +/turf/open/floor/plating, +/area/security/detectives_office) +"bbV" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bbW" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "heads_meeting"; + layer = 2.9; + name = "privacy shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/bridge/meeting_room) +"bbX" = ( +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bbY" = ( +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/structure/table, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bbZ" = ( +/obj/structure/table/wood, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bca" = ( +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bcb" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bcc" = ( +/obj/machinery/vending/snack/random, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bcd" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bce" = ( +/obj/structure/table, +/obj/item/weapon/aiModule/supplied/quarantine, +/obj/machinery/camera/motion{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bcf" = ( +/obj/machinery/holopad, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bcg" = ( +/obj/structure/table, +/obj/item/weapon/aiModule/supplied/freeform, +/obj/structure/sign/kiddieplaque{ + pixel_x = 32 + }, +/obj/machinery/camera/motion{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bch" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bci" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bcj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/junction{ + dir = 8; + icon_state = "pipe-j1" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bck" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bcl" = ( +/obj/structure/disposalpipe/segment, +/turf/closed/wall, +/area/maintenance/disposal) +"bcm" = ( +/obj/structure/chair/comfy/brown{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bcn" = ( +/obj/structure/displaycase/captain, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bco" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=Dorm"; + location = "HOP2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bcp" = ( +/obj/structure/sign/directions/evac{ + dir = 4; + icon_state = "direction_evac"; + pixel_x = 32; + pixel_y = 28 + }, +/obj/structure/sign/directions/security{ + dir = 1; + icon_state = "direction_sec"; + pixel_x = 32; + pixel_y = 36 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bcq" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bcr" = ( +/obj/machinery/camera{ + c_tag = "Starboard Primary Hallway"; + dir = 2; + network = list("SS13") + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bcs" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bct" = ( +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"bcu" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bcv" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bcw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/crew_quarters/locker) +"bcx" = ( +/obj/machinery/camera{ + c_tag = "Starboard Primary Hallway 5"; + dir = 2; + network = list("SS13") + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bcy" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/white/corner{ + dir = 4 + }, +/area/hallway/secondary/exit) +"bcz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bcA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bcB" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 32; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bcC" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bcD" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"bcE" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bcF" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bcG" = ( +/obj/structure/table/wood, +/obj/machinery/computer/security/wooden_tv, +/turf/open/floor/carpet, +/area/security/detectives_office) +"bcH" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/fancy/cigarettes, +/obj/item/clothing/glasses/sunglasses, +/turf/open/floor/carpet, +/area/security/detectives_office) +"bcI" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/maintenance/port) +"bcJ" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/structure/closet/crate/freezer, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bcK" = ( +/obj/structure/rack{ + dir = 4 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/port) +"bcL" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-j2"; + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bcM" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bcN" = ( +/obj/item/weapon/folder/blue, +/obj/structure/table/wood, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bcO" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"bcP" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bcQ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bcR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bcS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bcT" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/quartermaster/storage) +"bcU" = ( +/obj/item/stack/tile/plasteel, +/turf/open/space, +/area/space/nearstation) +"bcV" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/filingcabinet, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"bcW" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bcX" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "heads_meeting"; + layer = 2.9; + name = "privacy shutters" + }, +/turf/open/floor/plating, +/area/bridge/meeting_room) +"bcY" = ( +/obj/item/weapon/hand_labeler, +/obj/item/device/assembly/timer, +/obj/structure/table, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bcZ" = ( +/obj/structure/table/wood, +/obj/item/device/radio/intercom{ + dir = 8; + freerange = 1; + name = "Station Intercom (Command)"; + pixel_x = 0 + }, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bda" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bdb" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white/side{ + dir = 2 + }, +/area/hallway/primary/starboard) +"bdc" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 0; + pixel_y = -30 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/white/corner{ + dir = 2 + }, +/area/hallway/primary/starboard) +"bdd" = ( +/obj/machinery/vending/cola/random, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bde" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bdf" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23; + pixel_y = 0 + }, +/obj/machinery/porta_turret/ai{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bdg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai_upload) +"bdh" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/ai_upload) +"bdi" = ( +/obj/machinery/computer/arcade, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bdj" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bdk" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bdl" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bdm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bdn" = ( +/obj/machinery/camera{ + c_tag = "Central Hallway East"; + dir = 4; + network = list("SS13") + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"bdo" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bdp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bdq" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bdr" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bds" = ( +/obj/machinery/camera{ + c_tag = "Starboard Primary Hallway 4"; + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bdt" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bdu" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bdv" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=HOP2"; + location = "Stbd" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bdw" = ( +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bdx" = ( +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bdy" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bdz" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bdA" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Cargo Escape Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"bdB" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bdC" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/sortjunction{ + dir = 1; + icon_state = "pipe-j2s"; + sortType = 1 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bdD" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bdE" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"bdF" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bdG" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bdH" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bdI" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bdJ" = ( +/obj/machinery/door/airlock{ + name = "Unit 3" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"bdK" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bdL" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/item/clothing/suit/ianshirt, +/obj/structure/closet, +/turf/open/floor/plating, +/area/maintenance/port) +"bdM" = ( +/obj/item/latexballon, +/turf/open/floor/plating, +/area/maintenance/port) +"bdN" = ( +/obj/machinery/door/airlock/medical{ + name = "Morgue"; + req_access_txt = "6" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bdO" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bdP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/assembly/chargebay) +"bdQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/closed/wall, +/area/maintenance/disposal) +"bdR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bdS" = ( +/obj/structure/closet/crate/internals, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bdT" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Disposal APC"; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bdU" = ( +/obj/structure/closet/crate/medical, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bdV" = ( +/obj/item/stack/sheet/metal, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"bdW" = ( +/obj/item/clothing/gloves/color/rainbow, +/obj/item/clothing/head/soft/rainbow, +/obj/item/clothing/shoes/sneakers/rainbow, +/obj/item/clothing/under/color/rainbow, +/turf/open/floor/plating, +/area/maintenance/port) +"bdX" = ( +/obj/item/weapon/storage/fancy/donut_box, +/obj/structure/table, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bdY" = ( +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/obj/structure/table/wood, +/turf/open/floor/carpet, +/area/bridge/meeting_room) +"bdZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bea" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"beb" = ( +/obj/structure/table, +/obj/item/weapon/aiModule/core/full/asimov, +/obj/item/weapon/aiModule/core/freeformcore, +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Core Modules"; + req_access_txt = "20" + }, +/obj/structure/window/reinforced, +/obj/item/weapon/aiModule/core/full/corp, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/weapon/aiModule/core/full/custom, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bec" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bed" = ( +/obj/machinery/power/apc{ + cell_type = 5000; + dir = 2; + name = "Upload APC"; + pixel_y = -24 + }, +/obj/structure/cable, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai_upload) +"bee" = ( +/obj/machinery/computer/upload/ai, +/obj/machinery/flasher{ + id = "AI"; + pixel_x = 0; + pixel_y = -21 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai_upload) +"bef" = ( +/obj/machinery/computer/upload/borg, +/obj/item/device/radio/intercom{ + broadcasting = 1; + frequency = 1447; + listening = 0; + name = "Station Intercom (AI Private)"; + pixel_y = -29 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai_upload) +"beg" = ( +/obj/structure/table, +/obj/item/weapon/aiModule/supplied/oxygen, +/obj/item/weapon/aiModule/zeroth/oneHuman, +/obj/machinery/door/window{ + base_state = "left"; + dir = 8; + icon_state = "left"; + name = "High-Risk Modules"; + req_access_txt = "20" + }, +/obj/item/weapon/aiModule/reset/purge, +/obj/structure/window/reinforced, +/obj/item/weapon/aiModule/core/full/antimov, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/weapon/aiModule/supplied/protectStation, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"beh" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"bei" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bej" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bek" = ( +/obj/structure/chair, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bel" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bem" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"ben" = ( +/obj/structure/table/wood, +/obj/machinery/camera{ + c_tag = "Captain's Office"; + dir = 8 + }, +/obj/item/weapon/storage/lockbox/medal{ + pixel_y = 0 + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"beo" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=Stbd"; + location = "HOP" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bep" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"beq" = ( +/obj/structure/sign/directions/medical{ + dir = 4; + icon_state = "direction_med"; + pixel_x = 32; + pixel_y = -24 + }, +/obj/structure/sign/directions/science{ + dir = 4; + icon_state = "direction_sci"; + pixel_x = 32; + pixel_y = -32 + }, +/obj/structure/sign/directions/engineering{ + pixel_x = 32; + pixel_y = -40 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"ber" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 0; + pixel_y = -30 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bes" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/starboard) +"bet" = ( +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/hallway/primary/starboard) +"beu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/hallway/primary/starboard) +"bev" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/starboard) +"bew" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bex" = ( +/obj/machinery/button/door{ + id = "qm_warehouse"; + name = "Warehouse Door Control"; + pixel_x = -1; + pixel_y = -24; + req_access_txt = "31" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/obj/structure/closet/crate, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bey" = ( +/turf/open/floor/plasteel/white/corner{ + dir = 8 + }, +/area/hallway/primary/starboard) +"bez" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"beA" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "packageSort2" + }, +/obj/structure/plasticflaps, +/turf/open/floor/plating, +/area/quartermaster/office) +"beB" = ( +/obj/machinery/camera{ + c_tag = "Starboard Primary Hallway 3"; + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"beC" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"beD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/obj/structure/closet/crate, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"beE" = ( +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"beF" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/quartermaster/office) +"beG" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/hallway/secondary/exit) +"beH" = ( +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/escape{ + dir = 2 + }, +/area/hallway/secondary/exit) +"beI" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 + }, +/turf/open/floor/plasteel/escape{ + dir = 2 + }, +/area/hallway/secondary/exit) +"beJ" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white/corner{ + dir = 8 + }, +/area/hallway/secondary/exit) +"beK" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Port Docking Bay 4"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"beL" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Port Docking Bay 3"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"beM" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"beN" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"beO" = ( +/turf/closed/wall, +/area/maintenance/disposal) +"beP" = ( +/obj/machinery/conveyor{ + dir = 8; + id = "garbage" + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"beQ" = ( +/obj/structure/disposaloutlet{ + dir = 4 + }, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"beR" = ( +/obj/machinery/conveyor{ + dir = 8; + id = "garbage" + }, +/obj/machinery/recycler, +/obj/structure/sign/securearea{ + name = "\improper STAY CLEAR HEAVY MACHINERY"; + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"beS" = ( +/obj/machinery/conveyor{ + dir = 8; + id = "garbage" + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"beT" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/maintenance/disposal) +"beU" = ( +/obj/machinery/conveyor{ + dir = 6; + id = "garbage"; + verted = -1 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"beV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/quartermaster/office) +"beW" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1; + layer = 2.9 + }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/structure/table/reinforced, +/obj/item/stack/wrapping_paper{ + pixel_x = 3; + pixel_y = 4 + }, +/obj/item/stack/packageWrap{ + pixel_x = -1; + pixel_y = -1 + }, +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/quartermaster/office) +"beX" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"beY" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"beZ" = ( +/obj/machinery/mineral/stacking_unit_console{ + dir = 2; + machinedir = 8 + }, +/turf/closed/wall, +/area/maintenance/disposal) +"bfa" = ( +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"bfb" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/obj/effect/landmark/event_spawn, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/chapel/main) +"bfc" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Locker Room APC"; + pixel_x = 0; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/crew_quarters/locker) +"bfd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bfe" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bff" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bfg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/item/stack/sheet/cardboard, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bfh" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/maintenance/port) +"bfi" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bfj" = ( +/obj/structure/disposalpipe/trunk, +/obj/structure/disposaloutlet{ + dir = 4 + }, +/turf/open/floor/plating, +/area/quartermaster/office) +"bfk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/power/apc{ + dir = 2; + name = "Cargo Bay APC"; + pixel_x = 1; + pixel_y = -24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bfl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bfm" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/quartermaster/office) +"bfn" = ( +/obj/machinery/disposal/deliveryChute{ + dir = 8 + }, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/turf/open/floor/plating, +/area/quartermaster/office) +"bfo" = ( +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"bfp" = ( +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Bridge"; + departmentType = 5; + name = "Bridge RC"; + pixel_y = -30 + }, +/obj/machinery/light, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bfq" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bfr" = ( +/obj/structure/noticeboard{ + dir = 8; + pixel_x = 27; + pixel_y = 0 + }, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bfs" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"bft" = ( +/obj/machinery/ai_status_display, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"bfu" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"bfv" = ( +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"bfw" = ( +/obj/machinery/status_display{ + density = 0; + layer = 4 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"bfx" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"bfy" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bfz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai_upload) +"bfA" = ( +/obj/structure/table/wood, +/obj/item/weapon/hand_tele, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bfB" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/blue, +/obj/item/weapon/stamp/captain, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bfC" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bfD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bfE" = ( +/obj/structure/table/wood, +/obj/item/weapon/pinpointer, +/obj/item/weapon/disk/nuclear, +/obj/item/weapon/storage/secure/safe{ + pixel_x = 35; + pixel_y = 5 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bfF" = ( +/turf/closed/wall, +/area/medical/chemistry) +"bfG" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/medical/medbay) +"bfH" = ( +/obj/structure/sign/bluecross_2, +/turf/closed/wall, +/area/medical/medbay) +"bfI" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bfJ" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bfK" = ( +/turf/closed/wall, +/area/security/checkpoint/medical) +"bfL" = ( +/turf/closed/wall, +/area/medical/morgue) +"bfM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bfN" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bfO" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bfP" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Starboard Primary Hallway APC"; + pixel_y = -24 + }, +/obj/structure/cable, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"bfQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/quartermaster/office) +"bfR" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/hand_labeler{ + pixel_y = 8 + }, +/obj/item/weapon/hand_labeler{ + pixel_y = 8 + }, +/obj/item/weapon/storage/box, +/obj/item/weapon/storage/box, +/obj/item/weapon/storage/box, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bfS" = ( +/turf/closed/wall, +/area/storage/emergency) +"bfT" = ( +/turf/closed/wall, +/area/assembly/chargebay) +"bfU" = ( +/turf/open/floor/plasteel/loadingarea{ + dir = 1 + }, +/area/hallway/primary/starboard) +"bfV" = ( +/turf/closed/wall/r_wall, +/area/assembly/robotics) +"bfW" = ( +/turf/open/floor/plasteel/purple/side{ + dir = 10 + }, +/area/hallway/primary/starboard) +"bfX" = ( +/turf/open/floor/plasteel/purple/side{ + dir = 2 + }, +/area/hallway/primary/starboard) +"bfY" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/turf/open/floor/plasteel/purple/side{ + dir = 2 + }, +/area/hallway/primary/starboard) +"bfZ" = ( +/obj/structure/sign/securearea{ + pixel_x = 0; + pixel_y = -32 + }, +/turf/open/floor/plasteel/purple/side{ + dir = 2 + }, +/area/hallway/primary/starboard) +"bga" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/purple/side{ + dir = 2 + }, +/area/hallway/primary/starboard) +"bgb" = ( +/turf/open/floor/plasteel/purple/side{ + dir = 6 + }, +/area/hallway/primary/starboard) +"bgc" = ( +/turf/closed/wall/r_wall, +/area/toxins/lab) +"bgd" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/escape{ + dir = 2 + }, +/area/hallway/secondary/exit) +"bge" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/escape{ + dir = 10 + }, +/area/hallway/secondary/exit) +"bgf" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bgg" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"bgh" = ( +/obj/machinery/vending/cigarette, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"bgi" = ( +/obj/machinery/camera{ + c_tag = "Arrivals Bay 3 & 4"; + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"bgj" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "garbage" + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bgk" = ( +/obj/machinery/conveyor{ + dir = 5; + id = "garbage" + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bgl" = ( +/obj/machinery/conveyor{ + dir = 10; + id = "garbage"; + verted = -1 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bgm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bgn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"bgo" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/power/apc{ + dir = 4; + name = "Mech Bay APC"; + pixel_x = 26; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/assembly/chargebay) +"bgp" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bgq" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bgr" = ( +/obj/machinery/door/airlock{ + name = "Unit 4" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"bgs" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"bgt" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/port) +"bgu" = ( +/obj/machinery/button/door{ + id = "qm_warehouse"; + name = "Warehouse Door Control"; + pixel_x = -1; + pixel_y = 24; + req_access_txt = "31" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bgv" = ( +/obj/structure/disposalpipe/segment, +/turf/closed/wall, +/area/quartermaster/office) +"bgw" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/port) +"bgx" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bgy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/closed/wall, +/area/maintenance/port) +"bgz" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bgA" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"bgB" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/closed/wall, +/area/quartermaster/storage) +"bgC" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/closed/wall, +/area/quartermaster/office) +"bgD" = ( +/obj/machinery/conveyor_switch/oneway{ + id = "packageSort2" + }, +/obj/machinery/camera{ + c_tag = "Cargo Delivery Office"; + dir = 4; + network = list("SS13") + }, +/obj/machinery/requests_console{ + department = "Cargo Bay"; + departmentType = 2; + pixel_x = -30; + pixel_y = 0 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/quartermaster/office) +"bgE" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/obj/machinery/airalarm{ + dir = 4; + locked = 0; + pixel_x = -23; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bgF" = ( +/obj/structure/table/glass, +/obj/machinery/reagentgrinder, +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bgG" = ( +/obj/machinery/camera{ + c_tag = "Central Hallway West"; + dir = 8 + }, +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/central) +"bgH" = ( +/obj/machinery/door/window/eastright{ + dir = 1; + name = "Bridge Delivery"; + req_access_txt = "19" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/bridge/meeting_room) +"bgI" = ( +/obj/machinery/computer/slot_machine, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bgJ" = ( +/obj/structure/reagent_dispensers/water_cooler, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bgK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bgL" = ( +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = 0; + pixel_y = -32 + }, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bgM" = ( +/obj/machinery/vending/coffee, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bgN" = ( +/turf/open/floor/plasteel/black, +/area/engine/gravity_generator) +"bgO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"bgP" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bgQ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 2 + }, +/area/medical/medbay) +"bgR" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"bgS" = ( +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Captain's Desk"; + departmentType = 5; + name = "Captain RC"; + pixel_x = -30; + pixel_y = 0 + }, +/obj/structure/filingcabinet, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bgT" = ( +/obj/machinery/computer/communications, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bgU" = ( +/obj/structure/chair/comfy/brown{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Captain" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bgV" = ( +/obj/structure/table/wood, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/weapon/coin/plasma, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bgW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/holopad, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bgX" = ( +/obj/structure/table/wood, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/item/device/camera, +/obj/item/weapon/storage/photo_album{ + pixel_y = -10 + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bgY" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bgZ" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Chemistry APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/mob/living/simple_animal/bot/cleanbot{ + name = "C.L.E.A.N." + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bha" = ( +/obj/structure/closet/secure_closet/chemical, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bhb" = ( +/obj/machinery/chem_dispenser, +/turf/open/floor/plasteel/whiteyellow/side{ + dir = 1 + }, +/area/medical/chemistry) +"bhc" = ( +/obj/machinery/camera{ + c_tag = "Chemistry"; + dir = 2; + network = list("SS13") + }, +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/machinery/chem_heater, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bhd" = ( +/obj/machinery/chem_master, +/turf/open/floor/plasteel/whiteyellow/side{ + dir = 5 + }, +/area/medical/chemistry) +"bhe" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bhf" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 0; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bhg" = ( +/turf/open/floor/plasteel/whiteblue/side{ + dir = 2 + }, +/area/medical/medbay) +"bhh" = ( +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bhi" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/checkpoint/medical) +"bhj" = ( +/obj/machinery/camera{ + c_tag = "Security Post - Medbay"; + dir = 2; + network = list("SS13") + }, +/obj/machinery/requests_console{ + department = "Security"; + departmentType = 5; + pixel_y = 30 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint/medical) +"bhk" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/weapon/pen, +/obj/machinery/button/door{ + desc = "A remote control switch for the medbay foyer."; + id = "MedbayFoyer"; + name = "Medbay Doors Control"; + normaldoorcontrol = 1; + pixel_x = 0; + pixel_y = 26; + req_access_txt = "5" + }, +/obj/item/weapon/book/manual/wiki/security_space_law, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/checkpoint/medical) +"bhl" = ( +/obj/structure/filingcabinet, +/obj/machinery/newscaster{ + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/checkpoint/medical) +"bhm" = ( +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bhn" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/bodybags, +/obj/item/weapon/pen, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bho" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bhp" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Morgue APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bhq" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bhr" = ( +/obj/machinery/door/airlock{ + name = "Starboard Emergency Storage"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/storage/emergency) +"bhs" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint/medical) +"bht" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/research{ + name = "Mech Bay"; + req_access_txt = "29"; + req_one_access_txt = "0" + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bhu" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters{ + id = "Skynet_launch"; + name = "mech bay" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bhv" = ( +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/whitered/side{ + dir = 8 + }, +/area/assembly/robotics) +"bhw" = ( +/obj/machinery/computer/rdconsole/robotics, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bhx" = ( +/obj/machinery/requests_console{ + department = "Robotics"; + departmentType = 2; + name = "Robotics RC"; + pixel_y = 30; + receive_ore_updates = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/r_n_d/circuit_imprinter, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bhy" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "robotics"; + name = "robotics lab shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/assembly/robotics) +"bhz" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/eastright{ + base_state = "left"; + dir = 2; + icon_state = "left"; + name = "Robotics Desk"; + req_access_txt = "29" + }, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "robotics"; + name = "robotics lab shutters" + }, +/turf/open/floor/plating, +/area/assembly/robotics) +"bhA" = ( +/turf/closed/wall, +/area/medical/research{ + name = "Research Division" + }) +"bhB" = ( +/obj/machinery/door/airlock/research{ + cyclelinkeddir = 2; + name = "Research Division Access"; + req_access_txt = "47" + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bhC" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "rnd"; + name = "research lab shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/toxins/lab) +"bhD" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/southright{ + name = "Research and Development Desk"; + req_access_txt = "7" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "rnd"; + name = "research lab shutters" + }, +/turf/open/floor/plating, +/area/toxins/lab) +"bhE" = ( +/obj/structure/table, +/obj/item/stack/sheet/glass{ + amount = 50; + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/clothing/glasses/welding, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bhF" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bhG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/maintenance/asmaint2) +"bhH" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bhI" = ( +/obj/machinery/conveyor{ + dir = 1; + id = "garbage" + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bhJ" = ( +/obj/structure/disposalpipe/trunk{ + dir = 2 + }, +/obj/machinery/disposal/deliveryChute{ + dir = 4 + }, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right"; + layer = 3 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bhK" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bhL" = ( +/obj/machinery/mineral/stacking_machine{ + input_dir = 1; + stack_amt = 10 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bhM" = ( +/turf/open/floor/circuit, +/area/assembly/chargebay) +"bhN" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bhO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bhP" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bhQ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/crew_quarters/locker/locker_toilet) +"bhR" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/window{ + icon_state = "window"; + dir = 1 + }, +/obj/structure/window, +/turf/open/floor/plating, +/area/maintenance/port) +"bhS" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/window{ + icon_state = "window"; + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bhT" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/window, +/turf/open/floor/plating, +/area/maintenance/port) +"bhU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bhV" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bhW" = ( +/obj/machinery/door/poddoor/shutters{ + id = "qm_warehouse"; + name = "warehouse shutters" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/quartermaster/storage) +"bhX" = ( +/obj/structure/disposalpipe/wrapsortjunction{ + dir = 1 + }, +/turf/closed/wall, +/area/quartermaster/storage) +"bhY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/quartermaster/storage) +"bhZ" = ( +/obj/machinery/door/window/eastleft{ + dir = 4; + icon_state = "right"; + name = "Mail"; + req_access_txt = "50" + }, +/turf/open/floor/plating, +/area/quartermaster/office) +"bia" = ( +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/structure/disposaloutlet{ + dir = 4 + }, +/turf/open/floor/plating, +/area/quartermaster/office) +"bib" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 29 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bic" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bid" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/turf/open/floor/plasteel/blue/corner, +/area/hallway/primary/central) +"bie" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=1"; + dir = 1; + freq = 1400; + location = "Bridge" + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/bridge/meeting_room) +"bif" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"big" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/engine/gravity_generator) +"bih" = ( +/turf/open/floor/plasteel/vault{ + dir = 1 + }, +/area/engine/gravity_generator) +"bii" = ( +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/engine/gravity_generator) +"bij" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"bik" = ( +/obj/item/device/radio/intercom{ + dir = 8; + freerange = 1; + name = "Station Intercom (Command)"; + pixel_x = -28 + }, +/obj/machinery/suit_storage_unit/captain, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bil" = ( +/obj/machinery/computer/card, +/obj/item/weapon/card/id/captains_spare, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bim" = ( +/obj/structure/table/wood, +/obj/machinery/recharger, +/obj/item/weapon/melee/chainofcommand, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bin" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bio" = ( +/obj/structure/table/glass, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, +/obj/item/stack/sheet/mineral/plasma{ + layer = 2.9 + }, +/obj/item/stack/sheet/mineral/plasma{ + layer = 2.9 + }, +/obj/machinery/requests_console{ + department = "Chemistry"; + departmentType = 2; + pixel_x = -30; + pixel_y = 0; + receive_ore_updates = 1 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bip" = ( +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"biq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bir" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/eastright{ + dir = 8; + name = "Chemistry Desk"; + req_access_txt = "33" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/medical/chemistry) +"bis" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Chemist" + }, +/turf/open/floor/plasteel/whiteyellow/side{ + dir = 4 + }, +/area/medical/chemistry) +"bit" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"biu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"biv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/quartermaster/office) +"biw" = ( +/turf/open/floor/plasteel, +/area/security/checkpoint/medical) +"bix" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/effect/landmark/start/depsec/medical, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/checkpoint/medical) +"biy" = ( +/obj/machinery/computer/secure_data, +/obj/item/device/radio/intercom{ + pixel_x = 25 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/checkpoint/medical) +"biz" = ( +/obj/structure/bodycontainer/morgue, +/obj/effect/landmark{ + name = "revenantspawn" + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"biA" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"biB" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"biC" = ( +/turf/open/floor/plating, +/area/storage/emergency) +"biD" = ( +/obj/item/weapon/storage/box/lights/mixed, +/turf/open/floor/plating, +/area/storage/emergency) +"biE" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/item/weapon/extinguisher, +/turf/open/floor/plating, +/area/storage/emergency) +"biF" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 1; + icon_state = "pipe-j2s"; + sortType = 2 + }, +/obj/structure/noticeboard{ + pixel_y = 32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"biG" = ( +/obj/machinery/mech_bay_recharge_port{ + icon_state = "recharge_port"; + dir = 2 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/assembly/chargebay) +"biH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"biI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/circuit, +/area/assembly/chargebay) +"biJ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/circuit, +/area/assembly/chargebay) +"biK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/whitered/corner{ + icon_state = "whiteredcorner"; + dir = 1 + }, +/area/assembly/robotics) +"biL" = ( +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"biM" = ( +/obj/structure/chair/office/light{ + dir = 1 + }, +/obj/effect/landmark/start{ + name = "Roboticist" + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"biN" = ( +/turf/open/floor/plasteel/whitered/side{ + dir = 1 + }, +/area/assembly/robotics) +"biO" = ( +/obj/machinery/camera{ + c_tag = "Robotics Lab"; + dir = 2; + network = list("SS13","RD") + }, +/obj/machinery/button/door{ + dir = 2; + id = "robotics"; + name = "Shutters Control Button"; + pixel_x = 6; + pixel_y = 24; + req_access_txt = "29" + }, +/obj/structure/table, +/obj/item/weapon/book/manual/robotics_cyborgs{ + pixel_x = 2; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/turf/open/floor/plasteel/whitered/corner{ + dir = 4 + }, +/area/assembly/robotics) +"biP" = ( +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/whitered/side{ + dir = 1 + }, +/area/assembly/robotics) +"biQ" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/whitered/side{ + dir = 1 + }, +/area/assembly/robotics) +"biR" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"biS" = ( +/obj/machinery/camera{ + c_tag = "Research Division Access"; + dir = 2; + network = list("SS13") + }, +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"biT" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"biU" = ( +/turf/open/floor/plasteel/whitepurple/side{ + dir = 1 + }, +/area/toxins/lab) +"biV" = ( +/obj/structure/chair/stool, +/obj/effect/landmark/start{ + name = "Scientist" + }, +/turf/open/floor/plasteel/whitepurple/side{ + dir = 1 + }, +/area/toxins/lab) +"biW" = ( +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"biX" = ( +/obj/machinery/camera{ + c_tag = "Research and Development"; + dir = 2; + network = list("SS13","RD"); + pixel_x = 22 + }, +/obj/machinery/button/door{ + dir = 2; + id = "rnd"; + name = "Shutters Control Button"; + pixel_x = -6; + pixel_y = 24; + req_access_txt = "47" + }, +/turf/open/floor/plasteel/whitepurple/corner{ + dir = 1 + }, +/area/toxins/lab) +"biY" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"biZ" = ( +/obj/machinery/computer/shuttle/syndicate, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bja" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bjb" = ( +/obj/machinery/conveyor{ + dir = 1; + id = "garbage" + }, +/obj/structure/sign/vacuum{ + pixel_x = -32 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bjc" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bjd" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bje" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bjf" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Disposal Access"; + req_access_txt = "12" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bjg" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bjh" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bji" = ( +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bjj" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bjk" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bjl" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"bjm" = ( +/obj/structure/table, +/obj/item/weapon/hand_labeler, +/obj/item/weapon/hand_labeler, +/obj/machinery/requests_console{ + department = "Cargo Bay"; + departmentType = 2; + pixel_x = 0; + pixel_y = 30 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bjn" = ( +/obj/structure/table, +/obj/item/clothing/head/soft, +/obj/item/clothing/head/soft, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bjo" = ( +/obj/machinery/camera{ + c_tag = "Cargo Bay North" + }, +/obj/structure/closet/wardrobe/cargotech, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bjp" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/device/radio/intercom{ + broadcasting = 0; + listening = 1; + name = "Station Intercom (General)"; + pixel_y = 20 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bjq" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = 30 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bjr" = ( +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bjs" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_mining{ + name = "Cargo Office"; + req_access_txt = "50" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bjt" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bju" = ( +/obj/machinery/photocopier, +/obj/item/device/radio/intercom{ + broadcasting = 0; + listening = 1; + name = "Station Intercom (General)"; + pixel_y = 20 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bjv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bjw" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bjx" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bjy" = ( +/obj/machinery/camera{ + c_tag = "Gravity Generator Room"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = 0 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/gravity_generator) +"bjz" = ( +/turf/closed/wall/r_wall, +/area/maintenance/maintcentral) +"bjA" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/maintcentral) +"bjB" = ( +/turf/open/floor/plating, +/area/maintenance/maintcentral) +"bjC" = ( +/obj/structure/closet/wardrobe/black, +/turf/open/floor/plating, +/area/maintenance/maintcentral) +"bjD" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Bridge Maintenance APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/maintenance/maintcentral) +"bjE" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/wood, +/area/bridge/meeting_room) +"bjF" = ( +/obj/machinery/newscaster/security_unit{ + pixel_x = -32; + pixel_y = 0 + }, +/obj/machinery/keycard_auth{ + pixel_x = 0; + pixel_y = -24 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bjG" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Captain's Desk Door"; + req_access_txt = "20" + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bjH" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bjI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bjJ" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"bjK" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bjL" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bjM" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/security/checkpoint/medical) +"bjN" = ( +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 30; + pixel_y = 0 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/checkpoint/medical) +"bjO" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bjP" = ( +/obj/machinery/computer/mech_bay_power_console, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bjQ" = ( +/obj/machinery/smartfridge/chemistry, +/turf/open/floor/plating, +/area/medical/chemistry) +"bjR" = ( +/obj/structure/table/glass, +/obj/item/weapon/storage/box/beakers{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/box/beakers{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/dropper, +/obj/item/weapon/reagent_containers/dropper, +/turf/open/floor/plasteel/whiteyellow/side{ + dir = 4 + }, +/area/medical/chemistry) +"bjS" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bjT" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 2 + }, +/area/medical/medbay) +"bjU" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 2 + }, +/area/medical/medbay) +"bjV" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 2 + }, +/area/medical/medbay) +"bjW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bjX" = ( +/obj/structure/table, +/obj/machinery/recharger{ + pixel_y = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/checkpoint/medical) +"bjY" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/checkpoint/medical) +"bjZ" = ( +/obj/structure/closet/firecloset, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bka" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bkb" = ( +/obj/machinery/camera{ + c_tag = "Medbay Morgue"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = 0 + }, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bkc" = ( +/obj/machinery/space_heater, +/turf/open/floor/plating, +/area/storage/emergency) +"bkd" = ( +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating, +/area/storage/emergency) +"bke" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/turf/open/floor/plating, +/area/storage/emergency) +"bkf" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/storage/emergency) +"bkg" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/circuit, +/area/assembly/chargebay) +"bkh" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/circuit, +/area/assembly/chargebay) +"bki" = ( +/obj/structure/table/glass, +/obj/item/weapon/reagent_containers/glass/beaker/large{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/reagent_containers/glass/beaker{ + pixel_x = 8; + pixel_y = 2 + }, +/obj/item/weapon/reagent_containers/dropper, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bkj" = ( +/obj/structure/closet/emcloset, +/obj/machinery/airalarm{ + dir = 2; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bkk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bkl" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_research{ + name = "Robotics Lab"; + req_access_txt = "29" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bkm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bkn" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/firealarm{ + pixel_y = 27 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bko" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bkp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bkq" = ( +/obj/structure/closet/firecloset, +/obj/machinery/light{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bkr" = ( +/obj/machinery/shower{ + dir = 8 + }, +/obj/structure/sign/securearea{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bks" = ( +/obj/machinery/requests_console{ + department = "Science"; + departmentType = 2; + name = "Science Requests Console"; + pixel_x = -30; + pixel_y = 0; + receive_ore_updates = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bkt" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bku" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bkv" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bkw" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bkx" = ( +/obj/machinery/status_display{ + density = 0; + pixel_y = 2; + supply_display = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/quartermaster/office) +"bky" = ( +/turf/closed/wall, +/area/maintenance/asmaint2) +"bkz" = ( +/obj/machinery/conveyor{ + dir = 1; + id = "garbage"; + layer = 2.5 + }, +/obj/machinery/door/poddoor/preopen{ + id = "Disposal Exit"; + layer = 3; + name = "disposal exit vent" + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bkA" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"bkB" = ( +/obj/machinery/button/door{ + id = "Disposal Exit"; + name = "Disposal Vent Control"; + pixel_x = -25; + pixel_y = 4; + req_access_txt = "12" + }, +/obj/machinery/button/massdriver{ + id = "trash"; + pixel_x = -26; + pixel_y = -6 + }, +/obj/structure/chair/stool, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bkC" = ( +/obj/effect/decal/cleanable/oil, +/obj/machinery/light_switch{ + pixel_x = 25; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bkD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/port) +"bkE" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; + name = "KEEP CLEAR: DOCKING AREA"; + pixel_y = 0 + }, +/turf/closed/wall/r_wall, +/area/maintenance/port) +"bkF" = ( +/turf/closed/wall/r_wall, +/area/maintenance/port) +"bkG" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Cargo Bay Maintenance"; + req_access_txt = "31" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/quartermaster/storage) +"bkH" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/quartermaster/office) +"bkI" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/engine/gravity_generator) +"bkJ" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/quartermaster/storage) +"bkK" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bkL" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/chem_heater, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bkM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bkN" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/quartermaster/office) +"bkO" = ( +/obj/machinery/light_switch{ + pixel_x = 28; + pixel_y = 0 + }, +/obj/item/weapon/screwdriver{ + pixel_y = 10 + }, +/obj/item/device/radio/off, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/checkpoint/medical) +"bkP" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bkQ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/light/small, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bkR" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/light_switch{ + pixel_y = -25 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bkS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"bkT" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/maintenance/maintcentral) +"bkU" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bkV" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint) +"bkW" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/maintenance/maintcentral) +"bkX" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Conference Room APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/bridge/meeting_room) +"bkY" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/maintcentral) +"bkZ" = ( +/obj/machinery/gravity_generator/main/station, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/engine/gravity_generator) +"bla" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"blb" = ( +/obj/machinery/door/airlock/command{ + name = "Captain's Quarters"; + req_access = null; + req_access_txt = "20" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"blc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall/r_wall, +/area/crew_quarters/captain) +"bld" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Captain's Office Maintenance"; + req_access_txt = "20" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/crew_quarters/captain) +"ble" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"blf" = ( +/obj/structure/table/glass, +/obj/item/weapon/storage/box/syringes, +/obj/item/clothing/glasses/science{ + pixel_x = 2; + pixel_y = 4 + }, +/obj/item/clothing/glasses/science, +/obj/item/device/radio/intercom{ + dir = 8; + name = "Station Intercom (General)"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"blg" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/airlock/maintenance{ + name = "Morgue Maintenance"; + req_access_txt = "6" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/morgue) +"blh" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/eastright{ + base_state = "left"; + dir = 8; + icon_state = "left"; + name = "Chemistry Desk"; + req_access_txt = "33" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/medical/chemistry) +"bli" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"blj" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"blk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 4 + }, +/area/medical/medbay) +"bll" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"blm" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/food/drinks/britcup{ + desc = "Kingston's personal cup." + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bln" = ( +/obj/structure/table/reinforced, +/obj/machinery/camera{ + c_tag = "Medbay Foyer"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = 0 + }, +/obj/machinery/cell_charger, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"blo" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/power/apc{ + dir = 1; + name = "Starboard Emergency Storage APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/storage/emergency) +"blp" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Medbay Security APC"; + pixel_x = -25 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/checkpoint/medical) +"blq" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/sortjunction{ + sortType = 9 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"blr" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bls" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical, +/obj/item/weapon/crowbar/large, +/obj/machinery/camera{ + c_tag = "Mech Bay"; + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"blt" = ( +/obj/machinery/recharge_station, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"blu" = ( +/obj/machinery/computer/mech_bay_power_console, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"blv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/holopad, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"blw" = ( +/turf/open/floor/mech_bay_recharge_floor, +/area/assembly/chargebay) +"blx" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bly" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/obj/machinery/light_switch{ + pixel_x = -23; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"blz" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"blA" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/assembly/robotics) +"blB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/mecha_part_fabricator, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"blC" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"blD" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/assembly/robotics) +"blE" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + empty = 1; + name = "First-Aid (empty)" + }, +/obj/item/weapon/storage/firstaid/regular{ + empty = 1; + name = "First-Aid (empty)" + }, +/obj/item/weapon/storage/firstaid/regular{ + empty = 1; + name = "First-Aid (empty)" + }, +/obj/item/device/healthanalyzer, +/obj/item/device/healthanalyzer, +/obj/item/device/healthanalyzer, +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 29 + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"blF" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/conveyor{ + dir = 4; + id = "robo1" + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"blG" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"blH" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"blI" = ( +/obj/machinery/r_n_d/destructive_analyzer, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/lab) +"blJ" = ( +/obj/machinery/r_n_d/protolathe, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/lab) +"blK" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/lab) +"blL" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"blM" = ( +/obj/effect/turf_decal/bot, +/obj/effect/landmark/start{ + name = "Roboticist" + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"blN" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"blO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"blP" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"blQ" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"blR" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/obj/item/weapon/cigbutt, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"blS" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/mass_driver{ + id = "trash" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"blT" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"blU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/sleep) +"blV" = ( +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/maintenance/disposal) +"blW" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/quartermaster/storage) +"blX" = ( +/obj/machinery/door/airlock/research{ + cyclelinkeddir = 1; + name = "Research Division Access"; + req_access_txt = "47" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"blY" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"blZ" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bma" = ( +/obj/structure/table/glass, +/obj/item/weapon/stock_parts/manipulator, +/obj/item/weapon/stock_parts/capacitor, +/obj/item/weapon/stock_parts/capacitor, +/obj/item/weapon/stock_parts/manipulator, +/obj/item/weapon/stock_parts/micro_laser, +/obj/item/weapon/stock_parts/micro_laser, +/obj/item/stack/cable_coil{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/stack/cable_coil, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bmb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bmc" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bmd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bme" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bmf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/quartermaster/office) +"bmg" = ( +/obj/machinery/door/airlock/glass_mining{ + name = "Cargo Bay"; + req_access_txt = "31" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bmh" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bmi" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bmj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bmk" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_mining{ + name = "Delivery Office"; + req_access_txt = "50" + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bml" = ( +/obj/machinery/mineral/ore_redemption{ + input_dir = 8; + output_dir = 4 + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/office) +"bmm" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bmn" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/door/firedoor, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"bmo" = ( +/turf/closed/wall, +/area/crew_quarters/heads) +"bmp" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/maintcentral) +"bmq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/crew_quarters/heads) +"bmr" = ( +/turf/closed/wall/r_wall, +/area/crew_quarters/heads) +"bms" = ( +/obj/machinery/door/airlock/command{ + name = "Head of Personnel"; + req_access = null; + req_access_txt = "57" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/crew_quarters/heads) +"bmt" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/quartermaster/office) +"bmu" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"bmv" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/engine/gravity_generator) +"bmw" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/engine/gravity_generator) +"bmx" = ( +/turf/closed/wall, +/area/crew_quarters/captain) +"bmy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bmz" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/dresser, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bmA" = ( +/obj/machinery/door/airlock{ + name = "Private Restroom"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/captain) +"bmB" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bmC" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = 28 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/captain) +"bmD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/crew_quarters/captain) +"bmE" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bmF" = ( +/obj/structure/table/glass, +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/item/stack/cable_coil/random, +/obj/item/stack/cable_coil/random, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bmG" = ( +/obj/machinery/chem_dispenser, +/turf/open/floor/plasteel/whiteyellow/side{ + dir = 2 + }, +/area/medical/chemistry) +"bmH" = ( +/obj/machinery/door/airlock/glass_mining{ + name = "Cargo Bay"; + req_access_txt = "31" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bmI" = ( +/obj/machinery/chem_master, +/turf/open/floor/plasteel/whiteyellow/side{ + dir = 6 + }, +/area/medical/chemistry) +"bmJ" = ( +/obj/item/device/radio/intercom{ + broadcasting = 1; + freerange = 0; + frequency = 1485; + listening = 0; + name = "Station Intercom (Medbay)"; + pixel_x = 0; + pixel_y = -30 + }, +/obj/machinery/light, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bmK" = ( +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bmL" = ( +/obj/structure/chair/office/light{ + dir = 8 + }, +/obj/machinery/button/door{ + desc = "A remote control switch for the medbay foyer."; + id = "MedbayFoyer"; + name = "Medbay Doors Control"; + normaldoorcontrol = 1; + pixel_x = -26; + req_access_txt = "5" + }, +/obj/effect/landmark/start{ + name = "Medical Doctor" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bmM" = ( +/obj/structure/chair/office/light{ + dir = 1 + }, +/obj/structure/sign/nosmoking_2{ + pixel_x = 28 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bmN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint/medical) +"bmO" = ( +/obj/structure/closet, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/security/checkpoint/medical) +"bmP" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bmQ" = ( +/obj/item/weapon/stamp{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/stamp/denied{ + pixel_x = 4; + pixel_y = -2 + }, +/obj/structure/table, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bmR" = ( +/obj/structure/table, +/obj/item/weapon/paper/morguereminder{ + pixel_x = 5; + pixel_y = 4 + }, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bmS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bmT" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bmU" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/security/checkpoint/medical) +"bmV" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/airlock/medical{ + name = "Morgue"; + req_access_txt = "6;5" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/medical/morgue) +"bmW" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/medical/morgue) +"bmX" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/medical/genetics) +"bmY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/medical/morgue) +"bmZ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/medical/genetics) +"bna" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bnb" = ( +/obj/machinery/recharge_station, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bnc" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/assembly/chargebay) +"bnd" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bne" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bnf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bng" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bnh" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bni" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/table, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = 6 + }, +/obj/item/clothing/head/welding{ + pixel_x = -3; + pixel_y = 5 + }, +/obj/item/clothing/glasses/welding, +/obj/item/device/multitool{ + pixel_x = 3 + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"bnj" = ( +/obj/structure/table, +/obj/item/stack/sheet/plasteel{ + amount = 10 + }, +/obj/item/stack/cable_coil, +/obj/item/device/assembly/flash/handheld, +/obj/item/device/assembly/flash/handheld, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"bnk" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bnl" = ( +/obj/item/weapon/stock_parts/console_screen, +/obj/structure/table/glass, +/obj/item/weapon/stock_parts/console_screen, +/obj/item/weapon/stock_parts/console_screen, +/obj/item/weapon/stock_parts/matter_bin, +/obj/item/weapon/stock_parts/matter_bin, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/item/weapon/stock_parts/scanning_module{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/weapon/stock_parts/scanning_module, +/obj/machinery/power/apc{ + dir = 4; + name = "Research Lab APC"; + pixel_x = 26; + pixel_y = 0 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bnm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/medical/research{ + name = "Research Division" + }) +"bnn" = ( +/obj/machinery/computer/rdconsole/core, +/turf/open/floor/plasteel, +/area/toxins/lab) +"bno" = ( +/obj/machinery/r_n_d/circuit_imprinter, +/obj/item/weapon/reagent_containers/glass/beaker/sulphuric, +/turf/open/floor/plasteel, +/area/toxins/lab) +"bnp" = ( +/turf/open/floor/plasteel, +/area/toxins/lab) +"bnq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/toxins/lab) +"bnr" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/turf/open/floor/plasteel/loadingarea, +/area/toxins/lab) +"bns" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/asmaint2) +"bnt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bnu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall, +/area/maintenance/asmaint2) +"bnv" = ( +/obj/machinery/door/poddoor{ + id = "trash"; + name = "disposal bay door" + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"bnw" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bnx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bny" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bnz" = ( +/obj/effect/landmark/start{ + name = "Cargo Technician" + }, +/obj/structure/chair/office/dark{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bnA" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bnB" = ( +/obj/structure/closet/wardrobe/chemistry_white, +/obj/machinery/light_switch{ + pixel_x = -23; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bnC" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bnD" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/table, +/obj/item/weapon/book/manual/wiki/chemistry, +/obj/item/weapon/book/manual/wiki/chemistry{ + pixel_x = 3; + pixel_y = 3 + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bnE" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bnF" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = 0; + pixel_y = 30 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bnG" = ( +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/clipboard, +/obj/item/weapon/pen/red, +/obj/structure/table, +/obj/machinery/computer/stockexchange, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bnH" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bnI" = ( +/obj/machinery/computer/cargo/request, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bnJ" = ( +/obj/machinery/firealarm{ + pixel_y = 27 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bnK" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/quartermaster/office) +"bnL" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/quartermaster/office) +"bnM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bnN" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 2 + }, +/area/hallway/primary/central) +"bnO" = ( +/obj/structure/table, +/obj/machinery/newscaster/security_unit{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/item/weapon/hand_labeler, +/obj/item/stack/packageWrap, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bnP" = ( +/obj/machinery/button/flasher{ + id = "hopflash"; + pixel_x = 6; + pixel_y = 36 + }, +/obj/machinery/button/door{ + id = "hop"; + name = "Privacy Shutters Control"; + pixel_x = 6; + pixel_y = 25; + req_access_txt = "57" + }, +/obj/machinery/button/door{ + id = "hopqueue"; + name = "Queue Shutters Control"; + pixel_x = -4; + pixel_y = 25; + req_access_txt = "57" + }, +/obj/machinery/light_switch{ + pixel_x = -4; + pixel_y = 36 + }, +/obj/machinery/pdapainter, +/turf/open/floor/plasteel/blue/side{ + dir = 9 + }, +/area/crew_quarters/heads) +"bnQ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/bed/dogbed{ + anchored = 1; + desc = "Ian's bed! Looks comfy."; + name = "Ian's bed" + }, +/mob/living/simple_animal/pet/dog/corgi/Ian{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bnR" = ( +/obj/machinery/computer/security/telescreen{ + desc = "Used for watching Prison Wing holding areas."; + name = "Prison Monitor"; + network = list("Prison"); + pixel_x = 0; + pixel_y = 30 + }, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bnS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bnT" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_x = -32; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/gravity_generator) +"bnU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/glass_engineering{ + name = "Gravity Generator"; + req_access_txt = "11"; + req_one_access_txt = "0" + }, +/turf/open/floor/plasteel/black, +/area/engine/gravity_generator) +"bnV" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/gravity_generator) +"bnW" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'RADIOACTIVE AREA'"; + icon_state = "radiation"; + name = "RADIOACTIVE AREA"; + pixel_x = 32; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/gravity_generator) +"bnX" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bnY" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/captain, +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bnZ" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"boa" = ( +/obj/structure/toilet{ + dir = 4 + }, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/captain) +"bob" = ( +/obj/structure/table/glass, +/obj/item/weapon/grenade/chem_grenade, +/obj/item/weapon/grenade/chem_grenade, +/obj/item/weapon/grenade/chem_grenade, +/obj/item/weapon/grenade/chem_grenade, +/obj/item/weapon/screwdriver{ + pixel_x = -2; + pixel_y = 6 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"boc" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bod" = ( +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/device/radio/headset/headset_med, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"boe" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_medical{ + id_tag = "MedbayFoyer"; + name = "Medbay"; + req_access_txt = "5" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 1 + }, +/area/medical/medbay) +"bof" = ( +/turf/closed/wall, +/area/medical/medbay) +"bog" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/medical/medbay) +"boh" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_medical{ + id_tag = "MedbayFoyer"; + name = "Medbay"; + req_access_txt = "5" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 1 + }, +/area/medical/medbay) +"boi" = ( +/obj/machinery/computer/med_data, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"boj" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/machinery/requests_console{ + announcementConsole = 0; + department = "Medbay"; + departmentType = 1; + name = "Medbay RC"; + pixel_x = 30; + pixel_y = 0; + pixel_z = 0 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bok" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Security Office"; + req_access_txt = "63" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/security/checkpoint/medical) +"bol" = ( +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bom" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bon" = ( +/turf/closed/wall/r_wall, +/area/medical/genetics) +"boo" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bop" = ( +/obj/machinery/mech_bay_recharge_port, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/assembly/chargebay) +"boq" = ( +/obj/structure/bed/roller, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 4 + }, +/area/medical/medbay) +"bor" = ( +/obj/structure/table, +/obj/item/clothing/gloves/color/latex, +/obj/item/weapon/surgical_drapes, +/obj/item/weapon/razor, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"bos" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/power/apc{ + dir = 8; + name = "Robotics Lab APC"; + pixel_x = -25 + }, +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bot" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/assembly/robotics) +"bou" = ( +/turf/open/floor/plasteel, +/area/assembly/robotics) +"bov" = ( +/obj/structure/table, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/weapon/stock_parts/cell/high/plus, +/obj/item/weapon/stock_parts/cell/high/plus, +/obj/item/weapon/crowbar, +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"bow" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/poddoor/preopen{ + id = "Biohazard"; + name = "biohazard containment door" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/medical/research{ + name = "Research Division" + }) +"box" = ( +/turf/closed/wall, +/area/assembly/robotics) +"boy" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/poddoor/preopen{ + id = "Biohazard"; + name = "biohazard containment door" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/medical/research{ + name = "Research Division" + }) +"boz" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/poddoor/preopen{ + id = "Biohazard"; + name = "biohazard containment door" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/medical/research{ + name = "Research Division" + }) +"boA" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"boB" = ( +/turf/closed/wall, +/area/toxins/lab) +"boC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/assembly/robotics) +"boD" = ( +/obj/structure/table, +/obj/item/weapon/circular_saw, +/obj/item/weapon/scalpel{ + pixel_y = 12 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"boE" = ( +/obj/structure/table, +/obj/item/weapon/hemostat, +/obj/item/weapon/cautery{ + pixel_x = 4 + }, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"boF" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"boG" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/device/mmi, +/obj/item/device/mmi, +/obj/item/device/mmi, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"boH" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"boI" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/quartermaster/storage) +"boJ" = ( +/obj/machinery/conveyor_switch/oneway{ + id = "QMLoad2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"boK" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"boL" = ( +/obj/structure/table, +/obj/item/weapon/retractor, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"boM" = ( +/turf/open/floor/plasteel/white/corner{ + dir = 2 + }, +/area/medical/research{ + name = "Research Division" + }) +"boN" = ( +/turf/open/floor/plasteel/brown/corner{ + dir = 1 + }, +/area/quartermaster/office) +"boO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white/side{ + dir = 2 + }, +/area/medical/research{ + name = "Research Division" + }) +"boP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"boQ" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/weapon/stock_parts/cell/high/plus, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"boR" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"boS" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/machinery/door/window/westleft{ + name = "Cargo Desk"; + req_access_txt = "50" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"boT" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"boU" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"boV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"boW" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"boX" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "hopqueue"; + name = "HoP Queue Shutters" + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 8 + }, +/area/hallway/primary/central) +"boY" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/hallway/primary/central) +"boZ" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/northleft{ + dir = 8; + icon_state = "left"; + name = "Reception Window"; + req_access_txt = "0" + }, +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 4; + icon_state = "rightsecure"; + name = "Head of Personnel's Desk"; + req_access = null; + req_access_txt = "57" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/flasher{ + id = "hopflash"; + pixel_x = 0; + pixel_y = 28 + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "hop"; + layer = 2.9; + name = "Privacy Shutters" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bpa" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bpb" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads) +"bpc" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 8 + }, +/area/crew_quarters/heads) +"bpd" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/carpet, +/area/crew_quarters/heads) +"bpe" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads) +"bpf" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bpg" = ( +/obj/structure/chair/office/light, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bph" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bpi" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bpj" = ( +/obj/structure/chair/comfy/brown{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Captain's Quarters"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bpk" = ( +/obj/structure/closet/secure_closet/captains, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bpl" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/box/matches, +/obj/item/weapon/razor{ + pixel_x = -4; + pixel_y = 2 + }, +/obj/item/clothing/mask/cigarette/cigar, +/obj/item/weapon/reagent_containers/food/drinks/flask/gold, +/turf/open/floor/carpet, +/area/crew_quarters/captain) +"bpm" = ( +/obj/machinery/shower{ + dir = 1 + }, +/obj/item/weapon/soap/deluxe, +/obj/item/weapon/bikehorn/rubberducky, +/obj/effect/landmark{ + name = "revenantspawn" + }, +/obj/structure/curtain, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/captain) +"bpn" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bpo" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bpp" = ( +/obj/machinery/door/window/eastright{ + base_state = "left"; + dir = 8; + icon_state = "left"; + name = "Research Division Delivery"; + req_access_txt = "47" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/toxins/lab) +"bpq" = ( +/obj/machinery/light_switch{ + pixel_x = 0; + pixel_y = -23 + }, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bpr" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=8"; + dir = 8; + freq = 1400; + location = "Research Division" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/toxins/lab) +"bps" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/quartermaster/storage) +"bpt" = ( +/obj/structure/table, +/obj/item/weapon/hand_labeler, +/obj/item/stack/packageWrap, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bpu" = ( +/obj/structure/bed/roller, +/obj/machinery/button/door{ + desc = "A remote control switch for the medbay foyer."; + id = "MedbayFoyer"; + name = "Medbay Exit Button"; + normaldoorcontrol = 1; + pixel_x = 0; + pixel_y = 26 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bpv" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/medical{ + name = "Medbay Reception"; + req_access_txt = "5" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bpw" = ( +/obj/machinery/status_display, +/turf/closed/wall, +/area/medical/medbay) +"bpx" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bpy" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bpz" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bpA" = ( +/obj/machinery/computer/cargo, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bpB" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bpC" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bpD" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_medical{ + id_tag = null; + name = "Chemistry Lab"; + req_access_txt = "5; 33" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"bpE" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/medical/genetics) +"bpF" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/southleft{ + dir = 1; + name = "Chemistry Desk"; + req_access_txt = "33" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/medical/chemistry) +"bpG" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Genetics APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bpH" = ( +/obj/structure/table/glass, +/obj/item/weapon/folder/white, +/obj/item/device/radio/headset/headset_medsci, +/obj/machinery/requests_console{ + department = "Genetics"; + departmentType = 0; + name = "Genetics Requests Console"; + pixel_x = 0; + pixel_y = 30 + }, +/obj/item/weapon/storage/pill_bottle/mutadone, +/obj/item/weapon/storage/pill_bottle/mannitol, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bpI" = ( +/obj/machinery/dna_scannernew, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 5 + }, +/area/medical/genetics) +"bpJ" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bpK" = ( +/mob/living/carbon/monkey, +/turf/open/floor/plasteel, +/area/medical/genetics) +"bpL" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/medical/genetics) +"bpM" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/medical/chemistry) +"bpN" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bpO" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bpP" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bpQ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bpR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bpS" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/bodybags, +/obj/item/weapon/pen, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"bpT" = ( +/obj/structure/table, +/obj/item/weapon/storage/belt/utility, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 20; + pixel_x = -3; + pixel_y = 6 + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"bpU" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"bpV" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/assembly/robotics) +"bpW" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "robotics2"; + name = "robotics lab shutters" + }, +/obj/structure/window/fulltile, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "robotics2"; + name = "robotics lab shutters" + }, +/turf/open/floor/plating, +/area/assembly/robotics) +"bpX" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white/corner{ + dir = 8 + }, +/area/medical/research{ + name = "Research Division" + }) +"bpY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"bpZ" = ( +/obj/item/weapon/folder/white, +/obj/structure/table, +/obj/item/weapon/disk/tech_disk{ + pixel_x = 0; + pixel_y = 0 + }, +/obj/item/weapon/disk/tech_disk{ + pixel_x = 0; + pixel_y = 0 + }, +/obj/item/weapon/disk/design_disk, +/obj/item/weapon/disk/design_disk, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bqa" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door/window/eastright{ + name = "Robotics Surgery"; + req_access_txt = "29" + }, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"bqb" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"bqc" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bqd" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/conveyor{ + dir = 4; + id = "robo2" + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"bqe" = ( +/turf/closed/wall/r_wall, +/area/toxins/explab) +"bqf" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "rnd2"; + name = "research lab shutters" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bqg" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bqh" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bqi" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad2" + }, +/obj/machinery/door/poddoor{ + id = "QMLoaddoor2"; + name = "supply dock loading door" + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"bqj" = ( +/obj/structure/plasticflaps, +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad2" + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"bqk" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "rnd2"; + name = "research lab shutters" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/toxins/lab) +"bql" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"bqm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bqn" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bqo" = ( +/obj/machinery/autolathe, +/obj/machinery/light_switch{ + pixel_x = -27 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bqp" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1; + layer = 2.9 + }, +/obj/structure/table/reinforced, +/obj/item/device/destTagger, +/obj/item/device/destTagger, +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/quartermaster/office) +"bqq" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads) +"bqr" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/carpet, +/area/crew_quarters/heads) +"bqs" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bqt" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bqu" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bqv" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/hallway/primary/central) +"bqw" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/hallway/primary/central) +"bqx" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "hop"; + layer = 2.9; + name = "Privacy Shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/heads) +"bqy" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bqz" = ( +/turf/open/floor/carpet, +/area/crew_quarters/heads) +"bqA" = ( +/obj/machinery/computer/card, +/turf/open/floor/plasteel/blue/side{ + dir = 10 + }, +/area/crew_quarters/heads) +"bqB" = ( +/obj/machinery/holopad, +/turf/open/floor/carpet, +/area/crew_quarters/heads) +"bqC" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bqD" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/apc{ + dir = 8; + name = "Gravity Generator APC"; + pixel_x = -25; + pixel_y = 1 + }, +/obj/structure/table, +/obj/item/weapon/paper/gravity_gen{ + layer = 3 + }, +/obj/item/weapon/pen/blue, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -35 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bqE" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/holopad, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bqF" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bqG" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable, +/obj/machinery/power/smes{ + charge = 5e+006 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bqH" = ( +/turf/closed/wall/r_wall, +/area/teleporter) +"bqI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/teleporter) +"bqJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall/r_wall, +/area/teleporter) +"bqK" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Teleporter Maintenance"; + req_access_txt = "17" + }, +/obj/structure/sign/securearea{ + pixel_x = -32; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/teleporter) +"bqL" = ( +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bqM" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/medbay) +"bqN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bqO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteyellow/side{ + dir = 1 + }, +/area/medical/medbay) +"bqP" = ( +/obj/structure/bed/roller, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bqQ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bqR" = ( +/obj/structure/table, +/obj/item/weapon/crowbar, +/obj/item/clothing/neck/stethoscope, +/obj/item/weapon/reagent_containers/spray/cleaner, +/obj/structure/sign/nosmoking_2{ + pixel_x = 0; + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteyellow/corner{ + dir = 4 + }, +/area/medical/medbay) +"bqS" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteyellow/side{ + dir = 1 + }, +/area/medical/medbay) +"bqT" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel/whiteyellow/side{ + dir = 1 + }, +/area/medical/medbay) +"bqU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/noticeboard{ + pixel_y = 32 + }, +/obj/machinery/camera{ + c_tag = "Medbay West"; + dir = 2; + network = list("SS13") + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bqV" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteyellow/corner{ + dir = 1 + }, +/area/medical/medbay) +"bqW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bqX" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bqY" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bqZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bra" = ( +/obj/structure/table/glass, +/obj/item/weapon/storage/box/rxglasses, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"brb" = ( +/obj/machinery/computer/scan_consolenew, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 6 + }, +/area/medical/genetics) +"brc" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Geneticist" + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"brd" = ( +/turf/open/floor/plasteel, +/area/medical/genetics) +"bre" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/mob/living/carbon/monkey, +/turf/open/floor/plasteel, +/area/medical/genetics) +"brf" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"brg" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"brh" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 2 + }, +/area/medical/medbay) +"bri" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 2 + }, +/area/medical/medbay) +"brj" = ( +/obj/structure/bed/roller, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 6 + }, +/area/medical/medbay) +"brk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"brl" = ( +/obj/machinery/light_switch{ + pixel_x = -23; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"brm" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"brn" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bro" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 10 + }, +/area/medical/research{ + name = "Research Division" + }) +"brp" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"brq" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/button/door{ + dir = 2; + id = "robotics2"; + name = "Shutters Control Button"; + pixel_x = 24; + pixel_y = -24; + req_access_txt = "29" + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"brr" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/toxins/explab) +"brs" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/eastright{ + base_state = "left"; + dir = 8; + icon_state = "left"; + name = "Robotics Desk"; + req_access_txt = "29" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "robotics2"; + name = "robotics lab shutters" + }, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen, +/turf/open/floor/plating, +/area/assembly/robotics) +"brt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bru" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"brv" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"brw" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"brx" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "rnd2"; + name = "research lab shutters" + }, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/toxins/lab) +"bry" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Experimentation Lab Maintenance"; + req_access_txt = "7" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/toxins/explab) +"brz" = ( +/obj/structure/table, +/obj/item/weapon/pen, +/obj/machinery/camera{ + c_tag = "Experimentor Lab"; + dir = 2; + network = list("SS13","RD") + }, +/obj/item/weapon/hand_labeler, +/obj/item/stack/packageWrap, +/turf/open/floor/plasteel/white/side{ + dir = 2 + }, +/area/toxins/explab) +"brA" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = 0; + pixel_y = 6 + }, +/turf/open/floor/plasteel/white/corner{ + dir = 2 + }, +/area/toxins/explab) +"brB" = ( +/obj/structure/closet/l3closet/scientist, +/turf/open/floor/plasteel/white/side{ + dir = 2 + }, +/area/toxins/explab) +"brC" = ( +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/weapon/folder/white, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/obj/item/device/radio/off, +/turf/open/floor/plasteel/white/side{ + dir = 2 + }, +/area/toxins/explab) +"brD" = ( +/obj/structure/closet/emcloset{ + pixel_x = -2 + }, +/turf/open/floor/plasteel/white/corner{ + dir = 8 + }, +/area/toxins/explab) +"brE" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"brF" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/sign/securearea{ + pixel_x = -32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"brG" = ( +/obj/machinery/atmospherics/components/binary/valve{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"brH" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"brI" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"brJ" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Supply Dock Airlock"; + req_access_txt = "31" + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"brK" = ( +/turf/open/floor/plating, +/area/quartermaster/storage) +"brL" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"brM" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=8"; + dir = 8; + freq = 1400; + location = "QM #1" + }, +/obj/effect/turf_decal/bot, +/mob/living/simple_animal/bot/mulebot{ + beacon_freq = 1400; + home_destination = "QM #1"; + suffix = "#1" + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"brN" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"brO" = ( +/obj/structure/table, +/obj/machinery/requests_console{ + department = "Cargo Bay"; + departmentType = 2; + pixel_x = -30; + pixel_y = 0 + }, +/obj/item/device/multitool, +/obj/machinery/camera{ + c_tag = "Cargo Office"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"brP" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"brQ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-j2"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"brR" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"brS" = ( +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"brT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"brU" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = -32 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "hop"; + layer = 2.9; + name = "Privacy Shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/heads) +"brV" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/medbay) +"brW" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"brX" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/masks{ + pixel_x = 0; + pixel_y = 0 + }, +/obj/item/weapon/storage/box/gloves{ + pixel_x = 3; + pixel_y = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"brY" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"brZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bsa" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"bsb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"bsc" = ( +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bsd" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bse" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"bsf" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bsg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"bsh" = ( +/turf/closed/wall, +/area/teleporter) +"bsi" = ( +/obj/structure/table, +/obj/item/weapon/hand_tele, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/teleporter) +"bsj" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 1 + }, +/obj/structure/table, +/obj/item/device/radio/beacon, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"bsk" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"bsl" = ( +/obj/item/device/radio/intercom{ + broadcasting = 0; + listening = 1; + name = "Station Intercom (General)"; + pixel_y = 20 + }, +/obj/structure/closet/crate, +/obj/item/weapon/crowbar, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"bsm" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"bsn" = ( +/obj/machinery/camera{ + c_tag = "Teleporter" + }, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"bso" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/teleporter) +"bsp" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/blue/side{ + dir = 8 + }, +/area/hallway/primary/central) +"bsq" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/item/device/radio/intercom{ + broadcasting = 0; + freerange = 0; + frequency = 1485; + listening = 1; + name = "Station Intercom (Medbay)"; + pixel_x = 0; + pixel_y = -30 + }, +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bsr" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bss" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bst" = ( +/obj/item/device/radio/intercom{ + broadcasting = 0; + freerange = 0; + frequency = 1485; + listening = 1; + name = "Station Intercom (Medbay)"; + pixel_x = 30; + pixel_y = 0 + }, +/obj/machinery/camera{ + c_tag = "Medbay East"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = -22 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bsu" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_medical{ + id_tag = "GeneticsDoor"; + name = "Genetics"; + req_access_txt = "5; 68" + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bsv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bsw" = ( +/obj/machinery/door/airlock/research{ + name = "Robotics Lab"; + req_access_txt = "29"; + req_one_access_txt = "0" + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bsx" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bsy" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bsz" = ( +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bsA" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bsB" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bsC" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bsD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bsE" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/airlock/research{ + name = "Experimentation Lab"; + req_access_txt = "7" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bsF" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bsG" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bsH" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/toxins/explab) +"bsI" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Experimentation Lab APC"; + pixel_x = 26; + pixel_y = 0 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bsJ" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/asmaint2) +"bsK" = ( +/obj/structure/table/glass, +/obj/item/weapon/storage/box/disks{ + pixel_x = 2; + pixel_y = 2 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bsL" = ( +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bsM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bsN" = ( +/obj/machinery/door/window/westleft{ + name = "Monkey Pen"; + req_access_txt = "9" + }, +/turf/open/floor/plasteel, +/area/medical/genetics) +"bsO" = ( +/obj/structure/bodycontainer/morgue, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"bsP" = ( +/obj/structure/table/optable{ + name = "Robotics Operating Table" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"bsQ" = ( +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"bsR" = ( +/obj/machinery/computer/operating{ + name = "Robotics Operating Computer" + }, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"bsS" = ( +/obj/machinery/camera{ + c_tag = "Robotics Lab - South"; + dir = 1; + network = list("SS13","RD") + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bsT" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bsU" = ( +/obj/structure/table/optable{ + name = "Robotics Operating Table" + }, +/obj/item/weapon/surgical_drapes, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"bsV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bsW" = ( +/obj/structure/closet/wardrobe/robotics_black, +/obj/item/device/radio/headset/headset_sci{ + pixel_x = -3 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"bsX" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bsY" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Head of Personnel" + }, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bsZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bta" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Research Division North"; + dir = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"btb" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/noticeboard{ + pixel_y = 32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"btc" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/teleporter) +"btd" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"bte" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 6 + }, +/area/medical/research{ + name = "Research Division" + }) +"btf" = ( +/obj/machinery/requests_console{ + announcementConsole = 0; + department = "Medbay"; + departmentType = 1; + name = "Medbay RC"; + pixel_x = -30; + pixel_y = 0; + pixel_z = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"btg" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bth" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bti" = ( +/obj/structure/closet/secure_closet/personal/patient, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"btj" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"btk" = ( +/obj/structure/closet/wardrobe/white, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"btl" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"btm" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 2; + icon_state = "pipe-j2s"; + sortType = 12 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"btn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/medical/research{ + name = "Research Division" + }) +"bto" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/sign/securearea{ + pixel_x = 32 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"btp" = ( +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"btq" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"btr" = ( +/obj/machinery/camera{ + c_tag = "Cargo Recieving Dock"; + dir = 4 + }, +/obj/machinery/button/door{ + id = "QMLoaddoor"; + layer = 4; + name = "Loading Doors"; + pixel_x = -24; + pixel_y = -8 + }, +/obj/machinery/button/door{ + dir = 2; + id = "QMLoaddoor2"; + layer = 4; + name = "Loading Doors"; + pixel_x = -24; + pixel_y = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bts" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=8"; + dir = 8; + freq = 1400; + location = "QM #2" + }, +/obj/effect/turf_decal/bot, +/mob/living/simple_animal/bot/mulebot{ + home_destination = "QM #2"; + suffix = "#2" + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"btt" = ( +/obj/structure/table, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/item/weapon/folder/yellow, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"btu" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"btv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"btw" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 8 + }, +/area/medical/research{ + name = "Research Division" + }) +"btx" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/poddoor/preopen{ + id = "Biohazard"; + name = "biohazard containment door" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/medical/research{ + name = "Research Division" + }) +"bty" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"btz" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"btA" = ( +/obj/machinery/camera{ + c_tag = "Research Division West"; + dir = 2; + network = list("SS13") + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"btB" = ( +/obj/structure/table, +/obj/machinery/recharger, +/turf/open/floor/plasteel/blue/side{ + dir = 9 + }, +/area/crew_quarters/heads) +"btC" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"btD" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"btE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"btF" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/engineering{ + name = "Gravity Generator"; + req_access_txt = "11" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/engine/gravity_generator) +"btG" = ( +/turf/closed/wall/r_wall, +/area/engine/gravity_generator) +"btH" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/teleporter) +"btI" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Teleporter APC"; + pixel_x = -24 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"btJ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/bluespace_beacon, +/turf/open/floor/plasteel, +/area/teleporter) +"btK" = ( +/obj/machinery/holopad, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"btL" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"btM" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/command{ + name = "Teleport Access"; + req_access_txt = "17" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"btN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel, +/area/teleporter) +"btO" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/blue/side{ + dir = 8 + }, +/area/hallway/primary/central) +"btP" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"btQ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 10 + }, +/area/medical/research{ + name = "Research Division" + }) +"btR" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"btS" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"btT" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"btU" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"btV" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"btW" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"btX" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"btY" = ( +/obj/machinery/requests_console{ + department = "Science"; + departmentType = 2; + name = "Science Requests Console"; + pixel_x = 0; + pixel_y = -30; + receive_ore_updates = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"btZ" = ( +/obj/machinery/light, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bua" = ( +/turf/closed/wall, +/area/medical/genetics) +"bub" = ( +/obj/machinery/light, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -35 + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 8 + }, +/area/quartermaster/storage) +"buc" = ( +/obj/machinery/light, +/obj/machinery/power/apc{ + dir = 2; + name = "Cargo Office APC"; + pixel_x = 1; + pixel_y = -24 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/brown/corner{ + dir = 2 + }, +/area/quartermaster/office) +"bud" = ( +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/quartermaster/office) +"bue" = ( +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Head of Personnel's Desk"; + departmentType = 5; + name = "Head of Personnel RC"; + pixel_y = -30 + }, +/obj/machinery/camera{ + c_tag = "Head of Personnel's Office"; + dir = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"buf" = ( +/obj/machinery/computer/scan_consolenew, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 5 + }, +/area/medical/genetics) +"bug" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"buh" = ( +/turf/closed/wall/r_wall, +/area/assembly/chargebay) +"bui" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"buj" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "robotics2"; + name = "robotics lab shutters" + }, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/assembly/robotics) +"buk" = ( +/turf/open/floor/plasteel/white/side{ + dir = 8 + }, +/area/medical/sleeper) +"bul" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bum" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bun" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"buo" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bup" = ( +/obj/machinery/light, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"buq" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/genetics) +"bur" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bus" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"but" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"buu" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"buv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"buw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bux" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whitepurple/side{ + dir = 4 + }, +/area/medical/genetics) +"buy" = ( +/obj/structure/disposalpipe/sortjunction{ + sortType = 23 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"buz" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"buA" = ( +/obj/structure/frame/computer, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"buB" = ( +/obj/machinery/conveyor_switch/oneway{ + convdir = -1; + id = "QMLoad" + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"buC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"buD" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=8"; + dir = 8; + freq = 1400; + location = "QM #3" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"buE" = ( +/obj/structure/table, +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/computer/stockexchange, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"buF" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"buG" = ( +/obj/machinery/door/airlock/research{ + name = "Genetics Research"; + req_access_txt = "9" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"buH" = ( +/obj/machinery/door/airlock/research{ + name = "Genetics Research Access"; + req_access_txt = "47" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"buI" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"buJ" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"buK" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"buL" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"buM" = ( +/obj/machinery/keycard_auth{ + pixel_x = -24; + pixel_y = 0 + }, +/obj/machinery/computer/cargo, +/turf/open/floor/plasteel/blue/side{ + dir = 8 + }, +/area/crew_quarters/heads) +"buN" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"buO" = ( +/obj/structure/table, +/obj/item/weapon/folder/blue, +/obj/item/weapon/stamp/hop, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"buP" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/closed/wall, +/area/engine/gravity_generator) +"buQ" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"buR" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/engine/gravity_generator) +"buS" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/camera{ + c_tag = "Gravity Generator Foyer" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"buT" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 8 + }, +/area/medical/research{ + name = "Research Division" + }) +"buU" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/poddoor/preopen{ + id = "Biohazard"; + name = "biohazard containment door" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/medical/research{ + name = "Research Division" + }) +"buV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/teleporter) +"buW" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/teleporter) +"buX" = ( +/obj/machinery/shieldwallgen, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/teleporter) +"buY" = ( +/obj/machinery/shieldwallgen, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/teleporter) +"buZ" = ( +/obj/structure/closet/crate, +/turf/open/floor/plasteel, +/area/teleporter) +"bva" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/sign/securearea{ + pixel_x = -32; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/blue/side{ + dir = 8 + }, +/area/hallway/primary/central) +"bvb" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bvc" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bvd" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/medical/sleeper) +"bve" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bvf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bvg" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bvh" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/medical/sleeper) +"bvi" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/medical/sleeper) +"bvj" = ( +/turf/closed/wall, +/area/medical/sleeper) +"bvk" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bvl" = ( +/obj/machinery/door/airlock/glass_medical{ + id_tag = ""; + name = "Surgery Observation"; + req_access_txt = "0" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bvm" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bvn" = ( +/obj/machinery/button/door{ + desc = "A remote control switch for the genetics doors."; + id = "GeneticsDoor"; + name = "Genetics Exit Button"; + normaldoorcontrol = 1; + pixel_x = 8; + pixel_y = 24 + }, +/obj/structure/table, +/obj/item/weapon/book/manual/medical_cloning{ + pixel_y = 6 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bvo" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bvp" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bvq" = ( +/obj/structure/chair, +/obj/effect/landmark/start{ + name = "Geneticist" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bvr" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bvs" = ( +/obj/machinery/dna_scannernew, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 6 + }, +/area/medical/genetics) +"bvt" = ( +/obj/machinery/door/airlock/glass_research{ + name = "Genetics Research"; + req_access_txt = "5; 9; 68" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bvu" = ( +/obj/structure/window/reinforced, +/mob/living/carbon/monkey, +/turf/open/floor/plasteel, +/area/medical/genetics) +"bvv" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel, +/area/medical/genetics) +"bvw" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bvx" = ( +/turf/closed/wall/r_wall, +/area/medical/research{ + name = "Research Division" + }) +"bvy" = ( +/obj/machinery/camera{ + c_tag = "Genetics Research"; + dir = 1; + network = list("SS13","RD"); + pixel_x = 0 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whitepurple/side{ + dir = 4 + }, +/area/medical/genetics) +"bvz" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bvA" = ( +/obj/structure/sign/securearea, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/medical/genetics) +"bvB" = ( +/obj/machinery/camera{ + c_tag = "Genetics Access"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = -22 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bvC" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/security/checkpoint/science) +"bvD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bvE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 6 + }, +/area/medical/research{ + name = "Research Division" + }) +"bvF" = ( +/obj/structure/table, +/obj/item/weapon/cartridge/quartermaster{ + pixel_x = 6; + pixel_y = 5 + }, +/obj/item/weapon/cartridge/quartermaster, +/obj/item/weapon/cartridge/quartermaster{ + pixel_x = -4; + pixel_y = 7 + }, +/obj/machinery/requests_console{ + department = "Cargo Bay"; + departmentType = 2; + pixel_x = -30; + pixel_y = 0 + }, +/obj/item/weapon/coin/silver, +/turf/open/floor/plasteel/brown{ + dir = 9 + }, +/area/quartermaster/qm) +"bvG" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bvH" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bvI" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bvJ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/crew_quarters/hor) +"bvK" = ( +/turf/closed/wall, +/area/crew_quarters/hor) +"bvL" = ( +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/checkpoint/supply) +"bvM" = ( +/obj/machinery/light_switch{ + pixel_x = -20; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bvN" = ( +/obj/structure/chair/office/light, +/obj/effect/landmark/start{ + name = "Scientist" + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bvO" = ( +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bvP" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bvQ" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bvR" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bvS" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad" + }, +/obj/machinery/door/poddoor{ + id = "QMLoaddoor"; + name = "supply dock loading door" + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"bvT" = ( +/obj/structure/plasticflaps, +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad" + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"bvU" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad" + }, +/obj/machinery/light, +/obj/machinery/status_display{ + density = 0; + pixel_y = -30; + supply_display = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"bvV" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"bvW" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bvX" = ( +/obj/machinery/camera{ + c_tag = "Cargo Bay South"; + dir = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bvY" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=8"; + dir = 8; + freq = 1400; + location = "QM #4" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"bvZ" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 6; + pixel_y = -5 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bwa" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bwb" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bwc" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bwd" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/checkpoint/supply) +"bwe" = ( +/turf/closed/wall, +/area/security/checkpoint/supply) +"bwf" = ( +/obj/machinery/camera{ + c_tag = "Cargo Bay Entrance"; + dir = 4; + network = list("SS13") + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"bwg" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "hopqueue"; + name = "HoP Queue Shutters" + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/hallway/primary/central) +"bwh" = ( +/obj/structure/sign/securearea{ + pixel_y = 32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bwi" = ( +/obj/item/device/radio/intercom{ + dir = 8; + name = "Station Intercom (General)"; + pixel_x = -28 + }, +/obj/structure/closet/secure_closet/hop, +/turf/open/floor/plasteel/blue/side{ + dir = 10 + }, +/area/crew_quarters/heads) +"bwj" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bwk" = ( +/obj/structure/table, +/obj/item/weapon/book/manual/wiki/security_space_law, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bwl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bwm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/engine/gravity_generator) +"bwn" = ( +/obj/structure/closet/radiation, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'RADIOACTIVE AREA'"; + icon_state = "radiation"; + name = "RADIOACTIVE AREA"; + pixel_x = -32; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bwo" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/engine/gravity_generator) +"bwp" = ( +/obj/structure/closet/radiation, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'RADIOACTIVE AREA'"; + icon_state = "radiation"; + name = "RADIOACTIVE AREA"; + pixel_x = 32; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/gravity_generator) +"bwq" = ( +/obj/machinery/teleport/station, +/turf/open/floor/plating, +/area/teleporter) +"bwr" = ( +/obj/machinery/computer/teleporter, +/turf/open/floor/plating, +/area/teleporter) +"bws" = ( +/obj/structure/rack, +/obj/item/weapon/tank/internals/oxygen, +/obj/item/clothing/mask/gas, +/turf/open/floor/plating, +/area/teleporter) +"bwt" = ( +/obj/machinery/teleport/hub, +/turf/open/floor/plating, +/area/teleporter) +"bwu" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bwv" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=4"; + dir = 4; + freq = 1400; + location = "Medbay" + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/medical/medbay) +"bww" = ( +/obj/structure/chair, +/obj/machinery/camera{ + c_tag = "Surgery Observation" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bwx" = ( +/obj/machinery/door/window/eastleft{ + name = "Medical Delivery"; + req_access_txt = "5" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/medical/medbay) +"bwy" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bwz" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bwA" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bwB" = ( +/obj/structure/chair, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bwC" = ( +/obj/machinery/computer/med_data, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bwD" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bwE" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bwF" = ( +/obj/structure/table/glass, +/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ + pixel_x = 7; + pixel_y = 1 + }, +/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ + pixel_x = 7; + pixel_y = 1 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bwG" = ( +/obj/structure/sign/nosmoking_2, +/turf/closed/wall, +/area/medical/sleeper) +"bwH" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bwI" = ( +/obj/machinery/atmospherics/components/unary/cryo_cell, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bwJ" = ( +/obj/structure/table/glass, +/obj/machinery/camera{ + c_tag = "Medbay Cryogenics"; + dir = 2; + network = list("SS13"); + pixel_x = 0; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ + pixel_x = 0; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{ + pixel_x = 0; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bwK" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bwL" = ( +/obj/machinery/camera{ + c_tag = "Genetics Cloning"; + dir = 4; + network = list("SS13") + }, +/obj/structure/table, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/item/weapon/storage/box/rxglasses{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/bodybags, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bwM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint/science) +"bwN" = ( +/obj/machinery/light_switch{ + pixel_x = 8; + pixel_y = 28 + }, +/obj/machinery/button/door{ + id = "Biohazard"; + name = "Biohazard Shutter Control"; + pixel_x = -5; + pixel_y = 28; + req_access_txt = "47" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint/science) +"bwO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bwP" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/donkpockets{ + pixel_x = 3; + pixel_y = 3 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bwQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/crew_quarters/hor) +"bwR" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bwS" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/qm) +"bwT" = ( +/obj/machinery/door/airlock/glass_mining{ + name = "Quartermaster"; + req_access_txt = "41" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/qm) +"bwU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + dir = 4 + }, +/area/quartermaster/qm) +"bwV" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Shaft Miner" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bwW" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bwX" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/sortjunction{ + dir = 1; + icon_state = "pipe-j2s"; + sortType = 3 + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bwY" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Security Office"; + req_access_txt = "63" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint/supply) +"bwZ" = ( +/obj/structure/chair, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bxa" = ( +/obj/structure/chair, +/obj/structure/sign/nosmoking_2{ + pixel_x = -28 + }, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bxb" = ( +/obj/structure/chair, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bxc" = ( +/obj/machinery/holopad, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bxd" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bxe" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bxf" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bxg" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bxh" = ( +/obj/machinery/door/poddoor{ + id = "smindicate"; + name = "outer blast door" + }, +/obj/machinery/button/door{ + id = "smindicate"; + name = "external door control"; + pixel_x = -26; + pixel_y = 0; + req_access_txt = "150" + }, +/obj/docking_port/mobile{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate"; + name = "syndicate infiltrator"; + port_angle = 0; + roundstart_move = "syndicate_away"; + width = 18 + }, +/obj/docking_port/stationary{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate_nw"; + name = "northwest of station"; + turf_type = /turf/open/space; + width = 18 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"bxi" = ( +/obj/machinery/computer/aifixer, +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Research Director's Desk"; + departmentType = 5; + name = "Research Director RC"; + pixel_x = -2; + pixel_y = 30; + receive_ore_updates = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bxj" = ( +/obj/machinery/computer/security/telescreen{ + desc = "Used for watching the RD's goons and the AI's satellite from the safety of his office."; + name = "Research Monitor"; + network = list("RD","MiniSat"); + pixel_x = 0; + pixel_y = 2 + }, +/obj/structure/table, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bxk" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/storage/primary) +"bxl" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/aicore{ + pixel_x = -2; + pixel_y = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel/white, +/area/crew_quarters/hor) +"bxm" = ( +/obj/effect/landmark/xmastree/rdrod, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel/white, +/area/crew_quarters/hor) +"bxn" = ( +/turf/closed/wall, +/area/toxins/explab) +"bxo" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/explab) +"bxp" = ( +/obj/machinery/computer/rdconsole/experiment, +/turf/open/floor/plasteel/white/side{ + dir = 1 + }, +/area/toxins/explab) +"bxq" = ( +/obj/structure/table, +/obj/item/weapon/clipboard, +/obj/item/weapon/book/manual/experimentor, +/turf/open/floor/plasteel/white/corner{ + dir = 4 + }, +/area/toxins/explab) +"bxr" = ( +/obj/structure/closet/radiation, +/turf/open/floor/plasteel/white/corner{ + dir = 1 + }, +/area/toxins/explab) +"bxs" = ( +/obj/machinery/button/door{ + id = "telelab"; + name = "Test Chamber Blast Doors"; + pixel_x = 25; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"bxt" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bxu" = ( +/turf/closed/wall, +/area/quartermaster/qm) +"bxv" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/obj/effect/landmark/start/depsec/science, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint/science) +"bxw" = ( +/obj/machinery/door/airlock/glass_mining{ + name = "Quartermaster"; + req_access_txt = "41" + }, +/turf/open/floor/plasteel, +/area/quartermaster/qm) +"bxx" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/quartermaster/qm) +"bxy" = ( +/turf/closed/wall, +/area/quartermaster/miningdock) +"bxz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/quartermaster/miningdock) +"bxA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/mining{ + req_access_txt = "48" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bxB" = ( +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/weapon/pen, +/obj/structure/table, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/checkpoint/supply) +"bxC" = ( +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/structure/table, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint/supply) +"bxD" = ( +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/structure/table, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint/supply) +"bxE" = ( +/obj/machinery/computer/secure_data, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/checkpoint/supply) +"bxF" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bxG" = ( +/obj/machinery/door/airlock/command{ + name = "Head of Personnel"; + req_access = null; + req_access_txt = "57" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/crew_quarters/heads) +"bxH" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall, +/area/engine/gravity_generator) +"bxI" = ( +/obj/machinery/ai_status_display, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall, +/area/engine/gravity_generator) +"bxJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/closed/wall, +/area/engine/gravity_generator) +"bxK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/engine/gravity_generator) +"bxL" = ( +/obj/machinery/camera{ + c_tag = "Central Hallway South-East"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bxM" = ( +/obj/structure/chair/office/dark, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint2) +"bxN" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/structure/mirror{ + pixel_x = -28 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bxO" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bxP" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bxQ" = ( +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bxR" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bxS" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bxT" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bxU" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10; + pixel_x = 0; + initialize_directions = 10 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bxV" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bxW" = ( +/obj/machinery/door/airlock/glass_command{ + name = "Research Director"; + req_access_txt = "30" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bxX" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bxY" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bxZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bya" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"byb" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"byc" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/computer/stockexchange, +/turf/open/floor/plasteel/brown{ + dir = 2 + }, +/area/quartermaster/qm) +"byd" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/brown{ + dir = 2 + }, +/area/quartermaster/qm) +"bye" = ( +/obj/structure/sign/securearea, +/turf/closed/wall/r_wall, +/area/medical/genetics) +"byf" = ( +/turf/closed/wall/r_wall, +/area/toxins/server) +"byg" = ( +/obj/structure/table, +/obj/item/weapon/clipboard, +/obj/item/weapon/stamp/qm{ + pixel_x = 0; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + dir = 2 + }, +/area/quartermaster/qm) +"byh" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/command{ + name = "Server Room"; + req_access = null; + req_access_txt = "30" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"byi" = ( +/turf/closed/wall, +/area/security/checkpoint/science) +"byj" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Security Office"; + req_access_txt = "63" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/security/checkpoint/science) +"byk" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/checkpoint/science) +"byl" = ( +/obj/structure/table, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/pen{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/weapon/pen/red, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + dir = 2 + }, +/area/quartermaster/qm) +"bym" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/quartermaster/qm) +"byn" = ( +/obj/structure/filingcabinet, +/obj/machinery/light_switch{ + pixel_y = -25 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + dir = 6 + }, +/area/quartermaster/qm) +"byo" = ( +/obj/structure/table, +/obj/machinery/button/door{ + id = "Biohazard"; + name = "Biohazard Shutter Control"; + pixel_x = -5; + pixel_y = 5; + req_access_txt = "47" + }, +/obj/machinery/button/door{ + id = "rnd2"; + name = "Research Lab Shutter Control"; + pixel_x = 5; + pixel_y = 5; + req_access_txt = "47" + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"byp" = ( +/obj/machinery/computer/robotics, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"byq" = ( +/obj/structure/chair/office/light{ + dir = 8 + }, +/obj/effect/landmark/start{ + name = "Research Director" + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"byr" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/white, +/area/crew_quarters/hor) +"bys" = ( +/obj/structure/rack, +/obj/item/device/aicard, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/crew_quarters/hor) +"byt" = ( +/turf/closed/wall/r_wall, +/area/crew_quarters/hor) +"byu" = ( +/obj/structure/displaycase/labcage, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/crew_quarters/hor) +"byv" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "telelab"; + name = "test chamber blast door" + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/firedoor/heavy, +/turf/open/floor/engine, +/area/toxins/explab) +"byw" = ( +/obj/machinery/door/poddoor/preopen{ + id = "telelab"; + name = "test chamber blast door" + }, +/obj/machinery/door/firedoor/heavy, +/turf/open/floor/engine, +/area/toxins/explab) +"byx" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/heater{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"byy" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"byz" = ( +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/quartermaster/qm) +"byA" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Quartermaster APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/quartermaster/qm) +"byB" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/quartermaster/qm) +"byC" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/brown{ + dir = 1 + }, +/area/quartermaster/qm) +"byD" = ( +/obj/structure/closet/secure_closet/quartermaster, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/turf/open/floor/plasteel/brown{ + dir = 5 + }, +/area/quartermaster/qm) +"byE" = ( +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"byF" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "Mining Dock APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"byG" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"byH" = ( +/obj/machinery/light_switch{ + pixel_y = -25 + }, +/obj/structure/closet, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/security/checkpoint/supply) +"byI" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/checkpoint/supply) +"byJ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/security/checkpoint/supply) +"byK" = ( +/turf/open/floor/plasteel, +/area/security/checkpoint/supply) +"byL" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/obj/effect/landmark/start/depsec/supply, +/turf/open/floor/plasteel, +/area/security/checkpoint/supply) +"byM" = ( +/obj/item/device/radio/intercom{ + dir = 4; + name = "Station Intercom (General)"; + pixel_x = 27 + }, +/obj/machinery/computer/security/mining{ + network = list("MINE","AuxBase") + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/checkpoint/supply) +"byN" = ( +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"byO" = ( +/obj/machinery/requests_console{ + department = "Security"; + departmentType = 5; + pixel_y = -30 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint/supply) +"byP" = ( +/obj/structure/sign/securearea{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 1 + }, +/area/hallway/primary/central) +"byQ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 1 + }, +/area/hallway/primary/central) +"byR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/blue/side{ + dir = 1 + }, +/area/hallway/primary/central) +"byS" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"byT" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint/supply) +"byU" = ( +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"byV" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"byW" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = -32 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"byX" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"byY" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/medical/sleeper) +"byZ" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/medical/sleeper) +"bza" = ( +/obj/structure/chair, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bzb" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/medical/sleeper) +"bzc" = ( +/obj/machinery/door/airlock/glass_medical{ + id_tag = null; + name = "Recovery Room"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bzd" = ( +/obj/structure/table, +/obj/item/stack/packageWrap, +/obj/item/stack/packageWrap, +/obj/item/weapon/pen, +/obj/machinery/requests_console{ + announcementConsole = 0; + department = "Medbay"; + departmentType = 1; + name = "Medbay RC"; + pixel_x = 0; + pixel_y = 30; + pixel_z = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bze" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/shower{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bzf" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bzg" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bzh" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bzi" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bzj" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bzk" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bzl" = ( +/obj/machinery/dna_scannernew, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 10 + }, +/area/medical/genetics) +"bzm" = ( +/obj/machinery/clonepod, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 6 + }, +/area/medical/genetics) +"bzn" = ( +/obj/machinery/computer/cloning, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 2 + }, +/area/medical/genetics) +"bzo" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/machinery/light_switch{ + pixel_y = -28 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bzp" = ( +/obj/structure/closet/secure_closet/personal/patient, +/obj/machinery/light, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bzq" = ( +/obj/structure/closet/secure_closet/medical1, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bzr" = ( +/obj/structure/closet/wardrobe/genetics_white, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"bzs" = ( +/turf/closed/wall, +/area/maintenance/asmaint) +"bzt" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + external_pressure_bound = 140; + on = 1; + pressure_checks = 0 + }, +/turf/open/floor/circuit{ + name = "Server Base"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/server) +"bzu" = ( +/obj/machinery/r_n_d/server/robotics, +/turf/open/floor/circuit{ + name = "Server Base"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/server) +"bzv" = ( +/obj/machinery/atmospherics/pipe/simple{ + dir = 10 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bzw" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple{ + dir = 4 + }, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'SERVER ROOM'."; + name = "SERVER ROOM"; + pixel_y = 32 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/toxins/server) +"bzx" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + target_temperature = 80; + dir = 2; + on = 1 + }, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bzy" = ( +/obj/machinery/camera{ + c_tag = "Server Room"; + dir = 2; + network = list("SS13","RD"); + pixel_x = 22 + }, +/obj/machinery/power/apc{ + dir = 1; + name = "Server Room APC"; + pixel_x = 0; + pixel_y = 25 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bzz" = ( +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = -30; + pixel_y = 0 + }, +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/obj/structure/closet, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/checkpoint/science) +"bzA" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bzB" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bzC" = ( +/obj/structure/table, +/obj/machinery/recharger{ + pixel_y = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/checkpoint/science) +"bzD" = ( +/obj/structure/table, +/obj/machinery/computer/security/telescreen{ + desc = "Used for watching the RD's goons from the safety of your own office."; + name = "Research Monitor"; + network = list("RD"); + pixel_x = 0; + pixel_y = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint/science) +"bzE" = ( +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bzF" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bzG" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Central Access" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/central) +"bzH" = ( +/obj/structure/table, +/obj/item/weapon/hemostat, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white/side{ + dir = 2 + }, +/area/medical/sleeper) +"bzI" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/table, +/obj/item/weapon/surgicaldrill, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bzJ" = ( +/obj/machinery/computer/mecha, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bzK" = ( +/obj/structure/table, +/obj/item/weapon/scalpel{ + pixel_y = 12 + }, +/obj/item/weapon/circular_saw, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bzL" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/white, +/area/crew_quarters/hor) +"bzM" = ( +/obj/structure/rack, +/obj/item/device/taperecorder{ + pixel_x = -3 + }, +/obj/item/device/paicard{ + pixel_x = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel/white, +/area/crew_quarters/hor) +"bzN" = ( +/obj/machinery/modular_computer/console/preset/research, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel/white, +/area/crew_quarters/hor) +"bzO" = ( +/turf/open/floor/engine, +/area/toxins/explab) +"bzP" = ( +/obj/machinery/computer/cargo, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/quartermaster/qm) +"bzQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/qm) +"bzR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel, +/area/quartermaster/qm) +"bzS" = ( +/obj/structure/table, +/obj/item/weapon/cautery{ + pixel_x = 4 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bzT" = ( +/obj/structure/chair/office/dark, +/obj/effect/landmark/start{ + name = "Quartermaster" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/qm) +"bzU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 2 + }, +/area/medical/sleeper) +"bzV" = ( +/obj/structure/closet/wardrobe/white/medical, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bzW" = ( +/obj/structure/closet/l3closet, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bzX" = ( +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 8 + }, +/area/medical/medbay) +"bzY" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bzZ" = ( +/obj/machinery/door/firedoor/heavy, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bAa" = ( +/obj/machinery/door/firedoor/heavy, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bAb" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/effect/landmark/start{ + name = "Shaft Miner" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bAc" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bAd" = ( +/obj/item/weapon/screwdriver{ + pixel_y = 10 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/item/device/radio/off, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/checkpoint/supply) +"bAe" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=AIW"; + location = "QM" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bAf" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bAg" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=AftH"; + location = "AIW" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bAh" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=CHE"; + location = "AIE" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bAi" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bAj" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=HOP"; + location = "CHE" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bAk" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bAl" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/black, +/area/medical/sleeper) +"bAm" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bAn" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Mining Maintenance"; + req_access_txt = "48" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/quartermaster/miningdock) +"bAo" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/power/apc{ + dir = 1; + name = "Cargo Security APC"; + pixel_x = 1; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/security/checkpoint/supply) +"bAp" = ( +/obj/structure/closet/secure_closet/medical1, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bAq" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "Medbay Treatment Center"; + dir = 8; + network = list("SS13") + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bAr" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bAs" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1; + name = "Connector Port (Air Supply)" + }, +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bAt" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/wrench/medical, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bAu" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bAv" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1; + name = "Connector Port (Air Supply)" + }, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bAw" = ( +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bAx" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bAy" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/turf/open/floor/plasteel/black{ + name = "Server Walkway"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/server) +"bAz" = ( +/obj/machinery/airalarm/server{ + dir = 4; + pixel_x = -22; + pixel_y = 0 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/black{ + name = "Server Walkway"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/server) +"bAA" = ( +/obj/machinery/atmospherics/pipe/manifold{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bAB" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_command{ + name = "Server Room"; + req_access_txt = "30" + }, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bAC" = ( +/obj/machinery/atmospherics/pipe/simple{ + dir = 9 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bAD" = ( +/obj/structure/chair/office/light, +/obj/machinery/atmospherics/pipe/simple{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bAE" = ( +/obj/machinery/camera{ + c_tag = "Security Post - Science"; + dir = 4; + network = list("SS13","RD") + }, +/obj/machinery/newscaster{ + pixel_x = -30 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/checkpoint/science) +"bAF" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/security/checkpoint/science) +"bAG" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/security/checkpoint/science) +"bAH" = ( +/obj/structure/table, +/obj/item/weapon/book/manual/wiki/security_space_law, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/checkpoint/science) +"bAI" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bAJ" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bAK" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bAL" = ( +/obj/structure/table, +/obj/item/device/plant_analyzer, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plating, +/area/storage/tech) +"bAM" = ( +/obj/structure/table, +/obj/item/device/analyzer, +/obj/item/device/healthanalyzer, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bAN" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bAO" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bAP" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"bAQ" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/turf/open/floor/engine, +/area/toxins/explab) +"bAR" = ( +/obj/machinery/r_n_d/experimentor, +/turf/open/floor/engine, +/area/toxins/explab) +"bAS" = ( +/obj/machinery/computer/security/mining{ + network = list("MINE","AuxBase") + }, +/obj/machinery/camera{ + c_tag = "Quartermaster's Office"; + dir = 4 + }, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -35 + }, +/obj/machinery/status_display{ + density = 0; + pixel_x = -32; + pixel_y = 0; + supply_display = 1 + }, +/turf/open/floor/plasteel/brown{ + dir = 10 + }, +/area/quartermaster/qm) +"bAT" = ( +/obj/structure/closet/jcloset, +/turf/open/floor/plasteel, +/area/janitor) +"bAU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/janitor) +"bAV" = ( +/obj/machinery/door/window/westleft{ + name = "Janitoral Delivery"; + req_access_txt = "26" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/janitor) +"bAW" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bAX" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/table, +/obj/item/clothing/gloves/color/latex, +/obj/item/clothing/mask/surgical, +/obj/item/clothing/suit/apron/surgical, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/medical/sleeper) +"bAY" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bAZ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bBa" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bBb" = ( +/obj/effect/landmark/start{ + name = "Medical Doctor" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bBc" = ( +/obj/structure/table, +/obj/item/weapon/surgical_drapes, +/obj/item/weapon/razor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 8 + }, +/area/medical/sleeper) +"bBd" = ( +/obj/structure/table, +/obj/structure/bedsheetbin{ + pixel_x = 2 + }, +/obj/item/clothing/suit/straight_jacket, +/obj/item/clothing/mask/muzzle, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 8 + }, +/area/medical/sleeper) +"bBe" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 4 + }, +/area/medical/sleeper) +"bBf" = ( +/obj/structure/filingcabinet, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 30; + pixel_y = 0 + }, +/obj/machinery/newscaster{ + pixel_x = 0; + pixel_y = -32 + }, +/obj/machinery/camera{ + c_tag = "Security Post - Cargo"; + dir = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/checkpoint/supply) +"bBg" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBh" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/brown/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"bBi" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBj" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBk" = ( +/obj/machinery/door/firedoor, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/camera{ + c_tag = "Central Primary Hallway South-West"; + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBm" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 8 + }, +/area/medical/medbay) +"bBn" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bBo" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBp" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBq" = ( +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-j2"; + dir = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/sign/directions/engineering{ + pixel_x = -32; + pixel_y = -40 + }, +/obj/structure/sign/directions/medical{ + dir = 4; + icon_state = "direction_med"; + pixel_x = -32; + pixel_y = -24 + }, +/obj/structure/sign/directions/evac{ + dir = 4; + icon_state = "direction_evac"; + pixel_x = -32; + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBr" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/status_display{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBs" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBt" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Central Primary Hallway South"; + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBu" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBv" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 8; + icon_state = "pipe-j2s"; + sortType = 22 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBw" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bBx" = ( +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBy" = ( +/obj/machinery/light, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBz" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBA" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/junction{ + dir = 8; + icon_state = "pipe-j2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBB" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bBC" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bBD" = ( +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bBE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bBF" = ( +/obj/machinery/portable_atmospherics/scrubber, +/obj/machinery/airalarm{ + frequency = 1439; + locked = 0; + pixel_y = 23 + }, +/obj/item/weapon/storage/firstaid/toxin, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bBG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bBH" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/quartermaster/miningdock) +"bBI" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/closet/wardrobe/miner, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bBJ" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bBK" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bBL" = ( +/obj/machinery/vending/medical{ + pixel_x = -2 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bBM" = ( +/obj/structure/table, +/obj/item/stack/sheet/glass{ + amount = 10 + }, +/obj/item/device/multitool, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"bBN" = ( +/turf/closed/wall, +/area/medical/cmo) +"bBO" = ( +/obj/machinery/computer/med_data, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bBP" = ( +/obj/machinery/computer/crew, +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Chief Medical Officer's Desk"; + departmentType = 5; + name = "Chief Medical Officer RC"; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bBQ" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bBR" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bBS" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + external_pressure_bound = 120; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/circuit{ + name = "Server Base"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/server) +"bBT" = ( +/obj/machinery/r_n_d/server/core, +/turf/open/floor/circuit{ + name = "Server Base"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/server) +"bBU" = ( +/obj/machinery/atmospherics/pipe/simple{ + dir = 9 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bBV" = ( +/obj/structure/grille, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'SERVER ROOM'."; + name = "SERVER ROOM"; + pixel_y = -32 + }, +/obj/machinery/atmospherics/pipe/simple{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/toxins/server) +"bBW" = ( +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bBX" = ( +/obj/machinery/computer/rdservercontrol, +/turf/open/floor/plasteel/black, +/area/toxins/server) +"bBY" = ( +/obj/item/device/radio/intercom{ + pixel_x = -25 + }, +/obj/structure/filingcabinet, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/security/checkpoint/science) +"bBZ" = ( +/obj/item/weapon/screwdriver{ + pixel_y = 10 + }, +/obj/item/device/radio/off, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint/science) +"bCa" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Science Security APC"; + pixel_y = -24 + }, +/obj/structure/cable, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint/science) +"bCb" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/checkpoint/science) +"bCc" = ( +/obj/machinery/computer/secure_data, +/obj/machinery/requests_console{ + department = "Security"; + departmentType = 5; + pixel_y = -30 + }, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint/science) +"bCd" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 8; + icon_state = "pipe-j1s"; + sortType = 15 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bCe" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bCf" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "RD Office APC"; + pixel_x = -25 + }, +/obj/structure/cable, +/obj/machinery/light_switch{ + pixel_y = -23 + }, +/obj/item/weapon/twohanded/required/kirbyplants/dead, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bCg" = ( +/obj/structure/table, +/obj/item/weapon/cartridge/signal/toxins, +/obj/item/weapon/cartridge/signal/toxins{ + pixel_x = -4; + pixel_y = 2 + }, +/obj/item/weapon/cartridge/signal/toxins{ + pixel_x = 4; + pixel_y = 6 + }, +/obj/machinery/camera{ + c_tag = "Research Director's Office"; + dir = 1; + network = list("SS13","RD") + }, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bCh" = ( +/obj/machinery/keycard_auth{ + pixel_x = 0; + pixel_y = -24 + }, +/obj/machinery/light, +/obj/machinery/computer/card/minor/rd, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bCi" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bCj" = ( +/obj/structure/closet/secure_closet/RD, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bCk" = ( +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/hor) +"bCl" = ( +/obj/machinery/camera{ + c_tag = "Experimentor Lab Chamber"; + dir = 1; + network = list("SS13","RD") + }, +/obj/machinery/light, +/obj/structure/sign/nosmoking_2{ + pixel_y = -32 + }, +/turf/open/floor/engine, +/area/toxins/explab) +"bCm" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bCn" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bCo" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bCp" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"bCq" = ( +/turf/closed/wall, +/area/maintenance/aft) +"bCr" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bCs" = ( +/turf/closed/wall, +/area/storage/tech) +"bCt" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/janitor) +"bCu" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass{ + name = "Central Access" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"bCv" = ( +/turf/closed/wall, +/area/janitor) +"bCw" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/janitor) +"bCx" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/gateway) +"bCy" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/janitor) +"bCz" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bCA" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plasteel/black, +/area/hallway/primary/central) +"bCB" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/airlock/maintenance{ + name = "Surgery Maintenance"; + req_access_txt = "45" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/sleeper) +"bCC" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bCD" = ( +/obj/structure/table, +/obj/item/weapon/retractor, +/turf/open/floor/plasteel/white/side{ + dir = 2 + }, +/area/medical/sleeper) +"bCE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCF" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCG" = ( +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/weapon/gun/syringe, +/obj/item/weapon/reagent_containers/dropper, +/obj/item/weapon/soap/nanotrasen, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCH" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCI" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood, +/area/library) +"bCJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCK" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCL" = ( +/obj/structure/closet/secure_closet/medical3, +/obj/machinery/camera{ + c_tag = "Medbay Storage"; + dir = 2; + network = list("SS13") + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCM" = ( +/obj/structure/closet/secure_closet/medical3, +/obj/machinery/airalarm{ + pixel_y = 24 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCN" = ( +/obj/structure/disposalpipe/trunk, +/obj/machinery/disposal/bin, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCO" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/bodybags{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/rxglasses, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/medical/sleeper) +"bCQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/medical/sleeper) +"bCR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bCS" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 4 + }, +/area/medical/sleeper) +"bCT" = ( +/obj/structure/table, +/obj/item/weapon/storage/belt/medical{ + pixel_x = 0; + pixel_y = 2 + }, +/obj/item/weapon/storage/belt/medical{ + pixel_x = 0; + pixel_y = 2 + }, +/obj/item/weapon/storage/belt/medical{ + pixel_x = 0; + pixel_y = 2 + }, +/obj/item/clothing/neck/stethoscope, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bCU" = ( +/obj/item/device/radio/intercom{ + broadcasting = 0; + freerange = 0; + frequency = 1485; + listening = 1; + name = "Station Intercom (Medbay)"; + pixel_x = -30; + pixel_y = 0 + }, +/obj/machinery/camera{ + c_tag = "Medbay South"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bCV" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bCW" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bCX" = ( +/obj/effect/decal/cleanable/oil, +/obj/item/weapon/cigbutt, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bCY" = ( +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bCZ" = ( +/obj/structure/chair/office/light, +/obj/effect/landmark/start{ + name = "Chief Medical Officer" + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bDa" = ( +/obj/machinery/keycard_auth{ + pixel_x = 24; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bDb" = ( +/turf/closed/wall/r_wall, +/area/toxins/xenobiology) +"bDc" = ( +/turf/closed/wall, +/area/toxins/storage) +"bDd" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bDe" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/hallway/primary/port) +"bDf" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bDg" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 3; + name = "3maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bDh" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bDi" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; + name = "KEEP CLEAR: DOCKING AREA"; + pixel_y = 32 + }, +/turf/open/space, +/area/space) +"bDj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bDk" = ( +/obj/structure/table, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/pen, +/obj/machinery/requests_console{ + department = "Mining"; + departmentType = 0; + pixel_x = -30; + pixel_y = 0 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bDl" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bDm" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bDn" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bDo" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bDp" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"bDq" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/obj/item/key/janitor, +/turf/open/floor/plasteel, +/area/janitor) +"bDr" = ( +/obj/item/weapon/restraints/legcuffs/beartrap, +/obj/item/weapon/restraints/legcuffs/beartrap, +/obj/item/weapon/storage/box/mousetraps, +/obj/item/weapon/storage/box/mousetraps, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/janitor) +"bDs" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plasteel, +/area/janitor) +"bDt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall, +/area/maintenance/aft) +"bDu" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bDv" = ( +/obj/structure/table, +/obj/item/device/flashlight{ + pixel_x = 1; + pixel_y = 5 + }, +/obj/item/device/flashlight{ + pixel_x = 1; + pixel_y = 5 + }, +/obj/item/device/assembly/flash/handheld, +/obj/item/device/assembly/flash/handheld, +/obj/machinery/ai_status_display{ + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bDw" = ( +/obj/structure/table, +/obj/item/weapon/screwdriver{ + pixel_y = 16 + }, +/obj/item/weapon/wirecutters, +/turf/open/floor/plating, +/area/storage/tech) +"bDx" = ( +/obj/structure/table, +/obj/item/weapon/electronics/apc, +/obj/item/weapon/electronics/airlock, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bDy" = ( +/obj/machinery/camera{ + c_tag = "Tech Storage"; + dir = 2 + }, +/obj/machinery/power/apc{ + dir = 1; + name = "Tech Storage APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bDz" = ( +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bDA" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/power/apc{ + dir = 4; + name = "Treatment Center APC"; + pixel_x = 26; + pixel_y = 0 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/sleeper) +"bDB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 4 + }, +/area/medical/sleeper) +"bDC" = ( +/obj/machinery/computer/operating, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bDD" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = -28 + }, +/obj/structure/bed, +/obj/item/weapon/bedsheet/medical, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 1 + }, +/area/medical/sleeper) +"bDE" = ( +/obj/machinery/vending/wallmed{ + pixel_x = 28; + pixel_y = 0 + }, +/obj/machinery/camera{ + c_tag = "Medbay Recovery Room"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bDF" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "medpriv4"; + name = "privacy door" + }, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/medbay) +"bDG" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"bDH" = ( +/obj/structure/closet/l3closet/janitor, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plasteel, +/area/janitor) +"bDI" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bDJ" = ( +/obj/item/weapon/storage/box/lights/mixed, +/obj/item/weapon/storage/box/lights/mixed, +/turf/open/floor/plasteel, +/area/janitor) +"bDK" = ( +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/camera{ + c_tag = "Custodial Closet" + }, +/obj/vehicle/janicart, +/turf/open/floor/plasteel, +/area/janitor) +"bDL" = ( +/turf/open/floor/plasteel, +/area/janitor) +"bDM" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/janitor) +"bDN" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bDO" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bDP" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=8"; + dir = 1; + freq = 1400; + location = "Janitor" + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/janitor) +"bDQ" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bDR" = ( +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bDS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bDT" = ( +/obj/effect/landmark/start{ + name = "Medical Doctor" + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bDU" = ( +/obj/machinery/door/airlock/glass_command{ + name = "Chief Medical Officer"; + req_access_txt = "40" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bDV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/sortjunction{ + sortType = 10 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bDW" = ( +/obj/machinery/door/airlock/glass_medical{ + id_tag = null; + name = "Medbay Storage"; + req_access_txt = "45" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bDX" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/mob/living/simple_animal/mouse, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bDY" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bDZ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bEa" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bEb" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bEc" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bEd" = ( +/obj/machinery/door/airlock/glass_medical{ + id_tag = null; + name = "Medbay Storage"; + req_access_txt = "45" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bEe" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bEf" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bEg" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/door/airlock/research{ + name = "Toxins Storage"; + req_access_txt = "8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bEh" = ( +/obj/structure/table/glass, +/obj/item/weapon/paper_bin{ + pixel_x = -2; + pixel_y = 5 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bEi" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/medical/cmo) +"bEj" = ( +/obj/structure/table/glass, +/obj/item/weapon/pen, +/obj/item/clothing/neck/stethoscope, +/mob/living/simple_animal/pet/cat/Runtime, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bEk" = ( +/obj/structure/table/glass, +/obj/item/weapon/folder/white, +/obj/item/weapon/stamp/cmo, +/obj/item/clothing/glasses/hud/health, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bEl" = ( +/obj/structure/disposalpipe/segment, +/obj/item/device/radio/intercom{ + pixel_x = 25 + }, +/obj/machinery/camera{ + c_tag = "Chief Medical Office"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = -22 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bEm" = ( +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bEn" = ( +/obj/machinery/camera{ + c_tag = "Xenobiology Test Chamber"; + dir = 2; + network = list("Xeno","RD"); + pixel_x = 0 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bEo" = ( +/obj/machinery/portable_atmospherics/canister/toxins, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/toxins/storage) +"bEp" = ( +/obj/machinery/portable_atmospherics/canister/toxins, +/obj/structure/sign/nosmoking_2{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/toxins/storage) +"bEq" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Misc Research APC"; + pixel_x = -25 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bEr" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bEs" = ( +/turf/closed/wall, +/area/toxins/mixing) +"bEt" = ( +/obj/machinery/vending/coffee, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bEu" = ( +/obj/structure/closet/bombcloset, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bEv" = ( +/obj/structure/closet/bombcloset, +/obj/machinery/light_switch{ + pixel_x = 0; + pixel_y = 28 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bEw" = ( +/obj/machinery/portable_atmospherics/canister, +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bEx" = ( +/obj/machinery/portable_atmospherics/canister, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/machinery/camera{ + c_tag = "Toxins Lab West"; + dir = 2; + network = list("SS13","RD"); + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bEy" = ( +/obj/machinery/portable_atmospherics/pump, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bEz" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bEA" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bEB" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bEC" = ( +/turf/closed/wall/r_wall, +/area/toxins/mixing) +"bED" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bEE" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bEF" = ( +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bEG" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bEH" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/toxins/mixing) +"bEI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bEJ" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"bEK" = ( +/obj/machinery/computer/security/mining{ + network = list("MINE","AuxBase") + }, +/obj/machinery/camera{ + c_tag = "Mining Dock"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bEL" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bEM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/toxins/mixing) +"bEN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bEO" = ( +/obj/structure/sign/securearea{ + pixel_x = -32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bEP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bEQ" = ( +/obj/effect/landmark/start{ + name = "Shaft Miner" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bER" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bES" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/maintenance/aft) +"bET" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bEU" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/storage/tech) +"bEV" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/storage/tech) +"bEW" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/storage/tech) +"bEX" = ( +/obj/structure/table, +/obj/item/device/aicard, +/obj/item/weapon/aiModule/reset, +/turf/open/floor/plating, +/area/storage/tech) +"bEY" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/storage/tech) +"bEZ" = ( +/obj/structure/table, +/obj/item/stack/cable_coil{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/stack/cable_coil, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plating, +/area/storage/tech) +"bFa" = ( +/turf/open/floor/plating, +/area/storage/tech) +"bFb" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/storage/tech) +"bFc" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bFd" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bFe" = ( +/obj/machinery/door/airlock/engineering{ + name = "Tech Storage"; + req_access_txt = "23" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bFf" = ( +/obj/structure/chair/stool, +/obj/effect/landmark/start{ + name = "Janitor" + }, +/turf/open/floor/plasteel, +/area/janitor) +"bFg" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/janitor) +"bFh" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bFi" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel, +/area/janitor) +"bFj" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bFk" = ( +/obj/item/weapon/mop, +/obj/item/weapon/reagent_containers/glass/bucket, +/turf/open/floor/plasteel, +/area/janitor) +"bFl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/power/apc{ + dir = 8; + name = "Custodial Closet APC"; + pixel_x = -24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/janitor) +"bFm" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 8; + icon_state = "pipe-j2s"; + sortType = 6 + }, +/obj/structure/grille, +/obj/structure/window/fulltile{ + obj_integrity = 25 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bFn" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/grille/broken, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bFo" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bFp" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bFq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"bFr" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bFs" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Custodial Maintenance"; + req_access_txt = "26" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/janitor) +"bFt" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bFu" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/medical{ + name = "Operating Theatre"; + req_access_txt = "45" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bFv" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bFw" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 8 + }, +/area/medical/sleeper) +"bFx" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bFy" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bFz" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/white/side{ + dir = 1 + }, +/area/medical/sleeper) +"bFA" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bFB" = ( +/obj/structure/closet/secure_closet/medical2, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"bFC" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/condiment/peppermill{ + pixel_x = 5; + pixel_y = -2 + }, +/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ + pixel_x = -2; + pixel_y = 2 + }, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"bFD" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bFE" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bFF" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bFG" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bFH" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/light_switch{ + pixel_x = 28; + pixel_y = 0 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bFI" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bFJ" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/medical, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bFK" = ( +/obj/structure/closet/wardrobe/pjs, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bFL" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bFM" = ( +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-j2"; + dir = 2 + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bFN" = ( +/obj/structure/table, +/obj/item/weapon/cartridge/medical{ + pixel_x = -2; + pixel_y = 6 + }, +/obj/item/weapon/cartridge/medical{ + pixel_x = 6; + pixel_y = 3 + }, +/obj/item/weapon/cartridge/medical, +/obj/item/weapon/cartridge/chemistry{ + pixel_y = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bFO" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/cmo) +"bFP" = ( +/obj/machinery/computer/card/minor/cmo, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bFQ" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = -32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bFR" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bFS" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bFT" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bFU" = ( +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bFV" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/obj/machinery/meter, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bFW" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bFX" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bFY" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bFZ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/toxins/mixing) +"bGa" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/maintenance/asmaint2) +"bGb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/closed/wall, +/area/toxins/mixing) +"bGc" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/toxins/mixing) +"bGd" = ( +/obj/machinery/doppler_array{ + dir = 4 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/toxins/mixing) +"bGe" = ( +/turf/closed/wall, +/area/toxins/test_area) +"bGf" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bGg" = ( +/obj/structure/table, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"bGh" = ( +/obj/machinery/computer/shuttle/mining, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"bGi" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/quartermaster/miningdock) +"bGj" = ( +/obj/machinery/computer/shuttle/mining, +/turf/open/floor/plasteel/brown{ + dir = 9 + }, +/area/quartermaster/miningdock) +"bGk" = ( +/obj/structure/chair/stool, +/obj/effect/landmark/start{ + name = "Scientist" + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bGl" = ( +/obj/item/device/assembly/prox_sensor{ + pixel_x = -4; + pixel_y = 1 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = 8; + pixel_y = 9 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = 9; + pixel_y = -2 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = 0; + pixel_y = 2 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bGm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bGn" = ( +/obj/structure/closet/secure_closet/miner, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bGo" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Firefighting equipment"; + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bGp" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/aft) +"bGq" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bGr" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/storage/tech) +"bGs" = ( +/obj/machinery/camera{ + c_tag = "Secure Tech Storage"; + dir = 2 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/storage/tech) +"bGt" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/circuitboard/computer/borgupload{ + pixel_x = -1; + pixel_y = 1 + }, +/obj/item/weapon/circuitboard/computer/aiupload{ + pixel_x = 2; + pixel_y = -2 + }, +/turf/open/floor/plasteel, +/area/storage/tech) +"bGu" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE" + }, +/turf/closed/wall/r_wall, +/area/storage/tech) +"bGv" = ( +/obj/structure/table, +/obj/machinery/cell_charger{ + pixel_y = 5 + }, +/obj/item/device/multitool, +/turf/open/floor/plating, +/area/storage/tech) +"bGw" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/circuitboard/computer/pandemic{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/circuitboard/computer/rdconsole, +/obj/item/weapon/circuitboard/machine/rdserver{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/item/weapon/circuitboard/machine/destructive_analyzer, +/obj/item/weapon/circuitboard/machine/protolathe, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/item/weapon/circuitboard/computer/aifixer, +/obj/item/weapon/circuitboard/computer/teleporter, +/obj/item/weapon/circuitboard/machine/circuit_imprinter, +/obj/item/weapon/circuitboard/machine/mechfab, +/turf/open/floor/plating, +/area/storage/tech) +"bGx" = ( +/obj/structure/rack, +/obj/item/weapon/circuitboard/machine/telecomms/processor, +/obj/item/weapon/circuitboard/machine/telecomms/receiver, +/obj/item/weapon/circuitboard/machine/telecomms/server, +/obj/item/weapon/circuitboard/machine/telecomms/bus, +/obj/item/weapon/circuitboard/machine/telecomms/broadcaster, +/obj/item/weapon/circuitboard/computer/message_monitor{ + pixel_y = -5 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bGy" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/circuitboard/computer/mining, +/obj/item/weapon/circuitboard/machine/autolathe{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/item/weapon/circuitboard/computer/arcade/battle, +/turf/open/floor/plating, +/area/storage/tech) +"bGz" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/wrench, +/obj/item/weapon/screwdriver{ + pixel_y = 10 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bGA" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bGB" = ( +/obj/structure/table, +/obj/item/weapon/grenade/chem_grenade/cleaner, +/obj/item/weapon/grenade/chem_grenade/cleaner, +/obj/item/weapon/grenade/chem_grenade/cleaner, +/obj/machinery/requests_console{ + department = "Janitorial"; + departmentType = 1; + pixel_y = -29 + }, +/obj/item/weapon/reagent_containers/spray/cleaner, +/turf/open/floor/plasteel, +/area/janitor) +"bGC" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/airlock/research{ + name = "Toxins Launch Room Access"; + req_access_txt = "8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bGD" = ( +/obj/structure/janitorialcart, +/turf/open/floor/plasteel, +/area/janitor) +"bGE" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/janitor) +"bGF" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bGG" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bGH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bGI" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bGJ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bGK" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bGL" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bGM" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bGN" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bGO" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"bGP" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bGQ" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bGR" = ( +/obj/structure/table, +/obj/item/weapon/hand_labeler, +/obj/item/weapon/gun/syringe, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bGS" = ( +/obj/structure/closet/crate/freezer/surplus_limbs, +/obj/item/weapon/reagent_containers/glass/beaker/synthflesh, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bGT" = ( +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/clothing/neck/stethoscope, +/obj/machinery/vending/wallmed{ + pixel_y = 28 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bGU" = ( +/obj/structure/closet/secure_closet/personal/patient, +/obj/machinery/button/door{ + id = "medpriv4"; + name = "Privacy Shutters"; + pixel_y = 25 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bGV" = ( +/obj/structure/chair/office/light{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bGW" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bGX" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bGY" = ( +/obj/machinery/portable_atmospherics/scrubber/huge, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bGZ" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bHa" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/closed/wall, +/area/medical/cmo) +"bHb" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bHc" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bHd" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bHe" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Toxins Storage APC"; + pixel_x = -25 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/camera{ + c_tag = "Toxins Storage"; + dir = 4; + network = list("SS13","RD") + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bHf" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bHg" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bHh" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bHi" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bHj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bHk" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bHl" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"bHm" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/airlock/research{ + name = "Toxins Lab"; + req_access_txt = "8" + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bHn" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/closed/wall/r_wall, +/area/maintenance/asmaint) +"bHo" = ( +/obj/structure/closet, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bHp" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bHq" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bHr" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/toxins/mixing) +"bHs" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/corner{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bHt" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"bHu" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bHv" = ( +/obj/machinery/computer/security/telescreen{ + desc = "Used for watching the test chamber."; + dir = 8; + layer = 4; + name = "Test Chamber Telescreen"; + network = list("Toxins"); + pixel_x = 30; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bHw" = ( +/obj/item/target, +/obj/structure/window/reinforced, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/toxins/test_area) +"bHx" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"bHy" = ( +/obj/structure/closet/crate, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/device/radio/intercom{ + dir = 4; + name = "Station Intercom (General)"; + pixel_x = 27 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bHz" = ( +/obj/item/weapon/ore/iron, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bHA" = ( +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/quartermaster/miningdock) +"bHB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/mob/living/simple_animal/mouse, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bHC" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bHD" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/chair/stool, +/turf/open/floor/plating, +/area/maintenance/aft) +"bHE" = ( +/turf/open/floor/plating, +/area/maintenance/aft) +"bHF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"bHG" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/circuitboard/computer/crew{ + pixel_x = -1; + pixel_y = 1 + }, +/obj/item/weapon/circuitboard/computer/card{ + pixel_x = 2; + pixel_y = -2 + }, +/obj/item/weapon/circuitboard/computer/communications{ + pixel_x = 5; + pixel_y = -5 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/storage/tech) +"bHH" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bHI" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Secure Tech Storage"; + req_access_txt = "19;23" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bHJ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bHK" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bHL" = ( +/obj/machinery/camera{ + c_tag = "Research Division South"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/door/firedoor/heavy, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/medical/research{ + name = "Research Division" + }) +"bHM" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bHN" = ( +/obj/machinery/requests_console{ + department = "Tech storage"; + pixel_x = 0; + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bHO" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = -1 + }, +/obj/item/device/multitool, +/obj/item/clothing/glasses/meson, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/storage/tech) +"bHP" = ( +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"bHQ" = ( +/obj/machinery/vending/assist, +/turf/open/floor/plating, +/area/storage/tech) +"bHR" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/camera{ + c_tag = "Aft Primary Hallway 2"; + dir = 4; + network = list("SS13") + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bHS" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bHT" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "medpriv1"; + name = "privacy door" + }, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/medbay) +"bHU" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/grille/broken, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bHV" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Medbay Maintenance APC"; + pixel_x = -24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bHW" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/grille, +/obj/structure/window/fulltile{ + obj_integrity = 35 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bHX" = ( +/obj/structure/grille, +/obj/structure/window/fulltile{ + obj_integrity = 25 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bHY" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bHZ" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bIa" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bIb" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bIc" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/plasteel/white/side{ + dir = 1 + }, +/area/medical/sleeper) +"bId" = ( +/obj/machinery/vending/wallmed{ + pixel_y = -28 + }, +/obj/machinery/camera{ + c_tag = "Surgery Operating"; + dir = 1; + network = list("SS13"); + pixel_x = 22 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bIe" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = -32; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bIf" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/doorButtons/access_button{ + idDoor = "virology_airlock_exterior"; + idSelf = "virology_airlock_control"; + name = "Virology Access Button"; + pixel_x = -24; + pixel_y = 0; + req_access_txt = "39" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/virology{ + autoclose = 0; + frequency = 1449; + icon_state = "door_locked"; + id_tag = "virology_airlock_exterior"; + locked = 1; + name = "Virology Exterior Airlock"; + req_access_txt = "39" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bIg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/sortjunction{ + dir = 2; + icon_state = "pipe-j2s"; + sortType = 13 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bIh" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bIi" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/o2{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/o2, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bIj" = ( +/obj/structure/table, +/obj/machinery/light, +/obj/item/weapon/reagent_containers/spray/cleaner, +/obj/item/clothing/glasses/hud/health, +/obj/item/clothing/glasses/hud/health, +/obj/item/clothing/glasses/hud/health, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bIk" = ( +/obj/structure/table, +/obj/machinery/requests_console{ + announcementConsole = 0; + department = "Medbay"; + departmentType = 1; + name = "Medbay RC"; + pixel_x = 0; + pixel_y = -30; + pixel_z = 0 + }, +/obj/item/weapon/storage/firstaid/fire{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bIl" = ( +/obj/structure/table, +/obj/item/device/radio/intercom{ + broadcasting = 0; + freerange = 0; + frequency = 1485; + listening = 1; + name = "Station Intercom (Medbay)"; + pixel_x = 0; + pixel_y = -30 + }, +/obj/item/weapon/storage/firstaid/toxin{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/toxin, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bIm" = ( +/obj/machinery/light, +/obj/structure/table, +/obj/item/weapon/storage/box/beakers{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/box/syringes, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = 7; + pixel_y = -3 + }, +/obj/item/weapon/reagent_containers/glass/bottle/morphine{ + pixel_x = 8; + pixel_y = -3 + }, +/obj/item/weapon/reagent_containers/syringe{ + pixel_x = 6; + pixel_y = -3 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bIn" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/brute{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/brute, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"bIo" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/medical, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bIp" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bIq" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bIr" = ( +/obj/machinery/door/airlock/medical{ + name = "Patient Room"; + req_access_txt = "5" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bIs" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/airlock/maintenance{ + name = "Xenobiology Maintenance"; + req_access_txt = "55" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/toxins/xenobiology) +"bIt" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bIu" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bIv" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bIw" = ( +/obj/structure/closet/secure_closet/CMO, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/barber, +/area/medical/cmo) +"bIx" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE" + }, +/turf/closed/wall/r_wall, +/area/toxins/xenobiology) +"bIy" = ( +/obj/structure/disposaloutlet{ + dir = 1 + }, +/obj/structure/disposalpipe/trunk, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bIz" = ( +/obj/machinery/portable_atmospherics/canister/carbon_dioxide, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/toxins/storage) +"bIA" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/toxins/storage) +"bIB" = ( +/obj/machinery/portable_atmospherics/canister/nitrous_oxide, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/toxins/storage) +"bIC" = ( +/turf/open/floor/plasteel/floorgrime, +/area/toxins/storage) +"bID" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/medical/research{ + name = "Research Division" + }) +"bIE" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bIF" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bIG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bIH" = ( +/obj/machinery/pipedispenser/disposal, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bII" = ( +/obj/item/weapon/storage/secure/safe{ + pixel_x = 5; + pixel_y = 29 + }, +/obj/machinery/camera{ + c_tag = "Virology Break Room" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bIJ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bIK" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bIL" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bIM" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/sign/securearea{ + pixel_x = 32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bIN" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/toxins/xenobiology) +"bIO" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bIP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/chair/comfy/black, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bIQ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bIR" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bIS" = ( +/obj/machinery/door/airlock/research{ + name = "Toxins Launch Room"; + req_access_txt = "8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bIT" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/toxins/xenobiology) +"bIU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bIV" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bIW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bIX" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'BOMB RANGE"; + name = "BOMB RANGE" + }, +/turf/closed/wall, +/area/toxins/test_area) +"bIY" = ( +/obj/structure/chair, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bIZ" = ( +/obj/structure/chair, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bJa" = ( +/obj/item/device/flashlight/lamp, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bJb" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Mining Dock Airlock"; + req_access = null; + req_access_txt = "48"; + shuttledocked = 1 + }, +/turf/open/floor/plating, +/area/quartermaster/miningdock) +"bJc" = ( +/obj/machinery/door/airlock/titanium{ + name = "Mining Shuttle Airlock"; + req_access_txt = "0" + }, +/obj/docking_port/mobile{ + dir = 8; + dwidth = 3; + height = 5; + id = "mining"; + name = "mining shuttle"; + port_angle = 90; + width = 7 + }, +/obj/docking_port/stationary{ + dir = 8; + dwidth = 3; + height = 5; + id = "mining_home"; + name = "mining shuttle bay"; + width = 7 + }, +/turf/open/floor/plating, +/area/shuttle/labor) +"bJd" = ( +/obj/machinery/door/airlock/glass_mining{ + cyclelinkeddir = 8; + name = "Mining Dock"; + req_access_txt = "48" + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bJe" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/aft) +"bJf" = ( +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/maintenance/aft) +"bJg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/storage/tech) +"bJh" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/circuitboard/computer/robotics{ + pixel_x = -2; + pixel_y = 2 + }, +/obj/item/weapon/circuitboard/computer/mecha_control{ + pixel_x = 1; + pixel_y = -1 + }, +/turf/open/floor/plasteel, +/area/storage/tech) +"bJi" = ( +/obj/structure/sign/securearea, +/turf/closed/wall/r_wall, +/area/storage/tech) +"bJj" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/subspace/analyzer, +/obj/item/weapon/stock_parts/subspace/analyzer, +/obj/item/weapon/stock_parts/subspace/analyzer, +/turf/open/floor/plating, +/area/storage/tech) +"bJk" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/circuitboard/computer/cloning{ + pixel_x = 0 + }, +/obj/item/weapon/circuitboard/computer/med_data{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/item/weapon/circuitboard/machine/clonescanner, +/obj/item/weapon/circuitboard/machine/clonepod, +/obj/item/weapon/circuitboard/computer/scan_consolenew, +/turf/open/floor/plating, +/area/storage/tech) +"bJl" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/circuitboard/computer/powermonitor{ + pixel_x = -2; + pixel_y = 2 + }, +/obj/item/weapon/circuitboard/computer/stationalert{ + pixel_x = 1; + pixel_y = -1 + }, +/obj/item/weapon/circuitboard/computer/atmos_alert{ + pixel_x = 3; + pixel_y = -3 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bJm" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/circuitboard/computer/secure_data{ + pixel_x = -2; + pixel_y = 2 + }, +/obj/item/weapon/circuitboard/computer/security{ + pixel_x = 1; + pixel_y = -1 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bJn" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/turf/open/floor/plating, +/area/storage/tech) +"bJo" = ( +/turf/open/floor/plasteel/white/side{ + dir = 1 + }, +/area/medical/research{ + name = "Research Division" + }) +"bJp" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bJq" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bJr" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/white/side{ + dir = 1 + }, +/area/medical/research{ + name = "Research Division" + }) +"bJs" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bJt" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bJu" = ( +/obj/structure/light_construct{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/construction) +"bJv" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bJw" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bJx" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/blue/corner{ + dir = 8 + }, +/area/hallway/primary/central) +"bJy" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bJz" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 1 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bJA" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bJB" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel, +/area/atmos) +"bJC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/medical/sleeper) +"bJD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall/r_wall, +/area/medical/sleeper) +"bJE" = ( +/turf/closed/wall/r_wall, +/area/medical/medbay) +"bJF" = ( +/obj/machinery/pipedispenser/disposal/transit_tube, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bJG" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bJH" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/shieldwallgen{ + req_access_txt = "55" + }, +/turf/open/floor/plating, +/area/toxins/xenobiology) +"bJI" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "misclab"; + name = "test chamber blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bJJ" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "misclab"; + name = "test chamber blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bJK" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "misclab"; + name = "test chamber blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bJL" = ( +/obj/machinery/door/window/southleft{ + dir = 1; + name = "Test Chamber"; + req_access_txt = "55" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/door/poddoor/preopen{ + id = "misclab"; + name = "test chamber blast door" + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bJM" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/preopen{ + id = "misclab"; + name = "test chamber blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bJN" = ( +/turf/closed/wall, +/area/toxins/xenobiology) +"bJO" = ( +/obj/machinery/door/airlock/research{ + name = "Testing Lab"; + req_access_txt = "47" + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bJP" = ( +/obj/machinery/vending/boozeomat, +/turf/open/floor/plasteel/bar, +/area/maintenance/aft) +"bJQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bJR" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/toxins/storage) +"bJS" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"bJT" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"bJU" = ( +/obj/structure/closet/wardrobe/science_white, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bJV" = ( +/obj/structure/closet/l3closet/scientist{ + pixel_x = -2 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bJW" = ( +/obj/item/device/transfer_valve{ + pixel_x = -5 + }, +/obj/item/device/transfer_valve{ + pixel_x = -5 + }, +/obj/item/device/transfer_valve{ + pixel_x = 0 + }, +/obj/item/device/transfer_valve{ + pixel_x = 0 + }, +/obj/item/device/transfer_valve{ + pixel_x = 5 + }, +/obj/item/device/transfer_valve{ + pixel_x = 5 + }, +/obj/machinery/requests_console{ + department = "Science"; + departmentType = 2; + name = "Science Requests Console"; + pixel_x = 0; + pixel_y = -30; + receive_ore_updates = 1 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bJX" = ( +/obj/item/device/assembly/signaler{ + pixel_x = 0; + pixel_y = 8 + }, +/obj/item/device/assembly/signaler{ + pixel_x = -8; + pixel_y = 5 + }, +/obj/item/device/assembly/signaler{ + pixel_x = 6; + pixel_y = 5 + }, +/obj/item/device/assembly/signaler{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bJY" = ( +/obj/structure/tank_dispenser, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bJZ" = ( +/obj/item/device/assembly/timer{ + pixel_x = 5; + pixel_y = 4 + }, +/obj/item/device/assembly/timer{ + pixel_x = -4; + pixel_y = 2 + }, +/obj/item/device/assembly/timer{ + pixel_x = 6; + pixel_y = -4 + }, +/obj/item/device/assembly/timer{ + pixel_x = 0; + pixel_y = 0 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bKa" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Toxins Lab APC"; + pixel_x = 26; + pixel_y = 0 + }, +/obj/structure/cable, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bKb" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bKc" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bKd" = ( +/obj/machinery/camera{ + c_tag = "Toxins Launch Room Access"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bKe" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/toxins/mixing) +"bKf" = ( +/obj/machinery/door/window/southleft{ + name = "Mass Driver Door"; + req_access_txt = "7" + }, +/turf/open/floor/plasteel/loadingarea, +/area/toxins/mixing) +"bKg" = ( +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bKh" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bKi" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bKj" = ( +/obj/machinery/camera{ + c_tag = "Mining Dock External"; + dir = 8 + }, +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bKk" = ( +/obj/item/weapon/ore/silver, +/obj/item/weapon/ore/silver, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bKl" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel/brown{ + dir = 10 + }, +/area/quartermaster/miningdock) +"bKm" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0 + }, +/turf/closed/wall, +/area/quartermaster/miningdock) +"bKn" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/weapon/pickaxe{ + pixel_x = 5 + }, +/obj/item/weapon/shovel{ + pixel_x = -5 + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bKo" = ( +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bKp" = ( +/obj/structure/closet/crate, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bKq" = ( +/obj/machinery/mineral/equipment_vendor, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"bKr" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/storage/tech) +"bKs" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/storage/tech) +"bKt" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/micro_laser, +/obj/item/weapon/stock_parts/manipulator, +/obj/item/weapon/stock_parts/manipulator, +/obj/item/weapon/stock_parts/manipulator, +/obj/item/weapon/stock_parts/manipulator, +/obj/item/weapon/stock_parts/capacitor, +/obj/item/weapon/stock_parts/micro_laser/high, +/obj/item/weapon/stock_parts/micro_laser/high, +/obj/item/weapon/stock_parts/micro_laser/high, +/obj/item/weapon/stock_parts/micro_laser/high, +/turf/open/floor/plating, +/area/storage/tech) +"bKu" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/subspace/amplifier, +/obj/item/weapon/stock_parts/subspace/amplifier, +/obj/item/weapon/stock_parts/subspace/amplifier, +/turf/open/floor/plating, +/area/storage/tech) +"bKv" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bKw" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/asmaint) +"bKx" = ( +/obj/structure/closet/crate, +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/construction) +"bKy" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/maintenance/asmaint) +"bKz" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKA" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plating, +/area/construction) +"bKB" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKC" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/chair/office/dark{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Cargo Technician" + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bKG" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/sign/securearea{ + pixel_x = 0; + pixel_y = -32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKH" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKI" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 8; + icon_state = "pipe-j1s"; + sortType = 11 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKJ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKK" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + dir = 4; + name = "Medbay APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/medical/medbay) +"bKL" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKM" = ( +/obj/machinery/vending/wallmed{ + pixel_y = 28 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bKN" = ( +/obj/machinery/door/airlock/medical{ + name = "Patient Room 2"; + req_access_txt = "5" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bKO" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bKP" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/window/westleft{ + name = "Delivery Desk"; + req_access_txt = "50" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/bot, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bKQ" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/medical/medbay) +"bKS" = ( +/obj/machinery/power/apc{ + dir = 1; + name = "CM Office APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/cmo) +"bKT" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bKU" = ( +/obj/machinery/door/airlock/engineering{ + name = "Construction Area"; + req_access_txt = "32" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/construction) +"bKV" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bKW" = ( +/obj/item/weapon/wrench, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bKX" = ( +/obj/machinery/button/door{ + id = "misclab"; + name = "Test Chamber Blast Doors"; + pixel_x = 0; + pixel_y = -2; + req_access_txt = "55" + }, +/obj/structure/table/reinforced, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bKY" = ( +/obj/machinery/computer/security/telescreen{ + name = "Test Chamber Moniter"; + network = list("Xeno"); + pixel_x = 0; + pixel_y = 2 + }, +/obj/structure/table/reinforced, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bKZ" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bLa" = ( +/obj/machinery/door/window/southleft{ + name = "Test Chamber"; + req_access_txt = "55" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bLb" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bLc" = ( +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas, +/obj/item/clothing/glasses/science, +/obj/item/clothing/glasses/science, +/obj/structure/table, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bLd" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/machinery/doorButtons/access_button{ + idDoor = "virology_airlock_interior"; + idSelf = "virology_airlock_control"; + name = "Virology Access Button"; + pixel_x = 8; + pixel_y = -28; + req_access_txt = "39" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bLe" = ( +/obj/structure/sign/biohazard, +/turf/closed/wall, +/area/toxins/xenobiology) +"bLf" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bLg" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bLh" = ( +/obj/structure/sign/fire, +/turf/closed/wall, +/area/medical/research{ + name = "Research Division" + }) +"bLi" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bLj" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/toxins/mixing) +"bLk" = ( +/obj/machinery/mass_driver{ + dir = 4; + id = "toxinsdriver" + }, +/turf/open/floor/plating, +/area/toxins/mixing) +"bLl" = ( +/obj/machinery/door/poddoor{ + id = "toxinsdriver"; + name = "toxins launcher bay door" + }, +/turf/open/floor/plating, +/area/toxins/mixing) +"bLm" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/toxins/mixing) +"bLn" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bLo" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bLp" = ( +/obj/item/device/radio/beacon, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bLq" = ( +/turf/closed/indestructible{ + desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; + icon_state = "riveted"; + name = "hyper-reinforced wall" + }, +/area/toxins/test_area) +"bLr" = ( +/obj/machinery/camera{ + active_power_usage = 0; + c_tag = "Bomb Test Site"; + desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site."; + dir = 8; + invuln = 1; + light = null; + name = "Hardened Bomb-Test Camera"; + network = list("Toxins"); + use_power = 0 + }, +/obj/item/target/alien{ + anchored = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating{ + luminosity = 2; + initial_gas_mix = "o2=0.01;n2=0.01" + }, +/area/toxins/test_area) +"bLs" = ( +/obj/structure/ore_box, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"bLt" = ( +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating, +/area/shuttle/labor) +"bLu" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/aft) +"bLv" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/aft) +"bLw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bLx" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/subspace/transmitter, +/obj/item/weapon/stock_parts/subspace/transmitter, +/obj/item/weapon/stock_parts/subspace/treatment, +/obj/item/weapon/stock_parts/subspace/treatment, +/obj/item/weapon/stock_parts/subspace/treatment, +/turf/open/floor/plating, +/area/storage/tech) +"bLy" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/subspace/ansible, +/obj/item/weapon/stock_parts/subspace/ansible, +/obj/item/weapon/stock_parts/subspace/ansible, +/obj/item/weapon/stock_parts/subspace/crystal, +/obj/item/weapon/stock_parts/subspace/crystal, +/obj/item/weapon/stock_parts/subspace/crystal, +/turf/open/floor/plating, +/area/storage/tech) +"bLz" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/subspace/filter, +/obj/item/weapon/stock_parts/subspace/filter, +/obj/item/weapon/stock_parts/subspace/filter, +/obj/item/weapon/stock_parts/subspace/filter, +/obj/item/weapon/stock_parts/subspace/filter, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/storage/tech) +"bLA" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = -1 + }, +/obj/item/clothing/gloves/color/yellow, +/obj/item/device/t_scanner, +/obj/item/device/multitool, +/turf/open/floor/plating, +/area/storage/tech) +"bLB" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bLC" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/construction) +"bLD" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/storage/tech) +"bLE" = ( +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"bLF" = ( +/obj/structure/filingcabinet/filingcabinet, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bLG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"bLH" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel/caution{ + dir = 5 + }, +/area/hallway/primary/aft) +"bLI" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bLJ" = ( +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/atmos) +"bLK" = ( +/turf/closed/wall/r_wall, +/area/atmos) +"bLL" = ( +/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/atmos) +"bLM" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/atmos) +"bLN" = ( +/obj/machinery/portable_atmospherics/canister/nitrous_oxide, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/atmos) +"bLO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/airlock/maintenance{ + name = "Atmospherics Maintenance"; + req_access_txt = "24" + }, +/turf/open/floor/plating, +/area/atmos) +"bLP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/atmos) +"bLQ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/closed/wall/r_wall, +/area/atmos) +"bLR" = ( +/obj/machinery/atmospherics/pipe/simple/supply/visible, +/turf/closed/wall/r_wall, +/area/atmos) +"bLS" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bLT" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bLU" = ( +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/clothing/neck/stethoscope, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bLV" = ( +/obj/structure/closet/secure_closet/personal/patient, +/obj/machinery/button/door{ + id = "medpriv1"; + name = "Privacy Shutters"; + pixel_y = -25 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bLW" = ( +/obj/structure/chair/office/light{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bLX" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel/white, +/area/medical/medbay) +"bLY" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bLZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bMa" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bMb" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bMc" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Medbay Maintenance"; + req_access_txt = "5" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/medical/medbay) +"bMd" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bMe" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/junction, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bMf" = ( +/obj/structure/table, +/obj/machinery/cell_charger{ + pixel_y = 5 + }, +/obj/item/stack/cable_coil, +/obj/item/device/multitool, +/obj/item/weapon/stock_parts/cell/high/plus, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bMg" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Xenobiology APC"; + pixel_x = -25 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMh" = ( +/obj/structure/chair/stool, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMi" = ( +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/closed/wall, +/area/maintenance/aft) +"bMk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMl" = ( +/obj/machinery/processor{ + desc = "A machine used to process slimes and retrieve their extract."; + name = "Slime Processor" + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMm" = ( +/obj/machinery/monkey_recycler, +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMn" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMo" = ( +/obj/machinery/smartfridge/extract, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMp" = ( +/obj/structure/closet/l3closet/scientist, +/obj/machinery/light_switch{ + pixel_x = 0; + pixel_y = 28 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMq" = ( +/obj/structure/closet/l3closet/scientist, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bMr" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/toxins/xenobiology) +"bMs" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/medical/research{ + name = "Research Division" + }) +"bMt" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/engine/vacuum, +/area/toxins/mixing) +"bMu" = ( +/obj/machinery/door/poddoor{ + id = "mixvent"; + name = "Mixer Room Vent" + }, +/turf/open/floor/engine/vacuum, +/area/toxins/mixing) +"bMv" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/toxins/mixing) +"bMw" = ( +/obj/machinery/sparker{ + dir = 2; + id = "mixingsparker"; + pixel_x = 25 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + external_pressure_bound = 0; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/engine/vacuum, +/area/toxins/mixing) +"bMx" = ( +/obj/machinery/airlock_sensor{ + id_tag = "tox_airlock_sensor"; + master_tag = "tox_airlock_control"; + pixel_y = 24 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/engine, +/area/toxins/mixing) +"bMy" = ( +/obj/machinery/atmospherics/components/binary/valve{ + dir = 4; + name = "mix to port" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bMz" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/meter, +/obj/machinery/embedded_controller/radio/airlock_controller{ + airpump_tag = "tox_airlock_pump"; + exterior_door_tag = "tox_airlock_exterior"; + id_tag = "tox_airlock_control"; + interior_door_tag = "tox_airlock_interior"; + pixel_x = -24; + pixel_y = 0; + sanitize_external = 1; + sensor_tag = "tox_airlock_sensor" + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bMA" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bMB" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bMC" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bMD" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bME" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bMF" = ( +/obj/structure/shuttle/engine/propulsion/burst, +/obj/structure/window/reinforced{ + dir = 1; + layer = 2.9 + }, +/turf/open/floor/plating/airless, +/area/shuttle/labor) +"bMG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bMH" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bMI" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bMJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bMK" = ( +/turf/closed/wall, +/area/atmos) +"bML" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plasteel, +/area/atmos) +"bMM" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bMN" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bMO" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bMP" = ( +/obj/machinery/firealarm{ + dir = 2; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bMQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bMR" = ( +/obj/machinery/pipedispenser, +/turf/open/floor/plasteel, +/area/atmos) +"bMS" = ( +/obj/machinery/camera{ + c_tag = "Atmospherics North East" + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Distro to Waste"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bMT" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + dir = 8 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/meter{ + frequency = 1441; + id_tag = "waste_meter"; + name = "Waste Loop" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bMU" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/visible{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bMV" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/visible{ + dir = 2 + }, +/obj/machinery/meter{ + frequency = 1441; + id_tag = "distro_meter"; + name = "Distribution Loop" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bMW" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 10; + initialize_directions = 10 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bMX" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Air to Distro"; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bMY" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/atmos) +"bMZ" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bNa" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/turf/open/space, +/area/space) +"bNb" = ( +/obj/item/weapon/airlock_painter, +/obj/structure/lattice, +/obj/structure/closet, +/turf/open/space, +/area/space/nearstation) +"bNc" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/medical/virology) +"bNd" = ( +/turf/closed/wall/r_wall, +/area/medical/virology) +"bNe" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/table, +/obj/item/weapon/hand_labeler, +/obj/item/clothing/glasses/science, +/obj/item/clothing/glasses/science, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bNf" = ( +/obj/structure/sign/biohazard, +/turf/closed/wall, +/area/medical/virology) +"bNg" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bNh" = ( +/obj/machinery/computer/pandemic, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 4 + }, +/area/medical/virology) +"bNi" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bNj" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_virology{ + name = "Isolation A"; + req_access_txt = "39" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bNk" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/medical/virology) +"bNl" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_virology{ + name = "Isolation B"; + req_access_txt = "39" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bNm" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bNn" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bNo" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bNp" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bNq" = ( +/obj/structure/table, +/obj/item/stack/sheet/glass{ + amount = 50; + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/mineral/plasma{ + layer = 2.9 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bNr" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/research{ + name = "Xenobiology Lab"; + req_access_txt = "55" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bNs" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bNt" = ( +/turf/open/floor/engine/vacuum, +/area/toxins/mixing) +"bNu" = ( +/obj/machinery/door/airlock/glass_research{ + autoclose = 0; + frequency = 1449; + glass = 1; + heat_proof = 1; + icon_state = "door_locked"; + id_tag = "tox_airlock_exterior"; + locked = 1; + name = "Mixing Room Exterior Airlock"; + req_access_txt = "8" + }, +/turf/open/floor/engine, +/area/toxins/mixing) +"bNv" = ( +/obj/machinery/door/airlock/glass_research{ + autoclose = 0; + frequency = 1449; + glass = 1; + heat_proof = 1; + icon_state = "door_locked"; + id_tag = "tox_airlock_interior"; + locked = 1; + name = "Mixing Room Interior Airlock"; + req_access_txt = "8" + }, +/turf/open/floor/engine, +/area/toxins/mixing) +"bNw" = ( +/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{ + dir = 2; + frequency = 1449; + id = "tox_airlock_pump" + }, +/turf/open/floor/engine, +/area/toxins/mixing) +"bNx" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bNy" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bNz" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/camera{ + c_tag = "Toxins Lab East"; + dir = 8; + network = list("SS13","RD"); + pixel_y = -22 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bNA" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bNB" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bNC" = ( +/obj/structure/closet/wardrobe/grey, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bND" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bNE" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bNF" = ( +/obj/item/device/flashlight/lamp, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plating/airless, +/area/toxins/test_area) +"bNG" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/toxins/test_area) +"bNH" = ( +/obj/structure/table/reinforced, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -26 + }, +/obj/item/weapon/paper_bin{ + pixel_x = -3 + }, +/obj/item/weapon/pen{ + pixel_x = -3 + }, +/obj/item/weapon/folder/yellow{ + pixel_x = 4 + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bNI" = ( +/turf/closed/wall, +/area/construction) +"bNJ" = ( +/turf/open/floor/plating, +/area/construction) +"bNK" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_mining{ + name = "Cargo Office"; + req_access_txt = "50" + }, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bNL" = ( +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plating, +/area/construction) +"bNM" = ( +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/quartermaster/office) +"bNN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bNO" = ( +/turf/open/floor/plasteel/caution{ + dir = 6 + }, +/area/hallway/primary/aft) +"bNP" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = -30 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bNQ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bNR" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/camera{ + c_tag = "Atmospherics Monitoring"; + dir = 2; + network = list("SS13") + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/caution{ + dir = 5 + }, +/area/atmos) +"bNS" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bNT" = ( +/obj/machinery/camera{ + c_tag = "Atmospherics North West"; + dir = 4; + network = list("SS13") + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bNU" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plating, +/area/medical/virology) +"bNV" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bNW" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bNX" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bNY" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bNZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bOa" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bOb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bOc" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Mix to Distro"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bOd" = ( +/turf/open/floor/plasteel, +/area/atmos) +"bOe" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 8; + initialize_directions = 11 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/atmos) +"bOf" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 10; + initialize_directions = 10 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bOg" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Mix to Incinerator"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bOh" = ( +/obj/structure/grille, +/turf/closed/wall/r_wall, +/area/atmos) +"bOi" = ( +/turf/open/floor/plasteel/airless{ + icon_state = "damaged5" + }, +/area/space/nearstation) +"bOj" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/closed/wall/r_wall, +/area/medical/virology) +"bOk" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bOl" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/announcement_system, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bOm" = ( +/obj/item/weapon/bedsheet, +/obj/structure/bed, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bOn" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bOo" = ( +/obj/item/device/radio/intercom{ + dir = 8; + freerange = 1; + name = "Station Intercom (Telecoms)"; + pixel_x = 0; + pixel_y = 26 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bOp" = ( +/obj/structure/closet/emcloset, +/obj/machinery/camera{ + c_tag = "Virology Airlock"; + dir = 2; + network = list("SS13") + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bOq" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bOr" = ( +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bOs" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bOt" = ( +/mob/living/carbon/monkey, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bOu" = ( +/obj/structure/rack, +/obj/item/clothing/mask/gas{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/machinery/airalarm{ + dir = 4; + locked = 0; + pixel_x = -23; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bOv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bOw" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/droneDispenser, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bOx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bOy" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bOz" = ( +/obj/structure/chair/stool, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bOA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white/side{ + dir = 1 + }, +/area/medical/research{ + name = "Research Division" + }) +"bOB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bOC" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bOD" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bOE" = ( +/obj/machinery/sparker{ + dir = 2; + id = "mixingsparker"; + pixel_x = 25 + }, +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 4; + frequency = 1441; + id = "air_in" + }, +/turf/open/floor/engine/vacuum, +/area/toxins/mixing) +"bOF" = ( +/obj/structure/sign/fire{ + pixel_y = -32 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/engine, +/area/toxins/mixing) +"bOG" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/components/binary/valve{ + dir = 4; + name = "port to mix" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bOH" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/meter, +/obj/machinery/button/door{ + id = "mixvent"; + name = "Mixing Room Vent Control"; + pixel_x = -25; + pixel_y = 5; + req_access_txt = "7" + }, +/obj/machinery/button/ignition{ + id = "mixingsparker"; + pixel_x = -25; + pixel_y = -5 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/mixing) +"bOI" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"bOJ" = ( +/obj/item/target, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, +/area/toxins/test_area) +"bOK" = ( +/obj/structure/barricade/wooden, +/obj/structure/girder, +/turf/open/floor/plating, +/area/maintenance/aft) +"bOL" = ( +/obj/structure/closet/crate, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"bOM" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bON" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "kanyewest"; + layer = 2.9; + name = "privacy shutters" + }, +/turf/open/floor/plating, +/area/security/detectives_office) +"bOO" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Engineering Security APC"; + pixel_x = -24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 9 + }, +/area/security/checkpoint/engineering) +"bOP" = ( +/obj/structure/table/glass, +/obj/structure/reagent_dispensers/virusfood{ + density = 0; + pixel_x = -30 + }, +/obj/item/weapon/book/manual/wiki/infections{ + pixel_y = 7 + }, +/obj/item/weapon/reagent_containers/syringe/antiviral, +/obj/item/weapon/reagent_containers/dropper, +/obj/item/weapon/reagent_containers/spray/cleaner, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 8 + }, +/area/medical/virology) +"bOQ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 8 + }, +/area/hallway/primary/aft) +"bOR" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bOS" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/atmos) +"bOT" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=4"; + dir = 4; + freq = 1400; + location = "Atmospherics" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/atmos) +"bOU" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bOV" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bOW" = ( +/obj/machinery/computer/atmos_control, +/obj/machinery/requests_console{ + department = "Atmospherics"; + departmentType = 4; + name = "Atmos RC"; + pixel_x = 30; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/caution{ + dir = 4 + }, +/area/atmos) +"bOX" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bOY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/atmos) +"bOZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bPa" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bPb" = ( +/obj/machinery/door/airlock/glass_research{ + name = "Firing Range"; + req_access_txt = "47" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bPc" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bPd" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 0; + name = "Waste In"; + on = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bPe" = ( +/obj/machinery/atmospherics/pipe/manifold/yellow/visible, +/turf/open/floor/plasteel, +/area/atmos) +"bPf" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 0; + name = "Air to Mix"; + on = 0 + }, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bPg" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Mix Outlet Pump"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bPh" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bPi" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/atmospherics/pipe/manifold/yellow/visible, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/atmos) +"bPj" = ( +/obj/machinery/atmospherics/pipe/simple{ + dir = 4 + }, +/obj/structure/grille, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/atmos) +"bPk" = ( +/obj/machinery/camera{ + c_tag = "Atmospherics Waste Tank" + }, +/turf/open/floor/engine/vacuum, +/area/atmos) +"bPl" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + external_pressure_bound = 0; + frequency = 1441; + id_tag = "mix_out"; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/engine/vacuum, +/area/atmos) +"bPm" = ( +/turf/open/floor/engine/vacuum, +/area/atmos) +"bPn" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bPo" = ( +/obj/structure/table, +/obj/machinery/microwave{ + pixel_x = -3; + pixel_y = 6 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bPp" = ( +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bPq" = ( +/obj/machinery/shower{ + dir = 4 + }, +/obj/structure/sign/securearea{ + pixel_x = -32; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bPr" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/closet/l3closet, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bPs" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bPt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/mob/living/carbon/monkey, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bPu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bPv" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bPw" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/medical/virology) +"bPx" = ( +/obj/machinery/disposal/bin, +/obj/structure/sign/deathsposal{ + pixel_x = 0; + pixel_y = -32 + }, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPy" = ( +/obj/effect/landmark/start{ + name = "Scientist" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/chair/comfy/black, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPz" = ( +/obj/machinery/light, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/table/glass, +/obj/item/weapon/storage/box/monkeycubes, +/obj/item/weapon/storage/box/monkeycubes, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPA" = ( +/obj/machinery/computer/camera_advanced/xenobio, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPB" = ( +/obj/structure/table/glass, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPC" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPD" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPE" = ( +/obj/structure/table, +/obj/item/weapon/extinguisher{ + pixel_x = 4; + pixel_y = 3 + }, +/obj/item/weapon/extinguisher, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPF" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bPG" = ( +/obj/structure/table, +/obj/item/stack/sheet/mineral/plasma{ + layer = 2.9 + }, +/obj/item/stack/sheet/mineral/plasma{ + layer = 2.9 + }, +/obj/item/stack/sheet/mineral/plasma{ + layer = 2.9 + }, +/obj/machinery/light, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPH" = ( +/obj/structure/table, +/obj/machinery/requests_console{ + department = "Science"; + departmentType = 2; + name = "Science Requests Console"; + pixel_x = 0; + pixel_y = -30; + receive_ore_updates = 1 + }, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPI" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPJ" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/beakers{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/box/syringes, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bPK" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/toxins/misc_lab) +"bPL" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bPM" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bPN" = ( +/turf/closed/wall, +/area/toxins/misc_lab) +"bPO" = ( +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bPP" = ( +/obj/effect/decal/cleanable/oil, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bPQ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bPR" = ( +/obj/effect/decal/cleanable/robot_debris/old, +/turf/open/floor/wood, +/area/maintenance/aft) +"bPS" = ( +/turf/open/floor/wood, +/area/maintenance/aft) +"bPT" = ( +/turf/open/floor/wood{ + icon_state = "wood-broken" + }, +/area/maintenance/aft) +"bPU" = ( +/obj/item/weapon/shard, +/turf/open/floor/plating, +/area/maintenance/aft) +"bPV" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Maint Bar Access"; + req_access_txt = "12" + }, +/obj/structure/barricade/wooden{ + name = "wooden barricade (CLOSED)" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bPW" = ( +/obj/effect/decal/cleanable/oil, +/turf/open/floor/plating, +/area/maintenance/aft) +"bPX" = ( +/obj/structure/closet/emcloset, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/maintenance/aft) +"bPY" = ( +/obj/structure/girder, +/obj/structure/grille/broken, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"bPZ" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bQa" = ( +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/aft) +"bQb" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bQc" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plating, +/area/construction) +"bQd" = ( +/obj/structure/table, +/obj/item/weapon/folder/blue, +/obj/item/weapon/pen/blue, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bQe" = ( +/obj/item/weapon/screwdriver{ + pixel_y = 10 + }, +/obj/machinery/button/door{ + desc = "A remote control-switch for the engineering security doors."; + id = "Engineering"; + name = "Engineering Lockdown"; + pixel_x = -24; + pixel_y = -6; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/item/device/radio/off, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/checkpoint/engineering) +"bQf" = ( +/turf/open/floor/plasteel/caution{ + dir = 5 + }, +/area/hallway/primary/aft) +"bQg" = ( +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bQh" = ( +/obj/structure/tank_dispenser{ + pixel_x = -1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bQi" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "atmos"; + layer = 2.9; + name = "atmos blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bQj" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQk" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQl" = ( +/obj/machinery/computer/atmos_control, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/caution{ + dir = 4 + }, +/area/atmos) +"bQm" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQn" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bQo" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQq" = ( +/obj/machinery/camera{ + c_tag = "Security Post - Engineering"; + dir = 8; + network = list("SS13") + }, +/obj/item/device/radio/intercom{ + dir = 4; + name = "Station Intercom (General)"; + pixel_x = 27 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/checkpoint/engineering) +"bQr" = ( +/obj/structure/closet/crate, +/turf/open/floor/plasteel, +/area/atmos) +"bQs" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Mix to Filter"; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQt" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQu" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQv" = ( +/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQw" = ( +/obj/machinery/atmospherics/pipe/manifold/green/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQx" = ( +/obj/machinery/atmospherics/pipe/manifold/green/visible{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bQy" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bQz" = ( +/obj/machinery/computer/atmos_control/tank{ + frequency = 1441; + input_tag = "mix_in"; + name = "Gas Mix Tank Control"; + output_tag = "mix_out"; + sensors = list("mix_sensor" = "Tank") + }, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/atmos) +"bQA" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating/airless, +/area/atmos) +"bQB" = ( +/obj/machinery/air_sensor{ + frequency = 1441; + id_tag = "mix_sensor" + }, +/turf/open/floor/engine/vacuum, +/area/atmos) +"bQC" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/engine/vacuum, +/area/atmos) +"bQD" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bQE" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/donkpockets{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/machinery/newscaster{ + pixel_x = -30 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bQF" = ( +/obj/structure/closet/wardrobe/virology_white, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bQG" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/toxins/misc_lab) +"bQH" = ( +/obj/structure/closet/l3closet, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bQI" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bQJ" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bQK" = ( +/obj/machinery/door/airlock/glass_command{ + name = "Control Room"; + req_access_txt = "19; 61" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bQL" = ( +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bQM" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bQN" = ( +/obj/machinery/door/firedoor, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Xenobiology North"; + dir = 8; + network = list("SS13","RD") + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bQO" = ( +/obj/structure/closet/bombcloset, +/obj/machinery/light_switch{ + pixel_x = -20; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bQP" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/tcommsat/computer) +"bQQ" = ( +/obj/machinery/door/firedoor, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bQR" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/weapon/storage/toolbox/mechanical, +/obj/item/clothing/ears/earmuffs, +/obj/machinery/camera{ + c_tag = "Testing Lab North"; + dir = 2; + network = list("SS13","RD") + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bQS" = ( +/obj/machinery/requests_console{ + department = "Science"; + departmentType = 2; + dir = 2; + name = "Science Requests Console"; + pixel_x = 0; + pixel_y = 30; + receive_ore_updates = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bQT" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 1 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bQU" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bQV" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 4; + req_access = null + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bQW" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/heater{ + dir = 8 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bQX" = ( +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bQY" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bQZ" = ( +/turf/closed/wall/r_wall, +/area/toxins/misc_lab) +"bRa" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bRb" = ( +/obj/structure/rack, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bRc" = ( +/obj/structure/table/wood, +/obj/item/weapon/soap/nanotrasen, +/turf/open/floor/wood{ + icon_state = "wood-broken7" + }, +/area/maintenance/aft) +"bRd" = ( +/obj/structure/table, +/obj/machinery/chem_dispenser/drinks/beer, +/turf/open/floor/wood, +/area/maintenance/aft) +"bRe" = ( +/obj/structure/table/wood, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/turf/open/floor/wood, +/area/maintenance/aft) +"bRf" = ( +/obj/structure/table/wood, +/turf/open/floor/wood{ + icon_state = "wood-broken5" + }, +/area/maintenance/aft) +"bRg" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bRh" = ( +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 3; + name = "3maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bRi" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bRj" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bRk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/security/checkpoint/engineering) +"bRl" = ( +/obj/structure/light_construct{ + dir = 8 + }, +/turf/open/floor/plating, +/area/construction) +"bRm" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Security Office"; + req_access_txt = "63" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint/engineering) +"bRn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/construction) +"bRo" = ( +/obj/machinery/computer/secure_data, +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/security/checkpoint/engineering) +"bRp" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bRq" = ( +/turf/open/floor/plasteel/caution{ + dir = 4 + }, +/area/hallway/primary/aft) +"bRr" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/landmark/start{ + name = "Atmospheric Technician" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bRs" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/window/northleft{ + dir = 4; + icon_state = "left"; + name = "Atmospherics Desk"; + req_access_txt = "24" + }, +/obj/machinery/door/poddoor/preopen{ + id = "atmos"; + layer = 2.9; + name = "atmos blast door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/atmos) +"bRt" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bRu" = ( +/obj/machinery/computer/atmos_alert, +/turf/open/floor/plasteel/caution{ + dir = 4 + }, +/area/atmos) +"bRv" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Atmospheric Technician" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRw" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel, +/area/atmos) +"bRx" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bRy" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRz" = ( +/obj/machinery/atmospherics/components/trinary/mixer{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 6 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_atmos{ + name = "Distribution Loop"; + req_access_txt = "24" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRE" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Pure to Mix"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRF" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRG" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Unfiltered to Mix"; + on = 1 + }, +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4; + initialize_directions = 12 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRH" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 5; + initialize_directions = 12 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bRI" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bRJ" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/green/side{ + dir = 6 + }, +/area/atmos) +"bRK" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/turf/open/space, +/area/space/nearstation) +"bRL" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 8; + frequency = 1441; + id = "mix_in"; + pixel_y = 1 + }, +/turf/open/floor/engine/vacuum, +/area/atmos) +"bRM" = ( +/obj/structure/table, +/obj/machinery/light_switch{ + pixel_x = -23; + pixel_y = 0 + }, +/obj/machinery/reagentgrinder, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bRN" = ( +/turf/closed/wall, +/area/medical/virology) +"bRO" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bRP" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/virology{ + autoclose = 0; + frequency = 1449; + icon_state = "door_locked"; + id_tag = "virology_airlock_interior"; + locked = 1; + name = "Virology Interior Airlock"; + req_access_txt = "39" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bRQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/medical/virology) +"bRR" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_virology{ + name = "Monkey Pen"; + req_access_txt = "39" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bRS" = ( +/obj/structure/chair/office/dark, +/obj/effect/landmark/start/depsec/engineering, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint/engineering) +"bRT" = ( +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/structure/disposaloutlet, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bRU" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bRV" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/structure/window/reinforced, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bRW" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio3"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bRX" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bRY" = ( +/obj/structure/window/reinforced, +/obj/structure/table/reinforced, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/button/door{ + id = "xenobio8"; + name = "Containment Blast Doors"; + pixel_x = 0; + pixel_y = 4; + req_access_txt = "55" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bRZ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bSa" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio8"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bSb" = ( +/obj/structure/closet/l3closet/scientist{ + pixel_x = -2 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bSc" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bSd" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bSe" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/device/electropack, +/obj/item/device/healthanalyzer, +/obj/item/device/assembly/signaler, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bSf" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bSg" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bSh" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bSi" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bSj" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 8 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bSk" = ( +/obj/machinery/magnetic_module, +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/structure/target_stake, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/toxins/misc_lab) +"bSl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bSm" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/asmaint2) +"bSn" = ( +/obj/machinery/space_heater, +/turf/open/floor/wood, +/area/maintenance/aft) +"bSo" = ( +/obj/structure/chair/stool, +/turf/open/floor/wood, +/area/maintenance/aft) +"bSp" = ( +/obj/structure/grille/broken, +/turf/open/floor/plating, +/area/maintenance/aft) +"bSq" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/maintenance/aft) +"bSr" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/aft) +"bSs" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/maintenance/aft) +"bSt" = ( +/obj/structure/closet/emcloset, +/obj/machinery/camera{ + c_tag = "Telecoms Monitoring"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bSu" = ( +/obj/item/stack/cable_coil{ + amount = 5 + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"bSv" = ( +/obj/machinery/camera{ + c_tag = "Construction Area"; + dir = 1 + }, +/turf/open/floor/plating, +/area/construction) +"bSw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bSx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/construction) +"bSy" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/grimy, +/area/security/detectives_office) +"bSz" = ( +/obj/structure/table, +/turf/open/floor/plating, +/area/construction) +"bSA" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bSB" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/structure/table, +/obj/item/weapon/tank/internals/emergency_oxygen{ + pixel_x = -8; + pixel_y = 0 + }, +/obj/item/weapon/tank/internals/emergency_oxygen{ + pixel_x = -8; + pixel_y = 0 + }, +/obj/item/clothing/mask/breath{ + pixel_x = 4; + pixel_y = 0 + }, +/obj/item/clothing/mask/breath{ + pixel_x = 4; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bSC" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/preopen{ + id = "atmos"; + layer = 2.9; + name = "atmos blast door" + }, +/turf/open/floor/plating, +/area/atmos) +"bSD" = ( +/obj/structure/sign/atmosplaque{ + pixel_x = 0; + pixel_y = -32 + }, +/obj/structure/table, +/obj/item/weapon/storage/box, +/obj/item/weapon/storage/box, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bSE" = ( +/obj/machinery/computer/station_alert, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/button/door{ + id = "atmos"; + name = "Atmospherics Lockdown"; + pixel_x = 24; + pixel_y = 4; + req_access_txt = "24" + }, +/turf/open/floor/plasteel/caution{ + dir = 6 + }, +/area/atmos) +"bSF" = ( +/obj/structure/table, +/obj/item/clothing/head/welding{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/clothing/head/welding{ + pixel_x = -5; + pixel_y = 3 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/item/device/multitool, +/turf/open/floor/plasteel, +/area/atmos) +"bSG" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50; + pixel_x = 2; + pixel_y = 2 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bSH" = ( +/obj/structure/table, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/weapon/storage/belt/utility, +/obj/item/device/t_scanner, +/obj/item/device/t_scanner, +/obj/item/device/t_scanner, +/turf/open/floor/plasteel, +/area/atmos) +"bSI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bSJ" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bSK" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 6; + initialize_directions = 6 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bSL" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bSM" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bSN" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bSO" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bSP" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 4; + initialize_directions = 11 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"bSQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bSR" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bSS" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/virology{ + name = "Break Room"; + req_access_txt = "39" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bST" = ( +/obj/machinery/doorButtons/airlock_controller{ + idExterior = "virology_airlock_exterior"; + idInterior = "virology_airlock_interior"; + idSelf = "virology_airlock_control"; + name = "Virology Access Console"; + pixel_x = 8; + pixel_y = 22; + req_access_txt = "39" + }, +/obj/machinery/light_switch{ + pixel_x = -4; + pixel_y = 24 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bSU" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bSV" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/firealarm{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bSW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bSX" = ( +/obj/machinery/power/apc{ + cell_type = 5000; + dir = 1; + name = "Virology APC"; + pixel_x = 0; + pixel_y = 24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/camera{ + c_tag = "Virology Module" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bSY" = ( +/obj/machinery/vending/medical, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bSZ" = ( +/obj/effect/landmark{ + name = "revenantspawn" + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bTa" = ( +/obj/machinery/door/window/northleft{ + dir = 4; + name = "Containment Pen"; + req_access_txt = "55" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bTb" = ( +/obj/machinery/door/window/northleft{ + base_state = "right"; + dir = 8; + icon_state = "right"; + name = "Containment Pen"; + req_access_txt = "55" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio3"; + name = "containment blast door" + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bTc" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bTd" = ( +/obj/machinery/door/window/northleft{ + base_state = "right"; + dir = 8; + icon_state = "right"; + name = "Containment Pen"; + req_access_txt = "55" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bTe" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/window/northleft{ + dir = 4; + name = "Containment Pen"; + req_access_txt = "55" + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio8"; + name = "containment blast door" + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bTf" = ( +/obj/structure/rack, +/obj/item/weapon/wrench, +/obj/item/weapon/crowbar, +/obj/machinery/computer/security/telescreen{ + name = "Test Chamber Moniter"; + network = list("Test"); + pixel_x = 0; + pixel_y = -30 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bTg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bTh" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bTi" = ( +/obj/structure/table, +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/security/checkpoint/engineering) +"bTj" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/security/checkpoint/engineering) +"bTk" = ( +/obj/machinery/atmospherics/components/binary/valve, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bTl" = ( +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bTm" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bTn" = ( +/obj/structure/table, +/obj/item/device/assembly/igniter{ + pixel_x = -5; + pixel_y = 3 + }, +/obj/item/device/assembly/igniter{ + pixel_x = 5; + pixel_y = -4 + }, +/obj/item/device/assembly/igniter{ + pixel_x = 2; + pixel_y = 6 + }, +/obj/item/device/assembly/igniter{ + pixel_x = 2; + pixel_y = -1 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/item/device/assembly/timer{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/device/assembly/timer{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/device/assembly/timer{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/device/assembly/timer{ + pixel_x = -3; + pixel_y = 3 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bTo" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bTp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bTq" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/toxins/misc_lab) +"bTr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bTs" = ( +/turf/open/floor/wood{ + icon_state = "wood-broken5" + }, +/area/maintenance/aft) +"bTt" = ( +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/wood{ + icon_state = "wood-broken6" + }, +/area/maintenance/aft) +"bTu" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/wood, +/area/maintenance/aft) +"bTv" = ( +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bTw" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bTx" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + icon_state = "connector_map"; + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating, +/area/maintenance/aft) +"bTy" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + icon_state = "intact"; + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"bTz" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bTA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/aft) +"bTB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/closed/wall, +/area/maintenance/aft) +"bTC" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/closed/wall, +/area/maintenance/aft) +"bTD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bTE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bTF" = ( +/obj/structure/closet/emcloset, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bTG" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/weapon/pen, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 30; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/security/checkpoint/engineering) +"bTH" = ( +/obj/structure/table, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel/red/side, +/area/security/checkpoint/engineering) +"bTI" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bTJ" = ( +/obj/machinery/power/apc{ + name = "Aft Hall APC"; + dir = 8; + pixel_x = -25; + pixel_y = 1 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bTK" = ( +/obj/item/weapon/crowbar, +/obj/item/weapon/wrench, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/caution{ + dir = 6 + }, +/area/hallway/primary/aft) +"bTL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/atmos) +"bTM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/atmos) +"bTN" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/airlock/glass_atmos{ + name = "Atmospherics Monitoring"; + req_access_txt = "24" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bTO" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 6; + initialize_directions = 6 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bTP" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bTQ" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/atmos) +"bTR" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 4; + initialize_directions = 11 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/atmos) +"bTS" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 6 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/atmos) +"bTT" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bTU" = ( +/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bTV" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "N2O Outlet Pump"; + on = 0 + }, +/turf/open/floor/plasteel/escape{ + dir = 5 + }, +/area/atmos) +"bTW" = ( +/turf/open/floor/engine/n2o, +/area/atmos) +"bTX" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + external_pressure_bound = 0; + frequency = 1441; + id_tag = "n2o_out"; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/engine/n2o, +/area/atmos) +"bTY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/medical/virology) +"bTZ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/medical/virology) +"bUa" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall, +/area/medical/virology) +"bUb" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bUc" = ( +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Telecoms Admin"; + departmentType = 5; + name = "Telecoms RC"; + pixel_x = 30; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bUd" = ( +/obj/structure/table/reinforced, +/obj/machinery/button/door{ + id = "xenobio3"; + name = "Containment Blast Doors"; + pixel_x = 0; + pixel_y = 4; + req_access_txt = "55" + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bUe" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio3"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bUf" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bUg" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bUh" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio8"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bUi" = ( +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/structure/disposaloutlet{ + dir = 1 + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bUj" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bUk" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10; + pixel_x = 0; + initialize_directions = 10 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bUl" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 2; + icon_state = "pipe-j2s"; + sortType = 5 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bUm" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bUn" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bUo" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/beakers{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/grenade/chem_grenade, +/obj/item/weapon/grenade/chem_grenade, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bUp" = ( +/turf/open/floor/plating, +/area/toxins/misc_lab) +"bUq" = ( +/obj/structure/target_stake, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/toxins/misc_lab) +"bUr" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + icon_state = "intact"; + dir = 10 + }, +/turf/open/space, +/area/space/nearstation) +"bUs" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bUt" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bUu" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bUv" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bUw" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bUx" = ( +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-y"; + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bUy" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bUz" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bUA" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/power/apc{ + dir = 1; + name = "Construction Area APC"; + pixel_y = 24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/construction) +"bUB" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Telecoms Monitoring APC"; + pixel_y = -24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/tcommsat/computer) +"bUC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/tcommsat/computer) +"bUD" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bUE" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/plasteel/arrival{ + dir = 8 + }, +/area/atmos) +"bUF" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/caution{ + dir = 8 + }, +/area/atmos) +"bUG" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 1 + }, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/atmos) +"bUH" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/atmos) +"bUI" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/caution{ + dir = 4 + }, +/area/atmos) +"bUJ" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/airlock/atmos{ + name = "Atmospherics"; + req_access_txt = "24" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bUK" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Air to External"; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bUL" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bUM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bUN" = ( +/obj/item/device/radio/beacon, +/turf/open/floor/plasteel, +/area/atmos) +"bUO" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 0; + name = "Mix to Port"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bUP" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 0; + name = "Air to Port"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bUQ" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 0; + name = "Pure to Port"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bUR" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/turf/open/floor/plasteel, +/area/atmos) +"bUS" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/floor/plasteel, +/area/atmos) +"bUT" = ( +/obj/machinery/computer/atmos_control/tank{ + frequency = 1441; + input_tag = "n2o_in"; + name = "Nitrous Oxide Supply Control"; + output_tag = "n2o_out"; + sensors = list("n2o_sensor" = "Tank") + }, +/turf/open/floor/plasteel/escape{ + dir = 4 + }, +/area/atmos) +"bUU" = ( +/obj/machinery/portable_atmospherics/canister/nitrous_oxide, +/turf/open/floor/engine/n2o, +/area/atmos) +"bUV" = ( +/obj/machinery/air_sensor{ + frequency = 1441; + id_tag = "n2o_sensor" + }, +/turf/open/floor/engine/n2o, +/area/atmos) +"bUW" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/engine/n2o, +/area/atmos) +"bUX" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bUY" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bUZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bVa" = ( +/obj/machinery/smartfridge/chemistry/virology, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 8 + }, +/area/medical/virology) +"bVb" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bVc" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/hallway/primary/aft) +"bVd" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 9 + }, +/area/hallway/primary/aft) +"bVe" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bVf" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 1 + }, +/area/hallway/primary/aft) +"bVg" = ( +/obj/item/device/radio/intercom{ + broadcasting = 0; + name = "Station Intercom (General)"; + pixel_y = 20 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 5 + }, +/area/hallway/primary/aft) +"bVh" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/yellow/corner{ + dir = 4 + }, +/area/hallway/primary/aft) +"bVi" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE" + }, +/turf/closed/wall, +/area/toxins/xenobiology) +"bVj" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bVk" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bVl" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bVm" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bVn" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bVo" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/break_room) +"bVp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bVq" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bVr" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bVs" = ( +/obj/machinery/camera{ + c_tag = "Testing Firing Range"; + dir = 8; + network = list("SS13","RD"); + pixel_y = -22 + }, +/turf/open/floor/plating, +/area/toxins/misc_lab) +"bVt" = ( +/obj/structure/target_stake, +/turf/open/floor/plating, +/area/toxins/misc_lab) +"bVu" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/space, +/area/space/nearstation) +"bVv" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/turf/open/space, +/area/space/nearstation) +"bVw" = ( +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/space/nearstation) +"bVx" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 2 + }, +/turf/open/floor/plating/airless, +/area/maintenance/aft) +"bVy" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVz" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"bVA" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + icon_state = "intact"; + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVB" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/closet/emcloset, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVC" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVD" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/structure/sign/deathsposal{ + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVE" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVF" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVG" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = -28 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVI" = ( +/turf/closed/wall/r_wall, +/area/tcommsat/server) +"bVJ" = ( +/turf/closed/wall/r_wall, +/area/tcommsat/computer) +"bVK" = ( +/obj/machinery/vending/snack/random, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bVL" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bVN" = ( +/obj/machinery/camera{ + c_tag = "Atmospherics Access"; + dir = 4; + network = list("SS13") + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/caution{ + dir = 8 + }, +/area/atmos) +"bVO" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/atmos) +"bVP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bVQ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bVR" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/caution{ + dir = 4 + }, +/area/atmos) +"bVS" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/obj/structure/sign/securearea, +/turf/closed/wall, +/area/atmos) +"bVT" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "External to Filter"; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bVU" = ( +/obj/structure/reagent_dispensers/watertank/high, +/turf/open/floor/plasteel, +/area/atmos) +"bVV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bVW" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas, +/turf/open/floor/plasteel, +/area/atmos) +"bVX" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel, +/area/atmos) +"bVY" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/atmos) +"bVZ" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bWa" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bWb" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 1; + filter_type = "n2o"; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bWc" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/escape{ + dir = 6 + }, +/area/atmos) +"bWd" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 8; + frequency = 1441; + id = "n2o_in"; + pixel_y = 1 + }, +/turf/open/floor/engine/n2o, +/area/atmos) +"bWe" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bWf" = ( +/obj/structure/table/glass, +/obj/item/clothing/gloves/color/latex, +/obj/machinery/requests_console{ + department = "Virology"; + name = "Virology Requests Console"; + pixel_x = -32 + }, +/obj/item/device/healthanalyzer, +/obj/item/clothing/glasses/hud/health, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 8 + }, +/area/medical/virology) +"bWg" = ( +/obj/structure/table, +/obj/item/weapon/hand_labeler, +/obj/item/device/radio/headset/headset_med, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 4 + }, +/area/medical/virology) +"bWh" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bWi" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/medical/virology) +"bWj" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/medical/virology) +"bWk" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/effect/landmark{ + name = "revenantspawn" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bWl" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio2"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bWm" = ( +/obj/structure/window/reinforced, +/obj/structure/table/reinforced, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/button/door{ + id = "xenobio7"; + name = "Containment Blast Doors"; + pixel_x = 0; + pixel_y = 4; + req_access_txt = "55" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bWn" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio7"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bWo" = ( +/obj/item/device/radio/intercom{ + pixel_x = -25 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bWp" = ( +/obj/structure/chair/office/light, +/obj/effect/landmark/start{ + name = "Scientist" + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bWq" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bWr" = ( +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bWs" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bWt" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bWu" = ( +/obj/machinery/door/airlock/engineering{ + name = "Telecommunications"; + req_access_txt = "61" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bWv" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bWw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/floor/plating, +/area/maintenance/aft) +"bWx" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bWy" = ( +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/aft) +"bWz" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bWA" = ( +/obj/machinery/atmospherics/pipe/manifold4w/general, +/obj/machinery/meter, +/turf/open/floor/plating, +/area/maintenance/aft) +"bWB" = ( +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bWC" = ( +/obj/machinery/telecomms/bus/preset_four, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bWD" = ( +/obj/machinery/telecomms/server/presets/engineering, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bWE" = ( +/obj/machinery/telecomms/processor/preset_three, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bWF" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/power/apc{ + cell_type = 5000; + dir = 1; + name = "Telecoms Server APC"; + pixel_x = 0; + pixel_y = 25 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bWG" = ( +/obj/machinery/telecomms/server/presets/security, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bWH" = ( +/obj/structure/table, +/turf/open/floor/plasteel/yellow/side{ + dir = 9 + }, +/area/tcommsat/computer) +"bWI" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/tcommsat/computer) +"bWJ" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bWK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 8 + }, +/area/hallway/primary/aft) +"bWL" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bWM" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/scrubber, +/turf/open/floor/plasteel/escape{ + dir = 8 + }, +/area/atmos) +"bWN" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "atmos"; + name = "atmos blast door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/atmos) +"bWO" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + dir = 1 + }, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/atmos) +"bWP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 9 + }, +/obj/machinery/door/poddoor/preopen{ + id = "atmos"; + name = "atmos blast door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/atmos) +"bWQ" = ( +/turf/closed/wall/r_wall, +/area/security/checkpoint/engineering) +"bWR" = ( +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = -30 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bWS" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/camera{ + c_tag = "Atmospherics West"; + dir = 8; + network = list("SS13") + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bWT" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -27; + pixel_y = 0 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 0; + name = "Air to Port"; + on = 0 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bWU" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bWV" = ( +/obj/structure/door_assembly/door_assembly_mai, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bWW" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bWX" = ( +/obj/structure/table/glass, +/obj/item/device/radio/intercom{ + pixel_x = -25 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/item/weapon/storage/box/beakers{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/storage/box/syringes, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 8 + }, +/area/medical/virology) +"bWY" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/weapon/pen/red, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 4 + }, +/area/medical/virology) +"bWZ" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Virologist" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bXa" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bXb" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/medical/virology) +"bXc" = ( +/obj/structure/table, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bXd" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bXe" = ( +/obj/effect/landmark{ + name = "revenantspawn" + }, +/mob/living/simple_animal/slime, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bXf" = ( +/obj/machinery/door/window/northleft{ + base_state = "right"; + dir = 8; + icon_state = "right"; + name = "Containment Pen"; + req_access_txt = "55" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio2"; + name = "containment blast door" + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bXg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/window/northleft{ + dir = 4; + name = "Containment Pen"; + req_access_txt = "55" + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio7"; + name = "containment blast door" + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bXh" = ( +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bXi" = ( +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen, +/obj/item/device/taperecorder{ + pixel_y = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bXj" = ( +/obj/structure/table, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/machinery/button/ignition{ + id = "testigniter"; + pixel_x = -6; + pixel_y = 2 + }, +/obj/machinery/button/door{ + id = "testlab"; + name = "Test Chamber Blast Doors"; + pixel_x = 4; + pixel_y = 2; + req_access_txt = "55" + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bXk" = ( +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=AIE"; + location = "AftH" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bXl" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = 0; + pixel_y = 6 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"bXm" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bXn" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 4 + }, +/area/hallway/primary/aft) +"bXo" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"bXp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bXq" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_engineering{ + name = "Engineering"; + req_access_txt = "32" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bXr" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bXs" = ( +/obj/structure/table/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/item/weapon/paper/range, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating, +/area/toxins/misc_lab) +"bXt" = ( +/obj/structure/table/reinforced, +/obj/machinery/magnetic_controller{ + autolink = 1 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/item/device/radio/intercom{ + freerange = 0; + frequency = 1459; + name = "Station Intercom (General)"; + pixel_x = 29 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating, +/area/toxins/misc_lab) +"bXu" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/window/reinforced/tinted/fulltile, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bXv" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "External Access"; + req_access = null; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bXw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/aft) +"bXx" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/aft) +"bXy" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/aft) +"bXz" = ( +/obj/machinery/telecomms/processor/preset_four, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bXA" = ( +/obj/machinery/telecomms/server/presets/common, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bXB" = ( +/obj/machinery/telecomms/bus/preset_three, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bXC" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bXD" = ( +/obj/machinery/telecomms/server/presets/command, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bXE" = ( +/obj/machinery/computer/message_monitor, +/turf/open/floor/plasteel/yellow/side{ + dir = 8 + }, +/area/tcommsat/computer) +"bXF" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/tcommsat/computer) +"bXG" = ( +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bXH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bXI" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bXJ" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/scrubber, +/obj/machinery/light/small, +/turf/open/floor/plasteel/escape{ + dir = 8 + }, +/area/atmos) +"bXK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/atmos) +"bXL" = ( +/obj/structure/sign/securearea, +/turf/closed/wall/r_wall, +/area/atmos) +"bXM" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/airlock/atmos{ + name = "Atmospherics"; + req_access_txt = "24" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bXN" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bXO" = ( +/obj/structure/filingcabinet, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/turf/open/floor/plasteel/red/side{ + dir = 5 + }, +/area/security/checkpoint/engineering) +"bXP" = ( +/obj/machinery/requests_console{ + department = "Security"; + departmentType = 5; + pixel_y = 30 + }, +/obj/structure/closet, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/security/checkpoint/engineering) +"bXQ" = ( +/obj/structure/fireaxecabinet{ + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bXR" = ( +/obj/structure/closet/secure_closet/atmospherics, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bXS" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/atmos) +"bXT" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/atmos) +"bXU" = ( +/obj/machinery/atmospherics/pipe/manifold/yellow/visible{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bXV" = ( +/obj/machinery/camera{ + c_tag = "Atmospherics East"; + dir = 8; + network = list("SS13") + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Plasma Outlet Pump"; + on = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bXW" = ( +/turf/open/floor/engine/plasma, +/area/atmos) +"bXX" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + external_pressure_bound = 0; + frequency = 1441; + id_tag = "tox_out"; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/engine/plasma, +/area/atmos) +"bXY" = ( +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/turf/open/floor/engine/plasma, +/area/atmos) +"bXZ" = ( +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bYa" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bYb" = ( +/obj/machinery/vending/cigarette{ + pixel_x = 0; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bYc" = ( +/obj/machinery/disposal/bin, +/obj/structure/sign/deathsposal{ + pixel_x = 0; + pixel_y = -32 + }, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 4 + }, +/area/medical/virology) +"bYd" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bYe" = ( +/obj/structure/closet/secure_closet/personal/patient, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"bYf" = ( +/obj/structure/table/reinforced, +/obj/machinery/button/door{ + id = "xenobio2"; + name = "Containment Blast Doors"; + pixel_x = 0; + pixel_y = 4; + req_access_txt = "55" + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bYg" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio2"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bYh" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio7"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bYi" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "testlab"; + name = "test chamber blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bYj" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "testlab"; + name = "test chamber blast door" + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bYk" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/toxins/misc_lab) +"bYl" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bYm" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/toxins/misc_lab) +"bYn" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/yellow/side, +/area/hallway/primary/aft) +"bYo" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bYp" = ( +/obj/structure/sign/securearea{ + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 10 + }, +/area/hallway/primary/aft) +"bYq" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/yellow/side, +/area/hallway/primary/aft) +"bYr" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bYs" = ( +/obj/structure/closet/crate, +/obj/item/clothing/under/color/lightpurple, +/obj/item/stack/spacecash/c200, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bYt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bYu" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bYv" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Mix to Space"; + on = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/aft) +"bYw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/aft) +"bYx" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/aft) +"bYy" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Incinerator Access"; + req_access_txt = "12" + }, +/obj/structure/barricade/wooden{ + name = "wooden barricade (CLOSED)" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bYz" = ( +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bYA" = ( +/obj/machinery/telecomms/broadcaster/preset_right, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bYB" = ( +/obj/machinery/blackbox_recorder, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bYC" = ( +/obj/machinery/telecomms/receiver/preset_right, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bYD" = ( +/obj/machinery/computer/telecomms/server{ + network = "tcommsat" + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 10 + }, +/area/tcommsat/computer) +"bYE" = ( +/turf/open/floor/plasteel/yellow/side, +/area/hallway/primary/aft) +"bYF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"bYG" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 6 + }, +/area/hallway/primary/aft) +"bYH" = ( +/turf/closed/wall, +/area/engine/break_room) +"bYI" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"bYJ" = ( +/turf/open/floor/plasteel/caution{ + dir = 9 + }, +/area/engine/break_room) +"bYK" = ( +/turf/open/floor/plasteel/caution{ + dir = 5 + }, +/area/engine/break_room) +"bYL" = ( +/turf/open/floor/plasteel/caution{ + dir = 1 + }, +/area/engine/break_room) +"bYM" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/yellow/side, +/area/hallway/primary/aft) +"bYN" = ( +/turf/closed/wall, +/area/security/checkpoint/engineering) +"bYO" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bYP" = ( +/obj/effect/landmark/event_spawn, +/turf/closed/wall, +/area/crew_quarters/bar) +"bYQ" = ( +/obj/machinery/suit_storage_unit/atmos, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bYR" = ( +/obj/structure/sign/nosmoking_2, +/turf/closed/wall, +/area/atmos) +"bYS" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/atmos) +"bYT" = ( +/obj/machinery/computer/atmos_control/tank{ + frequency = 1441; + input_tag = "tox_in"; + name = "Plasma Supply Control"; + output_tag = "tox_out"; + sensors = list("tox_sensor" = "Tank") + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bYU" = ( +/obj/machinery/portable_atmospherics/canister/toxins, +/turf/open/floor/engine/plasma, +/area/atmos) +"bYV" = ( +/obj/machinery/air_sensor{ + frequency = 1441; + id_tag = "tox_sensor" + }, +/turf/open/floor/engine/plasma, +/area/atmos) +"bYW" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/engine/plasma, +/area/atmos) +"bYX" = ( +/obj/structure/closet/l3closet/virology, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 2 + }, +/area/medical/virology) +"bYY" = ( +/obj/structure/closet/secure_closet/medical1, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 2 + }, +/area/medical/virology) +"bYZ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall/r_wall, +/area/medical/virology) +"bZa" = ( +/obj/structure/sink{ + icon_state = "sink"; + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/obj/machinery/camera{ + c_tag = "Xenobiology South"; + dir = 4; + network = list("SS13","RD") + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bZb" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"bZc" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bZd" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bZe" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/break_room) +"bZf" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bZg" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bZh" = ( +/obj/structure/rack, +/obj/item/weapon/gun/energy/laser/practice, +/obj/item/clothing/ears/earmuffs, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"bZi" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"bZj" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"bZk" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister, +/turf/open/floor/plating, +/area/maintenance/aft) +"bZl" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Mix to Port"; + on = 0 + }, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/maintenance/aft) +"bZm" = ( +/obj/structure/disposaloutlet{ + dir = 8 + }, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"bZn" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bZo" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bZp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"bZq" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plating, +/area/tcommsat/computer) +"bZr" = ( +/obj/machinery/status_display, +/turf/closed/wall, +/area/tcommsat/computer) +"bZs" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/tcommsat/computer) +"bZt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bZu" = ( +/obj/machinery/camera{ + c_tag = "Engineering Foyer"; + dir = 1 + }, +/obj/structure/noticeboard{ + dir = 1; + pixel_y = -27 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bZv" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/grille, +/turf/open/floor/plating, +/area/tcommsat/computer) +"bZw" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/closet/firecloset, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bZx" = ( +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"bZy" = ( +/turf/open/floor/plasteel, +/area/engine/break_room) +"bZz" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/machinery/light_switch{ + pixel_x = -23; + pixel_y = 0 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bZA" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"bZB" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"bZC" = ( +/obj/machinery/door/poddoor/preopen{ + id = "Engineering"; + name = "engineering security door" + }, +/obj/machinery/door/airlock/glass_command{ + name = "Chief Engineer"; + req_access_txt = "56" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/engine/chiefs_office) +"bZD" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/door/poddoor/preopen{ + id = "Engineering"; + name = "engineering security door" + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/engine/chiefs_office) +"bZE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/yellow/side{ + dir = 10 + }, +/area/engine/break_room) +"bZF" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Atmospherics APC"; + pixel_x = -24 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bZG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/atmos) +"bZH" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/obj/item/weapon/wrench, +/turf/open/floor/plasteel, +/area/atmos) +"bZI" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/atmos) +"bZJ" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 1; + filter_type = "plasma"; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bZK" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/atmos) +"bZL" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 8; + frequency = 1441; + id = "tox_in"; + pixel_y = 1 + }, +/turf/open/floor/engine/plasma, +/area/atmos) +"bZM" = ( +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/asmaint) +"bZN" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bZO" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bZP" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall/r_wall, +/area/medical/virology) +"bZQ" = ( +/obj/machinery/atmospherics/components/binary/valve/open{ + icon_state = "mvalve_map"; + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bZR" = ( +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/obj/item/weapon/wrench, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bZS" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bZT" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bZU" = ( +/obj/structure/closet/emcloset, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"bZV" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio1"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bZW" = ( +/obj/structure/window/reinforced, +/obj/structure/table/reinforced, +/obj/machinery/button/door{ + id = "xenobio6"; + name = "Containment Blast Doors"; + pixel_x = 0; + pixel_y = 4; + req_access_txt = "55" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"bZX" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio6"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"bZY" = ( +/obj/item/device/radio/intercom{ + pixel_x = -25 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"bZZ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/toxins/misc_lab) +"caa" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"cab" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"cac" = ( +/obj/structure/chair/stool, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cad" = ( +/obj/structure/table, +/obj/item/device/flashlight/lamp, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cae" = ( +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/asmaint2) +"caf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 5 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/maintenance/aft) +"cag" = ( +/obj/machinery/power/terminal{ + dir = 4 + }, +/obj/machinery/ntnet_relay, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cah" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cai" = ( +/obj/machinery/power/smes{ + charge = 5e+006 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"caj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cak" = ( +/obj/machinery/telecomms/hub/preset, +/turf/open/floor/plasteel/vault{ + dir = 8; + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cal" = ( +/obj/machinery/door/airlock/glass_engineering{ + cyclelinkeddir = 4; + name = "Server Room"; + req_access_txt = "61" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/tcommsat/computer) +"cam" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"can" = ( +/obj/machinery/door/airlock/glass_engineering{ + cyclelinkeddir = 8; + name = "Server Room"; + req_access_txt = "61" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/tcommsat/computer) +"cao" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/tcommsat/computer) +"cap" = ( +/obj/machinery/light, +/obj/structure/closet/firecloset, +/turf/open/floor/plasteel/yellow/side{ + dir = 6 + }, +/area/engine/break_room) +"caq" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"car" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall, +/area/maintenance/aft) +"cas" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cat" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cau" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"cav" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/caution/corner{ + dir = 8 + }, +/area/hallway/primary/aft) +"caw" = ( +/obj/structure/table, +/obj/item/clothing/glasses/meson, +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"cax" = ( +/obj/structure/closet/wardrobe/black, +/obj/effect/decal/cleanable/cobweb, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cay" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"caz" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"caA" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/security/checkpoint/engineering) +"caB" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"caC" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"caD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/security/checkpoint/engineering) +"caE" = ( +/obj/machinery/requests_console{ + department = "Atmospherics"; + departmentType = 4; + name = "Atmos RC"; + pixel_x = 30; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel, +/area/atmos) +"caF" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "Atmospherics Central"; + dir = 4; + network = list("SS13") + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 0; + name = "Port to Filter"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"caG" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/heater{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"caH" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/obj/structure/chair/stool, +/turf/open/floor/plasteel, +/area/atmos) +"caI" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caJ" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + icon_state = "intact"; + dir = 5 + }, +/turf/open/space, +/area/space/nearstation) +"caK" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caL" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caM" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caN" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caO" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caP" = ( +/obj/machinery/atmospherics/components/binary/valve{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caQ" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caR" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caS" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caT" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caU" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"caV" = ( +/obj/machinery/door/window/northleft{ + base_state = "right"; + dir = 8; + icon_state = "right"; + name = "Containment Pen"; + req_access_txt = "55" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio1"; + name = "containment blast door" + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"caW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/window/northleft{ + dir = 4; + name = "Containment Pen"; + req_access_txt = "55" + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio6"; + name = "containment blast door" + }, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"caX" = ( +/obj/machinery/sparker{ + id = "testigniter"; + pixel_x = -25 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"caY" = ( +/obj/item/device/radio/beacon, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"caZ" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "testlab"; + name = "test chamber blast door" + }, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"cba" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"cbb" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"cbc" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"cbd" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Testing Lab APC"; + pixel_x = 26; + pixel_y = 0 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"cbe" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"cbf" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cbg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/asmaint2) +"cbh" = ( +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cbi" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -2; + pixel_y = 5 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cbj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/maintenance/aft) +"cbk" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Mix to Space"; + on = 1 + }, +/turf/open/floor/plating/airless, +/area/maintenance/aft) +"cbl" = ( +/obj/machinery/camera{ + c_tag = "Telecoms Server Room"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cbm" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/tcommsat/computer) +"cbn" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'SERVER ROOM'."; + name = "SERVER ROOM"; + pixel_y = 0 + }, +/turf/closed/wall, +/area/tcommsat/computer) +"cbo" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/tcommsat/computer) +"cbp" = ( +/obj/machinery/power/apc{ + cell_type = 5000; + dir = 4; + name = "CE Office APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cbq" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cbr" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"cbs" = ( +/obj/structure/sign/securearea, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/engine/engineering) +"cbt" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/camera{ + c_tag = "Aft Primary Hallway 1"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = -22 + }, +/turf/open/floor/plasteel/yellow/corner{ + dir = 2 + }, +/area/hallway/primary/aft) +"cbu" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Engineering Foyer APC"; + pixel_x = -24 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"cbv" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Research Delivery access"; + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cbw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cbx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"cby" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cbz" = ( +/obj/structure/closet/wardrobe/atmospherics_yellow, +/turf/open/floor/plasteel, +/area/atmos) +"cbA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/floor/plasteel, +/area/atmos) +"cbB" = ( +/obj/machinery/space_heater, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cbC" = ( +/obj/machinery/space_heater, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cbD" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Port to Filter"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cbE" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cbF" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/obj/item/weapon/cigbutt, +/turf/open/floor/plasteel, +/area/atmos) +"cbG" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "CO2 Outlet Pump"; + on = 0 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 5 + }, +/area/atmos) +"cbH" = ( +/turf/open/floor/engine/co2, +/area/atmos) +"cbI" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + external_pressure_bound = 0; + frequency = 1441; + id_tag = "co2_out"; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/engine/co2, +/area/atmos) +"cbJ" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + icon_state = "intact"; + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cbK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall, +/area/maintenance/asmaint) +"cbL" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cbM" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cbN" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cbO" = ( +/obj/machinery/door/airlock/atmos{ + name = "Atmospherics Maintenance"; + req_access_txt = "12;24" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cbP" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cbQ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cbR" = ( +/obj/structure/table/reinforced, +/obj/machinery/button/door{ + id = "xenobio1"; + name = "Containment Blast Doors"; + pixel_x = 0; + pixel_y = 4; + req_access_txt = "55" + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/light, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/toxins/xenobiology) +"cbS" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio1"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"cbT" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"cbU" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "xenobio6"; + name = "containment blast door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"cbV" = ( +/obj/machinery/camera{ + c_tag = "Testing Chamber"; + dir = 1; + network = list("Test","RD"); + pixel_x = 0 + }, +/obj/machinery/light, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"cbW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"cbX" = ( +/obj/machinery/camera{ + c_tag = "Testing Lab South"; + dir = 8; + network = list("SS13","RD"); + pixel_y = -22 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"cbY" = ( +/obj/structure/closet/crate, +/obj/item/target/syndicate, +/obj/item/target/alien, +/obj/item/target/clown, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"cbZ" = ( +/obj/structure/closet/crate, +/obj/item/target, +/obj/item/target, +/obj/item/target, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"cca" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/solar{ + id = "portsolar"; + name = "Port Solar Array" + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/port) +"ccb" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/solar{ + id = "portsolar"; + name = "Port Solar Array" + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/port) +"ccc" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"ccd" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/aft) +"cce" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/airlock/maintenance{ + name = "Construction Area Maintenance"; + req_access_txt = "32" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/construction) +"ccf" = ( +/obj/machinery/telecomms/broadcaster/preset_left, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"ccg" = ( +/obj/machinery/message_server, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cch" = ( +/obj/machinery/telecomms/receiver/preset_left, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cci" = ( +/obj/structure/table, +/obj/item/device/multitool, +/turf/open/floor/plasteel/yellow/side{ + dir = 9 + }, +/area/tcommsat/computer) +"ccj" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/lighter, +/obj/item/clothing/glasses/meson{ + pixel_y = 4 + }, +/obj/item/weapon/stamp/ce, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cck" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"ccl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"ccm" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ccn" = ( +/obj/machinery/camera{ + c_tag = "Engineering Access" + }, +/obj/structure/closet/radiation, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cco" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ccp" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ccq" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ccr" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ccs" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"cct" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ccu" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"ccv" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/plasteel, +/area/atmos) +"ccw" = ( +/turf/closed/wall/r_wall, +/area/engine/engineering) +"ccx" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + dir = 1 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/atmos) +"ccy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/atmos) +"ccz" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "N2 to Pure"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"ccA" = ( +/obj/machinery/computer/atmos_control/tank{ + frequency = 1441; + input_tag = "co2_in"; + name = "Carbon Dioxide Supply Control"; + output_tag = "co2_out"; + sensors = list("co2_sensor" = "Tank") + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 4 + }, +/area/atmos) +"ccB" = ( +/obj/machinery/portable_atmospherics/canister/carbon_dioxide, +/turf/open/floor/engine/co2, +/area/atmos) +"ccC" = ( +/obj/machinery/air_sensor{ + frequency = 1441; + id_tag = "co2_sensor" + }, +/turf/open/floor/engine/co2, +/area/atmos) +"ccD" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/engine/co2, +/area/atmos) +"ccE" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = 0; + pixel_y = 28 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccF" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccG" = ( +/obj/structure/chair/stool, +/obj/effect/decal/cleanable/cobweb{ + icon_state = "cobweb2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccH" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccI" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccJ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccK" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccL" = ( +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccM" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccN" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ccO" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ccP" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"ccQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/toxins/xenobiology) +"ccR" = ( +/obj/machinery/portable_atmospherics/pump, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/toxins/misc_lab) +"ccS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"ccT" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/toxins/misc_lab) +"ccU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/maintenance/asmaint2) +"ccV" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ccW" = ( +/obj/structure/table, +/obj/effect/decal/cleanable/cobweb, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ccX" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"ccY" = ( +/obj/structure/table, +/obj/item/weapon/kitchen/rollingpin, +/obj/item/weapon/reagent_containers/food/condiment/enzyme, +/obj/item/weapon/reagent_containers/food/condiment/sugar, +/turf/open/floor/plating, +/area/maintenance/aft) +"ccZ" = ( +/obj/structure/chair/stool, +/turf/open/floor/plating, +/area/maintenance/aft) +"cda" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/aft) +"cdb" = ( +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating, +/area/maintenance/aft) +"cdc" = ( +/obj/machinery/telecomms/bus/preset_two, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cdd" = ( +/obj/machinery/telecomms/server/presets/supply, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cde" = ( +/obj/machinery/telecomms/processor/preset_one, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cdf" = ( +/obj/machinery/telecomms/server/presets/medical, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cdg" = ( +/obj/machinery/computer/telecomms/monitor{ + network = "tcommsat" + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 8 + }, +/area/tcommsat/computer) +"cdh" = ( +/obj/structure/disposalpipe/sortjunction{ + dir = 8; + icon_state = "pipe-j2s"; + sortType = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"cdi" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cdj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cdk" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/modular_computer/console/preset/engineering, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cdl" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/carpet, +/area/chapel/main) +"cdm" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cdn" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/obj/structure/closet/firecloset, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cdo" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/structure/closet/radiation, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cdp" = ( +/obj/effect/landmark{ + name = "lightsout" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cdq" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/tinted/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cdr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cds" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Science Maintenance APC"; + pixel_x = -25 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/camera{ + c_tag = "Aft Starboard Solar Access"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cdt" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/break_room) +"cdu" = ( +/obj/structure/closet/emcloset, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cdv" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cdw" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cdx" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible, +/turf/open/floor/plasteel, +/area/atmos) +"cdy" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/atmos) +"cdz" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "O2 to Pure"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cdA" = ( +/obj/machinery/atmospherics/components/trinary/mixer{ + dir = 4; + node1_concentration = 0.8; + node2_concentration = 0.2; + on = 1; + pixel_x = 0; + pixel_y = 0; + target_pressure = 4500 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cdB" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 1; + filter_type = "co2"; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cdC" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 6 + }, +/area/atmos) +"cdD" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 8; + frequency = 1441; + id = "co2_in"; + pixel_y = 1 + }, +/turf/open/floor/engine/co2, +/area/atmos) +"cdE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdF" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdG" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdH" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdJ" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdK" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdL" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdM" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/mob/living/simple_animal/mouse, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdN" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cdO" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cdP" = ( +/obj/machinery/door/window{ + name = "Ready Room"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cdQ" = ( +/obj/structure/closet/emcloset, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cdR" = ( +/obj/machinery/atmospherics/components/unary/tank/air, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cdS" = ( +/obj/machinery/portable_atmospherics/scrubber, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/toxins/misc_lab) +"cdT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cdU" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/obj/item/weapon/storage/fancy/cigarettes, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cdV" = ( +/obj/structure/table, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cdW" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Engineering Maintenance APC"; + pixel_x = -25; + pixel_y = 1 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cdX" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"cdY" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cdZ" = ( +/obj/machinery/telecomms/processor/preset_two, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cea" = ( +/obj/machinery/telecomms/server/presets/service, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"ceb" = ( +/obj/machinery/telecomms/bus/preset_one, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cec" = ( +/obj/structure/sign/nosmoking_2{ + pixel_y = -32 + }, +/obj/machinery/light, +/turf/open/floor/circuit{ + name = "Mainframe Base"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"ced" = ( +/obj/machinery/telecomms/server/presets/science, +/turf/open/floor/plasteel/black{ + name = "Mainframe Floor"; + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/tcommsat/server) +"cee" = ( +/obj/structure/table, +/obj/item/device/radio/off, +/turf/open/floor/plasteel/yellow/side{ + dir = 10 + }, +/area/tcommsat/computer) +"cef" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/grille, +/obj/structure/cable, +/turf/open/floor/plating, +/area/tcommsat/computer) +"ceg" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/machinery/light, +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"ceh" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/bridge) +"cei" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"cej" = ( +/obj/machinery/door/poddoor/preopen{ + id = "Engineering"; + name = "engineering security door" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/engine/engineering) +"cek" = ( +/obj/machinery/door/poddoor/preopen{ + id = "Engineering"; + name = "engineering security door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/engine/engineering) +"cel" = ( +/obj/machinery/door/poddoor/preopen{ + id = "Engineering"; + name = "engineering security door" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/engine/engineering) +"cem" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cen" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ceo" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cep" = ( +/obj/structure/sign/securearea, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"ceq" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/chiefs_office) +"cer" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"ces" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/yellow/side{ + dir = 9 + }, +/area/engine/engineering) +"cet" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/plasteel/yellow/side{ + dir = 5 + }, +/area/engine/engineering) +"ceu" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cev" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/window/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/engine/engineering) +"cew" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/break_room) +"cex" = ( +/obj/machinery/camera{ + c_tag = "Atmospherics South West"; + dir = 4; + network = list("SS13") + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cey" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cez" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/turf/open/floor/plasteel, +/area/atmos) +"ceA" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 9 + }, +/turf/open/floor/plating, +/area/atmos) +"ceB" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/atmos) +"ceC" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ceD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ceE" = ( +/obj/structure/sign/fire{ + pixel_x = 0; + pixel_y = -32 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ceF" = ( +/obj/structure/closet/emcloset, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ceG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ceH" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/maintenance/asmaint) +"ceI" = ( +/obj/structure/sign/biohazard, +/turf/closed/wall, +/area/maintenance/asmaint) +"ceJ" = ( +/obj/structure/disposalpipe/segment, +/turf/closed/wall, +/area/maintenance/asmaint) +"ceK" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/closet/l3closet, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ceL" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ceM" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ceN" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ + icon_state = "intact"; + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ceO" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/manifold/cyan/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ceP" = ( +/obj/machinery/portable_atmospherics/canister, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/toxins/misc_lab) +"ceQ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"ceR" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ceS" = ( +/obj/item/stack/sheet/cardboard, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ceT" = ( +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ceU" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ceV" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"ceW" = ( +/obj/machinery/space_heater, +/turf/open/floor/plating, +/area/maintenance/aft) +"ceX" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/holopad, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"ceY" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/maintenance/aft) +"ceZ" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_engineering{ + name = "Power Storage"; + req_access_txt = "11"; + req_one_access_txt = "0" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cfa" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/weapon/storage/belt/utility, +/obj/item/weapon/wrench, +/obj/item/weapon/weldingtool, +/obj/item/clothing/head/welding{ + pixel_x = -3; + pixel_y = 5 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/engine/engineering) +"cfb" = ( +/turf/closed/wall/r_wall, +/area/engine/chiefs_office) +"cfc" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "Engineering"; + name = "engineering security door" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/chiefs_office) +"cfd" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/structure/closet/radiation, +/turf/open/floor/plasteel/yellow/side{ + dir = 4 + }, +/area/engine/engineering) +"cfe" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'RADIOACTIVE AREA'"; + icon_state = "radiation"; + name = "RADIOACTIVE AREA"; + pixel_x = -32; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment, +/obj/structure/sign/securearea{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"cff" = ( +/obj/machinery/vending/tool, +/turf/open/floor/plasteel/yellow/corner{ + dir = 1 + }, +/area/engine/engineering) +"cfg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 4 + }, +/area/engine/engineering) +"cfh" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/side, +/area/engine/break_room) +"cfi" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 2; + filter_type = "n2"; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cfj" = ( +/turf/closed/wall, +/area/maintenance/incinerator) +"cfk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/door/airlock/atmos{ + name = "Turbine Access"; + req_access_txt = "32" + }, +/turf/open/floor/plating, +/area/maintenance/incinerator) +"cfl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/closed/wall, +/area/maintenance/incinerator) +"cfm" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/obj/item/toy/minimeteor, +/obj/item/weapon/poster/random_contraband, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cfn" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/rack{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance, +/obj/item/weapon/reagent_containers/food/snacks/donkpocket, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cfo" = ( +/obj/structure/closet, +/obj/effect/spawner/lootdrop/maintenance, +/obj/item/roller, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cfp" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/item/weapon/c_tube, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cfq" = ( +/obj/structure/mopbucket, +/obj/item/weapon/caution, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cfr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + external_pressure_bound = 140; + on = 1; + pressure_checks = 0 + }, +/obj/machinery/camera{ + c_tag = "Xenobiology Kill Room"; + dir = 4; + network = list("SS13","RD") + }, +/turf/open/floor/circuit{ + name = "Killroom Floor"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/xenobiology) +"cfs" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Air Supply Maintenance"; + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cft" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Testing Lab Maintenance"; + req_access_txt = "47" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/toxins/misc_lab) +"cfu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/toxins/misc_lab) +"cfv" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Firefighting equipment"; + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cfw" = ( +/turf/closed/wall/r_wall, +/area/maintenance/portsolar) +"cfx" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating/airless, +/area/maintenance/portsolar) +"cfy" = ( +/obj/structure/rack, +/obj/item/clothing/shoes/winterboots, +/obj/item/clothing/suit/hooded/wintercoat, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"cfz" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/yellow/corner{ + dir = 1 + }, +/area/engine/engineering) +"cfA" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cfB" = ( +/obj/structure/closet/secure_closet/engineering_personal, +/turf/open/floor/plasteel/yellow/side{ + dir = 4 + }, +/area/engine/engineering) +"cfC" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cfD" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/airlock/maintenance{ + name = "Engineering Maintenance"; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/engine/engineering) +"cfE" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cfF" = ( +/obj/machinery/suit_storage_unit/ce, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/engine/chiefs_office) +"cfG" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cfH" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/keycard_auth{ + pixel_x = 0; + pixel_y = 24 + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cfI" = ( +/obj/structure/closet/secure_closet/engineering_personal, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 4 + }, +/area/engine/engineering) +"cfJ" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cfK" = ( +/obj/structure/sign/securearea, +/turf/closed/wall, +/area/engine/engineering) +"cfL" = ( +/obj/machinery/firealarm{ + pixel_y = 24 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cfM" = ( +/obj/machinery/door/airlock/engineering{ + cyclelinkeddir = 2; + name = "Engine Room"; + req_access_txt = "10" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cfN" = ( +/obj/machinery/portable_atmospherics/scrubber, +/turf/open/floor/plasteel, +/area/atmos) +"cfO" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/plasteel, +/area/atmos) +"cfP" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cfQ" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/turf/open/floor/plasteel, +/area/atmos) +"cfR" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 4; + filter_type = "o2"; + on = 1 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cfS" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4; + initialize_directions = 12 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cfT" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cfU" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/incinerator) +"cfV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cfW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cfX" = ( +/obj/machinery/power/apc{ + dir = 2; + name = "Incinerator APC"; + pixel_x = 0; + pixel_y = -24 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/floor/plating, +/area/maintenance/incinerator) +"cfY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/incinerator) +"cfZ" = ( +/obj/machinery/light_switch{ + pixel_x = 0; + pixel_y = 26 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cga" = ( +/obj/machinery/power/smes{ + capacity = 9e+006; + charge = 10000 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/effect/decal/cleanable/cobweb{ + icon_state = "cobweb2" + }, +/turf/open/floor/plating, +/area/maintenance/incinerator) +"cgb" = ( +/obj/machinery/disposal/bin, +/obj/structure/sign/deathsposal{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/structure/disposalpipe/trunk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/incinerator) +"cgc" = ( +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/asmaint) +"cgd" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cge" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cgf" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/grille/broken, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cgg" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cgh" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cgi" = ( +/turf/open/floor/circuit{ + name = "Killroom Floor"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/xenobiology) +"cgj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/barricade/wooden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cgk" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/biohazard, +/turf/open/floor/plating, +/area/toxins/xenobiology) +"cgl" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + external_pressure_bound = 120; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/circuit{ + name = "Killroom Floor"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/xenobiology) +"cgm" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cgn" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + target_temperature = 80; + dir = 2; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"cgo" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cgp" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cgq" = ( +/obj/machinery/space_heater, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cgr" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/asmaint2) +"cgs" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cgt" = ( +/obj/structure/sign/securearea{ + pixel_y = 32 + }, +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cgu" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cgv" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cgw" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cgx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cgy" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/chair/stool, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cgz" = ( +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"cgA" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"cgB" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/smes, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"cgC" = ( +/obj/machinery/power/terminal{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"cgD" = ( +/obj/machinery/camera{ + c_tag = "Aft Port Solar Access"; + dir = 4 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/maintenance/aft) +"cgE" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 0 + }, +/turf/closed/wall/r_wall, +/area/maintenance/portsolar) +"cgF" = ( +/obj/effect/spawner/lootdrop/maintenance, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cgG" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cgH" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cgI" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cgJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cgK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cgL" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_engineering{ + name = "Supermatter Engine Room"; + req_access_txt = "10" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cgM" = ( +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Chief Engineer's Desk"; + departmentType = 3; + name = "Chief Engineer RC"; + pixel_x = -32; + pixel_y = 0 + }, +/obj/machinery/computer/apc_control, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cgN" = ( +/obj/structure/closet/radiation, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cgO" = ( +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cgP" = ( +/obj/structure/table, +/obj/item/device/flashlight{ + pixel_y = 5 + }, +/obj/item/clothing/ears/earmuffs{ + pixel_x = -5; + pixel_y = 6 + }, +/obj/item/weapon/airlock_painter, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cgQ" = ( +/obj/machinery/camera{ + c_tag = "Engineering East"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = 0 + }, +/obj/structure/closet/wardrobe/engineering_yellow, +/turf/open/floor/plasteel/yellow/corner{ + dir = 4 + }, +/area/engine/engineering) +"cgR" = ( +/turf/open/floor/plasteel, +/area/engine/engineering) +"cgS" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/chiefs_office) +"cgT" = ( +/obj/machinery/door/airlock/engineering{ + cyclelinkeddir = 8; + name = "SMES Room"; + req_access_txt = "32" + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/engine/engine_smes) +"cgU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cgV" = ( +/obj/machinery/computer/atmos_control/tank{ + frequency = 1441; + input_tag = "n2_in"; + name = "Nitrogen Supply Control"; + output_tag = "n2_out"; + sensors = list("n2_sensor" = "Tank") + }, +/turf/open/floor/plasteel/red/side, +/area/atmos) +"cgW" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/atmos) +"cgX" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/floor/plasteel, +/area/atmos) +"cgY" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "N2 Outlet Pump"; + on = 1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/atmos) +"cgZ" = ( +/obj/machinery/computer/atmos_control/tank{ + frequency = 1441; + input_tag = "o2_in"; + name = "Oxygen Supply Control"; + output_tag = "o2_out"; + sensors = list("o2_sensor" = "Tank") + }, +/turf/open/floor/plasteel/blue/side{ + dir = 0 + }, +/area/atmos) +"cha" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/turf/open/floor/plasteel/blue/side{ + dir = 10 + }, +/area/atmos) +"chb" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "O2 Outlet Pump"; + on = 1 + }, +/turf/open/floor/plasteel/blue/side{ + dir = 6 + }, +/area/atmos) +"chc" = ( +/obj/machinery/computer/atmos_control/tank{ + frequency = 1441; + input_tag = "air_in"; + name = "Mixed Air Supply Control"; + output_tag = "air_out"; + sensors = list("air_sensor" = "Tank") + }, +/turf/open/floor/plasteel/arrival, +/area/atmos) +"chd" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/turf/open/floor/plasteel/arrival{ + dir = 10 + }, +/area/atmos) +"che" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Atmospherics External Airlock"; + req_access_txt = "24" + }, +/turf/open/floor/plating, +/area/atmos) +"chf" = ( +/obj/machinery/camera{ + c_tag = "Atmospherics South East"; + dir = 1 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Air Outlet Pump"; + on = 1 + }, +/turf/open/floor/plasteel/arrival{ + dir = 6 + }, +/area/atmos) +"chg" = ( +/turf/open/floor/plating, +/area/atmos) +"chh" = ( +/obj/machinery/atmospherics/components/unary/tank/toxins{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"chi" = ( +/obj/machinery/atmospherics/pipe/manifold4w/general{ + level = 2 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"chj" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "plasma tank pump" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"chk" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/closed/wall, +/area/maintenance/incinerator) +"chl" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "atmospherics mix pump" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"chm" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/machinery/airalarm{ + desc = "This particular atmos control unit appears to have no access restrictions."; + dir = 8; + icon_state = "alarm0"; + locked = 0; + name = "all-access air alarm"; + pixel_x = 24; + req_access = "0"; + req_one_access = "0" + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"chn" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cho" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/open/floor/circuit{ + name = "Killroom Floor"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/xenobiology) +"chp" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall, +/area/maintenance/asmaint) +"chq" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/circuit{ + name = "Killroom Floor"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/xenobiology) +"chr" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/research{ + name = "Kill Chamber"; + req_access_txt = "55" + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/toxins/xenobiology) +"chs" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/turf/open/floor/circuit{ + name = "Killroom Floor"; + initial_gas_mix = "n2=500;TEMP=80" + }, +/area/toxins/xenobiology) +"cht" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"chu" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"chv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"chw" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"chx" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"chy" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"chz" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"chA" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"chB" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"chC" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/spawner/lootdrop/maintenance, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"chD" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"chE" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"chF" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"chG" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"chH" = ( +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"chI" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"chJ" = ( +/obj/machinery/power/tracker, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/port) +"chK" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"chL" = ( +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"chM" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"chN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"chO" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Solar Maintenance"; + req_access = null; + req_access_txt = "10; 13" + }, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"chP" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"chQ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"chR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"chS" = ( +/obj/machinery/door/airlock/engineering{ + name = "Aft Port Solar Access"; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"chT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"chU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/mob/living/simple_animal/mouse, +/turf/open/floor/plating, +/area/maintenance/aft) +"chV" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/table/reinforced, +/obj/item/weapon/tank/internals/emergency_oxygen/engi{ + pixel_x = 5; + pixel_y = 0 + }, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/glasses/meson/engine, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"chW" = ( +/obj/machinery/camera{ + c_tag = "Engineering Center"; + dir = 2; + pixel_x = 23 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"chX" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"chY" = ( +/obj/machinery/shieldgen, +/turf/open/floor/plating, +/area/engine/engineering) +"chZ" = ( +/obj/machinery/the_singularitygen{ + anchored = 0 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cia" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/yellow/side, +/area/engine/engineering) +"cib" = ( +/obj/machinery/power/apc{ + cell_type = 15000; + dir = 1; + name = "Engineering APC"; + pixel_x = 0; + pixel_y = 25 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/yellow/side, +/area/engine/engineering) +"cic" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/table, +/obj/item/clothing/gloves/color/yellow, +/obj/item/clothing/gloves/color/yellow, +/turf/open/floor/plasteel/yellow/side, +/area/engine/engineering) +"cid" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/plasteel/yellow/side, +/area/engine/engineering) +"cie" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/plasteel/yellow/side, +/area/engine/engineering) +"cif" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/table, +/obj/item/weapon/tank/internals/emergency_oxygen/engi, +/obj/item/clothing/mask/breath, +/turf/open/floor/plasteel/yellow/side, +/area/engine/engineering) +"cig" = ( +/turf/closed/wall, +/area/engine/engineering) +"cih" = ( +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel/yellow/side, +/area/engine/engineering) +"cii" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/table/reinforced, +/obj/item/clothing/suit/radiation, +/obj/item/clothing/head/radiation, +/obj/item/clothing/glasses/meson, +/obj/item/device/geiger_counter, +/obj/item/device/geiger_counter, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cij" = ( +/obj/machinery/computer/station_alert, +/obj/item/device/radio/intercom{ + broadcasting = 0; + name = "Station Intercom (General)"; + pixel_y = 20 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cik" = ( +/obj/machinery/computer/station_alert, +/obj/machinery/button/door{ + desc = "A remote control-switch for the engineering security doors."; + id = "Engineering"; + name = "Engineering Lockdown"; + pixel_x = -24; + pixel_y = -10; + req_access_txt = "10" + }, +/obj/machinery/button/door{ + desc = "A remote control-switch for secure storage."; + id = "Secure Storage"; + name = "Engineering Secure Storage"; + pixel_x = -24; + pixel_y = 0; + req_access_txt = "11" + }, +/obj/machinery/button/door{ + id = "atmos"; + name = "Atmospherics Lockdown"; + pixel_x = -24; + pixel_y = 10; + req_access_txt = "24" + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cil" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/clothing/gloves/color/yellow, +/obj/item/weapon/storage/belt/utility, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cim" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Chief Engineer" + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cin" = ( +/obj/structure/closet/secure_closet/engineering_chief{ + req_access_txt = "0" + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cio" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cip" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"ciq" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/chiefs_office) +"cir" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cis" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cit" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/turf/closed/wall/r_wall, +/area/atmos) +"ciu" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"civ" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/green/visible, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"ciw" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/atmos) +"cix" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/turf/closed/wall/r_wall, +/area/atmos) +"ciy" = ( +/obj/structure/sign/nosmoking_2{ + pixel_x = -28 + }, +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4; + name = "input gas connector port" + }, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ciz" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ciA" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "input port pump" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ciB" = ( +/obj/effect/decal/cleanable/cobweb, +/obj/structure/reagent_dispensers/watertank, +/obj/item/weapon/extinguisher, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ciC" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 6 + }, +/turf/open/space, +/area/space/nearstation) +"ciD" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + name = "output gas connector port" + }, +/obj/machinery/portable_atmospherics/canister, +/obj/structure/sign/nosmoking_2{ + pixel_x = 28 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ciE" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ciF" = ( +/obj/structure/table, +/obj/item/weapon/cartridge/medical, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ciG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/closet/firecloset/full, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ciH" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/obj/item/latexballon, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ciI" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ciJ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/asmaint2) +"ciK" = ( +/obj/structure/rack, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ciL" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/tinted/fulltile, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ciM" = ( +/obj/machinery/power/compressor{ + comp_id = "incineratorturbine"; + dir = 1; + luminosity = 2 + }, +/obj/structure/cable/yellow, +/obj/structure/cable/yellow{ + d2 = 2; + icon_state = "0-2" + }, +/obj/machinery/camera{ + c_tag = "Turbine Chamber"; + dir = 4; + network = list("Turbine") + }, +/turf/open/floor/engine/vacuum, +/area/maintenance/incinerator) +"ciN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ciO" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"ciP" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"ciQ" = ( +/obj/machinery/power/solar_control{ + id = "portsolar"; + name = "Aft Port Solar Control"; + track = 0 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"ciR" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Aft Port Solar APC"; + pixel_x = 23; + pixel_y = 2 + }, +/obj/machinery/camera{ + c_tag = "Aft Port Solar Control"; + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"ciS" = ( +/turf/open/floor/plating, +/area/maintenance/portsolar) +"ciT" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/maintenance/aft) +"ciU" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"ciV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ciW" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"ciX" = ( +/obj/structure/closet/crate, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/weapon/electronics/airlock, +/obj/item/weapon/electronics/airlock, +/obj/item/weapon/stock_parts/cell/high/plus, +/obj/item/stack/sheet/mineral/plasma{ + amount = 30 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"ciY" = ( +/obj/machinery/door/poddoor{ + id = "Secure Storage"; + name = "secure storage" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"ciZ" = ( +/turf/open/floor/plating, +/area/engine/engineering) +"cja" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjb" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjd" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/sign/nosmoking_2{ + pixel_y = 32 + }, +/obj/machinery/camera{ + c_tag = "Engineering Power Storage" + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cje" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjf" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/chair/office/dark{ + dir = 1 + }, +/obj/effect/landmark/start{ + name = "Station Engineer" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjg" = ( +/obj/machinery/camera{ + c_tag = "Chief Engineer's Office"; + dir = 4; + network = list("SS13") + }, +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/computer/card/minor/ce, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cjh" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cji" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjj" = ( +/obj/item/device/radio/intercom{ + dir = 4; + name = "Station Intercom (General)"; + pixel_x = 27 + }, +/obj/structure/filingcabinet/chestdrawer, +/mob/living/simple_animal/parrot/Poly, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cjk" = ( +/obj/structure/sign/securearea, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cjl" = ( +/obj/machinery/camera{ + c_tag = "Engineering MiniSat Access"; + dir = 4; + network = list("SS13") + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjm" = ( +/obj/machinery/door/airlock/command{ + name = "MiniSat Access"; + req_access_txt = "65" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjn" = ( +/obj/item/weapon/weldingtool, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"cjo" = ( +/obj/structure/closet/toolcloset, +/turf/open/floor/plasteel, +/area/construction) +"cjp" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/obj/structure/reagent_dispensers/fueltank, +/obj/item/weapon/storage/toolbox/emergency, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cjq" = ( +/obj/machinery/atmospherics/components/binary/valve{ + name = "Mix to Space" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cjr" = ( +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cjs" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cjt" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 101.325; + on = 1; + pressure_checks = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cju" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Incinerator to Output"; + on = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cjv" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cjw" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/asmaint) +"cjx" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/incinerator) +"cjy" = ( +/obj/structure/disposalpipe/segment, +/obj/item/weapon/shard, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cjz" = ( +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/turf/closed/wall, +/area/maintenance/asmaint) +"cjA" = ( +/obj/structure/disposalpipe/segment, +/obj/item/weapon/cigbutt/roach, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cjB" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/obj/structure/table, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"cjC" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cjD" = ( +/turf/closed/wall/r_wall, +/area/maintenance/starboardsolar) +"cjE" = ( +/obj/structure/rack, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cjF" = ( +/obj/machinery/door/airlock/engineering{ + name = "Aft Starboard Solar Access"; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cjG" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_y = 0 + }, +/turf/closed/wall/r_wall, +/area/maintenance/starboardsolar) +"cjH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"cjI" = ( +/obj/structure/closet/crate, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cjJ" = ( +/turf/closed/wall/r_wall, +/area/engine/engine_smes) +"cjK" = ( +/obj/effect/spawner/lootdrop/maintenance, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"cjL" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/construction) +"cjM" = ( +/obj/machinery/portable_atmospherics/canister/toxins, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "Engineering Secure Storage"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cjN" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjO" = ( +/obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjQ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjR" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Engineering External Access"; + req_access = null; + req_access_txt = "10;13" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjT" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjU" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cjV" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cjW" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/toxins/misc_lab) +"cjX" = ( +/obj/item/weapon/cartridge/engineering{ + pixel_x = 4; + pixel_y = 5 + }, +/obj/item/weapon/cartridge/engineering{ + pixel_x = -3; + pixel_y = 2 + }, +/obj/item/weapon/cartridge/engineering{ + pixel_x = 3 + }, +/obj/structure/table/reinforced, +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/obj/item/weapon/cartridge/atmos, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cjY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cjZ" = ( +/obj/structure/sign/securearea, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cka" = ( +/obj/machinery/door/poddoor/preopen{ + id = "testlab"; + name = "test chamber blast door" + }, +/obj/machinery/door/airlock/glass_research{ + cyclelinkeddir = 4; + name = "Test Chamber"; + req_access_txt = "47" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"ckb" = ( +/obj/machinery/atmospherics/pipe/simple, +/obj/structure/grille, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/atmos) +"ckc" = ( +/obj/machinery/atmospherics/pipe/simple, +/obj/structure/grille, +/obj/machinery/meter{ + name = "Mixed Air Tank In" + }, +/turf/closed/wall/r_wall, +/area/atmos) +"ckd" = ( +/obj/machinery/atmospherics/pipe/simple, +/obj/structure/grille, +/obj/machinery/meter{ + name = "Mixed Air Tank Out" + }, +/turf/closed/wall/r_wall, +/area/atmos) +"cke" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ckf" = ( +/obj/structure/grille, +/obj/structure/disposalpipe/segment, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/incinerator) +"ckg" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ckh" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Mix to MiniSat" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cki" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ckj" = ( +/obj/item/weapon/cigbutt, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ckk" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/binary/valve{ + dir = 4; + name = "Incinerator to Space" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"ckl" = ( +/obj/machinery/portable_atmospherics/canister, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ckm" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Biohazard Disposals"; + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"ckn" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/toxins/xenobiology) +"cko" = ( +/obj/structure/disposalpipe/segment, +/turf/closed/wall, +/area/maintenance/asmaint2) +"ckp" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ckq" = ( +/obj/structure/shuttle/engine/propulsion/burst{ + dir = 4; + icon_state = "propulsion" + }, +/turf/closed/wall/mineral/titanium, +/area/shuttle/pod_2) +"ckr" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cks" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"ckt" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "Aft Starboard Solar APC"; + pixel_x = -26; + pixel_y = 3 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cku" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/smes, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"ckv" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"ckw" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"ckx" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cky" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"ckz" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"ckA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"ckB" = ( +/obj/machinery/field/generator, +/turf/open/floor/plating, +/area/engine/engineering) +"ckC" = ( +/obj/machinery/power/emitter, +/turf/open/floor/plating, +/area/engine/engineering) +"ckD" = ( +/obj/structure/table, +/obj/item/weapon/electronics/airlock, +/obj/item/weapon/electronics/airlock, +/obj/item/weapon/electronics/apc, +/obj/item/weapon/stock_parts/cell/high/plus, +/obj/item/weapon/stock_parts/cell/high/plus, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ckE" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ckF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ckG" = ( +/obj/structure/table, +/obj/item/weapon/book/manual/engineering_singularity_safety, +/obj/item/clothing/gloves/color/yellow, +/obj/item/clothing/gloves/color/yellow, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ckH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ckI" = ( +/obj/structure/tank_dispenser, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ckJ" = ( +/obj/structure/closet/crate{ + name = "solar pack crate" + }, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/solar_assembly, +/obj/item/weapon/circuitboard/computer/solar_control, +/obj/item/weapon/electronics/tracker, +/obj/item/weapon/paper/solar, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ckK" = ( +/obj/machinery/suit_storage_unit/engine, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ckL" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/chiefs_office) +"ckM" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/misc_lab) +"ckN" = ( +/obj/machinery/door/airlock/glass_research{ + cyclelinkeddir = 8; + name = "Test Chamber"; + req_access_txt = "47" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/toxins/misc_lab) +"ckO" = ( +/obj/structure/grille, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/chiefs_office) +"ckP" = ( +/obj/machinery/door/airlock/glass_command{ + name = "Chief Engineer"; + req_access_txt = "56" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"ckQ" = ( +/obj/structure/closet/cardboard, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"ckR" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE" + }, +/turf/closed/wall/r_wall, +/area/engine/chiefs_office) +"ckS" = ( +/obj/structure/closet/cardboard, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"ckT" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/engine/engineering) +"ckU" = ( +/obj/machinery/air_sensor{ + frequency = 1441; + id_tag = "n2_sensor" + }, +/turf/open/floor/engine/n2, +/area/atmos) +"ckV" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1; + frequency = 1441; + id = "n2_in" + }, +/turf/open/floor/engine/n2, +/area/atmos) +"ckW" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 0; + frequency = 1441; + id_tag = "n2_out"; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/engine/n2, +/area/atmos) +"ckX" = ( +/obj/machinery/air_sensor{ + frequency = 1441; + id_tag = "o2_sensor" + }, +/turf/open/floor/engine/o2, +/area/atmos) +"ckY" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1; + frequency = 1441; + id = "o2_in" + }, +/turf/open/floor/engine/o2, +/area/atmos) +"ckZ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 0; + frequency = 1441; + id_tag = "o2_out"; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/engine/o2, +/area/atmos) +"cla" = ( +/obj/machinery/air_sensor{ + frequency = 1441; + id_tag = "air_sensor" + }, +/turf/open/floor/engine/air, +/area/atmos) +"clb" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1; + frequency = 1441; + id = "air_in" + }, +/turf/open/floor/engine/air, +/area/atmos) +"clc" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{ + dir = 1; + external_pressure_bound = 0; + frequency = 1441; + icon_state = "vent_map"; + id_tag = "air_out"; + internal_pressure_bound = 2000; + on = 1; + pressure_checks = 2; + pump_direction = 0 + }, +/turf/open/floor/engine/air, +/area/atmos) +"cld" = ( +/obj/effect/landmark{ + name = "blobstart" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "Mix to Incinerator"; + on = 0 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cle" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 2 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"clf" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"clg" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -29 + }, +/obj/structure/table, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen, +/turf/open/floor/plating, +/area/maintenance/incinerator) +"clh" = ( +/obj/machinery/light/small, +/obj/structure/extinguisher_cabinet{ + pixel_x = 0; + pixel_y = -31 + }, +/obj/machinery/computer/turbine_computer{ + id = "incineratorturbine" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"cli" = ( +/obj/machinery/button/door{ + id = "auxincineratorvent"; + name = "Auxiliary Vent Control"; + pixel_x = 6; + pixel_y = -24; + req_access_txt = "32" + }, +/obj/machinery/button/door{ + id = "turbinevent"; + name = "Turbine Vent Control"; + pixel_x = -6; + pixel_y = -24; + req_access_txt = "32" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"clj" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"clk" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cll" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"clm" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/manifold/general/hidden{ + icon_state = "manifold"; + dir = 1 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cln" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"clo" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/obj/machinery/meter, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"clp" = ( +/obj/machinery/door/airlock/external{ + name = "Solar Maintenance"; + req_access = null; + req_access_txt = "10; 13" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"clq" = ( +/obj/structure/rack, +/obj/structure/disposalpipe/segment, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"clr" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cls" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 3; + name = "3maintenance loot spawner" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"clt" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"clu" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"clv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/asmaint2) +"clw" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"clx" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cly" = ( +/obj/structure/chair/stool, +/obj/machinery/camera{ + c_tag = "Aft Starboard Solar Control"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"clz" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"clA" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"clB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/yellow/corner{ + dir = 1 + }, +/area/hallway/secondary/entry) +"clC" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"clD" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/engine/engine_smes) +"clE" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/smes/engineering, +/turf/open/floor/plasteel/vault{ + dir = 1 + }, +/area/engine/engine_smes) +"clF" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"clG" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/smes/engineering, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/engine/engine_smes) +"clH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/closed/wall, +/area/engine/engineering) +"clI" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"clJ" = ( +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"clK" = ( +/obj/item/device/radio/intercom{ + desc = "Talk through this. Evilly"; + freerange = 1; + frequency = 1213; + name = "Syndicate Intercom"; + pixel_y = -32; + subspace_transmission = 1; + syndie = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"clL" = ( +/obj/structure/closet/syndicate/personal, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"clM" = ( +/obj/structure/table, +/obj/item/weapon/crowbar/large, +/obj/item/weapon/storage/box/lights/mixed, +/obj/item/clothing/glasses/meson, +/obj/item/clothing/glasses/meson, +/turf/open/floor/plasteel/yellow/side{ + dir = 9 + }, +/area/engine/engineering) +"clN" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/yellow/corner{ + dir = 1 + }, +/area/engine/engineering) +"clO" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"clP" = ( +/turf/open/floor/plasteel/yellow/corner{ + dir = 4 + }, +/area/engine/engineering) +"clQ" = ( +/turf/open/floor/plasteel/yellow/corner{ + dir = 1 + }, +/area/engine/engineering) +"clR" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/table, +/obj/item/weapon/book/manual/wiki/engineering_hacking{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/book/manual/wiki/engineering_construction, +/obj/item/clothing/glasses/meson, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/engine/engineering) +"clS" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/red/side, +/area/security/main) +"clT" = ( +/obj/machinery/portable_atmospherics/canister/nitrogen, +/turf/open/floor/engine/n2, +/area/atmos) +"clU" = ( +/turf/open/floor/engine/n2, +/area/atmos) +"clV" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/engine/o2, +/area/atmos) +"clW" = ( +/turf/open/floor/engine/o2, +/area/atmos) +"clX" = ( +/obj/effect/landmark/event_spawn, +/obj/effect/landmark/xmastree, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"clY" = ( +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/turf/open/floor/engine/air, +/area/atmos) +"clZ" = ( +/turf/open/floor/engine/air, +/area/atmos) +"cma" = ( +/obj/machinery/door/window{ + name = "Cockpit"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cmb" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/incinerator) +"cmc" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 2 + }, +/turf/closed/wall/r_wall, +/area/maintenance/incinerator) +"cmd" = ( +/turf/closed/wall/r_wall, +/area/maintenance/incinerator) +"cme" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/closed/wall/r_wall, +/area/maintenance/incinerator) +"cmf" = ( +/obj/machinery/door/airlock/glass{ + autoclose = 0; + frequency = 1449; + heat_proof = 1; + icon_state = "door_locked"; + id_tag = "incinerator_airlock_interior"; + locked = 1; + name = "Turbine Interior Airlock"; + req_access_txt = "32" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/maintenance/incinerator) +"cmg" = ( +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + dir = 9 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cmh" = ( +/obj/structure/disposalpipe/junction{ + dir = 2; + icon_state = "pipe-y" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cmi" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cmj" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cmk" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cml" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"cmm" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cmn" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cmo" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cmp" = ( +/obj/machinery/porta_turret/syndicate{ + dir = 4 + }, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"cmq" = ( +/obj/effect/landmark{ + name = "xeno_spawn"; + pixel_x = -1 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/asmaint2) +"cmr" = ( +/obj/structure/closet/toolcloset, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cms" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cmt" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cmu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/closed/wall, +/area/maintenance/asmaint2) +"cmv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cmw" = ( +/obj/machinery/power/solar_control{ + id = "starboardsolar"; + name = "Aft Starboard Solar Control"; + track = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cmx" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cmy" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cmz" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cmA" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/engine/engine_smes) +"cmB" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/engine/engine_smes) +"cmC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cmD" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=2"; + freq = 1400; + location = "Engineering" + }, +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cmE" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"cmF" = ( +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/engine/engineering) +"cmG" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 9 + }, +/area/engine/engineering) +"cmH" = ( +/obj/structure/table, +/obj/item/stack/cable_coil, +/obj/item/weapon/crowbar/red, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cmI" = ( +/obj/machinery/vending/engivend, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/engine/engineering) +"cmJ" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/zipties{ + pixel_x = 1; + pixel_y = 2 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cmK" = ( +/obj/machinery/requests_console{ + announcementConsole = 0; + department = "Engineering"; + departmentType = 4; + name = "Engineering RC"; + pixel_y = 30 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/engine/engineering) +"cmL" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/engine/engineering) +"cmM" = ( +/obj/machinery/sleeper/syndie{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"cmN" = ( +/obj/structure/sign/nosmoking_2{ + pixel_y = 32 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/yellow/side{ + dir = 1 + }, +/area/engine/engineering) +"cmO" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"cmP" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"cmQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cmR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cmS" = ( +/obj/structure/table, +/obj/item/stack/medical/ointment, +/obj/item/stack/medical/bruise_pack, +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"cmT" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cmU" = ( +/obj/machinery/light/small, +/turf/open/floor/engine/n2, +/area/atmos) +"cmV" = ( +/obj/machinery/light/small, +/turf/open/floor/engine/o2, +/area/atmos) +"cmW" = ( +/obj/machinery/light/small, +/turf/open/floor/engine/air, +/area/atmos) +"cmX" = ( +/obj/machinery/light_switch{ + pixel_x = 27 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/construction) +"cmY" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + on = 1 + }, +/obj/machinery/doorButtons/access_button{ + idDoor = "incinerator_airlock_exterior"; + idSelf = "incinerator_access_control"; + layer = 3.1; + name = "Incinerator airlock control"; + pixel_x = 8; + pixel_y = -24 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/sign/fire{ + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/engine, +/area/maintenance/incinerator) +"cmZ" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + on = 1 + }, +/obj/structure/sign/fire{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/machinery/doorButtons/access_button{ + idSelf = "incinerator_access_control"; + idDoor = "incinerator_airlock_interior"; + name = "Incinerator airlock control"; + pixel_x = -8; + pixel_y = 24 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/engine, +/area/maintenance/incinerator) +"cna" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/maintenance/incinerator) +"cnb" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cnc" = ( +/obj/machinery/light/small, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cnd" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cne" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cnf" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cng" = ( +/obj/machinery/light/small, +/obj/structure/table, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/effect/spawner/lootdrop/maintenance, +/obj/item/weapon/clipboard, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cnh" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cni" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0 + }, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"cnj" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cnk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Solar Maintenance"; + req_access = null; + req_access_txt = "10; 13" + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cnl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/port) +"cnm" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + on = 1 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cnn" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/engine/engine_smes) +"cno" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/smes/engineering, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/engine/engine_smes) +"cnp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/camera{ + c_tag = "SMES Room"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = 0 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cnq" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/smes/engineering, +/turf/open/floor/plasteel/vault{ + dir = 1 + }, +/area/engine/engine_smes) +"cnr" = ( +/obj/machinery/door/window/southleft{ + base_state = "left"; + dir = 2; + icon_state = "left"; + name = "Engineering Delivery"; + req_access_txt = "10" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cns" = ( +/obj/structure/closet/syndicate/nuclear, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cnt" = ( +/obj/machinery/camera{ + c_tag = "Engineering West"; + dir = 4; + network = list("SS13") + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/landmark/start{ + name = "Station Engineer" + }, +/turf/open/floor/plasteel/yellow/corner{ + dir = 1 + }, +/area/engine/engineering) +"cnu" = ( +/obj/structure/table, +/obj/item/device/aicard, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cnv" = ( +/obj/machinery/holopad, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cnw" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cnx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cny" = ( +/obj/effect/landmark/start{ + name = "Station Engineer" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cnz" = ( +/obj/structure/tank_dispenser/oxygen, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"cnA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cnB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/construction) +"cnC" = ( +/obj/machinery/door/airlock/glass{ + autoclose = 0; + frequency = 1449; + heat_proof = 1; + icon_state = "door_locked"; + id_tag = "incinerator_airlock_exterior"; + locked = 1; + name = "Turbine Exterior Airlock"; + req_access_txt = "32" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/maintenance/incinerator) +"cnD" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/closed/wall, +/area/maintenance/asmaint) +"cnE" = ( +/obj/structure/disposalpipe/junction{ + dir = 4; + icon_state = "pipe-j2" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cnF" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "Waste Out"; + on = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cnG" = ( +/obj/structure/closet/emcloset, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cnH" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cnI" = ( +/obj/structure/table, +/obj/item/weapon/c4{ + pixel_x = 2; + pixel_y = -5 + }, +/obj/item/weapon/c4{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/c4{ + pixel_x = 2; + pixel_y = -3 + }, +/obj/item/weapon/c4{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/weapon/c4{ + pixel_x = 3; + pixel_y = 3 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cnJ" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cnK" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cnL" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cnM" = ( +/obj/machinery/door/window{ + name = "SMES Chamber"; + req_access_txt = "32" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cnN" = ( +/obj/structure/window/reinforced, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cnO" = ( +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cnP" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/structure/window/reinforced, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plasteel/black, +/area/engine/engine_smes) +"cnQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cnR" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/engine/engine_smes) +"cnS" = ( +/obj/machinery/door/firedoor, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/camera{ + c_tag = "SMES Access"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cnT" = ( +/obj/structure/sign/bluecross_2, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"cnU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_x = -32; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/loadingarea, +/area/engine/engineering) +"cnV" = ( +/obj/structure/bed/roller, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"cnW" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"cnX" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cnY" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/sign/nosmoking_2{ + pixel_y = 32 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cnZ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"coa" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cob" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"coc" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_engineering{ + name = "Supermatter Engine Room"; + req_access_txt = "10" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cod" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"coe" = ( +/obj/machinery/door/window{ + dir = 4; + name = "EVA Storage"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cof" = ( +/obj/machinery/door/airlock/external{ + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cog" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "EVA Storage"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coh" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"coi" = ( +/obj/structure/rack, +/obj/item/clothing/suit/space/syndicate/black/red, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coj" = ( +/obj/item/device/radio/intercom{ + desc = "Talk through this. Evilly"; + freerange = 1; + frequency = 1213; + name = "Syndicate Intercom"; + pixel_x = -32; + subspace_transmission = 1; + syndie = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cok" = ( +/obj/machinery/recharge_station, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"col" = ( +/obj/machinery/door/window{ + dir = 4; + name = "Infirmary"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"com" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Infirmary"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"con" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/table, +/obj/item/bodypart/r_arm/robot, +/obj/item/bodypart/l_arm/robot, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"coo" = ( +/obj/structure/table, +/obj/item/weapon/stock_parts/cell/high{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/stock_parts/cell/high, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cop" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1; + frequency = 1441; + id = "inc_in" + }, +/turf/open/floor/engine/vacuum, +/area/maintenance/incinerator) +"coq" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + external_pressure_bound = 0; + initialize_directions = 1; + internal_pressure_bound = 4000; + on = 0; + pressure_checks = 2; + pump_direction = 0 + }, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = -32 + }, +/turf/open/floor/engine/vacuum, +/area/maintenance/incinerator) +"cor" = ( +/obj/machinery/igniter{ + icon_state = "igniter0"; + id = "Incinerator"; + luminosity = 2; + on = 0 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine/vacuum, +/area/maintenance/incinerator) +"cos" = ( +/obj/machinery/door/poddoor{ + id = "auxincineratorvent"; + name = "Auxiliary Incinerator Vent" + }, +/turf/open/floor/engine/vacuum, +/area/maintenance/incinerator) +"cot" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cou" = ( +/obj/machinery/space_heater, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cov" = ( +/obj/machinery/power/port_gen/pacman, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cow" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cox" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"coy" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"coz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"coA" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"coB" = ( +/obj/machinery/door/airlock/engineering{ + cyclelinkeddir = 4; + name = "SMES Room"; + req_access_txt = "32" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel{ + name = "floor" + }, +/area/engine/engine_smes) +"coC" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"coD" = ( +/obj/structure/table, +/obj/item/weapon/wrench, +/obj/item/device/assembly/infra, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coE" = ( +/obj/structure/table, +/obj/item/weapon/screwdriver{ + pixel_y = 9 + }, +/obj/item/device/assembly/voice{ + pixel_y = 3 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coF" = ( +/obj/structure/table, +/obj/item/weapon/weldingtool/largetank{ + pixel_y = 3 + }, +/obj/item/device/multitool, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coG" = ( +/obj/structure/table, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coH" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"coI" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"coJ" = ( +/obj/machinery/door/firedoor, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"coK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"coL" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"coM" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"coN" = ( +/obj/machinery/door/window/westright{ + name = "Tool Storage"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coO" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/syndicate, +/obj/item/weapon/crowbar/red, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coP" = ( +/obj/machinery/door/window{ + dir = 1; + name = "Surgery"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"coQ" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/brute, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"coR" = ( +/obj/machinery/door/window{ + dir = 8; + name = "Tool Storage"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coS" = ( +/obj/structure/rack, +/obj/item/weapon/gun/energy/laser{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/gun/energy/laser, +/obj/item/weapon/gun/energy/laser{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel{ + dir = 2 + }, +/area/ai_monitored/security/armory) +"coT" = ( +/obj/item/pipe{ + dir = 4; + icon_state = "mixer"; + name = "gas mixer fitting"; + pipe_type = 14 + }, +/turf/open/floor/engine, +/area/toxins/misc_lab) +"coU" = ( +/obj/structure/table, +/obj/item/weapon/surgicaldrill, +/obj/item/weapon/circular_saw, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"coV" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = 30 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"coW" = ( +/obj/structure/table, +/obj/item/device/sbeacondrop/bomb{ + pixel_y = 5 + }, +/obj/item/device/sbeacondrop/bomb, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coX" = ( +/obj/structure/table, +/obj/item/weapon/grenade/syndieminibomb{ + pixel_x = 4; + pixel_y = 2 + }, +/obj/item/weapon/grenade/syndieminibomb{ + pixel_x = -1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coY" = ( +/obj/machinery/nuclearbomb/syndicate, +/obj/machinery/door/window{ + dir = 1; + name = "Secure Storage"; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"coZ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/obj/structure/closet/secure_closet/engineering_electrical, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cpa" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/structure/closet/secure_closet/engineering_welding, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cpb" = ( +/obj/structure/closet/emcloset, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cpc" = ( +/obj/structure/shuttle/engine/propulsion/burst{ + dir = 8 + }, +/turf/closed/wall/mineral/titanium, +/area/shuttle/pod_4) +"cpd" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/pod_4) +"cpe" = ( +/obj/docking_port/stationary/random{ + dir = 8; + id = "pod_asteroid2"; + name = "asteroid" + }, +/turf/open/space, +/area/space) +"cpf" = ( +/obj/machinery/telecomms/allinone{ + intercept = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cpg" = ( +/obj/item/weapon/grenade/barrier{ + pixel_x = 4 + }, +/obj/item/weapon/grenade/barrier, +/obj/item/weapon/grenade/barrier{ + pixel_x = -4 + }, +/obj/structure/table, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"cph" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/green/visible, +/turf/open/space, +/area/space/nearstation) +"cpi" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"cpj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpk" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpl" = ( +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpm" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpn" = ( +/obj/machinery/light, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpo" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpp" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpq" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE"; + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cpr" = ( +/obj/structure/table, +/obj/item/weapon/cautery, +/obj/item/weapon/scalpel, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"cps" = ( +/obj/structure/table, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cpt" = ( +/obj/structure/table, +/obj/item/clothing/gloves/color/yellow, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_y = 5 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cpu" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_engineering{ + name = "Supermatter Engine Room"; + req_access_txt = "10" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cpv" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cpw" = ( +/obj/structure/table, +/obj/item/weapon/retractor, +/obj/item/weapon/hemostat, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"cpx" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cpy" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cpz" = ( +/obj/structure/particle_accelerator/end_cap, +/turf/open/floor/plating, +/area/engine/engineering) +"cpA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"cpB" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cpC" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/bridge) +"cpD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cpE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cpF" = ( +/obj/structure/table/optable, +/obj/item/weapon/surgical_drapes, +/turf/open/floor/mineral/titanium, +/area/shuttle/syndicate) +"cpG" = ( +/obj/structure/table/optable, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"cpH" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"cpI" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Escape Pod Four"; + req_access = null; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cpJ" = ( +/obj/machinery/door/airlock/titanium{ + name = "Escape Pod Airlock" + }, +/obj/docking_port/mobile/pod{ + dir = 4; + id = "pod4"; + name = "escape pod 4"; + port_angle = 180; + preferred_direction = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_4) +"cpK" = ( +/obj/machinery/computer/shuttle/pod{ + pixel_x = 0; + pixel_y = -32; + possible_destinations = "pod_asteroid2"; + shuttleId = "pod2" + }, +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_2) +"cpL" = ( +/obj/item/weapon/storage/pod{ + pixel_x = 6; + pixel_y = -28 + }, +/obj/item/device/radio/intercom{ + pixel_x = 0; + pixel_y = 25 + }, +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_2) +"cpM" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/pod_4) +"cpN" = ( +/obj/machinery/power/turbine{ + luminosity = 2 + }, +/obj/structure/cable/yellow, +/turf/open/floor/engine/vacuum, +/area/maintenance/incinerator) +"cpO" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "Incinerator Output Pump"; + on = 1 + }, +/turf/open/space, +/area/maintenance/incinerator) +"cpP" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/turf/open/space, +/area/space/nearstation) +"cpQ" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/space, +/area/maintenance/incinerator) +"cpR" = ( +/obj/machinery/door/airlock{ + name = "Observatory Access" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cpS" = ( +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 2; + name = "SMES room APC"; + pixel_y = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpT" = ( +/obj/structure/table, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -35 + }, +/obj/item/weapon/stock_parts/cell/high/plus, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpU" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/engine_smes) +"cpV" = ( +/obj/structure/table, +/obj/machinery/camera{ + c_tag = "Engineering Storage"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cpW" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cpX" = ( +/obj/structure/table, +/obj/item/stack/rods{ + amount = 50 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cpY" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cpZ" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_y = 5 + }, +/obj/item/device/flashlight{ + pixel_x = 1; + pixel_y = 5 + }, +/obj/item/device/flashlight{ + pixel_x = 1; + pixel_y = 5 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqa" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cqb" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqc" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqd" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) +"cqe" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + icon_state = "intact"; + dir = 6 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqf" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/light, +/turf/open/floor/engine, +/area/engine/engineering) +"cqg" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Gas to Filter"; + on = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqh" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 1 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -26 + }, +/obj/machinery/camera{ + c_tag = "Engineering Supermatter North"; + dir = 1; + pixel_x = 23 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqi" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/light, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) +"cqj" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 1 + }, +/obj/machinery/button/door{ + id = "engsm"; + name = "Radiation Shutters Control"; + pixel_x = 0; + pixel_y = -24; + req_access_txt = "10" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqk" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cql" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqm" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqn" = ( +/obj/structure/grille, +/turf/open/floor/plating, +/area/maintenance/aft) +"cqo" = ( +/obj/structure/sign/pods{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqp" = ( +/obj/machinery/camera{ + c_tag = "Engineering Escape Pod"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cqq" = ( +/obj/machinery/door/airlock/titanium{ + name = "Escape Pod Airlock" + }, +/obj/docking_port/mobile/pod{ + dir = 8; + id = "pod2"; + name = "escape pod 2"; + port_angle = 180 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_2) +"cqr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"cqs" = ( +/obj/structure/sign/fire{ + pixel_x = 0; + pixel_y = 0 + }, +/turf/closed/wall/r_wall, +/area/maintenance/incinerator) +"cqt" = ( +/obj/machinery/door/poddoor{ + id = "turbinevent"; + name = "Turbine Vent" + }, +/turf/open/floor/engine/vacuum, +/area/maintenance/incinerator) +"cqu" = ( +/obj/machinery/door/airlock/external{ + name = "External Access"; + req_access = null; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cqv" = ( +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plating, +/area/maintenance/aft) +"cqw" = ( +/obj/structure/table, +/obj/item/stack/sheet/plasteel{ + amount = 10 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqx" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqy" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cqz" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqA" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "Engineering External Access"; + req_access = null; + req_access_txt = "10;13" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cqB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqD" = ( +/obj/structure/sign/radiation, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cqE" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/airlock/glass_engineering{ + heat_proof = 1; + name = "Supermatter Chamber"; + req_access_txt = "10" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cqF" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cqG" = ( +/obj/structure/rack, +/obj/item/weapon/storage/box/rubbershot{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/item/weapon/storage/box/rubbershot{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/rubbershot, +/obj/item/weapon/storage/box/rubbershot, +/obj/item/weapon/storage/box/rubbershot{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/item/weapon/storage/box/rubbershot{ + pixel_x = 3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"cqH" = ( +/obj/item/weapon/screwdriver, +/turf/open/floor/plating, +/area/engine/engineering) +"cqI" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_l" + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"cqJ" = ( +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"cqK" = ( +/obj/structure/table, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 2; + name = "2maintenance loot spawner" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cqL" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cqM" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"cqN" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqO" = ( +/obj/structure/table, +/obj/item/stack/cable_coil{ + pixel_x = 3; + pixel_y = -7 + }, +/obj/item/stack/cable_coil, +/obj/item/weapon/electronics/airlock, +/obj/item/weapon/electronics/airlock, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqP" = ( +/obj/structure/table, +/obj/item/weapon/folder/yellow, +/obj/item/clothing/ears/earmuffs{ + pixel_x = -3; + pixel_y = -2 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqQ" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqR" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cqS" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/engine/engineering) +"cqT" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cqU" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/obj/effect/turf_decal/bot, +/obj/machinery/portable_atmospherics/canister, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cqV" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cqW" = ( +/obj/machinery/power/rad_collector{ + anchored = 1 + }, +/obj/item/weapon/tank/internals/plasma, +/obj/structure/cable/yellow, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cqX" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cqY" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cqZ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine, +/area/engine/engineering) +"cra" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Gas to Filter" + }, +/obj/machinery/airalarm{ + dir = 4; + locked = 0; + pixel_x = -23; + pixel_y = 0; + req_access = null; + req_one_access_txt = "24;10" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine, +/area/engine/engineering) +"crb" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + icon_state = "pump_map"; + name = "Gas to Chamber" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine, +/area/engine/engineering) +"crc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"crd" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_engineering{ + name = "Supermatter Engine Room"; + req_access_txt = "10" + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cre" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = -32 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"crf" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_r" + }, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"crg" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating, +/area/shuttle/syndicate) +"crh" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cri" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"crj" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/machinery/power/solar{ + id = "starboardsolar"; + name = "Starboard Solar Array" + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/starboard) +"crk" = ( +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"crl" = ( +/obj/structure/table, +/obj/item/device/taperecorder{ + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"crm" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/matches, +/obj/item/weapon/storage/fancy/cigarettes, +/turf/open/floor/plating, +/area/maintenance/aft) +"crn" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"cro" = ( +/obj/structure/grille, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"crp" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'HIGH VOLTAGE'"; + icon_state = "shock"; + name = "HIGH VOLTAGE" + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"crq" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/grille, +/obj/machinery/door/poddoor/preopen{ + id = "Secure Gate"; + name = "brig shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"crr" = ( +/obj/structure/grille, +/obj/structure/cable, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"crs" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + icon_state = "intact"; + dir = 6 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"crt" = ( +/obj/machinery/door/airlock/glass_engineering{ + heat_proof = 1; + name = "Supermatter Chamber"; + req_access_txt = "10" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cru" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"crv" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"crw" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"crx" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/escape) +"cry" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"crz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) +"crA" = ( +/obj/structure/transit_tube_pod, +/obj/structure/transit_tube/station/reverse/flipped{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"crB" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"crC" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"crD" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"crE" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"crF" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"crG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"crH" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"crI" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"crJ" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"crK" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/junction{ + dir = 8 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"crL" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + icon_state = "connector_map"; + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"crM" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"crN" = ( +/obj/structure/table, +/obj/machinery/recharger, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"crO" = ( +/turf/open/floor/mineral/titanium, +/turf/closed/wall/mineral/titanium/interior, +/area/shuttle/escape) +"crP" = ( +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/engine/engineering) +"crQ" = ( +/obj/machinery/computer/emergency_shuttle, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"crR" = ( +/obj/structure/transit_tube, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"crS" = ( +/obj/structure/cable, +/obj/machinery/power/solar{ + id = "starboardsolar"; + name = "Starboard Solar Array" + }, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/starboard) +"crT" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"crU" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 10 + }, +/turf/open/space, +/area/space) +"crV" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"crW" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"crX" = ( +/obj/structure/closet/emcloset, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 32 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"crY" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/transit_tube, +/turf/open/floor/plating, +/area/engine/engineering) +"crZ" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"csa" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/engine/engineering) +"csb" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 9 + }, +/turf/open/space, +/area/space) +"csc" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/space, +/area/maintenance/asmaint) +"csd" = ( +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cse" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"csf" = ( +/obj/machinery/power/emitter{ + anchored = 1; + dir = 8; + state = 2 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"csg" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Engineering External Access"; + req_access = null; + req_access_txt = "10;13" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"csh" = ( +/obj/structure/transit_tube{ + icon_state = "D-SW" + }, +/turf/open/space, +/area/space) +"csi" = ( +/obj/structure/transit_tube/curved/flipped{ + dir = 1 + }, +/turf/open/space, +/area/space) +"csj" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/junction{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"csk" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"csl" = ( +/obj/structure/transit_tube/curved{ + dir = 4 + }, +/turf/open/space, +/area/space) +"csm" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/maintenance/asmaint) +"csn" = ( +/obj/structure/transit_tube/horizontal, +/turf/open/space, +/area/space) +"cso" = ( +/obj/structure/lattice, +/obj/structure/transit_tube/crossing/horizontal, +/turf/open/space, +/area/space) +"csp" = ( +/obj/structure/transit_tube{ + icon_state = "E-W-Pass" + }, +/turf/open/space, +/area/space) +"csq" = ( +/obj/machinery/computer/security/telescreen{ + desc = "Used for watching the turbine vent."; + dir = 1; + name = "turbine vent monitor"; + network = list("Turbine"); + pixel_x = 0; + pixel_y = -29 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"csr" = ( +/obj/machinery/doorButtons/airlock_controller{ + idExterior = "incinerator_airlock_exterior"; + idSelf = "incinerator_access_control"; + idInterior = "incinerator_airlock_interior"; + name = "Incinerator Access Console"; + pixel_x = 6; + pixel_y = -26; + req_access_txt = "12" + }, +/obj/machinery/button/ignition{ + id = "Incinerator"; + pixel_x = -6; + pixel_y = -24 + }, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel/floorgrime, +/area/maintenance/incinerator) +"css" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cst" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"csu" = ( +/obj/structure/closet/firecloset, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"csv" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 5 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"csw" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/space, +/area/space) +"csx" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"csy" = ( +/obj/structure/table, +/obj/item/weapon/weldingtool, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"csz" = ( +/obj/effect/landmark{ + name = "carpspawn" + }, +/turf/open/space, +/area/space/nearstation) +"csA" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"csB" = ( +/obj/item/weapon/wirecutters, +/obj/structure/lattice, +/turf/open/space, +/area/space/nearstation) +"csC" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"csD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"csE" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"csF" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'RADIOACTIVE AREA'"; + icon_state = "radiation"; + name = "RADIOACTIVE AREA"; + pixel_x = 0; + pixel_y = 0 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"csG" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"csH" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"csI" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"csJ" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/engine, +/area/engine/engineering) +"csK" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/grille, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"csL" = ( +/obj/structure/transit_tube{ + icon_state = "D-NE" + }, +/turf/open/space, +/area/space) +"csM" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/structure/transit_tube/crossing/horizontal, +/turf/open/space, +/area/space) +"csN" = ( +/obj/structure/transit_tube/horizontal, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"csO" = ( +/obj/structure/window/reinforced/fulltile, +/obj/structure/transit_tube/horizontal, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"csP" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4"; + d1 = 1; + d2 = 4 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"csQ" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"csR" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"csS" = ( +/obj/item/weapon/weldingtool, +/turf/open/space, +/area/space/nearstation) +"csT" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/landmark/xmastree, +/turf/open/floor/plasteel/black, +/area/chapel/main) +"csU" = ( +/obj/structure/transit_tube/station/reverse, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"csV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"csW" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"csX" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"csY" = ( +/obj/structure/cable{ + icon_state = "0-2"; + d2 = 2 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"csZ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/solar/starboard) +"cta" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "MiniSat External Access"; + req_access = null; + req_access_txt = "65;13" + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"ctb" = ( +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"ctc" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"ctd" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/turf/open/space, +/area/space) +"cte" = ( +/obj/item/device/radio/off, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"ctf" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"ctg" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"cth" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_x = 0; + pixel_y = -29 + }, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"cti" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/securearea{ + pixel_y = -32 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"ctj" = ( +/obj/machinery/camera{ + c_tag = "MiniSat Pod Access"; + dir = 1; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 2; + on = 1 + }, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"ctk" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/closed/wall, +/area/ai_monitored/turret_protected/aisat_interior) +"ctl" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"ctm" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"ctn" = ( +/obj/structure/grille, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"cto" = ( +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Foyer"; + req_one_access_txt = "65" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"ctp" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/ai_monitored/turret_protected/aisat_interior) +"ctq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/ai_monitored/turret_protected/aisat_interior) +"ctr" = ( +/obj/structure/table, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/item/weapon/folder{ + pixel_x = 3 + }, +/obj/item/weapon/phone{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"cts" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/light_switch{ + pixel_y = 28 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/item/device/radio/off{ + pixel_y = 4 + }, +/obj/item/weapon/screwdriver{ + pixel_y = 10 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"ctt" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"ctu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctv" = ( +/turf/closed/wall/r_wall, +/area/space) +"ctw" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23; + pixel_y = 0 + }, +/obj/machinery/computer/station_alert, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"ctx" = ( +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"cty" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctz" = ( +/obj/machinery/door/poddoor/shutters{ + id = "teledoor"; + name = "MiniSat Teleport Access" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"ctA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"ctB" = ( +/obj/structure/cable, +/obj/machinery/power/tracker, +/turf/open/floor/plasteel/airless/solarpanel, +/area/solar/starboard) +"ctC" = ( +/obj/machinery/camera/emp_proof{ + c_tag = "Singularity West"; + dir = 1; + network = list("Singularity") + }, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"ctD" = ( +/obj/machinery/camera/emp_proof{ + c_tag = "Singularity East"; + dir = 1; + network = list("Singularity") + }, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"ctE" = ( +/obj/machinery/teleport/hub, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"ctF" = ( +/obj/machinery/button/door{ + id = "teledoor"; + name = "MiniSat Teleport Shutters Control"; + pixel_x = 0; + pixel_y = 25; + req_access_txt = "17;65" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"ctG" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctH" = ( +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = -31 + }, +/obj/machinery/computer/monitor, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"ctI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctJ" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/effect/landmark/start{ + name = "Cyborg" + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctK" = ( +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Teleporter"; + req_access_txt = "17;65" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"ctL" = ( +/obj/machinery/teleport/station, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"ctM" = ( +/obj/machinery/bluespace_beacon, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"ctN" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + icon_state = "intact"; + dir = 10 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"ctO" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + icon_state = "intact"; + dir = 5 + }, +/turf/open/space, +/area/space) +"ctP" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctQ" = ( +/obj/structure/table, +/obj/machinery/microwave{ + pixel_x = 0; + pixel_y = 4 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"ctR" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'RADIOACTIVE AREA'"; + icon_state = "radiation"; + name = "RADIOACTIVE AREA"; + pixel_x = 0; + pixel_y = 0 + }, +/turf/closed/wall, +/area/engine/engineering) +"ctS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctT" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/grimy, +/area/ai_monitored/turret_protected/aisat_interior) +"ctU" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/ai_monitored/turret_protected/aisat_interior) +"ctV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + dir = 4; + name = "MiniSat Foyer APC"; + pixel_x = 27; + pixel_y = 0 + }, +/obj/structure/chair, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"ctW" = ( +/obj/machinery/computer/teleporter, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"ctX" = ( +/obj/machinery/camera{ + c_tag = "MiniSat Teleporter"; + dir = 1; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"ctY" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"ctZ" = ( +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cua" = ( +/turf/closed/wall, +/area/ai_monitored/turret_protected/aisat_interior) +"cub" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_x = 0; + pixel_y = -29 + }, +/obj/machinery/light/small, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuc" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/machinery/status_display{ + pixel_y = -32 + }, +/obj/item/weapon/storage/box/donkpockets, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"cud" = ( +/obj/machinery/turretid{ + control_area = null; + enabled = 1; + icon_state = "control_standby"; + name = "Antechamber Turret Control"; + pixel_x = 0; + pixel_y = -24; + req_access_txt = "65" + }, +/obj/machinery/light/small, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/camera/motion{ + c_tag = "MiniSat Foyer"; + dir = 1; + network = list("MiniSat") + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cue" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuf" = ( +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cug" = ( +/obj/machinery/ai_status_display{ + pixel_y = -32 + }, +/obj/structure/table, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"cuh" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/structure/rack, +/obj/item/weapon/wrench, +/obj/item/weapon/crowbar/red, +/obj/item/clothing/head/welding, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cui" = ( +/obj/machinery/atmospherics/components/unary/tank/air, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuj" = ( +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/aisat_interior) +"cuk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/aisat_interior) +"cul" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Antechamber"; + req_one_access_txt = "65" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cum" = ( +/obj/machinery/recharge_station, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cun" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "Mix to MiniSat" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating{ + icon_plating = "warnplate" + }, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuo" = ( +/obj/machinery/portable_atmospherics/canister/air, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 2 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cup" = ( +/obj/structure/showcase{ + density = 0; + desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; + dir = 8; + icon = 'icons/mob/robots.dmi'; + icon_state = "robot_old"; + name = "Cyborg Statue"; + pixel_x = 9; + pixel_y = 2 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating{ + icon_plating = "warnplate" + }, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuq" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 0; + name = "Air Out"; + on = 0 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating{ + icon_plating = "warnplate" + }, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cur" = ( +/obj/structure/showcase{ + density = 0; + desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; + dir = 4; + icon = 'icons/mob/robots.dmi'; + icon_state = "robot_old"; + name = "Cyborg Statue"; + pixel_x = -9; + pixel_y = 2 + }, +/turf/open/floor/plasteel/darkblue/corner{ + dir = 1 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"cus" = ( +/obj/structure/showcase{ + density = 0; + desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; + dir = 8; + icon = 'icons/mob/robots.dmi'; + icon_state = "robot_old"; + name = "Cyborg Statue"; + pixel_x = 9; + pixel_y = 2 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/darkblue/corner{ + dir = 4 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"cut" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cuu" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuv" = ( +/obj/structure/showcase{ + density = 0; + desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; + dir = 4; + icon = 'icons/mob/robots.dmi'; + icon_state = "robot_old"; + name = "Cyborg Statue"; + pixel_x = -9; + pixel_y = 2 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 5; + pixel_y = 30 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating{ + icon_plating = "warnplate" + }, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuw" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating{ + icon_plating = "warnplate" + }, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cux" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/clothing/head/welding, +/obj/item/stack/sheet/mineral/plasma{ + amount = 35; + layer = 3.1 + }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuy" = ( +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuA" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "MiniSat Atmospherics"; + dir = 4; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23; + pixel_y = 0 + }, +/obj/machinery/space_heater, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuB" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_x = 28; + pixel_y = 0 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/darkblue/corner{ + dir = 4 + }, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuC" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuD" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "MiniSat Antechamber"; + dir = 4; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/obj/machinery/turretid{ + control_area = "AI Satellite Atmospherics"; + enabled = 1; + icon_state = "control_standby"; + name = "Atmospherics Turret Control"; + pixel_x = -27; + pixel_y = 0; + req_access_txt = "65" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/darkblue/corner{ + dir = 1 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"cuE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/aisat_interior) +"cuF" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/turretid{ + control_area = "AI Satellite Service"; + enabled = 1; + icon_state = "control_standby"; + name = "Service Bay Turret Control"; + pixel_x = 27; + pixel_y = 0; + req_access_txt = "65" + }, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers, +/turf/open/floor/plasteel/darkblue/corner{ + dir = 4 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"cuG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuH" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_x = -28; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/darkblue/corner{ + dir = 1 + }, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuI" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuJ" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuK" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "MiniSat Service Bay"; + dir = 8; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/rack, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/storage/toolbox/mechanical, +/obj/item/device/multitool, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuL" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuM" = ( +/obj/machinery/power/apc{ + dir = 8; + name = "MiniSat Atmospherics APC"; + pixel_x = -27; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/portable_atmospherics/scrubber, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuO" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/ai_slipper{ + uses = 10 + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuP" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuQ" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Atmospherics"; + req_one_access_txt = "65" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuR" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/ai_slipper{ + uses = 10 + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/mob/living/simple_animal/bot/secbot/pingsky, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuT" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuU" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Service Bay"; + req_one_access_txt = "65" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cuV" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuW" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/ai_slipper{ + uses = 10 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuX" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "MiniSat Service Bay APC"; + pixel_x = 27; + pixel_y = 0 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/port_gen/pacman, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cuY" = ( +/obj/machinery/porta_turret/ai{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cuZ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/mob/living/simple_animal/bot/floorbot, +/turf/open/floor/plasteel/darkblue/corner, +/area/ai_monitored/turret_protected/AIsatextAS{ + name = "AI Satellite Atmospherics" + }) +"cva" = ( +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai) +"cvb" = ( +/obj/machinery/ai_status_display, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai) +"cvc" = ( +/obj/structure/sign/securearea{ + pixel_x = -32; + pixel_y = 0 + }, +/obj/machinery/porta_turret/ai{ + dir = 4 + }, +/obj/item/device/radio/intercom{ + broadcasting = 1; + frequency = 1447; + listening = 0; + name = "Station Intercom (AI Private)"; + pixel_y = -29 + }, +/turf/open/floor/plasteel/darkblue/corner{ + dir = 8 + }, +/area/ai_monitored/turret_protected/aisat_interior) +"cvd" = ( +/obj/machinery/porta_turret/ai{ + dir = 4 + }, +/obj/structure/sign/securearea{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/darkblue/corner, +/area/ai_monitored/turret_protected/aisat_interior) +"cve" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/machinery/turretid{ + control_area = "AI Satellite Hallway"; + enabled = 1; + icon_state = "control_standby"; + name = "Chamber Hallway Turret Control"; + pixel_x = 32; + pixel_y = -24; + req_access_txt = "65" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/aisat_interior) +"cvf" = ( +/obj/machinery/status_display, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai) +"cvg" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/mob/living/simple_animal/bot/cleanbot, +/turf/open/floor/plasteel/darkblue/corner{ + dir = 8 + }, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cvh" = ( +/obj/machinery/porta_turret/ai{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cvi" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFP{ + name = "AI Satellite Service" + }) +"cvj" = ( +/turf/closed/wall, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvk" = ( +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvl" = ( +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cvm" = ( +/obj/machinery/door/airlock/maintenance_hatch{ + name = "MiniSat Maintenance"; + req_access_txt = "65" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvo" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Chamber Hallway"; + req_one_access_txt = "65" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvp" = ( +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cvq" = ( +/obj/machinery/door/airlock/maintenance_hatch{ + name = "MiniSat Maintenance"; + req_access_txt = "65" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvr" = ( +/obj/machinery/porta_turret/ai{ + dir = 4 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cvs" = ( +/obj/machinery/portable_atmospherics/scrubber, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvt" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvu" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvv" = ( +/turf/closed/wall, +/area/ai_monitored/turret_protected/ai) +"cvw" = ( +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvx" = ( +/obj/effect/landmark{ + name = "tripai" + }, +/obj/item/device/radio/intercom{ + anyai = 1; + freerange = 1; + listening = 0; + name = "Custom Channel"; + pixel_x = 0; + pixel_y = 28 + }, +/obj/item/device/radio/intercom{ + broadcasting = 0; + freerange = 1; + listening = 1; + name = "Common Channel"; + pixel_x = -27; + pixel_y = 5 + }, +/obj/item/device/radio/intercom{ + anyai = 1; + broadcasting = 0; + freerange = 1; + frequency = 1447; + name = "Private Channel"; + pixel_x = 0; + pixel_y = -25 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cvy" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvz" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvA" = ( +/obj/effect/landmark{ + name = "tripai" + }, +/obj/item/device/radio/intercom{ + anyai = 1; + freerange = 1; + listening = 0; + name = "Custom Channel"; + pixel_x = 0; + pixel_y = 28 + }, +/obj/item/device/radio/intercom{ + broadcasting = 0; + freerange = 1; + listening = 1; + name = "Common Channel"; + pixel_x = 27; + pixel_y = 5 + }, +/obj/item/device/radio/intercom{ + anyai = 1; + broadcasting = 0; + freerange = 1; + frequency = 1447; + name = "Private Channel"; + pixel_x = 0; + pixel_y = -25 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cvB" = ( +/obj/structure/rack, +/obj/item/weapon/crowbar/red, +/obj/item/weapon/wrench, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvC" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvD" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvE" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvF" = ( +/obj/structure/lattice, +/obj/machinery/camera{ + c_tag = "MiniSat External NorthWest"; + dir = 8; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/turf/open/space, +/area/space) +"cvG" = ( +/obj/machinery/porta_turret/ai{ + dir = 4; + installation = /obj/item/weapon/gun/energy/e_gun + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvH" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvI" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvJ" = ( +/obj/machinery/porta_turret/ai{ + dir = 4; + installation = /obj/item/weapon/gun/energy/e_gun + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvK" = ( +/obj/structure/lattice, +/obj/machinery/camera{ + c_tag = "MiniSat External NorthEast"; + dir = 4; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/turf/open/space, +/area/space) +"cvL" = ( +/obj/structure/sign/securearea{ + pixel_x = 32; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvM" = ( +/obj/machinery/camera/motion{ + c_tag = "MiniSat Core Hallway"; + dir = 4; + network = list("MiniSat") + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvN" = ( +/obj/structure/sign/securearea{ + pixel_x = -32; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvO" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cvP" = ( +/obj/machinery/door/airlock/maintenance_hatch{ + name = "MiniSat Maintenance"; + req_access_txt = "65" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvR" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvU" = ( +/obj/machinery/door/airlock/maintenance_hatch{ + name = "MiniSat Maintenance"; + req_access_txt = "65" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvV" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvW" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvX" = ( +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvY" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cvZ" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23; + pixel_y = 0 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cwa" = ( +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 4; + name = "MiniSat Chamber Hallway APC"; + pixel_x = 27; + pixel_y = 0 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cwb" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cwc" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cwd" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/item/device/radio/intercom{ + broadcasting = 1; + frequency = 1447; + listening = 0; + name = "Station Intercom (AI Private)"; + pixel_x = -28; + pixel_y = -29 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cwe" = ( +/obj/structure/sign/securearea, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/closed/wall/r_wall, +/area/ai_monitored/turret_protected/ai) +"cwf" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Chamber Observation"; + req_one_access_txt = "65" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwg" = ( +/obj/machinery/airalarm{ + frequency = 1439; + pixel_y = 23 + }, +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwh" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/weapon/pen{ + pixel_x = 4; + pixel_y = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwi" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwj" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwk" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwl" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwm" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/white, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwo" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwp" = ( +/obj/structure/chair/office/dark, +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwq" = ( +/obj/structure/grille, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cwr" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/ai) +"cws" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/ai) +"cwt" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_command{ + name = "AI Core"; + req_access_txt = "65" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwu" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/ai_slipper{ + uses = 10 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwv" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/obj/machinery/status_display{ + pixel_x = -32 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cww" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwx" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwy" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table_frame, +/obj/item/weapon/wirerod, +/obj/effect/spawner/lootdrop/maintenance, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cwz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9; + pixel_y = 0 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwB" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/obj/machinery/ai_status_display{ + pixel_x = 32 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cwC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cwD" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/turretid{ + name = "AI Chamber turret control"; + pixel_x = 5; + pixel_y = -24 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cwE" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + cell_type = 5000; + dir = 2; + name = "AI Chamber APC"; + pixel_y = -24 + }, +/obj/machinery/flasher{ + id = "AI"; + pixel_x = -11; + pixel_y = -24 + }, +/obj/machinery/camera/motion{ + c_tag = "MiniSat AI Chamber North"; + dir = 1; + network = list("MiniSat") + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cwF" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cwG" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/weapon/crowbar, +/obj/item/weapon/storage/firstaid/fire, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cwH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint2) +"cwI" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"cwJ" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cwK" = ( +/obj/machinery/computer/atmos_alert, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cwL" = ( +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cwM" = ( +/obj/structure/rack, +/obj/item/weapon/storage/box/teargas{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/handcuffs, +/obj/item/weapon/storage/box/flashbangs{ + pixel_x = 3; + pixel_y = -3 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/ai_monitored/security/armory) +"cwN" = ( +/obj/machinery/computer/security, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cwO" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 0; + pixel_y = -30 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cwP" = ( +/obj/machinery/computer/crew, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cwQ" = ( +/obj/machinery/button/flasher{ + id = "cockpit_flasher"; + pixel_x = 6; + pixel_y = -24 + }, +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cwR" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_x = 0; + pixel_y = -29 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cwS" = ( +/obj/machinery/computer/communications, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cwT" = ( +/obj/machinery/camera{ + c_tag = "Arrivals Escape Pod 2"; + dir = 8 + }, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cwU" = ( +/obj/structure/shuttle/engine/propulsion/burst{ + dir = 4; + icon_state = "propulsion" + }, +/turf/closed/wall/mineral/titanium, +/area/shuttle/pod_1) +"cwV" = ( +/obj/docking_port/stationary/random{ + dir = 8; + id = "pod_asteroid1"; + name = "asteroid" + }, +/turf/open/space, +/area/space) +"cwW" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"cwX" = ( +/obj/machinery/door/airlock/glass{ + name = "Emergency Shuttle Cockpit"; + req_access_txt = "19" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cwY" = ( +/obj/structure/chair, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"cwZ" = ( +/obj/machinery/flasher{ + id = "cockpit_flasher"; + pixel_x = 6; + pixel_y = 24 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxa" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxb" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/weapon/crowbar, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxc" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxd" = ( +/obj/machinery/flasher{ + id = "shuttle_flasher"; + pixel_x = -24; + pixel_y = 6 + }, +/obj/machinery/button/flasher{ + id = "shuttle_flasher"; + pixel_x = -24; + pixel_y = -6 + }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"cxe" = ( +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"cxf" = ( +/obj/machinery/door/airlock/glass{ + name = "Emergency Shuttle Brig"; + req_access_txt = "2" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cxg" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"cxh" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"cxi" = ( +/obj/structure/chair, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxj" = ( +/obj/structure/table, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxk" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"cxl" = ( +/obj/machinery/computer/shuttle/pod{ + pixel_x = 0; + pixel_y = -32; + possible_destinations = "pod_asteroid1"; + shuttleId = "pod1" + }, +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_1) +"cxm" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/escape) +"cxn" = ( +/obj/structure/lattice, +/obj/effect/landmark{ + name = "carpspawn" + }, +/turf/open/space, +/area/space) +"cxo" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cxp" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cxq" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxr" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxs" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxt" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8; + icon_state = "propulsion_l" + }, +/turf/open/floor/plating, +/area/shuttle/transport) +"cxu" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/transport) +"cxv" = ( +/obj/structure/window/shuttle, +/obj/structure/grille, +/turf/open/floor/plating, +/area/shuttle/transport) +"cxw" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/transport) +"cxx" = ( +/obj/item/weapon/storage/pod{ + pixel_x = 6; + pixel_y = -28 + }, +/obj/item/device/radio/intercom{ + pixel_x = 0; + pixel_y = 25 + }, +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_1) +"cxy" = ( +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 8 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plating, +/area/shuttle/transport) +"cxz" = ( +/obj/machinery/computer/shuttle/ferry/request, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/transport) +"cxA" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) +"cxB" = ( +/obj/structure/chair, +/turf/open/floor/pod/dark, +/area/shuttle/transport) +"cxC" = ( +/turf/open/floor/pod/light, +/area/shuttle/transport) +"cxD" = ( +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/shuttle/transport) +"cxE" = ( +/obj/machinery/door/airlock/titanium, +/obj/docking_port/mobile{ + dir = 8; + dwidth = 2; + height = 13; + id = "ferry"; + name = "ferry shuttle"; + port_angle = 0; + preferred_direction = 4; + roundstart_move = "ferry_away"; + width = 5 + }, +/obj/docking_port/stationary{ + dir = 8; + dwidth = 2; + height = 13; + id = "ferry_home"; + name = "port bay 2"; + turf_type = /turf/open/space; + width = 5 + }, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"cxF" = ( +/obj/machinery/door/airlock/titanium{ + name = "Escape Pod Airlock" + }, +/obj/docking_port/mobile/pod{ + dir = 8; + id = "pod1"; + name = "escape pod 1"; + port_angle = 180 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_1) +"cxG" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Escape Pod Three"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/security/main) +"cxH" = ( +/obj/structure/closet/crate, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/transport) +"cxI" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/pod/dark, +/area/shuttle/transport) +"cxJ" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "Labor Camp Shuttle Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/plating, +/area/security/processing) +"cxK" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"cxL" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 0; + pixel_y = -30 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cxM" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Cargo" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cxN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Solar Maintenance"; + req_access = null; + req_access_txt = "10; 13" + }, +/turf/open/floor/plating, +/area/maintenance/auxsolarstarboard) +"cxO" = ( +/obj/machinery/door/airlock/glass{ + name = "Emergency Shuttle Infirmary" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cxP" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "Labor Camp Shuttle Airlock" + }, +/turf/open/floor/plating, +/area/security/processing) +"cxQ" = ( +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cxR" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cxS" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxT" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/weapon/crowbar, +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cxU" = ( +/obj/structure/closet, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cxV" = ( +/obj/structure/closet/crate, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cxW" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 2; + name = "External Access"; + req_access = null; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) +"cxX" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"cxY" = ( +/obj/machinery/camera{ + c_tag = "Arrivals Escape Pod 1"; + dir = 8 + }, +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cxZ" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"cya" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/fpmaint) +"cyb" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Escape Pod One" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cyc" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/abandoned) +"cyd" = ( +/obj/machinery/door/airlock/titanium, +/obj/docking_port/mobile{ + dheight = 0; + dir = 2; + dwidth = 11; + height = 22; + id = "whiteship"; + launch_status = 0; + name = "NT Medical Ship"; + port_angle = -90; + preferred_direction = 4; + roundstart_move = "whiteship_away"; + timid = null; + width = 35 + }, +/obj/docking_port/stationary{ + dir = 2; + dwidth = 11; + height = 22; + id = "whiteship_home"; + name = "SS13 Arrival Docking"; + turf_type = /turf/open/space; + width = 35 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cye" = ( +/obj/machinery/door/airlock/titanium, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyf" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8; + icon_state = "propulsion_l" + }, +/turf/open/floor/plating/airless, +/area/shuttle/abandoned) +"cyg" = ( +/obj/machinery/door/airlock/command{ + cyclelinkeddir = 1; + name = "Command Tool Storage"; + req_access = null; + req_access_txt = "19" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/storage/eva) +"cyh" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "Security Escape Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"cyi" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyj" = ( +/obj/structure/table, +/obj/item/weapon/screwdriver, +/obj/structure/light_construct{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyk" = ( +/obj/structure/table, +/obj/item/device/radio/off, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyl" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + id_tag = null; + name = "Port Docking Bay 2"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cym" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8; + icon_state = "propulsion" + }, +/turf/open/floor/plating/airless, +/area/shuttle/abandoned) +"cyn" = ( +/turf/open/floor/plating, +/turf/closed/wall/mineral/titanium/interior, +/area/shuttle/abandoned) +"cyo" = ( +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/shuttle/abandoned) +"cyp" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 4; + name = "Escape Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"cyq" = ( +/obj/machinery/computer/pod{ + id = "oldship_gun" + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyr" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "Cargo Escape Airlock" + }, +/turf/open/floor/plating, +/area/hallway/secondary/exit) +"cys" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/supply) +"cyt" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 4"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cyu" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 3"; + req_access_txt = "0" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cyv" = ( +/turf/open/floor/plating, +/area/shuttle/abandoned) +"cyw" = ( +/turf/open/floor/mineral/titanium, +/turf/closed/wall/mineral/titanium/interior, +/area/shuttle/abandoned) +"cyx" = ( +/obj/structure/rack, +/obj/item/clothing/suit/space/hardsuit/medical, +/obj/item/clothing/mask/breath, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyy" = ( +/obj/machinery/mass_driver{ + dir = 4; + icon_state = "mass_driver"; + id = "oldship_gun" + }, +/turf/open/floor/plating, +/area/shuttle/abandoned) +"cyz" = ( +/obj/machinery/door/airlock/glass, +/turf/open/floor/plating, +/area/shuttle/abandoned) +"cyA" = ( +/obj/machinery/door/poddoor{ + id = "oldship_gun"; + name = "pod bay door" + }, +/turf/open/floor/plating, +/area/shuttle/abandoned) +"cyB" = ( +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"cyC" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cyD" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "Supply Dock Airlock"; + req_access_txt = "31" + }, +/turf/open/floor/plating, +/area/quartermaster/storage) +"cyE" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "External Access"; + req_access = null; + req_access_txt = "13" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cyF" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8; + icon_state = "propulsion_r" + }, +/turf/open/floor/plating/airless, +/area/shuttle/abandoned) +"cyG" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "Atmospherics External Airlock"; + req_access_txt = "24" + }, +/turf/open/floor/plating, +/area/atmos) +"cyH" = ( +/obj/machinery/door/airlock/titanium, +/turf/open/floor/plating, +/area/shuttle/abandoned) +"cyI" = ( +/obj/item/weapon/stock_parts/cell{ + charge = 100; + maxcharge = 15000 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyJ" = ( +/obj/structure/rack, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/tank/internals/emergency_oxygen, +/obj/item/weapon/storage/toolbox/mechanical, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyK" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "Solar Maintenance"; + req_access = null; + req_access_txt = "10; 13" + }, +/turf/open/floor/plating, +/area/maintenance/portsolar) +"cyL" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cyM" = ( +/obj/machinery/door/airlock/engineering{ + cyclelinkeddir = 1; + name = "Engine Room"; + req_access_txt = "10" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cyN" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad2" + }, +/obj/machinery/door/poddoor{ + id = "QMLoaddoor2"; + name = "supply dock loading door" + }, +/turf/open/floor/plating, +/area/shuttle/supply) +"cyO" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyP" = ( +/obj/item/weapon/shard{ + icon_state = "medium" + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyQ" = ( +/obj/machinery/door/airlock/titanium{ + name = "Supply Shuttle Airlock"; + req_access_txt = "31" + }, +/turf/open/floor/plating, +/area/shuttle/supply) +"cyR" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/abandoned) +"cyS" = ( +/obj/machinery/button/door{ + dir = 2; + id = "QMLoaddoor2"; + name = "Loading Doors"; + pixel_x = 24; + pixel_y = 8 + }, +/obj/machinery/button/door{ + id = "QMLoaddoor"; + name = "Loading Doors"; + pixel_x = 24; + pixel_y = -8 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"cyT" = ( +/obj/machinery/door/airlock/titanium{ + name = "Supply Shuttle Airlock"; + req_access_txt = "31" + }, +/obj/docking_port/mobile/supply{ + dwidth = 5; + width = 12 + }, +/obj/docking_port/stationary{ + dir = 8; + dwidth = 5; + height = 7; + id = "supply_home"; + name = "Cargo Bay"; + width = 12 + }, +/turf/open/floor/plating, +/area/shuttle/supply) +"cyU" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Solar Maintenance"; + req_access = null; + req_access_txt = "10; 13" + }, +/turf/open/floor/plating, +/area/maintenance/starboardsolar) +"cyV" = ( +/obj/machinery/door/window, +/turf/open/floor/mineral/titanium/purple, +/area/shuttle/abandoned) +"cyW" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/purple, +/area/shuttle/abandoned) +"cyX" = ( +/obj/structure/table, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyY" = ( +/obj/structure/table, +/obj/item/weapon/gun/energy/laser/retro, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cyZ" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad" + }, +/obj/machinery/door/poddoor{ + id = "QMLoaddoor"; + name = "supply dock loading door" + }, +/turf/open/floor/plating, +/area/shuttle/supply) +"cza" = ( +/obj/machinery/door/airlock/glass, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czb" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/decal/remains/human, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czc" = ( +/obj/machinery/computer/shuttle/white_ship, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czd" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cze" = ( +/obj/structure/table, +/obj/item/weapon/tank/internals/oxygen, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czf" = ( +/turf/open/floor/mineral/titanium/blue, +/turf/closed/wall/mineral/titanium/interior, +/area/shuttle/supply) +"czg" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "Escape Pod Four"; + req_access = null; + req_access_txt = "0"; + shuttledocked = 1 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"czh" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Engineering External Access"; + req_access = null; + req_access_txt = "10;13" + }, +/obj/structure/fans/tiny, +/turf/open/floor/plating, +/area/engine/engineering) +"czi" = ( +/obj/machinery/door/airlock/titanium, +/turf/open/floor/plasteel/shuttle/white, +/area/shuttle/abandoned) +"czj" = ( +/obj/machinery/door/airlock/glass, +/turf/open/floor/plasteel/shuttle/white, +/area/shuttle/abandoned) +"czk" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 8; + name = "MiniSat External Access"; + req_access = null; + req_access_txt = "65;13" + }, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat_interior) +"czl" = ( +/obj/machinery/door/window/northright, +/obj/effect/decal/remains/human, +/turf/open/floor/mineral/titanium/purple, +/area/shuttle/abandoned) +"czm" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/purple, +/area/shuttle/abandoned) +"czn" = ( +/obj/structure/frame/computer{ + anchored = 1 + }, +/obj/structure/light_construct, +/turf/open/floor/plasteel/shuttle/white, +/area/shuttle/abandoned) +"czo" = ( +/turf/open/space, +/area/shuttle/syndicate) +"czp" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating/airless, +/area/shuttle/supply) +"czq" = ( +/obj/machinery/porta_turret/syndicate{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"czr" = ( +/obj/machinery/portable_atmospherics/scrubber, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czs" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_l" + }, +/turf/open/floor/plating/airless, +/area/shuttle/supply) +"czt" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/supply) +"czu" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_r" + }, +/turf/open/floor/plating/airless, +/area/shuttle/supply) +"czv" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 6 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"czw" = ( +/obj/item/device/multitool, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czx" = ( +/obj/structure/chair, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czy" = ( +/obj/structure/frame/computer{ + anchored = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czz" = ( +/turf/open/space, +/obj/machinery/porta_turret/syndicate{ + dir = 10 + }, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/syndicate) +"czA" = ( +/obj/item/weapon/scalpel, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czB" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 6; + pixel_y = -5 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czC" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 8 + }, +/obj/effect/decal/remains/human, +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"czD" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"czE" = ( +/turf/open/floor/engine, +/area/engine/engineering) +"czF" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"czG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"czH" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"czI" = ( +/obj/item/weapon/wrench, +/obj/structure/lattice/catwalk, +/turf/open/space, +/area/space/nearstation) +"czJ" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/maintenance/incinerator) +"czK" = ( +/turf/closed/wall, +/area/security/vacantoffice) +"czL" = ( +/obj/machinery/computer/shuttle/pod{ + pixel_y = -32; + possible_destinations = "pod_asteroid4"; + shuttleId = "pod4" + }, +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/status_display{ + density = 0; + layer = 3; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_4) +"czM" = ( +/obj/item/device/radio/intercom{ + pixel_y = 25 + }, +/obj/item/weapon/storage/pod{ + pixel_x = 6; + pixel_y = -32 + }, +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/pod_4) +"czN" = ( +/obj/docking_port/stationary/random{ + dir = 4; + id = "pod_asteroid4"; + name = "asteroid" + }, +/turf/open/space, +/area/space) +"czO" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"czP" = ( +/obj/structure/chair/stool/bar, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/bar, +/area/crew_quarters/bar) +"czQ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"czR" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"czS" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/plating{ + icon_state = "platingdmg3" + }, +/area/maintenance/asmaint2) +"czT" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"czU" = ( +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"czV" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"czW" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"czX" = ( +/obj/machinery/door/airlock/maintenance{ + req_access_txt = "12" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"czY" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"czZ" = ( +/obj/structure/chair, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAa" = ( +/obj/structure/chair, +/obj/item/weapon/storage/fancy/cigarettes, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAb" = ( +/obj/structure/closet, +/obj/structure/disposalpipe/segment{ + dir = 2; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cAc" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/maintenance/aft) +"cAd" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cAe" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cAf" = ( +/obj/structure/disposaloutlet, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/space) +"cAg" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"cAh" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAi" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAj" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/turf/closed/wall/r_wall, +/area/engine/engine_smes) +"cAk" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 4; + icon_state = "2-4"; + + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"cAl" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/structure/cable/yellow{ + icon_state = "1-4"; + d1 = 1; + d2 = 4 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cAm" = ( +/obj/machinery/power/supermatter_shard/crystal, +/turf/open/floor/engine, +/area/engine/engineering) +"cAn" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8"; + + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"cAo" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cAp" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "Cooling Loop to Gas"; + on = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cAq" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4; + initialize_directions = 11 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cAr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "Gas to Mix"; + on = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cAs" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) +"cAt" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cAu" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/emitter{ + anchored = 1; + dir = 4; + icon_state = "emitter"; + state = 2; + + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cAv" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4"; + + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"cAw" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8"; + + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"cAx" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8"; + + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"cAy" = ( +/obj/structure/closet/secure_closet/freezer/kitchen/maintenance, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAz" = ( +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/chapel/office) +"cAA" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAB" = ( +/obj/structure/table, +/obj/machinery/microwave, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAC" = ( +/obj/structure/sink/kitchen{ + dir = 8; + pixel_x = 11 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAD" = ( +/obj/structure/table, +/obj/item/weapon/kitchen/knife, +/obj/item/weapon/storage/box/donkpockets, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAE" = ( +/obj/structure/table/glass, +/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ + pixel_y = 2 + }, +/obj/item/weapon/reagent_containers/food/condiment/peppermill{ + pixel_x = 2 + }, +/obj/item/weapon/reagent_containers/food/snacks/mint{ + pixel_y = 9 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAF" = ( +/turf/open/floor/plating, +/area/maintenance/disposal) +"cAG" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0 + }, +/obj/machinery/power/apc{ + dir = 2; + name = "Head of Personnel APC"; + pixel_y = -24 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/crew_quarters/heads) +"cAH" = ( +/obj/machinery/processor, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAI" = ( +/obj/machinery/conveyor_switch/oneway{ + convdir = -1; + id = "garbage"; + name = "disposal coveyor" + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"cAJ" = ( +/obj/structure/closet, +/turf/open/floor/plating, +/area/maintenance/disposal) +"cAK" = ( +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/mob/living/simple_animal/hostile/lizard{ + name = "Wags-His-Tail"; + real_name = "Wags-His-Tail" + }, +/turf/open/floor/plasteel, +/area/janitor) +"cAM" = ( +/obj/structure/table/wood, +/obj/structure/disposalpipe/segment, +/obj/item/toy/cards/deck/cas, +/obj/item/toy/cards/deck/cas/black{ + pixel_x = -2; + pixel_y = 6 + }, +/turf/open/floor/wood, +/area/library) +"cAN" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Security Maintenance"; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plating, +/area/security/main) +"cAO" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cAP" = ( +/obj/structure/sign/fire, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cAQ" = ( +/obj/structure/chair, +/turf/open/floor/plating, +/area/maintenance/aft) +"cAR" = ( +/obj/machinery/door/window{ + dir = 1; + name = "AI Core Door"; + req_access_txt = "16" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cAS" = ( +/obj/effect/landmark/start{ + name = "AI" + }, +/obj/item/device/radio/intercom{ + broadcasting = 0; + freerange = 1; + listening = 1; + name = "Common Channel"; + pixel_x = -27; + pixel_y = -9 + }, +/obj/item/device/radio/intercom{ + anyai = 1; + freerange = 1; + listening = 0; + name = "Custom Channel"; + pixel_x = 0; + pixel_y = -31 + }, +/obj/item/device/radio/intercom{ + anyai = 1; + broadcasting = 0; + freerange = 1; + frequency = 1447; + name = "Private Channel"; + pixel_x = 27; + pixel_y = -9 + }, +/obj/machinery/newscaster/security_unit{ + pixel_x = -28; + pixel_y = -28 + }, +/obj/machinery/requests_console{ + department = "AI"; + departmentType = 5; + pixel_x = 28; + pixel_y = -28 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cAT" = ( +/obj/machinery/ai_slipper{ + uses = 10 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cAU" = ( +/obj/structure/lattice, +/obj/machinery/camera{ + c_tag = "MiniSat External SouthWest"; + dir = 8; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/turf/open/space, +/area/space) +"cAV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/showcase{ + density = 0; + desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; + dir = 8; + icon = 'icons/mob/robots.dmi'; + icon_state = "robot_old"; + name = "Cyborg Statue"; + pixel_x = 9; + pixel_y = 2 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cAW" = ( +/obj/structure/showcase{ + density = 0; + desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; + dir = 4; + icon = 'icons/mob/robots.dmi'; + icon_state = "robot_old"; + name = "Cyborg Statue"; + pixel_x = -9; + pixel_y = 2 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cAX" = ( +/obj/structure/lattice, +/obj/machinery/camera{ + c_tag = "MiniSat External SouthEast"; + dir = 4; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/turf/open/space, +/area/space) +"cAY" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/closed/wall, +/area/ai_monitored/turret_protected/ai) +"cAZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cBa" = ( +/obj/machinery/power/smes{ + charge = 5e+006 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cBb" = ( +/obj/machinery/camera/motion{ + c_tag = "MiniSat AI Chamber South"; + dir = 2; + network = list("MiniSat") + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cBc" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/machinery/ai_slipper{ + uses = 10 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"cBd" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -24 + }, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cBe" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/machinery/holopad, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai) +"cBf" = ( +/obj/machinery/camera{ + c_tag = "MiniSat External South"; + dir = 2; + network = list("MiniSat"); + pixel_x = 0; + pixel_y = 0; + start_active = 1 + }, +/turf/open/space, +/area/space) +"cBg" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/hydroponics) +"cBh" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/barber, +/area/crew_quarters/locker) +"cBi" = ( +/obj/effect/landmark/event_spawn, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/floorgrime, +/area/quartermaster/storage) +"cBj" = ( +/obj/structure/table, +/obj/item/weapon/folder/blue, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/ai_upload) +"cBk" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"cBl" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) +"cBm" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/hallway/primary/starboard) +"cBn" = ( +/obj/machinery/camera{ + c_tag = "Locker Room Toilets"; + dir = 8; + network = list("SS13") + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/freezer, +/area/crew_quarters/locker/locker_toilet) +"cBo" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood, +/area/crew_quarters/captain) +"cBp" = ( +/obj/effect/landmark/event_spawn, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"cBq" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/quartermaster/office) +"cBr" = ( +/obj/effect/landmark/event_spawn, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"cBs" = ( +/obj/structure/table/optable{ + name = "Robotics Operating Table" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"cBt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/white, +/area/toxins/explab) +"cBu" = ( +/obj/machinery/ai_status_display{ + pixel_y = 32 + }, +/obj/effect/landmark/event_spawn, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/crew_quarters/hor) +"cBv" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/security/checkpoint/supply) +"cBw" = ( +/obj/machinery/door/firedoor, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"cBx" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/white, +/area/medical/research{ + name = "Research Division" + }) +"cBy" = ( +/obj/machinery/door/airlock{ + name = "Custodial Closet"; + req_access_txt = "26" + }, +/obj/structure/disposalpipe/segment, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/janitor) +"cBz" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/engine, +/area/toxins/xenobiology) +"cBA" = ( +/obj/machinery/button/massdriver{ + dir = 2; + id = "toxinsdriver"; + pixel_y = 24 + }, +/obj/effect/landmark/event_spawn, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/toxins/mixing) +"cBB" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) +"cBC" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/storage/tech) +"cBD" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cBE" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/engine/vacuum, +/area/toxins/mixing) +"cBF" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + dir = 8 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/atmos) +"cBG" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/white, +/area/toxins/xenobiology) +"cBH" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/hallway/primary/aft) +"cBI" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/security/checkpoint/engineering) +"cBJ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 9 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/atmos) +"cBK" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_y = -35 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/tcommsat/computer) +"cBL" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cBM" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/paper/monitorkey, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/neutral{ + dir = 2 + }, +/area/engine/chiefs_office) +"cBN" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/maintenance/aft) +"cBO" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cBP" = ( +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/landmark/event_spawn, +/turf/open/floor/engine/air, +/area/atmos) +"cBQ" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/engine/engineering) +"cBR" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/engine, +/area/engine/engineering) +"cBS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plasteel/black, +/area/ai_monitored/turret_protected/AIsatextFS{ + name = "AI Satellite Hallway" + }) +"cBT" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cBU" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/maintenance/asmaint2) +"cBV" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/security{ + name = "Security Office"; + req_access = null; + req_access_txt = "1" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/security/main) +"cBW" = ( +/obj/docking_port/stationary{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate_southmaint"; + name = "south maintenance airlock"; + turf_type = /turf/open/space; + width = 18 + }, +/turf/open/space, +/area/space) +"cBX" = ( +/obj/docking_port/stationary{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate_se"; + name = "southeast of station"; + turf_type = /turf/open/space; + width = 18 + }, +/turf/open/space, +/area/space) +"cBY" = ( +/obj/docking_port/stationary{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate_s"; + name = "south of station"; + turf_type = /turf/open/space; + width = 18 + }, +/turf/open/space, +/area/space) +"cBZ" = ( +/obj/structure/table/wood, +/obj/item/clothing/under/burial, +/obj/item/clothing/under/burial, +/obj/item/clothing/under/burial, +/obj/item/clothing/under/burial, +/obj/item/clothing/under/burial, +/obj/item/clothing/under/burial, +/turf/open/floor/plasteel/grimy, +/area/chapel/office) +"cCa" = ( +/obj/item/clothing/head/hardhat, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"cCb" = ( +/obj/structure/table, +/obj/item/stack/cable_coil{ + amount = 5 + }, +/obj/item/device/flashlight, +/turf/open/floor/plating, +/area/construction) +"cCc" = ( +/obj/structure/rack{ + dir = 1 + }, +/obj/item/clothing/suit/hazardvest, +/turf/open/floor/plating, +/area/construction) +"cCd" = ( +/turf/open/floor/plasteel, +/area/construction) +"cCe" = ( +/obj/structure/closet/crate, +/turf/open/floor/plating, +/area/construction) +"cCf" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/turf/open/floor/plating, +/area/construction) +"cCg" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/maintenance/aft) +"cCh" = ( +/obj/item/weapon/bedsheet/red, +/mob/living/simple_animal/bot/secbot/beepsky{ + name = "Officer Beepsky" + }, +/turf/open/floor/plating, +/area/security/processing) +"cCi" = ( +/turf/closed/wall, +/area/security/vacantoffice2) +"cCj" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/security/detectives_office) +"cCk" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/security/detectives_office) +"cCl" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"cCm" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"cCn" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/power/apc{ + dir = 4; + name = "Detective's Office APC"; + pixel_x = 24; + pixel_y = 0 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/maintenance/port) +"cCo" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/quartermaster/storage) +"cCp" = ( +/obj/structure/closet/crate/freezer, +/obj/item/weapon/reagent_containers/blood/empty, +/obj/item/weapon/reagent_containers/blood/empty, +/obj/item/weapon/reagent_containers/blood/AMinus, +/obj/item/weapon/reagent_containers/blood/BMinus{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/weapon/reagent_containers/blood/BPlus{ + pixel_x = 1; + pixel_y = 2 + }, +/obj/item/weapon/reagent_containers/blood/OMinus, +/obj/item/weapon/reagent_containers/blood/OPlus{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/weapon/reagent_containers/blood/random, +/obj/item/weapon/reagent_containers/blood/random, +/obj/item/weapon/reagent_containers/blood/APlus, +/obj/item/weapon/reagent_containers/blood/random, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"cCq" = ( +/obj/machinery/deepfryer, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"cCr" = ( +/obj/machinery/deepfryer, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/kitchen) +"cCs" = ( +/obj/structure/mining_shuttle_beacon{ + dir = 4 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"cCt" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/docking_port/stationary/public_mining_dock{ + dir = 8 + }, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) +"cCu" = ( +/obj/machinery/door/airlock/external, +/turf/open/floor/pod/dark, +/area/shuttle/transport) +"cCv" = ( +/turf/open/floor/pod/light, +/area/space) +"cCw" = ( +/obj/machinery/door/airlock/titanium, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"cCx" = ( +/obj/machinery/computer/shuttle/ferry/request, +/turf/open/floor/pod/dark, +/area/shuttle/transport) +"cCy" = ( +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 1 + }, +/turf/open/floor/plating, +/area/shuttle/transport) +"cCz" = ( +/obj/machinery/door/airlock/external, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"cCA" = ( +/turf/open/floor/pod/light, +/area/space) +"cCB" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10; + pixel_x = 0; + initialize_directions = 10 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cCC" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cCD" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "Mix to Engine"; + on = 0 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cCE" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/atmos) +"cCF" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/atmos) +"cCG" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 10 + }, +/turf/open/space, +/area/space/nearstation) +"cCH" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCI" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCJ" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCK" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCL" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCM" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCN" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCO" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCP" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 5 + }, +/turf/open/space, +/area/space/nearstation) +"cCQ" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/space, +/area/space/nearstation) +"cCR" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 10 + }, +/turf/open/space, +/area/space/nearstation) +"cCS" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/structure/lattice, +/turf/open/space, +/area/space/nearstation) +"cCT" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/closet/firecloset, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cCU" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/structure/lattice, +/turf/open/space, +/area/space/nearstation) +"cCV" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCW" = ( +/obj/machinery/portable_atmospherics/canister/freon, +/turf/open/floor/plating, +/area/engine/engineering) +"cCX" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cCY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/landmark/start{ + name = "Station Engineer" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cCZ" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cDa" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cDb" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cDc" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cDd" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cDe" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/closet/radiation, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDf" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cDg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDh" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/table/reinforced, +/obj/item/weapon/storage/toolbox/mechanical, +/obj/item/device/flashlight, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/item/weapon/pipe_dispenser, +/turf/open/floor/engine, +/area/engine/engineering) +"cDi" = ( +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/table/reinforced, +/obj/item/clothing/suit/radiation, +/obj/item/clothing/head/radiation, +/obj/item/clothing/glasses/meson, +/obj/item/clothing/glasses/meson, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDj" = ( +/obj/structure/cable/yellow{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + icon_state = "intact"; + dir = 4 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cDl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/vending/tool, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDm" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/vending/engivend, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDn" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cDo" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDp" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDq" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDr" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 4; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDs" = ( +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDu" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cDv" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/components/trinary/filter/flipped{ + icon_state = "filter_off_f"; + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDw" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDx" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Atmos to Loop"; + on = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDy" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDz" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDA" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) +"cDB" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/landmark/start{ + name = "Station Engineer" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDC" = ( +/obj/item/weapon/wrench, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 6 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cDD" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + name = "scrubbers pipe"; + icon_state = "manifold"; + dir = 4 + }, +/obj/machinery/meter, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cDE" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "External Gas to Loop" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cDF" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "External Gas to Loop" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cDG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cDH" = ( +/obj/structure/rack{ + dir = 8; + layer = 2.9 + }, +/obj/item/clothing/mask/gas{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas{ + pixel_x = -3; + pixel_y = -3 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDI" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDJ" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cDL" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cDM" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cDN" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/closed/wall, +/area/engine/engineering) +"cDO" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/closed/wall, +/area/engine/engineering) +"cDP" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/closed/wall, +/area/engine/engineering) +"cDQ" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/closed/wall, +/area/engine/engineering) +"cDR" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cDS" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cDT" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cDU" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cDV" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cDW" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/space, +/area/space/nearstation) +"cDX" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/space, +/area/space/nearstation) +"cDY" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/turf/open/space, +/area/space/nearstation) +"cDZ" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/closet/radiation, +/turf/open/floor/plasteel, +/area/engine/engineering) +"cEa" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cEb" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cEc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEd" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "Engineering Supermatter West"; + dir = 4; + network = list("SS13") + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEe" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEf" = ( +/obj/machinery/ai_status_display, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cEg" = ( +/obj/machinery/status_display, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cEh" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEi" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Engineering Supermatter East"; + dir = 8; + network = list("SS13"); + pixel_x = 0; + pixel_y = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEj" = ( +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cEk" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cEl" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cEm" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cEn" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cEo" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cEp" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cEq" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cEr" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEs" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Gas to Cooling Loop"; + on = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEt" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cEu" = ( +/obj/machinery/power/rad_collector{ + anchored = 1 + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEv" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cEw" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEx" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEy" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + icon_state = "manifold"; + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cEz" = ( +/obj/machinery/power/rad_collector{ + anchored = 1 + }, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEA" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cEB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) +"cEC" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Mix to Gas"; + on = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cED" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEE" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 5 + }, +/turf/open/space, +/area/space) +"cEF" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cEG" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cEH" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cEI" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cEJ" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space, +/area/space) +"cEK" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cEL" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEM" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/item/weapon/tank/internals/plasma, +/turf/open/floor/plating, +/area/engine/engineering) +"cEN" = ( +/obj/machinery/power/rad_collector{ + anchored = 1 + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEO" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cEP" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cEQ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cER" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + icon_state = "manifold"; + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cES" = ( +/obj/machinery/power/rad_collector{ + anchored = 1 + }, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cET" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cEU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/engine, +/area/engine/engineering) +"cEV" = ( +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cEW" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + icon_state = "connector_map"; + dir = 8 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cEX" = ( +/turf/closed/wall/r_wall, +/area/space) +"cEY" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cEZ" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cFa" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cFb" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4"; + d1 = 1; + d2 = 4 + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + icon_state = "pump_map"; + name = "Cooling Loop Bypass" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFd" = ( +/obj/machinery/power/rad_collector{ + anchored = 1 + }, +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFe" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cFf" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 8; + on = 1; + scrub_Toxins = 0 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFg" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFh" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cFi" = ( +/obj/machinery/power/rad_collector{ + anchored = 1 + }, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFj" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm"; + name = "Radiation Chamber Shutters" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cFk" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable/yellow{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Mix Bypass" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFl" = ( +/turf/closed/wall/r_wall, +/area/space) +"cFm" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cFn" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/turf/open/space, +/area/space) +"cFo" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 10 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cFp" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/turf/open/space, +/area/space) +"cFq" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 10 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cFr" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/turf/open/space, +/area/space) +"cFs" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 10 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cFt" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/turf/open/space, +/area/space) +"cFu" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) +"cFv" = ( +/obj/machinery/status_display, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cFw" = ( +/obj/structure/sign/electricshock, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cFx" = ( +/obj/machinery/ai_status_display, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cFy" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFz" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cFA" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cFB" = ( +/turf/closed/wall/r_wall, +/area/space) +"cFC" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cFD" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cFE" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cFF" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cFG" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cFH" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cFI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFJ" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFK" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFL" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 4; + filter_type = "co2"; + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFM" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFN" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 4; + filter_type = "o2"; + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFO" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Engineering Supermatter Center"; + dir = 2; + pixel_x = 23 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cFP" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 4; + filter_type = "plasma"; + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFQ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFR" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 4; + filter_type = ""; + on = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFS" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFT" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cFU" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cFV" = ( +/turf/closed/wall/r_wall, +/area/space) +"cFW" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cFX" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cFY" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cFZ" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cGa" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cGb" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space, +/area/space) +"cGc" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cGd" = ( +/obj/structure/closet/crate/bin, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cGe" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cGf" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/engine, +/area/engine/engineering) +"cGg" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cGh" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/engine, +/area/engine/engineering) +"cGi" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/engine, +/area/engine/engineering) +"cGj" = ( +/obj/structure/table, +/obj/item/weapon/pipe_dispenser, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cGk" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cGl" = ( +/obj/structure/closet/secure_closet/engineering_personal, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cGm" = ( +/turf/closed/wall/r_wall, +/area/space) +"cGn" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cGo" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cGp" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cGq" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cGr" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cGs" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cGt" = ( +/obj/structure/closet/wardrobe/engineering_yellow, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cGu" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/engine/engineering) +"cGv" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/engine/engineering) +"cGw" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/engine/engineering) +"cGx" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/engine/engineering) +"cGy" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/engine/engineering) +"cGz" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/engine/engineering) +"cGA" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/engine/engineering) +"cGB" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/engine/engineering) +"cGC" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) +"cGD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plating, +/area/engine/engineering) +"cGE" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cGF" = ( +/turf/closed/wall/r_wall, +/area/space) +"cGG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cGH" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cGI" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_engineering{ + name = "Laser Room"; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cGJ" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_engineering{ + name = "Laser Room"; + req_access_txt = "10" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/engine, +/area/engine/engineering) +"cGK" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cGL" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cGM" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"cGN" = ( +/turf/closed/wall/r_wall, +/area/space) +"cGO" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 5 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cGP" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 5 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cGQ" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 5 + }, +/obj/structure/lattice, +/turf/open/space, +/area/space) +"cGR" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1; + scrub_N2O = 0; + scrub_Toxins = 0 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cGS" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cGT" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cGU" = ( +/obj/structure/reflector/double{ + anchored = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cGV" = ( +/obj/structure/reflector/box{ + anchored = 1; + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cGW" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cGX" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cGY" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cGZ" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/engine/engineering) +"cHa" = ( +/obj/machinery/airalarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cHb" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHc" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHd" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHe" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHf" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cHg" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHh" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/emitter{ + anchored = 1; + dir = 4; + icon_state = "emitter"; + state = 2 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHi" = ( +/obj/structure/reflector/box{ + anchored = 1; + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/engine/engineering) +"cHj" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/obj/machinery/power/emitter{ + anchored = 1; + dir = 8; + icon_state = "emitter"; + state = 2 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHk" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHl" = ( +/obj/effect/decal/cleanable/dirt, +/turf/closed/wall/r_wall, +/area/engine/engineering) +"cHm" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHn" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/obj/machinery/light, +/turf/open/floor/plating, +/area/engine/engineering) +"cHo" = ( +/obj/structure/reflector/single{ + anchored = 1; + dir = 1; + icon_state = "reflector" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHp" = ( +/obj/structure/reflector/single{ + anchored = 1; + dir = 4; + icon_state = "reflector" + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHq" = ( +/obj/structure/cable{ + icon_state = "0-4"; + d2 = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"cHr" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/machinery/light, +/turf/open/floor/plating, +/area/engine/engineering) +"cHs" = ( +/obj/item/weapon/crowbar/large, +/turf/open/floor/plating, +/area/engine/engineering) +"cHt" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHu" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHv" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHw" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHx" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHy" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHz" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHA" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHB" = ( +/turf/closed/wall/r_wall, +/area/space) +"cHC" = ( +/obj/structure/chair/stool{ + desc = "Apply butt, tactically."; + name = "tactical stool"; + pixel_y = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate) +"cHD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/sortjunction{ + dir = 2; + icon_state = "pipe-j2s"; + sortType = 14 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/asmaint) +"cHE" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Mech Bay Maintenance"; + req_access_txt = "29" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 8 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/assembly/chargebay) +"cHF" = ( +/obj/machinery/button/door{ + dir = 2; + id = "Skynet_launch"; + name = "Mech Bay Door Control"; + pixel_x = 6; + pixel_y = 24 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"cHG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"cHH" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 2; + d2 = 8; + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"cHI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"cHJ" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"cHK" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/glass_research{ + name = "Robotics Lab"; + req_access_txt = "29" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_y = 0 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"cHL" = ( +/obj/machinery/mech_bay_recharge_port{ + icon_state = "recharge_port"; + dir = 2 + }, +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/assembly/chargebay) +"cHM" = ( +/obj/structure/chair/office/light{ + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"cHN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/open/floor/circuit, +/area/assembly/chargebay) +"cHO" = ( +/obj/machinery/conveyor_switch/oneway{ + id = "robo1" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"cHP" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/table, +/obj/item/weapon/storage/belt/utility, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/glass{ + amount = 20; + pixel_x = -3; + pixel_y = 6 + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"cHQ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber{ + dir = 1; + on = 1 + }, +/turf/open/floor/plasteel, +/area/assembly/chargebay) +"cHR" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "robo1" + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"cHS" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"cHT" = ( +/obj/machinery/holopad, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"cHU" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 8 + }, +/area/assembly/robotics) +"cHV" = ( +/obj/machinery/conveyor_switch/oneway{ + id = "robo2" + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"cHW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/mecha_part_fabricator, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"cHX" = ( +/obj/structure/table, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -1 + }, +/obj/item/clothing/head/welding{ + pixel_x = -3; + pixel_y = 5 + }, +/obj/item/clothing/glasses/welding, +/obj/item/device/multitool{ + pixel_x = 3 + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"cHY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"cHZ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 8 + }, +/area/assembly/robotics) +"cIa" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/assembly/robotics) +"cIb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/machinery/conveyor{ + dir = 4; + id = "robo2" + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"cIc" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/bot, +/obj/effect/landmark/start{ + name = "Roboticist" + }, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"cId" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/assembly/robotics) +"cIe" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/assembly/robotics) +"cIf" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/whiteblue/corner{ + dir = 1 + }, +/area/assembly/robotics) +"cIg" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 4; + icon_state = "propulsion" + }, +/obj/docking_port/mobile/arrivals, +/obj/docking_port/stationary{ + dir = 8; + dwidth = 3; + height = 15; + id = "arrivals_stationary"; + name = "arrivals"; + width = 7 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/arrival) +"cIh" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 1" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cIi" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 1" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cIj" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 1" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cIk" = ( +/obj/machinery/door/airlock/external{ + cyclelinkeddir = 1; + name = "Port Docking Bay 1" + }, +/turf/open/floor/plating, +/area/hallway/secondary/entry) +"cIl" = ( +/obj/machinery/computer/med_data{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIm" = ( +/obj/machinery/computer/crew{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIn" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIo" = ( +/obj/machinery/computer/shuttle/syndicate, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIp" = ( +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIq" = ( +/obj/machinery/computer/camera_advanced{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIr" = ( +/obj/machinery/computer/secure_data{ + icon_keyboard = "syndi_key" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIs" = ( +/obj/structure/table/reinforced, +/obj/machinery/status_display{ + pixel_x = -32 + }, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/syndie, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIt" = ( +/obj/structure/chair/office/dark{ + dir = 8; + name = "tactical swivel chair" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cIu" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cIv" = ( +/obj/structure/chair/office/dark{ + dir = 1; + name = "tactical swivel chair" + }, +/obj/machinery/button/door{ + id = "syndieshutters"; + name = "Cockpit View Control"; + pixel_x = 32; + pixel_y = 32; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cIw" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cIx" = ( +/obj/structure/chair/office/dark{ + dir = 4; + name = "tactical swivel chair" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cIy" = ( +/obj/structure/table/reinforced, +/obj/machinery/ai_status_display{ + pixel_x = 32 + }, +/obj/item/weapon/storage/fancy/donut_box, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIz" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cIA" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cIB" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cIC" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cID" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cIE" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cIF" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cIG" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"cIH" = ( +/obj/machinery/door/airlock/hatch{ + name = "Cockpit"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cII" = ( +/obj/structure/table/reinforced, +/obj/item/stack/cable_coil/white, +/obj/item/stack/cable_coil/white, +/obj/item/weapon/crowbar/red, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIJ" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIK" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/handcuffs{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/zipties, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIL" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIM" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cIN" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIO" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIP" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cIQ" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIR" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIS" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIT" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIU" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cIV" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIW" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cIX" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cIY" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"cIZ" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJa" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJb" = ( +/obj/structure/tank_dispenser/oxygen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJc" = ( +/obj/structure/chair{ + dir = 4; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJd" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJe" = ( +/obj/structure/chair{ + dir = 8; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJf" = ( +/obj/machinery/door/poddoor{ + id = "smindicate"; + name = "outer blast door" + }, +/obj/machinery/button/door{ + id = "smindicate"; + name = "external door control"; + pixel_x = -26; + pixel_y = 0; + req_access_txt = "150" + }, +/obj/docking_port/mobile{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate"; + name = "syndicate infiltrator"; + port_angle = 0; + roundstart_move = "syndicate_away"; + width = 18 + }, +/obj/docking_port/stationary{ + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate_nw"; + name = "northwest of station"; + turf_type = /turf/open/space; + width = 18 + }, +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cJg" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"cJh" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJi" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJj" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJk" = ( +/obj/machinery/door/airlock/external{ + name = "Ready Room"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJl" = ( +/obj/item/weapon/storage/toolbox/syndicate, +/obj/item/weapon/crowbar/red, +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/shuttle/syndicate) +"cJm" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cJn" = ( +/obj/structure/chair{ + name = "tactical chair" + }, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"cJo" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (EAST)"; + icon_state = "podhatch"; + dir = 4 + }, +/area/shuttle/syndicate) +"cJp" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJq" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJr" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJs" = ( +/obj/machinery/door/airlock/external{ + name = "E.V.A. Gear Storage"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJt" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJu" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJv" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJw" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJx" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJy" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJz" = ( +/obj/machinery/suit_storage_unit/syndicate, +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"cJA" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJB" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJC" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJD" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJE" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cJF" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJG" = ( +/obj/structure/chair{ + dir = 1; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJH" = ( +/obj/structure/chair{ + dir = 1; + name = "tactical chair" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJI" = ( +/obj/structure/rack, +/obj/item/clothing/suit/space/syndicate/black/red, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJJ" = ( +/obj/machinery/ai_status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"cJK" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJL" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cJM" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJN" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/syndicate) +"cJO" = ( +/obj/machinery/sleeper/syndie{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJP" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJQ" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJR" = ( +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = 6; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = -3 + }, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 3; + pixel_y = -2 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 4; + pixel_y = 1 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 2; + pixel_y = 8 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJS" = ( +/obj/structure/table/reinforced, +/obj/item/stack/medical/gauze, +/obj/item/stack/medical/bruise_pack, +/obj/item/stack/medical/ointment, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJT" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJU" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cJV" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cJW" = ( +/obj/item/weapon/stock_parts/cell/high{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/stock_parts/cell/high, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJX" = ( +/obj/item/weapon/screwdriver{ + pixel_y = 9 + }, +/obj/item/device/assembly/voice{ + pixel_y = 3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJY" = ( +/obj/item/weapon/wrench, +/obj/item/device/assembly/infra, +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cJZ" = ( +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/signaler, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/item/device/assembly/prox_sensor{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKa" = ( +/obj/item/weapon/weldingtool/largetank{ + pixel_y = 3 + }, +/obj/item/device/multitool, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKb" = ( +/obj/structure/bed/roller, +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKc" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKd" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKe" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKf" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKg" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cKh" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/syndicate) +"cKi" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cKj" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKk" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKl" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKm" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKn" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKo" = ( +/obj/machinery/sleeper/syndie{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKp" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cKq" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 9 + }, +/area/shuttle/syndicate) +"cKr" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cKs" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cKt" = ( +/obj/machinery/door/airlock/hatch{ + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKu" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cKv" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cKw" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cKx" = ( +/obj/machinery/door/airlock/hatch{ + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKy" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cKz" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (NORTH)"; + icon_state = "podhatch"; + dir = 1 + }, +/area/shuttle/syndicate) +"cKA" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/shuttle/syndicate) +"cKB" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cKC" = ( +/obj/structure/closet/syndicate/personal, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKD" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker, +/obj/item/weapon/reagent_containers/dropper, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKE" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cKF" = ( +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/shuttle/syndicate) +"cKG" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cKH" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cKI" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cKJ" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cKK" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cKL" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cKM" = ( +/turf/open/floor/plasteel/podhatch, +/area/shuttle/syndicate) +"cKN" = ( +/turf/open/floor/plasteel/podhatch{ + tag = "icon-podhatch (SOUTHEAST)"; + icon_state = "podhatch"; + dir = 6 + }, +/area/shuttle/syndicate) +"cKO" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cKP" = ( +/obj/structure/closet/syndicate/nuclear, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKQ" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/item/bodypart/r_arm/robot, +/obj/item/bodypart/l_arm/robot, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKR" = ( +/obj/machinery/door/window{ + dir = 1; + name = "Surgery"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKS" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKT" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/brute, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKU" = ( +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKV" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKW" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKX" = ( +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cKY" = ( +/obj/item/device/sbeacondrop/bomb{ + pixel_y = 5 + }, +/obj/item/device/sbeacondrop/bomb, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cKZ" = ( +/obj/item/weapon/grenade/syndieminibomb{ + pixel_x = 4; + pixel_y = 2 + }, +/obj/item/weapon/grenade/syndieminibomb{ + pixel_x = -1 + }, +/obj/structure/table/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/obj/item/weapon/grenade/plastic/c4, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cLa" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cLb" = ( +/obj/machinery/door/window{ + dir = 1; + name = "Technological Storage"; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cLc" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/table/reinforced, +/obj/item/device/aicard, +/turf/open/floor/plasteel/vault, +/area/shuttle/syndicate) +"cLd" = ( +/obj/item/weapon/surgicaldrill, +/obj/item/weapon/circular_saw, +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cLe" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cLf" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = 30 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cLg" = ( +/obj/machinery/nuclearbomb/syndicate, +/obj/machinery/door/window{ + dir = 1; + name = "Theatre Stage"; + req_access_txt = "0" + }, +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) +"cLh" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cLi" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cLj" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/shuttle/syndicate) +"cLk" = ( +/obj/item/weapon/cautery, +/obj/item/weapon/scalpel, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cLl" = ( +/obj/structure/table/optable, +/obj/item/weapon/surgical_drapes, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cLm" = ( +/obj/item/weapon/retractor, +/obj/item/weapon/hemostat, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/shuttle/syndicate) +"cLn" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLo" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLp" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLq" = ( +/obj/machinery/recharge_station, +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) +"cLr" = ( +/obj/machinery/telecomms/allinone{ + intercept = 1 + }, +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) +"cLs" = ( +/obj/machinery/recharge_station, +/turf/open/floor/circuit/red, +/area/shuttle/syndicate) +"cLt" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLu" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLv" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLw" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_l" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLx" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLy" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_r" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLz" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLA" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLB" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLC" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_l" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLD" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLE" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_r" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLF" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_l" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLG" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLH" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_r" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/syndicate) +"cLI" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"cLJ" = ( +/obj/structure/chair, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"cLK" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"cLL" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/arrival) +"cLM" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cLN" = ( +/obj/structure/table, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cLO" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cLP" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"cLQ" = ( +/obj/machinery/light/small, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"cLR" = ( +/obj/machinery/light, +/turf/open/floor/pod/light, +/area/shuttle/transport) +"cLS" = ( +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cLT" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"cLU" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cLV" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cLW" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cLX" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"cLY" = ( +/obj/structure/light_construct/small, +/turf/open/floor/plating, +/area/shuttle/abandoned) +"cLZ" = ( +/obj/structure/frame/computer{ + anchored = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMa" = ( +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMb" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"cMc" = ( +/obj/structure/light_construct{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMd" = ( +/obj/structure/light_construct{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMe" = ( +/obj/structure/light_construct/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMf" = ( +/obj/structure/light_construct{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMg" = ( +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMh" = ( +/obj/structure/light_construct/small{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMi" = ( +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMj" = ( +/obj/structure/light_construct{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"cMk" = ( +/obj/structure/light_construct/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/abandoned) +"cMl" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/labor) +"cMm" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMn" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMo" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMp" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMq" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMr" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMs" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMt" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMu" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMv" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMw" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMx" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMy" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMz" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMA" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/highpressure/fulltile, +/turf/open/floor/plating, +/area/engine/engineering) +"cMB" = ( +/obj/structure/window/shuttle, +/obj/structure/grille, +/turf/open/floor/plating, +/area/shuttle/arrival) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaaeaaeaaeaaeaaeaadaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaagaahaaiaajaakaalaalaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaamaahaahaanaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaoaahaahaahaapaahaaqaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaraadaadaadaasaadaadaadaataaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauaadaavaahaawaadaataaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaahaahaaxaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaadaadaadaadaahaahaaxaayaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaahaaAaadaahaahaaxaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaaCaaDaadaahaahaaxaadaadaaEaaFaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaahaaGaadaaHaaIaaHaadaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaahaahaaKaahaahaahaaLaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaahaahaaMaahaahaahaaHaahaahaahaadaaNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaadaadaadaadaadaaOaahaahaadaadaadaadaadaadaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaPaaQaaRaaSaaTaadaahaahaahaadaaUaaVaaWaaXaaYaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaZaaQaaQaaQaaQabaaahaahaahaadaahaahaahaaCabbaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaPaaQaaQaaQaaQabcaahaahaahabdaahaahaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaQaaQaaQaaQaaQabeaahaahaahabfaahaahaahaahabgaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabkablabmabnaadaahaahaahaadaboabpaahaahabgaayaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabqabqabqabqabqaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabraaQabsaadaadaadaaHabtaaHaadabuaadaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvabhaaaabhaaaabhaaaabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabwabxabyaadaaaaadabzabzabzaadaadaadabAabBabCaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabDabDabEabFabGabFabGabFabHabDabDaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabzabzabzaadaaaaarabIabJabKaataaaaadabzabzabzaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabDabLabMabNabOabPabQabRabSabTabDaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarabIabJabKabUaaaaaaaaaaaaaaaaaaaaaabVabIabJabKaataaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabDabWabXabYabXabXabXabZabSacaabDabhabhaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabDabDacbaccacdaceacfabQabQabSacgabDabhabhabhabhabhabhabhabhabhabhabhaaaaaaaaaabhaaaabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaachabDaciabQabQabQabQacjabQabQackaclabDaaaabhaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaabhaaaabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDabDacmacjabQabQacnacoacjabQacpacqabDabhacrabhabhabhabhabhabhabhabhabhabhabhabhabhaaaabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDactabQabQabQacuacvacwabQabQacxacyabDabDaczabhabhabhabhabhabhabhabhaaaaaaaaaaaaabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaacAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBacCacDacEacFacGabQacHabQabQabQabQabQabQabSabQacIacJaczacKacKacLacKacKacLacLacKacMacMacNacMacNacMacOacOacPacPacPacOacOaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaacAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhacQabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacRacSacTacUacVacWabQabQacXacYacZabQadaadbadcabQaddadeaczadfadfadfadfadfadfadfadfacMadgadhadhadhadiacOadjadkadladmadnacOaaaaaaaaaabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhadoabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacLacLacLacLabhabhaaaadpaaaabhabhacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacRadqadradsacVadtaduadtadtadtadvadtadtadtadwadtadtadxaczaczaczaczaczaczaczaczaczaczadyadhadzadAadgacOadBadCadDadEadFacOaaaabhadGabqabqabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsabhabhaaaadHaaaadIabhacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaabhaaaabhaaaaaaadpaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacRadJadKadLacVadMabQadNadtadOadPadQadtadRadSadTadtadUaczadVadWadXadYadZaeaaebaecaczaedadhadzaeeadgacPaefaegaehadDaeiacOaaaabhaejaekaejabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaaaaaaabhaaaabhaaaaaaadHaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaelaelaelaelaelaaaaemaaaaelaelaelaelaelabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBaenaeoaepacVaeqabQaeradtaesaetaeuadtaevaewaeradtaexaczaeyaezaeAaeAaeAaeAaeAaeBaczaeCadhadzaeeadgacPaeDaeEaeFadDaeGacOabhabhaejaeHaejabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaeIaeIaeIaeIaeIaaaaeJaaaaeIaeIaeIaeIaeIabhacsaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaeKaeLaeLaeLaeLaeMaeNaeOaePaePaePaePaeQaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeRacBacBacBaeSaeTaeUacVaeVaeWaeXadtaeVaeYadtadtadtaeZaeXadtadtaczafaafbafcafdafeaffafgafhafiadhadhadzaeeadgacOafjafkaflafmafnacOacNacNacMaekaejaejacMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaafoafpafpafpafpafqafrafsaftaftaftaftafuaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhafvafvafvafvafvaaaaeNaaaafvafvafvafvafvabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBafwafxafyafzafAafBafCafDafEafFafGafHafIafJafKafLafMafNafOaczafPafQafRafSafTafUafVafWafXadhadhafYafZacMacOagaacOagbacOagcacOagdageacMagfaejaggaghaghaghaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhagiagiagiagiagiaaaafraaaagiagiagiagiagiabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaaaaabhaaaaaaaaaaeNaaaaaaaaaabhaaaaaaaaaacAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBagjagkaglagmagnagoagpagqagqagragsagqagqagqagtaguagvagwagxaczafPafPagyagzagAagBagCagDaczagEagFagGagHacMagIagJagKagLagMagNagKagOagPagQagRagSagTagUagVagWagXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaaaaabhaaaaaaaaaafraaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaelaelaelaelaelaaaaeNaaaaelaelaelaelaelabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagYagZahaahbahcahdacBaheahfahgahgahhahiahjahkahkahkadtahlahmaczaczaczahnahoahpahqahrahsaczahtacNahuahvacMahwahxahyahzahAahBahCahDahEacMahFacMaggaghaghaghaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaeIaeIaeIaeIaeIaaaafraaaaeIaeIaeIaeIaeIabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaeKaeLaeLaeLaeLaeMaeNaeOaePaePaePaePaeQaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBacBacBahGahHahIacBabDadtahJadtadtadtahKahKahKahKahKahLahMahNahOahPahQahRahSahTahUahVahNahWagKahXahYahZaiaaibahyaicahAaidahCaieaejacMacMacMacMacMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaafoafpafpafpafpafqafrafsaftaftaftaftafuaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsadIafvafvafvafvafvaaaaeNaaaafvafvafvafvafvabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaacBacBacBacBacBabDaifaigaihaiiaijahKaikailaimainaioaipaiqairaisaitaiuahSaivahSaiwaixaiyaizaiAaiBahyaizaiCaiDaiEaiFaiGaiHaiIaiJaiKaiLaiMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhagiagiagiagiagiaaaafraaaagiagiagiagiagiabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaaaaabhaaaaaaaaaaeNaaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhabhabDaijaiNaiOaiPaijahKaiQaiRaiSaiTaioaipahNaiUaiVaiWaiXaiYaiZajaajbajcajdajeajfajgajhajhajgajiajjajkajlajmajnacMajoajpaiMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaaaaabhaaaaaaaaaafraaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaelaelaelaelaelaaaaeNaaaaelaelaelaelaelabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDaijaiNajqaiPajrahKajsajtaiSajuaioaipaiqajvajwajxajyajzajAajBajCajDajEajFajGajHajIajJajKajLajMajNajOajPajQajRajSajTajUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaeIaeIaeIaeIaeIaaaafraaaaeIaeIaeIaeIaeIabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaeKaeLaeLaeLaeLaeMaeNaeOaePaePaePaePaeQaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaabDajVajWajWajXajYahKajZakaakbakcaioaipahNakdakeakfakgakhakiakjahNahNacMakkajoacMacMacMacMacMacMacMacMacMacMacMaklakmajUabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaafoafpafpafpafpafqafrafsaftaftaftaftafuaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaknafvafvafvafvafvaaaaeNaaaafvafvafvafvafvabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhakoakoakpakpabDabDadtadtaeVakqahKahKahKahKahKakraksaktakuaktaktaktaktaktaktakvakwakxakyakzakAakBakCakDakEakFakGakHakIakJakKaklakmajUabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhagiagiagiagiagiaaaafraaaagiagiagiagiagiaknacAaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaabhaaaabhaaaaaaakLaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhakoakMakNakOakPakQakRakSakTakUakVakWakXakYakZalaalbalcaldalcalcalcalcalcalcalealcalcalfaldalgalhalialjalkallalmalnaloalpakKaklakmaiMabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaabhaaaabhaaaaaaafraaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsabhabhabhabhalqalralqabhabhabhabhacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalsaltaltaltalsaaaabhakoalualvalwalxalyalzalAalBalCalDalEalFalGalHalEalIalJalHalEalFalKalLalLalLalMalNalOalPalQalRalSalTalUalTalTalTalValWalWakKaklakmajUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsabhabhabhabhabhafrabhabhabhabhabhacsacsacsabhaaaaaaaaaaaaaaaaaaaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaabhaaaalqalXalqaaaaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalsalYalZamaalsakpakpambamcamdameamfakBahKamgahKakBamhamiamjamkamlammamjamkamlamnamoamkampamqamkamramsamkamtamuamvakBamwamxalWamyalWamzamAalWakKaklakmajUabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaabhaaaaaaamBaaaaaaabhaaaaaaabhaaaabhabhabhaaaaaaaaaaaaaaaaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaabhalqalqamCalqalqaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaJamDamDamDamDamDaaaaltamEamFamGamHamIamJamKamcamLamMamNakBamOaktamPakBamQamRamSakBamTamRamSakBamTamUamSakBamVamWamXamYakAakBamRamZanaakBanbancandaneandanfangalWakKaklakmajUabhaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaabhaaaaaaanhaaaaaaabhaaaaaaabhaaaaaaaaaabhabhaaaaaaaaaaaaaaaanianjaniabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaabhankanlanmannankanoanoanoanoanoanoanoanoanoaaaaaaaaaaaaamDanpanqanramDaaaalsansalsantalsakpakpakpanuanvanwanxakBanyanzanAakBanBamRanCakBanDamRanEakBanFamRanGakBanHanIanJamYanKakBanLanManNakBanOanPanOanQanOanRanOanOakKaklakmaiMaiMabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaabhaaaanSanTanSaaaabhaaaaaaabhaaaaaaaaaaaaabhabhaaaaaaaaaaaaanianUaniabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaankanVanWanXankanYanYanoanZaoaaobanoaocanoaaaaaaaaaabhanoaodaoaaoeanoaaaalsaofaofaogalsaaaaaaaohakoakpaoiaojakBaokaolaomakBaonaooaooamkaooaooaooamkaooaooaooamkaopaoqaoraosaotakBakBakBakBakBaouaovaouakJaouaowaouakJakKaoxaoyaozaiMaiMaiMabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaaaaabhaaaanSaoAanSaaaabhabhabhabhaaaabhaaaaaaaaaabhabhaaaaaaaaaaniaoBaniabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaoCaoCaoCaoCaoCaoCaoCaoCaoCaoCaoCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaankaoDaoEaoFankaoGaoHaoIaoJaoaaoKanoanoanoamDanoamDamDanoaoLaoMaoLanoaaaaltaofaofaoNalsakpakpakpaoOaoPaoQaoRakoakBakBakBakBaoSaoSaoSaoTaoSaoSaoSaoUaoSaoSaoSaoTaoSaoSaoSaoVaoVaoWaoXaoXaoXaoYaouaovaouakJaouaowaouakJakKaklaoZapaapbapcapbabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaaaaaaaabhanSanSapdanSanSabhaaaaaaabhaaaabhaaaaaaaaaaaaabhabhaaaaaaaniaoBaniabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaoCapeapfapfapfapfapfapfapfapgaoCabhaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaankankaphapiankapjaoaanoaoaaoaaoaaoIaoaaoaapkaoaanqaoaaoaaoaaoaaplamDaaaalsapmaofaofapnapoamJappamcamLamMamLapqaoVaoVaoVapraoVaoVapsaoVaoVaoVaoVaoVaoVaoVaptaoVaoVaoVapuaoVaoVaoVaoVaoVaoVapvakJapwapxapyapzapAapxakJapBapCapDapEapEapFaiMabqaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaaaaaaaaaaabhapGapHapIapJapGabhaaaaaaabhaaaabhaaaabhaaaaaaaaaabhanianianiaoBanianianianianianiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaoCapKapLapLapLapLapLapLapLapMaoCabhaaaaaaaaaabhaaaaaaaaaaaaanoanoanoanoanoabhabhanoapNapOapPapQaoHanoanoamDamDanoanoanoanoamDanoamDamDanoapRaoaapSanoaaaalsapTapTapTalsakpakpapUapVapWapXapYakoapZapZapZapZapZaqaaqbapZapZapZapZapZapZapZaqcaqdaqdaqdaqeaqfaqdaqgaqhaqiaqjaoYaqkaqlakKakKakKakKakKakKakKaklaqmaiMaqnaqoaiMaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaaaaaaaaaaaaaabhapGaqpaqqaqrapGabhaaaaaaabhaaaabhaaaabhanianjanianjaniaqsaoBaoBaoBaoBaoBaoBaqtaniabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaoCapKapLapLapLapLapLapLapLapMaoCaoCaquaoCaoCabhabqabqanoanoanoaqvaqwaqxanoaaaaaaanoaoaapOapjaoaaqyanoaqzaqzaqAaqzaqzaqAaqAachachaqBaqBanoaqCaoaaqDanoaaaalsaqEaqEaqEalsaaaabhakoakoaqFakoaqGaqHaqIaqIaqJaqIaqIaqIaqKaqLaqLaqLaqMaqLaqLaqNaqOaqPaqQapEaqRapEapEapEapEaqSapEapEapEapEapEaqTaqUaqVaqWaqXaqXaqYaqZaraarbarcaiMaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaabqabqabqaaaabhapGardarearfapGargargargargarganjanjanjaniarhaoBaqtanianiaoBanianianianiarianianiabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaoCapKapLapLapLarjapLapLapLapMarkarlarmarnaoCabhanoaroanoarparqaoaarraoaanoamDamDanoarsapOapjarsanoanoanoamDamDamDanoanoachartaqAaqAachanoanoaoIanoanoaaaaaaaaaaaaaaaaaaaaaabharuarvamJaruarwaqIarxaryarzarAarzaqIarBaqLarCarDarEarFaqLaoSaoVarGarHarIarJarJarJarJarJarKarLarJarJarJarJarJarMarNarOarParQarRarSaiMarTarUaiMabharVarWarWarXarWarWarYabhabhaaaaaaaaaabhanjarZanjaaaargapGapGasaasbapGascaoBaoBaoBaniasdaoBaseaniasfaoBaoBasganiaoBaniashasianiaoBasjaniaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaoCapKapLapLaskaslasmapLapLasnasoaspasqasraoCabhanoaoaanoassastapQasuasvanoaqDaoaaswaoaapOasxaoaaoaaoaaoaaoaaoaaoaaoaanoanoanoaqAachaqAachasyaszasyaaaaaaaaaaaaaaaaaaaaaaaaabharuasAasBaruasCaqIasDasEasFarzarzaqIarBaqLasGarEasHasIasJaoSaoVaoXarHaklasKasKasKasKasKasLasMasKasKasKasKasKasKasKasKasNasOaiMasPasNasNasNasNasNasQasRasRasRasRasRasQasNabhaaaaaaaaaabhasSaoBanjaaaargasTasUasVasWasXaoBaoBaniaoBaniasYaoBaoBaniaoBasZataatbariaoBaniatcatdaniaoBateaniaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaoCapKapLapLapLatfapLapLapLapMaquatgasqathaoCanoanoaroanoanoanoaoIatiatjatjatkatlatmatlatnatoatpatqanoaoaanoanoanoaoaanoatranoachaqAaqzaqAasyaszasyaaaaaaaaaaaaaaaatsatsatsatsatsatsatsatsattaqIatuatvatwarzatxaqIarBatyatzatAatBatCasJaoSaoVatDarHaklasKatEatFatGatHatIatJasKatKatLatMasKatNatLatOasNatPatQatRatSatTatUatVasNasQasRasRasRasRasRasQasNabhabhabhabhanjanjatWanjanjargatXaoBatYaoBaqsaoBanianiatZanianiauaanianiatbaubaucaoBaniaoBaudaudaudaudaudaudaudaudaudaueaueaueaueachaueaueaqAaqAaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaoCapKapLapLapLapLapLapLapLapMaquaufasqaugaoCauhauiaujaukaukaukaukaukaukaulaumaunanoanoanoanoaoaanoanoaoaauoanoatpaoaanoanoanoanoaqzaqzaqzasyaupasyaaaaaaaaaabhabhatsauqauratsausautauuatsattaqIarAauvarAauwarzaqIauxauyauzarEauAarEasJaoSaoVauBarHaklasKauCauDauEauFauGauHasKauIauJauKasKauLauMauNasNauOauPauQauQauQauQauRauSauTasRasRasRasRasRasQasNasNasNaaaaaaanjaoBaoBaoBascargauUatbatYaoBauVauWauXariaoBaoBaoBaoBaoBaoBaoBaubauYaoBauZaoBaudavaavbavcaudavdaveavfaudaqAaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaoCapKapLapLapLapLapLapLapLapMaquaufavgavhaoCaoaaoaaviavjavkavkavkavkavkavkavlavmavnachavoanoaoaavparsatpavqanoavraoaaoaaoaavsamDaqzaqzaqAasyaszasyaaaaaaaaaatsatsatsaszaszatsaszaszaszatsavtaqIarAavuavvavwarAaqIarBavxaqLavyavzavAaqLavBaoVaoXarHaklasKasKasKasKasKavCavDasKasKavEavFasKasKavGavFasNavHavIavJavKavKavLavMavNavOasRasRasRasRasRavPavQavRavSaaaaaaanjaoBaoBavTaoBargavUaoBavVavWavWavWavWavXavWavYaoBaoBaoBaoBaoBaoBaoBaoBaniauWaudavZawaawaaudawbawcawdaudaqzaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhabhaoCaweawfawfawfawfawfawfawfawgaquawhawiawjaoCawkawlawmawnapRawoawpawqawranoawsavmachawtavnamDaoaauoanoanoanoanoanoanoanoawuavsamDaqAaqzaqAasyaszasyabqabqabqawvawwawxaszaszatsatsawyatsatsavtaqIaqIawzaqIawAaqIaqIawBawCaqLaqLaqLaqLaqLawDaoVawEarHaklasKatEatFawFatHawGawHawIawJawKawLawMawNawOawPawQawRavIawSawTawTawUawVavNavSasRasRasRasRasRavSawWawXavSabhabhaniaoBaoBanianiargargargargargargargargarganiawYawZanianianianianianianianiaoBaxaaudawaawaaxbaxcavZaxdaudaqzaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxeaoCaoCaoCaoCaoCaoCaoCaoCaoCaoCaoCaxfaxgaoCaoCaxhanoaviaxiaoaaxjaxkaoaaoaanoawsavmaxlaqAaxlanoaoaaxmanoaxnaxoanoavrasvaxpaxqaxqaxqaxraxraxraxsaxtaxuaxraxraxraxsaxuaxsaxsaxtaxsaxvaxtaxwaxxaxyaxzaxzaxAaxzaxBaxzaxzaxCaxDaxzaxzaxzaxzaxEaxFaxGaxGaxHaxIasKauCauEauEaxJauGaxKaxLaxMaxNaxOaxPaxQaxRaxSaxTaxUaxVawSaxWawTawUawVaxXavSasRasRasRasRasRavSaxYawXasNaaaaaaaniaxZasfaoBayaaniaybaqtaycaydaqsaniavUaqsaniayeaoBaniayfaoBaniaygayhayiayjayjayjaykaylaymaynayoaypayqaudaueaueachachaueaueaueaueaqAaqAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayrayrayraysaytayuayvaywayxayxayxayxayxayxayxayyayzayAayBayCayDanoayEaxiayFaoaayGaoaayHanoawsayIaxqaxqaxqaxqayJaxqaunaoaayGayKaoaaoaayLayMayNayOayPayPayPayQayPayRayPayPaySayTayUayVayVayVayVayVayVayWayXayYayZayZayZayZazaayZayZazaayZazbazbazbazbazbazcazdazeazfazgasKasKasKasKasKavCazhaziazjazkazlazmaznazoazpazqazrazsaztazuazuazvawVazwavOasRasRasRasRasRazxazyazzasNaaaaaaaniaoBaoBaoBaoBaoBaoBazAavWavWavWavWavWavWavWazBaoBaoBaoBaoBauZaoBaoBazCazDazEazFazGazHazIawaawaawaazJaudaqAaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazKazLazMazNazOazPazQazPazRazSazRazTazUazUazVazWazUazXazYazUazUazZaxqaAaaxiaAbaoaaoaaAcaAdanoaAeaAfaAgaAgaAgaAgaAgaAhavmaAiaoaanoauhauhavmaAjanoaAkaAlaAmaAmaAnaAmaAoaAmaAmaApaAqaAraAsaAsaAsaAsaAsaAsaAsaAtaAuaAvaAwaAxaAyaAzaAAaABaACaADaAEaAFaAGaAHaAIaAJaoVaAKaiMapaasKatEatFaALatHaAMaANaziaziaziazjaAOaAPaAQaARawQaASaATaAUaAVaAWaAXaAYaAZaBaasRasRasRasRasRaBbasNasNasNanianianiaqsanianiarianianiatYanianiaBcanianiarianiatYaxZanianiarianiaoBaxZazCaBdaubaudaBeaBfaBgaBhaBiaBfaBjaudaqAaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayrayrayraysaytaBkaytaBlaBmaBlaBnazSazSaBoaBlaBmaBlaBpaBqaBraBsanoayEaxianoanoanoanoaBtaBtaBuaBvaBtaBtaBtaBtaBtawsayIaxqaxqaxqaxqaxqaBwaAjaqDaAkaaaabhaaaaBxaaaaByaaaabhaaaaAqaAraAsaBzaBAaBBaBCaBDaAsaAtaBEaBFaBGaBGaBHaBIaBJaBJaBJaBKaBLaBLaBMaBNaAIaBOaoVaBPaiMapaasKauCauEauEaBQauGaBRaBSaBTaBUaBVaBWaBXaBXaBYaBXasNaBZaCaaCbaCcaCdaCeasNaBbasRasRasRasRasRaBbaniateaoBaCfaCganianianiateaoBaniateatYaniaChaoBaniaCiaoBaniaCjaCkaniaClaoBaniariariazCaCmariaudaCnaBfaCoaCpaCoaBfaCqaudaqAaqAaqAaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxeaCraxeaCsazQaBlaCtaCuaCvaCwaBlazQaCsaBlaxeaCxaCyanoaCzaCAaCBaCBaCCaCDaBtaCEaCFaCGaCHaCIaCJaCEaBtaCKaCLaCMaCNaCNaCNaCNaCNaCOauhaAkabhaCPaCPaCQaCPaCRaCPaCPabhaAqaAraAsaCSaCTaCUaCVaCSaAsaCWaCXaCYaCZaDaaDbaDcaDdaDeaDfaDgaDhaAGaAGaAGaDiaBOaoVaDjaiMapaasKasKasKasKasKaDkavDaBXaBXaBXaBXaBXaBXaDlaDmaDnaBXasNasNasNasNaDoaDpasNaBbasRasRasRasRasRaBbanianiaoBaDqaCganiaDraniaoBaoBaniaoBatYaniaoBaoBaniaoBaoBaniatYauWaniaoBaoBaniaDsaoBazCaBdatbaudaudaudaudaudaudaudaudaudaueaueaueaueaueaqAaqzaqzaqzaqzaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBlaBmaBlaBlaBlaBlaBlaBlaBmaBlaaaaxeaDtaBsaDuaDvaDwaDuaDuaDuaDxaBtaCEaDyaDzaDAaDBaDCaCEaBtanoaDDaDEaDEaDEaDEaDEaDEaDFaDEaDGaaaaCPaDHaDIaDJaDKaDLaCPaaaaAqaAraAsaCSaDMaDNaDOaCSaAsaszaDPaAvaDQaDRaDSaDTaDUaDhaDVaDWaAGaAGaDXaAGaDiaBOaoVaBPaiMapaasKatEatFaDYatHaAMavDaBXaDZaEaaEbaEbaBXaDlaEcaDnaBXaEdaEeaEfaEgaEhaDpaqAaEiaEjaEjaEjaEjaEjaEkaqzaniaoBaElaEmanianianianianianiaEnaEoanianianianianianiaEpaEqaEraEsaEsaEsaEtaEuaEvaEwaExaEyaEzaEAaEBaEsaECaEDaEEaEFaEFaEFabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaEGaEGaEHaEGaEIaEIaEIaEIaEGaEHaEGaEGaxeaBnaEJaDuaEKaELaEMaENaEOaEPaBtaCEaEQaERaESaERaERaCEaBtaETaEUaEVaEWaEXaEYaEZaFaaFbaFcaDGabhaCPaFdaFeaFfaFgaFhaCPabhaAqaAraAsaFiaFjaFkaFlaFmaAsaszaFnaAvaFoaFpaFqaAGaFraFsaFtaFuaFvaDiaAIaFwaAIaBOaoVaBPaiMapaasKauCauDauEaFxauGaFyaFzaFAaFBaFCaFCaFDaFEaFFaFGaBXaFHaFIaFJaFKaFLaDpaqzaqAaqzaqAaqzaqAaqzaqAaqzaniaxZaFMaFNaFOaFPaniauVaoBaxZatYaoBaniaqzaniaCfaFNaFNaFQaFRaFSaFSaFSaFSaFSaFTaFUaFVaFWaFXaFXaFXaFYaFZaGaaGbaGcaGdaGeaGfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEGaEGaEGaEGaGgaGhaGiaGjaGkaGlaGmaGnaGhaGoaGpaBlaBnaGqaDuaGraGsaGtaGuaGvaGwaBtaGxaERaERaERaERaERaERaGyaGzaEUaGzaGAaGzaGzaGzaGzaFbaGzaDGaaaaCPaGBaGCaGCaGDaGEaCPaaaaAqaAraAsaGFaGGaGHaGIaGJaAsaszaGKaAvaAvaFuaGLaGMaGNaGOaAvaAvaAGaAGaAIaGPaAIaBOaoVaBPaiMapaasKasKasKasKasKaGQaGRaGSaGTaGUaGVaGVaGVaGVaGVaGWaBXaGXaGYaGZaEgaEhaDpanianianianianianianianianianianianianiaHaanianianianiaCfaHbaHcaHdaHeaHdaHfaHgaHhaHiaHjaHkaHkaHkaHkaHlaHmaHnaHlaHlaHlaHlaHlaHlaHlaHoaHpaHqaEFaEFaEFabhabhabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEIaHraHraEGaGhaHsaGhaHsaGhaHsaGhaHsaGhaGoaHtaBlaBnaHuaDuaHvaHwaHxaHyaHzaHAaBtaHBaERaERaERaERaERaHCaBtaHDaHEaHFaHGaGzaGzaGzaHHaHIaHJaDGabhaCPaHKaHLaHMaHNaHOaCPabhaAqaHPaAsaHQaHRaGHaHSaHTaAsaszaHUaAIaHVaAGaHWaHXaHYaAGaHZaAIaIaaIbaAIaHXaAIaIcaqOaIdaiMapaapaapaapaapaapBavCavDaBXaIeaIfaBXaIgaBXaIhaBXaIiaBXaIjaIkaIlaImaInaIoaIpaIqaIraIsaItaIuaIuaIuaIuaIvaIwaIuaIuaIxaIyaIzaIAaEsaIBaICaIDaIEaIFaIEaIGaIHaHkaIIaIJaHkaIKaILaIMaHlaINaIOaHlaIPaIQaIRaISaITaIUaIVaIWaIXaIYaIZaJaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaJbaJcaJcaJcaJcaJcaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEIaGhaGhaJeaGhaHsaGhaHsaJfaHsaGhaHsaGhaGoaHtaBlaBnaJgaDuaDuaJhaJiaJjaJiaDuaBtaBtaBtaBtaJkaERaJlaJmaBtaJnaEUaGzaGzaGzaJoaGzaGzaFbaJpaDGaaaaCPaCPaJqaJraJqaCPaCPaaaaAqaAraAsaJsaJtaJuaJvaJwaAsaszaJxaAIaJyaAGaJzaHXaJAaAGaJBaAIaDiaDiaAIaJCaAIaJDaJEaJFaiMapBaiMaiMaiMaiMaiMaJGaJHaBXaJIaJJaBXaJKaBXaJLaBXaJMaBXaJNaJOaJPaEgaJQaJRaJSaJTaJUaJUaJVaJWaJUaJXaJYaJZaKaaKbazEazEazEaKcaKdaKeaKfaKgaoBaKhaKhaKhaKiaKjaHkaKkaKlaKmaKnaKoaKpaHlaKqaKraHlaKsaKtaKuaKvaITaKwaHoaHpaGcaKxaKyaJaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaJbaKzaKAaKBaKCaKBaKDaKzaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEIaKEaKEaEGaGhaHsaGhaHsaGhaHsaGhaHsaGhaGoaHtaBlaBnazSaKFaKGaKHaKGaKIazSaKJaKKaKLaKMaBtaKNaERaERaKOaBtaKPaEUaGzaKQaKRaKSaKTaKUaKVaKWaDGaaaabhaaaaKXaKYaKXaaaabhaaaaAqaAraAsaKZaLaaLbaHSaLcaAsaszarBaAIaLdaAGaHXaHXaHXaLeaLfaAIaaaaaaaLgaLhaLiaLjaLkaLlaLmaLnaLgaaaaaaaLoaLpaLqaLraBXaLsaJJaJJaJJaLtaJJaJJaJJaBXaEgaLuaEgaEgaEgaDpaLvaLwaLwaLxaLyaLzaLwaLAaLBaLBaLCaLDaLEaLBaLFaKhaKhaLGaKiaKhaKhaKhaLHaLIaKiaKjaHkaLJaLKaLLaLMaLNaLOaHlaLPaLQaLRaLSaLTaLUaLVaLWaKwaHoaLXaGcaIYaLYaJaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaJbaLZaMaaMbaMbaMbaMcaMdaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEGaEGaEGaEGaMeaGhaGhaGhaGhaGhaGhaMfaGhaGoaMgaBlaBnazSaMhaMiaMjaMiaMkaMiaMiaMiaMlazSaBtaMmaMnaMmaBtaBtaMoaMpaMoaDEaDEaDEaDEaMoaMqaMraDGaMsaMtaMtaMuaMvaMwaMtaMtaMxaAqaMyaAsaMzaAsaMAaMBaMCaAsatsaqKaAIaAIaAIaDiaGMaDiaAIaAIaAIaLgaLgaLgaMDaLkaLkaLkaLkaLkaMEaLgaLgaLgaLoaMFaLqaMGaBXaBXaBXaBXaBXaBXaBXaBXaBXaBXaMHaMIaMJaMKaMLaMMaMNaMOaLwaMPaLyaMQaMRaMSaLBaMTaMUaLDaMVaLBaMWaMXaMYaMZaNaaNbaNbaNcaNdaNeaKiaKjaHkaNfaNgaNhaNiaLNaNjaHlaNkaNlaNmaNnaNoaNpaNqaHlaHlaNraHpaGcaKxaKyaJaaaaabhabhabhabhabhabhabhaaaaaaaaaaaaaJbaNsaNtaNuaNvaMbaMcaNwaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEGaEGaNxaEGaEIaEIaEIaEIaEGaEHaEGaEGaxeaNyazSaNzaNAaNBaNCaNDaNEaytaNFaNGazSaNHaNIaNJaNJaNKaNJaNJaNLaNJaNJaNJaNJaNJaNJaNMaNNaNOaNPaNQaNRaNRaNSaNRaNRaNRaNRaNTaNUaNVaNWaNRaNXaNRaNYaJEaNZaOaaObaOcaOdaLmaLmaLmaLjaLkaLkaOeaLkaLkaOfaOgaOhaOiaOjaOkaOlaLkaLkaOeaOmaOnaOoaOpaOqaOraOsaOtaLkaOuaLkaEgaOvaOwaMIaMIaMIaOxaOyaOzaOAaOBaLwaOCaODaMSaOEaOFaLBaOGaMUaOHaOIaLBaLBaOJaOKaOLaOMaONaOOaOPaOQaORaKiaKjaHkaOSaOSaOTaOUaOSaOSaHlaOVaOWaHlaOXaNqaNqaNqaHlaOYaOZaPaaGcaEFaEFaEFaPbaPbaPbaPcaPcaPcabhabhaaaaaaaaaaJbaJbaJbaJbaJbaJbaPdaPeaJbaJbaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBlaBmaBlaBlaBlaBlaBlaBlaBmaBlaaaaxeaDtaPfaNzaPgaPhaPiaPjaPkaytaPlaNGaPmaKFaNIaPnaPoaPpaPqaPraPsaNJaNJaNJaNJaNJaNJaNJaNNaNJaNIaPtaNJaNJaPuaPvaPwaPwaPwaPxaPyaPwaPzaPwaPAaPwaPBaPCaPDaPEaPFaLkaLkaLkaLkaLkaLkaLkaLkaOeaLkaLkaPGaPHaPIaPJaPKaPLaPMaLkaLkaOeaLkaPNaLkaLkaLkaLkaLkaLkaLkaPOaLkaEgaPPaMIaMIaPQaPRaPSaPTaPUaPVaPWaLwaPXaPYaPZaLwaLwaLBaQaaMUaQbaQcaQdaLBaKhaKhaQeaKhaKhaKhaQfaQgaQfaKiaKjaHkaQhaOSaOSaQiaOSaQjaHlaHlaHlaHlaHlaHlaHlaQkaHlaHoaHoaHpaGcaQlaQmaEFaQnaQoaQpaQqaQraPcabhaaaaaaaaaaaaaJbaQsaQsaQsaJcaQtaMbaQuaQvaQwaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxeaCraxeaBlazQaBlaQxaQyaQzaQAaBlazQaBlaBlaxeaBnazSaNzaQBaQCaPiaPjaPkaytaQDaNGazSaKFaNIaNJaQEaQFaQFaQFaQGaQHaQIaQFaQJaQFaQFaQFaQKaQFaQLaQFaQFaQFaQMaQNaQOaQPaQPaQQaQRaQSaQTaQUaQVaQWaQXaQYaQZaRaaLkaRbaRbaRbaRcaRbaRbaRbaRbaRdaRbaRbaRbaRbaRbaRbaRbaRbaRbaRbaRbaReaRbaRbaRbaRbaRbaRbaRbaRbaLkaLkaLkaEgaRfaRgaRgaRgaRgaRgaRhaMMaRiaOBaLwaLwaRjaLwaLwaRkaLBaRlaRmaRnaQcaRoaLBaKhaRpaRqaRraRsaRraRraRtaRuaKiaKjaHkaRvaRvaRwaRxaRyaRyaRzaHkaRAaRBaRCaEFaRDaIYaREaHoaHoaRFaRGaEFaRHaEFaRIaRJaRKaRLaRMaPcaPcaPcaPcaPcaPcaJbaRNaROaROaRPaMbaMbaMbaMbaQuaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaRQaRQaRQaRRaytayuaytaBlaBmaBlaBnazSazSaBoaBlaBmaBlaRSaRTaRUazSaNzaRVaRWaNCaRXaNEaytaRYaNGazSaRZaRZaRZaSaaSbaSbaSbaSbaSbaSbaScaSdaSbaSeaSbaSbaSbaSfaSgaShaSgaSiaSjaSkaNJaNJaSlaSmaSnaNJaSoaSpaNJaSqaSqaLkaSraOdaLgaLgaLgaLgaLgaLgaLgaLgaSsaStaSuaSvaSuaSuaSuaSwaSuaSxaSuaSyaSsaLgaLgaLgaLgaLgaLgaLgaLgaLjaLkaLkaLwaSzaSAaSBaSBaSBaSBaSBaMMaSCaSDaLwaSEaSFaSGaLBaLBaLBaLBaSHaLDaLBaLBaLBaLBaRraSIaSJaSJaSJaSJaSKaRraKiaKjaHkaSLaOSaRwaRxaOSaOSaSMaHkaSNaSOaSPaEFaHoaKxaSQaSRaSRaSSaSTaSUaSVaEFaSWaSXaSYaSZaSZaTaaTbaTbaTcaTbaTdaTeaROaTfaTfaJcaTgaThaTiaMbaQuaJcaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTjaTkaTlaTmaTnazPazQazPaToazSaTpaRUazSazSaTqaTpazSaToaRUazSazSazSaTraTsaTtaTuaTvaTwaTwaTxaTyazSaRZaTzaRZaTAaSbaTBaTCaTDaTEaTFaTCaTGaTHaTIaTJaTKaTLaSfaTMaTNaTOaSiaTPaSkaSkaTQaSkaSkaSqaSqaTRaTSaSqaSqaSqaTTaLkaOdaLgaaaaaaaaaaaaaaaaaaaaaaSsaTUaTVaTWaTXaTYaTZaUaaUbaUcaUdaUeaSsaaaaaaaaaaaaaaaaaaaaaaLgaLjaLkaUfaUgaUhaSBaUiaSBaSBaSBaSAaMMaSCaUjaUkaSBaUlaUmaLBaUnaUoaUpaUqaUraUsaUtaUuaLBaRraUvaUwaUwaUwaUwaUxaRraKiaUyaHkaUzaUzaRwaRxaUAaUAaUBaHkaHkaUCaHkaEFaUDaIYaREaUEaUFaRFaRGaEFaEFaEFaPcaUGaUHaPcaPcaPcaPcaPcaPcaPcaUIaJbaJbaJbaJbaUJaTiaTiaTiaMbaQuaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaRQaRQaRQaRRaytaUKayvaULaUMaUMaUMaUMaUMaUMaUMaUMaULaUMaUNazSazSaKFazSaUOaUPazSaUQazSaURaUSaUTaRZaUUaRZaTAaSbaUVaTCaTCaTCaTCaTCaTGaUWaTCaTCaTCaTLaSfaUXaTNaTNaSiaTPaSkaUYaUZaUZaVaaSqaVbaVcaVdaVeaVfaVgaLkaLkaOdaLgaaaaaaaaaaaaaSsaSsaSsaSsaVhaViaVjaVkaVlaVmaVnaVoaVpaVqaVraSsaSsaSsaSsaaaaaaaaaaaaaLgaLjaLkaLkaVsaSBaVtaVuaVvaVwaVxaVyaVzaSCaUjaVAaSBaVBaSBaVCaVDaVEaVFaVGaVHaVIaVJaVDaVKaVLaVMaUwaVNaVOaUwaVPaRraKiaKjaHkaOSaOSaRwaRxaOSaOSaOSaVQaVRaOSaVSaEFaNraVTaVUaUEaUEaVVaVWaVXaEFaVYaVZaSXaSYaSZaSZaWaaTbaTbaTbaTbaWbaWcaMbaWdaMbaMbaMbaMbaMbaMbaWeaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxeaxeaxeaxeaBlaBlaBlaBlaBlaBlaBlaBlaxeaxeaytaKFaWfaWgaWgaWhaWgaWgaWgaWgaWiaWgaWjaRZaUUaWkaWlaSbaWmaTCaWnaWoaWpaWqaWraWsaWtaTCaTCaWuaSfaWvaWwaWxaSiaTPaSkaWyaWzaWAaWBaSqaWCaWDaVdaWEaWFaVgaLkaLkaOdaLgaLgaWGaSsaSsaSsaWHaWIaWJaWKaWLaWMaWNaWOaWMaWPaWMaWQaWRaWSaWTaWUaWVaSsaSsaSsaWGaLgaLgaLjaLkaLkaLwaWWaSBaWXaSBaWYaSBaSAaSBaSCaUjaWZaXaaSBaXbaLBaVDaVDaXcaXdaXeaXfaXgaVDaXhaXiaXjaUwaXkaXlaUwaXmaXnaKiaKjaHkaXoaXoaRwaRxaXpaOSaOSaXqaOSaXraXsaEFaXtaXuaXvaUEaUEaXwaXxaHoaEFaXyaSZaSXaSYaSZaRMaPcaPcaPcaPcaPcaPcaJbaThaMbaXzaXAaMbaXzaXAaMbaXBaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXCaXDaXCaXCaXEaXCaXCaXDaXCaaaaBlaCtaBraXFaWgaXGaXHaXIaXJaXIaXKaXLaXIaWjaUUaUUaXMaXNaSbaXOaXPaXQaXRaXSaXTaXUaXVaXWaXXaXYaTLaSfaSfaSfaSfaSiaTPaSkaSkaSkaSkaSkaSqaXZaYaaYbaWEaYcaVgaLkaLkaOdaLmaLmaYdaYeaYfaSsaYgaYhaYiaYjaYkaYjaYlaYmaYnaYoaYpaYqaYraYpaYsaYtaYuaSsaYvaYeaYwaYxaLmaLjaLkaLkaVsaSBaSBaSAaSBaYyaSBaYzaSBaSCaUjaVAaSBaSBaSBaYAaVDaVDaYBaYCaYDaXdaXgaYEaLBaYFaXjaYGaUwaUwaUwaXmaYHaKiaYIaHkaHkaHkaRwaRxaYJaYKaOSaYLaYMaNhaYNaEFaHoaVTaVUaUEaUEaYOaVWaYPaEFaYQaSZaSXaSYaSZaRMaPcaaaabhabhabhaaaaJcaThaMbaXzaXAaMbaXzaXAaMbaXBaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYRaYSaXCaXCaYTaYTaYUaYUaYUaYTaYTaXDaYVaBlaBlaBnazSaWgaYWaYXaYYaXGaYZaZaaXLaXIaWjaZbaZcaZdaRZaSbaZeaZfaZgaZhaZiaZiaZjaZiaZiaZiaZkaZlaSbaZmaZnaZoaZpaZqaZraZsaZtaZuaZvaZvaZvaZvaZvaZvaZvaZvaLkaLkaLkaLkaLkaZwaZxaZyaZzaZAaZBaZCaZDaZEaZFaZGaZHaZIaZJaZKaZLaZMaZNaZCaZOaZPaZQaZRaZSaZTaZUaZVaZWaLkaLkaLwaZXaSAaZYaSAaSBaVtaZZaVvaSCaUjaVAaVAbaababaLBaVDaVDaVDbacbadbadaXgbaeaLBaRraXjaUwaUwaUwaUwaXmaRraKibafbagbahbaibajbakbalbalbamaRwaRwaRwaRwbanaUEaUEaUEaUEaUEbaobapbaqbarbasbatbaubavaRLbawaPcabhabhaaaabhabhaJcaThaMbaXzaXAaMbaXzaXAaMbaXBaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYRbaxaYUaYUbayaYUaYUaYUbazaYUaYUaYUbaAbaBazQbaCazSazSaWgbaDbaEbaFbaGbaGbaHbaIbaJaWjbaKaUUaZdbaLbaLbaLbaMbaNbaLbaObaPbaQbaRbaSbaSbaTbaUaSbbaVbaWbaXbaYbaZbbabaXbbbbbcbbdbbebbfbbgbbhbbibbjaZvaLkaLkbbkbblbbmbbnbbobbpaSsbbqbbrbbsbbtbbubbvbbvbbwbbxbbybbzbbAbbBbbCbbsbbDbbqaSsbbpbbobbEbbFbblbbGaLkaLkaVsaSBaSBaSAaSBaSBaSBbbHaSBbbIaSBbbJbbKaSBaSBbbLbbMbbNaVDaVDbbOaVDbbPbbQaLBbbRbbSaUwbbTbbTbbUbbSbbVbbWbbXbbYbbYbbZbcabcbaRwaRwbccaRwaRwaRwaRwbanbcdbcebcebcebcebcebcfbcgbchbcibcjbckbclaSZbcmaPcaaaabhabhabhaaaaJcaThaMbaXzaXAaMbaXzaXAaMbaXBaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYRbcnaXCaXCbcobcoaYUaYUaYUbcobcoaXDaBlaBlaBlaBnbcpbcqbcrbcsbctbctbctbctbcuaXGaWjbcvbcwaZdbaLbcxbcybczbcAbaLbcBbcCbcDaSbbcEbcFbcGbcHaSbbcIbcJbcKbcLbcKbcMbcNbcOaZvbcPbcQbcQbcRbcSbcTbcUaZvaOeaOebcVbcWbcWbcWbcWbcWbcWbcXbcYbcWbbubbwbcZbdabdabdbbdabdabdcbbybbBbddbdebdfbddbddbddbddbddbddbdgaOeaOeaLwbdhbdibdjbdkaSBaSBaSBbdlbdmbdnbdobdpbdqaSBaLBaLBaLBbdrbdsbdsbdsaLBaLBaLBbdtaUwaUwbdubdvbdwbdxbdvaKibdybdzbdAaHkbdBbdCbdDaYKaOSbdEaXqaYKbdFaEFbdGaHobdHaUEaUEbdHaHobdIaEFbdJbdKbdLaSYaSZaRMaPcaPcaPcaPcaPcaPcaJbaThaMbaXzaXAaMbaXzaXAaMbaXBaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXCaXDaXCaXCbdMaXCaXCaXDaXCaaaaBlbdNaRUbdOaWgaXIaYXaXIaXGbdPaXIbdQaXIaWjbdRbdSbdTbaLbaLbaLbdUbdVbaLbcCbdWbcCaSbbcEbcFbcGbcHaSbbcIbcJbdXbdYbcKbdZbcNbcOaZvbeabcQbcQbebbecbcQbedbeeaLkaLkbbkbcWbefbegbehbeibejbekbelbembenbeobdabdabepbeqbepbdabdaberbesbetbeubevbewbexbeybezbeAbddbbGaLkaLkaLwaLwaLwaLwaLwbeBaVsbeBbeCaLwaLwaLwaLwaLwaLwaLBbeDbeDbeDbeDbeDbeDbeEbeDaLBbdvbeFbeFbdvbdzbdzbdzbdzaKibdybdzbdAaHkaHkaHkbeGaHkbeGaHkbeGaHkaHkaEFaEFbeHbeHbeHbeHbeHbeHaEFaEFbeIaSZbeJaSYaSZaSZbeKaTbaTbaTbaTbaWbbeLaMbbeMaMbaMbaMbaMbaMbaMbaWeaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhaxeaxeaBlaBlaBlaBlaBlaBlaBlaBlaxeaxeaytazSazSaWgaWgaWhaWgaWgaWgaWgaWiaWgaWjbeNbeObePbaLbcxbeQbdUbeRbaLbeSbeTbeSaSbbcEbcFbcGbcHaSbbcIbcJbcKbeUbeVbeWbcNbcObeXbcTbeYbeZbfabfbbcQbedbfcaLkaLkbbkbfdbfebejbffbfgbfgbfhbfibfjbenbfkbdabdabepbflbepbdabdabfmbesbfnbfobfpbfqbfrbfsbeAbftbddbbGbfubfvaJEbfwbdzbdzbdzbdzbdzbdzbdzbdzbfxbdzbdzbdzbdzbfybdzbdzbdzbdzbdzbdzbdzbdzbfwbdzbdzbdzbdzbdzbdzbdzbfzbfAbfBbfCbdzbfDbdzbdzbdzbdzbdzbdzbdzbdzbdzbfybfEbdzbdzbdzbdzbdzbdzbfwbfFaVZaSZbfGbfHbfIbfJaPcaPcaPcaPcaPcaUIaJbaJbaJbbfKaJbaPeaJcbfLaJcaJcaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBlaywayxayxayxayxayxayxayxayxaywayxbfMazUazUbfNbfObfPbfQbfQbfQbfRbfSbfTaRZbfUbfVbfWbaLbaLbaLbfXbfYbaLaSbaSbaSbaSbbcEbcFbfZbgaaSbbcIbcJbcKbgbbgcbgdbgebgfbggbghbghbghbgibgjbcTbgkaZvbglaPNbbkbgmbgnbejbgobgpbgqbgrbgsbgtbenbgubepbdabgvbgwbgvbdabepbdcbesbgxbfobfpbfqbgybfsbeAbeAbddbgzaLkaLkaJEbfwbdzbdzbdzbdzbdzbdzbdzbdzbdzbgAbdzbdzbdzbdzbdzbgBbbYbbYbbYbbYbgCbdzbfwbdzbdzbdzbdzbdzbdzbgDbgEbgFbgGbgHbgHbgHbgIbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgJbgKbgLbgMbgMbgNaSYbgOaSZbgPaTbaTbbgQaTbbgRbeLbgSbgSbgSbgTaJbaQvaQuaQubgUaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaBlazRazSazRaBrazSazSbgVazRazSazRaBrazSazSazSbgWbgXbgWbgWbgWbgWbgYbgZaRZaRZaRZbhaaZdbaLbcxbhbbhcbeRbaLbhdbhebhdaSbaSbaSbbhfbhgaSbbcIbcJbhhbhibhjbhkbcNaRZaZvaZvaZvaZvaZvaZvaZvbhlaZvbhmaLkbbkbgmbhnbejbgobhobhpbgrbgsbejbenbhqbhrbdabhsbhtbhubdabhvbhwbesbhxbhybhzbhAbhBbhCbeAbhDbddbhEbhFbhGaJEbfwbdzbdzbhHbdzbhIbhJbhJbhJbhJbhKbhJbhJbhLbdzbdzbdzbdzbdzbhMbhNbhObhPbfwbdzbdzbdzbdzbdzbhQbhRbhSbhTbhUbdzbdzbdzbdzbdzbhVbhWbdzbdzbdzbdzbdzbdzbdzbdzbdzbdzbdzbdzbdzbfwbhXbhYbhZbiaaSYaSZaRMaPcaPcaPcaPcaPcaPcaJbbgSbgSbgSbgSaJbaQuaQuaQubibaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaytaBlbicaBlaBnazSazSaBoaBlbidaBlaBpbiebifbifbgWbigbihbiibijbikbgYbilbimbinbinbiobipbaLbaLbaLbiqbirbaLaRZaRZaRZaRZbisbitbiubivbitbiwbcJbixbiybcKbcMbcNbizbcNbiAbiBbiBbiBbiBbiCbiDbiEbiFaLkbbkbcWbejbiGbiHbiIbiJbiKbgsbiLbiMbbvbiNbiObiPbiPbiPbiQbiRbbAbiSbiTbiUbiVbiWbiXbiYbeAbiZbddbbGaLkaLkbjabjabjabjabjabjabjabjbbjcbjcbjcbjdbjebjbbjfbjfbjfbjfbjfbjgbjgbjgbjhbjgbjgbjgbjgbjibdzbhVbjjbjkbjlbjmbdzbdzbdzbjnbjnbjobjobjobjobjobjpbjqbjqbjqbjrbjqbjsbjtbjqbjqbjubjvbjvbjvbjvbjwbjxbjybjzaPcabhaaaaaaaaaaaaaJbbjAbjAbjBbjBaJbaQvaQuaQubgUaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaCraxeaCsazQaBlaCtaCubjCbjDaBlazQaCsaBlaxeaCraytbgWbjEbjFbjFbjFbjGbjHbjIbjJbitbitbjKbjLbaLbcxbjMbiqbjNbaLbjObjOaUUbjPbjQbjRbjSbjTbjTbjUbjVbjWbcLbjXbjYbcNaUUbjZbkabiEbkbbkcbkdbkebkfbkgbkhbkibkjbcWbkkbklbkmbknbkobkpbgsbkqbcWabhbkrbksbksbksbksbksbktabhbddbkubkvbkwbkxbeAbkybeAbkzbddbbGaLkbkAbjabkBbkCbkDbkEbkFbjabkGbkHbkHbkHbkIbkJbkJbkKbkLbkMbkNbjfbkObkPbkQbkRbkPbkSbkTbjgbjkbkUbjkbjkbjkbkVbkWbkXbkYbkXbkZbkZbjoblablbblcbjobldblebldbjoblfblgblfbjvblhbliblhbjvbljblkbjvbllblmaPcaPcaPcabhabhaaaaaaaaaaJbaJbblnblnblnblnblnblnblnaJbaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaabhabhabhabhaBlbloaBlaBlaBlaBlaBlaBlblpaBlabhabhabhaaabgWblqbgWblrbjFblsbltbgWaUUaWkblublvblwblxblxblxblxblxblxblyblzblAblBblCbcNbcNbcNbcNbcNbcNbcNblDblEbcNbcNbcNblFblGblHblIblJblKblJblLblMbiFaLkblNbcWblObklbklbklbklbkpbgsblPbcWabhbkrbksblQblRblSbksbktabhbddblTbfoblUblVbeAbiYbeAbeAbddbbGaLkaLkbjablWblXblYblYblZbmabkJbmbbkJbkJbkIbkJbkJbkKbmcbmdbmebjfbmfbkPbmfbmgbmfbmhbkPbjgbmibmibmjbmkbjkbmlbkWbmmbmnbmobmpbmpbjobmqbmrbmsbmtbmubmvbmwbjobmxbmybmzbjvbmAbmBbmAbmCbmDbmDbjvbmEblmaaaabhaaaabhaaaaaaaaaabhaaaaJbbmFbmFbmFbmFbmFbmFbmFaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGaaaaaaaaaaaaaaaaaabmGbmHbmGbmGbmGbmGbmGbmGbmIbmGaaaabhabhaaabgWbmJbmKbmLbmMbmMbmNbmObmPbmQaRZbmRbmSbmTbmTbmTbmUbmUbmUbmUbmUbmUbmVbmWbcNbmXbmYbmZbnabnbbncbndbnebcNbnfbngbnhbiEbiEbnibnjbnkbnlbnmbnnbnobnpbbkbnqbnrbnsbntbnubklbnvbgsbcWbcWabhbkrbksblRbksblRbksbktabhbddbddbnwbfpbnxbeAbnybnzbnAbddbbGaLkaLkbjabnBblXbnCbnDbnEbnFbkJbnGbnHbnIbnJbnKbnLbkKbnMbnNbnObjfbmfbkPbmfbmgbmfbmhbnPbjgbnQbnRbnSbnTbjkbkVbkWbnUbnVbnVbnWbnXbnYbnZboabobbmsbmsbmsbocbjobodboebofbjvbogbmDbmDbohboibojbjvbmEblmbokbokbokbokabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabolbmGbmGaaaaaaaaaaaabmGbmGbombombonboobombombombombmGaaaabhabhaaabgWbopbgWboqborborbosbgWbotbotaRZboubovboubouboubovbouaRZaRZbcNbcNblEbowbcNbnbbnbbnbbnbbnbbnbboxboybozboAboBboCboDboEboFboEboGboHboIblMbiFboJboKboLboMboNboOboPbklbkpbgsbcWabhabhboQboRblSboSblQboTboUabhabhbddboVboWbddbddbddbddboXbddboYaLkaLkbjaboZbpabpbblYblZbpcbkJbpdbpebpfbpgbphbpibjfbpjbpkbplbjfbmfbkPbmfbmgbmfbmhbkPbjgbjkbjkbjkbjkbjkbkVbkWbpmbpnbpobppbpqbprbpsbptbpubpubpvbmsbpwbjobpxboebpybjvbpzbpAbpBbpCbpDbpEbjvbmEbpFbpGbpHbpIbpJaaaaaaabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbpMbmGaaaaaabmGbmGbmGbombombombombombombombpNbmGbmGbmGabhaaabgWbpObmKbpPborbpQbpRbgWaaaaaaaaabpSbpSbpSbpSbpSbpSbpSaaaaqzbpTbpUbpVbpWbpXbpYbnbbnbbnbbpZbnbbnbbqabqbbqcbnjbqdbqebqfbqgblMbqhbiEbiEbiEbqibqjaOebnqbqkbqlbqlbqlbqlbqmbqnbqoabhaaabkrbqpbksbksbksbqqbktaaaabhbddbqrbqsbqtbqubqvbqwbqxbqwbqyaLkbqzbjabqAbqBbqCbqDbqEbjabqFbpdbpebqGbqHbkJbqIbjfbqJbqKbqLbjfbqMbqNbqObqPbqQbqRbqQbqSbqTbqUbqTbqTbqTbqVbkWbqWbmnbqXbqYbqZbrabrbbrcbrdbrdbrebrfbrgbjoblfbrhbribjvbrjbrkbrlbrmbmDbrnbjvbrobrpbrqbrrbrrbrrbrrbrrbrrbrsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbrtbpMbmGbmGbmGbrubmGbrvbombombombombombombombrwbrxbryabhaaabgWbrzbmKbmKbmKbgWbgWbgWaaaaaaaaabpSbrAbrAbrAbrAbrAbpSaqzaqzbpTbrBbrCbrDbrEbrEbrEbrEbrEbrEbrEbrEbrEbrFbrGbrHbrIbrJbrKblMbrLblJbrMblJbrNbiFbrObrPbnqbnqbqobrQbrRbrSbrTbrUbqoaaaaaabkrbrVbrWbrXbrWbrYbktaaaaaabddbrZbsabsbbqwbscbqwbqxbqwbqyaLkbsdbjabsebqBbsfblYbsgbjabshbsibsjbskbslbkJbsmbjfbkKbsnbsobjfbjgbspbjgbsqbsrbssbstbstbstbstbstbstbstbsubsvbswbpnbpobsxbsybszbsAbsBbsBbsBbpvbmsbsCbsDbsEbsFbsGbsHbsIbsJbsKbsLbsMbsNbjvbsObsPbsQbsRbsRbsRbsRbsRbsSblmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbrtbrtbmGbmGbrubombmGbrvbombombombombombrubmGbmGbmGbmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbpSbsTbpTbpTbsUbrCbndbnbbsVbsVbsVbsVbnbbnbbnbbnbbsWbsXbsYbsZbtabtbbtcbtdbteblJblJbrNbtfbtgbthbtibtjbtkbtlbtmbtnbtobtpbqoabhaaabkrbtqbtrbtrbtrbtsbktaaaabhbddbttbtubtvbqwbtwbqwbqxbqwbtxaLkbsdbjabtybqBbtzbtAbtBbjabtCbpdbkIbskbtDbtEbshbshbtFbtGbtHbtIbtJbtKbtLbtMbtNbtObtPbtQbtRbtSbtTbtUbtVbkVbtWbtXbtYbtZbuabubbjobucbsBbsBbudbpvbmsbuebufbugbuhbuibsHbujbukbulbumbmDbunbuobupbjvbuqbuqbuqbuqbuqbuqbmEblmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaburbmGbpMbrtbusbombutbombmGbrubuubombombombrubmGbrubuvbuvbrubmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbuwbuxbuybuxbuzbuAbuBbuCbuDbnbbnbbnbbnbbnbbuEbcNbcNbuFblJbuGbuHbuIblMbuJblJbuKblJbuLbqybrObuMbuNbuObuPbuQbuRbuSbtobuTbqoaaaaaabkrbuUbuVbuWbuVbuXbktaaaaaabuYbuZbvabuYbuYbuYbuYbvbbuYbvcaOebvdbjabjabvebvfbvgbjabjabvhbvibvjbkJbkJbkJbkJbkJbvkbvlbvmbvmbvmbvnbvmbvobtNbtObvpbvqbvrbvsbvtbvubtVbvvbvwbvxbvybvybvzbvAbjobvBbmsbmsbvCbpvbmsbvDbvEbvFboebvGbsHbsHbvHbvIbvJbvHbsHbjvbjvbjvbvKbvLbvMbvNbvObuqbvPblmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbombombombrubmGbmGbmGbmIbmGbmGbrubombvQbvQbvRbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbvSbvTbvUbvVbvWbnbbndbnbbsVbsVbvXbsVbnbbnbbvYbvZbcNbwablJbuGbuHblJbwbblJblJbwcblJbuLbqybwdaLkbuNbwebwfbwgbwhbwhbwibwjbqoabhabhbwkbwlbwmbwnbwobwpbwqabhabhbwrbwsbwtbwubwvbwwbwxbwybuYbwzaLkbwAbwBbwCbwDbwEbwFbwGbwHbwIbwJbwKbwLbwLbwLbwLbwLbwMbwNbwLbwLbwLbwObnLbwPbwQbtObwRbwSbwTbwTbwUbtUbtVbkVbkWbwVbwWbwXbwYbwYbjobwZbxabxbbsDbxcbmsbxdbsDbxebxfbxgbxhbxibxjbxkbxlbxmbxnbxobxpbxqbxrbxsbxsbxsbxtbxubxvblmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbrubombmGbombombombombombombombombrubmGbombombombombombxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbxxbpSbsTbpTbpTbxybnbbndbnbbnbbnbbnbbnbbnbbnbbvYbxzbcNbxAbxBboFbxCboEbxDboEbxEblJbxFbrNbxGbwdaLkbuNbuObqobxHbxIbxJbxKbxLbqoaaaaaaabhbkrbxMbxNbxMbktabhaaaaaabwrbxObxPbxQbxRbxSbxSbxTbxUbxVbxWaPDbxXbxYbxZbyabybbycbydbycbycbyebyfbygbyhbyhbyhbyibkJbkJbkJbyjbykbykbylbtObtObtObymbynbyobvtbtUbtVbjlbkWbkXbkXbkXbkXbkXbjobsDbsDbsDbsDbypbyqbypbsDbyrbysbytbyubyubyubyvbywbyxbyybyzbyAbyBbyCbyDbyEbyFbyGbyHbyIbyJbokbyKbyKbokabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbmGbmGbmGbmGbmGbmGbmGaaabmGbmGbrubombombombmGbombombmGbmGbmGbyLbmGbombombmGbombombombombombxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbyMbvTbvUbvVbrBbyNboxbyObpYbnbbyNbnbbnbbnbbvYbyPbcNbyQblJbuGbyRbuJbySbyTblJblJbyUbrNbxGbwdbbkbuNbyVbqobyWbyXbyYbyZbrUbqoaaaaqzabhbzabzbbtrbzcbzdabhaqzaaabwrbzebzfbzgbzhbzibzjbzkbuYbzlaLkaLkbshbshbzmbznbvkbzobzpbzqbzrbzrbzqbzpbzqbzpbzqbzpbzqbzpbjebjebykbzsbwTbztbzubtObymbzvbzwbzxbzybtVbzzbzAbzBbzCbzDbyubyubzEbyubyubzFbzGbzHbzIbzJbyubzKbzLbzMbzNbzNbzNbzObzObzObzObzPbzQbzRbzSbzTbzSbzUbzSbuqbzVbzWbzXbzYbzZbokabhaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbrubombombombombombombombrubmGbmGbmGbrubombombombombxwbombombmGbAabAbbombmGbombombxwbombombombAcbAdbxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbAebAfbAgbAfbAhbAibAhbAhbAhbAhbAhbAjbAkbnbbvYbAlbcNbAmbAnbAobApbAqbArbAsbAsbAsbArbArbAtbwdaMEbAubuObqobAvbAwbAxbAybAzbqoaaaaaaabhbAAbABbwnbACbADabhaaaaaabwrbAEbAFbAGbAHbzibzjbzkbuYbAIaLkaLkbAJbAKbALbznbAMbANbzpbAObAPbAQbARbASbATbAUbAVbAUbAWbzpbkJbkJbykbAXbwTbAYbAZbBabBbbBcbBdbBdbBebBfbBgbBhbBibBjbBkbBlbBmbBlbBlbBnbBlbBlbBobBpbBlbBlbBqbBrbBsbzNbBtbBubBvbBwbBxbBybzPbBzbBAbBBbBCbBDbBAbBEbuqbzVblmbBFbBGbBHbokaaaaaaaaaaaaaaaaaaaaaabhbBIabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmIbombombombombombombombombombmIbombmIbombombombombombBJbombombmGbombombombmGbombombBKbombombombBLbBMbxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbpSbsTbpTbpTbpTbcNbpTbpTbpTbBNbBNbBNbBNbBObBPbBPbBNbBNbBQbBRbBSbBQbArbBTbBUbBVbBWbArbxGbwdaOdaLoaLobqobqobqobqobqobBXbqoaLgaLgaLgbBYbBZbxNbCabCbaLgaLgaLgbuYbuYbuYbuYbuYbuYbuYbuYbuYbAIaLkbCcbzpbzpbCdbCebzpbzpbzpbCfbAPbCgbAPbChbCibCjbCkbClbCmbChbkJbkJbykbCnbCobCpbCqbCrbCsbCtbCqbCqbCubCvbCwbCxbCybCybCybCybCzbCybCybCybCAbCAbCBbCCbCDbCDbvFbCEbvGbzNbCFbCGbCHbCIbCJbCKbzPbuqbuqbCLbCLbCLbuqbCMbuqbzVblmbCNbBGbCObokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbrubombombombombombombCPbrubmGbmGbmGbrubombombombombxwbombombmGbombCQbombmGbombombxwbombombombAcbAcbxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbCRbrAbrAbrAbCRbpSaqzaqzaqzaqzaqAaqzaqzaqzaqzbBNbCSbCTbCUbCVbCWbCXbBPbCYbCZbDabDbbAsbDcbDdbDebDfbArbxGbwdaLkaLkaLkbDgaOtaOsaOebDhbDibDjaZVaZVaZVbDkbDlbDmbDnbDoaLkaLkaLkaLkaOtaLkaOeaLkaLkaLkbDgaLkbAIaLkbDpbzpbDqbDrbDsbDtbDubzpbDvbAPbDwbAPbChbCibCibDxbDybDzbChbkJbDAbykbwTbDBbDCbDDbDEbDFbDGbDHbDIbtVbtVbjlbDJbCybDKbDLbDMbDNbDObDPbCybDQbDRbDSbDTbDUbCDbvFbCEbDVbDWbDXbDYbDZbEabEbbEcbzPbEdbEdbEdbEdbEdbEdbEdbuqbzVblmbEebzZbzZbokabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbmGbmGbmGbmGbmGbmGbmGaaabmGbmGbrubombombombmGbombombmGbombEfbEgbmGbombombmGbombombombombombxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbpSbEhbEhbEhbpSbpSaaaaaaaaaaaaabhaaaaaaaaaaqzbBPbEibEjbEkbElbEmbEnbEobEpbEqbErbEsbEtbEubDebEvbEwbArbxGbExaLkaLkaLkaLkaLkaLkbEyaLkbwdaLkaLkaLkaLkaLkbEzbEAbEBaLkaLkaLkaLkaLkaLkaLkaOeaLkaLkaLkaLkaPNbAIbECaLkbzpbEDbEEbEFbEGbDubzpbEHbAPbAQbEIbzpbEJbEKbELbEMbENbzpbkJbkJbykbykbykbykbykbtVbtVbtVbtVbtVbtVbEObkVbEPbCybEQbERbESbETbEUbEVbCybEWbEXbEYbEZbFabCDbvFbFbbFcbFdbFebFfbFfbFgbFhbFibzPbEdbEdbFjbFkbEdbEdbEdbuqbzVblmbCNbBGbFlbokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbrubFmbmGbombombmGbyLbmGbmGbmGbombombmGbAcbombombombombxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFnbFobFobFobFpaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzbBNbFqbFrbFsbFtbFubFvbFwbFxbFybFzbFxbFAbFBbFCbFDbFEbArbFFbFGboKboKboKbFHboKboKbFIboKbFJaLkbFKbFLaLkaOmbFMbFNbFObFPbFQbFRaZVaZVbFSaZVbFTbFUaZVbFVbFWbFXbFYaLkaLkbzpbFZbGabGbbzqbzqbzpbzqbGcbzqbzpbzpbzpbzpbzpbzpbzpbzpbkJbkJbkJbGdbGebzobGfbGgbGhbGibGjbGkbGgbGlbsubGmbCybGnbGobGpbGqbGrbGsbCybGtbGubGvbGwbGxbCDbvFbGybGzbzPbGAbGBbGCbGDbGEbGFbzPbEdbEdbEdbGGbEdbEdbEdbuqbzVbzWbGHbBGbBHbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbombombombombombombombombombmGbAcbombombombombmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzbBNbBNbBPbBPbBPbBPbBNbBNbGIbCZbDabGJbArbArbArbArbArbArbGKbGLaLoaLoaLoaLobGMbGMbGMbGMbGMbGMbGMbGMbGMbGMbGNaJEbGObGPbGPbGPbGPbGPbGQbGPbGPbGPbGPbGRbGSbGRaLpaMFbGTbzpbGUbGVbGWbGXbGYbzpbGZbAPbHabHbbHcbHdbHebHfbHgbHhbHbbHibkJbkJbkJbkJbkJbvkbHjbHkbHlbHkbHmbGgbHnbkVbHobHobHobHobHobHobHobHobHobHpbHpbHpbHpbHpbHpbHqbHrbHsbzPbzPbzPbzPbzPbzPbzPbzPbuqbuqbuqbuqbuqbuqbuqbuqbzVblmbHtbHubokbokabhabhabhabqabqabqabqabqabqabqabqabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabolbmGbpMbrtbusbombombombombombombutbombHvbmGbAcbombHwbombrubmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaqzaqzbHxaqzaqzaqzaqAaqzaqzbBQbHybHzbHAbHBbHBbHCbHDbHEbHFbHGbHHbGLaqzaqzaqAaqzbGMbHIbHJbHKbHLbHMbHNbHObHPbGMbHQbHRbHSbGPbHTbHUbHVbHWbHXbHYbHZbIabIbbIcbIdbGRbGRbGRbGRbzpbIebIfbIgbIhbIibIjbIkbIlbImbInbIlbIlbIlbIobAPbIpbIqbIrbyhbyhbIsbItbIubIvbHjbIwbIxbIybIzbGgbHnbkVbHobIAbIAbIAbIBbIAbIAbIAbHobICbICbIDbICbICbHpbIEbIFbIGbIHbIIbIJbIKbILbIMbINbIObIPbIQbIRbIIbISbITbIUbIUbIVbIWbIXbIXbokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbrtbrtbmGbmGbmGbmGbmIbmGbmGbxwbxwbxwbmGbmGbrubIYbrubmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsalsaltalsalsaqzaqAaqzbBQbBQbIZbJabJbbFxbJcbJdbJebJebJfbJgbJhbJiaqAbJjbJkbJlbJmbJnbHPbJobHPbJpbHPbHPbHPbGMbJqbJrbJsbGPbJtbJubJvbJwbJxbJybJzbGPbGPbJAbJBbJCbJDbJEbJFbJGbJHbJIbJJbJKbJLbJMbJNbJObJPbJQbJRbJSbAPbAPbAPbJTbshbshbshbshbshbJUbJVbznbHjbJWbJXbHkbJYbGgbHnbkVbHobIAbIAbIAbIAbIAbIAbIAbHobJZbKabKbbKcbKdbKebKfbKgbIGbKhbKibKjbKjbKjbKjbKjbKjbKkbKlbKmbIIbokbKnbKobKpbKpbKqbKrbKiabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbKsbKtbKsabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbrtbpMbmGbmGbmGbmGbombombombKubombombombombrubmGbmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsbKvbKwbKvalsbKxbKxbKxbBQbKybKzbCZbKAbKzbKBbBQbGLbKCbGLbGLbKDbKEaqzbKFbKGbKHbKIbHPbHPbKJbHPbKKbKLbKMbHPbGMbJqbJrbKNbGPbKObKPbKQbKRbKSbKTbKUbGPbEObKVbKWbKXbKWbKYbKZbJQbLabLbbLcbAPbAQbzpbLdbLebLfbzpbLgbAPbAPbAPbAPbLhbshbLibLjbLkbLlbLmbLnbLobLpbLqbHkbLrbLsbLtbLubLvbHobIAbIAbLwbIAbIAbIAbIAbHobLxbLybLybLzbLAbLBbLCbLDbIGbLEbLFbKjbKjbKjbKjbLGbLHbLHbLHbLHbLIbLJbLKbLLbLMbLNbLObLPbKiabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbKtbKsbLQbKsbKtabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbpMbmGaaaaaabmGbmGbrubLRbombombombombombombuvbmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaltaofbLSaofaltbKxbLTbLUbBQbLVbKzbLWbKzbLXbKBbBQbLYbLZbMabGLbKDbKEaqAbKFbMbbMcbMdbMebMfbMebMebMgbMhbMibMibMjbMkbMlbMmbGPbGPbGPbGPbGPbMnbMobGPbGPbMpbMqbMrbMsbMtbMubMvbzpbMwbMxbMybMzbMAbzpbMBbMCbMDbzpbMEbMFbMGbMHbMIbMJbshbMKbMLbvmbMMbvmbMNbMObMPbMQbMRbMSbMTbGgbHnbkVbHobHobMUbIAbIAbMVbMUbHobHobMWbMXbMYbMYbMZbHpbNabNbbIGbNcbKibKjbKjbNdbNebNfbKjbKjbNgbNhbNibNjbNkbNlbNmbNnbNobNpbKiabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbNqbKtbNrbNsbNtbKtbNqabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaburbmGbmGaaaaaaaaaaaabmGbmGbmGbrubombNubombombrubmGbmGaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsaofaofaofbNvbNwbKzbKzbNxbLVbKzbNybKzbKzbKBbBQbNzbMabNAbGLbKDbKEaqzbKFbNBbNCbNDbHPbHPbNEbHPbNFbNGbNHbNIbGMbNJbNKbNLbNMbNNbNNbNNbNNbNObNPbNNbNNbNQbNRbNSbNTbNUbNVbNWbIjbIjbIjbIjbIjbIjbIjbIjbIjbIjbNXbNXbNXbNXbNXbNXbNYbNZbshbshbshbshbOabObbpdbGgbGgbGgbGgbGgbGgbHnbkVbHobOcbOdbOebOfbOgbOhbOcbHobMWbMXbMYbMYbMZbHpbOibOjbIGbOkbIIbOlbOmbOnbOobOpbOqbKjbOrbOsbIIbOtbOubOvbIXbOwbOxbOxbIXabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhbKtbKtbOybOzbOzbOzbOAbKtbKtabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbmGbmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaltbLSbLSbLSaltbKxbOBbOCbODbOEbKzbOFbOGbOHbOIbBQbGLbGLbGLbGLbKDbOJaqAbOKbJkbOLbJmbOMbHPbONbHPbHPbHPbOObOPbOQbORbOSbOTbOUbOVbOVbOVbOVbOWbOVbOXbOYbOZbPabPbbPcbPdbPebPfbqTbPgbqTbqTbqTbqTbqTbqTbqTbqTbqTbqTbqTbqTbqTbPhbPibshbMKbPjbLmbPkbLmbLnbPlbPmbPnbPnbPobPpbPabPbbPqbHobPrbPsbPtbPubPvbPwbPxbHobHobHobHobHobHobPybPzbPAbPBbPCbIIbIIbIIbIIbIIbIIbIIbPDbKjbKjbIIbokbKnblmbIXbPEbPFbPGbPHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPIbPJbPIbOzbPKbOzbPLbPMbKsabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsapmbPNbPOalsbKxbKxbKxbBQbBQbKxbKxbKxbBQbBQbBQbPPbGLaqzbPQbPRbKEaqzaaaabhaaabGMbPSbPTbPUbHPbPVbPWbPXbPYbGMbPZbQabQbbQcbQdbQebQfbQgbQhbQdbQdbQdbQdbQdbQibQjbQdbQdbQkbQdbQlbQdbQdbQdbQdbQdbGRbGRbGRbGRbGRbGRbGRbGRbQmbHnbshbQnbQobQpbQqbvmbQrbQsbQtbQubQubQvbQubQubQwbQxbHobQybQzbQAbQzbQzbQzbQBbQCbQDbQEbQFbQGbQHbQIbQJbNbbIGbQKabhbQLbQMbQNbQObQPbQObQQbQRbQSbIIbQTbzVbQUbIXbIXbIXbIXbIXabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhbKtbKtbQVbOzbOzbOzbQWbKtbKtabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsalsbQXalsalsaqzaqzaqzaqAachaqAaqzaqAachaqAbPQbMabPQaqAbPQbKDbKEaqAabhabhabhbGMbGMbGMbGMbGMbGMbGMbGMbGMbGMbQYbQabQZbRabQdbQebQfbQgbQhbRbbRbbRcbRdbRebRfbRgbRhbRibRjbRkbRlbRmbRnbRobRpbRqbRrbRsbRsbRsbRsbRsbRtbGRbQmbRubRvbRvbRvbRvbRvbRwbRxbRybRvbRvbRvbRvbRvbRvbRubRzbRAbRBbRCbRDbRCbREbRCbRFbRGbRHbRGbRGbRGbRGbRIbRJbRKbIGbQKabhbQLbRLbRMbRNbRObRPbRQbRRbRSbIIbRTbzVbpFbokbRUbRVbokabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaabhabhbNqbKtbRWbRXbRYbRZbNqabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaqzaqzaqzaqzaqzaqzbGLbGLbGLbGLbPQbPQbPQbGLbGLbGLbGLbGLbGLbGLbKDbKEaqzaaaaaaabhbSabSbbSbbScbSdbSebSebSfbSfbSabJqbQabQZbSgbQdbShbSibSibSjbSkbRbbSlbSmbSnbSobSpbSqbSrbSsbStbSnbSubSnbSvbSwbSxaqAbSybSybSybSybSybSzbGRbQmbSAbSBbSCbSDbSEbRvbSFbSGbSHbRvbSIbSJbSKbSJbSIbSAbSLbSMbSNbSObSNbSPbSQbSNbSRbSNbSSbSNbSTbSNbSNbSUbSVbSWbSXbQKabhbQLbRLbSYbQObSZbQObTabTbbTcbIIbzZbzVbpFbokbzZbzZbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbKtbKsbTdbKsbRZabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabTebGLbGLbGLbNAbTfbGLbTgbMabThbNzbGLbTibPPbTjbTkbMabKDbKEaqzaqzaqzaqAbSabTlbScbScbScbTmbSebSebTnbSabTobQabTpbTqbTrbTsbTtbTubTvbTwbTxbTtbTtbTtbTybTzbTAbTBbTCbTDbRpbTEbTFbTGbTHbTIbRrbTJbTKbTLbTMbSybSzbTNbQmbRubTObSIbSIbTPbRvbTQbTRbTSbRvbSJbSIbSJbTTbTUbTVbkVbHobTWbTXbTYbTXbTZbUabUbbQzbUcbUdbUebUfbUgbUhbUibUjbUibUkbUkbIIbIIbIIbIIbIIbIIbIXbIXbIXbIIbzZbzVbUlbzZbzZbUmbokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbKsbKtbKsabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzaqzbTebUnbUobUpbUqbUrbUsbUtbMabMabUubGLbMabMabMabMabMabPRbKEaqzaqAbUvbUwbUxbUybUybUzbUybUAbUBbUCbUCbUDbUEbQabJrbUFbUGbUHbUIbUJbUKbULbUMbUJbUNbUJbUObUPbUQbRibURbUSbUTbUUbUVbUWbUXbUYaqAbUZbVabTMbVbbSybSzbTNbQmbRubVcbVdbSIbVebRvbVfbVgbVhbRvbSIbSIbVibSIbSIbRubQmbHobUhbUhbUhbUhbVjbVkbVlbVmbVjbUhbUhbUhbUhbUhbVnbVobVpbVqbVrbVsbVtbVubVtbVvbVwbVxbVpbVybUkbVzbzVbpFbokbokbokbokaueabhabhabhabqabqabqabqabqabqabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbGLbGLbGLbGLbVAbMabGLbVBbUrbVCbUrbUsbUrbUrbUrbUrbUrbVDbKEaqzaqAbVEbVFbVGbVHbVIbVIbVIbVIbVIbVIbVJbVKbVLbVMbJrbRabVNbVObVPbSnbVQbVRbVSbVTbVUbVVbVWbVXbVXbVYbVZbRpbWabWbbWcbWdbWebWfbWgbTJbWhbTMbTMbSybSzbTNbQmbRubWibWjbWkbRwbRvbRvbWlbRvbRvbWmbWmbWnbWmbWmbRubQmbHobWobWpbWpbWqbWrbQzbWsbWtbWubWvbIAbIAbIAbUhbWwbVpbVobWxbWybVsbWzbWAbWBbWCbUibVpbWDbVpbUkbHtbWEbWFbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqAaqAbGLbWGbWGbWHbGLbWIbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWKbMabKDbOJbGLbGLbOJbWLbSabWMbScbScbScbWNbWObWPbWQbSabWRbWSbJrbRabWTbWUbWVbSnbSnbWWbRbbWXbWYbWZbXabSnbSnbRibXbbXcbXdbXebXfbXgbXfbXhaqAbSybSybSybSybSybSzbGRbQmbRubSIbXibXjbXkbXlbXmbXnbXobXpbSIbSIbSIbSIbXqbRubQmbHobIAbXrbIAbXsbXtbQzbXubQzbXvbXwbIAbXrbIAbUhbXxbVpbVpbVobXybXzbXAbXBbXCbXDbVwbXEbVpbXFbUkbVwbXGbXHbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbUqbUrbUrbUrbXIbWJbXJbXKbWJbXLbXMbXNbXObXPbWJbXQbJebXRbXSbXTbJebXUbWLbSabSabSabSabSabSabSabSabSabSabXVbXWbJrbXXbQdbXYbXZbVSbYabVSbRbbSnbSnbSnbXabYbbYcbYcbYdbYebYfbTEbYgbYhbYibTIbRrbTJbYjbYkbYkbSybSzbGRbQmbYlbYmbYmbYmbYnbYobSIbYpbXjbYqbXjbXjbXjbXjbYrbRubQmbHobIAbIAbIAbYsbYtbWtbYubQzbYvbYwbWpbWpbYxbUhbYybYzbVpbVobYAbVsbWBbYBbXzbYCbVwbYDbYDbYDbUkbYEbXGbXHbokabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbWIbGLbGLbGLbWJbWJbYFbWJbWJbYGbYGbYGbYGbYHbYIbYJbYKbYLbYMbYMbYMbYMbYNbYObYObYObYPbYObYQbYRbYRbYSbGLbWRbYTbJrbYUbYVbYWbYXbYcbYcbYYbYZbYcbYcbZabZbbZcbSnbZdbZebZfbZgbSnbZhbZibZjbUYaqAbUZbZkbZlbZmbSybSzbTNbZnbZobZobZobZpbRubZqbSIbZrbZsbZtbZubZvbZvbZvbZwbRubQmbHobUhbUhbUhbUhbZxbZybXubZzbZxbUhbUhbUhbUhbUhbZAbZBbVobVpbZCbZDbZDbZDbZDbZEbUibYDbYDbZFbUkbZGbXGbXHbokbokbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbWIbZHbZIbTjbWJbZJbZKbZLbZMbZNbZObZPbZPbZQbZNbZRbZSbZTbZTbZTbZTbZTbZTbZTbZTbZUbZUbZUbZUbZUbZVbZWbGLbWRbYTbJrbYUbZXbZYbZZcaabVXcabcacbVXbVXcadcaecafcagcahcaicajcakbSnbZhcalcambWfbWgbTJcanbYkbYkbSybSzbTNcaobGRbGRbGRbkVbRucapbSIbSIcaqcarcascatbZvcatcaubRubQmbHobWobWpbWpcavbWrbQzcawbWtcaxcaybIAbIAbIAbUhcazcaAcaBbVocaCbVobVpbVpcaDcaEbVwbYDbYDbYDbUkbZGbXGbXHbzZbzZbokabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbPQbWIbMabMabMabWJcaFcaGcaHcaIcaJcaKcaLcaMcaKcaNcaObZSbZTcaPcaQcaRcaScaTcaUcaPcaVcaWcaXcaYbZUbZUbZWbGLcaZbYTbJrcbacbbcbccbccbdcbecbecbecbecbecbfcbgbRbbRbbRbcbhbSnbZfbSnbZhbZicbibUYaqAbSybSybSybSybSybSzbTNcaocbjbEObEObkVbSAcbkcblcbmcbncbocbpcbqbZvcbqcbrbRubQmbHobIAcbsbIAcbtbXtbQzbXubQzbXvcbubIAcbsbIAbUhcbvcbwcbxcbycbzcbAcbBcbBcbCcbDbUicbEbZDcbFbUkbYDbXGcbGbokbzZbokbokbokabqabqabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqAaqAbGLcbHbMabMabMabWJbWJbWJbWJbWJcbIcaKcbJcbKcaKcbLcaObZSbZTcaPcbMcbNcbOcbPcbQcaPcbRcbScbTcbUcbVbZUbZWbGLbWRbYTbJrcbWcbXbQdcbYcbZcbeccaccbccccbeccdbXaccebRbccfcakbSncaiccgcchbYhccibTIbRrbTJccjcckcclbSybSzbGRcaobGRccmccnbkVbRuccoccpccqccrccsccpcctbZvcctbTTbTVbQmbHobIAbIAbIAccuccvbWtbYubQzbYvccwbWpbWpbYxbHobUkccxccycczbUkbUkccAccBccCccDccEccFccGccHbYDbYDbXGbXHbokccIbokccJbokabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLccKbGLbGLbMabWJcaFccLccMccNccOccPccQccRccSbYGcaObZSbZTccTccUccVcbOccWccTccTcbRccXccYccZcdabZUbZWbGLbWRbYTcdbcdccdccddcdecdfcdgcdhcdicdjcbebSnbXacdkcdlccfcdmbSncaiccgbZhbZicdnbUYaqAbUZcdocdpcdqbSybSzbGRcaobGRbMtbMtbkVbRubRvcdrcdsbRvcdtbRvbRvbRvbRvbRvbRubQmbHobUhbUhbUhbUhbZxcdubXucdvbZxbUhbUhbUhbUhbHobXzcdwbXzcdxbXzbUkccAccBcdycdzcdAcdBbVocdCbUkbYDbXGbXHbokbzZbzZbzZbyKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbWIcdDbMabMabWJcdEcdFcdGbZMcdHcdIcdJcdKcdLbYGcaObZSbZTccTccTcdMcdNcdOccTcdPcdQcdRcdScdTcdUbZUbZWbGLcdVcdWcdXcdccdYcdZceacebceccedceecefcbecegcehccebRbccfceibSncejccgbZhcekcelbWfbWgbTJcemcckcckbSybSzbTNcaocenbGRceobkVcepbYmbYmceqbRvcercescetbGRceucevbHnbQmbHobWobWpbWpcewbWrbQzcawbWtcexceybIAbIAbIAbHocezbXzbXzbXzbXzbUkceAceAceBceCbVwbVwbVobVwbUkbVwbXGbXHbokceDceEceFbyKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsacsacsacsacsacAacsacsacsacsacsaaaaaaaaaaqAaqzaqzbGLbWIbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJceGceHcaObWJcaObZSbZTceIceJceKceLceMceNceOcePceQceRceSceTbZUceUceVceWceXceYcdcceZcfacfbcfccfdcfecffcfgcfhbTDcfibRbbRbbRbcfjbSncfkcflbZhbZibSnbUYaqAbSybSybSybSybSycfmcfncfocfpbGRcfqcfrcfsbZocftcfubGRcfvcfwcfxbGRcfybQubQwcfzbHobIAbXrbIAcfAbXtbQzbXubQzbXvcfBbIAbXrbIAbHocfCbXzcfDcfEcfFcfGcfHcfIcfJcfKbVwbVobVocfLbUkbHtcfMcfNbokcfOcfPbzZbyKaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaabhaaaabhaaaadIaaaabhaaaabhaaaacsabhabhabhaqAaqAaqAbGLbWIbWJcfQcfRcfScfTcfUcfVcfWcfXbYGcfYcfZcgabWJcgbbZSbZTcgcccTcaPcaPcaPccTcgdcgecgfcggcghcgibZUbGLbGLcgjcgkcglcdccdccgmcgncgocgpcgpcgpcgpcbebSncgqcgrcgscgtcgucgvcgwcgxcchbYhcgybTIbRrbTJcgzcgAcgAbSyaqAbTNbEOcgBbGRbGRcgCbDJbGRcgDcgEbGRbGRcgFbGRbGRcgEcgGbLucgHbHobIAbIAbLwcgIcgJbWtcgKbQzbYvcgLbWpbWpbYxbHobXzbXzcgMbXzbXzbUkceAceAcgNcgObVwcgPcgQcgQbUkbzYcfMbXHbokbokbokbzZbokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacgRcgScgTaaacgRcgScgTaaacgRcgScgTaaaacsaaaaaaaaacgUcgUcgUcgUcgVbWJcgWcgXcgYbWJcgZchachachbchccdJcdKchdbWJchebZSbZTccTchfchgcaPchhccTccTcbRchicbUchjchkchlchmchnchochpchqchrchschtchuchvchwchxchychzchAchBchCchDbVXchEchFbYbchGbYgbWabZichHbUYaqAbUZchIchJchKbSyaqAbGRbGRchLchMchNcgCchObGRcgDchPchQchRchSchTchQchUchVblmchWbHobHobHobHobHobHobQzchXchYbHobHobHobHobHobHobUkbUkbUkbUkbUkbUkchZchZciacibbUkbUkbUkbUkbUkbokcicbXHbokcidciebzZbokabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcgRcifcgTaaacgRcifcgTaaacgRcifcgTabhabhaaaaaaaaacgUcigcihbMabWIbWJciicijcikbWJcilcimcinciocipciqcirciscitciucivbZTcaPciwcixcaPciycizcaPcbRciAciBciCciDciEciFciGciHciIciJciKciLciMciNciOciPciQcgnciRchAciSbSncgqbYbciTciUciVciWciXbRociYciZbWfbWgbTJcjacgAcgAbSyaqAbGRbEOcjbcjccjdcjecjfbGRcjgcjhcjichVcjjchVcgGcjkcjlblmcjmbHocjncjocjocjpcjqbQzchXcjrbHoabhabhabhabhbokcjsbRVcjtcjucjubUkcjvcjvciacjwbUkcjxbzZbzZbzZbHtciccbGbokcjybzZbzZbokbokbokabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacgRcifcgTabhcgRcifcgTabhcgRcifcgTaaaabhabhabhabhcgUcjzcjAcjAcjBbWJcjCcjDcjEcjFcjGcjHcjIcjJcjKcjLcjMcjNcjFcjOcjPbZTcaPcjQcjRcjScjTcjUcaPcjVcjWcjXcjYcjZbZUckackbckcckdckeckfckgckhckickjckkcklckmcknckockpbSncgqckqckrbSnbSnckqckqckqbZickscktaqAbSybSybSybSybSyaqAbGRcfqckuckvckwckxckybGRbGRckzckAckBbHnckCckDbGRbGRblmcjmbHockEckFckFckGckHckIckJckKbHoabhaaaaaaabhbokbzZckLbBGckMckNbUkckOckOckPcjwbUkbokbokckQckRbHtcicbXHbzZbzZbzZckSbpHckTbpJabqabqabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhcgRcifcgTaaacgRcifcgTaaacgRcifcgTabhabhaaaaaaaaacgUckUbTkbTfbWIbWJckVckWckXbZMckYckZclaclbclccldcleclfbWJcgbbZSbZTbZTbZTbZTbZTbZTbZTbZTbZUbZUbZUbZUbZUbZUbGLclgbGLchAclhclhclhclicljclkclhcllclmclnchAbSnbUUclockqcgubVVbSnbSvbZcckqbZickqbQdaqAaqAaqAaqAaqAaqAaqAclpclpclqclrclsclpclpclpcltcluclvckBclwckBckBbGRclxbDJcjmbHobHoclyclybHobHoclyclzclybHoaaaaaaaaaaaabokbokcicclAbokbokbUkbUkbUkclBclCbUkbHtbokceFbzZclDciccfNbokbokclEbokbokbokbokabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsabhaaacgRcifcgTaaacgRcifcgTaaacgRcifcgTaaaabhaaaaaaclFclGclGclGclGclHbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJclIclJclKclLclMclNclNclNclNclNclNclNclNclNclOclOclNclPclQchAclRclSclTclUclVclWclhclXclYclZchAcmacmbbWccmccmdcmecmfcmccmgcmccmhckqbQdbQdbQdaqAaqzaqAaqAclpclpcmicmjcmkcmlcmmcmnclpcmobEOcmpcmqcmrcmscmtbPpbPpcmucmvbokaaaaqzaaaaaaaaaabhcmwabhaaaaaaaaaaqzaaabokcmxcmycmzcmzcmAcmBcmCcmDcmEcmFbokbokbokbokcmGbokcicbXHbokcmHcmIbzZbokaaaabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaaaaaaacmJaaaaaaaaacmJaaaaaaaaacmJaaaaaaabhclFclFclFcmKcmLcmMcmNcmObMabUqcmPcmQcmPcmPcmPcmPcmPcmPcmPcmPcmPcmPcmPcmRbYRcmScmTchAchAchAchAchAchAchAchAchAchAchAchAchAchAchAclhcmUclUcmVcmWcmXcmYcmZcnacnbchAcmacnccndcnecnfcngcnhcnibSncnjcnkcnlcnmcnncnoaqAaqzaqAcnpcnqcnrcnscntcnucnvcnwcnxclpbEObEOckBckBbDJckBchVbEObEObDJcnybokbokbyKbyKbokbokbyKcnzbyKbokbokbyKbyKbyKbokcnAcnBbrrcnCcnDcnEcnEcnEcnFcnGcnHcnIcnJcnKcnKcnKcnLcnMbokciebzZcnNbokaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcnOcnPcnPcnQcnRcnRcnRcnRcnRcnRcnRcnRcnRcnRcnRcnScnTcnUcnVcnWcnXcnYcnZcoacmPbXIbWKbGLbPQbPQbPQbPQbPQbPQbPQbPQbPQbGLbGLcobcoccodcoechAcofcofcogchAcohcoicojcokcolcomconcoocopcoqclhcorcoscotcoucovcowcoxcoycozchAbQdcoAbRicoBcoCcoDbRicoBbRicoEbRicoFbQdbQdbQdaqAaqAaqAbSzclpcoGcoHcoIcoJcoKcoLcoMclpcoNbEOchVchVcoOckBchVbEOcoPbDJcoQbYMbYMbYMbYMbYMcoRbYMcoScoTcoTcoTcoTcoTcoTcoUcoVbpFbokcoWcoXbokbokbyKbyKbokbokcoYcfMcoZbrrcpacpbcpcbokbokbokbokbokaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaaaaaaacpdaaaaaaaaacpdaaaaaaaaacpdaaaaaaabhclFclFclFcpecpfcpgclGbMabMabMabMabGLaaaaaaabhaaaaaaabhaaaaaaabhaaabGLbTfbGLcphcpichAcpjcpkcogcplcpmcpncpocppcpocpqcprcpscptcpnclhcpuclUcpvcpwcpxclhcpycpzcpAchAaqAcpBaqAbSzcpCcpBaqAbSzaqAcpDaqAcpDaqAaqAaqzaqAaqzaqAbSzclpcpEcpFcntcpGcpHcpIcpJcpKcpLcpMcpNchVbHnchVcpOcgGcjkcpPcpQcpQcpQcpQcpQcpQcpQcpRcpScpQcpQcpQcpQcpQcpQcpTcpUcpVbokcpWcfMbokaqzaqzaqzaqzbokbzZcfMcpXcpYcpYcpZcqacpYaaaabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsabhaaacgRcqbcgTaaacgRcqbcgTaaacgRcqbcgTaaaabhaaaaaaclFclGclGclGclGbWHbPPbMabMabGLbGLbPQcqccqccqccqccqccqccqcabhbGLbGLbGLcqdcqechAcqfcqgcogcplcqhcpocqicqjcqkcqlcpocpocpocpoclhcqmcqncqncqocqpclhcqqcqrchAchAbSycqsbUZcqsbSycqsbUZcqsbSycqtbUZcqubSyaqzaqzaqAaqzaqzbSzcqvcqwcnvcqxcnvcqycqzcqAclpcqBckBckBckBcqCckBckBckBbGRbGLbGLbGLbPQbPQbPQbGLbGLbPQbPQbPQbGLbGLbPQbPQbPQbGLcqDbokbokcqEcfMbokbokbyKbyKbokbokbzZcfMcqFcpYcqGcqHcqIcpYaaaaaaabhabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhcgRcqbcgTaaacgRcqbcgTaaacgRcqbcgTabhabhabhaaaaaaaaaaaaabqbGLbGLbGLcqJbMabGLcqJbNAcqccqKcqLcqMcqLcqNcqcaaabGLbTkbMacqOcqechAcqPcqPcqQchAcqRcqScqTcpocqUcqVcqWcqXcqYcqYclhcqZcracracrbcrccrdcrecrfcrgchAbSycrhcricrjbSycrkcrlcrmbSycrncrocrpbSyaqzaqzaqAaqzaqzbSzclpcrqcrrcrscrtcrucrvcrwclpcrxcrycrzcrAcrBcrCchVchVbEOcrDbMabPQaaaaaaaaaaaaaaaaaaaqzaaaaaaaaaaaaaqAaaabokcrEbHtbokcrFcrGcrHcmBcrHcrHcrHcrHcrIcrJcrKcpYcrLcrMcrNcpYabhaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacgRcqbcgTabhcgRcqbcgTabhcgRcqbcgTaaaabhabhabhaaaaaaaaaabqbUnbUobUpbMabMacrObMacrPcqccrQcrRcrScrTcrUcqcaaabGLbTjbMacqOcqechAcqPcqPcqQchAcrVcoocrWcrXcrYcrZcrWcoocrWcrWcoocsacsbcsccqhcsdcsecsfcsgcshchAbSycsicsjcsibSycskcslcskbSycsmcsncsobSyaqAaqAaqAaqAaqAbSzclpclpclpcspcsqcsrcsscstcsqcrxcsuchVcsvcswcsxcjlchVcsybGLbMabPQaaaaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaabokcszcmIbokcsAcsBcsBcsCcsBbrrbrrbrrcsDcsDcsEcpYcsFcsGcsHcpYabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcgRcqbcgTaaacgRcqbcgTaaacgRcqbcgTabhabhaaaabhabhaaaaaaabqbGLbGLbGLbGLbMabGLbGLbGLcqccsIcsJcsKcsLcsIcqcabhbGLchAcsMcsNcsOchAcqPcqQcqQchAcsPcsQcsQcsccqUcsRcsScsTcsScsScsUcsVcsWcsWcsXcsYcsYcsZctactbchAbSycsictccsibSycskctdcskbSycsoctecsobSyaqAaqAaqAaqzaqzcfmbRtaqzaqzctfcsqctgcthcticsqbEOctjctkbLuctlctmcgGctnctobGLcrDbPQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaabokctpbzZbokbokbokbokbokbzZbokabhaaaaaaaaaabhctqctqctrctqctqabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaaacgRctscgTaaacgRctscgTaaacgRctscgTaaaacsaaaaaaabhabhaaaaaaaaaaaaaaabPQbMabPQaaaaaacqccttctuctvctwctxcqccqccqcchActycsNctzchAchAchAchAchActActBcpocpocqUcsgcpocppctCctDctEcpocpocpocpoctFcpocqUctGctHchAbSybSybSybSybSybSybSybSybSybSybSybSybSyaqAaqzaqAaqzaqzaqzbSzaqzaqzctIcsqcsrctJcstcsqbGRctKcjkctLctMcjkctNbGRbGRbGLabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbokctObzZbzZbzZbzZbzZbzZbzZbokabhaaaaaaaaaabhaaactqctPctqaaaabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaabhaaaabhaaaabhaaaabhaaaabhaaaacsaaaaaaaaaabhabhaaaaaaaaaaaabPQbMabPQaaaaaacqcctQctRctSctTctUctVctWctXctVctYctZcuacubcuccudcuecufcugcuhcuicujcukculcumchAcunchAcunchAcumcuocpocpocupcqUcqVcuqchAchAchAchAchAcoocoocoocoochAaaaaaaaaaaaaaqzaqzaqAaqzaqzaqzbSzaqzaqzctIcsqcurcuscutcuuaqAbGRckzcuvbTNbTNbGRbGRaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbokcuwcuxcuycjxcuzbQTbRTbokbokabhaaaaaaaaaabhaaactqcuActqaaaabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsacAacsacsacsacsacsacsacsacsacsaaaaaaaaaaaaabhabhaaaaaaabhbPQbMabPQabhabhcqccuBcuCcuDcuEcuFcuGcuHcuIcuJcuKcuLcuMcuNcuNcuNcuOcuNcuPcuQcuRcuScuTcuUchAcuVcuWcuXcuWcuYchAcuZcpocvacvbcqUcvccuTcuTcvdcvecvfchAcvgcoocvhcvicvicviaaaaaaaaaaqzaqzaqAaqzaqzaqzbSzaqzaqzctIcsqcsqcvjcsqcsqaaaaqAaaacvkaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabokbokbokccIbokcqDbokbyKbyKbokbokaaaabhaaaaaaaaaabhaaaaaacvlaaaaaaabhaaaabhaaaaaaabhaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaabPQbMabPQaaaaaacqccvmcvncvocvpcvqcqccvrcvscqccvtcvucvvcppcpocvwcrWcvxcqhcvycvzcvAcvAcvAcvBcvCcvDcvEcvFcvGcvBcvHcvHcvIcqicvJcvKcqjcqjcqkcsgcvLcvMcogcvNcvOcvPcvQcvRcvSaaaaaaaqzaqzaqAaqzaqzaqzbSzaqzaqzctIbTecsqcvTcsqcvUaqAaqAaaacvVaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabokcvWcvXcvXbokcvYabhaaaaaaabhaaaaaaabhaaaaaaaaaabhaaaaaacvlaaaaaaabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbGLbGLcvZbGLbGLaaacqccwacwbcwccqccqccqccqccqcchAcwdcpocvvcpocpocwecrWcwfcqhcwgcwhcwicwjcwkchAcwlcwmcwncwocwpchAcwqcwrcwrcwhcwgcqhcwscwtcqUcsgcwuchAcwvcoocvhcvicvicviaaaaaaaaaaqzaqzaqAaqzcwwaqzbSzaqzaqzcwxbTecwycwzcwybTeaqAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyKbyKbyKcvXcvXcwAbokaaaabhaaaaaaabhaaaacsacsacsacAabhabhabhabhcvlabhabhabhabhabhacAacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhbGLbTfbMacwBbGLabhcqccqccqccqccqcabhaaaaaaabhchAcwCcpocwDcwEcwFcwGchAchAcwHchAcwIcwJcwJcwJchAcwKcwLcwMcwNcwOchAcwJcwJcwJcwIchAcwHchAchAcqUcsgchAchAcoocoocoocoochAabhabhabhabhaqAaqAaqAaqAaqAaqAbSzaqzaqzaqAbTeaaaaaaaaabTeaqAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyKbzZcwPcvXcvXcwQbokaaaabhaaaaaaabhaaaacsaaaaaaabhaaaabhaaaaaacwRaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPQbUucwScwTbGLabhaaaaaaabhaaaaaaabhaaaaaaabhchAcwUcwVcwWcwXcwYcwZchAcxacxbchAcxccxdcxecxdcxfcxgcxhcxicxjcwOcxfcxdcxdcxdcxkchAcxlcxmchAcqUcxncxocxpcxqcxrcxfaaaabhabhabhabhabhaqzaqzaqAaqzaqzaqzbSzaqzaqzaqzbTebTebTebTebTeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyKcwPbyKbyKbyKbyKbokaaaabhaaaaaaabhaaaacsabhcxscxscxscxscxsaaacxtaaacxscxscxscxscxsabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPQcxucxvbNzbGLcoocxwcxwcxwcxwcxwcxwcxwcxwcoochAcxxcxycxzcxAcxxchAchAchAcxBchAchAcxfcxfcxfcxfcxCcxDcxEcxFcxGcxfcxfcxfcxfchAchAcxBchAchAcxHcxIcxJcxKcpocxLcxfaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaacxMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaabhaaaacsaaacxNcxOcxOcxOcxOcxPcxtcxQcxRcxRcxRcxRcxSaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPQbPQbPQbPQbGLabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAcxTcxUcxVaqzachcxWcxfcxfcxfcxfcxXcxfcxfcxfcxfcxWachaqzcxYcxZcyachAcybchAchAcyccydcyecxfaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaacxMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaacsadIcyfcyfcyfcyfcyfaaacxtaaacyfcyfcyfcyfcyfabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAcygcyhcyhaqzcyicyjcyjcyjcyjcyjcykcyjcyjcyjcyjcyjcylaqzcyhcymcygchAcyncyochAcoocoocypcooabhabhabhabhabhabhabhabhabhabhabhabhcxMabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaacsaaaaaaaaaabhaaaaaaaaacxtaaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAcyqcyrcysaqAcytachcyuaqzaqzaqzaqzcyuaqzaqzcyuachcytaqzcyvcywcyxchAcyycyzcooabhaaacyAaaaabhaaaaaaaaaabhaaaaaaaaaabhaaaaaaaaacxMaaaaaaaaacyBcyBcyBcyBcyBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcxscxscxscxscxsaaacxtaaacxscxscxscxscxsabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAcygcyhcyCaqzcyDcyEaqzaqzaqzaqzaqzcyFaqzaqzaqzcyGcyHaqzcyhcyhcygchAabqabqabqabhaaaaaacyIcyJcyKcyKcyKcyJcyKcyKcyKcyJcyKcyKcyKcyLcyKcyKcyKcyMcyNcyOcyPcyBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacxNcxOcxOcxOcxOcxPcxtcxQcxRcxRcxRcxRcxSaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAcyQcyRcyhaqzcytachaqzaqzaqAaqAaqAaqAaqAaqzaqzachcytcyScyhcyTcyUchAabhaaaabqabhaaaaaaaaaabhaaaaaaaaaabhaaaaaaaaaabhaaaaaaaaacxMabqcyBcyBcyBcyVcyWcyVcyBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcyfcyfcyfcyfcyfaaacxtaaacyfcyfcyfcyfcyfabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAchAcyXcyhaqzcytachcyuaqAaqAcyYcyZczaaqAczbaqzachcytaqzcyhcyXchAchAabhaaaabqabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhcxMabqczcczdczecyPczfcyPcyBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaaaaaaaaaabhaaaaaaaaaczgaaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhcumchAczhcyhaqzcyDcyEaqzaqzaqAcziczjczkaqAaqzaqzcyGcyHaqzcyhczlchAcumabhaaaabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqczmabqcyBcznczoczpczfczqczoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcxscxscxscxscxsaaacvlaaacxscxscxscxscxsabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAchAcyXcyhaqzcytachaqzczraqAczscztczuaqAaqAcyuachcytaqzcyhcyXchAchAabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacxMabqczvczvczvczvczwczxczyczzabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacxNcxOcxOcxOcxOczAczBczAcxRcxRcxRcxRcxSaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAcyTcyUcyhaqzcytachaqzaqzaqAaqAaqAaqAaqAaqzaqzachcytaqzcyhcyQcyRchAabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacxMaaaaaaczvczvczCczDczEczvczvczvczvczvabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcyfcyfcyfcyfcyfaaacvlaaacyfcyfcyfcyfcyfabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAcygcyhczFaqzcyDcyEaqzaqzaqzaqAaqzaqzaqzaqzaqzcyGcyHaqzcyhcyhcygchAabhaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacxMaaaaaaczvczGczHczIczJczKczLczMczNczvabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaabhaaaabhaaaaaacvlaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAczOcyrcysaqAcytachcyuaqzaqzcyuaqzaqzaqzaqzcyuachcytaqzcyvcywczPchAabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacxMaaaaaaczvczQczRczSczTczUczVczWczXczvabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaacsacsacsacsacsabhabhaaacvlaaaabhabhacsacsacsacAacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAczYcyhcyhaqzcytachachczZachachczZachachczZachachcytaqzcyhcyhczYchAabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcAacAbabhczvcAccAdcAecAfcAgcAhcAicAjczvabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcAkabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAczYcyhcAlaqzcAmcyjcyjcAncyjcyjcAncyjcyjcAncyjcyjcAoaqzcApcyhczYchAabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcAqcArcAqcAqcAscAtcAucAvcAwcAxcAxcAxcAxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhcAychAchAchAcyhaqAaqAaqAaqAaqzaqzaqzaqzaqzaqAaqAaqAaqAcyhchAchAchAcAyabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcAqcAzcAAcAqcABcABcACcADcABcAxcAEcAEcAxcAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhabhaaacAFchAchAchAchAchAchAchAchAchAchAchAchAchAchAchAchAchAcAFabhabhabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcAGcAHcAIcAJcABcAKcALcAMcABcANcAOcAOcAPcAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhaaaaaacAFcAFcAFcAFcumcAFcAFcAFcAFcAFcAFcAFcumcAFcAFcAFcAFaaaaaaabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcAQcARcAScATcAUcAVcAWcAXcAUcAYcAZcBacBbcAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhacLaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcBccBdcBecBfcBgcBhcBicBjcBkcBlcBmcBncBocAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLacLacLacLacLacLacLacKacLacLacLacLacLacLacLacKacLacLacLacLacKacLacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcAqcBpcARcBqcABcBrcBscBtcABcBucBvcBwcAxcAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcBycBzcBycBxcBxcBAcBBcBxcBycBCcBycBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcBEcBFcBycBGcBHcBIcBJcBGcBycBKcBLcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcBMcBFcBycBGcBHcBIcBJcBGcBycBKcBNcBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBOcBxcBxcBFcBycBPcBHcBQcBRcBScBycBKcBxcBxcBTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhcBxcBUcBycBVcBHcBIcBJcBGcBycBWcBxabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcBXcBYcBZcCacCbcBJcCccCdcCecBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcCfcBycCgcChcCicBJcCjcBycCfcBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhcBxcCfcBycBPcCkcClcBJcBScBycCfcBxabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcBxcCfcBycBGcBHcBIcBJcBGcBycCfcBxcBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcCfcCfcBycBGcBHcCmcBJcBGcBycCfcCfcBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCfcCncCncCocCncCpcCqcCrcCncCncCfcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCfcCncCncCscCtcCucCvcCwcCncCncCfcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCfcCncCncCxcCycCzcCAcCBcCncCncCfcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCCcCncCncCDcCDcCEcCFcCDcCncCncCCcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCCcCncCHcCHcCIcCJcCAcCHcCHcCncCCcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCKcCLcCMcCNcCOcCPcCQcCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCRcCucCScCTcCUcCAcCRcCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcCncCncCncCHcCJcCVcCWcCVcCXcCHcCncCncCnabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCYcCncCncCZcCIcDacCVcCVcCVcDbcCIcDccCncCncDdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcCncCncCncCRcDfcDgcDhcCVcCIcCRcCncCncCnabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCKcCIcDicDjcCHcCIcCQcCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCHcCIcDkcDlcCIcCIcCHcCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCncCncCncCncCncCncCncCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCncCncCncCncCncCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcCncCncCncCncCncCncCncCncCnabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaacDmaaaaaaabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(2,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(3,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(4,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(5,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(6,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(7,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(8,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(9,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(10,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(11,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(12,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(13,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(14,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(15,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyc +cye +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(16,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyw +cyi +cyw +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(17,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyi +cyi +cyi +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(18,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyi +cyi +cyi +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(19,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyi +cyi +cyi +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(20,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyi +cyi +cMa +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(21,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyi +cyi +cyi +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(22,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyi +cyi +cyi +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(23,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyi +cyi +czd +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(24,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyw +cyi +cyw +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(25,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyc +cye +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(26,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyi +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(27,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyc +cye +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(28,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyc +cyw +cyi +cyw +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(29,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cpe +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cwV +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +cyc +cyf +cym +cym +cym +cyF +aaa +cyc +cyw +cyi +cyi +cyi +cyw +cyc +aaa +cyf +cym +cym +cym +cyF +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(30,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaf +aaa +aqH +apK +aqH +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqF +apH +aqF +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyc +cyo +cyo +cyo +cyc +cyc +cyc +cMc +cyi +cyi +cyi +cMa +cyc +cyc +cyc +cyo +cyo +cyo +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(31,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aqH +cpK +aqH +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqF +cxl +aqF +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyn +cyv +cyv +cyn +cyc +cyw +cyi +cyi +cyi +cyi +cyi +cyw +cyc +cyn +cyv +cyv +cyn +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(32,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aqH +cpL +aqH +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqF +cxx +aqF +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cyc +cyn +cyv +cLY +cyc +cyi +cyi +cyi +cyi +cyi +cyi +czr +cyc +cMk +cyv +cyn +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(33,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaa +ckq +cqq +ckq +aaa +aaa +aaa +aCS +cMB +aCV +aCV +aCS +aaa +aaa +aaa +cwU +cxF +cwU +aaa +aaa +aaa +cxt +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +cyc +cyc +cyH +cyc +cyc +cyc +cyR +cza +cyR +cyc +cyc +cyc +cyH +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(34,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +aaf +aaa +aaf +arB +asE +cyb +asE +arB +aaa +aaa +aCS +aFC +aEr +aIG +aCS +aaa +aaa +arB +asE +cyb +asE +arB +aaa +cxt +cxD +cxt +aaa +aaf +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +cyc +cyc +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(35,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apJ +apJ +apJ +apJ +apJ +apJ +apJ +apJ +apJ +apJ +apJ +auO +auP +cwT +aAC +aaa +aaa +aCS +cLJ +aEr +cLK +aCS +aaa +aaa +aAC +auO +auP +cxY +arB +aaa +cxy +cxC +cCy +aaa +aaf +aaa +aaf +aaa +aAC +aaf +aaa +aaa +cyc +cyc +cyw +cyI +cyi +cyi +cyi +cyi +cMd +cyi +cyi +cyi +cyi +cyi +cyc +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(36,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apJ +apN +arC +arC +arC +arC +arC +arC +arC +aEp +apJ +avP +cyb +asE +arB +aaa +aCS +aCS +aCS +aHs +aCS +aCS +aCS +aaa +arB +asE +cyb +avP +arB +aaa +cxu +cLQ +cxu +aaa +arB +awW +awW +asE +arB +aaf +aaa +cyc +cyc +cyw +cyi +cyi +cyi +cyi +cyc +cyc +cyc +cyc +cyc +cyc +cyi +cyi +cyc +cyc +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(37,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +apJ +aqI +arD +arD +arD +arD +arD +arD +arD +auN +apJ +awY +ayk +awW +aAD +awW +aCS +aEo +aEr +aEr +aEr +aKg +aCS +awW +awW +awW +aQG +aRX +arB +cxu +cxu +cCw +cxu +cxu +arB +awY +ayk +awW +aAD +awW +cyc +cyc +cyc +cyc +cyc +cyc +cyw +cyi +cyc +cyV +cyi +cMh +cyi +czi +cyi +cyi +cye +cyi +cyw +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(38,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +apJ +aqI +arD +arD +arD +arD +arD +arD +arD +auN +apJ +awZ +ayl +azy +auP +cIh +aCU +aEr +aFE +aFE +aFE +aEr +aCU +azy +auP +cIh +ayl +aRY +awW +cxw +cxB +cxC +cxI +cxw +awW +awZ +ayl +beK +auP +cyt +cyd +cyi +cyi +cyx +cyx +cyw +cyc +cMa +cyc +cyW +cyi +cze +czm +cyc +cMc +cyi +cyc +cyi +czB +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(39,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +apJ +aqI +arD +arD +arD +atk +arD +arD +arD +auN +apJ +awZ +ayk +awW +awW +awW +aCS +aEq +aEr +aEr +aEr +cLL +aCS +awW +awW +awW +awV +aRY +awW +cxu +cxB +cxC +cxI +cxu +awW +awZ +ayk +awW +awW +awW +cyc +cyi +cyi +cyi +cyi +cyJ +cyc +cyi +czi +cyi +cMe +cyi +czl +cyc +cyi +cyi +cyc +cyi +cyi +cyw +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(40,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apJ +aqI +arD +arD +asG +atl +awX +arD +arD +auN +apJ +awZ +cqr +azz +aAF +awW +aCV +aEt +aFE +aFE +aFE +aEr +aCV +awW +aOf +azz +aPu +aRY +awW +cxu +cLP +cxC +cxC +cxu +awW +awZ +aym +azz +aAF +awW +cyc +cyk +cyi +cyi +cyi +cyi +cyc +cyi +cyc +cyc +cyc +cyc +cyc +cyc +cyi +cyI +cyR +czA +cyi +cyi +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(41,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apJ +aqI +arD +arD +arD +cCs +arD +arD +arD +auN +apJ +awZ +aIK +ayl +aAE +awW +aCV +aEs +aEr +aEr +aEr +aEr +aCV +awW +aOe +ayl +ayl +aRY +awW +cCu +cxC +cCx +cxC +cCz +awW +awZ +ayl +ayl +aAE +awW +cyc +cyj +cyi +cyi +cyi +cyi +cye +cyi +cyi +cyi +cMf +cyi +cyi +cyi +cyi +cyi +cyR +cyi +cyi +czC +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(42,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apJ +aqI +arD +arD +arD +arD +arD +arD +arD +auN +apJ +awZ +aIK +ayl +aAH +awW +aCV +aEv +aFE +aFE +aFE +aEr +aCV +awW +aOh +ayl +ayl +aRY +awW +cxu +cxC +cxC +cLR +cxu +awW +awZ +ayl +ayl +bgi +awW +cyc +cyi +cyi +cyi +cyi +cyi +cyc +cyw +cyi +cyi +cyi +cyi +cyi +cyi +cyi +czw +cyR +cyi +cyi +cyi +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(43,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +apJ +aqI +arD +arD +arD +arD +arD +arD +arD +auN +apJ +awZ +cry +azA +aAG +awW +aCV +aEu +aEr +aEr +aEr +aEr +aCV +awW +aOg +azA +aQH +aRY +awW +cxu +cxB +cxC +cxI +cxu +awW +awZ +ayn +azA +bgh +awW +cyc +cyi +cyi +cyi +cyi +cyw +cyc +cyc +cyc +cyR +czj +cyR +cyc +cyc +cyc +cyc +cyc +cyi +cyi +cyi +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(44,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apJ +aqN +asD +asD +asD +cCt +asD +asD +asD +aFD +apJ +awZ +crz +awW +awW +awW +aCS +aEw +aFE +aFE +aFE +aKh +aCS +awW +awW +awW +awV +aRY +awW +cxw +cxB +cxC +cxI +cxw +awW +awZ +ayk +awW +awW +awW +cyc +cyi +cyi +cyi +cyw +cyc +cyw +cyi +cyi +cyi +cyi +cyi +cyi +cyX +cyX +cyX +cyc +cyi +cyi +cyw +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(45,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apJ +apJ +apJ +apJ +ajZ +atp +asF +asF +asF +asF +apJ +axh +aIK +azy +auP +cIh +aCU +aEr +aEr +aEr +aEr +aEr +aCU +azy +auP +cIh +ayl +aRY +awW +cxu +cxw +cxE +cxw +cxu +awW +awZ +ayl +beL +auP +cyu +cye +cyi +cyq +cyi +cyc +cyw +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyw +cyw +czy +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(46,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +apJ +asH +atI +arE +ayq +ayq +auc +avp +axI +ayp +awW +aAD +awW +aCS +aEy +aEy +aEy +aEy +aEy +aCS +awW +awW +awW +aQG +aRX +arB +aaa +aWa +aXI +awW +aaa +arB +awY +ayk +awW +aAD +awW +cyc +cyc +cyc +cyz +cyc +cLZ +cyO +cyi +cyi +cyi +cyi +cyi +cyi +cyi +cyi +czx +czn +cyc +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(47,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +amO +aac +aac +aac +aac +aac +aac +aac +aac +clO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +asF +asI +auQ +auQ +auQ +aCX +aub +aLu +axH +ayo +azB +awW +aaa +aCS +aEx +aFF +cIg +aFF +aKi +aCS +aaa +awW +aPt +aPu +aRY +arB +awW +awW +auP +awW +awW +arB +awZ +aym +azB +awW +aaf +aaa +aaa +cyc +cyy +cyc +czy +cyO +cyi +cyi +cyX +czb +cyX +cyi +cyi +cyi +cyi +cyw +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(48,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +amO +aac +aac +aac +aac +aac +aac +cJO +cKb +cJO +cKD +cKQ +cLd +cLk +cLn +cLw +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apJ +asJ +avQ +axc +aCT +atb +aIH +apJ +clB +aIK +azC +arB +arB +arB +awW +awW +awW +awW +awW +arB +arB +arB +aPv +ayl +aRZ +asE +aAF +awW +cyl +awW +baF +asE +bbb +ayl +beN +arB +aaf +aaf +aaf +cyc +cyA +cyc +cyw +cyP +cyi +cyi +cyY +czc +cyX +cyi +cyi +cyi +cyw +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(49,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +cIR +cIY +cIY +cIY +cJz +aac +cJr +cIz +cIJ +cIJ +cKR +cIJ +cLl +cLn +cLx +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apJ +apJ +apJ +apJ +apJ +apJ +apJ +apJ +axG +aIK +aym +aAI +aBH +azz +azz +azz +azz +azz +azz +aLv +aBH +azz +aPu +ayl +ayl +aNh +aym +azz +ayl +azz +aPu +ayl +aIK +ayl +beM +aAC +aaf +aaf +aaf +aaf +aaf +cyc +cyc +cyc +cyR +cyR +cyR +cyR +cyR +cyR +cyR +cyc +cyc +cyc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(50,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +cIJ +cIJ +cIJ +cIJ +cIJ +cJJ +cJQ +cIz +cKq +cKF +cKS +cLf +cLm +cLn +cLy +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +alU +atJ +amC +aKf +bEJ +axb +ayr +azD +aAJ +azD +aCp +aEz +aFG +aHu +ayl +ayl +ayl +aNb +ayl +ayl +ayl +ayl +aTr +aUM +ayl +ayl +aWc +baG +ayl +aIK +ayl +beM +asE +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(51,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +amO +aac +aac +aac +clO +aaa +aaa +aac +cIJ +cIJ +cIJ +cIJ +cIJ +aac +cJR +cIz +cKr +cJm +cKT +aac +aac +aac +czv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aag +alU +alU +alU +aCW +amC +aud +alU +alU +atO +alU +alU +aBI +aBI +aBI +aBI +aBI +aNh +aKj +aLw +aLw +aLw +aLw +aQI +aNh +czK +czK +czK +czK +aXX +czK +czK +bbc +beO +beO +beO +beO +beO +beO +beO +beO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(52,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +cIl +cIs +cIz +aac +czz +aaa +aac +cIU +cJb +cJj +cJr +cJC +aac +cJS +cIz +cKr +cJm +cKU +aac +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aqJ +amC +aqJ +ase +avq +aum +avq +axJ +cwH +axJ +aAj +aBK +aCL +aEG +aFI +aBI +aIM +aKk +aLy +aNd +aOj +aPx +aQJ +ayl +czK +aUO +aUy +aWm +aWf +aUQ +czK +bhN +bcl +beQ +bgk +bhI +bjb +bkz +blS +bnv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(53,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +amP +cIm +cIt +cIz +aac +aac +aac +aac +aac +aac +aac +cJs +coh +aac +aac +aac +cKt +coh +aac +aac +aac +clO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alU +alU +alU +alU +asc +atn +aLt +aue +aue +aue +aue +aAe +aBJ +aCs +aEE +aFH +aGZ +aIJ +aJX +aLi +aMO +aNR +aOY +aQl +bcD +aTs +aUN +baH +aWi +aXY +baH +aTs +bbd +beO +beP +bgj +beO +bja +beO +bja +bja +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(54,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +amP +cIn +cIu +cIz +cIG +cII +cIL +cIO +cIL +cIL +coh +cIJ +cIJ +cIJ +cIJ +cKg +cKr +cJm +cIz +coh +cLn +cLw +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alU +apL +aqK +alU +asc +atq +aon +amC +axe +ays +alU +aAM +aBI +aCY +aEI +aFK +aHy +aIM +aKk +aLz +aNe +aNe +aLz +aQo +aSb +czK +aUQ +aUA +aWr +aXZ +aUQ +czK +bbe +beO +beS +bgj +bhJ +bjd +bkB +cAI +bja +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaS +aaS +aaS +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cBW +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(55,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +amP +cIo +cIv +cIz +cIH +cIJ +cIu +cIu +cIu +cIJ +cJk +cIJ +cIu +cIu +cIu +cIu +cKr +cJm +cIz +cLg +cLn +cLx +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +alU +alU +apM +aqL +alU +asc +atq +auX +avS +amC +amC +alU +aAM +aBI +aDc +aEH +bxM +aHa +aIL +aJY +aLj +aMP +aMP +aPa +aQn +ayl +czK +aUP +aUO +aXL +aXZ +aUO +czK +bbe +beO +beR +bgj +bgj +bjc +cAF +cAF +bja +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +aaf +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(56,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +amP +cIp +cIu +cIz +aac +cIK +cIN +cIQ +cIN +cIN +coh +cIJ +cIJ +cIJ +cIJ +cKi +cKr +cJm +cIz +coh +cLn +cLy +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aba +aaS +aaS +aaf +aaf +aaf +aaa +aaa +aaa +alU +aoS +amC +aom +ank +asc +atq +auZ +bsU +axf +amC +alU +auT +aBI +aDf +aEK +aFM +aHy +ayl +aKk +aLA +aNf +aNf +aLA +aQD +aSd +czK +aUQ +aUW +aXL +aXZ +baJ +czK +bbe +beO +beU +bgl +bhL +bjc +cAF +blV +beO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaf +chJ +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(57,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +amP +cIq +cIx +cIz +aac +aac +aac +cmp +aac +aac +aac +cof +coh +aac +aac +aac +cKt +coh +aac +aac +aac +cmE +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abY +aaa +aaf +aaa +aaf +aaa +aaf +aaa +acy +aaa +aaf +aaa +aiS +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +alU +aoR +apO +aqM +arF +asc +atq +auY +amC +amC +ayt +alU +aAw +aBl +aCZ +aEJ +aFL +aBI +aIO +aKk +asE +asE +asE +asE +aQD +ayl +czK +aUl +aUR +aWs +aXZ +aUQ +czK +bbf +beT +beT +bdQ +beZ +bje +bkC +cAJ +beO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaS +aaS +aaS +aaS +aaf +aaf +aaa +chI +aaa +aaf +aaf +aaS +aaS +aba +aaS +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(58,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +cIr +cIy +cIz +aac +czv +aaa +aaa +aaa +aac +cJl +cIJ +cJG +aac +cJW +cIz +cKr +cJm +cKY +aac +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abY +aaa +acV +adv +adZ +aaa +acV +adv +adZ +aaa +acV +adv +adZ +aaa +aaS +aaf +aaf +aaf +aaa +aaa +aaa +alU +aoT +amC +aqO +arG +asc +atq +ava +amC +axg +ayu +azF +azF +azF +azF +azF +azF +azF +aIQ +aKk +aLC +aNg +aOk +aPy +aRd +aRM +aTt +aUm +aUm +aWt +aYd +aZn +aTt +bbg +bdG +bdu +bdT +beO +bjf +beO +beO +beO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +aaa +aaf +aaa +aaf +aaa +aaa +chI +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(59,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bJS +aac +aac +aac +cmE +aaa +aaa +aaa +aaa +cJf +cJm +cIJ +cJG +aac +cJX +cIz +cKr +cJm +cKZ +aac +aac +aac +czz +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +abY +aaf +acV +adu +adZ +aaa +acV +adu +adZ +aaa +acV +adu +adZ +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +alU +alU +alU +alU +arG +ash +atq +alU +alU +alU +alU +azF +aAP +aAP +aAP +aEF +aFN +azF +aIP +aKl +aLB +aLB +aLB +aLB +aQK +aSe +czK +aUQ +aUQ +aXN +aUO +aUQ +czK +bcI +aPz +bdt +bdR +aSg +aYf +bkD +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaf +cca +cca +cca +cca +cca +aaa +chK +aaa +cca +cca +cca +cca +cca +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(60,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cni +cJn +cIJ +cJI +cIG +cJY +cIz +cKA +cKN +cKS +cIJ +cLq +cLn +cLw +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abY +aaa +acV +adu +adZ +aaf +acV +adu +adZ +aaf +acV +adu +adZ +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +ali +aoX +arI +asi +atr +atN +atN +atN +ayi +azq +aAK +aBv +aDa +aAQ +aAQ +azF +aIR +ayl +ayl +aNi +ayl +ayl +ayl +aSf +aTq +aTq +aTq +aTq +aTq +aTq +aTq +aPz +aPz +bdB +aWv +aTu +bjg +bkD +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +ccc +ccX +ccX +ccX +ccX +cgz +chL +ciP +cjH +cjH +cjH +cjH +cnl +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(61,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bJS +aac +aac +aac +aac +cJZ +cIz +cIJ +cIJ +cLb +cIJ +cLr +cLn +cLx +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +acV +adu +adZ +aaa +acV +adu +adZ +aaa +acV +adu +adZ +aaf +aaf +aaf +aaf +aaf +aaa +aaa +aaa +aaf +aaa +ali +amC +arH +atP +auV +auV +auV +axK +ayh +azi +aAx +aBm +aAQ +aAQ +aAQ +azF +azF +azF +aLD +aNh +aNh +aPz +aPz +aPz +aPz +aSg +aWj +aXP +aZr +baL +bbI +bcK +aPz +bdB +aWv +bfh +aPz +aPz +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaS +aaf +ccb +ccb +ccb +ccb +ccb +aaa +chL +aaa +ccb +ccb +ccb +ccb +ccb +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(62,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cnW +aac +cKa +cIz +cKC +cKP +cLc +cKi +cLq +cLn +cLy +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaS +aaS +aaf +aaa +acV +adu +adZ +aaa +acV +adu +adZ +aaa +acV +adu +adZ +aaa +aaf +aaa +ajV +alR +alR +alR +alR +alU +alU +alU +aqP +arJ +alU +avb +aaH +bOi +atO +asK +azF +aAT +aBw +aDg +aAQ +aAQ +aHz +aIS +aKn +aLF +aLF +aLF +aPz +aQL +aSg +aSg +aSg +aWl +aSg +aZs +baN +bbK +bcM +bdH +bdD +bea +bfq +bji +bkF +cys +cys +cys +cys +cys +cys +cys +cys +cys +cys +cys +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaS +aaa +aaa +aaa +aaf +aaa +aaa +aaa +chL +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aba +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(63,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bJS +aac +aac +aac +aac +aac +aac +aac +aac +cmE +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +aaf +aaa +aaa +aaa +adw +aaa +aaa +aaa +adw +aaa +aaa +aaa +adw +aaa +aaa +ajV +ajV +ajV +alQ +amy +ang +alR +aoj +amC +apP +amC +arH +alU +aaH +bNb +apQ +atO +asK +azF +aAS +aFP +aAQ +aAQ +aAQ +aAQ +aAQ +aKm +aLE +aNj +aLE +aPz +aPz +aPz +aTu +aUS +aWk +aWk +aWk +baM +bbJ +bcL +aWk +bdC +bdZ +bhO +bjh +bkE +cys +cyB +cyB +cyB +cyB +cMb +cyB +cyB +cyB +czf +cys +czs +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaS +aaf +cca +cca +cca +cca +cca +aaa +chL +aaa +cca +cca +cca +cca +cca +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(64,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaf +abs +abZ +abZ +acW +ady +ady +ady +ady +ady +ady +ady +ady +ady +ady +ajq +ajW +akB +alh +alT +amA +ani +anI +aol +aol +aol +aol +arL +alU +avU +avb +bOi +atO +asK +azF +aAU +aBG +aAQ +aAQ +aAQ +aBM +aAQ +aKn +aLE +aNl +aOm +aPB +aQM +aQM +aTv +aUT +aPz +aXQ +aXQ +aXQ +aXQ +aXQ +aXQ +aXQ +aXQ +bhQ +bjj +bkF +cys +cyB +cyB +cyB +cyB +cyB +cyB +cyB +cyB +cyB +czp +czt +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaS +aaa +ccc +ccX +ccX +ccX +ccX +cgz +chL +ciP +cjH +cjH +cjH +cjH +cnl +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(65,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +aaf +aaa +aaa +aaa +adx +aaa +aaa +aaa +adx +aaa +aaa +aaa +adx +aaa +aaa +ajV +ajV +ajV +alS +amz +anh +anH +aok +anJ +anJ +aFJ +arK +alU +alU +ali +alU +atO +asK +azF +aAP +aAP +aAP +aAQ +aFO +aHA +aIT +azF +aLG +aNk +aOl +aPA +aPA +aPA +aPA +aPA +aPA +aXQ +aZt +aXQ +aZt +aXQ +aZt +aXQ +aZt +bhQ +bjj +bkF +cys +cLX +cyB +cyB +cyB +cyB +cyB +cyB +cyB +cyB +czp +czt +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaS +acy +ccb +ccb +ccb +ccb +ccb +aaa +chL +aaa +ccb +ccb +ccb +ccb +ccb +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(66,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aba +aaS +aaf +aaa +acV +adz +adZ +aaa +acV +adz +adZ +aaa +acV +adz +adZ +aaa +aaf +aaa +ajV +alR +alR +alR +alR +aom +amC +apP +amC +arN +amC +amC +amC +amC +axi +asK +azF +azF +azF +azF +aEL +azF +azF +azF +azF +aLE +aNn +aOl +aPA +aQO +aSh +aTw +aUU +aWn +aXQ +aZv +aXQ +bbL +aXQ +bdJ +aXQ +bgr +bhQ +bjj +bkF +cys +cyB +cyB +cyB +cyB +cyB +cyB +cyB +cyB +cyB +czp +czt +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aba +aaa +aaa +aaa +aaf +aaa +aaa +aaa +chL +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(67,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +acV +adz +adZ +aaa +acV +adz +adZ +aaa +acV +adz +adZ +aaf +aaf +aaa +aaa +alU +alF +anj +anJ +anl +aoU +alU +amC +arM +alU +atT +asO +avV +atO +ayw +atN +aAV +alU +aDh +aDo +aFQ +aHe +aIN +aKp +aLE +aNm +aOl +aPA +aQN +aQN +aQN +aUn +aTy +aWy +aYe +aZw +aZw +bbq +bct +bfa +bfa +bhQ +bjk +bkE +cys +cyB +cyB +cyB +cyB +cyS +cyB +cyB +cyB +czf +cys +czu +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaS +aaf +cca +cca +cca +cca +cca +aaa +chL +aaa +cca +cca +cca +cca +cca +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(68,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +acV +adz +adZ +aaf +acV +adz +adZ +aaf +acV +adz +adZ +aaa +aaf +aaf +aaf +alU +alF +anl +amC +alU +alU +alU +amC +alU +alU +apP +alU +alU +atP +auV +axK +aAN +aBL +aDd +aDd +aFR +aDd +aDd +aJZ +aLk +aNo +aOo +aPA +aQQ +aQN +aSV +aUo +aUX +aXp +baO +aZo +baw +bcO +baw +cBn +bgs +bhQ +bjk +bkF +cys +cys +cys +cyN +cyQ +cys +cyT +cyZ +cys +cys +cys +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aoV +bZm +aoV +aoV +aoV +aaa +aaS +aaa +ccc +ccX +ccX +ccX +ccX +cgz +chL +ciP +cjH +cjH +cjH +cjH +cnl +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(69,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaf +acV +adz +adZ +aaa +acV +adz +adZ +aaa +acV +adz +adZ +aaf +aaf +aaa +aaa +alU +alU +ank +alU +alU +aoV +alU +amC +amC +amC +arN +alU +avW +amC +ayx +atO +aAL +aBQ +aDb +aDo +aFY +aDo +aDo +aKp +aLE +aLE +aOn +aPA +aQP +aQN +aTx +aUV +aWo +aXQ +aXQ +aXQ +aXQ +aXQ +aXQ +aXQ +aXQ +bhQ +bjk +aPz +aaa +aaa +boI +bqi +brJ +boI +brJ +bvS +boI +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aoV +bVz +apQ +apQ +aoV +aaa +aaS +aaf +ccb +ccb +ccb +ccb +ccb +aaa +chL +aaa +ccb +ccb +ccb +ccb +ccb +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(70,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +acV +adA +adZ +aaa +acV +adA +adZ +aaa +acV +adA +adZ +aaa +aaS +aaa +aaa +alU +amD +anm +amC +ali +aoV +ali +amC +alU +asO +atL +alU +avX +axf +amC +atO +aAY +aBQ +aDl +bxk +aFS +aDo +aIX +aBQ +aLE +aLE +aOp +aPA +aQR +aQN +aTA +aUq +aWq +aXs +aYH +aZx +bbO +aPA +bdM +aPz +bgt +bhS +bjk +aPz +aaa +aaa +blW +bqj +brK +blW +brK +bvT +blW +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +bVw +bVz +bVw +bVw +aoV +aaa +aaS +aaa +aaa +aaf +aaa +aaf +aaa +aaa +chL +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(71,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaS +aaf +aaf +alU +amC +amC +amC +ali +apQ +ali +amC +alU +alU +alU +alU +alU +axj +alU +atO +aAY +aBQ +aDk +aDo +aDo +aDo +aIW +aBQ +aLE +aLE +aOl +aPC +aQN +aQN +aTz +aUp +aWq +aXr +aZx +cBh +bbN +aPA +bdL +aPz +bgt +bhR +bjk +aZE +blW +blW +blW +bqi +cyD +blW +cyD +bvS +blW +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +apQ +bVz +aoV +bVw +aoV +aaa +aaS +aaS +aaS +aaf +aaf +aaf +aaf +aaf +chM +aaf +aaf +aaf +aaf +aaf +aaS +aaS +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(72,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaS +aaS +aaS +aaS +aba +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaa +aaa +alU +amE +ann +amC +alU +aoV +ali +amC +alU +arN +atU +alU +atU +amC +atJ +atO +aAY +aBQ +aDn +aDo +aDo +aHD +aIZ +aBQ +aLE +aLE +aOq +aPD +aQT +aQT +aTC +aUs +aUY +aXv +aYS +aZx +bbO +aPA +bdM +aPz +aSg +bhT +bjk +aZE +blY +bnw +boJ +bql +brL +btr +bnw +bvV +blW +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +apQ +bVz +apQ +bVw +aoV +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +cfx +chO +cfx +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(73,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alU +alU +alU +ank +alU +aoV +alU +amC +amC +amC +amC +alU +aqO +amC +atJ +atO +aAY +aBQ +aDm +aDo +aDo +aDo +aIY +aBQ +aLE +aLE +aOl +aPA +aQS +aSj +aTB +aUr +aWq +aXt +aPA +aPA +aPA +aPA +aPA +aPz +bel +bfI +bgq +bhY +bkj +bqm +bqm +bps +bjr +bjr +buB +bvU +aZE +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaa +aaa +aag +aaa +bVx +caf +aoV +bVw +apQ +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +cfx +chN +cfx +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(74,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alU +amF +alU +amC +alU +apQ +alU +alU +alU +alU +amC +alU +atM +axl +auV +azG +aAY +aBQ +aDp +aDo +aFU +aDo +aJb +aKp +aLE +aLE +aOl +aPE +aQV +aQN +aSi +aUu +aWq +aXw +aZB +aZB +aZB +aZB +aPA +bfc +bew +bfM +bjl +bkG +bkp +bmj +bjt +cCo +bjt +bjt +biq +bvV +blW +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bCq +bCq +bCq +bLv +bCq +aoV +cbj +aoV +bVw +apQ +aaf +bCq +bCq +bCq +bCq +bCq +bCq +cfx +cfx +cyK +cfx +cfx +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(75,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alU +alU +alU +amC +alU +apQ +aaH +alU +arO +alU +amC +avc +atO +axk +ayy +ayy +aAO +aBN +aDe +aDe +aFT +aDe +aIU +aKa +aLH +aLE +aOl +aPA +aQU +aQN +aQN +aUt +aWq +aXw +aZA +aZA +aZA +aZA +aPA +aWv +aYb +aZE +aZE +aZE +bkn +bmh +bjr +bmb +bjr +bjr +buC +bvV +blW +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bCq +bJP +bCq +bSn +bCq +bCq +cbj +bLv +bXv +bLv +aaf +bCq +cAy +cAB +ccY +cAD +cAH +cfw +cgA +chP +ciQ +cfw +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(76,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ali +anK +ali +aaH +atR +alU +alU +alU +atW +atW +atO +axn +alU +aoX +atJ +aBQ +aDq +aDo +aFZ +aHE +aJc +aKs +aLK +aLK +aOr +aPA +aQX +aQN +aQN +aUv +aWp +aXA +aYX +aYX +aYX +bbs +bcw +bfd +bgw +aZE +bjn +bjr +bkt +bmh +boK +bpz +boK +bjr +bkt +bvV +blW +aaa +aaa +aaa +aaa +aaa +akD +akD +ajX +akD +ajX +akD +akD +aaa +bCq +bPS +bRd +bPS +bPS +bCq +cbk +bLv +bHE +bLv +aaf +bCq +cAA +bHE +bHE +ccZ +cAK +cfw +cgC +chR +ciS +cfw +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(77,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alU +amC +alU +aaH +apQ +apQ +aaH +alU +ali +ali +atO +axm +ayz +ayz +ayz +aBR +aBR +aBR +aBR +aBR +aBR +aBR +aLJ +aLE +aOl +aPA +aQW +aQW +aTD +aQW +aUZ +aXx +aYU +aYU +aYU +bbr +bcu +bfe +bgx +aZE +bjm +bjr +bjr +bmh +boK +bjr +boK +bjr +bjr +bvV +bxu +aaa +aaa +aaa +aaa +aaa +akD +bGg +amI +cMl +bHx +anM +akD +aaa +bLv +bPR +bRc +bSo +bTs +bCq +bVy +bLv +cyE +bLv +bLv +bCq +bHE +cAC +ccZ +cAE +ceV +cfw +cgB +chQ +ciR +cfw +aag +aag +aag +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(78,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ali +aKY +ali +asC +apQ +aaH +apQ +aoV +aoV +apQ +avY +axo +ayB +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaa +aKu +aLM +aLF +aOs +aPG +aPG +aPG +aPG +aPG +aPA +aPA +aPA +aPA +aPA +aPA +aPA +aWv +bgx +aZE +bjp +bjr +bjr +bmh +boK +bjr +cBp +bjr +buB +bvV +bxu +bxu +bxx +bxu +bxu +bDi +ajX +bGh +bHx +amI +bHx +bLt +bMF +aaa +bCq +bPS +bRf +bSo +bTu +bCq +bVB +bHE +bHE +bYu +bZk +bCq +bTz +bCq +bCq +bCq +bCq +cfw +cgE +chS +cfw +cfw +bCq +bXv +bCq +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(79,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaf +ali +amC +ali +asC +aaH +apQ +aoV +aoV +aoV +aoV +avY +axo +ayA +aaf +aBa +aBa +aBa +aBa +aBa +aBa +aaf +aKt +aLL +bDe +aOl +aPF +aQY +aSk +aTE +aPG +aWu +aYa +aZD +aZD +aZD +aZD +aZD +bff +bfk +aZE +bjo +bjr +bjr +bmh +boK +bjr +boK +bjr +bjr +bub +bxu +bvF +bzP +bAS +bxu +aaa +akD +bGg +amI +amI +bHx +bLs +akD +aaa +bLv +bPT +bRe +bSo +bTt +bCq +bVA +bWw +bXw +bYt +bZj +bCq +bHE +bCq +bSq +cdW +ceW +bCq +cgD +cgH +bHE +cjI +bCq +clA +bCq +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(80,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ali +ali +alU +alU +amC +alU +alU +alU +aaH +apQ +aoV +apQ +apQ +avY +axo +ayA +aaa +aBa +aBT +aDs +aEN +aGb +aBa +aaa +aKt +aLN +aLE +aOl +aPH +aRa +aRa +aTG +aPG +aWw +aYc +aZF +aZF +aZF +aZF +aZF +aZF +bgy +aZE +bjr +bjr +ama +bmh +bjr +bjr +bjr +bjr +bjr +bvX +bxu +byA +bzR +byd +bxx +aaa +akD +akD +ajX +bJc +ajX +akD +akD +aaa +bCq +bPV +bCq +bCq +bTw +bCq +bVD +bWy +bXx +bYw +bZj +bYy +bHE +bTz +bHE +cdY +ceY +bCq +bHE +cgH +bHE +bLu +bCq +cyE +bCq +aaa +aaa +aaf +aaa +bCq +bCq +bLv +bLv +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(81,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ali +alV +amG +ano +amC +aon +aoW +alU +aqQ +aqQ +aqQ +aqQ +aqQ +avZ +axp +ayC +azH +aBb +aBS +aDr +aEM +aGa +aHF +aJd +aKv +aLN +aLE +aOl +aPF +aQZ +aRa +aTF +aPG +aSX +aWC +baS +aZI +baS +baS +bdS +bdU +ckQ +aZE +bjq +bjr +bjr +bmh +bjr +bjr +bjr +bjr +bjr +bjr +bxw +byz +bzQ +byc +bxx +aaa +aaa +bGi +bGi +bJb +bGi +bGi +aoV +aoV +bCq +bPU +bHE +bSp +bTv +bCq +bVC +bWx +bWy +bYv +bZl +bCq +bHE +bCq +cda +cgF +bCq +cqn +cAh +chT +bHE +bHE +ckv +bHE +bCq +bLv +bLv +bLv +bLv +bCq +ciT +cqK +crl +bLv +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(82,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ali +aKY +amC +anp +amC +amC +amC +ank +aqR +aqR +aGh +aqR +aqR +awb +axo +ayA +aaa +aBa +aBV +alu +aEM +aGd +aHG +aJe +aKw +aLP +aMR +aNU +aPJ +aPJ +aPJ +aPJ +aPJ +aVC +aXJ +bgA +aZp +baY +bcJ +bcF +bfg +bgA +bhW +bjt +biq +bjr +bmh +bjr +bqn +brN +brN +brN +brN +bxx +byC +bzT +byl +bxx +aaf +aaf +bGi +bHz +byE +bKk +bGi +aoV +aoV +bCq +bPW +bCq +bCq +bTy +bCq +bVF +bWA +bXy +bYx +bWz +bCq +bHE +bCq +bQa +cpY +cyL +cqy +cAi +bQa +bHE +bHE +bHE +bHE +bHE +bHE +bHE +bHE +bHE +cpR +bHE +cAQ +crm +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(83,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ali +alW +amH +ano +anL +aoo +aoX +alU +aqQ +aqQ +aqQ +aqQ +aqQ +awa +axq +ayD +azI +aBc +aBU +aDt +aEO +aGc +aHF +aJd +aKb +aLN +aMQ +aNT +aPI +aRb +aRb +aRb +aRb +aWx +aXE +baS +baS +bbP +bcR +bcE +baS +bex +bhY +bgu +bic +bku +bmh +bjr +aZE +brM +bts +buD +bvY +bxx +byB +bwS +byg +bxx +aaa +aaa +bGi +bHy +byE +bKj +bGi +aoV +aoV +bCq +bHE +bHE +bSq +bTx +bCq +bVE +bWz +bHE +bHE +bLu +bCq +bLu +bCq +cdb +bSs +bCq +bCq +cgG +bCq +bCq +bCq +bCq +bTz +bCq +bLv +bLv +bLv +bLv +bCq +cqv +cqL +bJe +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(84,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ali +ali +alU +alU +ali +alU +alU +alU +aaa +aaa +aaa +aaa +aag +avY +axo +ayA +aaa +aBa +aBW +aDv +aEP +aGe +aBa +aaa +aKt +aLN +aMS +aOt +aPK +aPK +aPK +aPK +aPK +aWA +aXM +bfi +cBi +bbS +bcS +bbt +bfi +beD +aZE +aZE +biA +bmg +bmH +bkJ +aZE +aZE +aZE +aZE +aZE +bxu +byD +bwU +byn +bxu +aaa +bxy +bxy +bxy +bJd +bKm +bxy +apQ +apQ +bCq +bPY +apE +bCq +bCq +bCq +bCq +bCq +bCq +bYy +bCq +bCq +bLv +bCq +bCq +bCq +bCq +bLv +cgH +bLv +aaa +bCq +ckv +bHE +bCq +aaa +aaa +aaf +aaa +bCq +bCq +bCq +bCq +bCq +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(85,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +avY +axo +ayA +aaf +aBa +aBa +aBa +aBa +aBa +aBa +aaf +aKt +aLN +aMS +aOi +aLE +aPK +aSl +aTH +aPK +aWz +aWC +aZE +aZE +aZE +bcT +aZE +aZE +aZE +aZE +bju +biv +bmf +bmt +boN +bqo +brO +btt +buE +bvZ +bxu +bxx +bwT +bym +bxu +bxy +bxy +bGj +bHA +bHA +bKl +bxy +aaH +aaH +bCq +bPX +bRg +bRg +bCq +bHE +bVG +bHE +bHE +bHE +bLv +apQ +aoV +aoV +aoV +aoV +aoV +bLv +cgH +bLv +aaa +bLv +bJf +ccd +bCq +aaa +aaa +aaf +aaa +aaa +aaf +aaf +cig +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(86,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +akD +akD +ajX +akD +akD +ajX +akD +akD +akD +aaa +aaa +aaa +aaa +aaa +aag +avY +axs +ayF +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaa +aKx +aLN +aMS +aOi +aLE +aRc +aSm +aTJ +aPK +cCl +aYh +cCm +cCm +cCm +cCn +aPz +bdW +aSg +aZE +bgz +biT +boU +bmP +buF +bbR +bbR +btu +bbR +bOL +bxy +byF +bwW +bGm +bCo +bDk +bEK +byE +byE +byE +byE +bGi +apQ +apQ +bLv +bQa +bHE +bHE +bCq +bHE +bLv +bLv +bLv +bLv +bLv +aoV +aoV +aoV +aoV +aoV +apQ +bLv +cgH +bLv +aaf +cAj +cjJ +cjJ +cjJ +cjJ +cjJ +cjJ +cjJ +cjJ +cjJ +aaa +crn +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(87,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +ajX +akC +alj +alY +amI +amI +anM +aop +aoY +aaa +aaa +aaa +aaf +arP +avd +avZ +axr +ayE +ayE +ayE +ayE +ayE +ayE +ayE +ayE +ayE +ayE +aLl +aMT +aOu +aPL +aPK +aSm +aTI +aPK +aWB +cCj +apd +apd +bbU +cCk +apd +aZE +bgB +bhX +bgv +biF +bkw +bnE +bny +btv +btv +bjv +btv +buc +bxz +bBa +bwV +byy +bBa +bAb +bzY +bBa +bEQ +bGM +bKn +bGi +aoV +aoV +bLv +bPZ +bHE +bHE +bTz +bHE +bLv +aoV +aoV +aoV +aoV +aoV +aoV +aoV +aoV +aoV +aoV +bLv +cgH +bLv +aaa +cjJ +ckw +clC +cmy +cnm +cnL +cov +cpj +cpS +cjJ +aaa +crn +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(88,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ajX +akF +alm +akD +cLI +amI +amI +aop +aoY +aaa +aaa +aaa +aaf +arP +ave +awa +axu +ayH +ayH +ayH +ayH +ayH +ayH +aFV +ayH +ayH +aKy +aLn +aMU +aOw +aPN +aPK +aSn +aTK +aPK +apd +cCj +asW +baW +bLE +bLG +apd +bfj +bgC +bia +aZK +bjs +bkx +bmQ +bnA +bpB +bpB +brR +bsV +bwc +bxA +bvI +bwX +byG +bvI +bAm +bBG +bDo +byE +byE +bKp +bGi +apQ +apQ +bLv +bHE +bHE +bSs +bCq +bHE +bLv +aoV +aoV +aoV +bcU +apQ +aaH +cCa +aoV +aoV +aoV +bLv +cgH +bLv +aaa +cjJ +cky +clE +cmA +cno +cnN +cox +cpl +cpU +cjJ +aaf +crn +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(89,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +adB +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ajX +akE +all +alZ +amJ +anr +amI +aop +aoY +aaa +aaa +arP +arP +arP +cya +avZ +axt +ayG +ayG +ayG +ayG +ayG +ayG +ayG +ayG +ayG +ayG +aLm +aMS +aOv +aPM +aPQ +aPQ +aPQ +aPQ +apd +aYi +aqW +aqW +bbQ +bLG +apd +aZH +aZK +bhZ +aZK +bkM +bfQ +bnG +bnz +bpA +bbR +bkM +bqs +bud +bxy +bvG +bAZ +bGm +bzF +bAc +bGm +byE +cBB +byE +bKo +bxy +aaH +aaH +bCq +bHE +bRh +bSr +bCq +bHE +bLv +apQ +apQ +aoV +aoV +aaH +bdV +aaH +apQ +apQ +apQ +bLv +cgH +bLv +aaf +cjJ +ckx +clD +cmz +cnn +cnM +cow +cpk +cpT +cjJ +aaa +crn +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(90,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abc +abc +abc +afu +abc +aaa +aaa +aaa +aaa +aaa +aaa +akD +akD +alo +akD +akD +akD +anO +akD +akD +aaa +aaa +arP +asQ +aqR +aqR +avZ +axt +ayG +azK +aBe +aBe +aDj +aER +aFX +aHj +aJa +aKc +aLp +aMV +aOy +aLE +aPQ +aRV +aSW +aVa +apd +aWE +aqW +aqW +bcG +bLG +apd +aZH +bgD +bfN +bgE +bjv +bkH +bfm +boS +bfm +bNK +bkN +bml +bwe +bwe +bwd +bwY +byJ +bwe +bAc +bBI +bGn +bGn +bGn +bKq +bxy +apQ +apQ +bCq +bOK +bCq +bCq +bCq +bHE +bLv +aoV +aoV +aoV +aoV +cjn +bSu +aaH +aoV +aoV +aoV +bLv +cgH +bLv +aaa +cjJ +cky +clG +cmB +cnq +cnP +coz +cpn +cjJ +cjJ +aaa +crn +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(91,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abc +aea +aeH +aft +abc +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aiU +aln +aiU +aaa +aiU +anN +aiU +aaa +aaa +aaa +arP +asP +aqR +aqR +awb +axt +ayG +azJ +aBd +aBX +aDi +aEQ +aFW +aHh +aIV +ayG +aLN +aMS +aOx +aPc +aRe +aRT +aSt +aWF +apd +aWG +aZa +baX +bcH +bdE +apd +aZH +bnL +bbR +boU +bkM +bfm +bnI +boR +bqs +bbR +bkM +bNM +bwd +bxB +bvL +byI +byH +bwe +bAn +bBH +bxy +bxy +bxy +bxy +bxy +bLv +bLv +bCq +bHE +bLv +aaa +bLv +bHE +bLv +aoV +aoV +aoV +aoV +aoV +aaH +apQ +aoV +aoV +aoV +bLv +cgH +bLv +aaa +cjJ +ckz +clF +cmy +cnp +cnO +coy +cpm +cjJ +aaf +aaf +crn +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abY +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(92,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abc +abu +abu +abu +abc +abc +aec +aeJ +afw +abc +abc +aaf +aaa +aaf +aaf +aaf +aaf +aiU +alp +aiU +aaa +aiU +alp +aiU +aaf +aaf +aaf +arP +arP +arP +arP +avZ +axt +ayG +azM +aBg +aBZ +aDx +aET +aET +bCx +aHJ +aKd +aLq +aMY +aOA +aPO +aRf +aSc +aSc +aUw +apd +aXK +avr +aZJ +bbT +bSy +apd +aZH +beF +bfl +bmi +bjw +bmk +bbR +boT +bbR +bbR +buI +bbR +bwd +bxD +byL +byK +byT +bwe +bAx +bTE +bCq +bHD +bJe +bCq +bLu +bHE +bHE +bHE +bHE +bLv +aaf +bLv +bUt +bLv +apQ +apQ +aoV +aoV +aoV +aaH +aoV +aoV +apQ +apQ +bLv +cgH +bLv +aaf +cjJ +cjJ +cjJ +cjJ +cjJ +cnR +coB +cjJ +cjJ +aaa +aaa +crn +aaf +abY +abY +abY +abY +abY +abY +abY +abY +abY +aaa +aaf +cEX +abY +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(93,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abb +abt +aca +acz +acX +adC +aeb +aeI +afv +agf +abc +aaf +aaa +aaa +aiT +aiT +aiV +akG +cxJ +aiU +amK +aiU +cxP +aoq +aiV +aiT +aiT +arP +asR +aqR +arP +awc +axt +ayG +azL +aBf +aBY +aDw +aES +aJh +aHv +aJh +aKA +aLN +aMS +aOz +aLE +aPQ +aSa +aSr +aSr +apd +aYZ +bLE +aqW +aqW +bLE +apd +beA +bqp +bbR +boU +bLF +aZK +bnJ +bbR +bqt +cBq +bbR +bbR +bwd +bxC +byK +cBv +byO +bwe +bAo +bTE +bGo +bHC +bHE +bCq +bCq +bLv +bLv +bHE +bLv +bCq +aaa +bLv +bUs +bLv +aoV +aoV +aoV +aoV +aoV +apQ +aoV +aoV +aoV +aoV +bCq +cgH +bCq +aaa +aaf +aaa +aaa +aaf +cjJ +cnQ +coA +cpo +cjJ +aaa +aaa +crn +aaf +abY +cEX +cEX +cEX +cEX +cEX +cEX +cEX +abY +aaa +aaf +cEX +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(94,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abe +abw +acc +acB +acZ +adE +aee +aeL +afy +agh +abc +aaf +aaa +aaf +aiT +ajs +akb +akI +akI +amc +aiT +ant +akI +aos +aiT +apR +cCh +arP +asT +aqR +avf +awb +axt +ayG +azN +aBe +aBe +aDy +aEU +aGf +aHL +aJi +aKB +aLT +aNp +aOC +aPQ +aPQ +aTL +aTP +aWD +apd +aYj +aZL +baU +baU +bcV +apf +bfn +beW +bfR +bKF +bNH +aZK +bbR +bbR +bbR +bbR +bty +buJ +bwe +bxE +byM +bAd +bBf +bwe +bAJ +bCe +bCq +bHE +bJf +bCq +aaa +aaf +bLv +bHE +bLv +aaa +aaa +bTB +bUv +bES +bES +bES +bES +bGp +bGp +bGp +bGp +bES +bES +bES +car +cgH +bCq +bCq +bCq +bCq +bCq +bCq +cjJ +cnS +coC +cpp +cjJ +aaf +aaf +cig +aaf +aaT +aaT +aaT +aaT +aaT +aaT +aaT +aaT +aaT +aaf +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(95,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abd +abv +acb +acA +acI +adD +aed +aeK +afx +agg +abc +aaf +aaa +aaa +aiU +ajr +aka +akH +alq +amb +aiU +ans +alq +aor +apb +alp +aqS +arP +asS +aqR +arP +awd +axv +ayG +ayG +ayG +ayG +ayG +ayG +ayG +ayG +ayG +ayG +aHP +aNc +aOB +aPQ +aPQ +aSs +aSs +aSs +apd +apd +apd +baV +bON +apd +apd +aZK +beV +bfm +bKP +bfm +aZK +bnK +bnK +bqu +bqu +bnK +bnK +bwe +bwe +bwe +bwe +bwe +bwe +bAI +bCd +bCq +bCq +bCq +bCq +bLv +bLv +bLv +bOK +bLv +bLv +bLv +bTA +bUu +bVH +bVH +bVH +bVH +bVH +bVH +bVH +bVH +bVH +bVH +bVH +caq +cbw +ccu +ciT +bCq +bSs +ceY +ccw +ccw +cnR +cgT +cjJ +ccw +ccw +ccw +ccw +aaa +aaf +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(96,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaH +aai +aai +abg +aby +aby +aby +aby +aby +aeg +aeN +afA +afA +afA +aaf +aaa +aaa +aiU +aju +akd +akK +als +ame +amM +anv +als +aou +aiT +aiT +aiT +arP +arP +arP +arP +awf +axx +ayJ +ayJ +aBi +aqR +aqR +aqR +aqR +aqR +aqR +arP +aLI +aNr +bBo +aJq +aRh +aJq +aJq +aJq +aJq +aJq +aLY +aJq +aJq +bcW +bbV +bfo +bkS +bfo +bgn +bfo +bmn +bfo +boW +bmE +bmE +btz +btz +bwf +btz +btz +btz +bBh +bCr +bAK +bCn +bGq +bGq +bGq +bGq +bLw +bGq +bGq +bGq +bLw +bGq +bGq +bTD +bUx +bVI +bVI +bVI +bVI +bVI +bVI +bVI +bVI +bVI +bVI +bVI +bTA +bEP +cdi +bCq +bCq +bHE +bHE +cmD +cnr +cnU +chD +cpq +cpV +cqw +cqO +crp +aaa +aaf +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +aaa +aaT +abY +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(97,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aai +aai +aai +aaU +abf +abx +acd +acC +ada +adF +aef +aeM +afz +aai +aai +aai +aai +aai +aai +ajt +akc +akJ +alr +amd +amL +anu +alq +aot +apc +apS +aqT +arQ +arQ +atX +atX +awe +axw +ayI +azO +aBh +akL +aDz +aEV +aGg +aHx +aqZ +apg +aLx +aNq +aOD +aPe +aJq +aJq +aJq +aJq +aJq +aJq +aLY +aJq +aJq +bHt +aJq +aJq +beX +aJq +bgm +bjx +bmm +bnM +boV +bnM +brT +brT +brT +brT +brT +brT +bAe +bBg +bCq +bCq +bDt +bGp +bGp +bGp +bES +bGp +bGp +bGp +bGp +bGp +bGp +bES +bTC +bUw +bVI +bWB +bWB +bYz +bYz +cag +cbl +bYz +bWB +bWB +bVI +cax +cbx +cdh +ciU +cjK +ckA +ckA +cmC +cmC +cfJ +chB +cpW +cgR +cgR +cqN +cro +cEl +cEE +cEl +cFm +cFC +cFm +cFm +cFC +cGO +aaa +aaa +aaT +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(98,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aah +aai +aai +aai +aai +aaI +aaM +aat +aat +aat +ace +aat +aat +adH +aei +aeO +afJ +acd +agL +agK +agK +aiB +aai +ajw +akf +aiX +aiX +aiX +aiX +aiV +anP +aiT +cCi +cCi +cCi +cCi +cCi +cCi +cCi +awg +axy +ayL +azQ +aBk +ayL +ayL +ayL +ayW +ayW +ayW +ayW +aLW +aNs +aJq +aLX +aLX +aLX +aLX +aLX +aJq +aYl +aZN +aYl +aYl +aYl +aYl +aYl +bgG +bid +aYl +bBi +aLY +bnN +boY +bqw +aJq +aJq +aYl +aKF +aLX +aJq +aJq +bBi +aJw +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +bCq +bTF +bUw +bVI +bWD +bXA +bYB +bYz +cai +bYz +ccg +cdd +cea +bVI +caz +cby +cdj +cdv +cem +cem +cem +cfe +cfD +cgv +chE +ciN +ciN +cji +cDZ +crr +cEm +cEF +cEm +cFn +cFD +cFC +cFC +cFD +csb +aaf +aaf +aaT +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(99,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaf +aai +aan +aaw +aaB +aat +aaJ +aat +abh +aat +acd +abK +acY +adG +aeh +aeO +afI +agl +agH +ags +ags +aho +acd +ajv +ake +agj +afL +aez +ahU +aiX +anz +aov +cCi +air +aqY +arU +apU +apU +cCi +awg +axy +ayK +azP +aBj +aBO +aDC +ayL +aGo +aHN +aJj +ayW +aLV +aJq +aOE +aJn +aJn +aJn +aJn +aJs +aJq +aYk +aZM +aZM +bbW +bcX +bcX +aZM +aZM +aZM +bjz +bkT +bjz +bjz +boX +bqv +bqv +bqv +bqv +bwg +aJw +aJq +aJq +bBi +aJw +aaa +bEU +bGr +bGr +bGr +bKr +aaa +aaf +aaa +aaa +aaf +aaf +bCq +bTE +bUw +bVI +bWC +bXz +bYA +bZn +cah +bWB +ccf +cdc +cdZ +bVI +cay +ccw +ccw +ccw +ccw +ccw +ccw +ccw +ccw +cfL +coH +cBO +cgR +cDB +cqP +crq +cEn +cEF +cEn +cFo +cFD +cFm +cFm +cFD +cGO +aaa +aaa +aaT +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(100,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aak +aap +aay +aaD +aat +aat +aat +aat +abA +acd +acd +acd +acd +aek +aeU +afI +acd +agI +ahq +ahV +aho +acd +ajy +akh +afK +ajc +afM +afN +aiX +anz +aov +cCi +aqX +arR +asj +asU +ats +atY +auo +axy +ayN +azP +aAW +aCa +aDB +aDI +azW +azW +azW +ayW +aLX +aJq +aOE +aJn +aaa +aaa +aJn +aJs +aJq +aYn +aZM +aZu +bbY +bcY +bdX +bbX +bgH +bie +bjB +bkW +bmp +bjz +bpa +bqy +cBr +bqy +buK +bqy +aJw +aJq +aJq +bBi +aJw +aaf +bEW +bGt +bHG +bJh +bEW +aaf +aaf +aaa +aaa +bKv +bLB +bES +bMj +bUw +bVI +bWF +bXC +bXC +bZp +cak +bWB +bWB +bWB +cec +bVI +cay +ccw +chY +ciX +cjM +ckB +ckB +ckB +ccw +cnY +coH +cgR +cgR +cqx +cqR +crp +cEm +cEF +cEm +cFn +cFD +cFC +cFC +cFD +csb +aaf +aaf +aaT +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(101,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaf +aaj +aao +aax +aaC +aat +aat +adO +aat +abz +acd +acE +add +adF +aej +aeQ +afD +acd +agJ +ahp +ahp +aiC +adF +ajx +akg +agj +adL +ahr +aih +aiX +anz +aov +ape +arT +aqV +arS +apU +atu +cCi +awg +axy +ayM +azs +aAR +aBP +aDA +aEW +aGi +aHB +aEZ +aBt +aJs +aJq +aOE +aJn +aaa +aaa +aJw +aVb +aWH +aYm +aZM +aZq +bbX +bbX +bbX +bfp +aZP +aZP +bjA +cAG +bmo +bmr +boZ +bqx +brU +bmr +bmr +bmr +bmr +byN +aJq +bBj +aJw +aaa +bEV +bGs +cBC +bJg +bKs +aaa +aaf +aaf +aaf +bJQ +bLg +cCg +cCg +bNg +bVI +bWE +bXB +bYC +bZo +caj +bWB +cch +cde +ceb +bVI +cay +ccw +chY +cCW +ciW +ckB +ckB +ckC +ccw +cnX +coH +cps +cpX +cqz +cqQ +ccw +cEp +cEF +cEn +cFo +cFD +cFm +cFm +cFD +cGO +aaa +aaa +aaT +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(102,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aal +aar +aay +aaF +aat +aaO +aaW +aat +abB +acf +abM +acG +adI +aem +aeO +afG +acd +agK +agK +ail +aiE +aiW +ajA +akj +agj +agj +agj +aiX +aiX +anQ +aov +cCi +apU +arT +arT +asn +atK +auq +avs +axz +ayP +azU +aBo +aCg +azW +aEX +aEZ +aEZ +aEZ +aEX +aJs +aJq +bJx +aJn +aaa +aaa +aTQ +aVd +aWJ +aYp +aZM +aZz +baI +bda +bda +bca +bgJ +aZP +bjD +bkY +bmo +bnP +bpc +bqA +brW +btB +buM +bwi +bmr +aMm +aJq +bBi +bCs +bCs +bEY +bGu +bHI +bJi +bEY +bCs +bCs +bNI +bNI +bRn +cce +bNI +bNI +bUz +bVI +bWG +bXD +bYz +bYz +cam +bYz +bYz +cdf +ced +bVI +cay +ccw +ciZ +ciZ +ciZ +ckC +ckC +ckC +ccw +coa +coJ +clJ +clJ +cig +cig +ccw +cEm +cEF +cEm +cFn +cFD +cFC +cFC +cFD +csb +aaf +aaf +aaT +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(103,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaf +aaj +aaq +aay +aaE +aaJ +aaN +aaV +aat +aat +acd +abL +adb +acd +ael +aeO +afF +agj +agj +agj +agj +agj +agj +ajz +aki +akM +alv +amf +amQ +anw +anz +aov +cCi +arT +arT +asl +arT +apU +cCi +awg +axy +ayv +azE +aBn +aCb +aDD +aEY +aGj +aHC +aEZ +aBt +aJs +aJq +aOE +aJn +aaa +aaa +aPR +aVc +aWI +aYo +aZM +aZy +bay +bcZ +bdY +bdF +bgI +aZP +bjC +bkX +bmo +bnO +bpb +bqz +bqq +brS +bsY +bue +bmr +aMn +aJq +bBi +bCs +bDv +bEX +bFa +bHH +bFa +bKt +bLx +bCs +cCe +bRl +apV +bLC +cCf +bNI +bUz +bVI +bWB +bWB +bYz +bZq +cal +cbm +bYz +bWB +bWB +bVI +cay +ccw +ccw +ciY +ciY +ccw +ccw +ccw +ccw +cnZ +coH +cpt +cpZ +cig +cqS +ccw +cEp +cEF +cEn +cFo +cFD +cFm +cFm +cFD +cGO +aaa +aaa +aaT +cEX +abY +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(104,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aal +aat +aay +aat +aat +aaJ +aat +aat +abD +acd +acd +acd +acd +aen +aeO +afH +agj +agM +ahu +ahW +aiD +agj +auj +akl +akO +alx +alx +amR +anw +anz +aox +cCi +cCi +cCi +cCi +cCi +cCi +cCi +awg +axy +ayQ +azE +aBq +aBr +aDE +aFc +azW +azW +aJf +ayW +aJr +aJq +aOE +aJn +aaa +aPR +aPR +aPR +aWL +aPR +aZM +bbX +bay +bbM +bcN +bdK +bgL +aZP +aZP +aZP +bmo +bnR +bpe +bqB +bqq +btD +buO +bwk +bmr +aLY +cBw +bBk +bCs +bDx +bFa +bFa +bHJ +bFa +bFa +bLz +bCs +cCe +bNJ +apV +cjL +bNJ +bNI +bUz +bVJ +bWI +bXF +bXF +bZs +cao +cbo +bXF +bXF +cef +bVJ +cay +ccw +cib +cjb +ckH +ckE +clH +cmG +cnt +cob +coL +cDo +cgR +cqA +cqT +czh +cEm +crU +csb +cFn +cFD +cFC +cFC +cFD +csb +aaf +aaf +aaT +aaT +aaT +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(105,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaf +aaj +aas +aaz +aat +aat +aat +aat +aat +abC +acd +acH +adc +acd +aeo +aeS +afH +agj +agN +aht +ain +aid +agj +aiZ +akk +akN +alw +amg +amR +anw +anR +aow +apg +aqZ +aqZ +aqZ +apW +aqZ +avh +awh +axz +ayO +azE +aBp +aCc +aDF +ayL +aGq +aHO +aJl +ayW +aJq +aJq +aOE +aJn +aaa +aPR +aTR +aVe +aWK +aYq +aZO +aZC +baK +bbC +bbC +bdI +bgK +bgK +bjE +bgK +bmq +bnQ +bpd +bpd +bqr +btC +buN +bwj +bmr +byP +aJq +bBi +bCs +bDw +bEZ +bGv +bHH +bJj +bKu +bLy +bCs +bNJ +bNJ +bKx +cjL +bNJ +bNI +bUA +bVJ +bWH +bXE +bYD +bZr +can +cbn +cci +cdg +cee +bVJ +cay +ccw +cia +cja +cgR +ckD +cig +cmF +cfG +cgw +coK +cpu +cMm +ccw +ccw +ccw +crK +cEK +csa +csj +csa +csa +cGr +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(106,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aab +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aam +aav +aav +aav +aaL +aaQ +aaY +aav +abE +acg +acJ +ade +adJ +aep +aeT +afH +agj +ahs +ahP +ahP +aiF +agj +aja +ajG +akQ +agj +agj +amS +anx +anz +aov +aph +aph +aph +arW +aso +auf +avi +awi +axy +ayS +azS +aBs +aCi +aDI +ayL +ayW +ayW +ayW +ayW +aJq +aJq +aOE +aJn +aaa +aPR +aTT +aVg +aWN +aYs +aZQ +bbi +bde +bcd +bcd +bcd +bcd +bcd +bcd +bcd +bms +bnS +bpf +bqC +brZ +btE +bnS +bwl +bxG +byR +brT +bBl +bCs +bDz +bFa +bFa +bHH +bFa +bFa +bFa +bCs +bNL +bNJ +apV +cjL +bNJ +bNI +bUz +bVJ +bOo +bOD +bQb +bZv +bSd +bXG +bOC +bWt +cBK +bVJ +cay +ccw +cid +cgR +cen +ckG +clJ +cmF +cgR +cgI +chF +ciO +cqc +cqc +cqc +cEd +cEr +cEL +cFb +cFu +cFI +cGd +cGs +cGr +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(107,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaf +aai +aau +aaA +aaG +aaK +aaP +aaX +aat +aat +acd +acD +acY +adG +aeq +aeV +acd +agj +ahm +ahD +aiw +aiO +agj +ajD +akm +akP +aly +amh +amR +anw +anz +aov +aph +aob +ara +arV +apZ +aph +aph +awg +axA +ayR +azR +aBr +azW +afO +azW +agm +aBt +aaa +aJn +aLY +aLY +aOF +aPR +aPR +aPR +aTS +aVf +aWM +aYr +aZP +bbh +bcc +bdd +bbX +bfr +bgM +bif +aZM +aZM +bmr +bmr +bmr +bmr +bmr +bmr +bmr +bmr +bmr +byQ +aJq +aJq +bCs +bDy +bFb +bGw +bER +bJk +bFa +bLA +bCs +cCd +bQc +bKA +cjL +bSv +bNI +bUB +bVJ +bOl +bOC +bPQ +bQK +bYF +bTI +bUy +bWs +ceg +bVJ +cay +ccw +cic +cBO +cjN +cgR +ceu +clQ +cgR +cgx +coM +cpv +cqb +cqb +cqb +cqb +cEs +cqb +cqb +cAp +cqb +cAo +cGt +cgx +ccw +ccw +ccw +ccw +ccw +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(108,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aai +aai +aai +aai +aai +aai +aai +abj +abG +acd +acd +acd +acd +aeP +afC +agk +agF +agP +agP +agP +agP +aiz +ajg +akl +akR +alx +alx +amR +anw +anz +aov +aph +aoc +ata +arY +ata +auh +aph +awg +axA +ayT +azR +azW +azW +aBt +azW +aio +aBt +aaa +aJn +aJq +aJq +aOE +aPT +aRj +aSv +aTV +aVi +aWP +aYu +aYt +bbk +bbk +bbk +bbk +bfs +aZM +aZM +aZM +aaf +aaf +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aJn +aXf +aJq +byV +bCs +bAM +bFa +bGy +bFc +bJm +bFa +bHO +bCs +cCd +cCd +aYg +cjL +cCc +bNI +bEP +bVJ +bVJ +bOM +bQd +bQP +bSt +bUc +bVb +bWv +cei +bVJ +caB +ccw +cif +cgR +cjP +ckF +ceZ +ckF +ckF +cgK +cDg +cDp +cqe +cqB +cqB +cEe +csP +cAl +cFc +cAq +cFJ +cDq +cGu +cGH +cGR +cHa +cEj +ciZ +ccw +aaa +abY +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(109,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaf +aai +abi +abF +ach +acK +adf +acd +aer +afB +agi +agD +agO +agO +agO +agO +aiy +ajb +ajF +akN +alw +ami +amR +anw +anz +aov +api +ata +arb +arX +atc +aug +aph +awg +axA +azW +ayU +azW +aCj +ayW +ayW +ayW +ayW +aJn +aJn +aJq +aJq +aOE +aPS +aRi +aSu +aTU +cpC +aWO +aYt +aYx +bbj +bce +bdf +beb +aYv +aaf +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aJn +aXf +aJq +byU +bCs +bAL +bFa +bGx +bET +bJl +bHh +bHN +bCs +cjo +cCd +bSx +cjL +cCb +bNI +bEP +bVL +bVJ +bVJ +bVJ +bVJ +bVJ +bVJ +bUC +bWu +bVJ +bVJ +caB +ccw +cie +cdT +cCY +cnA +cev +cfg +cgU +cgJ +chG +cDq +cqd +cDC +cqU +cEf +cEt +cEM +csA +cEg +cFK +cGe +cGv +cGI +cGS +cHb +cHg +cHn +ccw +aaf +aaT +cEX +aaT +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(110,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaR +aaZ +aaZ +aaZ +aaZ +aaZ +aaZ +aaZ +aaZ +aaZ +aaZ +agn +agR +agn +agR +agn +ajc +ajI +ako +akQ +agj +agj +amS +any +anz +aov +aph +aqb +are +arZ +ata +aui +aph +awg +axA +ayX +azY +azW +azW +afP +aFb +aEZ +cyg +aJp +aKE +aMa +aNw +aOE +aPU +aRl +aSx +aTX +aVi +aWR +aYv +aZS +aZR +aZR +bbm +bec +bfu +bgO +bgO +bgO +bmu +bgO +bgO +bgO +bgO +bsb +aaf +aaf +aaf +aJn +aXf +aJq +aJq +bCs +bFa +bFa +bFa +bET +bJn +bHi +bHQ +bCs +cjo +bJu +bSx +cmX +bSz +bNI +bUD +bVM +bVM +bVM +bVM +bVM +cat +bCq +bVd +bWK +bYp +bCq +cay +ccw +cih +cje +cgR +ckJ +clJ +cmL +cgR +ccw +cDh +cpy +cDv +cDD +cqU +ccw +cEu +cEu +cEu +ccw +cFL +cGf +cGw +cMm +ciZ +cHc +cHh +cHh +ccw +aaa +abY +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(111,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaf +aaT +aaf +aaZ +abm +cpg +acv +adi +adi +aaZ +aeW +agQ +ahv +ahQ +aiI +aiH +ajB +akm +akP +aly +amj +amR +anw +anz +aov +aph +aph +ard +ard +ard +aph +aph +awj +axA +ayW +ayW +aBt +aBt +ayW +ayW +ayW +ayW +aJo +aJq +aLZ +aNv +aOE +aPS +aRk +aSw +aTW +aVj +aWQ +aYv +aZR +aZR +aZR +aZR +aZR +bft +bgN +bgN +bgN +bmv +bkI +bnT +bpg +bqD +bsa +bgO +buP +bwm +bxH +byS +aJq +aMh +bCs +bCs +bCs +bCs +bFe +bCs +bLD +bCs +bCs +bNI +bNI +bKU +cnB +bNI +bNI +bCq +bCq +bCq +bCq +bCq +bCq +cas +bCq +bVc +bWJ +bYn +bZB +caC +ccw +cig +cjd +cgR +ckI +cig +cmK +cBO +ccw +chV +cDq +cqf +cqD +ccw +crs +cEv +cEv +cFe +ccw +cFM +czE +cGx +ccw +cGT +cEj +cEj +ciZ +ccw +aaf +aaT +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(112,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaf +aaT +aaa +aaZ +abH +acl +ajC +acL +adi +aaZ +agp +agT +ahx +ahS +aiK +ajc +ajI +akl +akT +aww +alx +amR +anw +anz +aov +apk +anw +anw +anw +anw +aVh +avj +awl +axC +ayY +azZ +azZ +azZ +azZ +azZ +aGt +aHQ +aJr +aJq +aMc +aNy +aOE +aPS +aRn +aSz +aTY +aVl +aWT +aYx +aZR +bbm +bbm +bdh +bee +bfv +bgN +bih +big +bii +bgN +bnV +bph +bqF +bsd +btG +buQ +bwn +bxI +bwa +bAg +bBq +bCu +bAO +bFd +bFd +bFj +bJp +bHk +bHR +bIe +bFd +bJz +bRp +cav +bSA +bTJ +bSA +bSA +bWL +bSA +bSA +bZx +bSR +bUl +bVf +bXm +bYE +bCq +ceW +ccw +cij +cjf +cgR +ckK +clJ +cmL +cgR +cgL +chX +cDq +cqh +cqF +cra +crI +cEw +cEw +cEw +cFw +cFN +csH +csR +cMm +cGU +cEj +cEj +cHo +ccw +aaa +abY +cEX +abY +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(113,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaf +abY +aaa +aaZ +abn +ack +adk +adK +cqG +aeX +ago +agS +ahw +ahR +aiJ +ajc +ajI +akk +akS +alw +amk +amR +anw +anS +aoy +apj +anz +anz +anz +anz +anz +anz +awk +axB +anz +anz +anz +anz +anz +anz +apj +aHP +aJq +aJq +aMb +aNx +aOE +aPS +aRm +aSy +aTX +aVk +aWS +aYw +aZT +cBj +bcf +bdg +bed +bfv +bgN +big +bgN +bkZ +bgN +bnU +bph +bqE +bsc +btF +bph +bsc +btF +bvW +bAf +bBp +aHP +bAN +bQg +bQg +bFh +bGN +bHj +bNN +bNN +bNN +bNN +bNN +cau +cBH +bMG +bLZ +bLZ +bLZ +bLZ +bLZ +bQQ +bSw +cbr +bVe +bXk +bYq +ccw +ccw +ccw +cdk +cja +cgR +ckK +clJ +cmL +cnv +cMm +chX +cDq +cqg +cqE +cqZ +crt +czE +cAm +czE +cMm +cFO +csC +csQ +cMm +cGV +cEj +cGV +ccw +ccw +aaa +abY +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(114,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaf +aaT +aaa +aaZ +abJ +ack +acM +adQ +cwM +aeZ +agr +agU +ahy +ahX +aiL +ajc +ajI +akq +akQ +agj +agj +amS +anx +anz +aoz +apm +aqd +anA +asa +atd +anA +avk +awk +axE +ayZ +aAa +aBu +aAa +aAa +aAa +aGu +aHR +aJt +aJq +aMe +aNA +aOE +aPV +aRp +aSB +aTZ +aVn +aWV +aYz +aZR +bbm +bbm +bdh +bef +bfv +bgN +bii +big +bih +bgN +bnV +bph +bqF +bsf +btG +buS +bwp +bxK +bwh +bAh +bBs +bzG +bAP +bCp +bDp +bFq +bGO +bHl +bHS +bLI +bLI +bOR +bQg +bQg +bQg +bQg +bQg +bQg +bQg +bQg +bYI +bDG +bHP +cbt +bVh +bXo +bYM +cfb +cfF +cfb +cfb +cfb +cfb +cfb +cig +cmN +cgR +cgL +chX +cDq +cqj +cqF +crb +cru +cEx +cEx +cEx +cAP +cFP +csI +cAt +cMm +cEj +cEj +cEj +cHp +ccw +aaf +abY +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(115,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaf +aaT +aaa +aaZ +abI +ack +coS +aet +cxA +aeY +agt +agt +ahz +aie +aiN +ajc +ajI +akp +akU +alz +aml +amT +anw +anz +aoz +apl +aqc +aqc +aqc +aqc +aqc +aqc +awm +axD +ahn +ahn +ahn +ahn +ahn +ahn +ahn +ahn +aJs +aJq +aMd +aNz +aOE +aPS +aRo +aSA +aTX +aVm +aWU +aYy +aZR +aZR +aZR +aZR +aZR +bfw +bgN +bgN +bgN +bjy +bmw +bnW +bpi +bqG +bse +bij +buR +bwo +bxJ +bwb +aJq +bBr +bCv +bCv +bCv +bCv +bCv +bJq +bKw +bLH +bRq +bNO +bOQ +bQf +bRq +bRq +bTK +bUE +bUE +bWM +bXJ +bYH +bYH +bYH +bYH +bVg +bXn +bYG +cfb +cfE +cgM +cik +cjg +cjU +ckL +clM +cfz +cgR +ccw +cii +cDq +cqi +ccw +cAP +crv +cEy +cEy +cFh +ccw +cFQ +czE +cGx +ccw +cGT +cEj +cEj +ciZ +ccw +aaf +aaS +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cBY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(116,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaf +abY +aaa +aaZ +abQ +ack +adj +arc +blT +agq +cml +agV +cxk +aig +aiM +ajc +ajI +akp +akV +alB +amn +amV +anw +anz +aoz +aod +aqf +ahT +ahT +ahT +ahT +ahT +awn +axF +anF +anF +anF +anF +anF +anF +anF +aoa +aJu +aKF +aMf +aNB +aOE +aPW +aRr +aSD +ceh +aVp +aWX +aYB +aZU +aZR +aZR +bbm +beh +bfx +bij +bij +bij +bgR +bij +bij +bij +bij +bsg +aaf +aaf +aaf +aJn +aJq +aJq +bBu +bCv +bAT +bDL +bDq +bCv +bJs +bKy +bLK +bLK +bLK +bOT +bQi +bRs +bSC +bLK +bUG +bVO +bWO +bXK +bYH +bZz +caw +bYH +bVo +bXq +bZe +cfb +cfH +cgO +cim +cgO +ceo +ceq +cfa +cmQ +cgR +ccw +cDi +cDr +cDw +cDE +cEa +ccw +cEz +cEz +cEz +ccw +cFR +cGf +cGz +cMm +ciZ +cHd +cHj +cHd +ccw +aaa +abY +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(117,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaf +abY +aaa +aaZ +abN +ack +bkA +acF +aes +avB +amN +agt +awN +aHp +aIF +ajc +ajI +akp +akQ +alA +amm +amU +anw +anT +aoA +apn +aqe +arf +arf +arf +arf +arf +arf +arf +arf +arf +arf +arf +arf +arf +anF +ahn +aJn +aJn +aJq +aJq +aOE +aPS +aRq +aSC +aUa +aVo +aWW +aYA +aYz +bbn +bcg +aZU +beg +aYB +aaf +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aJn +aJq +aJq +bBt +bCv +bDH +bFf +bGB +bCv +bJs +bKy +bLJ +bLJ +bNP +bOS +bQh +bRr +bSB +bTL +bUF +bVN +bWN +bLK +bYJ +bRi +bZy +cbu +bVm +bXp +bYO +cfc +cgO +ccj +cBM +cdU +ceo +ceq +clQ +cmQ +cgR +cMm +chX +cpD +cDw +cDF +cEa +cEg +cEA +cET +cFj +cEf +cFS +cGg +cGA +cGI +cGS +cHe +cHe +cHr +ccw +aaf +aaT +cEX +aaT +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(118,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaf +aaT +aaf +aaZ +aci +acm +cpA +adg +aeu +alt +agu +agX +ahB +aij +agn +aje +ajJ +akr +akX +alC +alC +amX +anz +anz +aoB +aod +aqe +arf +aqa +atf +arf +aqa +atf +arf +aqa +atf +arf +aqa +atf +arf +anF +ahn +aaa +aJn +aJq +aJq +aOE +aPX +aRs +aSE +aUc +aVm +aWY +aYC +aYA +bbp +bbp +bbp +bbp +bfz +aZV +aZV +aZV +aaf +aaf +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aJn +aJq +aJq +aXf +bCv +bDK +bFi +bGE +bCv +bJs +bKy +bLM +bLM +bNQ +bOV +bQk +bRt +bSD +bTM +bUH +bVQ +bWN +bXM +bYL +cew +bTh +cdt +bVq +bXI +bZg +bZD +cbq +ccl +cdm +cio +cjY +ckP +ckH +cja +cgR +cMm +cDj +cDs +cql +cDG +cDG +cEh +cEB +cEU +cFk +cAs +cFT +cDq +cGx +cGK +cGY +cEk +cEj +cHs +ccw +aaf +abY +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(119,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +aaa +adR +abo +aaZ +aaZ +aaZ +acT +adl +aaZ +aaZ +agn +agW +ahE +aii +agn +ajd +ajI +ahY +akW +aiG +amo +amW +anz +anz +aoz +aod +aqe +arf +apY +ate +arf +apY +ath +arf +apY +ath +arf +apY +ate +arf +anF +ahn +aaa +aJn +aLY +aLY +aOG +aPR +aPR +aPR +aUb +aVq +aWM +aYr +aZV +bbo +bch +bdi +bei +bfy +bgS +bik +aZV +aZV +bmx +bmx +bmx +bqH +bsh +bsh +bsh +bsh +bqH +aJq +aJq +aXf +bCv +bDJ +bCt +bGD +bCv +bJs +bKy +bLL +bLL +bNQ +bOU +bQj +bOd +bOd +bRx +bTP +bVP +bWP +bXL +bYK +bRj +bTg +bUm +bVp +bXH +bZf +bZC +cbp +cck +cin +cjj +cjX +ckO +clP +cgR +cny +ccw +cip +cnx +cDx +cqb +cqb +cqb +cEC +cqb +cqb +cAr +cqb +cGh +cGC +cey +ccw +ccw +cHl +ccw +ccw +aaf +abY +aaT +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(120,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +abp +abP +aco +acO +abl +abO +abO +afc +afQ +agw +agY +ahA +ahZ +adR +aiQ +ajI +akt +akQ +agj +agj +aiX +anB +anz +aoD +aod +aqe +arf +aqn +ath +arf +auw +ath +arf +ayV +ath +arf +aCd +ath +arf +anF +ahn +aJw +aJw +aMh +aJq +aOE +aJn +aaa +aPR +aUe +aVs +aXa +aYD +aZX +baf +bdk +bdk +bek +bfB +bgU +bdk +bjF +blc +bmz +bnY +bpk +bqJ +bsj +btI +btd +bwr +bqH +aMm +aJq +bBv +cBy +bDM +bCw +bDr +bCy +bGP +bHn +bLN +bLN +bNS +bOX +bQm +bRv +bOd +bTN +bTP +bRA +bWQ +bWQ +bYN +bRm +bTj +caA +cer +ccs +bZu +cfb +cfb +cgS +ciq +cfb +cfb +ckR +clR +cgR +cgR +cMm +cir +cDt +cDy +cqC +crc +cEi +cED +crc +crc +cFy +cBR +cGi +cGD +cGL +aag +aag +aaf +aaf +aaf +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(121,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +abo +abO +abO +abO +abO +abO +abO +afb +abo +afg +ahb +ahG +aik +cBV +ajf +ajK +aks +akY +alx +amp +aiX +anA +anz +aoC +aod +aqe +arf +asd +atg +arf +asd +awo +arf +asd +aAb +arf +asd +aDK +arf +aoa +ahn +aJv +aKG +aMg +bHt +aOE +aJn +aaa +aPR +aUd +aVr +aWZ +aYq +aZW +aZG +bej +bej +bdj +bfA +bgT +bil +bej +blb +bmy +bnX +bpj +bqI +bsi +btH +btc +bwq +bqH +aJq +aJq +aXf +bCv +bAU +cAL +bFg +bFs +bJt +bKy +bLK +bMK +bNR +bOW +bQl +bRu +bSE +bRx +bUI +bVR +bWQ +bOO +bQe +bRk +bTi +caA +bVr +bXN +bZt +bZE +cbs +cCT +cdn +cej +cep +ces +clN +ccm +ckF +cDe +cDk +coc +cqa +cig +ccw +ccw +czF +cEj +cEj +cFz +cFU +cGj +cGE +cGM +cGZ +aag +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(122,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +abp +abO +acq +acq +acq +acq +aew +afe +afS +agy +aha +ahC +aia +aiP +aiR +ajB +akv +ala +akz +alf +aiX +anA +anz +aoF +apo +aqh +arh +asg +atj +aul +auR +atj +aul +azc +atj +aAX +azc +atj +aFe +aul +aHT +aJy +aJy +aMj +aJq +aOE +aJn +aaa +aPR +aPR +aPR +aXc +aPR +aZV +baq +baQ +baQ +bcQ +bfC +bgV +bim +bjG +aZV +bmB +bnZ +bpl +bqH +bsl +btK +buW +bwt +bqH +aLY +aLY +bBx +bCv +apG +bFk +bDs +bCv +bJs +bHo +bLK +bMK +bMK +bOY +bQn +bRx +bMK +bMK +bUJ +bVS +bWQ +bXP +cBI +bRS +bTH +caA +bWh +cdt +bZA +cfh +cfM +cco +cdp +cel +cyM +ckT +cgU +cco +cgU +cgU +cis +cjN +cDz +cDH +cMm +cEj +crM +crV +crV +cFA +cEj +cGk +ccw +aag +aag +aag +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(123,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +abo +abO +acp +acP +acP +acP +aev +afd +afR +agx +agZ +ahI +aim +adR +aiG +ajL +aku +akZ +alE +amq +aiX +anA +anz +aoE +aod +aqg +arg +asf +ati +auk +aux +avt +axL +bbl +azT +auk +auk +aDG +aFd +auk +aHH +aJg +aKo +aLO +aJq +aOE +aJn +aaa +aaa +aPR +aVt +aXb +aYo +aZV +bao +baP +bbZ +bcP +cBo +bbw +bbw +bbw +aZV +bmA +bmx +bmx +bqH +bsk +btJ +buV +bws +bqH +aJq +aJq +byW +bCv +bAV +bCv +bCv +bCv +bJs +bKz +bLK +bML +bNT +bOV +bQj +bRw +bSF +bOd +bTP +bRA +bWQ +bXO +bQq +bRo +bTG +caA +bVK +bYb +bZw +cap +ctR +ccn +cdo +cek +ccw +cet +cfd +cfB +cfI +cgQ +cjS +cjN +cqm +cgR +crd +cEk +crL +cEW +cse +cse +csu +cGl +ccw +aaa +aaa +aaf +aaa +aaf +cEX +abY +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(124,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +abp +abR +abP +abP +abP +abP +abp +abp +abp +agA +afU +ahF +aip +adR +aiX +ajN +akx +aiX +aiX +aiX +aiX +anC +anU +anC +aod +aqe +arf +arf +arf +arf +auU +avG +awr +awr +azV +aAh +aAh +aFg +aFh +aAh +aAh +aAh +aAh +aLR +aJq +aOE +aJn +aaa +aaa +aTQ +aVd +aXe +aYp +aZV +bbv +bcm +bcm +bem +bfD +bgW +bfD +bjI +aZV +bmC +boa +bpm +bqH +bsn +btL +buY +buY +bqH +aJq +aJq +aXf +bCv +bDP +bCv +bAw +bHV +bJw +bKC +bLK +bMN +bNV +bOV +bQo +bRz +bSH +bOd +bTP +bRA +bWQ +bWQ +bWQ +bWQ +caD +bWQ +ccw +ccw +cey +ccw +ccw +ccw +ccw +ccw +ccw +ccw +ccw +ccw +ccw +ccw +cDl +cjN +cjh +cDI +ccw +ccw +ccw +ccw +ccw +cMm +cMm +cMm +ccw +aaf +aaf +aaf +aaf +aaf +cEX +abY +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(125,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +aaf +abq +abq +abq +abr +abr +abq +abq +aff +afT +agz +ahb +ahF +clI +abp +ajh +ajM +akw +alb +alG +amr +amY +amY +ajp +aoG +aod +aqe +arf +aqo +asp +arf +auS +avv +awu +awr +aAd +aAh +aCm +aDL +aFf +aGk +aHU +aJz +aAh +aLQ +aJq +aOE +aJn +aaa +aaa +aJw +aVu +aXd +aYE +aZV +bbu +bbw +bbw +bbw +bbw +bbw +bbw +bjH +aZV +bmx +bmx +bmx +bqH +bsm +btL +buX +buX +bqH +aJq +aJq +bBy +bzs +bDO +bFl +bGH +bHU +bJv +bKB +bLK +bMM +bOd +bOV +bQj +bRy +bSG +bOd +bUK +bVT +bWR +bXQ +bOd +bZF +bPc +bOd +ccv +cdw +cex +bOd +cfN +cfN +bLK +apQ +bOh +bOh +bOh +bOh +bOh +ccw +cDm +cjP +ckF +cDJ +ckF +cpE +cjR +crW +csg +aag +aaa +aaa +aaa +aaa +aaa +aaa +cEX +cEX +cEX +abY +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(126,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +abq +abT +acs +acR +ado +adN +aex +afh +afV +agB +ahd +ahI +clS +abp +ajj +ajP +aky +alc +alI +ams +amZ +amZ +anW +aoH +aod +aqe +arf +asm +blU +atQ +avg +awp +axN +awr +aAg +aAh +aDO +aDQ +aFi +aGl +aBy +aBy +aAh +aMn +aJq +aOE +aJn +aaa +aaa +aJn +aVv +aXg +aYF +aZV +bbw +bcn +bbw +ben +bfE +bgX +bbw +bjJ +bld +bmD +bmD +bmD +bqK +bso +btN +buZ +buZ +bqH +byN +aJq +bBA +bCz +bDQ +bFn +bGJ +bHX +bJy +bKE +bLP +bMP +bIG +bJB +bKV +bRB +bSI +bSI +bUM +bVV +bWS +bSI +bSI +bZG +caE +cbA +ccy +bOd +bOd +bQu +cfO +cgW +cit +cph +ckb +ckV +clU +clU +bOh +ccw +coZ +cgU +cgU +cDK +crw +cjO +ccw +crX +cfK +aag +aaa +aaa +aaa +aaa +aaa +aaa +abY +abY +abY +abY +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(127,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +aaf +abr +abS +acr +acQ +adn +adM +abq +afg +afU +afU +ahc +ahH +aiq +abp +aji +ajO +akw +ajn +alH +amr +amY +amY +anV +ajo +aod +aqe +arf +ari +asu +aun +auW +avR +axM +awu +aAf +aAh +aCn +aDM +aGx +aAh +aAh +aBy +aAh +aMm +aJq +aOE +aJn +aJn +aJn +aJn +aJs +aXf +aYk +aZV +aZV +aZV +aZV +aZV +aZV +aZV +aZV +aZV +aZV +bmx +bmx +bmx +bqH +bqH +btM +bqH +bqH +bqH +aJq +bHt +bBz +bzs +bzs +bFm +bGI +bHW +cBD +bKD +bLO +bMO +bIF +bOZ +bQp +bRA +bOd +bTO +bUL +bVU +bMK +bXR +bYQ +bXR +bMK +cbz +ccx +cbA +cbA +cfi +bRH +cgV +bMQ +apQ +bQA +ckU +clT +cmU +bOh +ccw +cpa +cjc +cqo +cDL +cjk +cjm +ccw +ccw +cig +aag +aag +aag +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(128,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +abr +abV +acu +acS +adp +adP +aey +afj +afX +agC +ahf +ahK +ait +abp +ajl +ajR +akw +ald +alJ +amt +ajp +ajp +anY +ajo +apq +aqe +arf +arf +arf +arf +avm +aws +axP +azb +aAi +aAh +aCn +aDM +aGx +aGm +aHV +aBy +aAh +aJq +aJq +aJq +aJr +aJr +aJr +aJr +aJr +aXh +aYG +aZY +aYG +aYG +bdn +bep +aYG +aYG +aYG +aYG +ble +bmE +bmE +bpn +bqL +bsp +btO +bva +bwu +bwu +bwu +bwu +bBB +aJv +bzs +bFp +bGJ +bHZ +bJA +bKG +bLK +bMR +bIH +bJF +bQr +bRA +bOd +bTP +bOd +bVX +bMK +bMK +bYR +bMK +bMK +cbC +bRA +bTO +cez +cez +cfQ +cgY +ciu +bVu +ckb +ckW +clU +clU +bOh +ccw +ccw +cpI +ccw +cDL +cjl +cjQ +cjV +cig +aaf +aaf +aaf +aaf +aag +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(129,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaf +aaf +aaf +aaf +aaf +aaf +abr +abU +act +acu +acu +ato +abq +afi +afW +afW +ahe +ahJ +ais +abp +ajk +ajQ +akw +ajn +alH +amr +amY +amY +anX +ajo +app +aqi +arf +ask +atm +arf +avl +awq +axO +aza +aAh +aAh +aAh +aDS +aGx +aAh +aAh +aDN +aAh +aMo +aNC +aJq +aJq +aJq +aJq +aJq +aJq +aJq +aJq +aLY +aJq +bco +aJq +beo +aJq +aJq +aJq +aJq +aJq +aJq +aJq +aJq +aLY +aJq +bAk +aJq +aJq +aJq +aJq +bAj +aJq +aKG +bzs +bFo +bDu +bFt +bGQ +bHp +bLK +bMQ +bNY +bPa +bMQ +bRC +bMQ +bTP +bUN +bVW +bMK +bXS +bXS +bXS +bMK +cbB +alk +alX +aoZ +bQt +apa +cgX +apF +apI +bOh +bOh +bOh +bOh +bOh +cig +cpb +ciZ +cqp +cDN +cjT +cgR +crP +cig +aaa +aaa +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(130,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +abq +abW +abk +acj +acn +adh +adm +afk +afZ +agE +ahh +ahM +aiv +abp +aiY +ajE +ajH +akn +ale +alD +ana +ana +amu +ajo +aps +aqk +arf +asm +aHw +aup +avn +awv +axX +aze +aAh +aBz +aBz +aDU +aGx +aGn +aHW +aBy +aAh +aJq +aJq +aJq +aJq +aRt +aJq +aJq +aJq +aJq +aJq +aLY +aJq +bcp +aJq +beq +aJq +bgY +aJq +aJq +aJq +bAi +bmS +bmS +bpC +bqN +aNr +aJq +aJq +bxL +byX +aJq +aJq +bCA +bzs +bCC +bDA +bFx +bGW +bKI +bLQ +bMT +bOb +bPd +cBF +bRD +bSK +bTR +bUP +bVZ +bWT +bWa +bYS +bZH +caF +bQt +cBJ +cdy +bOd +bRy +cfR +cha +civ +cph +ckb +ckY +clW +clW +bOh +cig +cig +czg +cig +cDN +crh +crA +crR +crY +csi +aaa +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(131,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +abq +abq +abq +abq +abq +abq +abq +afg +afY +afY +ahg +ahL +aiu +abp +ajm +ajS +ajn +ajT +akA +amr +amY +amY +anV +ajo +apr +aqj +arf +ark +asL +aun +avu +awt +axV +azd +azX +aAZ +aCe +aDT +aGx +aAh +aAh +aBy +aAh +aCr +aCr +aCr +aJC +bYP +aQg +aJC +aQg +aJC +aQg +aJC +aJC +aHP +aHP +aHP +bfF +bfF +bfF +bfF +bfF +bfF +bfF +bfF +bfF +bqM +brV +bof +bwv +bvj +bvj +bvj +bvj +bvj +bvj +bCB +bCP +bvj +bvd +bKH +bLK +bMS +bOa +bPc +bQs +bMZ +bSJ +bTQ +bUO +bVY +bOd +bOd +bOd +bOd +bOd +cbD +bTO +cdx +bOd +bOd +cfP +cgZ +bMQ +apQ +bQA +ckX +clV +cmV +bOh +cig +cpc +cpJ +cpc +cDN +cqY +cqY +cqY +cig +aaa +csl +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(132,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +abo +aeB +afm +agb +agG +ahi +ahN +aix +abp +ajp +ajU +ajn +ajn +ajn +amr +ajp +ajp +ajp +ajo +apt +aqm +arj +arj +arj +arj +avx +awz +axR +avx +aAh +aBA +aBA +aDP +aBx +aGp +aHX +aBy +aAh +aMq +adq +aQb +aPZ +aRu +aQc +aUf +aQc +aXi +aQc +baa +aJC +bcq +bcq +bcq +bfF +bha +bio +bgF +blf +bmF +bob +bnB +bfF +bqR +brX +bof +bwx +bvj +bwB +bxa +byZ +bzI +bAX +bCF +bDB +bFB +bvd +bKJ +bLR +bMV +bOd +bMZ +bQv +bRF +bSM +bTS +bUQ +agd +bUO +bVZ +bVZ +bZI +caH +cbF +ccz +cdA +cez +bOe +cfQ +chb +ciu +bVu +ckb +ckZ +clW +clW +bOh +cig +cpd +czM +cpd +cDN +aaa +aaa +aaa +aaf +aaf +cso +aaf +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(133,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +abo +aeA +afl +aga +abp +ahj +abp +cAN +abp +ajo +ajo +ajo +ajo +ajo +ajo +ajo +ajo +aoa +ajo +apt +aql +apv +arl +asM +atV +avw +awy +axQ +azj +arj +aAh +aAh +aAh +aAh +aAh +aAh +aAh +aAh +aMp +aMr +aOH +aPY +aQc +aRx +aQc +aQc +aPY +aQc +aZZ +aJC +aYV +aYV +aYV +bfF +bgZ +bin +bin +bjK +bkK +bkK +bkK +bpD +bqO +bLX +btf +bui +bvi +bww +bwZ +byY +bzH +bAW +bCE +bFv +bFz +bvd +bKH +bLK +bMU +bOc +bPe +bQu +bRE +bSL +bPe +bOd +cCB +cCC +bXT +bXT +bXT +caG +cbE +bTU +cdz +cez +bUL +cfS +bOd +bMQ +apQ +bOh +bOh +bOh +bOh +bOh +ccw +cpd +czL +cpd +cDL +aaf +aaa +aaa +aaf +aaa +csn +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(134,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +acw +abp +abp +adR +abp +cxG +abp +adR +ahl +ahO +aic +ahT +ahT +ahT +ahT +ahT +ahT +ahT +alL +ahT +anb +ahT +anZ +apu +ahn +asb +asV +aus +aus +awA +axT +azl +aAl +arj +aCq +aDR +aFl +aGD +aHZ +aCr +aKJ +aMr +aMr +aOH +aQc +aQd +aQa +aRv +aPY +aVw +aPY +bac +aJC +aYV +aYV +aYV +bfF +bhc +bip +bgP +bjL +bkL +bmT +bnD +bpM +bqT +bFD +bJG +bJG +bvl +bwE +bxc +bzb +bzK +bBb +cpG +bDC +bId +bvd +bKH +bLK +bMX +bOd +bPg +bQx +bRH +bSO +bTU +bUS +bUS +cCD +bXU +bUS +bUS +bUS +bXU +bRF +bMW +cez +cez +cfQ +chd +ciw +cpP +ckc +clb +clY +clZ +bOh +aaa +cpd +cpM +cpd +cDS +aaf +aaa +aaa +aaf +aaa +csn +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(135,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aag +acU +adr +acU +aeC +afn +agc +abp +ahk +aoJ +aib +aif +aif +aif +aif +aif +aif +aif +alK +alM +bkV +anc +anD +aoI +apX +arn +asN +aur +avy +avy +axS +azk +aAk +arj +aCf +aDY +aFj +aGr +aHI +aJk +aMr +aMr +aNt +aOH +aQc +aQc +aSq +aQc +aQc +aPY +aQc +bab +aJC +aYV +aYV +ber +bfF +bhb +bip +bjO +bip +bmG +bip +bnC +bpF +bqS +brY +bwz +bwy +bvj +bza +bxb +bvh +bCD +bAY +bCH +bDR +bIc +bvd +bKH +bLK +bMW +bOe +bPf +bQw +bRG +bSN +bTT +bUR +bWb +cCE +bTT +bUR +bZJ +bUR +bTT +bUR +cdB +bUR +bUR +cfT +chc +bMQ +apQ +bQA +cla +cBP +cmW +bOh +aaa +aaa +czN +aaa +cDS +aaf +aaa +aaa +aaf +aaa +csn +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(136,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aag +aag +aag +aaa +aaa +aag +abp +abp +abp +abp +afo +abp +abp +ahn +ahn +aiA +aiA +aiA +ahn +aiA +aiA +aiA +ahn +and +anF +aod +ahn +apx +ahn +arj +asr +asN +aut +avz +aXF +axU +azn +aAn +arj +aCh +aEc +aFk +aGw +aHK +aCr +aKr +aMr +bHF +aOH +aQc +aQc +aSo +clX +aVx +aQc +aQc +aQc +bbx +aYV +aYV +aYV +bfF +bhd +bis +bjR +bis +bmI +bod +bpt +bfF +bqV +bEe +bBL +bwA +bvj +bAl +bAl +bvh +bzS +bBc +bCJ +buk +cCp +bvd +bKH +bLK +bMZ +bOg +bPi +bQz +bRJ +bSO +bTV +bUT +bWc +bWU +bXV +bYT +bZK +bOd +cbG +ccA +cdC +ceB +cez +cez +chf +cix +cpP +ckd +clc +clZ +clZ +bOh +aaa +aaa +aaa +aaa +cDS +aaf +aaa +aaa +aaf +aaf +cso +aaf +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(137,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaf +aaf +aaf +aaf +abp +aeD +afp +aeD +abp +aaa +aaa +aaa +aaf +aaf +aaf +aaa +aaf +aaf +ahn +ahn +anE +aod +aoK +apw +aqp +arj +asq +asN +aut +avz +avz +axU +azm +aAm +arj +aCr +aEb +aCr +aGv +aCr +aCr +aKq +aLS +aNF +aOH +aQc +aQc +aSH +aQc +aQc +aRx +aQc +aQc +aQg +aYV +aYV +bes +bfF +bfF +bir +bjQ +blh +bfF +bfF +bfF +bfF +bqU +bsq +bvj +bvj +bvj +bvj +bvj +bvj +bvj +bvd +bFu +bvj +bvj +bvd +bKH +bLK +bMY +bOf +bPh +bQy +bRI +bSP +bPh +bQy +bRI +cCF +bPh +bQy +bRI +bQy +bPh +bQy +bRI +ceA +bLK +bLK +che +bLK +apQ +bOh +bOh +bOh +bOh +bOh +aaa +aaa +aaa +aaa +cDS +aaf +aaa +aaa +aaf +aaa +csn +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(138,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +adR +aeE +afr +aeE +adR +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaf +ahn +anG +aoe +aoL +apy +aqq +arj +ast +asN +auv +avA +avA +axW +azo +aAp +aBC +aCt +aEA +aCt +aGz +aIb +aCr +aKN +aMv +aNH +aOJ +aQc +aPY +aSG +aPY +aUg +bFC +aRw +aQc +bbx +aYV +aYV +bet +bfH +bhf +bhh +bhh +bhh +bmJ +bof +bpu +bqP +bsy +bEe +bvh +bwC +bxN +bze +bAp +bvh +bCG +bBd +bFw +bDD +bFJ +bvd +bKH +bzs +bRK +apQ +bRK +apQ +bVv +apQ +bRK +apQ +bVv +cCG +cCH +cCI +cCJ +cCI +cCH +cCI +cCJ +cCI +cCP +bLK +chg +bLK +apQ +aoV +aoV +apQ +apQ +apQ +aoV +aoV +aoV +aoV +cCQ +aoV +aaa +aaa +aaf +aaa +csn +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(139,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aeE +afq +aeE +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ahn +anE +ahn +ahn +ahn +ahn +arj +ass +asX +auu +att +att +att +azf +aAo +aBB +aBB +aBB +aBB +aGy +aIa +aBB +aKM +aMu +aNG +aKM +aKM +aKM +aSp +aQc +aQc +aSq +aQc +bad +bby +aYV +aYV +bet +bfG +bhe +bit +bjS +bli +bli +boe +bli +bpN +bqX +bEe +btg +bDR +bDR +bDR +bDR +bzc +bDR +bDZ +bCK +bFy +bFF +bvd +bKH +bzs +bNa +bOh +bPj +bQA +bPj +bOh +bPj +bQA +bPj +bOh +bPj +bQA +bPj +bOh +bPj +bQA +bPj +bOh +cCQ +bLK +cyG +bLK +aoV +aoV +aoV +apQ +apQ +aoV +aoV +aoV +aoV +aoV +cCQ +aoV +aaa +aaa +aaf +aaa +csn +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(140,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aeE +afs +aeE +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aag +aag +aaa +aaa +aaf +arj +arj +asZ +aua +aua +awB +axY +azh +arj +arj +aaf +aaa +alP +aGI +aId +aJD +aKP +aMx +aNJ +aQe +aOL +aOL +aOL +aOL +aOL +aOL +aXO +aZb +aJC +aYV +aYV +bet +bfG +bhe +bhh +bjU +blk +blk +boh +biu +bpO +bqY +bss +btg +buk +bvm +bDT +buk +bvh +bzU +bBe +bCS +bDE +bFK +bvd +bKH +bzs +bNa +bOh +bPl +bQB +bRL +bOh +bTX +bUV +bWd +bOh +bXX +bYV +bZL +bOh +cbI +ccC +cdD +bOh +cCG +cCS +cCS +cCI +cCI +cCI +cCI +cCI +cCI +cCI +cCI +cCI +cCI +cCI +cDY +apQ +aaf +aaf +aaf +aaf +cso +aaf +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(141,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqG +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqr +arm +arm +asY +atZ +auB +auB +atZ +azg +azp +azp +aCu +aaf +alP +aGH +aIc +aJC +aKO +aMw +aNI +aMw +aOK +acN +acN +acN +acN +acN +aQc +bae +aJC +bcr +aYV +bet +bfG +bhe +bhh +bjV +blj +bmK +bog +bog +bhh +bsx +bsr +bvh +bwD +bDR +bDR +bAq +bvj +bCQ +bDW +bCP +bvj +bvj +bJC +bKH +bzs +bNa +bOh +bPk +bPm +bPm +bOh +bTW +bUU +bTW +bOh +bXW +bYU +bXW +bOh +cbH +ccB +cbH +bOh +apQ +aoV +aoV +apQ +aoV +aoV +aoV +apQ +aoV +aoV +aoV +aoV +aoV +aoV +apQ +aoV +aaa +aaa +aaf +aaa +csn +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(142,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqs +aro +aro +aro +aro +aro +aro +aro +aro +aro +aro +aCv +aaa +alP +aGK +aIe +aJC +aJC +aJC +aJC +aJC +aJC +aXj +aVy +aSY +aVy +aVy +aYI +bah +aJC +aYV +bdo +beu +bvk +biu +biu +bjT +blm +bmL +boi +bpw +bhh +bsx +btX +bvj +bwG +bxR +bxR +bvj +bvj +bzW +bDZ +bCT +bGR +bIj +bJC +bKH +bzs +bNa +bOh +bPm +bQC +bPm +bOh +bTW +bUW +bTW +bOh +bXY +bYW +bXW +bOh +cbH +ccD +cbH +bOh +apQ +apQ +apQ +apQ +apQ +aoV +aoV +apQ +aoV +aoV +aoV +aoV +aoV +csz +apQ +aoV +aaa +aaa +aaf +aaa +csn +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(143,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqs +aro +aro +aro +aro +aro +aro +aro +aro +aro +aro +aCv +aaf +alP +aGJ +aIe +aJE +aKQ +aLU +aNu +aJC +aPw +aQc +aQc +aSZ +aQc +aVy +czP +bag +aJC +aYV +aYV +bet +bfJ +bhh +bhh +bgQ +bll +bhh +bhh +bpv +bhh +bsx +btV +bvh +bwF +bxQ +bxQ +bAr +bvj +bzV +bDZ +bzf +bDR +bIi +bJC +bKH +bzs +bNa +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +bOh +apQ +apQ +ciC +bVu +bVu +bVu +bVu +bVu +caJ +aoV +aoV +aoV +aoV +aoV +apQ +aoV +aaa +aaa +aaf +aaa +csn +aaa +aaf +aag +aaa +aaa +aaa +aaa +aaf +aaf +ctZ +ctZ +ctZ +ctZ +ctZ +aaf +aaa +aaf +cvF +aaf +aaa +aaa +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +cAU +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(144,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqt +aro +aro +aro +aro +aro +aro +aro +aro +aro +aro +aCv +aaa +alP +aGA +aHS +aJx +aJx +aMi +aNE +aOO +aQi +aRz +aSF +aQc +aQc +aXl +aQc +bai +aJC +aYV +aYV +bet +bfH +bhh +bhh +bhg +bln +bmM +boj +bof +bhh +bsx +btV +bvj +bwI +bxT +bxQ +bAt +bvj +bCM +bDZ +bDR +bDR +bIl +bJC +bKH +bzs +bUr +bVu +bVu +bVu +bVu +bVu +bVu +bVu +bVu +bVu +bVu +bVu +bVu +caJ +apQ +apQ +apQ +apQ +apQ +cfj +cfU +cfj +cfj +ckf +cfj +cfj +bUr +bVu +bVu +bVu +bVu +bVu +apQ +bVu +csw +csw +csw +csw +csM +csw +csw +ctd +csw +csw +csw +csw +ctO +ctZ +ctZ +cuo +cuA +cuM +ctZ +cvk +cvk +cvk +cvk +aaf +aaf +aaf +aaf +cvk +cvk +cvk +cvk +cvk +cvk +cvk +cva +cva +cva +cva +cva +cva +cva +cva +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(145,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aqs +aro +aro +aro +aro +aro +aro +aro +aro +aro +aro +aCv +aaf +alP +aGL +aHM +aJm +aKz +aKR +aND +aJC +aPP +aRg +aQc +aTa +aQc +aXk +aQc +aQc +aJC +aYV +aYV +bev +bfK +bhi +bhi +bhi +bfK +bfK +bfK +bof +bhh +bsx +btV +bvh +bwH +bxS +bzh +bAs +bvj +bCL +bxO +bDR +bDR +bIk +bJC +bKH +bzs +bzs +bzs +bPn +bPn +bPn +bzs +bzs +bPn +bPn +bPn +bzs +bzs +bPn +caI +bPn +bzs +bzs +bzs +cfj +cfj +cjp +chh +ciy +cke +clg +cfj +aoV +aoV +aoV +aoV +aoV +aoV +aoV +aoV +aaa +aaa +aaf +aaa +csn +aag +aag +aag +aag +aaa +aaa +aaa +ctN +ctY +cuh +cun +cuz +cuL +cuY +cvj +cvs +cvD +cvk +cvk +cvk +cvk +cvk +cvk +cvX +cvX +cvX +cvX +cwq +cwq +cva +cva +cva +cva +cva +cva +cva +cva +cva +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(146,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqs +aro +aro +aro +aro +aro +aro +aro +aro +aro +aro +aCv +aaa +alP +aGL +aIe +aJC +aKS +aMC +aJC +aJC +aJI +aJI +aSI +aJI +aVA +aJI +aYK +aJI +aJI +bcs +aYV +aYV +bfK +bhk +bix +bjX +blp +bmO +bhi +bpy +bwz +brg +btZ +bvj +bwI +bxV +bzj +bAv +bvj +bCO +bDR +bDR +bDR +bIn +bJC +bKL +bLT +bLT +bLT +bLT +bLT +bLT +bLT +bLT +bUY +bWe +bWe +bWe +bWe +bWe +cdE +bAw +bzs +bAw +caK +cfj +ciB +ckh +chj +ciA +cjr +clh +cfj +aoV +aoV +aoV +aoV +aoV +aoV +aoV +aoV +aaa +aaa +aaf +aaa +csn +csD +cta +csD +cua +aaa +aaa +aaa +aaf +ctZ +cui +cuq +cuC +cuO +cuz +cvm +cvt +cvt +cvt +cvL +cvQ +cvX +cvX +cvX +cvX +cva +cva +cva +cva +cva +cva +cva +cva +cvx +cva +cva +cva +cva +cva +cva +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(147,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aqu +arm +arm +arm +auy +auB +auB +axZ +azp +azp +azp +aCw +aaf +alP +aGL +aIg +aJH +aKR +aMB +aJC +aOP +aJI +aRA +aVz +aVz +aVz +aVz +aYJ +aJI +bbz +aYV +aYV +aYV +bfK +bhj +biw +bhs +bjM +bmN +bok +bpx +bpP +brf +bhh +bvh +bwJ +bxU +bzi +bAu +bvj +bCN +bEa +bFA +bGS +bIm +bJD +bKK +bLS +bNc +bOj +bNc +bNc +bNc +bNc +bTY +bUX +bzs +bWV +bzs +bzs +bZM +cbJ +ceC +cfV +cfW +cfX +chk +chl +ciz +chi +ciz +cjq +ckg +cmb +cpO +cpQ +cpQ +cpQ +cpQ +czJ +apQ +aoV +aaa +aaa +aaf +aaa +csn +csD +csX +ctg +cua +cua +cua +cua +cua +ctZ +ctZ +cup +cuB +cuN +cuZ +cvj +cvj +cvj +cvj +cvj +cvP +cvj +cvj +cvj +cvj +cva +cva +cva +cva +cvp +cwv +cvr +cvp +cvl +cvr +cwv +cvp +cva +cva +cva +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(148,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +arj +arj +arj +auA +avD +awC +ayb +arj +alP +alP +aaa +aaa +alP +aGL +aIi +aJI +aJI +aJI +aJI +aJI +aJI +aRC +aSK +aVz +aVz +aVz +aYL +aJI +bbz +aYV +bdq +aYV +bfK +bhl +biy +bjY +bjN +bkO +bmU +bnH +bqQ +bsx +bhh +bvj +bvj +bxR +bxR +bvj +bvj +bCQ +bEd +bof +bof +bof +bJE +bof +bof +bNd +bIJ +bPo +bQE +bRM +bOr +bTZ +bUX +bzs +bAw +bBR +bHZ +bzs +bzs +bzs +ccF +cdG +ceE +cfl +cfZ +cki +cld +cjt +cjr +csq +cmd +cmd +cmd +cmd +cmd +bVw +bVw +bVw +bVw +aaa +aaa +aaf +csD +csO +csD +czk +cti +cua +cua +ctw +ctH +ctQ +cuc +cuj +cuj +cuE +cuQ +cuj +cvk +cvw +cvw +cvG +cvM +cvS +cvZ +cvG +cvw +cvw +cvf +cwh +cwm +cwr +cvp +cwx +cwj +cwu +cAV +cAZ +cvl +cvl +cva +cva +cva +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(149,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +aaf +aaf +arj +auz +avC +avC +aya +arj +arA +alP +alP +alP +alP +aGN +aIh +aJI +aKT +aMD +aNM +aOI +aJI +aRy +aSJ +aTM +aVB +aVz +aVz +baj +bbz +aYV +bdp +aYV +bfK +bfK +bfK +bfK +bfK +bfK +bfK +bnF +bqQ +bsx +bhh +bfJ +bhh +bhh +bhh +bhh +bhh +bzX +bBm +bof +bGT +bIo +bof +bIo +bLU +bNd +bII +bOr +bQD +bLY +bMa +bTZ +bUX +bzs +bAw +bXZ +bHZ +bZN +caK +bzs +ccE +cdF +ceD +cfk +cfY +cjr +ckj +cjs +cle +cli +cmc +cmY +cmc +cop +cmd +cmd +cqs +aaa +bVw +aaa +aaa +aaf +csD +csN +csV +ctb +cth +cua +ctr +ctu +ctG +ctP +cub +cuj +cur +cuD +cuP +cvc +cvk +cvu +cvu +cvu +cvu +cvR +cvY +cwb +cvu +cvu +cva +cwg +cwl +cwr +cvl +cww +cwD +cvv +cvv +cAY +cBb +cBd +cva +cva +cva +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(150,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaf +arj +auB +auB +arj +arj +arj +anf +anf +anf +awD +alP +aGB +aIf +aJA +aKC +aKC +aKC +aON +aQk +aRD +aSM +aVG +aVE +aXm +aVz +bak +bbz +aYV +bdp +aYV +bfL +bhn +biz +biz +biz +bmR +bfL +bol +bqQ +bsx +bst +bfJ +bhh +bhh +bwK +bhh +bhh +bhh +btV +bof +bGV +bIp +bof +bKM +bLW +bNd +bOn +bOr +bOr +bRO +bSQ +bTZ +bUZ +bPv +bPv +bPv +bPv +bPv +caM +cbL +cbL +cdI +ceG +cfj +cgb +chn +ciE +cjv +clj +ckk +cmf +cna +cnC +cor +ciM +cpN +cqt +aaa +bVw +aaa +aaa +aaf +csD +csU +csW +ctc +ctc +cto +ctt +cty +ctJ +ctT +cue +cul +cuu +cuG +cuS +cve +cvo +cvz +cvz +cvI +cvz +cvT +cBS +cwc +cvz +cwd +cwf +cwj +cwo +cwt +cwu +cwA +cAR +cAS +cvv +cBa +cBc +cBe +cva +cva +cva +cBf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(151,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +alP +ayf +aBD +aCx +aDV +alP +aGL +aHY +aQj +aQj +aMk +aNK +aOM +aQj +aRB +aSL +aTN +aVD +cCq +cAg +bak +bbz +aYV +bdp +cBm +bfL +bhm +bhm +bhm +bhm +bkP +bmV +boc +bqW +brh +bua +bua +bua +bua +bua +bua +bhh +bhh +btV +bof +bGU +bqQ +bof +bCR +bLV +bNd +bOm +bPp +bQF +bRN +bSS +bUa +bNc +bNc +bOj +bNc +bNc +bZO +caL +cbK +ccG +cdH +ceF +cfj +cga +chm +ciD +cju +clf +csr +cme +cmZ +cme +coq +cmd +cmd +cqs +aaa +bVw +aaa +aaa +aaf +csD +ctb +csV +ctb +ctj +ctk +cts +ctx +ctI +ctS +cud +cuk +cus +cuF +cuR +cvd +cvn +cvy +cvy +cvH +cvy +cvy +cvy +cvy +cvy +cvy +cwe +cwi +cwn +cws +cwn +cwz +cwE +cvv +cvv +cvv +cvp +cvl +cva +cva +cva +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(152,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +alP +aAq +aAq +aCy +aCG +alP +aGL +avI +aJK +aKV +aMl +aMF +aMF +aJI +aRG +aSO +aTO +aVG +cCq +aVz +bak +bbz +aYV +bdp +bdc +bfL +beY +biz +biz +biz +bkR +bfL +boo +bqQ +bhg +bua +bvn +bwL +bxX +bsL +bua +bBJ +bhh +bBn +bof +bDF +bIr +bof +bKN +bHT +bNd +bNd +bNd +bNd +bNd +bSU +bUb +bVa +bWf +bWX +bOP +bNd +bTZ +bUX +bzs +bzs +bzs +bzs +cfj +cfj +cfj +cfj +cjx +cfj +cfj +cmd +cmd +cmd +cos +cmd +czI +bVw +bVw +bVw +aaa +aaa +aaf +csD +csD +csD +csD +cti +ctq +cua +ctA +cuy +ctV +cug +cuj +cuj +cuE +cuU +cuj +cvk +cvw +cvw +cvJ +cvw +cvV +cwa +cvJ +cvw +cvw +cvb +cwk +cwp +cwr +cvp +cwC +cwn +cAT +cAW +cvl +cvl +cvl +cva +cva +cva +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(153,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aba +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaf +aaf +alO +alO +alO +alP +alP +alP +alP +alP +alP +alP +aDW +aFn +aGP +avI +aJI +aJI +aJI +aNO +aOT +aJI +aRF +aSN +aVF +aVF +aVF +aYM +aJI +bbA +aYV +bdr +bdb +bdN +blr +bho +bho +bho +bkQ +bmW +bom +bIq +bri +bsu +bsL +bsL +bvo +bzl +bua +bzd +bhh +btT +bCU +bCR +bqQ +bGX +bCR +bqQ +bRN +bIK +bPq +bLd +bNd +bST +bOr +bOr +bOr +bWW +bYa +bYX +bTZ +caN +cbM +cbM +cdJ +bzs +cfm +cgc +bAw +ciF +cjw +ckl +clk +clk +bAw +bzs +apQ +aaa +apQ +apQ +apQ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +ctp +cua +ctz +ctK +ctU +cuf +cuf +cuv +cuH +cuT +cvg +cvj +cvj +cvj +cvj +cvj +cvU +cvj +cvj +cvj +cvj +cva +cva +cva +cva +cvp +cwB +cvr +cvp +cvl +cvr +cwB +cvp +cva +cva +cva +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(154,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaS +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aag +alO +arp +alO +anf +anf +anf +awD +anf +aoP +alP +aBE +alP +aDX +alP +aGR +avI +aJL +aKX +aJI +aJI +aJI +aJI +aRH +aVz +aVz +aVH +aXn +aYN +aJI +bbz +aYV +aYV +bey +bfL +bhm +biz +biz +biz +bla +bmY +boq +boq +brj +bpE +btk +bum +bvq +bzn +bua +bBL +bhh +bBC +bCV +bDN +bFM +btR +bDN +bIa +bIf +bIL +bOq +bLf +bRP +bSW +bMH +bNi +bOr +bWZ +bYd +bYY +bZP +caO +cbN +ccI +cdL +ceI +cfo +bAw +bAw +bAw +cjz +ceJ +clm +cmg +cnc +cnD +bzs +apQ +apQ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +cua +ctF +ctM +ctX +cuf +cum +cuw +cuJ +cuW +cvi +cvq +cvC +cvC +cvC +cvN +cvW +cvX +cvX +cvX +cvX +cva +cva +cva +cva +cva +cva +cva +cva +cvA +cva +cva +cva +cva +cva +cva +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(155,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +ads +adS +aeG +aaa +ads +adS +aeG +aaa +ads +adS +aeG +aaa +aaS +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aag +cxW +anf +aqv +anf +anf +anf +aEl +anf +alP +alP +alP +alP +alP +alP +aGQ +aIk +aIp +aKW +aMG +aIp +aIp +aJI +aJI +aSP +aUh +aJI +aJI +aJI +aJI +aJI +bcq +bcq +bcq +bfL +bhp +biB +biB +biB +bkU +bmX +bpE +bpE +bpE +bpE +bti +bul +bvp +bzm +bua +bBK +bwz +bBw +bJG +bDI +bFL +bli +bKO +bHY +bNf +bOp +bPr +bQH +bNd +bSV +bSQ +bNh +bWg +bWY +bYc +bNd +bNd +bzs +bzs +ccH +cdK +ceH +cfn +cgd +ceJ +ccM +cjy +ceJ +cll +ccM +cnb +bHd +ceI +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +cua +ctE +ctL +ctW +cuf +cum +cuw +cuI +cuV +cvh +cvj +cvB +cvE +cvk +cvk +cvk +cvk +cvk +cvk +cvX +cvX +cvX +cvX +cwq +cwq +cva +cva +cva +cva +cva +cva +cva +cva +cva +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(156,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaS +aaf +ads +adT +aeG +aaa +ads +adT +aeG +aaa +ads +adT +aeG +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +alO +alO +alO +anf +auC +alP +anf +anf +alP +arA +anf +alP +atw +alP +aGS +aIm +aIp +aKH +aMI +aIp +aOV +aOX +aOX +aSR +aUi +aVJ +aOX +aYP +bal +bam +aYV +aYV +aYV +bfL +bhq +bhm +bkb +bhm +bla +bmZ +bpH +bra +bsK +bpE +bpE +buq +bvt +bye +bon +bBN +bEi +bEi +bEi +bDU +bFO +bBN +bKR +bMc +bNd +bNd +bNd +bNd +bNd +bSX +bMI +bNk +bNU +bXb +bWi +bYZ +bZR +caQ +bzs +ccK +ccM +ceJ +ceJ +cgf +ceJ +ccM +ccM +ceJ +clo +cmi +cbQ +cnF +cot +csc +csm +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +cua +cua +cua +cua +cuf +cuf +cux +cuK +cuX +cuf +cvk +cvk +cvk +cvk +aaf +aaf +aaf +aaf +cvk +cvk +cvk +cvk +cvk +cvk +cvk +cva +cva +cva +cva +cva +cva +cva +cva +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(157,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +ads +adT +aeG +aaf +ads +adT +aeG +aaf +ads +adT +aeG +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alO +aqy +anf +alP +awE +anf +apE +anf +anf +alP +anf +alP +aCE +aIj +aJB +aKD +aMs +aNL +aOQ +aQf +aRE +aSQ +aVI +aVI +aVI +aYO +aRJ +bbB +aYV +aYV +aYV +bfL +bfL +bfL +bfL +bfL +blg +bmZ +bpG +bqZ +brk +bsv +bsv +bun +bvr +bzo +bon +aFa +bCY +bEh +bCW +bDS +bFN +bBN +bKQ +bMb +bNd +bOr +bOt +bOr +bRQ +bOr +bSQ +bNj +bNs +bXa +bYa +bNd +bZQ +caP +cbO +ccJ +cdM +bLS +cfp +cge +cbK +ciG +bLS +ckm +cln +cmh +cnd +cnE +bPn +aoV +aoV +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +aaf +aaf +cuf +cuf +cuf +cuf +cuf +aaf +aaa +aaf +cvK +aaf +aaa +aaa +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +cAX +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(158,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +ads +adT +aeG +aaa +ads +adT +aeG +aaa +ads +adT +aeG +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +apC +apC +apC +apC +apC +apC +alP +anf +alP +alP +alP +alP +awD +ayf +aGC +aIl +aIq +aKK +aMy +aIp +aOX +aQm +aRJ +aRJ +aRJ +aVK +aRJ +aRJ +aRJ +bbB +aYV +aYV +aYV +bfO +bfS +biC +bkd +bfS +bKH +bmZ +bpJ +brc +bsL +bug +btl +but +bvw +bzq +bon +bBP +bCZ +bEk +bFG +bCY +bFP +bBN +bKQ +bMb +bNd +bOt +bOr +bOr +bRQ +bOr +bSQ +bWj +bWk +bXc +bYe +bNd +bZS +caR +bzs +ccL +ccM +ceL +ceJ +cgh +ceJ +ceJ +ccM +ceJ +cAe +cmj +cne +bHd +bPn +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(159,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaS +aaS +aaf +aaa +ads +adT +aeG +aaa +ads +adT +aeG +aaa +ads +adT +aeG +aaa +aaf +aaa +aaa +aaa +aaa +amw +aof +aof +aof +aof +arq +asv +atv +auD +apC +awF +anf +alP +arA +anf +aCz +asw +aCJ +aGT +aIn +aIp +aKI +aMt +aIp +aOW +aQm +aRJ +aSS +aUj +aRJ +aRJ +aYQ +cBg +bam +aYV +aYV +aYV +aYV +bhr +biC +bkc +bfS +blo +bmZ +bpI +brb +bsL +buf +bvs +bur +bvp +bzp +bon +bBO +bCY +bEj +bCY +bGZ +bFE +bBN +bKS +bMd +bNd +bOs +bOt +bQJ +bRR +bOr +bSQ +bWj +bWj +bWj +bWj +bNd +bzs +bzs +bzs +ccH +bFr +ceK +ceJ +cgg +ccM +ccM +cjA +ceJ +ccM +cdN +bFr +cnG +bzs +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(160,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +aaf +aaa +aaa +aaa +adV +aaa +aaa +aaa +adV +aaa +aaa +aaa +adV +aaa +aaa +aaf +aaa +aaa +amw +amw +amw +aoh +aoN +apA +aof +ars +anf +arx +anf +apC +aoQ +cqM +asw +asw +asw +aCA +anf +aFp +aGW +anf +aIp +aKI +aMA +aIp +aOX +aQm +aRJ +aST +aUk +aRJ +aRJ +aYQ +bam +aYV +aYV +aYV +aYV +beE +bfS +biE +bkf +bfS +bKH +bmZ +bpL +bre +bsN +bre +bvv +bur +bvp +bzr +bon +bBQ +bDa +bEl +bFH +bHb +bIw +bBN +bKT +bMb +bNd +bOt +bPu +bOr +bRQ +bOr +bSQ +bWj +bWk +bXc +bYe +bNd +bZU +caS +cbN +ccN +bHd +bzs +bzs +bKT +bAw +bAw +bFr +ceJ +ccM +ccM +cng +bzs +bzs +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(161,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaf +abX +acx +acx +adt +adU +adU +adU +adU +adU +adU +adU +adU +adU +adU +adU +adU +alg +alN +amv +ane +cxN +aog +aoM +apz +aqw +arr +asw +asw +auE +apC +awG +auF +alP +alP +alP +alP +alP +aFo +aGV +aIp +aIp +aKL +aMz +aNQ +aOX +aQm +aRJ +aRJ +aRJ +aRJ +aRJ +aYR +ban +aYV +aYV +aYV +bez +bfP +bfS +biD +bke +bfS +bKH +bmZ +bpK +brd +bpK +bpK +bvu +bux +bvy +bon +bon +bBN +bBN +bBN +bBN +bHa +bBN +bBN +bKB +bMb +bNd +bOr +bPt +bOr +bRQ +bSY +bMJ +bNl +bNW +bXd +bPu +bNd +bZT +bMb +bFr +ccM +cdN +bzs +cfq +bKT +bAw +ciH +bHd +bzs +bAw +cmk +cnf +bzs +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(162,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +aaf +aaa +aaa +aaa +adX +aaa +aaa +aaa +adX +aaa +aaa +aaa +adX +aaa +aaa +aaf +aaa +aaa +amw +amw +amw +aoi +aoO +apB +aqx +art +anf +anf +auF +apC +awH +auF +alP +aAr +anf +alP +aaa +aFq +aGX +aIp +aJO +aKU +aME +aNN +aOR +aQh +aRI +aSU +aXo +aXo +aXo +aYO +bap +aYV +aYV +bci +beB +bfS +bfS +bfS +bfS +bfS +bKH +bmZ +bon +bon +bon +bon +bon +buG +bvA +bon +bAw +bzg +bLS +bLS +bLS +cbQ +bLS +bLS +bKE +caU +bNc +bOj +bPw +bNc +bNc +bNc +bNc +bNc +bNc +bNc +bPw +bNc +bLS +caU +cbQ +bhG +bhG +bhG +cbK +cgj +cbK +cbK +chp +bCq +clp +bCq +bCq +bCq +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(163,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aba +aaS +acy +aaa +ads +adW +aeG +aaa +ads +adW +aeG +aaa +ads +adW +aeG +aaa +aaf +aaa +aaa +aaa +aaa +amw +aof +aof +aof +aof +anf +aoP +atw +auF +apC +aoP +auF +azr +anf +anf +alP +alP +aFo +aGV +aIp +aJN +aLd +aMN +aNQ +aOZ +aOX +aOX +aOX +aUz +aVM +aOX +aYT +bam +aYV +baR +bcb +bdl +bdO +cHD +bgo +bPv +bPv +blq +bna +bPv +bpQ +bPv +bdO +btm +buy +bvz +bdO +bPv +bna +bPv +bPv +bPv +bDV +bPv +bPv +bHq +bMe +bIg +bIM +bPv +bLT +bLT +bLT +bLT +bLT +bLT +bLT +bLT +bLT +bLT +caT +cbP +ccO +cdO +cdO +cdO +cnH +czH +czT +czY +bCq +bHE +bHE +clp +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(164,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +ads +adW +aeG +aaa +ads +adW +aeG +aaa +ads +adW +aeG +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +apC +aqy +anf +anf +aty +auF +apC +alP +auF +alP +alP +alP +alP +ayf +aFm +aGF +aIq +aIq +aIq +aIq +aIq +aIq +aIq +aIq +aIq +aIq +aIq +aIq +aXS +aIq +aIq +baZ +bck +bdm +bdP +cHE +bdP +bdP +bdP +bdP +bnc +boC +bpV +boC +boC +bto +buL +bvB +cbK +bxg +bzk +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bIs +bIN +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bDb +bky +bky +bUw +czY +bCq +bLv +bLv +bLv +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(165,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +ads +adW +aeG +aaf +ads +adW +aeG +aaf +ads +adW +aeG +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +apC +anf +anf +alP +atx +auF +apC +auD +auF +alP +aAs +anf +alP +aCG +aFr +aGE +aIo +aIo +aIo +aIo +aIo +aIo +aIo +aRK +aIo +aIo +aUx +aVL +aXR +aZc +aZc +baT +bcj +beC +bfT +cHF +biG +blw +blu +bnb +bfT +bor +bpS +bsO +bfV +btn +buH +byf +byf +byf +byf +bDb +bEm +bEm +bEm +bDb +bJH +bKW +bMg +bIh +bOx +bPx +bJN +bRT +bEm +bEm +bJN +bRT +bEm +bEm +bJN +bRT +bEm +bEm +bDb +cfr +cho +bDb +aaa +bky +bUw +czY +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(166,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaf +ads +adW +aeG +aaa +ads +adW +aeG +aaa +ads +adW +aeG +aaf +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +apC +anf +alP +alP +apE +auG +apC +aoP +auF +apE +anf +anf +alP +aCG +aFt +aFu +aFu +aFu +aFu +aFu +aFu +aFu +aFu +aFu +aFu +aFu +aFu +aVO +bdp +aYV +aYV +bba +aXq +bfU +bhu +cHG +biI +bkh +biI +cHQ +bfT +boE +bpY +bsQ +box +btx +buU +byf +bzu +bAz +bBT +bDb +bEm +bEm +bEm +bIx +bJJ +bKY +bMi +bNo +bIP +bPA +bJN +bRU +bSZ +bEm +bJN +bRU +bXe +bEm +bJN +bRU +bSZ +bEm +bDb +cgi +chq +ccQ +aaa +bZi +bUw +czY +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(167,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +ads +adY +aeG +aaa +ads +adY +aeG +aaa +ads +adY +aeG +aaa +aaS +aaf +aaf +aaf +aaf +aaf +aaf +aaf +apC +anf +anf +asx +anf +auF +alP +alP +auF +alP +alP +alP +aCB +aEB +aFs +bbE +aIr +bav +aLf +aIt +aNS +aPb +aQp +aRN +aIt +aUB +aFu +aVN +bdp +bar +bar +aYV +aXq +bfU +bhu +cHH +biH +cHN +blv +bls +bfT +boD +bpY +bsP +box +btw +buT +byf +bzt +bAy +bBS +bDb +bEm +bEm +cBz +bEm +bJI +bKX +bMh +bIt +bOx +bPz +bJN +bRU +bEm +bEm +bJN +bRU +bEm +bEm +bJN +bRU +bEm +cBz +bDb +cgi +chq +ccQ +aaa +bZi +bUw +czY +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(168,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aiS +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apC +alP +alP +alP +anf +auH +avF +awI +ayc +asw +aAu +asw +aCD +aEa +aFv +aGG +aIu +aJQ +bCI +aIt +aIt +aPb +aIt +aRN +aIt +aUB +aFu +aVZ +aXT +aFu +aFu +bcv +aXq +bfU +bhu +cHI +biJ +bhM +biJ +blx +bfT +boL +bpY +bsR +box +buo +bxd +byf +bzw +bAB +bBV +bDb +bEn +bEm +bEm +bEm +bJL +bLa +bMi +bNo +bPy +bPA +bJN +bRW +bTb +bUe +bJN +bWl +bXf +bYg +bJN +bZV +caV +cbS +bDb +cgl +chs +bDb +aaa +bky +bUw +czY +bCq +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(169,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aba +aaS +aaS +aaf +aaa +aaa +aaf +aaf +aaf +aaf +alO +aqz +aru +alP +anf +anf +avE +anf +anf +awD +aAt +aty +aCC +aDZ +aFu +aFu +aIs +aJP +aLg +aMH +aIt +aYW +aYW +aYW +aYW +aYW +aYW +aVY +aYY +bas +aFu +aYV +cBk +aYV +bht +cHJ +cHL +blw +bjP +blt +bfT +boG +bqa +cIe +box +buo +bvb +byh +bzv +bAA +bBU +bDb +bEm +bEm +bEm +bIy +bJK +bKZ +bMi +bIu +bIO +bPB +bLe +bRV +bTa +bUd +bVi +bRV +bTa +bYf +bVi +bRV +bTa +cbR +bDb +cgk +chr +bDb +aaa +bky +cBN +czY +bCq +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(170,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +alO +anf +anf +asy +anf +anf +alP +alP +anf +alP +alP +alP +aCE +aDZ +aFu +aHc +aIw +aJS +cAM +aMJ +aNP +aOS +aOS +aOS +aOS +aOS +aOS +aWb +aXU +bau +aFu +aYV +aXq +aYV +bfV +cHK +blA +blA +blA +blD +box +cHU +cHZ +cIf +box +btA +bxd +byf +bzy +bAD +bBX +bDb +bEm +bEm +bEm +bIx +bJM +bLc +bMi +bNo +bOx +bPD +bQM +bMi +bMi +bRZ +bVj +bMi +bMi +bRZ +bZa +bMi +bMi +bRZ +bMi +bMi +chu +ccQ +aaf +bZi +bUw +cAa +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(171,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaf +aaf +alO +aqA +anf +alP +anf +anf +alP +awJ +anf +alP +aAv +anf +aCE +aDZ +aFu +aHb +aIv +aJR +aJR +aIt +aIt +aPd +aIt +aRO +aIt +aUC +aVP +aXu +aYW +bat +bbD +aYV +aXq +beE +bfV +bhv +biK +bkk +blz +bly +bos +bpR +bqc +bsS +box +buo +bxd +byf +bzx +bAC +bBW +bDb +bEm +bEm +bEm +bDb +bJH +bLb +bMk +bNn +bIQ +bPC +bQL +cBG +bTc +bUf +bTc +bRX +bTc +bUf +bTc +bRX +bTc +cbT +ccP +ccP +cht +ckn +csk +czQ +czU +czZ +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(172,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +alP +alP +alP +alP +alP +anf +anf +alP +anf +anf +apE +anf +anf +aCE +aDZ +aFu +aHd +aIx +aJF +aLh +aIt +aNV +aPd +aIt +aRO +aIt +aIt +aVQ +aXu +aYW +aVQ +aFu +aYV +aXq +bds +bfV +bhx +biL +bkm +cHO +blG +biL +cHV +cIa +biL +box +buo +bvc +byf +byf +byf +byf +bDb +bDb +bDb +bDb +bDb +bJN +bJN +bMm +bNp +bOx +bMi +bQN +bRZ +bMi +bMi +bVk +bRZ +bMi +bMi +bZb +bRZ +bMi +bMi +cfy +cgn +cjB +ccQ +aaf +bZi +czV +czY +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(173,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +alO +apD +aEl +anf +arx +anf +anf +alP +alP +atB +alP +alP +alP +aCF +aDZ +aFw +aFw +aFw +aFw +aFw +aFw +aFw +aPf +aQq +aRP +aIt +aIt +aIt +aWd +aXV +aIt +bbD +aYV +aXq +aYV +bfV +bhw +cHM +biL +blB +blF +cHS +cHW +cIb +bsT +box +btP +bxd +byi +bzz +bAE +bBY +bDc +bEo +bFI +bHe +bIz +bIz +bJN +bMl +bIv +bIR +bPE +bLe +bRY +bTd +bUg +bVi +bWm +bTd +bUg +bVi +bZW +bTd +bUg +bDb +bDb +bDb +bDb +aaa +bky +czV +czY +bCq +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(174,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +alP +anf +anf +arw +asA +asA +anf +alP +awL +anf +anf +apE +aBF +aCH +aED +aFy +aGO +aIB +aJJ +aKZ +aMW +aFw +aFu +aFu +aFu +aTc +aUD +aVS +aYW +aYW +bax +aFu +aYV +aXq +aYV +bfV +bfV +biO +biL +cHP +cHR +bou +bpT +bqd +biL +box +btS +bxd +byi +bwN +bAG +bCa +bDc +bEo +bIC +bEc +bIB +bIB +bJN +bMo +bNp +bOx +bPH +bJN +bSa +bTe +bUh +bJN +bWn +bXg +bYh +bJN +bZX +caW +cbU +bDb +aaf +aaf +aaa +aaa +bky +czV +czY +bCq +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bZi +bZi +bZi +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(175,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +alO +aoQ +anf +arv +asz +atA +anf +alP +awK +anf +awD +apE +anf +aCk +aEC +aFx +aGM +aIy +aJG +cAz +aMK +aFw +aPg +aQr +aFu +aTb +aIt +aVR +aYW +aYW +aUD +bbD +aYV +aXq +aYV +bfW +bhy +biN +biL +bni +blM +bou +cHX +cIc +biL +buj +btQ +bve +byj +bwM +bAF +bBZ +bDc +bEp +bCX +bEc +bIA +bIA +bJN +bMn +bNp +bOz +bPG +bJN +bEm +bEm +bRU +bJN +bEm +bEm +bRU +bJN +bEm +bEm +bRU +bDb +aaf +aaa +aaa +aaa +bZi +czV +czY +bLv +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bZi +btp +cqu +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(176,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alP +alP +alP +aqB +arx +anf +anf +anf +alP +awM +ayg +ayg +ayg +ayg +aCl +aEe +aFw +aFw +aFw +aLo +aLb +aFw +aFw +aPi +aQt +aRQ +aIt +aUF +aLg +aYW +aYW +aVQ +aFu +aYV +aXq +aYV +bfX +bhz +biQ +biL +blC +bou +cHT +bou +cId +biL +bsw +btU +bxe +bvC +bzD +bxv +bCc +bDc +bEo +bDj +bDY +bIA +bIA +bJN +bMq +bNp +bOx +bPJ +bJN +bEm +bSZ +bRU +bJN +bEm +bXe +bRU +bJN +bEm +bSZ +bRU +bDb +aaf +aaa +aaa +aaa +bZi +czV +czY +bLv +aaf +aaf +aaf +aaf +aaf +bky +bky +bZi +cqu +bZi +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(177,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alP +aoP +alP +alP +apE +alP +atB +alP +alP +awx +aye +ayd +aAc +ayd +aCI +aEd +aFw +aHf +aIz +aJM +aLa +cBZ +aFw +aPh +aQs +aFu +aTd +aUE +aVT +aYW +aYW +aZd +aFu +aYV +aXq +aYV +bfX +bhy +biP +bko +blE +bnj +bov +bpU +brq +bsW +buj +bvE +bxd +byk +bzC +bAH +bCb +bDc +bEo +bDf +bEb +bGY +bGY +bJN +bMp +bNp +bOx +bPI +bJN +bEm +bEm +bUi +bJN +bEm +bEm +bUi +bJN +bEm +bEm +bUi +bDb +aaf +aaf +aaa +aaa +bZi +czV +czY +bLv +aaa +aaa +aaa +aaf +aaf +bky +cwy +cmn +cmn +bZi +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(178,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +alP +alP +alP +alP +alP +anf +anf +anf +anf +anf +anf +aty +anf +awx +avI +asA +apE +arx +aCo +aEf +aFw +aGU +aIC +aJU +aLe +aMX +aFw +aCR +aCR +aCR +aCR +aCR +aCR +aWe +aWe +aCR +aCR +bcs +aXq +aYV +bfX +bfV +bfV +bfV +bfV +bfV +box +bpW +brs +box +box +buo +bxd +byk +byk +byk +byk +bDc +bDc +bJR +bEg +bDc +bDc +bLe +bMr +bNr +bIT +bJN +bJN +bJN +bJN +bJN +bJN +bJN +bJN +bDb +bDb +bDb +bDb +bDb +bDb +bky +bky +bky +bky +bky +czX +cAc +bCq +bky +bky +bky +bky +bky +bky +cmn +cmn +cmn +bZi +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(179,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alO +amx +anf +anf +anf +anf +alP +alP +alP +asB +asB +asB +avo +awx +avH +asB +asB +asB +aCK +aEf +aFw +aHg +aIA +aJT +aLc +aMX +aFw +aPj +aFz +aRR +aTe +aUG +aFz +aRS +aXW +baz +aCR +bcx +aXq +aYV +bfY +bhA +biR +bkq +bjZ +bvx +boz +boM +bzE +bsX +bsz +btW +bxf +bzE +bzE +bzE +bzE +bDd +bEq +bDl +bEf +bFQ +bHc +bHK +bIb +bID +bOA +bPK +bQO +bSb +bOu +bUj +bVl +bWo +bXh +bQZ +bTl +bZY +caX +bTl +bQZ +cdQ +btp +bky +czG +czR +czW +cAb +cko +clq +cmq +ciI +cnJ +cri +bYr +cmn +cBT +cBU +bZi +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(180,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +alP +alP +alP +alP +alP +anf +alP +aqD +arz +asB +atD +auJ +asB +awQ +avK +azt +aAy +asB +aCN +aEf +aFw +aGY +aII +aJW +aMX +aMX +aNW +aPl +aQv +aPl +aTg +aUI +aTg +aRS +aZf +aFz +bbF +aYV +aXq +aYV +bfX +bhB +bgp +bhU +bhU +blX +bow +boO +bhU +bsZ +cdX +ceX +bvg +bvD +bvD +cBx +bzB +bAa +bBE +bDm +bEr +bFR +bHf +bHM +bFR +bIE +bJr +bJO +bWr +bQX +bQX +bUk +bVn +bWq +bXj +bYj +bZc +bTl +bTl +bTl +bQZ +bNB +ceM +ccU +cgo +czS +blO +cAd +bky +bDh +cBL +btp +btp +cvO +bky +bky +bky +bky +bky +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(181,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +aaf +aaf +alP +anf +alP +aqC +ary +asB +atC +auI +auI +awP +avJ +awO +awO +asB +aCM +aEg +aFw +aHi +aHi +aJV +aFw +aFw +aFw +aPk +aQu +aPk +aTf +aUH +aTf +aRS +aZf +baA +bbF +aYV +aXq +aYV +bfZ +bhA +biS +bkr +blH +bnm +boy +bpX +brt +brm +bsA +bvH +bvf +brt +bwO +bxF +bzA +bzZ +bBD +bBD +bBD +bBD +bBD +bHL +bBD +bBD +bJo +bPK +bQX +bWr +bQX +bQX +bWr +bWp +bXi +bYi +bTl +bTl +caY +cbV +bQZ +blQ +brG +cfs +cgm +bns +bky +bky +bky +bky +bky +bky +btp +csy +cko +cAf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(182,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +alP +anf +alP +alP +alP +asB +atE +auI +auI +awT +avM +azv +aAA +asB +aCE +aEi +aFw +aHl +aID +aID +aFw +aMM +aFz +aFz +aQw +aRS +aRS +aRS +aRS +aRS +aZf +aRS +bbF +aYV +aXq +aYV +bga +bgc +bgc +bgc +bgc +bgc +boB +boB +boB +btb +buo +bvJ +bvJ +bvJ +bwQ +bxW +bvK +bvK +bEt +bDn +bEz +bFS +bJT +bLh +bMs +bMs +bMs +bPN +bQS +bSf +bWr +bWr +bQX +bWr +bXl +caZ +cba +bTl +cbc +bTl +bQZ +cdR +ceO +bky +cgm +chw +ciK +cjC +ckp +cls +cmr +bky +btp +cmo +bky +aaf +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(183,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +alP +anf +apE +anf +anf +asB +asB +asB +avL +awR +auI +azu +aAz +asB +aCO +aEh +aFz +aHk +aFz +aFz +aTe +aML +aFz +aFz +aQw +cdl +aRS +aRS +aRS +aRS +aZf +aRS +bbF +aYV +aXq +aYV +bfX +bhC +biU +bks +blI +bnn +boA +bpZ +boB +bta +buo +bvJ +bCk +byo +aDH +bxP +bCf +bvK +bEs +bGc +bHm +bGc +bEs +bEs +aaf +aaf +aaf +bPN +bQR +bSe +bMf +bNe +bNm +bNX +bTf +bQZ +bTl +bTl +cbb +bTl +bQZ +cdR +ceN +bky +cgp +chv +ciJ +cbf +cbf +clr +bnt +bky +btp +cou +bZi +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(184,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +alP +aoQ +alP +aqE +arA +asB +atG +auL +avN +axa +auI +azw +aAA +asB +aCQ +aEk +aFB +aHn +aFB +csT +aFB +aLr +aFB +aPn +aQy +aPn +aTi +aUK +aVU +aWg +aZf +baA +bbF +aYV +aXq +aYV +bfX +bhD +biV +biW +blK +bnp +bng +boQ +brx +bro +buo +bvJ +bxj +byq +bwR +bxY +bCh +bvK +bEv +bFU +bFU +bFU +bJV +bEC +bMu +bMu +bMu +bEC +bQU +bQU +bTl +bQU +bXr +bWr +bOw +bQZ +bQZ +bQZ +cka +bQZ +bQZ +bQZ +bQZ +bQZ +cgr +chx +bky +bky +bky +clt +bnt +bky +btp +bMB +bZi +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(185,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +alP +alP +alP +alP +alP +asB +atF +auK +auJ +awS +auI +awO +awO +asB +aCP +aEj +aFA +aHm +aEj +aEj +aEj +aEj +aEj +aPm +aQx +aPm +aTh +aUJ +aTh +aXz +aZg +aFz +bbF +aYV +bdv +aYV +bgb +bhC +biU +biW +blJ +bno +bnf +boP +bqf +brn +bsC +bvK +bxi +byp +bzJ +bxY +bCg +bvK +bEu +bFU +bFU +bFU +bJU +bEC +bMt +bNt +bNt +bEC +bQT +bSg +bTk +bSh +bXr +bQX +bOv +bYk +bYk +bZZ +cjW +bZZ +ccR +cdS +ceP +bQZ +cgq +chx +bky +aaa +bky +cgr +cms +bky +btp +bNA +bky +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(186,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +asB +atH +auM +avO +awU +ayj +azx +aAB +asB +aCR +aEm +aCR +aPl +aQv +aPl +aQv +aCR +aNY +aCR +aQA +aCR +aTj +aFz +aVV +aXB +aZh +baB +aCR +bcq +bdx +bcq +bgc +bgc +biX +bhV +bka +blZ +bnk +bpo +bqk +brp +bsD +bvK +bxl +bys +bzM +bya +bCj +bvK +bEx +bFU +bFU +bGl +bJX +bEC +bMw +cBE +bOE +bEC +bQV +bSi +bTm +bUn +bXr +bQX +bOv +bYm +bYm +bZZ +ckN +bZZ +ccR +cdS +ceP +bQZ +cgt +chx +bZi +aaa +bZi +clt +bnt +btp +btp +bky +bky +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(187,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +asB +asB +asB +asB +asB +asB +asB +asB +asB +aCR +bfb +aCR +aHo +aIE +aKe +aIE +aCR +aNX +aPo +aQz +aCR +aCR +aCR +aCR +aXy +aZe +aCR +aCR +bcy +bdw +beG +bgc +bhE +biW +bkv +blL +biW +bnh +biW +brx +bte +bup +bvK +cBu +byr +bzL +bxZ +bCi +bvK +bEw +bFU +bFU +bGk +bJW +bEC +bMv +bNu +bMv +bEC +bQT +bSh +coT +bTl +bXr +bNZ +bOy +bZd +bYl +caa +ckM +cbW +ccS +ccS +ceQ +cft +cgs +chy +bZi +aaa +bZi +clt +bns +bky +bky +bky +aaa +aaa +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aba +aaS +aaS +aaS +aaS +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(188,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +atS +apQ +aoV +aoV +atS +apQ +apQ +apQ +atS +aCR +aEn +aCR +aHq +aHq +aHq +aHq +aCR +aCR +aCR +aCR +aCR +aTl +aUL +aVW +aXD +aZj +baD +bbG +aTk +bdy +beI +bgc +bhF +biW +bib +bki +bma +bnl +bpq +boB +bth +bus +bvK +bxm +byu +bzN +byb +aGs +bvK +bBF +bFU +bEL +bGz +bJZ +bEC +bMx +bNw +bOF +bEC +bQW +bSj +bTn +bUo +bNq +bOk +bOB +bPs +bYo +cab +cbd +cbX +ccT +bSc +bSc +cfu +cgu +chA +bky +aaa +bky +clt +bns +aaf +aaf +aaf +aaf +aaf +aaS +aaa +aaf +aaa +acy +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(189,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +atS +aoV +aoV +aoV +atS +aoV +aoV +apQ +atS +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aMZ +aNZ +aPp +aQB +aNa +aTk +aPq +aPq +aXC +aZi +baC +aPq +aPq +bdy +beH +bgc +bgc +bgc +bgc +bgc +bgc +bgc +bpp +bgc +brr +bsE +bvK +bvK +byt +byt +byt +byt +byt +bEy +bFU +bFT +bFU +bJY +bEC +bMv +bNv +bMv +bEC +bPN +bPK +bPN +bPN +bPK +bPN +bPK +bPb +bQG +bPN +bPN +bPN +bQZ +bQZ +bQZ +bQZ +bky +chz +bky +bky +bky +clt +bns +aaa +aaa +aaa +aaa +aaa +aaS +aaa +crj +crB +crS +aaa +crj +crB +crS +aaa +crj +crB +crS +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(190,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +atS +aoV +aoV +aoV +aaH +aoV +aoV +apQ +atS +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aMZ +aOb +aPr +aQC +aRU +aQC +aQC +aQC +czO +aZl +baE +bbH +bcA +bdz +beJ +bge +bhH +biY +biY +biY +bmd +bnr +bpr +bgc +btj +buu +bvM +bxo +bqe +bzO +bzO +bzO +bqe +bEB +bFW +bFT +bFU +bFU +bLi +bMz +bNy +bOH +bEs +bQY +bQX +bTo +bUp +bUp +bUp +bXs +bPL +bQI +bPN +bWr +cbZ +bQZ +cmo +bky +bDh +bky +chC +ciL +btp +btp +clv +cmt +aaa +aaa +aaa +aaa +aaa +aba +aaf +crj +crC +crS +aaa +crj +crC +crS +aaa +crj +crC +crS +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(191,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +atS +aoV +aoV +aoV +aaH +aoV +aoV +aoV +atS +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aMZ +aOa +aVX +aTm +aRL +aTm +aTm +aTm +aWh +aZk +aTm +aTm +bcz +aTm +aTm +bgd +bhG +bhG +bhG +blO +bmc +bnq +bgc +bgc +bru +bsF +btY +bxn +bqe +bzO +bzO +bzO +bqe +bEA +bFV +bFT +bGA +bHg +bFU +bMy +bNx +bOG +bEs +bQX +bSk +bQX +bUp +bUp +bUp +bXr +bPF +bWr +bWr +bWr +cbY +bQZ +btp +bky +bky +bky +ccp +cbf +cbf +cbf +clu +cmt +aaa +aaa +aaa +aaa +aaa +aaf +aaa +crj +crC +crS +aaf +crj +crC +crS +aaf +crj +crC +crS +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(192,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaH +aoV +aoV +aoV +atS +aoV +aoV +aoV +atS +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aNa +aOd +aOU +aPq +aNa +aPq +aPq +aPq +aOU +aPq +aPq +aPq +bcC +cBl +aPq +bgg +aNa +aaa +bky +bqh +bme +bnx +bqe +brA +brw +buw +bvO +bxq +byv +bzO +bAR +bzO +bqe +bED +bFX +bFT +bGF +bKa +bFU +bMA +bNz +bOI +bEs +bRa +bQX +bTp +bUp +bVs +bUp +bXt +bPM +bZh +bPN +cbe +cbY +bQZ +btp +ceS +cae +bky +ccq +cdq +cjE +ckr +clw +cmu +aaf +aaf +aaf +aaf +aaf +aaf +aaf +crj +crC +crS +aaa +crj +crC +crS +aaa +crj +crC +crS +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(193,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +atS +aoV +aoV +aoV +atS +aoV +aoV +aoV +apQ +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aNa +aOc +aPs +aPq +aNa +aPq +aPs +aPs +aXG +aZm +aPs +aPq +bcB +aPq +aPs +bgf +aNa +aaf +bky +blP +bns +boF +bqe +brz +brv +cBt +bvN +bxp +byv +bzO +bAQ +bCl +bqe +bEC +bEC +bEM +bGC +bEC +bEC +bEC +bEC +bEC +bEC +bQZ +bQZ +bQZ +bQZ +bQZ +bQZ +bQZ +bUp +bQZ +bQZ +bQZ +bQZ +bQZ +btp +ceR +btp +cbv +ccq +bns +cjD +cjD +cjD +cjD +cnj +aaa +aaa +aaa +aaa +aaf +aaa +crj +crC +crS +aaa +crj +crC +crS +aaa +crj +crC +crS +aaa +aaf +aaS +aaS +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(194,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +atS +aoV +aoV +aoV +atS +aoV +aoV +aoV +aoV +aaf +aaa +aaf +aaf +aaf +aaf +aaf +aNa +aNa +aNa +aQF +aNa +aTn +aNa +aNa +aNa +aNa +aNa +cyp +aNa +bdA +aNa +aNa +aNa +aaa +bky +blR +bns +boF +bqe +brC +brv +buv +bvO +bxr +byv +bzO +bzO +bzO +bqe +bEF +bky +bEO +bGK +bKc +bky +bMB +bNA +btp +btp +bRb +bDh +bPN +bUq +bVt +bVt +bUp +bUp +bUp +bPN +bDh +bqg +bky +bDh +bDh +ckS +bky +ccq +cds +cjD +ckt +cly +cmw +cnj +cnj +cnj +aaa +aaa +aaf +aaa +aaa +crD +aaa +aaa +aaa +crD +aaa +aaa +aaa +csZ +aaa +aaa +aaa +aaf +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(195,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apQ +aoV +aoV +aoV +atS +aoV +aoV +aoV +aoV +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aaf +aaf +aNa +aQE +aNa +aQE +aNa +aaa +aaf +aaa +aNa +aQE +aNa +aQE +aNa +aaf +aaf +aaf +bky +cyC +bns +boF +bqe +brB +brv +bsG +bvP +bxn +bqe +bzO +bzO +bzO +bqe +bEE +bFY +bEN +bGG +bKb +bFY +buz +buz +buz +buz +buz +bSl +bTq +bTq +bTq +bTq +bTq +bTq +bTq +bTq +cbf +cbf +ccU +ccU +ccU +ccU +ccU +ccr +cdr +cjF +cks +clx +cmv +cnk +cnK +cyU +cpi +cpi +cpi +cqJ +crk +crk +crk +crk +crk +crk +crk +csE +cpi +csY +cpi +cpi +cpi +ctB +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(196,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +apQ +aoV +aoV +aoV +apQ +aoV +aoV +aoV +aoV +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aaf +aaa +aNa +aQE +aNa +aQE +aNa +aaf +aaf +aaf +aNa +aQE +aNa +aQE +aNa +aaa +aaf +aaa +aaf +aaa +bns +boF +bqe +brD +brP +bsI +bvO +bxs +byw +bzO +bzO +bzO +bqe +bEG +bGa +bHs +bGL +bKd +bhG +bMC +blO +blO +bPO +blO +bSm +bTr +bTr +bTr +bTr +bXu +bTr +bTr +bTr +cbg +bTr +bTr +bXu +bTr +cbg +bTr +cct +cdu +cjG +cku +clz +cmx +cnj +cnj +cnj +aaa +aaa +aaf +aaa +aaa +crF +aaa +aaa +aaa +crF +aaa +aaa +aaa +csZ +aaa +aaa +aaa +aaf +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(197,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aoV +aoV +aoV +aoV +apQ +aoV +aoV +aoV +aoV +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aNa +aeR +aNa +aQE +aNa +aaf +aaa +aaf +aNa +aQE +aNa +afE +aNa +aaa +aaa +aaa +aaf +aaa +bns +boF +bqe +bqe +bry +bsH +bqe +bqe +bqe +bqe +bqe +bqe +bqe +bEG +bFZ +bHr +bIS +bEs +bEs +bEs +bky +bky +btp +bky +bky +bky +bky +bky +btp +bky +bky +bky +bky +bky +bky +bky +bky +btp +bky +bky +bky +bky +cjD +cjD +cjD +cjD +cnj +aaa +aaa +aaa +aaa +aaf +aaa +crj +crE +crS +aaa +crj +crE +crS +aaa +crj +crE +crS +aaa +aaf +aaS +aaS +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(198,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aNa +aQE +aNa +aQE +aNa +aaf +aaf +aaf +aNa +aQE +aNa +aQE +aNa +aaa +aaa +aaa +aaf +aaf +bns +boH +biY +brF +brQ +bsM +buz +buz +buz +buz +buz +buz +buz +bEI +bFZ +bHu +bIV +bKf +bLk +bEs +bNC +btp +btp +bky +aaa +aaa +aaf +bky +btp +btp +bYr +btp +cad +cbi +bky +ccW +cdV +btp +bky +cgy +ccV +bky +aaa +aaa +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +crj +crE +crS +aaa +crj +crE +crS +aaa +crj +crE +crS +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(199,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aNa +cyh +aRW +aTo +aNa +aaa +aaf +aaa +aNa +aTo +aRW +cyr +aNa +aaa +aaa +aaf +aaf +aaf +bnu +bhG +bhG +bhG +bhG +bsJ +brE +bhG +bhG +bhG +bhG +brE +bhG +bEH +bGb +cBA +bIU +bKe +bLj +bEs +bNB +btp +bPP +bky +aaa +aaa +aaf +bky +bky +bky +bky +btp +cac +cbh +bky +ccV +btp +btp +cfv +cBL +btp +bky +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaa +crj +crE +crS +aaf +crj +crE +crS +aaf +crj +crE +crS +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(200,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cwI +cwI +cwI +cxg +cwI +afa +cwI +crx +crx +crx +cwI +cxK +cwI +cxK +cwI +cwI +cwI +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bky +btq +brH +bvQ +bxt +bvQ +bCm +bDh +bEs +bGd +bHv +bIW +bKe +bLm +bEs +bky +bky +bky +bky +aaa +aaa +aaf +aaa +aaf +bky +bYs +btp +cae +btp +btp +btp +btp +ceT +bky +btp +chH +bky +aaf +aaf +aaa +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +crj +crE +crS +aaa +crj +crE +crS +aaa +crj +crE +crS +aaf +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(201,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cwI +cwI +cwI +cwI +cwY +cxd +cxe +cwI +cLO +anq +anq +anq +anq +anq +cLS +cwI +cxQ +cLU +cxU +cwI +cwI +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bZi +bqg +brG +brG +btp +brG +brG +bDg +bEs +bGc +bGc +bGc +bEs +bLl +bEs +aaf +aaa +aaf +atS +aaa +aaa +aaf +aaa +aaf +bky +bky +bZi +bZi +bZi +bky +bky +bky +blP +bky +bky +bky +bky +aaf +aaf +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aba +aaa +crj +crG +crS +aaa +crj +crG +crS +aaa +crj +crG +crS +aaa +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(202,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +cwI +crO +cwK +cwP +cwI +cwY +cxe +cxh +cwI +cxo +cwL +cwL +cwL +cwL +cwL +cxL +cwI +cxQ +cxQ +cxU +cxX +cxZ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bZi +btp +brI +bvR +btp +byx +brI +bky +bky +aaf +aaf +aaf +aaf +aaa +aaf +aaf +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +aag +aaf +aaa +aaa +aaa +aaf +aaf +bky +ceU +bky +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaS +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aaf +aaa +aba +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(203,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +crx +crN +cwJ +cwO +cwI +cwY +cxe +cxh +cwI +cwL +cxq +cxq +cxq +cxq +cxq +cwL +cxM +cxQ +cxQ +cxV +cxX +cxZ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +bky +bky +bky +bky +bky +bky +bky +bky +aaf +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +aag +aaf +aaa +aaa +aaa +aaa +aaf +bky +cyC +bky +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaS +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(204,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +avT +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +crx +cwF +cwL +cwR +cwI +crx +cxf +crx +cxm +cwL +cxr +cxr +cxr +cxr +cxr +cwL +cwI +cxR +cLV +cxV +cxX +cxZ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaf +aaf +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaf +aag +aag +aag +aaf +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(205,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +crx +crQ +cwL +cwQ +cwI +cwZ +cwL +cxi +cLN +cwL +cwL +cwL +cwL +cwL +cwL +cLT +cwW +cwI +cwI +cwI +cxX +cxZ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(206,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +crx +cwF +cwL +cwL +cwX +cwL +cwL +anq +cxj +cwL +cxq +cxq +cxq +cxq +cxq +cwL +crx +cxc +cLW +cxc +cxX +cxZ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(207,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +crx +cwG +amB +amB +cwW +cxa +cwL +cxj +cxj +cwL +cxr +cxr +cxr +cxr +cxr +cwL +cxO +cxa +cxa +cxa +cxX +cxZ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(208,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cwI +crO +cwN +cwS +cwI +cxc +cwL +cwL +cwL +cwL +cwL +cwL +cwL +cwL +cwL +cwL +crx +cxa +cxa +cxa +cxX +cxZ +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(209,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cwI +cwI +cwI +cwI +cxb +cLM +cxa +cxa +cxp +cxs +cxs +cxs +cxs +cxs +cxp +crx +cxS +cxT +cxS +cwI +cwI +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(210,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cwI +crx +cwI +crx +cwI +cwI +cwI +crx +crx +crx +cwI +cwI +cwI +crx +cwI +crx +cwI +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(211,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(212,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cxn +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(213,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(214,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aag +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(215,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(216,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(217,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(218,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(219,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(220,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(221,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +cBX +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(222,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(223,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(224,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +bGf +bLo +bGf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(225,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +bIX +bGf +bLn +bGf +bIX +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(226,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +bGf +bGf +bKh +bLo +bMD +bGf +bGf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(227,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +bGe +bGe +bIY +bKg +bKg +bKg +bND +bGe +bGe +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(228,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +bGf +bHw +bJa +bKg +bLp +bKg +bNF +bOJ +bGf +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(229,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +bGe +bGe +bIZ +bKg +bKg +bKg +bNE +bGe +bGe +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(230,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +bGf +bGf +bKi +bLr +bME +bNG +bNG +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(231,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +bIX +bGf +bLq +bGf +bIX +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(232,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +bGf +bGe +bGf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(233,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aae +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(234,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(235,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(236,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(237,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(238,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(239,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(240,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aHr +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(241,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aHr +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(242,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aHr +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(243,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(244,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(245,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(246,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(247,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aHr +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aHr +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(248,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aHr +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(249,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(250,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(251,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(252,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(253,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(254,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +"} +(255,1,1) = {" +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa "} diff --git a/_maps/map_files/TgStation/tgstation.2.1.3old.dmm b/_maps/map_files/TgStation/tgstation.2.1.3old.dmm new file mode 100644 index 0000000000..9d5a357b6b --- /dev/null +++ b/_maps/map_files/TgStation/tgstation.2.1.3old.dmm @@ -0,0 +1,7187 @@ +"aaa" = (/turf/open/space,/area/space) +"aab" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_n"; name = "north of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"aac" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 9},/turf/closed/wall/mineral/plastitanium{dir = 8; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aad" = (/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) +"aae" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters{id = "syndieshutters"; name = "blast shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/shuttle/syndicate) +"aaf" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 5},/turf/closed/wall/mineral/plastitanium{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aag" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aah" = (/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aai" = (/obj/structure/table,/obj/item/device/flashlight/lamp{pixel_x = 4; pixel_y = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaj" = (/obj/machinery/computer/shuttle/syndicate,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aak" = (/obj/structure/table,/obj/machinery/button/door{id = "syndieshutters"; name = "remote shutter control"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aal" = (/obj/structure/frame/computer,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aam" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aan" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aao" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 10},/obj/item/device/multitool,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aap" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_y = -32; subspace_transmission = 1; syndie = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaq" = (/obj/structure/closet/syndicate/personal,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aar" = (/turf/open/space,/turf/closed/wall/mineral/plastitanium{icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aas" = (/obj/machinery/door/window{name = "Cockpit"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aat" = (/turf/open/space,/turf/closed/wall/mineral/plastitanium{dir = 4; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aau" = (/turf/open/space,/area/shuttle/syndicate) +"aav" = (/obj/structure/table,/obj/item/stack/cable_coil,/obj/item/weapon/crowbar/red,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaw" = (/obj/structure/table,/obj/item/weapon/storage/box/zipties{pixel_x = 1; pixel_y = 2},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aax" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aay" = (/obj/machinery/porta_turret/syndicate{dir = 4},/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) +"aaz" = (/obj/machinery/suit_storage_unit/syndicate,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaA" = (/obj/structure/closet/syndicate/nuclear,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaB" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_ne"; name = "northeast of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"aaC" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaD" = (/obj/structure/table,/obj/item/device/aicard,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaE" = (/obj/machinery/door/poddoor{id = "smindicate"; name = "outer blast door"},/obj/machinery/button/door{id = "smindicate"; name = "external door control"; pixel_x = -26; pixel_y = 0; req_access_txt = "150"},/obj/docking_port/mobile{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate"; name = "syndicate infiltrator"; port_angle = 0; roundstart_move = "syndicate_away"; width = 18},/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_nw"; name = "northwest of station"; turf_type = /turf/open/space; width = 18},/turf/open/floor/plating,/area/shuttle/syndicate) +"aaF" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) +"aaG" = (/obj/structure/table,/obj/item/weapon/c4{pixel_x = 2; pixel_y = -5},/obj/item/weapon/c4{pixel_x = -3; pixel_y = 3},/obj/item/weapon/c4{pixel_x = 2; pixel_y = -3},/obj/item/weapon/c4{pixel_x = -2; pixel_y = -1},/obj/item/weapon/c4{pixel_x = 3; pixel_y = 3},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaH" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/shuttle/syndicate) +"aaI" = (/obj/machinery/door/window{name = "Ready Room"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaJ" = (/obj/effect/landmark{name = "carpspawn"},/turf/open/space,/area/space) +"aaK" = (/obj/machinery/door/window{dir = 4; name = "EVA Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaL" = (/obj/machinery/door/airlock/external{req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaM" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "EVA Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaN" = (/turf/open/space,/turf/closed/wall/mineral/plastitanium{dir = 1; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"aaO" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; freerange = 1; frequency = 1213; name = "Syndicate Intercom"; pixel_x = -32; subspace_transmission = 1; syndie = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaP" = (/obj/machinery/sleeper/syndie{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"aaQ" = (/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"aaR" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"aaS" = (/obj/structure/tank_dispenser/oxygen,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"aaT" = (/obj/structure/table,/obj/item/stack/medical/ointment,/obj/item/stack/medical/bruise_pack,/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"aaU" = (/obj/structure/table,/obj/item/weapon/stock_parts/cell/high{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaV" = (/obj/structure/table,/obj/item/weapon/screwdriver{pixel_y = 9},/obj/item/device/assembly/voice{pixel_y = 3},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaW" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/device/assembly/infra,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaX" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaY" = (/obj/structure/table,/obj/item/weapon/weldingtool/largetank{pixel_y = 3},/obj/item/device/multitool,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"aaZ" = (/obj/structure/bed/roller,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"aba" = (/obj/structure/sign/bluecross_2,/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) +"abb" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/syndicate,/obj/item/weapon/crowbar/red,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abc" = (/obj/machinery/door/window{dir = 4; name = "Infirmary"; req_access_txt = "150"},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abd" = (/obj/machinery/door/window/westright{name = "Tool Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abe" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Infirmary"; req_access_txt = "150"},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abf" = (/obj/machinery/door/window{dir = 8; name = "Tool Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abg" = (/obj/machinery/recharge_station,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abh" = (/obj/structure/lattice,/turf/open/space,/area/space) +"abi" = (/obj/machinery/porta_turret/syndicate{dir = 5},/turf/closed/wall/mineral/plastitanium,/area/shuttle/syndicate) +"abj" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/table,/obj/item/bodypart/r_arm/robot,/obj/item/bodypart/l_arm/robot,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abk" = (/obj/machinery/door/window{dir = 1; name = "Surgery"; req_access_txt = "150"},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abl" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abm" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/brute,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abn" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abo" = (/obj/structure/table,/obj/item/device/sbeacondrop/bomb{pixel_y = 5},/obj/item/device/sbeacondrop/bomb,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abp" = (/obj/structure/table,/obj/item/weapon/grenade/syndieminibomb{pixel_x = 4; pixel_y = 2},/obj/item/weapon/grenade/syndieminibomb{pixel_x = -1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abq" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/space) +"abr" = (/obj/structure/table,/obj/item/weapon/surgicaldrill,/obj/item/weapon/circular_saw,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abs" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 30},/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abt" = (/obj/machinery/nuclearbomb/syndicate,/obj/machinery/door/window{dir = 1; name = "Secure Storage"; req_access_txt = "150"},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abu" = (/obj/machinery/telecomms/allinone{intercept = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abv" = (/obj/structure/sign/securearea{pixel_y = -32},/turf/open/space,/area/space) +"abw" = (/obj/structure/table,/obj/item/weapon/cautery,/obj/item/weapon/scalpel,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abx" = (/obj/structure/table/optable,/obj/item/weapon/surgical_drapes,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"aby" = (/obj/structure/table,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/turf/open/floor/mineral/titanium,/area/shuttle/syndicate) +"abz" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plating,/area/shuttle/syndicate) +"abA" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abB" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abC" = (/obj/structure/rack,/obj/item/clothing/suit/space/syndicate/black/red,/obj/item/clothing/head/helmet/space/syndicate/black/red,/turf/open/floor/mineral/plastitanium,/area/shuttle/syndicate) +"abD" = (/turf/closed/wall/r_wall,/area/security/prison) +"abE" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/prison) +"abF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall/r_wall,/area/security/prison) +"abG" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/prison) +"abH" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/prison) +"abI" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_l"},/turf/open/floor/plating,/area/shuttle/syndicate) +"abJ" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating,/area/shuttle/syndicate) +"abK" = (/obj/structure/shuttle/engine/propulsion{icon_state = "propulsion_r"},/turf/open/floor/plating,/area/shuttle/syndicate) +"abL" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/ambrosia,/turf/open/floor/plasteel/green/side{dir = 9},/area/security/prison) +"abM" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/carrot,/turf/open/floor/plasteel/green/side{dir = 1},/area/security/prison) +"abN" = (/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plating,/area/security/prison) +"abO" = (/obj/machinery/hydroponics/soil,/obj/item/seeds/glowshroom,/turf/open/floor/plasteel/green/side{dir = 1},/area/security/prison) +"abP" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/hydroponics/soil,/obj/item/device/plant_analyzer,/obj/machinery/camera{c_tag = "Prison Common Room"; network = list("SS13","Prison")},/turf/open/floor/plasteel/green/side{dir = 5},/area/security/prison) +"abQ" = (/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"abR" = (/obj/structure/sink{pixel_y = 20},/turf/open/floor/plating,/area/security/prison) +"abS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"abT" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"abU" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 6},/turf/closed/wall/mineral/plastitanium{dir = 4; icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"abV" = (/turf/open/space,/obj/machinery/porta_turret/syndicate{dir = 10},/turf/closed/wall/mineral/plastitanium{icon_state = "diagonalWall3"},/area/shuttle/syndicate) +"abW" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plating,/area/security/prison) +"abX" = (/turf/open/floor/plating,/area/security/prison) +"abY" = (/mob/living/simple_animal/mouse/brown/Tom,/turf/open/floor/plating,/area/security/prison) +"abZ" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plating,/area/security/prison) +"aca" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acb" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/seeds/potato,/turf/open/floor/plasteel/green/side{dir = 10},/area/security/prison) +"acc" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/seeds/grass,/turf/open/floor/plasteel/green/side{dir = 2},/area/security/prison) +"acd" = (/obj/structure/window/reinforced,/turf/open/floor/plating,/area/security/prison) +"ace" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/weapon/cultivator,/turf/open/floor/plasteel/green/side{dir = 2},/area/security/prison) +"acf" = (/obj/structure/window/reinforced,/obj/machinery/hydroponics/soil,/obj/item/weapon/cultivator,/turf/open/floor/plasteel/green/side{dir = 6},/area/security/prison) +"acg" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"ach" = (/turf/open/floor/plating/airless,/area/space/nearstation) +"aci" = (/obj/structure/bookcase,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acj" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"ack" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/barber,/area/security/prison) +"acl" = (/obj/machinery/washing_machine,/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/barber,/area/security/prison) +"acm" = (/obj/machinery/computer/libraryconsole/bookmanagement{pixel_y = 0},/obj/structure/table,/obj/machinery/newscaster{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acn" = (/obj/structure/table,/obj/item/weapon/storage/pill_bottle/dice,/turf/open/floor/plasteel,/area/security/prison) +"aco" = (/obj/structure/table,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/prison) +"acp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/barber,/area/security/prison) +"acq" = (/obj/structure/table,/obj/structure/bedsheetbin,/turf/open/floor/plasteel/barber,/area/security/prison) +"acr" = (/obj/structure/lattice,/obj/structure/sign/securearea{pixel_y = -32},/turf/open/space,/area/space) +"acs" = (/obj/structure/grille,/obj/structure/lattice,/turf/open/space,/area/space) +"act" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acu" = (/obj/structure/chair/stool,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acv" = (/obj/structure/table,/obj/item/toy/cards/deck,/turf/open/floor/plasteel,/area/security/prison) +"acw" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/prison) +"acx" = (/obj/structure/window/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/barber,/area/security/prison) +"acy" = (/obj/machinery/washing_machine,/obj/structure/window/reinforced,/turf/open/floor/plasteel/barber,/area/security/prison) +"acz" = (/turf/closed/wall/r_wall,/area/ai_monitored/security/armory) +"acA" = (/obj/structure/lattice,/obj/structure/grille/broken,/turf/open/space,/area/space) +"acB" = (/turf/closed/wall/r_wall,/area/security/transfer) +"acC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall/r_wall,/area/security/transfer) +"acD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/transfer) +"acE" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall/r_wall,/area/security/transfer) +"acF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall/r_wall,/area/security/transfer) +"acG" = (/obj/machinery/vending/sustenance,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acH" = (/obj/machinery/holopad,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acI" = (/obj/machinery/light/small{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/freezer,/area/security/prison) +"acJ" = (/obj/machinery/shower{dir = 8},/obj/item/weapon/soap/nanotrasen,/turf/open/floor/plasteel/freezer,/area/security/prison) +"acK" = (/obj/structure/lattice,/obj/structure/grille,/turf/open/space,/area/space) +"acL" = (/obj/structure/grille,/turf/open/space,/area/space) +"acM" = (/turf/closed/wall/r_wall,/area/security/main) +"acN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/main) +"acO" = (/turf/closed/wall/r_wall,/area/security/hos) +"acP" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/hos) +"acQ" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxport) +"acR" = (/obj/machinery/door/poddoor{id = "executionspaceblast"; name = "blast door"},/turf/open/floor/plating,/area/security/transfer) +"acS" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/black,/area/security/transfer) +"acT" = (/obj/machinery/light/small{dir = 1},/obj/machinery/flasher{id = "executionflash"; pixel_x = 0; pixel_y = 25},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/black,/area/security/transfer) +"acU" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/black,/area/security/transfer) +"acV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/security/transfer) +"acW" = (/obj/machinery/vending/cola/random,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acX" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"acZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"ada" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"add" = (/obj/machinery/door/window/westleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Unisex Showers"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/security/prison) +"ade" = (/turf/open/floor/plasteel/freezer,/area/security/prison) +"adf" = (/turf/closed/wall/r_wall,/area/space) +"adg" = (/obj/structure/closet/secure_closet/security/sec,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adh" = (/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adi" = (/obj/structure/closet/secure_closet/security/sec,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adj" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Security's Desk"; departmentType = 5; name = "Head of Security RC"; pixel_x = 0; pixel_y = 30},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = -31},/obj/structure/table/wood,/obj/item/weapon/storage/box/seccarts{pixel_x = 3; pixel_y = 2},/obj/item/weapon/storage/box/deputy,/turf/open/floor/carpet,/area/security/hos) +"adk" = (/obj/machinery/computer/secure_data,/turf/open/floor/carpet,/area/security/hos) +"adl" = (/obj/machinery/computer/security,/turf/open/floor/carpet,/area/security/hos) +"adm" = (/obj/machinery/computer/card/minor/hos,/turf/open/floor/carpet,/area/security/hos) +"adn" = (/obj/machinery/airalarm{pixel_y = 23},/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/turf/open/floor/carpet,/area/security/hos) +"ado" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tracker,/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxstarboard) +"adp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"adq" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/black,/area/security/transfer) +"adr" = (/obj/structure/bed,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/black,/area/security/transfer) +"ads" = (/obj/machinery/sparker{dir = 2; id = "executionburn"; pixel_x = 25},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/black,/area/security/transfer) +"adt" = (/turf/closed/wall,/area/security/prison) +"adu" = (/obj/machinery/door/poddoor/preopen{id = "permacell3"; name = "cell blast door"},/obj/machinery/door/airlock/glass{id_tag = "permabolt3"; name = "Cell 3"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adv" = (/obj/machinery/door/poddoor/preopen{id = "permacell2"; name = "cell blast door"},/obj/machinery/door/airlock/glass{id_tag = "permabolt2"; name = "Cell 2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/poddoor/preopen{id = "permacell1"; name = "cell blast door"},/obj/machinery/door/airlock/glass{id_tag = "permabolt1"; name = "Cell 1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adx" = (/obj/machinery/door/airlock{name = "Unisex Restroom"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/security/prison) +"ady" = (/obj/structure/closet/bombcloset,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adz" = (/obj/effect/landmark{name = "secequipment"},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adA" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"adB" = (/obj/machinery/newscaster/security_unit{pixel_x = -30; pixel_y = 0},/obj/machinery/camera{c_tag = "Head of Security's Office"; dir = 4; network = list("SS13")},/obj/machinery/recharger{pixel_y = 4},/obj/structure/table/wood,/turf/open/floor/carpet,/area/security/hos) +"adC" = (/obj/structure/chair/comfy/black,/turf/open/floor/carpet,/area/security/hos) +"adD" = (/turf/open/floor/carpet,/area/security/hos) +"adE" = (/obj/machinery/holopad,/turf/open/floor/carpet,/area/security/hos) +"adF" = (/obj/machinery/keycard_auth{pixel_x = 24; pixel_y = 10},/obj/structure/table/wood,/obj/item/device/radio/off,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/carpet,/area/security/hos) +"adG" = (/obj/structure/sign/securearea{pixel_y = -32},/obj/structure/lattice/catwalk,/turf/open/space,/area/space) +"adH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"adI" = (/obj/structure/lattice,/obj/item/stack/cable_coil/random,/turf/open/space,/area/space) +"adJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/black,/area/security/transfer) +"adK" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/black,/area/security/transfer) +"adL" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 2},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel/black,/area/security/transfer) +"adM" = (/obj/structure/bed,/obj/machinery/camera{c_tag = "Prison Cell 3"; network = list("SS13","Prison")},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adN" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "permabolt3"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adO" = (/obj/structure/bed,/obj/machinery/camera{c_tag = "Prison Cell 2"; network = list("SS13","Prison")},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adP" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adQ" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "permabolt2"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adR" = (/obj/structure/bed,/obj/machinery/camera{c_tag = "Prison Cell 1"; network = list("SS13","Prison")},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 0; pixel_y = 24; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adT" = (/obj/structure/chair/stool,/obj/machinery/light/small{dir = 1},/obj/machinery/button/door{id = "permabolt1"; name = "Cell Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"adU" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/freezer,/area/security/prison) +"adV" = (/obj/structure/table,/obj/item/weapon/storage/box/firingpins,/obj/item/weapon/storage/box/firingpins,/obj/item/key/security,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adW" = (/obj/structure/table,/obj/item/weapon/storage/box/chemimp{pixel_x = 6},/obj/item/weapon/storage/box/trackimp{pixel_x = -3},/obj/item/weapon/storage/lockbox/loyalty,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adX" = (/obj/structure/rack,/obj/machinery/firealarm{pixel_y = 24},/obj/item/weapon/gun/energy/e_gun/dragnet,/obj/item/weapon/gun/energy/e_gun/dragnet,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adY" = (/obj/structure/rack,/obj/item/clothing/suit/armor/bulletproof{pixel_x = -3; pixel_y = 3},/obj/item/clothing/suit/armor/bulletproof{pixel_y = 0},/obj/item/clothing/suit/armor/bulletproof{pixel_x = 3; pixel_y = -3},/obj/item/clothing/head/helmet/alt{layer = 3.00001; pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/helmet/alt{layer = 3.00001},/obj/item/clothing/head/helmet/alt{layer = 3.00001; pixel_x = 3; pixel_y = -3},/obj/machinery/camera/motion{c_tag = "Armory Motion Sensor"; dir = 2; name = "motion-sensitive security camera"},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"adZ" = (/obj/structure/rack,/obj/item/clothing/suit/armor/riot{pixel_x = -3; pixel_y = 3},/obj/item/clothing/suit/armor/riot,/obj/item/clothing/suit/armor/riot{pixel_x = 3; pixel_y = -3},/obj/machinery/light{dir = 1},/obj/item/clothing/head/helmet/riot{pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/helmet/riot,/obj/item/clothing/head/helmet/riot{pixel_x = 3; pixel_y = -3},/obj/item/weapon/shield/riot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/shield/riot,/obj/item/weapon/shield/riot{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"aea" = (/obj/structure/rack,/obj/machinery/airalarm{pixel_y = 23},/obj/item/weapon/gun/energy/ionrifle,/obj/item/weapon/gun/energy/temperature/security,/obj/item/clothing/suit/armor/laserproof,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"aeb" = (/obj/structure/closet/secure_closet/lethalshots,/turf/open/floor/plasteel/black,/area/ai_monitored/security/armory) +"aec" = (/obj/vehicle/secway,/turf/open/floor/plasteel/black,/area/ai_monitored/security/armory) +"aed" = (/obj/structure/closet/l3closet/security,/obj/machinery/camera{c_tag = "Brig Equipment Room"; dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"aee" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"aef" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{on = 0; pixel_x = -3; pixel_y = 8},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/carpet,/area/security/hos) +"aeg" = (/obj/structure/table/wood,/obj/item/weapon/folder/red,/obj/item/weapon/stamp/hos,/turf/open/floor/carpet,/area/security/hos) +"aeh" = (/obj/item/weapon/book/manual/wiki/security_space_law,/obj/structure/table/wood,/turf/open/floor/carpet,/area/security/hos) +"aei" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/suit_storage_unit/hos,/turf/open/floor/carpet,/area/security/hos) +"aej" = (/turf/closed/wall,/area/security/main) +"aek" = (/obj/machinery/door/airlock/external{name = "Security External Airlock"; req_access_txt = "63"},/turf/open/floor/plating,/area/security/main) +"ael" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxport) +"aem" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aen" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/poddoor/preopen{id = "executionfireblast"; layer = 2.9; name = "blast door"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/security/transfer) +"aeo" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "executionfireblast"; layer = 2.9; name = "blast door"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/security/transfer) +"aep" = (/obj/machinery/door/poddoor/preopen{id = "executionfireblast"; layer = 2.9; name = "blast door"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/window/westright{dir = 1; name = "Transfer Room"; req_access_txt = "2"},/turf/open/floor/plasteel/vault{dir = 8},/area/security/transfer) +"aeq" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/machinery/flasher{id = "PCell 3"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aer" = (/obj/structure/table,/obj/item/weapon/paper,/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aes" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/machinery/flasher{id = "PCell 2"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aet" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aeu" = (/obj/structure/table,/obj/item/weapon/paper,/obj/item/weapon/pen,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aev" = (/obj/machinery/flasher{id = "PCell 1"; pixel_x = -28},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aew" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aex" = (/obj/structure/toilet{dir = 1},/turf/open/floor/plasteel/freezer,/area/security/prison) +"aey" = (/obj/item/weapon/grenade/barrier{pixel_x = 4},/obj/item/weapon/grenade/barrier,/obj/item/weapon/grenade/barrier{pixel_x = -4},/obj/structure/table,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"aez" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"aeA" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"aeB" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "Armory APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"aeC" = (/obj/machinery/vending/security,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"aeD" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/carpet,/area/security/hos) +"aeE" = (/obj/structure/chair{dir = 1},/turf/open/floor/carpet,/area/security/hos) +"aeF" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/security/hos) +"aeG" = (/obj/item/weapon/storage/secure/safe/HoS{pixel_x = 35},/obj/structure/closet/secure_closet/hos,/turf/open/floor/carpet,/area/security/hos) +"aeH" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/security/main) +"aeI" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxstarboard) +"aeJ" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"aeK" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeM" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeN" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeO" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeQ" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"aeR" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/turf/open/space,/area/space) +"aeS" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/item/weapon/hemostat,/obj/item/weapon/retractor,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/turf/open/floor/plasteel/black,/area/security/transfer) +"aeT" = (/obj/structure/table,/obj/item/weapon/folder/red{pixel_x = 3},/obj/item/device/taperecorder{pixel_x = -3; pixel_y = 0},/obj/item/device/assembly/flash/handheld,/obj/item/weapon/reagent_containers/spray/pepper,/turf/open/floor/plasteel/black,/area/security/transfer) +"aeU" = (/obj/machinery/button/flasher{id = "executionflash"; pixel_x = 24; pixel_y = 5},/obj/machinery/button/door{id = "executionspaceblast"; name = "Vent to Space"; pixel_x = 25; pixel_y = -5; req_access_txt = "7"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/open/floor/plasteel/black,/area/security/transfer) +"aeV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/prison) +"aeW" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 3"; req_access_txt = "2"},/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aeX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/prison) +"aeY" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 2"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"aeZ" = (/obj/machinery/door/airlock/glass_security{name = "Long-Term Cell 1"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/prison) +"afa" = (/obj/structure/closet/secure_closet{anchored = 1; name = "Contraband Locker"; req_access_txt = "3"},/turf/open/floor/plasteel/black,/area/ai_monitored/security/armory) +"afb" = (/obj/item/weapon/storage/toolbox/drone,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afc" = (/obj/structure/rack,/obj/item/weapon/gun/ballistic/shotgun/riot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/ballistic/shotgun/riot,/obj/item/weapon/gun/ballistic/shotgun/riot{pixel_x = 3; pixel_y = -3},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/ai_monitored/security/armory) +"afd" = (/obj/structure/rack,/obj/item/weapon/gun/energy/e_gun{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/e_gun,/obj/item/weapon/gun/energy/e_gun{pixel_x = 3; pixel_y = -3},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/ai_monitored/security/armory) +"afe" = (/obj/structure/rack,/obj/item/weapon/gun/energy/laser{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/laser,/obj/item/weapon/gun/energy/laser{pixel_x = 3; pixel_y = -3},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/ai_monitored/security/armory) +"aff" = (/obj/structure/rack,/obj/item/weapon/gun/energy/e_gun/advtaser{pixel_x = -3; pixel_y = 3},/obj/item/weapon/gun/energy/e_gun/advtaser,/obj/item/weapon/gun/energy/e_gun/advtaser{pixel_x = 3; pixel_y = -3},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/ai_monitored/security/armory) +"afg" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afi" = (/obj/machinery/door/window/eastleft{name = "armoury desk"; req_access_txt = "1"},/obj/machinery/door/window/westleft{name = "armoury desk"; req_access_txt = "3"},/obj/structure/table/reinforced,/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afj" = (/obj/machinery/power/apc{dir = 8; name = "Head of Security's Office APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/security/hos) +"afk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/carpet,/area/security/hos) +"afl" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/security/hos) +"afm" = (/obj/machinery/light_switch{pixel_y = -23},/obj/effect/landmark/event_spawn,/turf/open/floor/carpet,/area/security/hos) +"afn" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/carpet,/area/security/hos) +"afo" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afq" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afr" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afs" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"aft" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afu" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"afv" = (/obj/structure/cable,/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxport) +"afw" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/security/transfer) +"afx" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/security/transfer) +"afy" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/security/transfer) +"afz" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/black,/area/security/transfer) +"afA" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/button/ignition{id = "executionburn"; pixel_x = 24; pixel_y = 5},/obj/machinery/button/door{id = "executionfireblast"; name = "Transfer Area Lockdown"; pixel_x = 25; pixel_y = -5; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/general/hidden,/turf/open/floor/plasteel/black,/area/security/transfer) +"afB" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall/r_wall,/area/security/transfer) +"afC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/prison) +"afD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/prison) +"afE" = (/obj/machinery/button/door{id = "permacell3"; name = "Cell 3 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/button/flasher{id = "PCell 3"; pixel_x = 6; pixel_y = 24},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/prison) +"afF" = (/obj/machinery/light{dir = 1},/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/prison) +"afG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/prison) +"afH" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/prison) +"afI" = (/obj/machinery/button/door{id = "permacell2"; name = "Cell 2 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/button/flasher{id = "PCell 2"; pixel_x = 6; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/prison) +"afJ" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/camera{c_tag = "Prison Hallway"; network = list("SS13","Prison")},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/prison) +"afK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/prison) +"afL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/prison) +"afM" = (/obj/machinery/button/door{id = "permacell1"; name = "Cell 1 Lockdown"; pixel_x = -4; pixel_y = 25; req_access_txt = "2"},/obj/machinery/button/flasher{id = "PCell 1"; pixel_x = 6; pixel_y = 24},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/prison) +"afN" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/light{dir = 1},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/prison) +"afO" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/power/apc{dir = 4; name = "Prison Wing APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/prison) +"afP" = (/obj/machinery/flasher/portable,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"afQ" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afR" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afS" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afT" = (/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afU" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afV" = (/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"afX" = (/obj/machinery/door/poddoor/shutters{id = "armory"; name = "Armoury Shutter"},/obj/machinery/button/door{id = "armory"; name = "Armory Shutters"; pixel_x = 0; pixel_y = -26; req_access_txt = "3"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/ai_monitored/security/armory) +"afY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"afZ" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"aga" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/hos) +"agb" = (/obj/machinery/door/airlock/glass_command{name = "Head of Security"; req_access_txt = "58"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/security/hos) +"agc" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/hos) +"agd" = (/obj/structure/table,/obj/item/stack/packageWrap,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/main) +"age" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/security/main) +"agf" = (/obj/machinery/camera{c_tag = "Security Escape Pod"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/security/main) +"agg" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/closed/wall/mineral/titanium,/area/shuttle/pod_3) +"agh" = (/turf/closed/wall/mineral/titanium,/area/shuttle/pod_3) +"agi" = (/obj/structure/cable,/obj/machinery/power/solar{id = "auxsolareast"; name = "Port Auxiliary Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/auxstarboard) +"agj" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/security/transfer) +"agk" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/plating,/area/security/transfer) +"agl" = (/obj/structure/rack,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/weapon/tank/internals/anesthetic{pixel_x = -3; pixel_y = 1},/obj/item/weapon/tank/internals/oxygen/red{pixel_x = 3},/turf/open/floor/plasteel/vault{dir = 8},/area/security/transfer) +"agm" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/black,/area/security/transfer) +"agn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/black,/area/security/transfer) +"ago" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{aiControlDisabled = 0; icon_state = "door_closed"; id_tag = null; locked = 0; name = "Prisoner Transfer Centre"; req_access = null; req_access_txt = "2"},/turf/open/floor/plasteel/black,/area/security/transfer) +"agp" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/prison) +"agq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/security/prison) +"agr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/security/prison) +"ags" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/security/prison) +"agt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/prison) +"agu" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/security/prison) +"agv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/prison) +"agw" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/prison) +"agx" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/prison) +"agy" = (/obj/structure/rack,/obj/item/weapon/storage/box/rubbershot{pixel_x = -3; pixel_y = 3},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/storage/box/rubbershot{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/box/rubbershot,/obj/item/weapon/storage/box/rubbershot,/obj/item/weapon/storage/box/rubbershot{pixel_x = 3; pixel_y = -3},/obj/item/weapon/storage/box/rubbershot{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"agz" = (/obj/structure/rack,/obj/item/weapon/storage/box/teargas{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/box/handcuffs,/obj/item/weapon/storage/box/flashbangs{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/security/armory) +"agA" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"agB" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"agC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/suit_storage_unit/security,/turf/open/floor/plasteel/red/side,/area/ai_monitored/security/armory) +"agD" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/suit_storage_unit/security,/turf/open/floor/plasteel/red/side,/area/ai_monitored/security/armory) +"agE" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"agF" = (/obj/machinery/recharger,/obj/structure/table,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"agG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"agH" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/closet/wardrobe/red,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"agI" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/main) +"agJ" = (/obj/effect/landmark/start{name = "Security Officer"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agK" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agM" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agN" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"agO" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/main) +"agP" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"agQ" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Escape Pod Three"; req_access_txt = "0"},/turf/open/floor/plating,/area/security/main) +"agR" = (/turf/open/floor/plating,/area/security/main) +"agS" = (/obj/machinery/door/airlock/external{name = "Escape Pod Three"; req_access_txt = "0"},/turf/open/floor/plating,/area/security/main) +"agT" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 4; id = "pod3"; name = "escape pod 3"; port_angle = 180; preferred_direction = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_3) +"agU" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -32},/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_3) +"agV" = (/obj/machinery/computer/shuttle/pod{pixel_y = -32; possible_destinations = "pod_asteroid3"; shuttleId = "pod3"},/obj/structure/chair{dir = 4},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_3) +"agW" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_3) +"agX" = (/obj/docking_port/stationary/random{dir = 4; id = "pod_asteroid3"; name = "asteroid"},/turf/open/space,/area/space) +"agY" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/transfer) +"agZ" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/security/transfer) +"aha" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; layer = 2.4},/obj/machinery/door/window/southleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Armory"; req_access_txt = "2"},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/security/transfer) +"ahb" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahc" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/atmospherics/pipe/simple/general/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahd" = (/obj/machinery/light_switch{pixel_x = 25; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 9},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahe" = (/obj/structure/table,/obj/item/weapon/restraints/handcuffs,/turf/open/floor/plasteel/red/side{dir = 10},/area/security/prison) +"ahf" = (/obj/structure/extinguisher_cabinet{pixel_x = 1; pixel_y = -27},/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahg" = (/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahh" = (/obj/structure/table,/obj/item/device/electropack,/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahi" = (/obj/structure/table,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/weapon/storage/box/hug,/obj/item/weapon/razor{pixel_x = -6},/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahj" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/clothing/suit/straight_jacket,/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahk" = (/obj/structure/closet/secure_closet/brig{anchored = 1},/turf/open/floor/plasteel/red/side,/area/security/prison) +"ahl" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/prison) +"ahm" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{name = "Prison Wing"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 5},/area/security/prison) +"ahn" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/ai_monitored/security/armory) +"aho" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/ai_monitored/security/armory) +"ahp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/window/southleft{name = "Armory"; req_access_txt = "3"},/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"ahq" = (/obj/machinery/door/firedoor,/obj/machinery/door/window/southleft{base_state = "right"; icon_state = "right"; name = "Armory"; req_access_txt = "3"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/security/armory) +"ahr" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/ai_monitored/security/armory) +"ahs" = (/obj/structure/reagent_dispensers/peppertank,/turf/closed/wall/r_wall,/area/ai_monitored/security/armory) +"aht" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/securearea{pixel_x = -32},/turf/open/floor/plating,/area/security/main) +"ahu" = (/obj/machinery/door/airlock/glass_security{name = "Equipment Room"; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/main) +"ahv" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/main) +"ahw" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/main) +"ahx" = (/obj/structure/table,/obj/item/weapon/restraints/handcuffs,/obj/item/device/assembly/timer,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"ahy" = (/turf/open/floor/plasteel,/area/security/main) +"ahz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Head of Security"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"ahA" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/security/main) +"ahB" = (/obj/structure/table,/obj/item/device/radio/off,/obj/item/weapon/screwdriver{pixel_y = 10},/turf/open/floor/plasteel,/area/security/main) +"ahC" = (/obj/effect/landmark/start{name = "Security Officer"},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/security/main) +"ahD" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) +"ahE" = (/obj/structure/sign/pods{pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/security/main) +"ahF" = (/obj/structure/closet/emcloset,/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/security/main) +"ahG" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 1},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahH" = (/obj/structure/table,/obj/item/device/electropack,/obj/item/weapon/screwdriver,/obj/item/weapon/wrench,/obj/item/clothing/head/helmet,/obj/item/device/assembly/signaler,/obj/machinery/light/small,/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahI" = (/obj/structure/closet/secure_closet/injection,/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "Prisoner Transfer Centre"; pixel_x = 0; pixel_y = -27},/turf/open/floor/plasteel/black,/area/security/transfer) +"ahJ" = (/obj/machinery/door/airlock/security{name = "Interrogation"; req_access = null; req_access_txt = "63"},/turf/open/floor/plasteel/black,/area/security/prison) +"ahK" = (/turf/closed/wall,/area/security/brig) +"ahL" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "Prison Gate"; name = "prison blast door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/security/brig) +"ahM" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "Prison Gate"; name = "prison blast door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/security/brig) +"ahN" = (/turf/closed/wall/r_wall,/area/security/warden) +"ahO" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_x = -30; pixel_y = 0},/obj/machinery/camera{c_tag = "Brig Control Room"; dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/rack,/obj/item/clothing/mask/gas/sechailer{pixel_x = -3; pixel_y = 3},/obj/item/clothing/mask/gas/sechailer,/obj/item/clothing/mask/gas/sechailer{pixel_x = 3; pixel_y = -3},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahP" = (/obj/machinery/computer/prisoner,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahQ" = (/obj/machinery/computer/security,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahR" = (/obj/machinery/computer/secure_data,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahS" = (/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahU" = (/obj/structure/table,/obj/item/clothing/glasses/sunglasses{pixel_x = 3; pixel_y = 3},/obj/item/clothing/glasses/sunglasses{pixel_x = 3; pixel_y = 3},/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahV" = (/obj/structure/table,/obj/machinery/recharger,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ahW" = (/obj/structure/table,/obj/machinery/syndicatebomb/training,/obj/item/weapon/gun/energy/laser/practice,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/main) +"ahX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"ahY" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"ahZ" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/main) +"aia" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/main) +"aib" = (/obj/structure/table,/obj/item/device/assembly/flash/handheld,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"aic" = (/obj/machinery/holopad,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"aid" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/security/main) +"aie" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) +"aif" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/security/prison) +"aig" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) +"aih" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) +"aii" = (/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/security/prison) +"aij" = (/turf/open/floor/plasteel/black,/area/security/prison) +"aik" = (/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/table/glass,/turf/open/floor/plasteel/whitered/side{dir = 9},/area/security/brig) +"ail" = (/obj/item/weapon/storage/firstaid/regular{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/regular,/obj/structure/table/glass,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/security/brig) +"aim" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 0; pixel_y = 24},/obj/structure/table/glass,/obj/machinery/computer/med_data/laptop,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/security/brig) +"ain" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/iv_drip{density = 0},/obj/item/weapon/reagent_containers/blood/empty,/turf/open/floor/plasteel/whitered/side{dir = 5},/area/security/brig) +"aio" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"aip" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"aiq" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"air" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ais" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ait" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiu" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiv" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiw" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aix" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"aiy" = (/obj/structure/table,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/main) +"aiz" = (/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel,/area/security/main) +"aiA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"aiB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"aiC" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"aiD" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/security/main) +"aiE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"aiF" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j2s"; sortType = 8},/turf/open/floor/plasteel,/area/security/main) +"aiG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plasteel,/area/security/main) +"aiH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Security Officer"},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/security/main) +"aiI" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j2s"; sortType = 7},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) +"aiJ" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Security Delivery"; req_access_txt = "1"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/security/main) +"aiK" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "Security"},/obj/structure/plasticflaps{opacity = 1},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/security/main) +"aiL" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aiM" = (/turf/closed/wall,/area/maintenance/fsmaint) +"aiN" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) +"aiO" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/open/floor/plasteel/black,/area/security/prison) +"aiP" = (/obj/structure/chair{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/security/prison) +"aiQ" = (/obj/item/weapon/storage/box/bodybags,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/item/weapon/reagent_containers/syringe{name = "steel point"},/obj/item/weapon/reagent_containers/glass/bottle/charcoal,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/table/glass,/turf/open/floor/plasteel/whitered/side{dir = 10},/area/security/brig) +"aiR" = (/turf/open/floor/plasteel/whitered/corner{tag = "icon-whiteredcorner (WEST)"; dir = 8},/area/security/brig) +"aiS" = (/turf/open/floor/plasteel/white,/area/security/brig) +"aiT" = (/obj/machinery/door/window/westleft{base_state = "left"; dir = 4; icon_state = "left"; name = "Brig Infirmary"; req_access_txt = "0"},/turf/open/floor/plasteel/whitered/side{dir = 4},/area/security/brig) +"aiU" = (/obj/machinery/power/apc{dir = 8; name = "Brig Control APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aiZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"aja" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajc" = (/obj/machinery/door/airlock/glass_security{name = "Brig Control"; req_access_txt = "3"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajd" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/main) +"aje" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/main) +"ajg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"aji" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-y"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/chair,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/effect/landmark/start{name = "Security Officer"},/turf/open/floor/plasteel,/area/security/main) +"ajk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajl" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/main) +"ajn" = (/obj/machinery/power/apc{dir = 4; name = "Security Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/main) +"ajo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/security/main) +"ajp" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/fsmaint) +"ajq" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/plasteel/black,/area/security/prison) +"ajr" = (/obj/machinery/camera{c_tag = "Brig Interrogation"; dir = 8},/turf/open/floor/plasteel/black,/area/security/prison) +"ajs" = (/obj/structure/bodycontainer/morgue,/obj/machinery/camera{c_tag = "Brig Infirmary"; dir = 4},/turf/open/floor/plasteel/black,/area/security/brig) +"ajt" = (/turf/open/floor/plasteel/whitered/side{dir = 8},/area/security/brig) +"aju" = (/obj/machinery/door/window/westleft{base_state = "right"; dir = 4; icon_state = "right"; name = "Brig Infirmary"; req_access_txt = "0"},/turf/open/floor/plasteel/whitered/side{dir = 4},/area/security/brig) +"ajv" = (/obj/structure/closet/secure_closet/warden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajw" = (/obj/structure/table,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajx" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start{name = "Warden"},/obj/machinery/button/door{id = "Prison Gate"; name = "Prison Wing Lockdown"; pixel_x = -27; pixel_y = 8; req_access_txt = "2"},/obj/machinery/button/door{id = "Secure Gate"; name = "Cell Shutters"; pixel_x = -27; pixel_y = -2; req_access_txt = "0"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajy" = (/obj/structure/table,/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajz" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajC" = (/obj/machinery/light_switch{pixel_y = -23},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"ajD" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"ajE" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/main) +"ajF" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajG" = (/obj/structure/noticeboard{dir = 1; pixel_y = -27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/main) +"ajH" = (/obj/machinery/light_switch{pixel_y = -23},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/side,/area/security/main) +"ajI" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajK" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/side,/area/security/main) +"ajL" = (/obj/machinery/camera{c_tag = "Security Office"; dir = 1; network = list("SS13")},/obj/machinery/computer/secure_data,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajM" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/computer/security,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajN" = (/obj/structure/filingcabinet,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajO" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/red/side,/area/security/main) +"ajQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/main) +"ajR" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/security/main) +"ajS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"ajT" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fsmaint) +"ajU" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint) +"ajV" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/security/prison) +"ajW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/security/prison) +"ajX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/security/prison) +"ajY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/security/prison) +"ajZ" = (/obj/structure/bodycontainer/morgue,/turf/open/floor/plasteel/black,/area/security/brig) +"aka" = (/turf/open/floor/plasteel/whitered/side{dir = 10},/area/security/brig) +"akb" = (/obj/structure/bed,/obj/item/clothing/suit/straight_jacket,/turf/open/floor/plasteel/whitered/side,/area/security/brig) +"akc" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/bed,/obj/item/clothing/suit/straight_jacket,/turf/open/floor/plasteel/whitered/side{dir = 6},/area/security/brig) +"akd" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"ake" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"akf" = (/obj/structure/table/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/window/brigdoor{dir = 1; name = "Armory Desk"; req_access_txt = "3"},/obj/machinery/door/window/southleft{name = "Reception Desk"; req_access_txt = "63"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"akg" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"akh" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/warden) +"aki" = (/obj/machinery/door/airlock/glass_security{name = "Brig Control"; req_access_txt = "3"},/turf/open/floor/plasteel/showroomfloor,/area/security/warden) +"akj" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable,/turf/open/floor/plating,/area/security/warden) +"akk" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Security Office"; req_access = null; req_access_txt = "1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/main) +"akl" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"akm" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"akn" = (/obj/item/stack/rods,/turf/open/space,/area/space) +"ako" = (/turf/closed/wall/r_wall,/area/security/processing) +"akp" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) +"akq" = (/obj/machinery/door/airlock/security{name = "Interrogation"; req_access = null; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/security/prison) +"akr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/brig) +"aks" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 4},/area/security/brig) +"akt" = (/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"aku" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akv" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akw" = (/obj/structure/sign/goldenplaque{pixel_y = 32},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akx" = (/obj/machinery/camera{c_tag = "Brig East"},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"aky" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akA" = (/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"akB" = (/turf/closed/wall/r_wall,/area/security/brig) +"akC" = (/obj/machinery/light_switch{pixel_y = 28},/obj/structure/closet/secure_closet/courtroom,/obj/effect/decal/cleanable/cobweb,/obj/structure/sign/securearea{pixel_x = -32},/obj/item/weapon/gavelhammer,/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"akD" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/machinery/camera{c_tag = "Courtroom North"},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"akE" = (/obj/structure/chair{name = "Judge"},/turf/open/floor/plasteel/blue/side{dir = 9},/area/crew_quarters/courtroom) +"akF" = (/obj/structure/chair{name = "Judge"},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/blue/side{dir = 1},/area/crew_quarters/courtroom) +"akG" = (/obj/structure/chair{name = "Judge"},/turf/open/floor/plasteel/blue/side{dir = 5},/area/crew_quarters/courtroom) +"akH" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"akI" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"akJ" = (/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"akK" = (/turf/closed/wall,/area/crew_quarters/courtroom) +"akL" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxport) +"akM" = (/obj/machinery/gulag_teleporter,/turf/open/floor/plasteel,/area/security/processing) +"akN" = (/obj/machinery/computer/gulag_teleporter_computer,/turf/open/floor/plasteel,/area/security/processing) +"akO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/machinery/computer/security{name = "Labor Camp Monitoring"; network = list("Labor")},/turf/open/floor/plasteel,/area/security/processing) +"akP" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/table,/obj/item/weapon/storage/box/prisoner,/obj/machinery/camera{c_tag = "Labor Shuttle Dock North"},/turf/open/floor/plasteel,/area/security/processing) +"akQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/brig) +"akR" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"akS" = (/obj/machinery/power/apc{dir = 1; name = "Labor Shuttle Dock APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akT" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akU" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akV" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/brig) +"akX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 1},/area/security/brig) +"akY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"akZ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/security/brig) +"ala" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/brig) +"alb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/brig) +"alc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"ald" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/brig) +"ale" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/brig) +"alh" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Brig"; req_access = null; req_access_txt = "63; 42"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"ali" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"alj" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 9},/area/crew_quarters/courtroom) +"alk" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{broadcasting = 0; dir = 8; listening = 1; name = "Station Intercom (Court)"; pixel_x = 0},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/courtroom) +"all" = (/obj/structure/table/wood,/obj/item/weapon/gavelblock,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/courtroom) +"alm" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/courtroom) +"aln" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/courtroom) +"alo" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/vault{dir = 8},/area/crew_quarters/courtroom) +"alp" = (/obj/machinery/door/window/southleft{name = "Court Cell"; req_access_txt = "2"},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"alq" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/auxsolarport) +"alr" = (/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"als" = (/turf/closed/wall/mineral/titanium,/area/shuttle/labor) +"alt" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/labor) +"alu" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/security/processing) +"alv" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel,/area/security/processing) +"alw" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) +"alx" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/security/processing) +"aly" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Labor Shuttle"; req_access = null; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/brig) +"alA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "Brig West"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 2},/area/security/brig) +"alC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alD" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/security/brig) +"alE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/brig) +"alF" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/corner{dir = 2},/area/security/brig) +"alG" = (/obj/machinery/light,/obj/machinery/door_timer{id = "Cell 1"; name = "Cell 1"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/security/brig) +"alI" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 2},/area/security/brig) +"alJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door_timer{id = "Cell 2"; name = "Cell 2"; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alK" = (/obj/machinery/camera{c_tag = "Brig Central"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door_timer{id = "Cell 3"; name = "Cell 3"; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alM" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"alN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"alO" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door_timer{id = "Cell 4"; name = "Cell 4"; pixel_y = -32},/turf/open/floor/plasteel/red/side,/area/security/brig) +"alP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/security/brig) +"alQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/brig) +"alR" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/brig) +"alS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/brig) +"alT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"alU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/courtroom) +"alV" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/courtroom) +"alW" = (/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"alX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"alY" = (/obj/machinery/computer/shuttle/labor,/obj/structure/reagent_dispensers/peppertank{pixel_x = -31; pixel_y = 0},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) +"alZ" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) +"ama" = (/obj/structure/table,/obj/item/weapon/folder/red,/obj/item/weapon/restraints/handcuffs,/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) +"amb" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) +"amc" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/security/processing) +"amd" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/security/processing) +"ame" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) +"amf" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/processing) +"amg" = (/obj/machinery/door/airlock/glass_security{id_tag = null; name = "Evidence Storage"; req_access_txt = "63"},/turf/open/floor/plasteel/red/side,/area/security/brig) +"amh" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"ami" = (/obj/machinery/door/window/brigdoor{id = "Cell 1"; name = "Cell 1"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side,/area/security/brig) +"amj" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/closed/wall/r_wall,/area/security/brig) +"aml" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amm" = (/obj/machinery/door/window/brigdoor{id = "Cell 2"; name = "Cell 2"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side,/area/security/brig) +"amn" = (/obj/machinery/door/window/brigdoor{id = "Cell 3"; name = "Cell 3"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side,/area/security/brig) +"amo" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amp" = (/obj/machinery/door/airlock/glass_security{name = "Brig Desk"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/black,/area/security/brig) +"amq" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amr" = (/obj/machinery/door/airlock/glass_security{cyclelinkeddir = 2; id_tag = "innerbrig"; name = "Brig"; req_access_txt = "63"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"ams" = (/obj/machinery/door/airlock/glass_security{cyclelinkeddir = 2; id_tag = "innerbrig"; name = "Brig"; req_access_txt = "63"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"amt" = (/obj/structure/grille,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amu" = (/obj/machinery/door/window/brigdoor{id = "Cell 4"; name = "Cell 4"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/brig) +"amv" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"amw" = (/obj/structure/chair{dir = 4; name = "Prosecution"},/turf/open/floor/plasteel/red/side{dir = 9},/area/crew_quarters/courtroom) +"amx" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/courtroom) +"amy" = (/obj/machinery/holopad,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/crew_quarters/courtroom) +"amz" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/courtroom) +"amA" = (/obj/structure/chair{dir = 8; name = "Defense"},/turf/open/floor/plasteel/green/side{dir = 5},/area/crew_quarters/courtroom) +"amB" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"amC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"amD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"amE" = (/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) +"amF" = (/obj/machinery/button/flasher{id = "gulagshuttleflasher"; name = "Flash Control"; pixel_x = 0; pixel_y = -26; req_access_txt = "1"},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) +"amG" = (/obj/machinery/mineral/labor_claim_console{machinedir = 2; pixel_x = 30; pixel_y = 30},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) +"amH" = (/obj/machinery/door/airlock/titanium{name = "Labor Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/mineral/plastitanium,/area/shuttle/labor) +"amI" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Labor Camp Shuttle Airlock"; req_access_txt = "2"; shuttledocked = 1},/turf/open/floor/plating,/area/security/processing) +"amJ" = (/turf/open/floor/plating,/area/security/processing) +"amK" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Labor Camp Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/security/processing) +"amL" = (/turf/open/floor/plasteel,/area/security/processing) +"amM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) +"amN" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/processing) +"amO" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"amP" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"amQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = -25; pixel_y = -2; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"amR" = (/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"amS" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"amT" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = -25; pixel_y = -2; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"amU" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"amV" = (/obj/machinery/button/door{id = "briggate"; name = "Desk Shutters"; pixel_x = -26; pixel_y = 6; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/button/flasher{id = "brigentry"; pixel_x = -28; pixel_y = -8},/turf/open/floor/plasteel/black,/area/security/brig) +"amW" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel/black,/area/security/brig) +"amX" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/eastleft{name = "Brig Desk"; req_access_txt = "1"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel/black,/area/security/brig) +"amY" = (/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"amZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"ana" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/obj/machinery/flasher{id = "Cell 4"; pixel_x = 28},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anb" = (/obj/structure/chair{dir = 4; name = "Prosecution"},/turf/open/floor/plasteel/red/side{dir = 10},/area/crew_quarters/courtroom) +"anc" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 10},/area/crew_quarters/courtroom) +"and" = (/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/courtroom) +"ane" = (/obj/item/device/radio/beacon,/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/courtroom) +"anf" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/courtroom) +"ang" = (/obj/structure/chair{dir = 8; name = "Defense"},/turf/open/floor/plasteel/green/side{dir = 6},/area/crew_quarters/courtroom) +"anh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/auxstarboard) +"ani" = (/turf/closed/wall,/area/maintenance/fsmaint2) +"anj" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ank" = (/turf/closed/wall/r_wall,/area/maintenance/auxsolarport) +"anl" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Port Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"anm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"ann" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"ano" = (/turf/closed/wall,/area/maintenance/fpmaint2) +"anp" = (/obj/effect/decal/cleanable/vomit,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"anq" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"anr" = (/obj/item/weapon/cigbutt/cigarbutt,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ans" = (/obj/machinery/door/airlock/titanium{name = "Labor Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plasteel/black,/area/shuttle/labor) +"ant" = (/obj/machinery/mineral/stacking_machine/laborstacker{input_dir = 2; output_dir = 1},/turf/open/floor/plasteel/black,/area/shuttle/labor) +"anu" = (/obj/machinery/computer/shuttle/labor,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/security/processing) +"anv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/processing) +"anw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/processing) +"anx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/processing) +"any" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/brig) +"anz" = (/turf/open/floor/plasteel,/area/security/brig) +"anA" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/brig) +"anB" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/flasher{id = "Cell 1"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anC" = (/obj/structure/closet/secure_closet/brig{id = "Cell 1"; name = "Cell 1 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anD" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/flasher{id = "Cell 2"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anE" = (/obj/structure/closet/secure_closet/brig{id = "Cell 2"; name = "Cell 2 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anF" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/flasher{id = "Cell 3"; pixel_x = -28},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anG" = (/obj/structure/closet/secure_closet/brig{id = "Cell 3"; name = "Cell 3 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anH" = (/obj/machinery/light/small{dir = 8},/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "outerbrig"; name = "Brig Exterior Doors Control"; normaldoorcontrol = 1; pixel_x = -26; pixel_y = -5; req_access_txt = "63"},/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "innerbrig"; name = "Brig Interior Doors Control"; normaldoorcontrol = 1; pixel_x = -26; pixel_y = 5; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/security/brig) +"anI" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel/black,/area/security/brig) +"anJ" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/eastright{name = "Brig Desk"; req_access_txt = "2"},/obj/item/weapon/restraints/handcuffs,/obj/item/device/radio/off,/turf/open/floor/plasteel/black,/area/security/brig) +"anK" = (/obj/machinery/flasher{id = "brigentry"; pixel_x = 28},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"anL" = (/obj/structure/closet/secure_closet/brig{id = "Cell 4"; name = "Cell 4 Locker"},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anM" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anN" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/item/device/radio/intercom{desc = "Talk through this. It looks like it has been modified to not broadcast."; dir = 2; name = "Prison Intercom (General)"; pixel_x = 25; pixel_y = -2; prison_radio = 1},/turf/open/floor/plasteel/floorgrime,/area/security/brig) +"anO" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"anP" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"anQ" = (/obj/machinery/door/airlock/glass{name = "Courtroom"; req_access_txt = "42"},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"anR" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"anS" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"anT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"anU" = (/obj/structure/chair{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"anV" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"anW" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"anX" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"anY" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 2},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"anZ" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoa" = (/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aob" = (/obj/structure/bed,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bedsheet,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoc" = (/obj/machinery/computer/slot_machine{balance = 15; money = 500},/obj/item/weapon/coin/iron,/obj/item/weapon/coin/diamond,/obj/item/weapon/coin/diamond,/obj/item/weapon/coin/diamond,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aod" = (/obj/structure/chair{dir = 1},/obj/item/toy/sword,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoe" = (/obj/structure/chair{dir = 1},/obj/structure/noticeboard{dir = 8; pixel_x = 27; pixel_y = 0},/obj/item/trash/plate,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aof" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) +"aog" = (/obj/machinery/mineral/labor_claim_console{machinedir = 1; pixel_x = 30; pixel_y = 0},/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) +"aoh" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/closed/wall/r_wall,/area/security/processing) +"aoi" = (/obj/machinery/door/airlock/glass_security{name = "Prisoner Processing"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/processing) +"aoj" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) +"aok" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/brig) +"aol" = (/obj/machinery/light,/turf/open/floor/plasteel/red/side,/area/security/brig) +"aom" = (/obj/structure/closet{name = "Evidence Closet"},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/brig) +"aon" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/grille,/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "Secure Gate"; name = "brig shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"aoo" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "Secure Gate"; name = "brig shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"aop" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/southleft{name = "Brig Desk"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/black,/area/security/brig) +"aoq" = (/obj/structure/table/reinforced,/obj/machinery/door/poddoor/shutters/preopen{id = "briggate"; name = "security shutters"},/obj/machinery/door/window/southleft{base_state = "right"; icon_state = "right"; name = "Brig Desk"; req_access_txt = "1"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/black,/area/security/brig) +"aor" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "briggate"; name = "security blast door"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/brig) +"aos" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{cyclelinkeddir = 1; id_tag = "outerbrig"; name = "Brig"; req_access_txt = "63"},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/brig) +"aot" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_security{cyclelinkeddir = 1; id_tag = "outerbrig"; name = "Brig"; req_access_txt = "63"},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/brig) +"aou" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aov" = (/obj/structure/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aow" = (/obj/structure/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aox" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 8; name = "Courtroom APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"aoy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"aoz" = (/obj/machinery/light/small{dir = 4},/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint) +"aoA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"aoB" = (/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aoC" = (/turf/closed/wall,/area/mining_construction) +"aoD" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Fore Port Solar APC"; pixel_x = -25; pixel_y = 3},/obj/machinery/camera{c_tag = "Fore Port Solar Control"; dir = 1},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"aoE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"aoF" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/auxsolarport) +"aoG" = (/obj/machinery/atmospherics/pipe/manifold/supplymain/hidden{icon_state = "manifold"; dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoH" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoI" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoJ" = (/obj/item/trash/sosjerky,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoK" = (/obj/item/weapon/electronics/airalarm,/obj/item/weapon/circuitboard/machine/seed_extractor,/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoL" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoM" = (/obj/item/weapon/cigbutt,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aoN" = (/obj/structure/chair{dir = 8},/obj/machinery/flasher{id = "gulagshuttleflasher"; pixel_x = 25},/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) +"aoO" = (/obj/machinery/gulag_item_reclaimer{pixel_y = 24},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/security/processing) +"aoP" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/processing) +"aoQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 5},/area/security/processing) +"aoR" = (/obj/machinery/button/door{desc = "A remote control switch for the exit."; id = "laborexit"; name = "exit button"; normaldoorcontrol = 1; pixel_x = 26; pixel_y = -6; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/processing) +"aoS" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"aoT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"aoU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"aoV" = (/turf/open/floor/plasteel,/area/hallway/primary/fore) +"aoW" = (/obj/machinery/light{dir = 1},/obj/structure/sign/securearea{pixel_y = 32},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"aoX" = (/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"aoY" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/crew_quarters/courtroom) +"aoZ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"apa" = (/turf/open/floor/plating,/area/maintenance/fsmaint) +"apb" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fsmaint) +"apc" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/maintenance/fsmaint) +"apd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"ape" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"apf" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"apg" = (/obj/structure/closet/secure_closet/miner{locked = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"aph" = (/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Port Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/auxsolarport) +"api" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/auxsolarport) +"apj" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apk" = (/obj/effect/decal/cleanable/egg_smudge,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apl" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apm" = (/obj/structure/closet/crate,/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) +"apn" = (/obj/machinery/door/airlock/titanium{id_tag = "prisonshuttle"; name = "Labor Shuttle Airlock"},/obj/docking_port/mobile{dir = 8; dwidth = 2; height = 5; id = "laborcamp"; name = "labor camp shuttle"; port_angle = 90; width = 9},/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 5; id = "laborcamp_home"; name = "fore bay 1"; width = 9},/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) +"apo" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Labor Camp Shuttle Airlock"; shuttledocked = 1},/turf/open/floor/plating,/area/security/processing) +"app" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Labor Camp Shuttle Airlock"},/turf/open/floor/plating,/area/security/processing) +"apq" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{id_tag = "laborexit"; name = "Labor Shuttle"; req_access = null; req_access_txt = "63"},/turf/open/floor/plasteel,/area/security/processing) +"apr" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"aps" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"apt" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/hallway/primary/fore) +"apu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"apv" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Courtroom"},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apw" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apx" = (/obj/machinery/light/small,/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apy" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apz" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/machinery/camera{c_tag = "Courtroom South"; dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"apB" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint) +"apC" = (/obj/structure/disposalpipe/segment,/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"apD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/fsmaint) +"apE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fsmaint) +"apF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/closed/wall,/area/maintenance/fsmaint) +"apG" = (/turf/closed/wall/r_wall,/area/maintenance/auxsolarstarboard) +"apH" = (/obj/machinery/power/solar_control{id = "auxsolareast"; name = "Fore Starboard Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"apI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"apJ" = (/obj/structure/rack,/obj/item/clothing/mask/gas,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/item/device/multitool,/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"apK" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"apL" = (/turf/open/floor/plating,/area/shuttle/auxillary_base) +"apM" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"apN" = (/obj/machinery/camera{c_tag = "Fore Port Solar Access"},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apP" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apQ" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apR" = (/obj/structure/chair,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apS" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/monkey_recycler,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"apT" = (/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plating/airless,/area/shuttle/labor) +"apU" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/processing) +"apV" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/security/processing) +"apW" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/processing) +"apX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/camera{c_tag = "Labor Shuttle Dock South"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/processing) +"apY" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/processing) +"apZ" = (/turf/open/floor/plasteel/red/corner{dir = 8},/area/hallway/primary/fore) +"aqa" = (/obj/machinery/camera{c_tag = "Fore Primary Hallway West"; dir = 1},/turf/open/floor/plasteel/red/corner{dir = 8},/area/hallway/primary/fore) +"aqb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/corner{dir = 8},/area/hallway/primary/fore) +"aqc" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=EVA"; location = "Security"},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"aqd" = (/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqe" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqf" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqg" = (/obj/machinery/camera{c_tag = "Fore Primary Hallway East"; dir = 1},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqh" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqi" = (/obj/machinery/vending/snack/random,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqj" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/fore) +"aqk" = (/obj/structure/table,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aql" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law{pixel_x = -3; pixel_y = 5},/turf/open/floor/plasteel/black,/area/crew_quarters/courtroom) +"aqm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqn" = (/obj/machinery/light/small{dir = 8},/obj/structure/chair/stool{pixel_y = 8},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqo" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Air Out"; on = 1},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqp" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"aqq" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"aqr" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/terminal,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"aqs" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aqt" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aqu" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/mining_construction) +"aqv" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqw" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqx" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqy" = (/obj/structure/bed,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqz" = (/turf/open/space,/area/space/nearstation) +"aqA" = (/obj/structure/lattice,/turf/open/space,/area/space/nearstation) +"aqB" = (/turf/open/floor/plasteel/airless,/area/space/nearstation) +"aqC" = (/obj/structure/table,/obj/item/weapon/stamp,/obj/item/weapon/poster/legit,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqD" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aqE" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/labor) +"aqF" = (/obj/structure/plasticflaps,/turf/open/floor/plating,/area/security/processing) +"aqG" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/security/processing) +"aqH" = (/turf/closed/wall/r_wall,/area/security/vacantoffice2) +"aqI" = (/turf/closed/wall,/area/security/vacantoffice2) +"aqJ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Vacant Office B"; req_access_txt = "32"},/turf/open/floor/plating,/area/security/vacantoffice2) +"aqK" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aqL" = (/turf/closed/wall,/area/lawoffice) +"aqM" = (/obj/machinery/door/airlock{name = "Law Office"; req_access_txt = "38"},/turf/open/floor/plasteel,/area/lawoffice) +"aqN" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"aqO" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/fore) +"aqP" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"aqQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fsmaint) +"aqR" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/closed/wall,/area/maintenance/fsmaint) +"aqS" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/closed/wall,/area/maintenance/fsmaint) +"aqT" = (/obj/machinery/space_heater,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqU" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqW" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{dir = 1; name = "Dormitory Maintenance APC"; pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqY" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"aqZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint) +"ara" = (/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access_txt = "12;24"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arb" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "Air In"; on = 1},/obj/effect/landmark{name = "blobstart"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arc" = (/obj/item/weapon/wrench,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"ard" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Fore Starboard Solar APC"; pixel_x = -25; pixel_y = 3},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"are" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"arf" = (/obj/machinery/camera{c_tag = "Fore Starboard Solars"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"arg" = (/turf/closed/wall/r_wall,/area/maintenance/fsmaint2) +"arh" = (/obj/structure/closet/wardrobe/mixed,/obj/item/clothing/shoes/jackboots,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ari" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"arj" = (/obj/machinery/light,/turf/open/floor/plating,/area/shuttle/auxillary_base) +"ark" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/mining_construction) +"arl" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/mining_construction) +"arm" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/mining_construction) +"arn" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel/yellow/side{dir = 5},/area/mining_construction) +"aro" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"arp" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) +"arq" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) +"arr" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ars" = (/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 35},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"art" = (/obj/effect/landmark{name = "carpspawn"},/obj/structure/lattice,/turf/open/space,/area/space/nearstation) +"aru" = (/turf/closed/wall,/area/security/processing) +"arv" = (/obj/item/weapon/paper{info = "01001001 00100000 01101000 01101111 01110000 01100101 00100000 01111001 01101111 01110101 00100000 01110011 01110100 01100001 01111001 00100000 01110011 01100001 01100110 01100101 00101110 00100000 01001100 01101111 01110110 01100101 00101100 00100000 01101101 01101111 01101101 00101110"; name = "Note from Beepsky's Mom"},/turf/open/floor/plating,/area/security/processing) +"arw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/security/processing) +"arx" = (/obj/structure/chair,/turf/open/floor/plating,/area/security/vacantoffice2) +"ary" = (/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/structure/chair,/turf/open/floor/plating,/area/security/vacantoffice2) +"arz" = (/turf/open/floor/plasteel,/area/security/vacantoffice2) +"arA" = (/turf/open/floor/plating,/area/security/vacantoffice2) +"arB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"arC" = (/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/wood,/area/lawoffice) +"arD" = (/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/wood,/area/lawoffice) +"arE" = (/turf/open/floor/wood,/area/lawoffice) +"arF" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/briefcase,/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/wood,/area/lawoffice) +"arG" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"arH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/fsmaint) +"arI" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arK" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"arL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arM" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arN" = (/obj/machinery/power/apc{dir = 2; name = "Dormitory APC"; pixel_y = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/sleep) +"arO" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arQ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arS" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/light/small{dir = 4},/obj/machinery/power/apc{dir = 2; name = "Fitness Room APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arT" = (/obj/structure/rack{dir = 1},/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/internals/oxygen,/obj/item/clothing/mask/gas,/obj/item/weapon/extinguisher,/obj/item/clothing/head/hardhat/red,/obj/item/clothing/glasses/meson,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arU" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/obj/machinery/portable_atmospherics/canister/air,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint) +"arV" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arW" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arX" = (/obj/structure/grille,/obj/effect/landmark{name = "Syndicate Breach Area"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arY" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"arZ" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/engineering{icon_state = "door_closed"; locked = 0; name = "Fore Starboard Solar Access"; req_access_txt = "10"},/turf/open/floor/plating,/area/maintenance/auxsolarstarboard) +"asb" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/auxsolarstarboard) +"asc" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asd" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ase" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asf" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asg" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ash" = (/obj/effect/decal/cleanable/cobweb,/obj/item/weapon/coin/gold,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asi" = (/obj/machinery/computer/slot_machine{balance = 15; money = 500},/obj/item/weapon/coin/iron,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asj" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ask" = (/obj/machinery/camera{c_tag = "Auxillary Mining Base"; dir = 8; network = list("SS13","AuxBase")},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"asl" = (/obj/docking_port/mobile/auxillary_base{dheight = 4; dir = 4; dwidth = 4; height = 9; width = 9},/obj/machinery/bluespace_beacon,/obj/machinery/computer/auxillary_base{pixel_y = 0},/turf/closed/wall,/area/shuttle/auxillary_base) +"asm" = (/obj/structure/mining_shuttle_beacon{dir = 4},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"asn" = (/obj/effect/turf_decal/stripes/line{dir = 4},/obj/docking_port/stationary/public_mining_dock{dir = 8},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"aso" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Construction Zone"; req_access = null; req_access_txt = "0"; req_one_access_txt = "0"},/turf/open/floor/plating,/area/mining_construction) +"asp" = (/turf/open/floor/plasteel/yellow/side{dir = 8},/area/mining_construction) +"asq" = (/turf/open/floor/plasteel,/area/mining_construction) +"asr" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/camera{c_tag = "Auxillary Base Construction"; dir = 8},/obj/machinery/computer/camera_advanced/base_construction,/turf/open/floor/plasteel/yellow/side{dir = 4},/area/mining_construction) +"ass" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/maintenance/fpmaint2) +"ast" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 5},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asu" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 10},/obj/machinery/meter,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asv" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asw" = (/obj/machinery/power/apc{dir = 1; name = "Arrivals North Maintenance APC"; pixel_x = -1; pixel_y = 26},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asx" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 1},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"asy" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"asz" = (/turf/open/floor/plating,/area/maintenance/fpmaint) +"asA" = (/obj/item/weapon/bedsheet/red,/mob/living/simple_animal/bot/secbot/beepsky{name = "Officer Beepsky"},/turf/open/floor/plating,/area/security/processing) +"asB" = (/obj/machinery/light/small{dir = 4},/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/potato{name = "\improper Beepsky's emergency battery"},/turf/open/floor/plating,/area/security/processing) +"asC" = (/obj/machinery/power/apc{dir = 8; name = "Labor Shuttle Dock APC"; pixel_x = -24},/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/security/processing) +"asD" = (/obj/structure/table/wood,/obj/item/weapon/pen,/turf/open/floor/plating,/area/security/vacantoffice2) +"asE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/obj/structure/table/wood,/obj/item/device/flashlight/lamp,/turf/open/floor/plating,/area/security/vacantoffice2) +"asF" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plating,/area/security/vacantoffice2) +"asG" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/requests_console{department = "Law office"; pixel_x = -32; pixel_y = 0},/obj/structure/closet/lawcloset,/turf/open/floor/wood,/area/lawoffice) +"asH" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/pen/red,/turf/open/floor/wood,/area/lawoffice) +"asI" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/open/floor/wood,/area/lawoffice) +"asJ" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "lawyer_blast"; name = "privacy door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/lawoffice) +"asK" = (/turf/closed/wall,/area/crew_quarters/sleep) +"asL" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"asM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/fsmaint) +"asN" = (/turf/closed/wall,/area/crew_quarters/fitness) +"asO" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"asP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/crew_quarters/fitness) +"asQ" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"asR" = (/turf/open/floor/engine{name = "Holodeck Projector Floor"},/area/holodeck/rec_center) +"asS" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asT" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance{lootcount = 8; name = "8maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asU" = (/obj/machinery/power/apc{dir = 1; name = "Bar Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asW" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asX" = (/obj/machinery/camera{c_tag = "Fore Starboard Solar Access"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asY" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"asZ" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ata" = (/obj/structure/table,/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atb" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atc" = (/obj/item/weapon/coin/gold,/obj/item/weapon/coin/iron,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atd" = (/obj/structure/closet,/obj/item/weapon/coin/iron,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ate" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atf" = (/obj/machinery/light{dir = 1},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"atg" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/yellow/side{dir = 8},/area/mining_construction) +"ath" = (/obj/structure/rack{dir = 4},/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/stack/cable_coil,/obj/item/stack/cable_coil,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/item/device/assault_pod/mining,/obj/machinery/computer/security/telescreen{desc = "Used for the Auxillary Mining Base."; dir = 8; name = "Auxillary Base Monitor"; network = list("AuxBase"); pixel_x = 28},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/mining_construction) +"ati" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 5},/turf/closed/wall,/area/maintenance/fpmaint2) +"atj" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) +"atk" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atm" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ato" = (/obj/machinery/atmospherics/pipe/simple/supplymain/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/fpmaint2) +"atp" = (/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atq" = (/obj/structure/closet/crate{icon_state = "crateopen"; opened = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"atr" = (/obj/machinery/monkey_recycler,/obj/item/weapon/reagent_containers/food/snacks/monkeycube,/obj/item/weapon/reagent_containers/food/snacks/monkeycube,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ats" = (/turf/closed/wall,/area/maintenance/fpmaint) +"att" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/fpmaint) +"atu" = (/obj/structure/rack,/turf/open/floor/plasteel,/area/security/vacantoffice2) +"atv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/chair{dir = 1},/turf/open/floor/plating,/area/security/vacantoffice2) +"atw" = (/obj/structure/table/wood,/turf/open/floor/plating,/area/security/vacantoffice2) +"atx" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plating,/area/security/vacantoffice2) +"aty" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/lawoffice) +"atz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/filingcabinet/employment,/turf/open/floor/wood,/area/lawoffice) +"atA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/lawoffice) +"atB" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/law,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/lawoffice) +"atC" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Lawyer"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/wood,/area/lawoffice) +"atD" = (/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"atE" = (/obj/structure/table,/obj/machinery/light/small{dir = 8},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"atF" = (/obj/structure/closet/secure_closet/personal,/turf/open/floor/carpet,/area/crew_quarters/sleep) +"atG" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm4"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"atH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/sleep) +"atI" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 9},/area/crew_quarters/sleep) +"atJ" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/sleep) +"atK" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/wood,/area/crew_quarters/sleep) +"atL" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/wood,/area/crew_quarters/sleep) +"atM" = (/obj/machinery/airalarm{pixel_y = 23},/obj/structure/closet/secure_closet/personal/cabinet,/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/wood,/area/crew_quarters/sleep) +"atN" = (/obj/structure/dresser,/turf/open/floor/wood,/area/crew_quarters/sleep) +"atO" = (/obj/machinery/airalarm{pixel_y = 23},/obj/structure/closet/secure_closet/personal/cabinet,/turf/open/floor/wood,/area/crew_quarters/sleep) +"atP" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/neutral/side{dir = 9},/area/crew_quarters/fitness) +"atQ" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal/bin,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atR" = (/obj/structure/closet/athletic_mixed,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atS" = (/obj/structure/closet/boxinggloves,/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/item/clothing/shoes/jackboots,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atT" = (/obj/machinery/camera{c_tag = "Fitness Room"},/obj/structure/closet/masks,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atU" = (/obj/structure/closet/lasertag/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/fitness) +"atV" = (/obj/structure/closet/lasertag/red,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/fitness) +"atW" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atX" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"atZ" = (/obj/structure/door_assembly/door_assembly_mai,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aua" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aub" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"auc" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/donut,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aud" = (/turf/closed/wall,/area/maintenance/electrical) +"aue" = (/turf/closed/wall,/area/space/nearstation) +"auf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side{dir = 8},/area/mining_construction) +"aug" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/mining_construction) +"auh" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aui" = (/obj/structure/reagent_dispensers/watertank,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"auj" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"auk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aul" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aum" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aun" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/closed/wall,/area/maintenance/fpmaint2) +"auo" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aup" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/fpmaint) +"auq" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aur" = (/obj/structure/chair/stool,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aus" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/closet/secure_closet/chemical,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aut" = (/obj/structure/closet/secure_closet/chemical,/turf/open/floor/plating,/area/maintenance/fpmaint) +"auu" = (/obj/structure/closet/secure_closet/medical1,/turf/open/floor/plating,/area/maintenance/fpmaint) +"auv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/vacantoffice2) +"auw" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/security/vacantoffice2) +"aux" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint) +"auy" = (/obj/machinery/door/airlock/maintenance{name = "Law Office Maintenance"; req_access_txt = "38"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/lawoffice) +"auz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/wood,/area/lawoffice) +"auA" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start{name = "Lawyer"},/turf/open/floor/wood,/area/lawoffice) +"auB" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"auC" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"auD" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"auE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"auF" = (/obj/machinery/door/airlock{id_tag = "Dorm4"; name = "Dorm 4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"auG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"auH" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"auI" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/crew_quarters/sleep) +"auJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/sleep) +"auK" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/button/door{id = "Dorm5"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/sleep) +"auL" = (/turf/open/floor/wood,/area/crew_quarters/sleep) +"auM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/crew_quarters/sleep) +"auN" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/button/door{id = "Dorm6"; name = "Cabin Bolt Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/sleep) +"auO" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/fitness) +"auP" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"auQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"auR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"auS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/crew_quarters/fitness) +"auT" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/crew_quarters/fitness) +"auU" = (/obj/structure/table,/obj/item/weapon/shard,/obj/item/weapon/shard{icon_state = "medium"},/obj/item/weapon/shard{icon_state = "small"},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"auV" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"auW" = (/turf/open/floor/plating{icon_state = "panelscorched"},/area/maintenance/fsmaint2) +"auX" = (/obj/machinery/button/door{id = "maint3"; name = "Blast Door Control C"; pixel_x = 0; pixel_y = 24; req_access_txt = "0"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"auY" = (/obj/structure/table,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"auZ" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ava" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"avb" = (/obj/item/stack/rods{amount = 50},/obj/structure/rack,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil{amount = 5},/obj/item/stack/sheet/mineral/plasma{amount = 10; layer = 2.9},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"avc" = (/obj/machinery/power/port_gen/pacman,/turf/open/floor/plating,/area/maintenance/electrical) +"avd" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/electrical) +"ave" = (/turf/open/floor/mech_bay_recharge_floor,/area/maintenance/electrical) +"avf" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/bluegrid,/area/maintenance/electrical) +"avg" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/mining_construction) +"avh" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/mining_construction) +"avi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fpmaint2) +"avk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) +"avl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/fpmaint2) +"avn" = (/turf/open/floor/plasteel/airless{icon_state = "damaged3"},/area/space/nearstation) +"avo" = (/obj/item/weapon/paper/crumpled,/turf/open/floor/plasteel/airless{icon_state = "damaged2"},/area/space/nearstation) +"avp" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avq" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avr" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avs" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"avt" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fpmaint) +"avu" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/light,/turf/open/floor/plating,/area/security/vacantoffice2) +"avv" = (/obj/machinery/camera{c_tag = "Vacant Office B"; dir = 1},/obj/structure/table/wood,/turf/open/floor/plasteel,/area/security/vacantoffice2) +"avw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/security/vacantoffice2) +"avx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/lawoffice) +"avy" = (/obj/structure/table/wood,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/weapon/cartridge/lawyer,/turf/open/floor/wood,/area/lawoffice) +"avz" = (/obj/structure/table/wood,/obj/machinery/camera{c_tag = "Law Office"; dir = 1; network = list("SS13")},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; dir = 1; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = -27},/turf/open/floor/wood,/area/lawoffice) +"avA" = (/obj/machinery/photocopier,/obj/machinery/button/door{id = "lawyer_blast"; name = "Privacy Shutters"; pixel_x = 25; pixel_y = 8},/turf/open/floor/wood,/area/lawoffice) +"avB" = (/obj/machinery/power/apc{dir = 8; name = "Fore Primary Hallway APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/camera{c_tag = "Fore Primary Hallway"; dir = 4; network = list("SS13")},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"avC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"avD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"avE" = (/obj/machinery/door/airlock{id_tag = "Dorm5"; name = "Cabin 1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/sleep) +"avF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/sleep) +"avG" = (/obj/machinery/door/airlock{id_tag = "Dorm6"; name = "Cabin 2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/sleep) +"avH" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/fitness) +"avI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avJ" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Fitness Ring"},/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"avK" = (/obj/structure/window/reinforced{dir = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"avL" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"avM" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avN" = (/turf/open/floor/plasteel/red/side{dir = 4},/area/crew_quarters/fitness) +"avO" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avP" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avQ" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avR" = (/obj/machinery/camera{c_tag = "Holodeck"},/obj/machinery/airalarm{pixel_y = 24},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"avS" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"avT" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"avU" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"avV" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"avW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"avX" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"avY" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"avZ" = (/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"awa" = (/turf/open/floor/plating,/area/maintenance/electrical) +"awb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"awc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"awd" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"awe" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"awf" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/shuttle/auxillary_base) +"awg" = (/obj/machinery/portable_atmospherics/canister/air,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/shuttle/auxillary_base) +"awh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/mining_construction) +"awi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side,/area/mining_construction) +"awj" = (/obj/structure/table,/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/pipe_dispenser,/obj/machinery/button/door{id = "aux_base_shutters"; name = "Public Shutters Control"; pixel_x = 24; pixel_y = 0; req_access_txt = "0"; req_one_access_txt = "32;47;48"},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/mining_construction) +"awk" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Auxillary Base Construction APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/mining_construction) +"awl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awn" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) +"awo" = (/obj/structure/mirror{icon_state = "mirror_broke"; pixel_y = 28; broken = 1},/obj/machinery/iv_drip,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awp" = (/obj/structure/frame/computer,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awq" = (/obj/structure/mirror{icon_state = "mirror_broke"; pixel_y = 28; broken = 1},/obj/item/weapon/shard{icon_state = "medium"},/obj/item/weapon/circuitboard/computer/operating,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awr" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/structure/chair,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aws" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awt" = (/obj/item/weapon/airlock_painter,/obj/structure/lattice,/obj/structure/closet,/turf/open/space,/area/space/nearstation) +"awu" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"awv" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fpmaint) +"aww" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fpmaint) +"awx" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/fpmaint) +"awy" = (/obj/machinery/door/airlock/maintenance{name = "Chemical Storage"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fpmaint) +"awz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/vacantoffice2) +"awA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/vacantoffice2) +"awB" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/power/apc{dir = 8; name = "Vacant Office B APC"; pixel_x = -24; pixel_y = 0},/turf/open/floor/plating,/area/security/vacantoffice2) +"awC" = (/obj/machinery/power/apc{dir = 1; name = "Law Office APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/lawoffice) +"awD" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/primary/fore) +"awE" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/fore) +"awF" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm3"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"awG" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"awH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/crew_quarters/sleep) +"awI" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awJ" = (/obj/machinery/requests_console{department = "Crew Quarters"; pixel_y = 30},/obj/machinery/camera{c_tag = "Dormitory North"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awK" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awN" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awO" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/crew_quarters/sleep) +"awP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 5},/area/crew_quarters/sleep) +"awQ" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"awR" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/fitness) +"awS" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"awT" = (/turf/open/floor/plasteel/vault{dir = 5},/area/crew_quarters/fitness) +"awU" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"awV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"awW" = (/obj/machinery/computer/holodeck,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"awX" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"awY" = (/obj/machinery/door/poddoor/preopen{id = "maint3"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"awZ" = (/obj/machinery/door/poddoor/preopen{id = "maint3"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"axa" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall,/area/maintenance/electrical) +"axb" = (/obj/machinery/power/apc{dir = 1; name = "Electrical Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/electrical) +"axc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/electrical) +"axd" = (/obj/structure/table,/obj/item/clothing/gloves/color/fyellow,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/device/multitool,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"axe" = (/turf/closed/wall/r_wall,/area/hallway/secondary/entry) +"axf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/poddoor/shutters{id = "aux_base_shutters"; name = "Auxillary Base Shutters"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/mining_construction) +"axg" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 1; name = "Auxillary Base Construction"; req_access_txt = "0"; req_one_access_txt = "32;47;48"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/mining_construction) +"axh" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/fpmaint2) +"axj" = (/obj/item/weapon/wrench,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axk" = (/obj/structure/table/optable{name = "Robotics Operating Table"},/obj/item/weapon/surgical_drapes,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axl" = (/turf/open/floor/plasteel/airless{icon_state = "damaged5"},/area/space/nearstation) +"axm" = (/obj/structure/table,/obj/machinery/cell_charger,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axn" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axo" = (/obj/machinery/light/small{dir = 4},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"axp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fpmaint2) +"axq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint2) +"axr" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fpmaint) +"axt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axu" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/closed/wall,/area/maintenance/fpmaint) +"axv" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axw" = (/obj/machinery/power/apc{dir = 1; name = "EVA Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axx" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axC" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axD" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"axE" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"axF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"axG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"axH" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) +"axI" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint) +"axJ" = (/obj/machinery/door/airlock{id_tag = "Dorm3"; name = "Dorm 3"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axK" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axM" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axN" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/weapon/storage/pill_bottle/dice,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axO" = (/obj/structure/table/wood,/obj/item/weapon/storage/firstaid/regular,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axP" = (/obj/structure/table/wood,/obj/item/weapon/coin/silver,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axQ" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"axT" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Fitness"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axU" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axW" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/vault{dir = 5},/area/crew_quarters/fitness) +"axX" = (/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/green/side{dir = 4},/area/crew_quarters/fitness) +"axY" = (/obj/structure/table,/obj/item/weapon/paper{desc = ""; info = "Brusies sustained in the holodeck can be healed simply by sleeping."; name = "Holodeck Disclaimer"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"axZ" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aya" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayb" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayc" = (/obj/structure/girder,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayd" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aye" = (/obj/machinery/button/door{id = "maint2"; name = "Blast Door Control B"; pixel_x = -28; pixel_y = 4; req_access_txt = "0"},/obj/machinery/button/door{id = "maint1"; name = "Blast Door Control A"; pixel_x = -28; pixel_y = -6; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayf" = (/obj/structure/janitorialcart,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayg" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayh" = (/obj/structure/table/glass,/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayi" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"ayk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/engineering{name = "Electrical Maintenance"; req_access_txt = "11"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"ayl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"aym" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"ayn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"ayo" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plating,/area/maintenance/electrical) +"ayp" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/electrical) +"ayq" = (/obj/structure/table,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/electrical) +"ayr" = (/turf/closed/wall/mineral/titanium,/area/shuttle/pod_2) +"ays" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4; icon_state = "propulsion"; tag = "icon-propulsion (WEST)"},/turf/closed/wall/mineral/titanium,/area/shuttle/pod_2) +"ayt" = (/turf/closed/wall,/area/hallway/secondary/entry) +"ayu" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/hallway/secondary/entry) +"ayv" = (/obj/structure/sign/pods,/turf/closed/wall,/area/hallway/secondary/entry) +"ayw" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"ayx" = (/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"ayy" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"ayz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/hallway/secondary/entry) +"ayA" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/hallway/secondary/entry) +"ayB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/hallway/secondary/entry) +"ayC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/arrival{dir = 1},/area/hallway/secondary/entry) +"ayD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/arrival{dir = 5},/area/hallway/secondary/entry) +"ayE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayF" = (/obj/machinery/sleeper{dir = 4; icon_state = "sleeper-open"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayG" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayH" = (/obj/structure/table/glass,/obj/item/weapon/storage/bag/trash,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayI" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/closed/wall,/area/maintenance/fpmaint2) +"ayJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayK" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayN" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"ayO" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayU" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayV" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayW" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayX" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fpmaint) +"ayZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aza" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"azb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/ai_monitored/storage/eva) +"azc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) +"azd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/fore) +"aze" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"azf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fsmaint) +"azg" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/fsmaint) +"azh" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azi" = (/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azj" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azk" = (/obj/structure/table/wood,/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azl" = (/obj/structure/table/wood,/obj/item/device/paicard,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azm" = (/obj/structure/table/wood,/obj/item/toy/cards/deck{pixel_x = 2},/obj/item/clothing/mask/balaclava{pixel_x = -8; pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azn" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azo" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azp" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"azq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Fitness"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azt" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"azu" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"azv" = (/obj/machinery/door/window/eastright{base_state = "left"; icon_state = "left"; name = "Fitness Ring"},/obj/structure/window/reinforced,/turf/open/floor/plasteel/black,/area/crew_quarters/fitness) +"azw" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/crew_quarters/fitness) +"azx" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Holodeck Door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azz" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"azA" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"azF" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/electrical) +"azG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/electrical) +"azH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"azI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plating,/area/maintenance/electrical) +"azJ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plating,/area/maintenance/electrical) +"azK" = (/obj/docking_port/stationary/random{dir = 8; id = "pod_asteroid2"; name = "asteroid"},/turf/open/space,/area/space) +"azL" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_2) +"azM" = (/obj/machinery/computer/shuttle/pod{pixel_x = 0; pixel_y = -32; possible_destinations = "pod_asteroid2"; shuttleId = "pod2"},/obj/structure/chair{dir = 8},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_2) +"azN" = (/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -28},/obj/item/device/radio/intercom{pixel_x = 0; pixel_y = 25},/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_2) +"azO" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 8; id = "pod2"; name = "escape pod 2"; port_angle = 180},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_2) +"azP" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Escape Pod One"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"azQ" = (/turf/open/floor/plating,/area/hallway/secondary/entry) +"azR" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azS" = (/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azT" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azX" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"azZ" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aAa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAb" = (/obj/structure/closet/wardrobe/white,/obj/item/clothing/shoes/jackboots,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAc" = (/obj/structure/table/glass,/obj/item/weapon/hemostat,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAd" = (/obj/structure/table/glass,/obj/item/weapon/restraints/handcuffs/cable/zipties,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAe" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAh" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAi" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aAk" = (/turf/closed/wall/r_wall,/area/maintenance/fpmaint2) +"aAl" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAm" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAn" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAo" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAp" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAq" = (/turf/closed/wall/r_wall,/area/maintenance/fpmaint) +"aAr" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAs" = (/turf/closed/wall/r_wall,/area/gateway) +"aAt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aAv" = (/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aAw" = (/obj/structure/closet/crate/rcd,/obj/machinery/camera/motion{c_tag = "EVA Motion Sensor"; name = "motion-sensitive security camera"},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aAx" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/machinery/light{dir = 1},/obj/item/weapon/hand_labeler,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/obj/item/device/flashlight,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aAy" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/item/clothing/head/welding,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAz" = (/obj/machinery/power/apc{dir = 1; name = "EVA Storage APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAA" = (/obj/machinery/airalarm{pixel_y = 23},/obj/item/device/radio/off,/obj/item/device/assembly/timer,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAB" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aAC" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/weapon/screwdriver{pixel_y = 16},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aAD" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/sign/securearea{pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aAE" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/device/multitool,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAF" = (/obj/machinery/light{dir = 1},/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAG" = (/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAH" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/belt/utility,/obj/item/clothing/head/welding,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aAI" = (/turf/closed/wall,/area/ai_monitored/storage/eva) +"aAJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) +"aAK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"aAL" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm2"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"aAM" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"aAN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"aAO" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel/neutral/corner{dir = 2},/area/crew_quarters/sleep) +"aAP" = (/obj/machinery/light,/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aAQ" = (/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aAR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/sleep) +"aAS" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/neutral/side{dir = 10},/area/crew_quarters/fitness) +"aAT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/corner{dir = 8},/area/crew_quarters/fitness) +"aAU" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAV" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAW" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAX" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAY" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/fitness) +"aAZ" = (/obj/machinery/camera{c_tag = "Fitness Room South"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/green/side{dir = 4},/area/crew_quarters/fitness) +"aBa" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/crew_quarters/fitness) +"aBb" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"aBc" = (/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aBd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aBe" = (/obj/machinery/power/terminal,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"aBf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/electrical) +"aBg" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/maintenance/electrical) +"aBh" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/electrical) +"aBi" = (/obj/machinery/light_switch{pixel_y = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"aBj" = (/obj/machinery/power/terminal,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/maintenance/electrical) +"aBk" = (/obj/machinery/camera{c_tag = "Arrivals Escape Pod 2"; dir = 8},/obj/machinery/light/small,/turf/open/floor/plating,/area/hallway/secondary/entry) +"aBl" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) +"aBm" = (/obj/machinery/door/airlock/external{name = "Port Docking Bay 1"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"aBn" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aBo" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aBp" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aBq" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aBr" = (/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aBs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aBt" = (/turf/closed/wall,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aBu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aBv" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aBw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall,/area/maintenance/fpmaint2) +"aBx" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/space,/area/space) +"aBy" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/space,/area/space) +"aBz" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/black,/area/gateway) +"aBA" = (/obj/machinery/gateway{dir = 9},/turf/open/floor/plasteel/vault{dir = 1},/area/gateway) +"aBB" = (/obj/machinery/gateway{dir = 1},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) +"aBC" = (/obj/machinery/gateway{dir = 5},/turf/open/floor/plasteel/vault{dir = 4},/area/gateway) +"aBD" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/gateway) +"aBE" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fpmaint) +"aBF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/maintenance{name = "EVA Maintenance"; req_access_txt = "18"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBH" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBK" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "EVA Storage"; req_access_txt = "18"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBM" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBN" = (/obj/structure/table,/obj/item/device/radio/off,/obj/item/device/radio/off,/obj/item/device/assembly/prox_sensor,/obj/item/device/assembly/prox_sensor,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aBO" = (/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) +"aBP" = (/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"aBQ" = (/obj/machinery/door/airlock{id_tag = "Dorm2"; name = "Dorm 2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"aBR" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel/neutral/corner{dir = 2},/area/crew_quarters/sleep) +"aBS" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aBT" = (/obj/machinery/light_switch{pixel_y = -25},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aBU" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aBV" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/sleep) +"aBW" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/sleep) +"aBX" = (/turf/closed/wall,/area/crew_quarters/toilet) +"aBY" = (/obj/machinery/door/airlock{name = "Unisex Showers"; req_access_txt = "0"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aBZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/neutral/side{dir = 10},/area/crew_quarters/fitness) +"aCa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) +"aCb" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) +"aCc" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) +"aCd" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/neutral/side,/area/crew_quarters/fitness) +"aCe" = (/obj/structure/reagent_dispensers/water_cooler,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 6},/area/crew_quarters/fitness) +"aCf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCg" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 8},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCh" = (/obj/structure/closet,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCi" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCj" = (/obj/machinery/door/poddoor/preopen{id = "maint2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCk" = (/obj/machinery/door/poddoor/preopen{id = "maint2"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCl" = (/obj/structure/closet,/obj/effect/landmark{name = "blobstart"},/obj/effect/spawner/lootdrop/maintenance,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCm" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aCn" = (/obj/machinery/power/smes{charge = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/electrical) +"aCo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/closed/wall,/area/maintenance/electrical) +"aCp" = (/obj/machinery/computer/monitor{name = "backup power monitoring console"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/electrical) +"aCq" = (/obj/machinery/power/smes{charge = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/maintenance/electrical) +"aCr" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/closed/wall/r_wall,/area/hallway/secondary/entry) +"aCs" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) +"aCt" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aCu" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aCv" = (/obj/machinery/camera{c_tag = "Arrivals Bay 1 North"; dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aCw" = (/obj/machinery/vending/coffee,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aCx" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aCy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aCz" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/power/apc{dir = 2; name = "Security Checkpoint APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/security/checkpoint2) +"aCA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCD" = (/obj/machinery/power/apc{dir = 4; name = "Garden APC"; pixel_x = 27; pixel_y = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCE" = (/obj/machinery/hydroponics/soil,/turf/open/floor/grass,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCF" = (/obj/machinery/light{dir = 1},/obj/structure/sink{pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCH" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCI" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCJ" = (/obj/structure/sink{pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aCK" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCL" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCM" = (/obj/machinery/power/apc{dir = 2; name = "Primary Tool Storage APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/primary) +"aCN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCO" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aCP" = (/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) +"aCQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) +"aCR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) +"aCS" = (/turf/open/floor/plasteel/black,/area/gateway) +"aCT" = (/obj/machinery/gateway{dir = 8},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) +"aCU" = (/obj/machinery/gateway/centerstation,/turf/open/floor/plasteel/black,/area/gateway) +"aCV" = (/obj/machinery/gateway{dir = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) +"aCW" = (/obj/machinery/power/apc{dir = 8; name = "Gateway APC"; pixel_x = -24; pixel_y = -1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/gateway) +"aCX" = (/obj/machinery/camera{c_tag = "EVA Maintenance"; dir = 8; network = list("SS13")},/obj/machinery/light/small{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aCY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aCZ" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/item/weapon/tank/jetpack/carbondioxide,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDa" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/jetpack/carbondioxide,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDc" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDd" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDe" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDf" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDg" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aDh" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aDj" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"aDk" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"aDl" = (/obj/machinery/shower{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aDm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aDn" = (/obj/machinery/shower{dir = 8},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aDo" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/fsmaint2) +"aDq" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDr" = (/obj/item/clothing/under/rank/mailman,/obj/item/clothing/head/mailman,/obj/structure/closet,/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDs" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aDt" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aDu" = (/turf/closed/wall,/area/security/checkpoint2) +"aDv" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/checkpoint2) +"aDw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/checkpoint2) +"aDx" = (/obj/machinery/door/airlock/maintenance{name = "Security Maintenance"; req_access_txt = "1"},/turf/open/floor/plating,/area/security/checkpoint2) +"aDy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDz" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDA" = (/obj/item/seeds/apple,/obj/item/seeds/banana,/obj/item/seeds/cocoapod,/obj/item/seeds/grape,/obj/item/seeds/orange,/obj/item/seeds/sugarcane,/obj/item/seeds/wheat,/obj/item/seeds/watermelon,/obj/structure/table/glass,/obj/item/seeds/tower,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDC" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aDD" = (/obj/machinery/door/airlock/maintenance{name = "Garden Maintenance"; req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint2) +"aDE" = (/turf/closed/wall,/area/storage/primary) +"aDF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/storage/primary) +"aDG" = (/turf/closed/wall/r_wall,/area/storage/primary) +"aDH" = (/obj/machinery/computer/bank_machine,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/nuke_storage) +"aDI" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aDJ" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/light{dir = 1},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aDK" = (/obj/machinery/power/apc{dir = 1; name = "Vault APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aDL" = (/obj/structure/filingcabinet,/obj/item/weapon/folder/documents,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/nuke_storage) +"aDM" = (/obj/machinery/gateway{dir = 10},/turf/open/floor/plasteel/vault{dir = 4},/area/gateway) +"aDN" = (/obj/machinery/gateway,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/vault{dir = 8},/area/gateway) +"aDO" = (/obj/machinery/gateway{dir = 6},/turf/open/floor/plasteel/vault{dir = 1},/area/gateway) +"aDP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/meter,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aDQ" = (/obj/machinery/requests_console{department = "EVA"; pixel_x = -32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDR" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDS" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/item/weapon/pen{desc = "Writes upside down!"; name = "astronaut pen"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDV" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDW" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aDX" = (/obj/machinery/camera{c_tag = "EVA East"; dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aDY" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/button/door{id = "Dorm1"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 25; pixel_y = 0; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/crew_quarters/sleep) +"aDZ" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aEa" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aEb" = (/obj/structure/urinal{pixel_y = 32},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aEc" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/item/weapon/bikehorn/rubberducky,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aEd" = (/obj/structure/table/wood,/obj/machinery/requests_console{department = "Theatre"; departmentType = 0; name = "theatre RC"; pixel_x = -32; pixel_y = 0},/obj/item/weapon/reagent_containers/food/snacks/baguette,/obj/item/toy/dummy,/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aEe" = (/obj/machinery/camera{c_tag = "Theatre Storage"},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aEf" = (/obj/machinery/vending/autodrobe,/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aEg" = (/turf/closed/wall,/area/crew_quarters/theatre) +"aEh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEi" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"aEj" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"aEk" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/fitness) +"aEl" = (/obj/machinery/atmospherics/components/binary/valve,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEm" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEn" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEo" = (/obj/structure/grille/broken,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/window{icon_state = "window"; dir = 4},/obj/structure/window,/turf/open/floor/plating{icon_state = "panelscorched"},/area/maintenance/fsmaint2) +"aEp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/maintenance/fsmaint2) +"aEq" = (/obj/machinery/door/poddoor/preopen{id = "maint1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEr" = (/obj/machinery/door/poddoor/preopen{id = "maint1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/fsmaint2) +"aEt" = (/obj/structure/girder,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEu" = (/obj/machinery/space_heater,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEv" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEy" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEz" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEA" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEB" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aEC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aED" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/black,/area/chapel/main) +"aEE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/chapel/main) +"aEF" = (/turf/closed/wall,/area/chapel/main) +"aEG" = (/turf/closed/wall/mineral/titanium,/area/shuttle/arrival) +"aEH" = (/obj/machinery/door/airlock/titanium{name = "Arrivals Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/arrival) +"aEI" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/arrival) +"aEJ" = (/obj/machinery/camera{c_tag = "Arrivals North"; dir = 8; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aEK" = (/obj/structure/closet/secure_closet/security,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint2) +"aEL" = (/obj/structure/closet/wardrobe/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) +"aEM" = (/obj/machinery/computer/security,/obj/structure/reagent_dispensers/peppertank{pixel_x = 0; pixel_y = 30},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) +"aEN" = (/obj/machinery/computer/card,/obj/machinery/light{dir = 1},/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) +"aEO" = (/obj/machinery/computer/secure_data,/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint2) +"aEP" = (/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint2) +"aEQ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aER" = (/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aES" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aET" = (/obj/machinery/vending/assist,/turf/open/floor/plasteel,/area/storage/primary) +"aEU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/storage/primary) +"aEV" = (/obj/structure/table,/obj/item/weapon/wirecutters,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/storage/primary) +"aEW" = (/obj/structure/table,/obj/item/device/t_scanner,/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/storage/primary) +"aEX" = (/obj/structure/table,/obj/item/device/assembly/igniter{pixel_x = -8; pixel_y = -4},/obj/item/device/assembly/igniter,/obj/item/weapon/screwdriver{pixel_y = 16},/obj/machinery/camera{c_tag = "Primary Tool Storage"},/obj/machinery/requests_console{department = "Tool Storage"; departmentType = 0; pixel_y = 30},/turf/open/floor/plasteel,/area/storage/primary) +"aEY" = (/obj/structure/table,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/item/device/multitool,/obj/item/device/multitool{pixel_x = 4},/turf/open/floor/plasteel,/area/storage/primary) +"aEZ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/light_switch{pixel_y = 28},/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel,/area/storage/primary) +"aFa" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel,/area/storage/primary) +"aFb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/primary) +"aFc" = (/obj/machinery/vending/tool,/turf/open/floor/plasteel,/area/storage/primary) +"aFd" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/vault{dir = 1},/area/ai_monitored/nuke_storage) +"aFe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aFf" = (/obj/machinery/nuclearbomb/selfdestruct,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/nuke_storage) +"aFg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aFh" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/vault{dir = 4},/area/ai_monitored/nuke_storage) +"aFi" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/black,/area/gateway) +"aFj" = (/obj/structure/window/reinforced,/turf/open/floor/plasteel/black,/area/gateway) +"aFk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/window{name = "Gateway Chamber"; req_access_txt = "62"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/black,/area/gateway) +"aFl" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/gateway) +"aFm" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/gateway) +"aFn" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aFo" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFp" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFs" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/machinery/light,/obj/machinery/camera{c_tag = "EVA Storage"; dir = 1},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFt" = (/obj/machinery/suit_storage_unit/standard_unit,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFu" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aFv" = (/obj/machinery/door/airlock/command{name = "Command Tool Storage"; req_access = null; req_access_txt = "19"},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aFw" = (/obj/machinery/door/airlock/command{cyclelinkeddir = 2; name = "Command Tool Storage"; req_access = null; req_access_txt = "19"},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aFx" = (/obj/machinery/door/airlock{id_tag = "Dorm1"; name = "Dorm 1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/sleep) +"aFy" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"aFz" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/toilet) +"aFA" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFB" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFD" = (/obj/machinery/door/airlock{name = "Unisex Showers"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFE" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFF" = (/obj/machinery/light/small,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFG" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aFH" = (/obj/structure/table/wood,/obj/structure/mirror{pixel_x = -28},/obj/item/weapon/lipstick/random{pixel_x = 2; pixel_y = 2},/obj/item/weapon/lipstick/random{pixel_x = -2; pixel_y = -2},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aFI" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Mime"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aFJ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 4},/area/crew_quarters/theatre) +"aFK" = (/obj/machinery/door/airlock/maintenance{name = "Theatre Maintenance"; req_access_txt = "46"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/theatre) +"aFL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j1s"; sortType = 18},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFM" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFP" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFQ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aFY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/power/apc{dir = 2; name = "Chapel APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/chapel/main) +"aFZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Chapel Maintenance"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aGa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aGb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/chapel/main) +"aGc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/chapel/main) +"aGd" = (/obj/machinery/door/window{dir = 8; name = "Mass Driver"; req_access_txt = "22"},/obj/machinery/mass_driver{dir = 4; id = "chapelgun"; name = "Holy Driver"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/chapel/main) +"aGe" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/chapel/main) +"aGf" = (/obj/machinery/door/poddoor{id = "chapelgun"; name = "Chapel Launcher Door"},/turf/open/floor/plating,/area/chapel/main) +"aGg" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aGh" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aGi" = (/obj/machinery/computer/arcade,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aGj" = (/obj/structure/closet/wardrobe/green,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aGk" = (/obj/structure/closet/wardrobe/black,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aGl" = (/obj/structure/closet/wardrobe/mixed,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aGm" = (/obj/structure/closet/wardrobe/grey,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aGn" = (/obj/machinery/requests_console{department = "Arrival shuttle"; pixel_y = 30},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aGo" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/shuttle/arrival) +"aGp" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "burst_r"},/turf/open/floor/plasteel/black,/area/shuttle/arrival) +"aGq" = (/obj/machinery/power/apc{dir = 4; name = "Entry Hall APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable,/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aGr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint2) +"aGs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/security/checkpoint2) +"aGt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/security/checkpoint2) +"aGu" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/security/checkpoint2) +"aGv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint2) +"aGw" = (/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint2) +"aGx" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/food/snacks/grown/wheat,/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon,/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon,/obj/item/weapon/reagent_containers/food/snacks/grown/watermelon,/obj/item/weapon/reagent_containers/food/snacks/grown/citrus/orange,/obj/item/weapon/reagent_containers/food/snacks/grown/grapes,/obj/item/weapon/reagent_containers/food/snacks/grown/cocoapod,/turf/open/floor/plasteel/green/side{dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aGy" = (/obj/machinery/door/airlock{name = "Garden"; req_access_txt = "0"},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aGz" = (/turf/open/floor/plasteel,/area/storage/primary) +"aGA" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/storage/primary) +"aGB" = (/obj/structure/closet/crate{name = "Gold Crate"},/obj/item/stack/sheet/mineral/gold{pixel_x = -1; pixel_y = 5},/obj/item/stack/sheet/mineral/gold{pixel_y = 2},/obj/item/stack/sheet/mineral/gold{pixel_x = 1; pixel_y = -2},/obj/item/weapon/storage/belt/champion,/turf/open/floor/plasteel/vault{dir = 1},/area/ai_monitored/nuke_storage) +"aGC" = (/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aGD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/bluegrid,/area/ai_monitored/nuke_storage) +"aGE" = (/obj/item/weapon/coin/silver{pixel_x = 7; pixel_y = 12},/obj/item/weapon/coin/silver{pixel_x = 12; pixel_y = 7},/obj/item/weapon/coin/silver{pixel_x = 4; pixel_y = 8},/obj/item/weapon/coin/silver{pixel_x = -6; pixel_y = 5},/obj/item/weapon/coin/silver{pixel_x = 5; pixel_y = -8},/obj/structure/closet/crate{name = "Silver Crate"},/turf/open/floor/plasteel/vault{dir = 4},/area/ai_monitored/nuke_storage) +"aGF" = (/obj/machinery/camera{c_tag = "Gateway"; dir = 4; network = list("SS13")},/obj/structure/table,/obj/structure/sign/biohazard{pixel_x = -32},/obj/item/weapon/storage/firstaid/regular,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) +"aGG" = (/obj/structure/table,/obj/item/weapon/paper/pamphlet,/turf/open/floor/plasteel,/area/gateway) +"aGH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/gateway) +"aGI" = (/obj/structure/table,/obj/item/device/radio/off{pixel_y = 6},/obj/item/device/radio/off{pixel_x = 6; pixel_y = 4},/obj/item/device/radio/off{pixel_x = -6; pixel_y = 4},/obj/item/device/radio/off,/turf/open/floor/plasteel,/area/gateway) +"aGJ" = (/obj/structure/table,/obj/machinery/recharger,/obj/structure/sign/biohazard{pixel_x = 32},/turf/open/floor/plasteel,/area/gateway) +"aGK" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aGL" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aGM" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "EVA Storage"; req_access_txt = "18"},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aGN" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/storage/eva) +"aGO" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/ai_monitored/storage/eva) +"aGP" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aGQ" = (/obj/machinery/camera{c_tag = "Dormitory South"; c_tag_order = 999; dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"aGR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"aGS" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aGT" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aGU" = (/obj/machinery/power/apc{dir = 4; name = "Dormitory Bathrooms APC"; pixel_x = 26; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aGV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/toilet) +"aGW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall,/area/crew_quarters/toilet) +"aGX" = (/obj/machinery/light/small{dir = 8},/obj/structure/dresser,/turf/open/floor/plasteel/redblue/redside,/area/crew_quarters/theatre) +"aGY" = (/turf/open/floor/plasteel/redblue/redside,/area/crew_quarters/theatre) +"aGZ" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plasteel/redblue/redside,/area/crew_quarters/theatre) +"aHa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHc" = (/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHd" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHe" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/space,/area/space/nearstation) +"aHf" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHj" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHk" = (/turf/closed/wall,/area/library) +"aHl" = (/turf/closed/wall,/area/chapel/office) +"aHm" = (/obj/machinery/power/apc{dir = 2; name = "Chapel Office APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/chapel/office) +"aHn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aHo" = (/turf/open/floor/plasteel/black,/area/chapel/main) +"aHp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/chapel/main) +"aHq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/computer/pod/old{density = 0; icon = 'icons/obj/airlock_machines.dmi'; icon_state = "airlock_control_standby"; id = "chapelgun"; name = "Mass Driver Controller"; pixel_x = 24; pixel_y = 0},/turf/open/floor/plasteel/black,/area/chapel/main) +"aHr" = (/obj/structure/chair,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aHs" = (/obj/structure/chair{dir = 8},/obj/effect/landmark{name = "JoinLate"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aHt" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "propulsion"},/turf/open/floor/plasteel/black,/area/shuttle/arrival) +"aHu" = (/turf/open/floor/plasteel/arrival{dir = 4},/area/hallway/secondary/entry) +"aHv" = (/obj/machinery/camera{c_tag = "Security Checkpoint"; dir = 1},/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light_switch{pixel_x = 6; pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint2) +"aHw" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) +"aHx" = (/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) +"aHy" = (/obj/structure/chair/office/dark,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) +"aHz" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table,/turf/open/floor/plasteel/red/side,/area/security/checkpoint2) +"aHA" = (/obj/item/device/radio/off,/obj/item/weapon/crowbar,/obj/item/device/assembly/flash/handheld,/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint2) +"aHB" = (/obj/structure/table/glass,/obj/item/weapon/cultivator,/obj/item/weapon/hatchet,/obj/item/weapon/crowbar,/obj/item/device/plant_analyzer,/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel/green/side{dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aHC" = (/obj/machinery/camera{c_tag = "Garden"; dir = 8; network = list("SS13")},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aHD" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 2; pixel_y = -2},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/weapon/screwdriver{pixel_y = 16},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/storage/primary) +"aHE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/storage/primary) +"aHF" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/storage/primary) +"aHG" = (/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/storage/primary) +"aHH" = (/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/storage/primary) +"aHI" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/storage/primary) +"aHJ" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/storage/primary) +"aHK" = (/obj/machinery/camera/motion{c_tag = "Vault"; dir = 1; network = list("MiniSat")},/turf/open/floor/plasteel/vault{dir = 1},/area/ai_monitored/nuke_storage) +"aHL" = (/obj/machinery/light,/turf/open/floor/plasteel/vault{dir = 6},/area/ai_monitored/nuke_storage) +"aHM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/vault,/area/ai_monitored/nuke_storage) +"aHN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/light,/turf/open/floor/plasteel/vault{dir = 10},/area/ai_monitored/nuke_storage) +"aHO" = (/obj/structure/safe,/obj/item/clothing/head/bearpelt,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/gun/ballistic/revolver/russian,/obj/item/ammo_box/a357,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka,/turf/open/floor/plasteel/vault{dir = 4},/area/ai_monitored/nuke_storage) +"aHP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aHQ" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) +"aHR" = (/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/gateway) +"aHS" = (/turf/open/floor/plasteel,/area/gateway) +"aHT" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/gateway) +"aHU" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aHV" = (/obj/structure/table,/obj/item/stack/sheet/rglass{amount = 50},/obj/item/stack/sheet/rglass{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/rods{amount = 50},/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aHW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aHX" = (/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aHY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aHZ" = (/obj/item/stack/sheet/plasteel{amount = 10},/obj/structure/table,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aIa" = (/obj/machinery/light{dir = 8},/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aIb" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/rglass{amount = 50},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aIc" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/fore) +"aId" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/fore) +"aIe" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aIf" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aIg" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aIh" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aIi" = (/obj/machinery/light/small{dir = 8},/obj/machinery/recharge_station,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aIj" = (/obj/structure/table/wood,/obj/structure/mirror{pixel_x = -28},/obj/item/device/flashlight/lamp/bananalamp{pixel_y = 3},/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aIk" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Clown"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aIl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/closet/secure_closet/freezer/cream_pie,/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aIm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/theatre) +"aIn" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIp" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIt" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = 19},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIu" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIv" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIw" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = 20},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIx" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIz" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIB" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aID" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIE" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/space,/area/space/nearstation) +"aIG" = (/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j2s"; sortType = 17},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aIH" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aII" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/library) +"aIJ" = (/obj/machinery/door/airlock/maintenance{name = "Library Maintenance"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/library) +"aIK" = (/obj/structure/table/wood,/obj/item/weapon/storage/pill_bottle/dice,/turf/open/floor/wood,/area/library) +"aIL" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/stack/packageWrap,/turf/open/floor/wood,/area/library) +"aIM" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/wood,/area/library) +"aIN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/chapel/office) +"aIO" = (/obj/machinery/door/airlock/maintenance{name = "Crematorium Maintenance"; req_access_txt = "27"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/chapel/office) +"aIP" = (/obj/structure/closet/wardrobe/chaplain_black,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aIQ" = (/obj/machinery/light/small{dir = 1},/obj/machinery/requests_console{department = "Chapel"; departmentType = 2; pixel_y = 30},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aIR" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera{c_tag = "Chapel Office"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aIS" = (/obj/machinery/airalarm{pixel_y = 25},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aIT" = (/obj/structure/closet/coffin,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/office) +"aIU" = (/obj/structure/closet/coffin,/obj/machinery/door/window/eastleft{name = "Coffin Storage"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/office) +"aIV" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/chapel/main) +"aIW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aIX" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aIY" = (/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) +"aIZ" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/food/snacks/grown/poppy,/obj/item/weapon/reagent_containers/food/snacks/grown/harebell,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aJa" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/chapel/main) +"aJb" = (/turf/closed/wall/mineral/titanium,/area/shuttle/escape) +"aJc" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/escape) +"aJd" = (/obj/effect/landmark{name = "Marauder Entry"},/turf/open/space,/area/space) +"aJe" = (/obj/machinery/door/airlock/titanium{name = "Arrivals Shuttle Airlock"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aJf" = (/obj/effect/landmark{name = "Observer-Start"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aJg" = (/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/white/corner{dir = 4},/area/hallway/secondary/entry) +"aJh" = (/obj/machinery/door/airlock/security{name = "Security Checkpoint"; req_access = null; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/security/checkpoint2) +"aJi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint2) +"aJj" = (/obj/machinery/door/firedoor,/obj/structure/table/reinforced,/obj/item/weapon/paper,/obj/machinery/door/window/westright{dir = 1; name = "Security Checkpoint"; req_access_txt = "1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aJk" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/green/side{dir = 5},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aJl" = (/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aJm" = (/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/weapon/reagent_containers/spray/pestspray{pixel_x = 3; pixel_y = 4},/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez,/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh{pixel_x = 2; pixel_y = 1},/obj/structure/table/glass,/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/green/side{dir = 9},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aJn" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/turf/open/floor/plasteel,/area/storage/primary) +"aJo" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/storage/primary) +"aJp" = (/obj/structure/table,/obj/item/weapon/weldingtool,/obj/item/weapon/crowbar,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/turf/open/floor/plasteel,/area/storage/primary) +"aJq" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/ai_monitored/nuke_storage) +"aJr" = (/obj/machinery/door/airlock/vault{icon_state = "door_locked"; locked = 1; req_access_txt = "53"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/vault{dir = 5},/area/ai_monitored/nuke_storage) +"aJs" = (/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/gateway) +"aJt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/gateway) +"aJu" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/gateway) +"aJv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/gateway) +"aJw" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/l3closet/scientist,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/gateway) +"aJx" = (/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aJy" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/weapon/crowbar,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aJz" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aJA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aJB" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aJC" = (/obj/machinery/door/airlock/command{cyclelinkeddir = 1; name = "Command Tool Storage"; req_access = null; req_access_txt = "19"},/turf/open/floor/plasteel/black,/area/ai_monitored/storage/eva) +"aJD" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aJE" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aJF" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/open/floor/plasteel/blue/side{dir = 4},/area/hallway/primary/central) +"aJG" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Dormitory"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/crew_quarters/sleep) +"aJH" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Dormitory"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/crew_quarters/sleep) +"aJI" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJJ" = (/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJK" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJL" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJM" = (/obj/machinery/door/airlock{name = "Unit B"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aJN" = (/obj/structure/table/wood,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/weapon/storage/crayons{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/food/snacks/pie/cream{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aJO" = (/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aJP" = (/obj/structure/closet/secure_closet/freezer/cream_pie,/turf/open/floor/plasteel/redblue,/area/crew_quarters/theatre) +"aJQ" = (/obj/machinery/power/apc{dir = 8; name = "Theatre APC"; pixel_x = -25},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/crew_quarters/theatre) +"aJR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJS" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aJT" = (/obj/machinery/power/apc{dir = 2; name = "Bar APC"; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/bar) +"aJU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/bar) +"aJV" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Bar Storage Maintenance"; req_access_txt = "25"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/bar) +"aJW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall,/area/crew_quarters/bar) +"aJX" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Bar"},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/crew_quarters/bar) +"aJY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/kitchen) +"aJZ" = (/obj/machinery/power/apc{dir = 2; name = "Kitchen APC"; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/kitchen) +"aKa" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aKb" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aKc" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aKd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aKe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/sortjunction{dir = 4; icon_state = "pipe-j1s"; sortType = 21},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aKf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aKg" = (/obj/machinery/power/apc{dir = 2; name = "Hydroponics APC"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/hydroponics) +"aKh" = (/turf/closed/wall,/area/hydroponics) +"aKi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/hydroponics) +"aKj" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aKk" = (/obj/structure/filingcabinet,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/library) +"aKl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/wood,/area/library) +"aKm" = (/obj/structure/chair/office/dark,/obj/machinery/camera{c_tag = "Library North"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/library) +"aKn" = (/obj/structure/chair/office/dark,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/library) +"aKo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/library) +"aKp" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/wood,/area/library) +"aKq" = (/obj/structure/bodycontainer/crematorium,/obj/effect/landmark{name = "revenantspawn"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/chapel/office) +"aKr" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/chapel/office) +"aKs" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aKt" = (/obj/effect/landmark/start{name = "Chaplain"},/obj/structure/chair,/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aKu" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aKv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aKw" = (/obj/structure/closet/coffin,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/office) +"aKx" = (/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aKy" = (/obj/structure/table/glass,/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aKz" = (/turf/open/floor/mineral/titanium,/turf/closed/wall/mineral/titanium/interior,/area/shuttle/escape) +"aKA" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aKB" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aKC" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aKD" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aKE" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aKF" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKG" = (/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKJ" = (/obj/machinery/camera{c_tag = "Arrivals Lounge"; dir = 2},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKK" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKL" = (/obj/structure/sign/map/left{pixel_y = 32},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKM" = (/obj/structure/sign/map/right{pixel_y = 32},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aKN" = (/obj/structure/table/glass,/obj/item/weapon/hatchet,/obj/item/weapon/cultivator,/obj/item/weapon/crowbar,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/device/plant_analyzer,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/green/side{dir = 4},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aKO" = (/obj/item/weapon/storage/bag/plants/portaseeder,/obj/structure/table/glass,/obj/item/device/plant_analyzer,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/light_switch{pixel_x = -6; pixel_y = -25},/turf/open/floor/plasteel/green/side{dir = 8},/area/hallway/secondary/construction{name = "\improper Garden"}) +"aKP" = (/obj/structure/table,/obj/item/weapon/wrench,/obj/item/device/analyzer,/turf/open/floor/plasteel,/area/storage/primary) +"aKQ" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/storage/primary) +"aKR" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/clothing/gloves/color/fyellow,/turf/open/floor/plasteel,/area/storage/primary) +"aKS" = (/obj/structure/table,/obj/item/weapon/storage/belt/utility,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/storage/primary) +"aKT" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/storage/primary) +"aKU" = (/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/storage/primary) +"aKV" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; freq = 1400; location = "Tool Storage"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/storage/primary) +"aKW" = (/obj/structure/disposalpipe/trunk,/obj/machinery/disposal/bin,/turf/open/floor/plasteel,/area/storage/primary) +"aKX" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aKY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/vault{dir = 5},/area/hallway/primary/port) +"aKZ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) +"aLa" = (/obj/machinery/button/door{id = "stationawaygate"; name = "Gateway Access Shutter Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "31"},/turf/open/floor/plasteel,/area/gateway) +"aLb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/gateway) +"aLc" = (/obj/machinery/light{dir = 4},/obj/structure/closet/secure_closet/exile,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/gateway) +"aLd" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/extinguisher,/obj/item/weapon/extinguisher,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aLe" = (/obj/machinery/camera{c_tag = "EVA South"; dir = 1},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aLf" = (/obj/structure/tank_dispenser/oxygen,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/ai_monitored/storage/eva) +"aLg" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/central) +"aLh" = (/turf/open/floor/plasteel/blue/side{dir = 9},/area/hallway/primary/central) +"aLi" = (/obj/machinery/light{dir = 1},/obj/machinery/camera{c_tag = "Central Hallway North"; dir = 2},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"aLj" = (/turf/open/floor/plasteel/blue/corner{dir = 1},/area/hallway/primary/central) +"aLk" = (/turf/open/floor/plasteel,/area/hallway/primary/central) +"aLl" = (/obj/structure/sign/directions/security{dir = 1; icon_state = "direction_sec"; pixel_x = 32; pixel_y = 40},/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_x = 32; pixel_y = 32},/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = 32; pixel_y = 24},/turf/open/floor/plasteel/blue/corner{dir = 4},/area/hallway/primary/central) +"aLm" = (/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"aLn" = (/turf/open/floor/plasteel/blue/side{dir = 5},/area/hallway/primary/central) +"aLo" = (/turf/closed/wall,/area/hallway/primary/central) +"aLp" = (/obj/machinery/vending/cola/random,/turf/open/floor/plasteel/black,/area/hallway/primary/central) +"aLq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side{dir = 8},/area/hallway/primary/central) +"aLr" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/hallway/primary/central) +"aLs" = (/obj/machinery/camera{c_tag = "Dormitory Toilets"; dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aLt" = (/obj/machinery/light/small,/turf/open/floor/plasteel/freezer,/area/crew_quarters/toilet) +"aLu" = (/obj/machinery/door/airlock{name = "Theatre Backstage"; req_access_txt = "46"},/turf/open/floor/plasteel,/area/crew_quarters/theatre) +"aLv" = (/obj/machinery/door/airlock/maintenance{name = "Bar Maintenance"; req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aLw" = (/turf/closed/wall,/area/crew_quarters/bar) +"aLx" = (/obj/item/weapon/reagent_containers/food/drinks/shaker,/obj/item/weapon/gun/ballistic/revolver/doublebarrel,/obj/structure/table/wood,/obj/item/stack/spacecash/c10,/obj/item/stack/spacecash/c100,/turf/open/floor/wood,/area/crew_quarters/bar) +"aLy" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/bar) +"aLz" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/bar) +"aLA" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Bar Delivery"; req_access_txt = "25"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/crew_quarters/bar) +"aLB" = (/turf/closed/wall,/area/crew_quarters/kitchen) +"aLC" = (/obj/machinery/door/airlock/maintenance{name = "Kitchen Maintenance"; req_access_txt = "28"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/crew_quarters/kitchen) +"aLD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/kitchen) +"aLE" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Kitchen"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/crew_quarters/kitchen) +"aLF" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Hydroponics"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/hydroponics) +"aLG" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Hydroponics Maintenance"; req_access_txt = "35"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/hydroponics) +"aLH" = (/obj/structure/table,/obj/machinery/reagentgrinder,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aLI" = (/obj/structure/table,/obj/item/weapon/book/manual/hydroponics_pod_people,/obj/item/weapon/paper/hydroponics,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aLJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/wood,/area/library) +"aLK" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/wood,/area/library) +"aLL" = (/obj/structure/table/wood,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/turf/open/floor/wood,/area/library) +"aLM" = (/obj/structure/table/wood,/obj/structure/disposalpipe/segment,/turf/open/floor/wood,/area/library) +"aLN" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/wood,/area/library) +"aLO" = (/obj/machinery/newscaster{pixel_x = 30},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/library) +"aLP" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/office) +"aLQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/button/crematorium{pixel_x = 25},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/office) +"aLR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/chapel/office) +"aLS" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp{pixel_y = 10},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aLT" = (/obj/structure/table/wood,/obj/item/weapon/pen,/obj/item/weapon/reagent_containers/food/drinks/bottle/holywater,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aLU" = (/obj/structure/table/wood,/obj/item/weapon/nullrod,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aLV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aLW" = (/obj/structure/closet/coffin,/obj/machinery/door/window/eastleft{dir = 8; name = "Coffin Storage"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/office) +"aLX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/xmastree,/turf/open/floor/plasteel/black,/area/chapel/main) +"aLY" = (/obj/structure/table/glass,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aLZ" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aMa" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aMb" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aMc" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aMd" = (/obj/machinery/computer/security,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aMe" = (/obj/structure/closet/emcloset,/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aMf" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/mineral/titanium/blue,/area/shuttle/arrival) +"aMg" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "burst_l"},/turf/open/floor/plasteel/black,/area/shuttle/arrival) +"aMh" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/neutral/corner{dir = 2},/area/hallway/secondary/entry) +"aMi" = (/turf/open/floor/plasteel/neutral/side,/area/hallway/secondary/entry) +"aMj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral/side,/area/hallway/secondary/entry) +"aMk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side,/area/hallway/secondary/entry) +"aMl" = (/turf/open/floor/plasteel/neutral/corner{dir = 8},/area/hallway/secondary/entry) +"aMm" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aMn" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Garden"},/turf/open/floor/plasteel,/area/hallway/secondary/construction{name = "\improper Garden"}) +"aMo" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/storage/primary) +"aMp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Primary Tool Storage"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/storage/primary) +"aMq" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Primary Tool Storage"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/primary) +"aMr" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/storage/primary) +"aMs" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aMt" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aMu" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aMv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/vault{dir = 5},/area/hallway/primary/port) +"aMw" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/structure/cable,/turf/open/floor/plating,/area/hallway/primary/port) +"aMx" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/primary/port) +"aMy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/fpmaint) +"aMz" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{icon_state = "door_closed"; lockdownbyai = 0; locked = 0; name = "Gateway Access"; req_access_txt = "62"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/gateway) +"aMA" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters{id = "stationawaygate"; name = "Gateway Access Shutters"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/gateway) +"aMB" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters{id = "stationawaygate"; name = "Gateway Access Shutters"},/turf/open/floor/plasteel,/area/gateway) +"aMC" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/gateway) +"aMD" = (/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"aME" = (/turf/open/floor/plasteel/blue/side{dir = 4},/area/hallway/primary/central) +"aMF" = (/obj/machinery/vending/snack/random,/turf/open/floor/plasteel/black,/area/hallway/primary/central) +"aMG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/neutral/side{dir = 4},/area/hallway/primary/central) +"aMH" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/light{dir = 1},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aMI" = (/turf/open/floor/wood,/area/crew_quarters/theatre) +"aMJ" = (/obj/machinery/airalarm{dir = 2; pixel_y = 24},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aMK" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/camera{c_tag = "Theatre Stage"; dir = 2},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aML" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aMM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aMN" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aMO" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aMP" = (/obj/machinery/reagentgrinder,/obj/structure/table/wood,/turf/open/floor/wood,/area/crew_quarters/bar) +"aMQ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/bar) +"aMR" = (/obj/machinery/camera{c_tag = "Bar Storage"},/turf/open/floor/wood,/area/crew_quarters/bar) +"aMS" = (/turf/open/floor/wood,/area/crew_quarters/bar) +"aMT" = (/obj/structure/closet/secure_closet/freezer/meat,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aMU" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aMV" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Kitchen Delivery"; req_access_txt = "28"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/crew_quarters/kitchen) +"aMW" = (/obj/machinery/door/window/eastright{name = "Hydroponics Delivery"; req_access_txt = "35"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/hydroponics) +"aMX" = (/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aMY" = (/obj/structure/sink{pixel_y = 30},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aMZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aNa" = (/obj/structure/closet/wardrobe/botanist,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aNb" = (/obj/structure/closet/secure_closet/hydroponics,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aNc" = (/obj/machinery/airalarm{pixel_y = 24},/obj/machinery/camera{c_tag = "Hydroponics Storage"},/obj/machinery/light/small{dir = 1},/obj/machinery/plantgenes,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aNd" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aNe" = (/obj/structure/table,/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 0; pixel_y = 3},/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 8; pixel_y = 8},/obj/item/weapon/reagent_containers/spray/plantbgone{pixel_x = 13; pixel_y = 5},/obj/item/weapon/watertank,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aNf" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/wood,/area/library) +"aNg" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/library) +"aNh" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/library) +"aNi" = (/obj/structure/table/wood,/obj/structure/disposalpipe/segment,/obj/item/toy/cards/deck/cas,/obj/item/toy/cards/deck/cas/black{pixel_x = -2; pixel_y = 6},/turf/open/floor/wood,/area/library) +"aNj" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/wood,/area/library) +"aNk" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera{c_tag = "Chapel Crematorium"; dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/chapel/office) +"aNl" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/office) +"aNm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock{name = "Crematorium"; req_access_txt = "27"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/office) +"aNn" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aNo" = (/obj/structure/chair{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aNp" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aNq" = (/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aNr" = (/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/black,/area/chapel/main) +"aNs" = (/obj/machinery/computer/crew,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aNt" = (/obj/structure/chair{dir = 8},/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aNu" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aNv" = (/obj/machinery/button/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = -24},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aNw" = (/obj/machinery/computer/communications,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aNx" = (/obj/machinery/door/airlock/titanium{name = "Arrivals Shuttle Airlock"},/obj/docking_port/mobile{dwidth = 5; height = 7; id = "arrival"; name = "arrival shuttle"; port_angle = -90; preferred_direction = 8; width = 15},/obj/docking_port/stationary{dwidth = 5; height = 7; id = "arrival_home"; name = "port bay 1"; width = 15},/turf/open/floor/plating,/area/shuttle/arrival) +"aNy" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aNz" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) +"aNA" = (/obj/structure/chair/comfy/beige,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aNB" = (/obj/structure/chair/comfy/beige,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aNC" = (/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aND" = (/obj/structure/chair/comfy/beige,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aNE" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aNF" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) +"aNG" = (/turf/open/floor/plasteel/neutral/side{dir = 8},/area/hallway/secondary/entry) +"aNH" = (/obj/machinery/door/firedoor,/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aNI" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNJ" = (/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNK" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/apc{name = "Port Hall APC"; dir = 1; pixel_y = 26},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNM" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNN" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNO" = (/obj/machinery/light{dir = 1},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNP" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNQ" = (/obj/machinery/camera{c_tag = "Port Hallway 2"; dir = 2},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNR" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNU" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNV" = (/obj/machinery/light{dir = 1},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNY" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aNZ" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOb" = (/obj/machinery/camera{c_tag = "Central Hallway North-West"; dir = 2},/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOc" = (/obj/machinery/light{dir = 1},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOd" = (/turf/open/floor/plasteel/blue/corner{dir = 4},/area/hallway/primary/central) +"aOe" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOf" = (/turf/open/floor/plasteel{icon_state = "L1"},/area/hallway/primary/central) +"aOg" = (/turf/open/floor/plasteel{icon_state = "L3"},/area/hallway/primary/central) +"aOh" = (/turf/open/floor/plasteel{icon_state = "L5"},/area/hallway/primary/central) +"aOi" = (/turf/open/floor/plasteel{icon_state = "L7"},/area/hallway/primary/central) +"aOj" = (/turf/open/floor/plasteel{icon_state = "L9"},/area/hallway/primary/central) +"aOk" = (/turf/open/floor/plasteel{icon_state = "L11"},/area/hallway/primary/central) +"aOl" = (/turf/open/floor/plasteel{desc = ""; icon_state = "L13"; name = "floor"},/area/hallway/primary/central) +"aOm" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/hallway/primary/central) +"aOo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/hallway/primary/central) +"aOp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/hallway/primary/central) +"aOq" = (/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/hallway/primary/central) +"aOr" = (/obj/machinery/camera{c_tag = "Central Hallway North-East"; dir = 2},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOs" = (/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOt" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOu" = (/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aOv" = (/obj/structure/piano{tag = "icon-piano"; icon_state = "piano"},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aOw" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aOx" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aOy" = (/obj/structure/window/reinforced{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aOz" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aOA" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aOB" = (/obj/machinery/computer/slot_machine,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aOC" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/obj/structure/reagent_dispensers/beerkeg,/turf/open/floor/wood,/area/crew_quarters/bar) +"aOD" = (/obj/structure/disposalpipe/segment,/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/bar) +"aOE" = (/obj/machinery/vending/cola/random,/turf/open/floor/wood,/area/crew_quarters/bar) +"aOF" = (/obj/machinery/vending/coffee,/turf/open/floor/wood,/area/crew_quarters/bar) +"aOG" = (/obj/machinery/icecream_vat,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aOH" = (/obj/machinery/chem_master/condimaster{name = "CondiMaster Neo"},/obj/machinery/camera{c_tag = "Kitchen Cold Room"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aOI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aOJ" = (/obj/structure/closet/crate/hydroponics,/obj/item/weapon/shovel/spade,/obj/item/weapon/wrench,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/wirecutters,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOK" = (/obj/machinery/light/small,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOL" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aON" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = -31},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOQ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOR" = (/obj/machinery/chem_master/condimaster,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aOS" = (/turf/open/floor/wood,/area/library) +"aOT" = (/obj/structure/chair/office/dark{dir = 1},/turf/open/floor/wood,/area/library) +"aOU" = (/obj/structure/chair/office/dark{dir = 1},/obj/structure/disposalpipe/segment,/turf/open/floor/wood,/area/library) +"aOV" = (/obj/structure/bodycontainer/morgue,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/black,/area/chapel/office) +"aOW" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/black,/area/chapel/office) +"aOX" = (/obj/structure/table/wood,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/obj/item/clothing/under/burial,/turf/open/floor/plasteel/grimy,/area/chapel/office) +"aOY" = (/obj/machinery/camera{c_tag = "Chapel North"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/black,/area/chapel/main) +"aOZ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/chapel/main) +"aPa" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/chapel/main) +"aPb" = (/turf/closed/wall,/area/hallway/secondary/exit) +"aPc" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/exit) +"aPd" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Cockpit"; req_access_txt = "19"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aPe" = (/obj/machinery/status_display,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) +"aPf" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aPg" = (/obj/structure/table/wood,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aPh" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/snacks/chips,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/hallway/secondary/entry) +"aPi" = (/turf/open/floor/carpet,/area/hallway/secondary/entry) +"aPj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/hallway/secondary/entry) +"aPk" = (/obj/structure/chair/comfy/beige{dir = 8},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aPl" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) +"aPm" = (/turf/open/floor/goonplaque,/area/hallway/secondary/entry) +"aPn" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=CHW"; location = "Lockers"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPo" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPp" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPs" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPt" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPu" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPv" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPx" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPA" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPB" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aPC" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPE" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPF" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPG" = (/turf/open/floor/plasteel{icon_state = "L2"},/area/hallway/primary/central) +"aPH" = (/turf/open/floor/plasteel{icon_state = "L4"},/area/hallway/primary/central) +"aPI" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Lockers"; location = "EVA"},/turf/open/floor/plasteel{icon_state = "L6"},/area/hallway/primary/central) +"aPJ" = (/turf/open/floor/plasteel{icon_state = "L8"},/area/hallway/primary/central) +"aPK" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Security"; location = "EVA2"},/turf/open/floor/plasteel{icon_state = "L10"},/area/hallway/primary/central) +"aPL" = (/turf/open/floor/plasteel{icon_state = "L12"},/area/hallway/primary/central) +"aPM" = (/turf/open/floor/plasteel{desc = ""; icon_state = "L14"},/area/hallway/primary/central) +"aPN" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPO" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=EVA2"; location = "Dorm"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aPP" = (/obj/structure/table/wood,/obj/item/device/instrument/guitar{pixel_x = -7},/obj/item/device/instrument/eguitar{pixel_x = 5},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPQ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPT" = (/obj/machinery/door/window{dir = 4; name = "Theatre Stage"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aPU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aPV" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aPW" = (/obj/machinery/computer/slot_machine,/obj/machinery/light/small{dir = 4},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aPX" = (/obj/structure/closet/secure_closet/bar{req_access_txt = "25"},/turf/open/floor/wood,/area/crew_quarters/bar) +"aPY" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/wood,/area/crew_quarters/bar) +"aPZ" = (/obj/structure/closet/gmcloset,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/cable_coil,/obj/item/device/flashlight/lamp,/obj/item/device/flashlight/lamp/green,/turf/open/floor/wood,/area/crew_quarters/bar) +"aQa" = (/obj/structure/kitchenspike,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aQb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/hostile/retaliate/goat{name = "Pete"},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aQc" = (/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aQd" = (/obj/machinery/light/small{dir = 4},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/chefcloset,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aQe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/hydroponics) +"aQf" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hydroponics) +"aQg" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Hydroponics"; req_access_txt = "35"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/hydrofloor,/area/hydroponics) +"aQh" = (/obj/machinery/bookbinder{pixel_y = 0},/turf/open/floor/wood,/area/library) +"aQi" = (/obj/structure/disposalpipe/segment,/turf/open/floor/wood,/area/library) +"aQj" = (/obj/machinery/photocopier,/turf/open/floor/wood,/area/library) +"aQk" = (/obj/machinery/door/airlock/glass{name = "Chapel Office"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/office) +"aQl" = (/obj/machinery/door/morgue{name = "Confession Booth (Chaplain)"; req_access_txt = "22"},/turf/open/floor/plasteel/black,/area/chapel/main) +"aQm" = (/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1480; name = "Confessional Intercom"; pixel_x = 25},/obj/structure/chair,/turf/open/floor/plasteel/black,/area/chapel/main) +"aQn" = (/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 9},/area/hallway/secondary/exit) +"aQo" = (/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 1},/area/hallway/secondary/exit) +"aQp" = (/obj/machinery/light{dir = 1},/obj/structure/chair,/turf/open/floor/plasteel/red/side{dir = 1},/area/hallway/secondary/exit) +"aQq" = (/obj/structure/chair,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aQr" = (/obj/structure/chair,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aQs" = (/obj/structure/chair,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) +"aQt" = (/obj/machinery/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = 24},/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aQu" = (/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aQv" = (/obj/structure/closet/emcloset,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aQw" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aQx" = (/obj/machinery/vending/snack/random,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aQy" = (/obj/item/device/radio/beacon,/obj/machinery/camera{c_tag = "Arrivals Bay 1 South"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aQz" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aQA" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aQB" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/cigarettes{pixel_y = 2},/obj/item/weapon/lighter/greyscale{pixel_x = 4; pixel_y = 2},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aQC" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/hallway/secondary/entry) +"aQD" = (/obj/machinery/vending/cola/random,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) +"aQE" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQF" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQG" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQH" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQI" = (/obj/machinery/camera{c_tag = "Port Hallway 3"; dir = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQJ" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQK" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Port Hallway"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQN" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQW" = (/obj/structure/sign/directions/security{dir = 4; icon_state = "direction_sec"; pixel_x = 32; pixel_y = -24},/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = 32; pixel_y = -32},/obj/structure/sign/directions/engineering{pixel_x = 32; pixel_y = -40},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQX" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aQY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aQZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aRa" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=QM"; location = "CHW"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aRb" = (/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aRc" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aRd" = (/obj/machinery/light,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aRe" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/machinery/door/firedoor,/obj/machinery/light,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"aRf" = (/obj/structure/window/reinforced,/obj/structure/table/wood,/obj/item/device/instrument/violin,/turf/open/floor/wood,/area/crew_quarters/theatre) +"aRg" = (/obj/structure/window/reinforced,/turf/open/floor/wood,/area/crew_quarters/theatre) +"aRh" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/wood,/area/crew_quarters/theatre) +"aRi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aRj" = (/obj/machinery/door/airlock{name = "Bar Storage"; req_access_txt = "25"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel{icon_state = "wood"},/area/crew_quarters/bar) +"aRk" = (/obj/effect/landmark{name = "blobstart"},/obj/item/toy/beach_ball/holoball,/turf/open/floor/plating,/area/crew_quarters/bar) +"aRl" = (/obj/structure/kitchenspike,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aRm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aRn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aRo" = (/obj/machinery/gibber,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aRp" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plasteel/black,/area/hydroponics) +"aRq" = (/obj/machinery/requests_console{department = "Hydroponics"; departmentType = 2; pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/hydroponics) +"aRr" = (/obj/machinery/hydroponics/constructable,/turf/open/floor/plasteel/black,/area/hydroponics) +"aRs" = (/obj/machinery/hydroponics/constructable,/obj/machinery/camera{c_tag = "Hydroponics North"; dir = 2},/turf/open/floor/plasteel/black,/area/hydroponics) +"aRt" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/hydroponics) +"aRu" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/black,/area/hydroponics) +"aRv" = (/obj/structure/bookcase/random/religion,/turf/open/floor/wood,/area/library) +"aRw" = (/turf/open/floor/carpet,/area/library) +"aRx" = (/obj/structure/disposalpipe/segment,/turf/open/floor/carpet,/area/library) +"aRy" = (/obj/structure/bookcase/random/reference,/turf/open/floor/wood,/area/library) +"aRz" = (/obj/machinery/computer/libraryconsole,/obj/structure/table/wood,/turf/open/floor/wood,/area/library) +"aRA" = (/obj/structure/bookcase{name = "Forbidden Knowledge"},/turf/open/floor/engine/cult,/area/library) +"aRB" = (/obj/structure/table/wood,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/device/camera,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/engine/cult,/area/library) +"aRC" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen/invisible,/turf/open/floor/engine/cult,/area/library) +"aRD" = (/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel/black,/area/chapel/main) +"aRE" = (/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aRF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) +"aRG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aRH" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/turf/open/floor/plasteel/black,/area/chapel/main) +"aRI" = (/obj/machinery/camera{c_tag = "Escape Arm Holding Area"; dir = 4},/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/open/floor/plasteel/red/side{dir = 8},/area/hallway/secondary/exit) +"aRJ" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aRK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aRL" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aRM" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aRN" = (/obj/machinery/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = 6},/obj/machinery/button/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = -6},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) +"aRO" = (/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) +"aRP" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Brig"; req_access_txt = "2"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aRQ" = (/turf/closed/wall/mineral/titanium,/area/shuttle/pod_1) +"aRR" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 4; icon_state = "propulsion"; tag = "icon-propulsion (WEST)"},/turf/closed/wall/mineral/titanium,/area/shuttle/pod_1) +"aRS" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aRT" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aRU" = (/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aRV" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aRW" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aRX" = (/obj/structure/chair/comfy/beige{dir = 1; icon_state = "comfychair"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/grimy,/area/hallway/secondary/entry) +"aRY" = (/obj/machinery/vending/snack/random,/turf/open/floor/plasteel/black,/area/hallway/secondary/entry) +"aRZ" = (/turf/closed/wall,/area/maintenance/port) +"aSa" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"aSb" = (/turf/closed/wall,/area/crew_quarters/locker) +"aSc" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aSd" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aSe" = (/obj/machinery/status_display{density = 0; layer = 4},/turf/closed/wall,/area/crew_quarters/locker) +"aSf" = (/turf/closed/wall,/area/storage/art) +"aSg" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/storage/art) +"aSh" = (/obj/machinery/door/airlock/glass{name = "Art Storage"},/turf/open/floor/plasteel,/area/storage/art) +"aSi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/storage/art) +"aSj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"aSk" = (/turf/closed/wall,/area/storage/emergency2) +"aSl" = (/obj/structure/table,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSm" = (/obj/structure/table,/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSn" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/port) +"aSq" = (/turf/closed/wall,/area/storage/tools) +"aSr" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aSs" = (/turf/closed/wall/r_wall,/area/bridge) +"aSt" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) +"aSu" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSv" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/status_display{density = 0; layer = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSw" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSx" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/status_display{density = 0; layer = 4},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSy" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; layer = 2.9; name = "bridge blast door"},/turf/open/floor/plating,/area/bridge) +"aSz" = (/obj/structure/table,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -31},/obj/item/clothing/head/hardhat/cakehat,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSA" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSB" = (/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSD" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/crew_quarters/bar) +"aSE" = (/obj/machinery/disposal/bin,/obj/structure/sign/securearea{desc = "Under the painting a plaque reads: 'While the meat grinder may not have spared you, fear not. Not one part of you has gone to waste... You were delicious.'"; icon_state = "monkey_painting"; name = "Mr. Deempisi portrait"; pixel_x = -28; pixel_y = -4},/obj/structure/disposalpipe/trunk{dir = 4},/obj/machinery/button/door{id = "barShutters"; name = "bar shutters"; pixel_x = 4; pixel_y = 28},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSF" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSG" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/table,/obj/machinery/chem_dispenser/drinks/beer,/obj/item/device/radio/intercom{pixel_y = 25},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aSH" = (/obj/machinery/door/airlock{name = "Kitchen cold room"; req_access_txt = "28"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/showroomfloor,/area/crew_quarters/kitchen) +"aSI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/green/side{dir = 9},/area/hydroponics) +"aSJ" = (/turf/open/floor/plasteel/green/side{dir = 1},/area/hydroponics) +"aSK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/green/side{dir = 5},/area/hydroponics) +"aSL" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/wood,/area/library) +"aSM" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/wood,/area/library) +"aSN" = (/obj/machinery/light/small,/turf/open/floor/engine/cult,/area/library) +"aSO" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/chair/comfy/brown{dir = 1},/turf/open/floor/engine/cult,/area/library) +"aSP" = (/obj/structure/destructible/cult/tome,/obj/item/clothing/under/suit_jacket/red,/obj/item/weapon/book/codex_gigas,/turf/open/floor/engine/cult,/area/library) +"aSQ" = (/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aSR" = (/obj/structure/table/wood,/turf/open/floor/plasteel/black,/area/chapel/main) +"aSS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aST" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aSU" = (/obj/machinery/door/morgue{name = "Confession Booth"},/turf/open/floor/plasteel/black,/area/chapel/main) +"aSV" = (/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1480; name = "Confessional Intercom"; pixel_x = 25},/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/black,/area/chapel/main) +"aSW" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/hallway/secondary/exit) +"aSX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aSY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aSZ" = (/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aTa" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Security Escape Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/hallway/secondary/exit) +"aTb" = (/turf/open/floor/plating,/area/hallway/secondary/exit) +"aTc" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/hallway/secondary/exit) +"aTd" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Security Escape Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/hallway/secondary/exit) +"aTe" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) +"aTf" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) +"aTg" = (/obj/structure/chair,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aTh" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aTi" = (/obj/structure/table,/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aTj" = (/obj/docking_port/stationary/random{dir = 8; id = "pod_asteroid1"; name = "asteroid"},/turf/open/space,/area/space) +"aTk" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_1) +"aTl" = (/obj/machinery/computer/shuttle/pod{pixel_x = 0; pixel_y = -32; possible_destinations = "pod_asteroid1"; shuttleId = "pod1"},/obj/structure/chair{dir = 8},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_1) +"aTm" = (/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -28},/obj/item/device/radio/intercom{pixel_x = 0; pixel_y = 25},/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_1) +"aTn" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 8; id = "pod1"; name = "escape pod 1"; port_angle = 180},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_1) +"aTo" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aTp" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aTq" = (/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aTr" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/hallway/secondary/entry) +"aTs" = (/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTt" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTx" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/neutral/side{dir = 1},/area/hallway/secondary/entry) +"aTy" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/hallway/secondary/entry) +"aTz" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/port) +"aTA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/port) +"aTB" = (/obj/structure/closet/wardrobe/white,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTC" = (/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTD" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTE" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTF" = (/obj/machinery/vending/cola/random,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTG" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTH" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTI" = (/obj/machinery/vending/clothing,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTJ" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTK" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTL" = (/obj/structure/closet/secure_closet/personal,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aTM" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/structure/table,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/turf/open/floor/plasteel,/area/storage/art) +"aTN" = (/turf/open/floor/plasteel,/area/storage/art) +"aTO" = (/obj/machinery/light/small{dir = 4},/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel,/area/storage/art) +"aTP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"aTQ" = (/obj/machinery/door/airlock{name = "Port Emergency Storage"; req_access_txt = "0"},/turf/open/floor/plating,/area/storage/emergency2) +"aTR" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/storage/tools) +"aTS" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Auxiliary Tool Storage"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/tools) +"aTT" = (/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aTU" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/secure/briefcase,/obj/item/weapon/storage/box/PDAs{pixel_x = 4; pixel_y = 4},/obj/item/weapon/storage/box/ids,/turf/open/floor/plasteel,/area/bridge) +"aTV" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/bridge) +"aTW" = (/obj/machinery/computer/station_alert,/turf/open/floor/plasteel/yellow/side,/area/bridge) +"aTX" = (/obj/machinery/computer/monitor{name = "bridge power monitoring console"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/bridge) +"aTY" = (/obj/machinery/computer/shuttle/labor,/turf/open/floor/plasteel/blue/side{dir = 10},/area/bridge) +"aTZ" = (/obj/machinery/computer/communications,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aUa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/computer/shuttle/mining,/turf/open/floor/plasteel/blue/side{dir = 6},/area/bridge) +"aUb" = (/obj/machinery/modular_computer/console/preset/command,/turf/open/floor/plasteel/green/side{dir = 10},/area/bridge) +"aUc" = (/obj/machinery/computer/crew,/turf/open/floor/plasteel/green/side{dir = 2},/area/bridge) +"aUd" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/green/side{dir = 6},/area/bridge) +"aUe" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/emergency,/obj/item/weapon/wrench,/obj/item/device/assembly/timer,/obj/item/device/assembly/signaler,/obj/item/device/assembly/signaler,/turf/open/floor/plasteel,/area/bridge) +"aUf" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aUg" = (/obj/effect/landmark/event_spawn,/turf/closed/wall,/area/crew_quarters/bar) +"aUh" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/structure/chair/stool,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUi" = (/obj/structure/chair,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUj" = (/obj/structure/chair/stool/bar,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUk" = (/obj/structure/table/reinforced,/obj/item/weapon/lighter,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUl" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUm" = (/obj/machinery/vending/boozeomat,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aUn" = (/obj/machinery/vending/dinnerware,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUo" = (/obj/structure/sink/kitchen{pixel_y = 28},/obj/machinery/food_cart,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUp" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUr" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/camera{c_tag = "Kitchen"; dir = 2},/obj/structure/closet/secure_closet/freezer/fridge,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUs" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/obj/machinery/airalarm{pixel_y = 24},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUt" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUu" = (/obj/structure/closet/secure_closet/freezer/kitchen,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aUv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/green/side{dir = 8},/area/hydroponics) +"aUw" = (/turf/open/floor/plasteel,/area/hydroponics) +"aUx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/green/side{dir = 4},/area/hydroponics) +"aUy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/apc{dir = 4; name = "Library APC"; pixel_x = 24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/library) +"aUz" = (/obj/structure/bookcase/random/fiction,/turf/open/floor/wood,/area/library) +"aUA" = (/obj/structure/bookcase/random/nonfiction,/turf/open/floor/wood,/area/library) +"aUB" = (/obj/machinery/camera{c_tag = "Library South"; dir = 8; network = list("SS13")},/turf/open/floor/wood,/area/library) +"aUC" = (/obj/machinery/door/morgue{name = "Private Study"; req_access_txt = "37"},/turf/open/floor/engine/cult,/area/library) +"aUD" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/black,/area/chapel/main) +"aUE" = (/turf/open/floor/carpet,/area/chapel/main) +"aUF" = (/obj/effect/landmark/event_spawn,/turf/open/floor/carpet,/area/chapel/main) +"aUG" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/exit) +"aUH" = (/obj/machinery/door/airlock/glass_security{name = "Holding Area"; req_access_txt = "2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"aUI" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/exit) +"aUJ" = (/turf/closed/wall/mineral/titanium/nodiagonal,/area/shuttle/escape) +"aUK" = (/obj/machinery/camera{c_tag = "Arrivals Escape Pod 1"; dir = 8},/obj/machinery/light/small,/turf/open/floor/plating,/area/hallway/secondary/entry) +"aUL" = (/obj/machinery/light,/turf/open/floor/plasteel/arrival{dir = 2},/area/hallway/secondary/entry) +"aUM" = (/turf/open/floor/plasteel/arrival{dir = 2},/area/hallway/secondary/entry) +"aUN" = (/turf/open/floor/plasteel/white/corner{dir = 8},/area/hallway/secondary/entry) +"aUO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUP" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUQ" = (/obj/machinery/firealarm{dir = 2; pixel_y = -24},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUS" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUT" = (/obj/machinery/camera{c_tag = "Arrivals Hallway"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aUU" = (/turf/open/floor/plating,/area/maintenance/port) +"aUV" = (/obj/structure/closet/wardrobe/mixed,/obj/item/device/radio/intercom{dir = 0; name = "Station Intercom (General)"; pixel_x = -27},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aUW" = (/obj/effect/landmark{name = "lightsout"},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aUX" = (/obj/structure/table,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil,/obj/item/weapon/paper_bin/construction,/obj/item/stack/cable_coil,/turf/open/floor/plasteel,/area/storage/art) +"aUY" = (/obj/machinery/light_switch{pixel_y = 28},/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plating,/area/storage/emergency2) +"aUZ" = (/turf/open/floor/plating,/area/storage/emergency2) +"aVa" = (/obj/item/weapon/extinguisher,/turf/open/floor/plating,/area/storage/emergency2) +"aVb" = (/obj/machinery/power/apc{dir = 1; name = "Auxiliary Tool Storage APC"; pixel_y = 24},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel,/area/storage/tools) +"aVc" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/rack,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/weapon/electronics/apc,/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel,/area/storage/tools) +"aVd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/storage/tools) +"aVe" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera{c_tag = "Auxiliary Tool Storage"; dir = 2},/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plasteel,/area/storage/tools) +"aVf" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/emergency,/turf/open/floor/plasteel,/area/storage/tools) +"aVg" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tools) +"aVh" = (/obj/structure/table/reinforced,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel,/area/bridge) +"aVi" = (/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/bridge) +"aVj" = (/obj/structure/chair{dir = 1; name = "Engineering Station"},/turf/open/floor/plasteel,/area/bridge) +"aVk" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/bridge) +"aVl" = (/obj/structure/table/reinforced,/obj/item/device/aicard,/obj/item/device/multitool,/turf/open/floor/plasteel/blue/side{dir = 8},/area/bridge) +"aVm" = (/obj/structure/chair{dir = 1; name = "Command Station"},/obj/machinery/button/door{id = "bridge blast"; name = "Bridge Blast Door Control"; pixel_x = 28; pixel_y = -2; req_access_txt = "19"},/obj/machinery/keycard_auth{pixel_x = 29; pixel_y = 8},/turf/open/floor/plasteel,/area/bridge) +"aVn" = (/obj/structure/table/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/blue/side{dir = 4},/area/bridge) +"aVo" = (/turf/open/floor/plasteel/green/corner{dir = 1},/area/bridge) +"aVp" = (/obj/structure/chair{dir = 1; name = "Crew Station"},/turf/open/floor/plasteel,/area/bridge) +"aVq" = (/turf/open/floor/plasteel/green/corner{dir = 4},/area/bridge) +"aVr" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel,/area/bridge) +"aVs" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/door/poddoor/preopen{id = "barShutters"; name = "privacy shutters"},/turf/open/floor/plating,/area/crew_quarters/bar) +"aVt" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVu" = (/obj/structure/table,/obj/item/weapon/kitchen/fork,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVv" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVw" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVx" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVy" = (/obj/structure/table/wood/poker,/obj/item/toy/cards/deck,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVz" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVA" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVB" = (/mob/living/carbon/monkey/punpun,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aVC" = (/obj/machinery/door/airlock/glass{name = "Kitchen"; req_access_txt = "28"},/turf/open/floor/plasteel/bar,/area/crew_quarters/kitchen) +"aVD" = (/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVF" = (/obj/effect/landmark/start{name = "Cook"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVG" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVJ" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aVK" = (/obj/machinery/smartfridge,/turf/closed/wall,/area/crew_quarters/kitchen) +"aVL" = (/turf/open/floor/plasteel/black,/area/hydroponics) +"aVM" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/green/side{dir = 8},/area/hydroponics) +"aVN" = (/obj/machinery/seed_extractor,/turf/open/floor/plasteel,/area/hydroponics) +"aVO" = (/obj/machinery/biogenerator,/turf/open/floor/plasteel,/area/hydroponics) +"aVP" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/green/side{dir = 4},/area/hydroponics) +"aVQ" = (/obj/machinery/door/window/northright{base_state = "right"; dir = 8; icon_state = "right"; name = "Library Desk Door"; req_access_txt = "37"},/turf/open/floor/wood,/area/library) +"aVR" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/wood,/area/library) +"aVS" = (/obj/structure/table/wood,/obj/machinery/computer/libraryconsole/bookmanagement{pixel_y = 0},/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/wood,/area/library) +"aVT" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aVU" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aVV" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aVW" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel,/area/chapel/main) +"aVX" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/black,/area/chapel/main) +"aVY" = (/obj/machinery/vending/cola/random,/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/escape{dir = 9},/area/hallway/secondary/exit) +"aVZ" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/hallway/secondary/exit) +"aWa" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Escape Airlock"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/hallway/secondary/exit) +"aWb" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) +"aWc" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/obj/docking_port/mobile/emergency{name = "Box emergency shuttle"; timid = 0},/obj/docking_port/stationary{dir = 4; dwidth = 12; height = 18; id = "emergency_home"; name = "BoxStation emergency evac bay"; turf_type = /turf/open/space; width = 32},/turf/open/floor/plating,/area/shuttle/escape) +"aWd" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aWe" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"aWf" = (/obj/machinery/door/firedoor,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aWg" = (/turf/closed/wall,/area/security/vacantoffice) +"aWh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/security/vacantoffice) +"aWi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/security/vacantoffice) +"aWj" = (/turf/closed/wall,/area/security/vacantoffice{name = "Vacant Office A"}) +"aWk" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/port) +"aWl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/port) +"aWm" = (/obj/structure/closet/wardrobe/green,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWn" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWo" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWp" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWq" = (/obj/structure/table,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWr" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWs" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWt" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWu" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/camera{c_tag = "Locker Room East"; dir = 8; network = list("SS13")},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aWv" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/turf/open/floor/plasteel,/area/storage/art) +"aWw" = (/obj/structure/table,/obj/item/weapon/storage/crayons,/obj/item/weapon/storage/crayons,/turf/open/floor/plasteel,/area/storage/art) +"aWx" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/structure/table,/obj/item/device/camera_film,/obj/item/device/camera,/turf/open/floor/plasteel,/area/storage/art) +"aWy" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/storage/emergency2) +"aWz" = (/obj/machinery/light/small,/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/storage/emergency2) +"aWA" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/storage/emergency2) +"aWB" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/turf/open/floor/plating,/area/storage/emergency2) +"aWC" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/open/floor/plasteel,/area/storage/tools) +"aWD" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel,/area/storage/tools) +"aWE" = (/turf/open/floor/plasteel,/area/storage/tools) +"aWF" = (/obj/structure/rack,/obj/item/clothing/gloves/color/fyellow,/obj/item/clothing/suit/hazardvest,/obj/item/device/multitool,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plasteel,/area/storage/tools) +"aWG" = (/turf/closed/wall/r_wall,/area/hallway/primary/central) +"aWH" = (/obj/machinery/computer/prisoner,/turf/open/floor/plasteel/red/side{dir = 10},/area/bridge) +"aWI" = (/obj/machinery/computer/security,/turf/open/floor/plasteel/red/side,/area/bridge) +"aWJ" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel/red/side{dir = 6},/area/bridge) +"aWK" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/turf/open/floor/plasteel,/area/bridge) +"aWL" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/bridge) +"aWM" = (/turf/open/floor/plasteel,/area/bridge) +"aWN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/bridge) +"aWO" = (/turf/open/floor/plasteel/blue/corner{dir = 1},/area/bridge) +"aWP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/blue/corner{dir = 4},/area/bridge) +"aWQ" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/bridge) +"aWR" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/bridge) +"aWS" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel,/area/bridge) +"aWT" = (/obj/machinery/computer/teleporter,/turf/open/floor/plasteel/brown{dir = 10},/area/bridge) +"aWU" = (/obj/machinery/computer/cargo/request,/turf/open/floor/plasteel/brown{dir = 2},/area/bridge) +"aWV" = (/obj/machinery/computer/security/mining{network = list("MINE","AuxBase")},/turf/open/floor/plasteel/brown{dir = 6},/area/bridge) +"aWW" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/camera{c_tag = "Bar West"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aWX" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aWY" = (/obj/effect/landmark/event_spawn,/obj/effect/landmark/xmastree,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aWZ" = (/obj/structure/table/reinforced,/obj/item/clothing/head/that{throwforce = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aXa" = (/obj/effect/landmark/start{name = "Bartender"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aXb" = (/obj/machinery/requests_console{department = "Bar"; departmentType = 2; pixel_x = 30; pixel_y = 0},/obj/machinery/camera{c_tag = "Bar"; dir = 8; network = list("SS13")},/obj/structure/table,/obj/machinery/chem_dispenser/drinks,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aXc" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/snacks/mint,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aXd" = (/obj/structure/table,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aXe" = (/obj/structure/table,/obj/item/weapon/kitchen/rollingpin,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aXf" = (/obj/structure/table,/obj/item/weapon/book/manual/chef_recipes,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aXg" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aXh" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastleft{name = "Hydroponics Desk"; req_access_txt = "35"},/obj/machinery/door/firedoor,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/crew_quarters/kitchen) +"aXi" = (/turf/open/floor/plasteel/vault{dir = 8},/area/hydroponics) +"aXj" = (/turf/open/floor/plasteel/green/side{dir = 8},/area/hydroponics) +"aXk" = (/obj/machinery/vending/hydronutrients,/turf/open/floor/plasteel,/area/hydroponics) +"aXl" = (/obj/machinery/vending/hydroseeds{slogan_delay = 700},/turf/open/floor/plasteel,/area/hydroponics) +"aXm" = (/turf/open/floor/plasteel/green/side{dir = 4},/area/hydroponics) +"aXn" = (/obj/machinery/hydroponics/constructable,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/black,/area/hydroponics) +"aXo" = (/obj/structure/bookcase/random/adult,/turf/open/floor/wood,/area/library) +"aXp" = (/obj/structure/chair/comfy/black,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/wood,/area/library) +"aXq" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green{pixel_x = 1; pixel_y = 5},/turf/open/floor/wood,/area/library) +"aXr" = (/obj/effect/landmark/start{name = "Librarian"},/obj/structure/chair/office/dark,/turf/open/floor/wood,/area/library) +"aXs" = (/obj/machinery/libraryscanner,/turf/open/floor/wood,/area/library) +"aXt" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel/black,/area/chapel/main) +"aXu" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) +"aXv" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aXw" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 1},/area/chapel/main) +"aXx" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/chapel{dir = 4},/area/chapel/main) +"aXy" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"aXz" = (/obj/structure/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aXA" = (/obj/structure/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aXB" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"aXC" = (/turf/closed/wall/mineral/titanium,/area/shuttle/transport) +"aXD" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/transport) +"aXE" = (/obj/machinery/door/airlock/external,/turf/open/floor/pod/dark,/area/shuttle/transport) +"aXF" = (/obj/machinery/camera{c_tag = "Arrivals Bay 2"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"aXG" = (/turf/open/floor/wood,/area/security/vacantoffice) +"aXH" = (/obj/structure/chair/office/dark{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/security/vacantoffice) +"aXI" = (/obj/structure/table/wood,/turf/open/floor/wood,/area/security/vacantoffice) +"aXJ" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/wood,/area/security/vacantoffice) +"aXK" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/wood,/area/security/vacantoffice) +"aXL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/security/vacantoffice) +"aXM" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/port) +"aXN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/port) +"aXO" = (/obj/structure/closet/wardrobe/grey,/obj/machinery/requests_console{department = "Locker Room"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXR" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXS" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXT" = (/obj/structure/table,/obj/item/clothing/head/soft/grey{pixel_x = -2; pixel_y = 3},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXU" = (/obj/structure/table,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXV" = (/obj/structure/chair/stool{pixel_y = 8},/obj/effect/landmark/start{name = "Assistant"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aXZ" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/closet/toolcloset,/turf/open/floor/plasteel,/area/storage/tools) +"aYa" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel,/area/storage/tools) +"aYb" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/light/small,/turf/open/floor/plasteel,/area/storage/tools) +"aYc" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/storage/tools) +"aYd" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 5},/area/hallway/primary/central) +"aYe" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) +"aYf" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) +"aYg" = (/obj/machinery/camera{c_tag = "Bridge West"; dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/red/corner{dir = 1},/area/bridge) +"aYh" = (/obj/structure/chair{dir = 1; name = "Security Station"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/corner{dir = 4},/area/bridge) +"aYj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYk" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/bridge) +"aYl" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/bridge) +"aYn" = (/obj/machinery/holopad,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYo" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYp" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYq" = (/obj/item/device/radio/beacon,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 1},/area/bridge) +"aYt" = (/obj/structure/chair{dir = 1; name = "Logistics Station"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aYu" = (/obj/machinery/camera{c_tag = "Bridge East"; dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/brown/corner{dir = 4},/area/bridge) +"aYv" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) +"aYw" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 32},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 9},/area/hallway/primary/central) +"aYx" = (/obj/machinery/camera{c_tag = "Bridge East Entrance"; dir = 2},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"aYy" = (/obj/machinery/holopad,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aYz" = (/obj/structure/chair,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aYA" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/item/weapon/reagent_containers/food/snacks/pie/cream,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYB" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/enzyme{layer = 5},/obj/item/stack/packageWrap,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYC" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 5},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYD" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -3; pixel_y = 0},/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 3},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYE" = (/obj/machinery/processor,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"aYF" = (/obj/machinery/light{dir = 8},/obj/machinery/hydroponics/constructable,/turf/open/floor/plasteel/black,/area/hydroponics) +"aYG" = (/obj/effect/landmark/start{name = "Botanist"},/turf/open/floor/plasteel,/area/hydroponics) +"aYH" = (/obj/machinery/hydroponics/constructable,/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/hydroponics) +"aYI" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/fsmaint2) +"aYJ" = (/obj/structure/table/wood,/obj/item/weapon/paper,/turf/open/floor/wood,/area/library) +"aYK" = (/obj/structure/chair/comfy/black{dir = 8},/turf/open/floor/wood,/area/library) +"aYL" = (/obj/structure/table/wood,/obj/item/device/camera_film,/obj/item/device/camera_film,/turf/open/floor/wood,/area/library) +"aYM" = (/obj/structure/table/wood,/obj/item/weapon/pen/red,/obj/item/weapon/pen/blue{pixel_x = 5; pixel_y = 5},/turf/open/floor/wood,/area/library) +"aYN" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/wood,/area/library) +"aYO" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/chapel{dir = 8},/area/chapel/main) +"aYP" = (/obj/machinery/camera{c_tag = "Chapel South"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel/black,/area/chapel/main) +"aYQ" = (/obj/item/device/radio/intercom{pixel_x = -25},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"aYR" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_l"},/turf/open/floor/plating,/area/shuttle/transport) +"aYS" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plating,/area/shuttle/transport) +"aYT" = (/obj/structure/chair,/turf/open/floor/pod/dark,/area/shuttle/transport) +"aYU" = (/turf/open/floor/pod/light,/area/shuttle/transport) +"aYV" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hallway/secondary/entry) +"aYW" = (/obj/machinery/camera{c_tag = "Vacant Office"; dir = 4; network = list("SS13")},/turf/open/floor/wood,/area/security/vacantoffice) +"aYX" = (/obj/structure/table/wood,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/security/vacantoffice) +"aYY" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp,/turf/open/floor/wood,/area/security/vacantoffice) +"aYZ" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/wood,/area/security/vacantoffice) +"aZa" = (/obj/structure/table/wood,/obj/item/weapon/pen/red,/turf/open/floor/wood,/area/security/vacantoffice) +"aZb" = (/obj/structure/grille,/obj/structure/window{icon_state = "window"; dir = 8},/obj/structure/window,/turf/open/floor/plating,/area/maintenance/port) +"aZc" = (/obj/structure/grille,/obj/structure/window{icon_state = "window"; dir = 1},/turf/open/floor/plating,/area/maintenance/port) +"aZd" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"aZe" = (/obj/structure/closet/wardrobe/black,/obj/item/clothing/shoes/jackboots,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZg" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZh" = (/obj/machinery/camera{c_tag = "Locker Room West"; dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZj" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZl" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"aZm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/port) +"aZn" = (/obj/machinery/power/apc{dir = 1; name = "Art Storage"; pixel_x = 0; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/storage/art) +"aZo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/maintenance/port) +"aZp" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/maintenance/port) +"aZq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/port) +"aZr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/port) +"aZs" = (/obj/machinery/power/apc{dir = 1; name = "Port Emergency Storage APC"; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/open/floor/plating,/area/storage/emergency2) +"aZt" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/port) +"aZu" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/port) +"aZv" = (/turf/closed/wall/r_wall,/area/security/detectives_office) +"aZw" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 4},/area/hallway/primary/central) +"aZx" = (/obj/structure/cable,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/airlock/glass_command{cyclelinkeddir = 4; name = "Bridge"; req_access_txt = "19"},/turf/open/floor/plasteel,/area/bridge) +"aZy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) +"aZz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_command{cyclelinkeddir = 8; name = "Bridge"; req_access_txt = "19"},/turf/open/floor/plasteel,/area/bridge) +"aZA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/bridge) +"aZB" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/bridge) +"aZC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aZD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/corner,/area/bridge) +"aZE" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/machinery/light,/obj/machinery/light_switch{pixel_x = -6; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZF" = (/obj/structure/fireaxecabinet{pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZG" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZH" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge RC"; pixel_y = -30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZJ" = (/obj/machinery/turretid{control_area = "AI Upload Chamber"; name = "AI Upload turret control"; pixel_y = -25},/obj/machinery/camera{c_tag = "Bridge Center"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZL" = (/obj/machinery/newscaster{pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZM" = (/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "Bridge APC"; pixel_y = -24},/obj/structure/cable,/obj/machinery/light,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"aZN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/bridge) +"aZO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/bridge) +"aZP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/bridge) +"aZQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_command{cyclelinkeddir = 4; name = "Bridge"; req_access_txt = "19"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aZR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) +"aZS" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/airlock/glass_command{cyclelinkeddir = 8; name = "Bridge"; req_access_txt = "19"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/bridge) +"aZT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"aZU" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aZV" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aZW" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"aZX" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -31},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aZY" = (/obj/structure/table/wood/poker,/obj/item/clothing/mask/cigarette/cigar,/obj/item/toy/cards/deck,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"aZZ" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/condiment/peppermill{pixel_x = 5; pixel_y = -2},/obj/item/weapon/reagent_containers/food/condiment/saltshaker{pixel_x = -2; pixel_y = 2},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"baa" = (/obj/machinery/door/window/southright{name = "Bar Door"; req_access_txt = "0"; req_one_access_txt = "25;28"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bab" = (/obj/structure/table/reinforced,/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 32},/obj/item/weapon/book/manual/barman_recipes,/obj/item/weapon/reagent_containers/glass/rag,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bac" = (/obj/effect/landmark/start{name = "Cook"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bad" = (/obj/machinery/deepfryer,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bae" = (/obj/structure/table,/obj/machinery/reagentgrinder,/obj/machinery/requests_console{department = "Kitchen"; departmentType = 2; pixel_x = 30; pixel_y = 0},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"baf" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 16},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bag" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/airalarm{pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bah" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bai" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Library"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"baj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bak" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bal" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bam" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/carpet,/area/library) +"ban" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Chapel"},/turf/open/floor/carpet,/area/chapel/main) +"bao" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/carpet,/area/chapel/main) +"bap" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/chapel/main) +"baq" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/carpet,/area/chapel/main) +"bar" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Chapel"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/chapel/main) +"bas" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"bat" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bau" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bav" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"baw" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bax" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/open/floor/plating,/area/shuttle/transport) +"bay" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/pod/light,/area/shuttle/transport) +"baz" = (/obj/machinery/computer/shuttle/ferry/request,/turf/open/floor/pod/dark,/area/shuttle/transport) +"baA" = (/obj/machinery/door/airlock/titanium,/obj/docking_port/mobile{dir = 8; dwidth = 2; height = 13; id = "ferry"; name = "ferry shuttle"; port_angle = 0; preferred_direction = 4; roundstart_move = "ferry_away"; width = 5},/obj/docking_port/stationary{dir = 8; dwidth = 2; height = 13; id = "ferry_home"; name = "port bay 2"; turf_type = /turf/open/space; width = 5},/turf/open/floor/pod/light,/area/shuttle/transport) +"baB" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; id_tag = null; name = "Port Docking Bay 2"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"baC" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; id_tag = null; name = "Port Docking Bay 2"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"baD" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/light_switch{pixel_x = -28; pixel_y = 0},/turf/open/floor/wood,/area/security/vacantoffice) +"baE" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/wood,/area/security/vacantoffice) +"baF" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/security/vacantoffice) +"baG" = (/turf/open/floor/carpet,/area/security/vacantoffice) +"baH" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/security/vacantoffice) +"baI" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) +"baJ" = (/obj/machinery/light{dir = 4},/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/wood,/area/security/vacantoffice) +"baK" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/port) +"baL" = (/turf/closed/wall,/area/crew_quarters/locker/locker_toilet) +"baM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/locker/locker_toilet) +"baN" = (/obj/machinery/door/airlock{name = "Unisex Restrooms"; req_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"baO" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baP" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baQ" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baR" = (/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baS" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baU" = (/obj/structure/closet/secure_closet/personal,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"baV" = (/obj/machinery/power/apc{dir = 8; name = "Locker Room Maintenance APC"; pixel_x = -27; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/open/floor/plating,/area/maintenance/port) +"baW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/port) +"baX" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/port) +"baY" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/port) +"baZ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall,/area/maintenance/port) +"bba" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/machinery/door/airlock/maintenance{name = "Cargo Bay Warehouse Maintenance"; req_access_txt = "31"},/turf/open/floor/plating,/area/maintenance/port) +"bbb" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"bbc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/security/detectives_office) +"bbd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/detectives_office) +"bbe" = (/obj/structure/closet/secure_closet/detective,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bbf" = (/obj/machinery/computer/med_data,/obj/machinery/newscaster{pixel_x = 0; pixel_y = 32},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bbg" = (/obj/machinery/computer/secure_data,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bbh" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/security/detectives_office) +"bbi" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/evidence,/obj/item/weapon/hand_labeler{pixel_x = 5},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bbj" = (/obj/structure/table/wood,/obj/item/device/taperecorder,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/button/door{id = "kanyewest"; name = "Privacy Shutters"; pixel_x = 0; pixel_y = 24},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bbk" = (/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) +"bbl" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/central) +"bbm" = (/obj/machinery/camera{c_tag = "Bridge West Entrance"; dir = 1},/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/central) +"bbn" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 6},/area/hallway/primary/central) +"bbo" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge) +"bbp" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/preopen{id = "bridge blast"; name = "bridge blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/bridge) +"bbq" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"bbr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"bbs" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"bbt" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel/blue/side{dir = 6},/area/bridge) +"bbu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"bbv" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"bbw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"bbx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/highsecurity{icon_state = "door_closed"; locked = 0; name = "AI Upload Access"; req_access_txt = "16"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bby" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"bbz" = (/obj/machinery/ai_status_display,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"bbA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"bbB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"bbC" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/filingcabinet/filingcabinet,/turf/open/floor/plasteel/blue/side{dir = 10},/area/bridge) +"bbD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/bridge) +"bbE" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/side{dir = 10},/area/hallway/primary/central) +"bbF" = (/obj/machinery/power/apc{dir = 2; name = "Central Hall APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/central) +"bbG" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"bbH" = (/obj/structure/chair{dir = 1},/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bbI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bbJ" = (/obj/structure/chair/stool/bar,/obj/effect/landmark/start{name = "Assistant"},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bbK" = (/obj/structure/chair/stool/bar,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bbL" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock{name = "Kitchen"; req_access_txt = "28"},/turf/open/floor/plasteel/bar,/area/crew_quarters/kitchen) +"bbM" = (/obj/machinery/light_switch{pixel_y = -25},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbN" = (/obj/machinery/light,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbO" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbP" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/button/door{id = "kitchen"; name = "Kitchen Shutters Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "28"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbQ" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bbR" = (/obj/structure/reagent_dispensers/watertank/high,/turf/open/floor/plasteel,/area/hydroponics) +"bbS" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel,/area/hydroponics) +"bbT" = (/obj/machinery/hydroponics/constructable,/turf/open/floor/plasteel/green/side{dir = 1},/area/hydroponics) +"bbU" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Botanist"},/turf/open/floor/plasteel,/area/hydroponics) +"bbV" = (/obj/machinery/camera{c_tag = "Hydroponics South"; dir = 8; network = list("SS13")},/obj/structure/reagent_dispensers/watertank/high,/turf/open/floor/plasteel,/area/hydroponics) +"bbW" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/closed/wall,/area/hydroponics) +"bbX" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bbY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bbZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Library"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bca" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/library) +"bcb" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/library) +"bcc" = (/obj/machinery/holopad,/turf/open/floor/carpet,/area/library) +"bcd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/carpet,/area/chapel/main) +"bce" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/chapel/main) +"bcf" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/carpet,/area/chapel/main) +"bcg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/chapel/main) +"bch" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Chapel"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/chapel/main) +"bci" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"bcj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bck" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bcl" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bcm" = (/obj/machinery/camera{c_tag = "Escape Arm Airlocks"; dir = 8; network = list("SS13")},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bcn" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 1; pixel_y = 1},/turf/open/floor/plating,/area/shuttle/transport) +"bco" = (/obj/structure/chair{dir = 1},/turf/open/floor/pod/dark,/area/shuttle/transport) +"bcp" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bcq" = (/obj/machinery/door/airlock/engineering{name = "Vacant Office A"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) +"bcr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) +"bcs" = (/obj/structure/chair/office/dark,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) +"bct" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/security/vacantoffice) +"bcu" = (/obj/structure/chair/office/dark,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/security/vacantoffice) +"bcv" = (/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/components/unary/tank/air{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bcw" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/port) +"bcx" = (/obj/structure/toilet{pixel_y = 8},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bcy" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bcz" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bcA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bcB" = (/obj/structure/table,/obj/item/weapon/razor,/obj/structure/window{icon_state = "window"; dir = 1},/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"bcC" = (/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"bcD" = (/obj/structure/closet,/obj/item/clothing/under/suit_jacket/female{pixel_x = 3; pixel_y = 1},/obj/item/clothing/under/suit_jacket/really_black{pixel_x = -2; pixel_y = 0},/obj/structure/window{icon_state = "window"; dir = 1},/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"bcE" = (/obj/machinery/portable_atmospherics/pump,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"bcF" = (/obj/machinery/portable_atmospherics/scrubber,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"bcG" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"bcH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"bcI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"bcJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/port) +"bcK" = (/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bcL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bcM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bcN" = (/turf/closed/wall,/area/quartermaster/storage) +"bcO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"bcP" = (/obj/machinery/light/small{dir = 8},/obj/structure/rack,/obj/item/weapon/storage/briefcase,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcQ" = (/turf/open/floor/carpet,/area/security/detectives_office) +"bcR" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcS" = (/obj/machinery/firealarm{pixel_y = 24},/obj/machinery/camera{c_tag = "Detective's Office"; dir = 2},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcT" = (/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcU" = (/obj/machinery/light_switch{pixel_x = 27},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bcV" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) +"bcW" = (/turf/closed/wall/r_wall,/area/bridge/meeting_room) +"bcX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/bridge/meeting_room) +"bcY" = (/obj/machinery/door/airlock/command{name = "Conference Room"; req_access = null; req_access_txt = "19"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bcZ" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bda" = (/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) +"bdb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bdc" = (/obj/machinery/porta_turret/ai{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bdd" = (/turf/closed/wall/r_wall,/area/crew_quarters/captain) +"bde" = (/obj/machinery/door/airlock/command{name = "Captain's Office"; req_access = null; req_access_txt = "20"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bdf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/crew_quarters/captain) +"bdg" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"bdh" = (/obj/machinery/computer/arcade,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdi" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdj" = (/obj/machinery/newscaster{pixel_y = -28},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdk" = (/obj/machinery/light,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdl" = (/obj/machinery/light,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdm" = (/obj/machinery/camera{c_tag = "Bar South"; dir = 1},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdn" = (/obj/structure/noticeboard{pixel_y = -27},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdo" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdp" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdq" = (/obj/machinery/light/small,/turf/open/floor/plasteel/bar,/area/crew_quarters/bar) +"bdr" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "kitchen"; name = "kitchen shutters"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bds" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "kitchen"; name = "kitchen shutters"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/kitchen) +"bdt" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/hydroponics) +"bdu" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/hydroponics) +"bdv" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/hydroponics) +"bdw" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/northleft{name = "Hydroponics Desk"; req_access_txt = "35"},/turf/open/floor/plasteel,/area/hydroponics) +"bdx" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/westright{dir = 1; name = "Hydroponics Desk"; req_access_txt = "35"},/turf/open/floor/plasteel,/area/hydroponics) +"bdy" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bdz" = (/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bdA" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bdB" = (/obj/machinery/vending/coffee,/turf/open/floor/wood,/area/library) +"bdC" = (/obj/structure/chair/comfy/black{dir = 4},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/wood,/area/library) +"bdD" = (/obj/structure/table/wood,/obj/item/weapon/pen,/turf/open/floor/wood,/area/library) +"bdE" = (/obj/structure/chair/comfy/black{dir = 4},/turf/open/floor/wood,/area/library) +"bdF" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/wood,/area/library) +"bdG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/black,/area/chapel/main) +"bdH" = (/turf/open/floor/carpet{icon_state = "carpetsymbol"},/area/chapel/main) +"bdI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/chapel/main) +"bdJ" = (/obj/machinery/power/apc{dir = 8; name = "Escape Hallway APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"bdK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bdL" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bdM" = (/obj/machinery/door/airlock/external,/turf/open/floor/pod/light,/area/shuttle/transport) +"bdN" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bdO" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bdP" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/wood,/area/security/vacantoffice) +"bdQ" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/security/vacantoffice) +"bdR" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bdS" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bdT" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/power/apc{dir = 4; name = "Locker Restrooms APC"; pixel_x = 27; pixel_y = 2},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/crew_quarters/locker/locker_toilet) +"bdU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bdV" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bdW" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"bdX" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/stack/sheet/cardboard,/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bdY" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/electronics/apc,/obj/item/weapon/stock_parts/cell{maxcharge = 2000},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bdZ" = (/obj/effect/landmark/event_spawn,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bea" = (/obj/item/weapon/storage/secure/safe{pixel_x = -23},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"beb" = (/obj/structure/chair/comfy/brown,/obj/effect/landmark/start{name = "Detective"},/turf/open/floor/carpet,/area/security/detectives_office) +"bec" = (/obj/structure/table/wood,/obj/item/device/camera/detective,/turf/open/floor/carpet,/area/security/detectives_office) +"bed" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bee" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/security{name = "Detective's Office"; req_access_txt = "4"},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bef" = (/obj/machinery/photocopier,/turf/open/floor/wood,/area/bridge/meeting_room) +"beg" = (/obj/machinery/button/door{id = "heads_meeting"; name = "Security Shutters"; pixel_x = 0; pixel_y = 24},/turf/open/floor/wood,/area/bridge/meeting_room) +"beh" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/wood,/area/bridge/meeting_room) +"bei" = (/obj/machinery/camera{c_tag = "Conference Room"; dir = 2},/turf/open/floor/wood,/area/bridge/meeting_room) +"bej" = (/turf/open/floor/wood,/area/bridge/meeting_room) +"bek" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bel" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bem" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/wood,/area/bridge/meeting_room) +"ben" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"beo" = (/obj/structure/table,/obj/item/weapon/aiModule/reset,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bep" = (/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"beq" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"ber" = (/obj/structure/table,/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bes" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"bet" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/wood,/area/crew_quarters/captain) +"beu" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/wood,/area/crew_quarters/captain) +"bev" = (/obj/machinery/light_switch{pixel_y = 28},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/wood,/area/crew_quarters/captain) +"bew" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bex" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bey" = (/obj/machinery/status_display{pixel_x = 0; pixel_y = 32},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bez" = (/obj/machinery/power/apc{cell_type = 2500; dir = 1; name = "Captain's Office APC"; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/wood,/area/crew_quarters/captain) +"beA" = (/turf/open/floor/wood,/area/crew_quarters/captain) +"beB" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Diner"},/turf/open/floor/plasteel,/area/crew_quarters/bar) +"beC" = (/obj/structure/sign/barsign,/turf/closed/wall,/area/crew_quarters/bar) +"beD" = (/turf/open/floor/plasteel/white/corner{dir = 1},/area/hallway/primary/starboard) +"beE" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 2"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/white/corner{dir = 1},/area/hallway/primary/starboard) +"beF" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Hydroponics"; req_access_txt = "35"},/turf/open/floor/plasteel,/area/hydroponics) +"beG" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/library) +"beH" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/chapel/main) +"beI" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/escape{dir = 8},/area/hallway/secondary/exit) +"beJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"beK" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) +"beL" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/escape) +"beM" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"beN" = (/obj/machinery/power/apc{dir = 8; name = "Vacant Office A APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/security/vacantoffice{name = "Vacant Office A"}) +"beO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"beP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/port) +"beQ" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"beR" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 28},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"beS" = (/obj/machinery/washing_machine,/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"beT" = (/obj/machinery/washing_machine,/obj/machinery/light,/turf/open/floor/plasteel/barber,/area/crew_quarters/locker) +"beU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/closet/crate,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"beV" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"beW" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"beX" = (/obj/machinery/door/airlock/maintenance{name = "Detective Maintenance"; req_access_txt = "4"},/turf/open/floor/plating,/area/security/detectives_office) +"beY" = (/obj/structure/table/wood,/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{pixel_x = 3},/obj/item/weapon/lighter,/turf/open/floor/carpet,/area/security/detectives_office) +"beZ" = (/obj/structure/table/wood,/obj/machinery/computer/security/wooden_tv,/turf/open/floor/carpet,/area/security/detectives_office) +"bfa" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/clothing/glasses/sunglasses,/turf/open/floor/carpet,/area/security/detectives_office) +"bfb" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/carpet,/area/security/detectives_office) +"bfc" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/shutters/preopen{id = "kanyewest"; layer = 2.9; name = "privacy shutters"},/turf/open/floor/plating,/area/security/detectives_office) +"bfd" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "heads_meeting"; layer = 2.9; name = "privacy shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/bridge/meeting_room) +"bfe" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table,/turf/open/floor/wood,/area/bridge/meeting_room) +"bff" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/carpet,/area/bridge/meeting_room) +"bfg" = (/obj/structure/chair/comfy/black,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"bfh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"bfi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/wood,/area/bridge/meeting_room) +"bfj" = (/obj/machinery/vending/snack/random,/turf/open/floor/wood,/area/bridge/meeting_room) +"bfk" = (/obj/structure/table,/obj/item/weapon/aiModule/supplied/quarantine,/obj/machinery/camera/motion{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bfl" = (/obj/machinery/holopad,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bfm" = (/obj/structure/table,/obj/item/weapon/aiModule/supplied/freeform,/obj/structure/sign/kiddieplaque{pixel_x = 32},/obj/machinery/camera/motion{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bfn" = (/obj/machinery/vending/cigarette,/turf/open/floor/wood,/area/crew_quarters/captain) +"bfo" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bfp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bfq" = (/obj/structure/chair/comfy/brown{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bfr" = (/obj/structure/table/wood,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/carpet,/area/crew_quarters/captain) +"bfs" = (/obj/structure/chair/comfy/brown{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bft" = (/obj/structure/displaycase/captain,/turf/open/floor/wood,/area/crew_quarters/captain) +"bfu" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Dorm"; location = "HOP2"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bfv" = (/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = 32; pixel_y = 28},/obj/structure/sign/directions/security{dir = 1; icon_state = "direction_sec"; pixel_x = 32; pixel_y = 36},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bfw" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfx" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfy" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfz" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfA" = (/obj/machinery/status_display{layer = 4; pixel_x = 0; pixel_y = 32},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfC" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfD" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfE" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 5"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bfF" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/white/corner{dir = 4},/area/hallway/secondary/exit) +"bfG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bfH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bfI" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bfJ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bfK" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Cargo"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"bfL" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Infirmary"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) +"bfM" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/blue/corner{dir = 1},/area/hallway/secondary/entry) +"bfN" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bfO" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bfP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bfQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bfR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/port) +"bfS" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bfT" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/port) +"bfU" = (/obj/structure/rack{dir = 4},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/port) +"bfV" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bfW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 1},/turf/open/floor/plating,/area/maintenance/port) +"bfX" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bfY" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bfZ" = (/obj/structure/window/reinforced{dir = 8},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/locker) +"bga" = (/obj/machinery/camera{c_tag = "Locker Room South"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/locker) +"bgb" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/obj/structure/closet/crate/freezer,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bgc" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bgd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bge" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/quartermaster/storage) +"bgf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/power/apc{dir = 4; name = "Detective's Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/port) +"bgg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/detectives_office) +"bgh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bgi" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bgj" = (/obj/machinery/light/small,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bgk" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/filingcabinet,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/grimy,/area/security/detectives_office) +"bgl" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bgm" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "heads_meeting"; layer = 2.9; name = "privacy shutters"},/turf/open/floor/plating,/area/bridge/meeting_room) +"bgn" = (/obj/item/weapon/hand_labeler,/obj/item/device/assembly/timer,/obj/structure/table,/turf/open/floor/wood,/area/bridge/meeting_room) +"bgo" = (/obj/structure/chair/comfy/black{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"bgp" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Command)"; pixel_x = 0},/turf/open/floor/carpet,/area/bridge/meeting_room) +"bgq" = (/obj/item/weapon/book/manual/wiki/security_space_law,/obj/structure/table/wood,/turf/open/floor/carpet,/area/bridge/meeting_room) +"bgr" = (/obj/structure/chair/comfy/black{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/bridge/meeting_room) +"bgs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bgt" = (/obj/machinery/vending/cola/random,/turf/open/floor/wood,/area/bridge/meeting_room) +"bgu" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bgv" = (/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/ai_upload) +"bgw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) +"bgx" = (/obj/machinery/computer/arcade,/turf/open/floor/wood,/area/crew_quarters/captain) +"bgy" = (/obj/structure/table/wood,/turf/open/floor/carpet,/area/crew_quarters/captain) +"bgz" = (/obj/machinery/camera{c_tag = "Central Hallway East"; dir = 4; network = list("SS13")},/obj/structure/disposalpipe/segment,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"bgA" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgB" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgD" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgE" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgH" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgJ" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=HOP2"; location = "Stbd"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgK" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bgL" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bgM" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bgN" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bgO" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bgP" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Cargo Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) +"bgQ" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/hallway/secondary/exit) +"bgR" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Cargo Escape Airlock"},/turf/open/floor/plating,/area/hallway/secondary/exit) +"bgS" = (/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) +"bgT" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) +"bgU" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"bgV" = (/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bgW" = (/turf/closed/wall,/area/maintenance/disposal) +"bgX" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/maintenance/disposal) +"bgY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/disposal) +"bgZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bha" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bhb" = (/obj/machinery/door/airlock{name = "Unit 3"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bhc" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bhd" = (/obj/item/latexballon,/turf/open/floor/plating,/area/maintenance/port) +"bhe" = (/obj/effect/landmark{name = "blobstart"},/obj/item/clothing/suit/ianshirt,/obj/structure/closet,/turf/open/floor/plating,/area/maintenance/port) +"bhf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/locker) +"bhg" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bhh" = (/obj/structure/closet/crate/internals,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bhi" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bhj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bhk" = (/obj/structure/closet/crate,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bhl" = (/obj/structure/disposalpipe/segment,/turf/closed/wall/r_wall,/area/security/detectives_office) +"bhm" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bhn" = (/obj/item/weapon/storage/fancy/donut_box,/obj/structure/table,/turf/open/floor/wood,/area/bridge/meeting_room) +"bho" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/structure/table/wood,/turf/open/floor/carpet,/area/bridge/meeting_room) +"bhp" = (/obj/item/weapon/folder/blue,/obj/structure/table/wood,/turf/open/floor/carpet,/area/bridge/meeting_room) +"bhq" = (/obj/structure/table,/obj/item/weapon/aiModule/core/full/asimov,/obj/item/weapon/aiModule/core/freeformcore,/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Core Modules"; req_access_txt = "20"},/obj/structure/window/reinforced,/obj/item/weapon/aiModule/core/full/corp,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/item/weapon/aiModule/core/full/custom,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bhr" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bhs" = (/obj/machinery/computer/upload/ai,/obj/machinery/flasher{id = "AI"; pixel_x = 0; pixel_y = -21},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) +"bht" = (/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "Upload APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) +"bhu" = (/obj/machinery/computer/upload/borg,/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1447; listening = 0; name = "Station Intercom (AI Private)"; pixel_y = -29},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai_upload) +"bhv" = (/obj/machinery/light,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bhw" = (/obj/structure/table,/obj/item/weapon/aiModule/supplied/oxygen,/obj/item/weapon/aiModule/zeroth/oneHuman,/obj/machinery/door/window{base_state = "left"; dir = 8; icon_state = "left"; name = "High-Risk Modules"; req_access_txt = "20"},/obj/item/weapon/aiModule/reset/purge,/obj/structure/window/reinforced,/obj/item/weapon/aiModule/core/full/antimov,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/aiModule/supplied/protectStation,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai_upload) +"bhx" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/wood,/area/crew_quarters/captain) +"bhy" = (/obj/structure/chair,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bhz" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/wood,/area/crew_quarters/captain) +"bhA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bhB" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bhC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bhD" = (/obj/structure/table/wood,/obj/machinery/camera{c_tag = "Captain's Office"; dir = 8},/obj/item/weapon/storage/lockbox/medal{pixel_y = 0},/turf/open/floor/wood,/area/crew_quarters/captain) +"bhE" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/central) +"bhF" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=Stbd"; location = "HOP"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bhG" = (/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_x = 32; pixel_y = -24},/obj/structure/sign/directions/science{dir = 4; icon_state = "direction_sci"; pixel_x = 32; pixel_y = -32},/obj/structure/sign/directions/engineering{pixel_x = 32; pixel_y = -40},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bhH" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhI" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/starboard) +"bhJ" = (/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/starboard) +"bhK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/blue/side{dir = 0},/area/hallway/primary/starboard) +"bhL" = (/obj/machinery/light,/turf/open/floor/plasteel/blue/corner{dir = 8},/area/hallway/primary/starboard) +"bhM" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhN" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/obj/machinery/light,/turf/open/floor/plasteel/white/corner{dir = 2},/area/hallway/primary/starboard) +"bhO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 2},/area/hallway/primary/starboard) +"bhP" = (/turf/open/floor/plasteel/white/corner{dir = 8},/area/hallway/primary/starboard) +"bhQ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhR" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 3"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhS" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhV" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhW" = (/obj/machinery/camera{c_tag = "Starboard Primary Hallway 4"; dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bhX" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/secondary/exit) +"bhY" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel/escape{dir = 2},/area/hallway/secondary/exit) +"bhZ" = (/obj/machinery/newscaster{pixel_y = -32},/obj/machinery/light,/turf/open/floor/plasteel/escape{dir = 2},/area/hallway/secondary/exit) +"bia" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/corner{dir = 8},/area/hallway/secondary/exit) +"bib" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/mineral/titanium,/area/shuttle/escape) +"bic" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Port Docking Bay 4"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"bid" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Port Docking Bay 3"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"bie" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/chair{dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bif" = (/obj/structure/chair{dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"big" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) +"bih" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) +"bii" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/disposal) +"bij" = (/obj/machinery/conveyor{dir = 8; id = "garbage"},/obj/machinery/recycler,/obj/structure/sign/securearea{name = "\improper STAY CLEAR HEAVY MACHINERY"; pixel_y = 32},/turf/open/floor/plating,/area/maintenance/disposal) +"bik" = (/obj/machinery/conveyor{dir = 6; id = "garbage"; verted = -1},/turf/open/floor/plating,/area/maintenance/disposal) +"bil" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/port) +"bim" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bin" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bio" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bip" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 1},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/port) +"biq" = (/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bir" = (/obj/machinery/camera{c_tag = "Locker Room Toilets"; dir = 8; network = list("SS13")},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bis" = (/obj/machinery/power/apc{dir = 1; name = "Locker Room APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/crew_quarters/locker) +"bit" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"biu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"biv" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"biw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/port) +"bix" = (/obj/structure/closet/crate/medical,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"biy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/stack/sheet/cardboard,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"biz" = (/obj/item/clothing/gloves/color/rainbow,/obj/item/clothing/head/soft/rainbow,/obj/item/clothing/shoes/sneakers/rainbow,/obj/item/clothing/under/color/rainbow,/turf/open/floor/plating,/area/maintenance/port) +"biA" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) +"biB" = (/obj/machinery/conveyor{dir = 4; id = "packageSort2"},/turf/open/floor/plating,/area/quartermaster/office) +"biC" = (/obj/machinery/conveyor{dir = 4; id = "packageSort2"},/obj/structure/plasticflaps,/turf/open/floor/plating,/area/quartermaster/office) +"biD" = (/obj/machinery/disposal/deliveryChute{dir = 8},/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating,/area/quartermaster/office) +"biE" = (/turf/closed/wall,/area/quartermaster/office) +"biF" = (/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"biG" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Bridge"; departmentType = 5; name = "Bridge RC"; pixel_y = -30},/obj/machinery/light,/turf/open/floor/wood,/area/bridge/meeting_room) +"biH" = (/turf/open/floor/carpet,/area/bridge/meeting_room) +"biI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/bridge/meeting_room) +"biJ" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"biK" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/bridge/meeting_room) +"biL" = (/obj/structure/noticeboard{dir = 8; pixel_x = 27; pixel_y = 0},/turf/open/floor/wood,/area/bridge/meeting_room) +"biM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"biN" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"biO" = (/obj/machinery/ai_status_display,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"biP" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"biQ" = (/obj/machinery/status_display{density = 0; layer = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"biR" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"biS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai_upload) +"biT" = (/obj/structure/table/wood,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/wood,/area/crew_quarters/captain) +"biU" = (/obj/structure/table/wood,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/captain,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"biV" = (/obj/structure/table/wood,/obj/item/weapon/hand_tele,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"biW" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/wood,/area/crew_quarters/captain) +"biX" = (/obj/effect/landmark/event_spawn,/turf/open/floor/wood,/area/crew_quarters/captain) +"biY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/wood,/area/crew_quarters/captain) +"biZ" = (/obj/structure/table/wood,/obj/item/weapon/pinpointer,/obj/item/weapon/disk/nuclear,/obj/item/weapon/storage/secure/safe{pixel_x = 35; pixel_y = 5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/wood,/area/crew_quarters/captain) +"bja" = (/turf/closed/wall,/area/medical/chemistry) +"bjb" = (/obj/structure/sign/bluecross_2,/turf/closed/wall,/area/medical/medbay) +"bjc" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/medbay) +"bjd" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bje" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bjf" = (/turf/closed/wall,/area/security/checkpoint/medical) +"bjg" = (/turf/closed/wall,/area/medical/morgue) +"bjh" = (/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) +"bji" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bjj" = (/obj/machinery/power/apc{dir = 2; name = "Starboard Primary Hallway APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel,/area/hallway/primary/starboard) +"bjk" = (/turf/closed/wall,/area/storage/emergency) +"bjl" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bjm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/assembly/chargebay) +"bjn" = (/turf/open/floor/plasteel/loadingarea{dir = 1},/area/hallway/primary/starboard) +"bjo" = (/turf/closed/wall/r_wall,/area/assembly/robotics) +"bjp" = (/turf/open/floor/plasteel/purple/side{dir = 10},/area/hallway/primary/starboard) +"bjq" = (/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) +"bjr" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) +"bjs" = (/obj/structure/sign/securearea{pixel_x = 0; pixel_y = -32},/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) +"bjt" = (/obj/machinery/light,/turf/open/floor/plasteel/purple/side{dir = 2},/area/hallway/primary/starboard) +"bju" = (/turf/open/floor/plasteel/purple/side{dir = 6},/area/hallway/primary/starboard) +"bjv" = (/turf/closed/wall/r_wall,/area/toxins/lab) +"bjw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/escape{dir = 10},/area/hallway/secondary/exit) +"bjx" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/escape{dir = 2},/area/hallway/secondary/exit) +"bjy" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bjz" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/hallway/secondary/exit) +"bjA" = (/obj/structure/closet,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) +"bjB" = (/obj/structure/closet/crate,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) +"bjC" = (/obj/machinery/camera{c_tag = "Arrivals Bay 3 & 4"; dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bjD" = (/obj/machinery/vending/cigarette,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/hallway/secondary/entry) +"bjE" = (/obj/machinery/conveyor{dir = 5; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) +"bjF" = (/obj/machinery/conveyor{dir = 4; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) +"bjG" = (/obj/machinery/conveyor{dir = 10; id = "garbage"; verted = -1},/turf/open/floor/plating,/area/maintenance/disposal) +"bjH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/closed/wall,/area/maintenance/disposal) +"bjI" = (/obj/machinery/power/apc{dir = 8; name = "Disposal APC"; pixel_x = -24; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) +"bjJ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjK" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bjM" = (/obj/machinery/door/airlock{name = "Unit 4"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bjN" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/freezer,/area/crew_quarters/locker/locker_toilet) +"bjO" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/port) +"bjP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/port) +"bjQ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bjT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bjU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/power/apc{dir = 2; name = "Cargo Bay APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/port) +"bjV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/maintenance/port) +"bjW" = (/obj/structure/closet/cardboard,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bjX" = (/obj/machinery/button/door{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = -1; pixel_y = -24; req_access_txt = "31"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/structure/closet/crate,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bjY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/closet/crate,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/storage) +"bjZ" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/closed/wall,/area/quartermaster/storage) +"bka" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/closed/wall,/area/quartermaster/office) +"bkb" = (/obj/machinery/conveyor_switch/oneway{id = "packageSort2"},/obj/machinery/camera{c_tag = "Cargo Delivery Office"; dir = 4; network = list("SS13")},/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bkc" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bkd" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bke" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bkf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced{dir = 1; layer = 2.9},/obj/structure/filingcabinet/filingcabinet,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/office) +"bkg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/quartermaster/office) +"bkh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bki" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bkj" = (/obj/machinery/camera{c_tag = "Central Hallway West"; dir = 8},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) +"bkk" = (/obj/machinery/door/window/eastright{dir = 1; name = "Bridge Delivery"; req_access_txt = "19"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/bridge/meeting_room) +"bkl" = (/turf/closed/wall,/area/bridge/meeting_room) +"bkm" = (/obj/structure/reagent_dispensers/water_cooler,/turf/open/floor/wood,/area/bridge/meeting_room) +"bkn" = (/obj/machinery/computer/slot_machine,/turf/open/floor/wood,/area/bridge/meeting_room) +"bko" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = 0; pixel_y = -32},/turf/open/floor/wood,/area/bridge/meeting_room) +"bkp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bkq" = (/obj/machinery/vending/coffee,/obj/machinery/light{dir = 4},/turf/open/floor/wood,/area/bridge/meeting_room) +"bkr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bks" = (/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"bkt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bku" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Captain's Desk"; departmentType = 5; name = "Captain RC"; pixel_x = -30; pixel_y = 0},/obj/structure/filingcabinet,/turf/open/floor/wood,/area/crew_quarters/captain) +"bkv" = (/obj/structure/chair/comfy/brown{dir = 4},/obj/effect/landmark/start{name = "Captain"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bkw" = (/obj/machinery/computer/communications,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bkx" = (/obj/structure/table/wood,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/item/weapon/coin/plasma,/turf/open/floor/wood,/area/crew_quarters/captain) +"bky" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/holopad,/turf/open/floor/wood,/area/crew_quarters/captain) +"bkz" = (/obj/structure/table/wood,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/item/device/camera,/obj/item/weapon/storage/photo_album{pixel_y = -10},/turf/open/floor/wood,/area/crew_quarters/captain) +"bkA" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bkB" = (/obj/structure/closet/secure_closet/chemical,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bkC" = (/obj/machinery/power/apc{dir = 1; name = "Chemistry APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/mob/living/simple_animal/bot/cleanbot{name = "C.L.E.A.N."},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bkD" = (/obj/machinery/camera{c_tag = "Chemistry"; dir = 2; network = list("SS13")},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/chem_heater,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bkE" = (/obj/machinery/chem_dispenser,/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/chemistry) +"bkF" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/whiteyellow/side{dir = 5},/area/medical/chemistry) +"bkG" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bkH" = (/obj/structure/chair,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bkI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bkJ" = (/turf/open/floor/plasteel/white,/area/medical/medbay) +"bkK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/medical) +"bkL" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Doors Control"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 26; req_access_txt = "5"},/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/medical) +"bkM" = (/obj/machinery/camera{c_tag = "Security Post - Medbay"; dir = 2; network = list("SS13")},/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/medical) +"bkN" = (/obj/structure/filingcabinet,/obj/machinery/newscaster{pixel_x = 32; pixel_y = 0},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/medical) +"bkO" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkP" = (/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkQ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkR" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkS" = (/obj/machinery/power/apc{dir = 1; name = "Morgue APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkT" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bkU" = (/obj/machinery/door/airlock{name = "Starboard Emergency Storage"; req_access_txt = "0"},/turf/open/floor/plating,/area/storage/emergency) +"bkV" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bkW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/assembly/chargebay) +"bkX" = (/turf/closed/wall/r_wall,/area/assembly/chargebay) +"bkY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Mech Bay"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bkZ" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters{id = "Skynet_launch"; name = "mech bay"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bla" = (/obj/machinery/computer/rdconsole/robotics,/obj/machinery/airalarm{pixel_y = 25},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"blb" = (/obj/structure/table,/obj/item/weapon/book/manual/robotics_cyborgs{pixel_x = 2; pixel_y = 5},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/machinery/requests_console{department = "Robotics"; departmentType = 2; name = "Robotics RC"; pixel_y = 30},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"blc" = (/obj/machinery/r_n_d/circuit_imprinter,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bld" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/assembly/robotics) +"ble" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{base_state = "left"; dir = 2; icon_state = "left"; name = "Robotics Desk"; req_access_txt = "29"},/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics"; name = "robotics lab shutters"},/turf/open/floor/plating,/area/assembly/robotics) +"blf" = (/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) +"blg" = (/obj/machinery/door/airlock/research{cyclelinkeddir = 2; name = "Research Division Access"; req_access_txt = "47"},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"blh" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd"; name = "research lab shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/lab) +"bli" = (/obj/structure/table/reinforced,/obj/machinery/door/window/southright{name = "Research and Development Desk"; req_access_txt = "7"},/obj/machinery/door/poddoor/shutters/preopen{id = "rnd"; name = "research lab shutters"},/turf/open/floor/plating,/area/toxins/lab) +"blj" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/clothing/glasses/welding,/turf/open/floor/plasteel/white,/area/toxins/lab) +"blk" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 2; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bll" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"blm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/asmaint2) +"bln" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) +"blo" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Port Docking Bay 4"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"blp" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Port Docking Bay 3"; req_access_txt = "0"},/turf/open/floor/plating,/area/hallway/secondary/entry) +"blq" = (/obj/machinery/conveyor{dir = 1; id = "garbage"},/turf/open/floor/plating,/area/maintenance/disposal) +"blr" = (/obj/structure/disposalpipe/trunk{dir = 2},/obj/machinery/disposal/deliveryChute{dir = 4},/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; layer = 3},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) +"bls" = (/obj/machinery/mineral/stacking_machine{input_dir = 1; stack_amt = 10},/turf/open/floor/plating,/area/maintenance/disposal) +"blt" = (/obj/machinery/mineral/stacking_unit_console{dir = 2; machinedir = 8},/turf/closed/wall,/area/maintenance/disposal) +"blu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/port) +"blv" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"blw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/port) +"blx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/crew_quarters/locker/locker_toilet) +"bly" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window{icon_state = "window"; dir = 8},/turf/open/floor/plating,/area/maintenance/port) +"blz" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window{icon_state = "window"; dir = 1},/obj/structure/window,/turf/open/floor/plating,/area/maintenance/port) +"blA" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window,/turf/open/floor/plating,/area/maintenance/port) +"blB" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"blC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/port) +"blD" = (/obj/machinery/door/poddoor/shutters{id = "qm_warehouse"; name = "warehouse shutters"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/quartermaster/storage) +"blE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/quartermaster/storage) +"blF" = (/obj/structure/disposalpipe/wrapsortjunction{dir = 1},/turf/closed/wall,/area/quartermaster/storage) +"blG" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) +"blH" = (/obj/machinery/door/window/eastleft{dir = 4; icon_state = "right"; name = "Mail"; req_access_txt = "50"},/turf/open/floor/plating,/area/quartermaster/office) +"blI" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"blJ" = (/turf/open/floor/plasteel,/area/quartermaster/office) +"blK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"blL" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/yellow,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/quartermaster/office) +"blM" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/office) +"blN" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/blue/corner,/area/hallway/primary/central) +"blO" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=1"; dir = 1; freq = 1400; location = "Bridge"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/bridge/meeting_room) +"blP" = (/obj/machinery/vending/cigarette,/turf/open/floor/wood,/area/bridge/meeting_room) +"blQ" = (/turf/open/floor/plasteel/vault{dir = 1},/area/engine/gravity_generator) +"blR" = (/turf/open/floor/plasteel/vault{dir = 8},/area/engine/gravity_generator) +"blS" = (/turf/open/floor/plasteel/vault{dir = 4},/area/engine/gravity_generator) +"blT" = (/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Command)"; pixel_x = -28},/obj/machinery/suit_storage_unit/captain,/turf/open/floor/wood,/area/crew_quarters/captain) +"blU" = (/obj/machinery/computer/card,/obj/item/weapon/card/id/captains_spare,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"blV" = (/obj/structure/table/wood,/obj/machinery/recharger,/obj/item/weapon/melee/chainofcommand,/turf/open/floor/wood,/area/crew_quarters/captain) +"blW" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/machinery/requests_console{department = "Chemistry"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"blX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"blY" = (/turf/open/floor/plasteel/white,/area/medical/chemistry) +"blZ" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Chemist"},/turf/open/floor/plasteel/whiteyellow/side{dir = 4},/area/medical/chemistry) +"bma" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{dir = 8; name = "Chemistry Desk"; req_access_txt = "33"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/medical/chemistry) +"bmb" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bmc" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start/depsec/medical,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/medical) +"bmd" = (/turf/open/floor/plasteel,/area/security/checkpoint/medical) +"bme" = (/obj/machinery/computer/secure_data,/obj/item/device/radio/intercom{pixel_x = 25},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/medical) +"bmf" = (/obj/structure/bodycontainer/morgue,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bmg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) +"bmh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bmi" = (/turf/open/floor/plating,/area/storage/emergency) +"bmj" = (/obj/machinery/light/small{dir = 1},/obj/item/weapon/extinguisher,/turf/open/floor/plating,/area/storage/emergency) +"bmk" = (/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plating,/area/storage/emergency) +"bml" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/apc{dir = 4; name = "Mech Bay APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/assembly/chargebay) +"bmm" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bmn" = (/turf/open/floor/plasteel,/area/assembly/chargebay) +"bmo" = (/obj/machinery/button/door{dir = 2; id = "Skynet_launch"; name = "Mech Bay Door Control"; pixel_x = 6; pixel_y = 24},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bmp" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bmq" = (/obj/machinery/power/apc{dir = 8; name = "Robotics Lab APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bmr" = (/obj/structure/chair/office/light{dir = 1},/obj/effect/landmark/start{name = "Roboticist"},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bms" = (/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bmt" = (/obj/machinery/camera{c_tag = "Robotics Lab"; dir = 2; network = list("SS13","RD")},/obj/machinery/button/door{dir = 2; id = "robotics"; name = "Shutters Control Button"; pixel_x = 6; pixel_y = 24; req_access_txt = "29"},/turf/open/floor/plasteel/whitered/corner{dir = 4},/area/assembly/robotics) +"bmu" = (/turf/open/floor/plasteel/whitered/side{dir = 1},/area/assembly/robotics) +"bmv" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/assembly/robotics) +"bmw" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/whitered/side{dir = 1},/area/assembly/robotics) +"bmx" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bmy" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bmz" = (/obj/machinery/camera{c_tag = "Research Division Access"; dir = 2; network = list("SS13")},/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bmA" = (/turf/open/floor/plasteel/whitepurple/side{dir = 1},/area/toxins/lab) +"bmB" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/whitepurple/side{dir = 1},/area/toxins/lab) +"bmC" = (/obj/machinery/camera{c_tag = "Research and Development"; dir = 2; network = list("SS13","RD"); pixel_x = 0},/obj/machinery/button/door{dir = 2; id = "rnd"; name = "Shutters Control Button"; pixel_x = -6; pixel_y = 24; req_access_txt = "47"},/turf/open/floor/plasteel/whitepurple/corner{dir = 1},/area/toxins/lab) +"bmD" = (/turf/open/floor/plasteel/white,/area/toxins/lab) +"bmE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bmF" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) +"bmG" = (/turf/closed/wall/mineral/titanium,/area/shuttle/abandoned) +"bmH" = (/obj/machinery/door/airlock/titanium,/obj/docking_port/mobile{dheight = 0; dir = 2; dwidth = 11; height = 22; id = "whiteship"; launch_status = 0; name = "NT Medical Ship"; port_angle = -90; preferred_direction = 4; roundstart_move = "whiteship_away"; timid = null; width = 35},/obj/docking_port/stationary{dir = 2; dwidth = 11; height = 22; id = "whiteship_home"; name = "SS13 Arrival Docking"; turf_type = /turf/open/space; width = 35},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bmI" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bmJ" = (/obj/machinery/conveyor{dir = 1; id = "garbage"},/obj/structure/sign/vacuum{pixel_x = -32},/turf/open/floor/plating,/area/maintenance/disposal) +"bmK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/disposal) +"bmL" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/disposal) +"bmM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/disposal) +"bmN" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) +"bmO" = (/obj/machinery/door/airlock/maintenance{name = "Disposal Access"; req_access_txt = "12"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/disposal) +"bmP" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmQ" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/port) +"bmR" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/port) +"bmS" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/port) +"bmW" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/port) +"bmX" = (/obj/structure/table,/obj/item/clothing/head/soft,/obj/item/clothing/head/soft,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmY" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/weapon/hand_labeler,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = 0; pixel_y = 30},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bmZ" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bna" = (/obj/machinery/camera{c_tag = "Cargo Bay North"},/obj/structure/closet/wardrobe/cargotech,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bnb" = (/turf/open/floor/plasteel,/area/quartermaster/storage) +"bnc" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bnd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bne" = (/obj/machinery/button/door{id = "qm_warehouse"; name = "Warehouse Door Control"; pixel_x = -1; pixel_y = 24; req_access_txt = "31"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bnf" = (/obj/machinery/photocopier,/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel,/area/quartermaster/office) +"bng" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel,/area/quartermaster/office) +"bnh" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/quartermaster/office) +"bni" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/machinery/airalarm{dir = 4; locked = 0; pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"bnj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"bnk" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"bnl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/chair{dir = 4},/obj/effect/landmark/start{name = "Cargo Technician"},/turf/open/floor/plasteel,/area/quartermaster/office) +"bnm" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/item/weapon/hand_labeler,/obj/item/weapon/hand_labeler,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"bnn" = (/obj/machinery/door/firedoor,/obj/machinery/door/window/westleft{name = "Delivery Desk"; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/office) +"bno" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bnp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bnq" = (/turf/closed/wall/r_wall,/area/maintenance/maintcentral) +"bnr" = (/turf/open/floor/plating,/area/maintenance/maintcentral) +"bns" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/maintcentral) +"bnt" = (/obj/machinery/power/apc{dir = 1; name = "Bridge Maintenance APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/maintcentral) +"bnu" = (/obj/structure/closet/wardrobe/black,/turf/open/floor/plating,/area/maintenance/maintcentral) +"bnv" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/bridge/meeting_room) +"bnw" = (/obj/machinery/newscaster/security_unit{pixel_x = -32; pixel_y = 0},/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/captain) +"bnx" = (/obj/machinery/door/window{base_state = "right"; dir = 4; icon_state = "right"; name = "Captain's Desk Door"; req_access_txt = "20"},/turf/open/floor/wood,/area/crew_quarters/captain) +"bny" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/wood,/area/crew_quarters/captain) +"bnz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/wood,/area/crew_quarters/captain) +"bnA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/wood,/area/crew_quarters/captain) +"bnB" = (/obj/structure/table/glass,/obj/machinery/reagentgrinder,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bnC" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bnD" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bnE" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/glass/beaker/large,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/dropper,/turf/open/floor/plasteel/whiteyellow/side{dir = 4},/area/medical/chemistry) +"bnF" = (/obj/machinery/smartfridge/chemistry,/turf/open/floor/plating,/area/medical/chemistry) +"bnG" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bnH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/whiteblue/corner{dir = 2},/area/medical/medbay) +"bnI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bnJ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bnK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bnL" = (/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bnM" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/medical) +"bnN" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint/medical) +"bnO" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/medical) +"bnP" = (/obj/machinery/camera{c_tag = "Medbay Morgue"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bnQ" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/storage/emergency) +"bnR" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/storage/emergency) +"bnS" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/storage/emergency) +"bnT" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/clothing/mask/breath,/obj/item/clothing/mask/breath,/turf/open/floor/plating,/area/storage/emergency) +"bnU" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"bnV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"bnW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bnX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bnY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_research{name = "Robotics Lab"; req_access_txt = "29"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bnZ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"boa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bob" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"boc" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = 6},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/obj/item/clothing/glasses/welding,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bod" = (/obj/structure/closet/firecloset,/obj/machinery/light{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"boe" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bof" = (/obj/machinery/shower{dir = 8},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bog" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = -30; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/lab) +"boh" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/toxins/lab) +"boi" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/lab) +"boj" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bok" = (/turf/closed/wall,/area/maintenance/asmaint2) +"bol" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_l"},/turf/open/floor/plating/airless,/area/shuttle/abandoned) +"bom" = (/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bon" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"boo" = (/obj/structure/table,/obj/item/weapon/screwdriver,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bop" = (/obj/machinery/conveyor{dir = 1; id = "garbage"; layer = 2.5},/obj/machinery/door/poddoor/preopen{id = "Disposal Exit"; layer = 3; name = "disposal exit vent"},/turf/open/floor/plating,/area/maintenance/disposal) +"boq" = (/obj/machinery/button/door{id = "Disposal Exit"; name = "Disposal Vent Control"; pixel_x = -25; pixel_y = 4; req_access_txt = "12"},/obj/machinery/button/massdriver{id = "trash"; pixel_x = -26; pixel_y = -6},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/disposal) +"bor" = (/turf/open/floor/plating,/area/maintenance/disposal) +"bos" = (/obj/effect/decal/cleanable/oil,/obj/machinery/light_switch{pixel_x = 25; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/disposal) +"bot" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/port) +"bou" = (/turf/closed/wall/r_wall,/area/maintenance/port) +"bov" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/port) +"bow" = (/obj/machinery/door/airlock/maintenance{name = "Cargo Bay Maintenance"; req_access_txt = "31"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/quartermaster/storage) +"box" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/quartermaster/storage) +"boy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"boz" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/storage) +"boA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/quartermaster/office) +"boB" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"boC" = (/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 2},/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"boD" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Cargo Office"; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/office) +"boE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"boF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"boG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/quartermaster/office) +"boH" = (/obj/structure/table/reinforced,/obj/item/device/destTagger,/obj/item/device/destTagger,/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel,/area/quartermaster/office) +"boI" = (/obj/structure/table/reinforced,/obj/item/stack/wrapping_paper{pixel_x = 3; pixel_y = 4},/obj/item/stack/packageWrap{pixel_x = -1; pixel_y = -1},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -26},/turf/open/floor/plasteel,/area/quartermaster/office) +"boJ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"boK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"boL" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/maintcentral) +"boM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/maintcentral) +"boN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/power/apc{dir = 2; name = "Head of Personnel APC"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/crew_quarters/heads) +"boO" = (/obj/effect/landmark{name = "blobstart"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/maintcentral) +"boP" = (/obj/machinery/power/apc{dir = 4; name = "Conference Room APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/bridge/meeting_room) +"boQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"boR" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"boS" = (/obj/machinery/gravity_generator/main/station,/turf/open/floor/plasteel/vault{dir = 8},/area/engine/gravity_generator) +"boT" = (/obj/machinery/camera{c_tag = "Gravity Generator Room"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"boU" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"boV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/crew_quarters/captain) +"boW" = (/obj/machinery/door/airlock/command{name = "Captain's Quarters"; req_access = null; req_access_txt = "20"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/captain) +"boX" = (/obj/machinery/door/airlock/maintenance{name = "Captain's Office Maintenance"; req_access_txt = "20"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/crew_quarters/captain) +"boY" = (/obj/structure/disposalpipe/segment,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"boZ" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/syringes,/obj/item/clothing/glasses/science{pixel_x = 2; pixel_y = 4},/obj/item/clothing/glasses/science,/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bpa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bpb" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bpc" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Chemistry Desk"; req_access_txt = "33"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/medical/chemistry) +"bpd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bpe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/medical/medbay) +"bpf" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bpg" = (/obj/structure/table/reinforced,/obj/item/weapon/reagent_containers/food/drinks/britcup{desc = "Kingston's personal cup."},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bph" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bpi" = (/obj/structure/table/reinforced,/obj/machinery/camera{c_tag = "Medbay Foyer"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/cell_charger,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bpj" = (/obj/machinery/power/apc{dir = 8; name = "Medbay Security APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/medical) +"bpk" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/security/checkpoint/medical) +"bpl" = (/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/medical) +"bpm" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable,/turf/open/floor/plating,/area/assembly/chargebay) +"bpn" = (/turf/open/floor/mech_bay_recharge_floor,/area/assembly/chargebay) +"bpo" = (/obj/machinery/computer/mech_bay_power_console,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"bpp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bpq" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bpr" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/assembly/robotics) +"bps" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 20; pixel_x = -3; pixel_y = 6},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/device/multitool{pixel_x = 3},/obj/item/device/multitool{pixel_x = 3},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/assembly/robotics) +"bpt" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/assembly/robotics) +"bpu" = (/obj/machinery/mecha_part_fabricator,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/assembly/robotics) +"bpv" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bpw" = (/obj/machinery/ai_status_display{pixel_x = 32; pixel_y = 0},/obj/structure/table,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bpx" = (/obj/structure/closet/firecloset,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bpy" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bpz" = (/obj/machinery/r_n_d/destructive_analyzer,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/lab) +"bpA" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/lab) +"bpB" = (/obj/machinery/r_n_d/protolathe,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/lab) +"bpC" = (/obj/structure/disposalpipe/segment,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bpD" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bpE" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/beaker/large{pixel_x = -3; pixel_y = 3},/obj/item/weapon/reagent_containers/glass/beaker{pixel_x = 8; pixel_y = 2},/obj/item/weapon/reagent_containers/dropper,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bpF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bpG" = (/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bpH" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bpI" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/obj/item/weapon/cigbutt,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bpJ" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bpK" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion"},/turf/open/floor/plating/airless,/area/shuttle/abandoned) +"bpL" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/shuttle/abandoned) +"bpM" = (/turf/open/floor/plating,/turf/closed/wall/mineral/titanium/interior,/area/shuttle/abandoned) +"bpN" = (/obj/machinery/computer/pod{id = "oldship_gun"},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bpO" = (/obj/machinery/light/small{dir = 8},/obj/machinery/mass_driver{id = "trash"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/disposal) +"bpP" = (/obj/machinery/conveyor_switch/oneway{convdir = -1; id = "garbage"; name = "disposal coveyor"},/turf/open/floor/plating,/area/maintenance/disposal) +"bpQ" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/disposal) +"bpR" = (/obj/structure/closet,/turf/open/floor/plating,/area/maintenance/disposal) +"bpS" = (/turf/closed/wall/mineral/titanium,/area/shuttle/supply) +"bpT" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/storage) +"bpU" = (/obj/structure/closet/emcloset,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpV" = (/obj/structure/closet/emcloset,/obj/machinery/airalarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpX" = (/obj/machinery/light{dir = 1},/obj/machinery/firealarm{pixel_y = 27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpY" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bpZ" = (/mob/living/simple_animal/sloth/paperwork,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bqa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bqb" = (/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"; req_access_txt = "31"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bqc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/office) +"bqd" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/office) +"bqe" = (/obj/machinery/status_display{density = 0; pixel_y = 2; supply_display = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/quartermaster/office) +"bqf" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) +"bqg" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/quartermaster/office) +"bqh" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Delivery Office"; req_access_txt = "50"},/turf/open/floor/plasteel,/area/quartermaster/office) +"bqi" = (/obj/machinery/light{dir = 8},/obj/machinery/door/firedoor,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bqj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bqk" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/maintcentral) +"bql" = (/turf/closed/wall,/area/crew_quarters/heads) +"bqm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/crew_quarters/heads) +"bqn" = (/obj/machinery/door/airlock/command{name = "Head of Personnel"; req_access = null; req_access_txt = "57"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/crew_quarters/heads) +"bqo" = (/turf/closed/wall/r_wall,/area/crew_quarters/heads) +"bqp" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"bqq" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"bqr" = (/obj/machinery/light/small{dir = 1},/obj/structure/dresser,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bqs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bqt" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/carpet,/area/crew_quarters/captain) +"bqu" = (/obj/machinery/door/airlock{name = "Private Restroom"; req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) +"bqv" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/obj/structure/mirror{pixel_x = 28},/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) +"bqw" = (/turf/closed/wall,/area/crew_quarters/captain) +"bqx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/crew_quarters/captain) +"bqy" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bqz" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bqA" = (/obj/structure/table/glass,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/item/stack/cable_coil/random,/obj/item/stack/cable_coil/random,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bqB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bqC" = (/obj/structure/disposalpipe/segment,/obj/machinery/chem_heater,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bqD" = (/obj/machinery/chem_dispenser,/turf/open/floor/plasteel/whiteyellow/side{dir = 2},/area/medical/chemistry) +"bqE" = (/obj/machinery/chem_master,/turf/open/floor/plasteel/whiteyellow/side{dir = 6},/area/medical/chemistry) +"bqF" = (/obj/item/device/radio/intercom{broadcasting = 1; freerange = 0; frequency = 1485; listening = 0; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -30},/obj/machinery/light,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bqG" = (/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bqH" = (/obj/structure/chair/office/light{dir = 8},/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Doors Control"; normaldoorcontrol = 1; pixel_x = -26; req_access_txt = "5"},/obj/effect/landmark/start{name = "Medical Doctor"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bqI" = (/obj/structure/chair/office/light{dir = 1},/obj/structure/sign/nosmoking_2{pixel_x = 28},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bqJ" = (/obj/structure/closet,/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/medical) +"bqK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/medical) +"bqL" = (/obj/machinery/light_switch{pixel_x = 28; pixel_y = 0},/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/device/radio/off,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/medical) +"bqM" = (/obj/structure/table,/obj/item/weapon/paper/morguereminder{pixel_x = 5; pixel_y = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqN" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/medical/morgue) +"bqS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Morgue Maintenance"; req_access_txt = "6"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/morgue) +"bqT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bqU" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/power/apc{dir = 1; name = "Starboard Emergency Storage APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/storage/emergency) +"bqV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/sortjunction{sortType = 9},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bqW" = (/obj/machinery/light{dir = 8},/obj/machinery/camera{c_tag = "Mech Bay"; dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bqX" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bqY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bqZ" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bra" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/assembly/robotics) +"brb" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/item/stack/cable_coil,/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/robotics) +"brc" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Roboticist"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/robotics) +"brd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/assembly/robotics) +"bre" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"brf" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"brg" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"brh" = (/obj/machinery/door/airlock/research{cyclelinkeddir = 1; name = "Research Division Access"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bri" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) +"brj" = (/obj/machinery/computer/rdconsole/core,/turf/open/floor/plasteel,/area/toxins/lab) +"brk" = (/turf/open/floor/plasteel,/area/toxins/lab) +"brl" = (/obj/machinery/r_n_d/circuit_imprinter,/obj/item/weapon/reagent_containers/glass/beaker/sulphuric,/turf/open/floor/plasteel,/area/toxins/lab) +"brm" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/toxins/lab) +"brn" = (/obj/structure/table/glass,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/micro_laser,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bro" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"brp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"brq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"brr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint2) +"brs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/maintenance/asmaint2) +"brt" = (/turf/open/floor/plating,/area/shuttle/abandoned) +"bru" = (/turf/open/floor/mineral/titanium,/turf/closed/wall/mineral/titanium/interior,/area/shuttle/abandoned) +"brv" = (/obj/structure/rack,/obj/item/clothing/suit/space/hardsuit/medical,/obj/item/clothing/mask/breath,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"brw" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plating,/area/shuttle/abandoned) +"brx" = (/obj/machinery/mass_driver{dir = 4; icon_state = "mass_driver"; id = "oldship_gun"},/turf/open/floor/plating,/area/shuttle/abandoned) +"bry" = (/obj/machinery/door/poddoor{id = "oldship_gun"; name = "pod bay door"},/turf/open/floor/plating,/area/shuttle/abandoned) +"brz" = (/obj/machinery/door/poddoor{id = "trash"; name = "disposal bay door"},/turf/open/floor/plating,/area/maintenance/disposal) +"brA" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/supply) +"brB" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) +"brC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"brD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"brE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/storage) +"brF" = (/obj/machinery/door/airlock/glass_mining{name = "Cargo Bay"; req_access_txt = "31"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/storage) +"brG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/office) +"brH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"brI" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"brJ" = (/obj/item/weapon/stamp{pixel_x = -3; pixel_y = 3},/obj/item/weapon/stamp/denied{pixel_x = 4; pixel_y = -2},/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"brK" = (/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/clipboard,/obj/item/weapon/pen/red,/obj/structure/table,/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel,/area/quartermaster/office) +"brL" = (/obj/machinery/computer/cargo/request,/turf/open/floor/plasteel,/area/quartermaster/office) +"brM" = (/obj/machinery/firealarm{pixel_y = 27},/turf/open/floor/plasteel,/area/quartermaster/office) +"brN" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/quartermaster/office) +"brO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"brP" = (/turf/open/floor/plasteel/red/corner{dir = 2},/area/hallway/primary/central) +"brQ" = (/obj/machinery/button/flasher{id = "hopflash"; pixel_x = 6; pixel_y = 36},/obj/machinery/button/door{id = "hop"; name = "Privacy Shutters Control"; pixel_x = 6; pixel_y = 25; req_access_txt = "57"},/obj/machinery/button/door{id = "hopqueue"; name = "Queue Shutters Control"; pixel_x = -4; pixel_y = 25; req_access_txt = "57"},/obj/machinery/light_switch{pixel_x = -4; pixel_y = 36},/obj/machinery/pdapainter,/turf/open/floor/plasteel/blue/side{dir = 9},/area/crew_quarters/heads) +"brR" = (/obj/structure/table,/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = 32},/obj/item/weapon/hand_labeler,/obj/item/stack/packageWrap,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"brS" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching Prison Wing holding areas."; name = "Prison Monitor"; network = list("Prison"); pixel_x = 0; pixel_y = 30},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"brT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/bed/dogbed{anchored = 1; desc = "Ian's bed! Looks comfy."; name = "Ian's bed"},/mob/living/simple_animal/pet/dog/corgi/Ian{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"brU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"brV" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) +"brW" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) +"brX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/glass_engineering{name = "Gravity Generator"; req_access_txt = "11"; req_one_access_txt = "0"},/turf/open/floor/plasteel/black,/area/engine/gravity_generator) +"brY" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 32; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/gravity_generator) +"brZ" = (/obj/structure/bed,/obj/item/weapon/bedsheet/captain,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/carpet,/area/crew_quarters/captain) +"bsa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/captain) +"bsb" = (/obj/structure/table/wood,/obj/item/device/flashlight/lamp/green,/turf/open/floor/carpet,/area/crew_quarters/captain) +"bsc" = (/obj/structure/toilet{dir = 4},/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) +"bsd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bse" = (/obj/structure/table/glass,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/screwdriver{pixel_x = -2; pixel_y = 6},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bsf" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bsg" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/device/radio/headset/headset_med,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bsh" = (/turf/closed/wall,/area/medical/medbay) +"bsi" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "MedbayFoyer"; name = "Medbay"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 1},/area/medical/medbay) +"bsj" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "MedbayFoyer"; name = "Medbay"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 1},/area/medical/medbay) +"bsk" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/medbay) +"bsl" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bsm" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 30; pixel_y = 0; pixel_z = 0},/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bsn" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/security/checkpoint/medical) +"bso" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/security/checkpoint/medical) +"bsp" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/medical{name = "Morgue"; req_access_txt = "6;5"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/morgue) +"bsq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/medical/morgue) +"bsr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/medical/morgue) +"bss" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall/r_wall,/area/medical/genetics) +"bst" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/genetics) +"bsu" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bsv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/assembly/chargebay) +"bsw" = (/obj/machinery/mech_bay_recharge_port,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/assembly/chargebay) +"bsx" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bsy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bsz" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/assembly/robotics) +"bsA" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel,/area/assembly/robotics) +"bsB" = (/turf/open/floor/plasteel,/area/assembly/robotics) +"bsC" = (/obj/structure/table,/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/device/assembly/prox_sensor{pixel_x = -8; pixel_y = 4},/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus{pixel_x = 5; pixel_y = -5},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/crowbar,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bsD" = (/turf/closed/wall,/area/assembly/robotics) +"bsE" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) +"bsF" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) +"bsG" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) +"bsH" = (/turf/closed/wall,/area/toxins/lab) +"bsI" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bsJ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bsK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bsL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bsM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bsN" = (/obj/item/weapon/stock_parts/console_screen,/obj/structure/table/glass,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/console_screen,/obj/item/weapon/stock_parts/matter_bin,/obj/item/weapon/stock_parts/matter_bin,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/weapon/stock_parts/scanning_module{pixel_x = 2; pixel_y = 3},/obj/item/weapon/stock_parts/scanning_module,/obj/machinery/power/apc{dir = 4; name = "Research Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bsO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/plasticflaps{opacity = 1},/turf/open/floor/plasteel/loadingarea,/area/toxins/lab) +"bsP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/toxins/lab) +"bsQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bsR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bsS" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bsT" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/storage) +"bsU" = (/obj/machinery/conveyor_switch/oneway{id = "QMLoad2"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bsV" = (/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bsW" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/quartermaster/storage) +"bsX" = (/turf/open/floor/plasteel/brown/corner{dir = 1},/area/quartermaster/office) +"bsY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"bsZ" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"bta" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"btb" = (/obj/effect/landmark/start{name = "Cargo Technician"},/obj/structure/chair/office/dark{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"btc" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor,/obj/machinery/door/window/westleft{name = "Cargo Desk"; req_access_txt = "50"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/office) +"btd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/quartermaster/office) +"bte" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/office) +"btf" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"btg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bth" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/hallway/primary/central) +"bti" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/poddoor/shutters/preopen{id = "hopqueue"; name = "HoP Queue Shutters"},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/hallway/primary/central) +"btj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/hallway/primary/central) +"btk" = (/obj/structure/table/reinforced,/obj/machinery/door/window/northleft{dir = 8; icon_state = "left"; name = "Reception Window"; req_access_txt = "0"},/obj/machinery/door/window/brigdoor{base_state = "rightsecure"; dir = 4; icon_state = "rightsecure"; name = "Head of Personnel's Desk"; req_access = null; req_access_txt = "57"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/flasher{id = "hopflash"; pixel_x = 0; pixel_y = 28},/obj/machinery/door/poddoor/shutters/preopen{id = "hop"; layer = 2.9; name = "Privacy Shutters"},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"btl" = (/obj/structure/chair/office/dark{dir = 8},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 8},/area/crew_quarters/heads) +"btm" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/heads) +"btn" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/carpet,/area/crew_quarters/heads) +"bto" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/heads) +"btp" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"btq" = (/obj/structure/chair/office/light,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"btr" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bts" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"btt" = (/obj/structure/closet/secure_closet/captains,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/carpet,/area/crew_quarters/captain) +"btu" = (/obj/structure/chair/comfy/brown{dir = 4},/obj/machinery/camera{c_tag = "Captain's Quarters"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/crew_quarters/captain) +"btv" = (/obj/structure/table/wood,/obj/item/weapon/storage/box/matches,/obj/item/weapon/razor{pixel_x = -4; pixel_y = 2},/obj/item/clothing/mask/cigarette/cigar,/obj/item/weapon/reagent_containers/food/drinks/flask/gold,/turf/open/floor/carpet,/area/crew_quarters/captain) +"btw" = (/obj/machinery/shower{dir = 1},/obj/item/weapon/soap/deluxe,/obj/item/weapon/bikehorn/rubberducky,/obj/effect/landmark{name = "revenantspawn"},/obj/structure/curtain,/turf/open/floor/plasteel/freezer,/area/crew_quarters/captain) +"btx" = (/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bty" = (/obj/structure/closet/wardrobe/chemistry_white,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"btz" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/table,/obj/item/weapon/book/manual/wiki/chemistry,/obj/item/weapon/book/manual/wiki/chemistry{pixel_x = 3; pixel_y = 3},/turf/open/floor/plasteel/white,/area/medical/chemistry) +"btA" = (/obj/structure/chair,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"btB" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/stack/packageWrap,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"btC" = (/obj/structure/bed/roller,/obj/machinery/button/door{desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; name = "Medbay Exit Button"; normaldoorcontrol = 1; pixel_x = 0; pixel_y = 26},/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btD" = (/obj/machinery/status_display,/turf/closed/wall,/area/medical/medbay) +"btE" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Medbay Reception"; req_access_txt = "5"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btF" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"btH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btI" = (/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 30},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btJ" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"btL" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"btM" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"btN" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/medical/medbay) +"btO" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/genetics) +"btP" = (/obj/structure/table/glass,/obj/item/weapon/folder/white,/obj/item/device/radio/headset/headset_medsci,/obj/machinery/requests_console{department = "Genetics"; departmentType = 0; name = "Genetics Requests Console"; pixel_x = 0; pixel_y = 30},/obj/item/weapon/storage/pill_bottle/mutadone,/obj/item/weapon/storage/pill_bottle/mannitol,/turf/open/floor/plasteel/white,/area/medical/genetics) +"btQ" = (/obj/machinery/power/apc{dir = 1; name = "Genetics APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/white,/area/medical/genetics) +"btR" = (/obj/machinery/light{dir = 1},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/white,/area/medical/genetics) +"btS" = (/obj/machinery/dna_scannernew,/turf/open/floor/plasteel/whiteblue/side{dir = 5},/area/medical/genetics) +"btT" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/plasteel,/area/medical/genetics) +"btU" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel,/area/medical/genetics) +"btV" = (/turf/closed/wall/r_wall,/area/medical/genetics) +"btW" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall/r_wall,/area/assembly/chargebay) +"btX" = (/obj/structure/extinguisher_cabinet{pixel_x = -27},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"btY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"btZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/bluegrid,/area/assembly/chargebay) +"bua" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bub" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/assembly/chargebay) +"buc" = (/obj/structure/table,/obj/item/weapon/retractor,/obj/item/weapon/hemostat,/turf/open/floor/plasteel,/area/assembly/robotics) +"bud" = (/obj/structure/table,/obj/item/device/mmi,/obj/item/device/mmi,/obj/item/device/mmi,/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/open/floor/plasteel,/area/assembly/robotics) +"bue" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/weapon/storage/firstaid/regular{empty = 1; name = "First-Aid (empty)"},/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/obj/item/device/healthanalyzer,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"buf" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/obj/structure/window/fulltile,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/turf/open/floor/plating,/area/assembly/robotics) +"bug" = (/turf/open/floor/plasteel/white/corner{dir = 2},/area/medical/research{name = "Research Division"}) +"buh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 2},/area/medical/research{name = "Research Division"}) +"bui" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white/corner{dir = 8},/area/medical/research{name = "Research Division"}) +"buj" = (/obj/item/weapon/folder/white,/obj/structure/table,/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/tech_disk{pixel_x = 0; pixel_y = 0},/obj/item/weapon/disk/design_disk,/obj/item/weapon/disk/design_disk,/turf/open/floor/plasteel/white,/area/toxins/lab) +"buk" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bul" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bum" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/lab) +"bun" = (/obj/machinery/light_switch{pixel_x = 0; pixel_y = -23},/turf/open/floor/plasteel/white,/area/toxins/lab) +"buo" = (/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Research Division Delivery"; req_access_txt = "47"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/toxins/lab) +"bup" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "Research Division"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/toxins/lab) +"buq" = (/turf/closed/wall/r_wall,/area/toxins/explab) +"bur" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "propulsion_r"},/turf/open/floor/plating/airless,/area/shuttle/abandoned) +"bus" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/plating,/area/shuttle/abandoned) +"but" = (/obj/item/weapon/stock_parts/cell{charge = 100; maxcharge = 15000},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"buu" = (/obj/structure/rack,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"buv" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"buw" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/door/poddoor{id = "QMLoaddoor2"; name = "supply dock loading door"},/turf/open/floor/plating,/area/shuttle/supply) +"bux" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/machinery/door/poddoor{id = "QMLoaddoor2"; name = "supply dock loading door"},/turf/open/floor/plating,/area/quartermaster/storage) +"buy" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/turf/open/floor/plating,/area/quartermaster/storage) +"buz" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad2"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/quartermaster/storage) +"buA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/loadingarea{dir = 4},/area/quartermaster/storage) +"buB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/storage) +"buC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) +"buD" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/storage) +"buE" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel,/area/quartermaster/storage) +"buF" = (/obj/machinery/autolathe,/obj/machinery/light_switch{pixel_x = -27},/turf/open/floor/plasteel,/area/quartermaster/office) +"buG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"buH" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"buI" = (/obj/machinery/computer/cargo,/turf/open/floor/plasteel,/area/quartermaster/office) +"buJ" = (/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/office) +"buK" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/quartermaster/office) +"buL" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/quartermaster/office) +"buM" = (/turf/open/floor/plasteel/red/corner{dir = 4},/area/hallway/primary/central) +"buN" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/hallway/primary/central) +"buO" = (/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/primary/central) +"buP" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/shutters/preopen{id = "hop"; layer = 2.9; name = "Privacy Shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/heads) +"buQ" = (/obj/machinery/computer/card,/turf/open/floor/plasteel/blue/side{dir = 10},/area/crew_quarters/heads) +"buR" = (/turf/open/floor/carpet,/area/crew_quarters/heads) +"buS" = (/obj/machinery/holopad,/turf/open/floor/carpet,/area/crew_quarters/heads) +"buT" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"buU" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/apc{dir = 8; name = "Gravity Generator APC"; pixel_x = -25; pixel_y = 1},/obj/structure/table,/obj/item/weapon/paper/gravity_gen{layer = 3},/obj/item/weapon/pen/blue,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"buV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"buW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/holopad,/turf/open/floor/plasteel,/area/engine/gravity_generator) +"buX" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/obj/machinery/power/smes{charge = 5e+006},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"buY" = (/turf/closed/wall/r_wall,/area/teleporter) +"buZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/teleporter) +"bva" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/teleporter) +"bvb" = (/obj/machinery/door/airlock/maintenance{name = "Teleporter Maintenance"; req_access_txt = "17"},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/teleporter) +"bvc" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bvd" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bve" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Chemistry Lab"; req_access_txt = "5; 33"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/chemistry) +"bvf" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/medical/chemistry) +"bvg" = (/obj/structure/table/reinforced,/obj/machinery/door/window/southleft{dir = 1; name = "Chemistry Desk"; req_access_txt = "33"},/obj/machinery/door/firedoor,/turf/open/floor/plating,/area/medical/chemistry) +"bvh" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvi" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvk" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvn" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvo" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bvp" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/rxglasses,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bvq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bvr" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Geneticist"},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bvs" = (/obj/machinery/computer/scan_consolenew,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/genetics) +"bvt" = (/obj/structure/window/reinforced{dir = 8},/mob/living/carbon/monkey,/turf/open/floor/plasteel,/area/medical/genetics) +"bvu" = (/turf/open/floor/plasteel,/area/medical/genetics) +"bvv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 14},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"bvw" = (/obj/machinery/door/airlock/maintenance{name = "Mech Bay Maintenance"; req_access_txt = "29"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/assembly/chargebay) +"bvx" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bvy" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bvz" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bvA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/assembly/chargebay) +"bvB" = (/obj/structure/table,/obj/item/weapon/circular_saw,/obj/item/weapon/scalpel{pixel_y = 12},/turf/open/floor/plasteel/white/corner{dir = 2},/area/assembly/robotics) +"bvC" = (/obj/structure/table,/obj/item/clothing/gloves/color/latex,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/open/floor/plasteel/white/corner{dir = 8},/area/assembly/robotics) +"bvD" = (/obj/machinery/button/door{dir = 2; id = "robotics2"; name = "Shutters Control Button"; pixel_x = 24; pixel_y = -24; req_access_txt = "29"},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bvE" = (/obj/structure/table/reinforced,/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "Robotics Desk"; req_access_txt = "29"},/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plating,/area/assembly/robotics) +"bvF" = (/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bvG" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bvH" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd2"; name = "research lab shutters"},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/lab) +"bvI" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd2"; name = "research lab shutters"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bvJ" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/shutters/preopen{id = "rnd2"; name = "research lab shutters"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/toxins/lab) +"bvK" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 0; pixel_y = 6},/turf/open/floor/plasteel/white/corner{dir = 2},/area/toxins/explab) +"bvL" = (/obj/structure/table,/obj/item/weapon/pen,/obj/machinery/camera{c_tag = "Experimentor Lab"; dir = 2; network = list("SS13","RD")},/obj/item/weapon/hand_labeler,/obj/item/stack/packageWrap,/turf/open/floor/plasteel/white/side{dir = 2},/area/toxins/explab) +"bvM" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/item/device/radio/off,/turf/open/floor/plasteel/white/side{dir = 2},/area/toxins/explab) +"bvN" = (/obj/structure/closet/l3closet/scientist,/turf/open/floor/plasteel/white/side{dir = 2},/area/toxins/explab) +"bvO" = (/obj/structure/closet/emcloset{pixel_x = -2},/turf/open/floor/plasteel/white/corner{dir = 8},/area/toxins/explab) +"bvP" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bvQ" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bvR" = (/obj/item/weapon/shard{icon_state = "medium"},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bvS" = (/obj/machinery/door/airlock/titanium{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/turf/open/floor/plating,/area/shuttle/supply) +"bvT" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Supply Dock Airlock"; req_access_txt = "31"},/turf/open/floor/plating,/area/quartermaster/storage) +"bvU" = (/turf/open/floor/plating,/area/quartermaster/storage) +"bvV" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Supply Dock Airlock"; req_access_txt = "31"},/turf/open/floor/plating,/area/quartermaster/storage) +"bvW" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bvX" = (/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bvY" = (/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bvZ" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #1"},/obj/effect/turf_decal/bot,/mob/living/simple_animal/bot/mulebot{beacon_freq = 1400; home_destination = "QM #1"; suffix = "#1"},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bwa" = (/obj/structure/table,/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/device/multitool,/obj/machinery/camera{c_tag = "Cargo Office"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel,/area/quartermaster/office) +"bwb" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_mining{name = "Cargo Office"; req_access_txt = "50"},/turf/open/floor/plasteel,/area/quartermaster/office) +"bwc" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/quartermaster/office) +"bwd" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bwe" = (/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bwf" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = -32},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/door/poddoor/shutters/preopen{id = "hop"; layer = 2.9; name = "Privacy Shutters"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/heads) +"bwg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bwh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/carpet,/area/crew_quarters/heads) +"bwi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/crew_quarters/heads) +"bwj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bwk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bwl" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bwm" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bwn" = (/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bwo" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bwp" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bwq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bwr" = (/turf/closed/wall,/area/teleporter) +"bws" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/obj/structure/table,/obj/item/device/radio/beacon,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/teleporter) +"bwt" = (/obj/structure/table,/obj/item/weapon/hand_tele,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/teleporter) +"bwu" = (/obj/item/device/radio/intercom{broadcasting = 0; listening = 1; name = "Station Intercom (General)"; pixel_y = 20},/obj/structure/closet/crate,/obj/item/weapon/crowbar,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/teleporter) +"bwv" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/teleporter) +"bww" = (/obj/machinery/camera{c_tag = "Teleporter"},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/teleporter) +"bwx" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/teleporter) +"bwy" = (/obj/machinery/light_switch{pixel_x = 27},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/teleporter) +"bwz" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"bwA" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bwB" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bwC" = (/obj/structure/table,/obj/item/weapon/crowbar,/obj/item/clothing/neck/stethoscope,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/corner{dir = 4},/area/medical/medbay) +"bwD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/medbay) +"bwE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/medbay) +"bwF" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/side{dir = 1},/area/medical/medbay) +"bwG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteyellow/corner{dir = 1},/area/medical/medbay) +"bwH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/camera{c_tag = "Medbay West"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwI" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bwO" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/whiteblue/corner{dir = 2},/area/medical/medbay) +"bwP" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/medbay) +"bwQ" = (/obj/structure/bed/roller,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/medbay) +"bwR" = (/obj/structure/table/glass,/obj/item/weapon/storage/box/disks{pixel_x = 2; pixel_y = 2},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bwS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bwT" = (/turf/open/floor/plasteel/white,/area/medical/genetics) +"bwU" = (/obj/machinery/door/window/westleft{name = "Monkey Pen"; req_access_txt = "9"},/turf/open/floor/plasteel,/area/medical/genetics) +"bwV" = (/obj/structure/table,/obj/item/weapon/crowbar/large,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bwW" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bwX" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bwY" = (/obj/machinery/recharge_station,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/assembly/chargebay) +"bwZ" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/turf/open/floor/plasteel/white/side{dir = 4},/area/assembly/robotics) +"bxa" = (/obj/structure/table/optable{name = "Robotics Operating Table"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bxb" = (/obj/machinery/computer/operating{name = "Robotics Operating Computer"},/obj/machinery/light,/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bxc" = (/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bxd" = (/obj/structure/closet/wardrobe/robotics_black,/obj/item/device/radio/headset/headset_sci{pixel_x = -3},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"bxe" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bxf" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bxh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/noticeboard{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxi" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Research Division North"; dir = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 10},/area/medical/research{name = "Research Division"}) +"bxk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxl" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 6},/area/medical/research{name = "Research Division"}) +"bxn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bxo" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/explab) +"bxp" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxq" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bxu" = (/obj/machinery/door/airlock/maintenance{name = "Experimentation Lab Maintenance"; req_access_txt = "7"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/explab) +"bxv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 1},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bxw" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/abandoned) +"bxx" = (/obj/machinery/button/door{dir = 2; id = "QMLoaddoor2"; name = "Loading Doors"; pixel_x = 24; pixel_y = 8},/obj/machinery/button/door{id = "QMLoaddoor"; name = "Loading Doors"; pixel_x = 24; pixel_y = -8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/supply) +"bxy" = (/obj/machinery/camera{c_tag = "Cargo Recieving Dock"; dir = 4},/obj/machinery/button/door{id = "QMLoaddoor"; layer = 4; name = "Loading Doors"; pixel_x = -24; pixel_y = -8},/obj/machinery/button/door{dir = 2; id = "QMLoaddoor2"; layer = 4; name = "Loading Doors"; pixel_x = -24; pixel_y = 8},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bxz" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #2"},/obj/effect/turf_decal/bot,/mob/living/simple_animal/bot/mulebot{home_destination = "QM #2"; suffix = "#2"},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bxA" = (/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/folder/yellow,/turf/open/floor/plasteel,/area/quartermaster/office) +"bxB" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/quartermaster/office) +"bxC" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"bxD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/office) +"bxE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/quartermaster/office) +"bxF" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/office) +"bxG" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bxH" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/blue/side{dir = 9},/area/crew_quarters/heads) +"bxI" = (/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bxJ" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bxK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bxL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bxM" = (/turf/closed/wall/r_wall,/area/engine/gravity_generator) +"bxN" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/engineering{name = "Gravity Generator"; req_access_txt = "11"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/gravity_generator) +"bxO" = (/obj/machinery/power/apc{dir = 8; name = "Teleporter APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/teleporter) +"bxP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/teleporter) +"bxQ" = (/obj/machinery/holopad,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/teleporter) +"bxR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/bluespace_beacon,/turf/open/floor/plasteel,/area/teleporter) +"bxS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/teleporter) +"bxT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/teleporter) +"bxU" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{name = "Teleport Access"; req_access_txt = "17"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/teleporter) +"bxV" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"bxW" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bxX" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bxY" = (/obj/structure/table,/obj/item/weapon/storage/box/masks{pixel_x = 0; pixel_y = 0},/obj/item/weapon/storage/box/gloves{pixel_x = 3; pixel_y = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bxZ" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bya" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byb" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -30},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bye" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"byf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byh" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byi" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byj" = (/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = 30; pixel_y = 0},/obj/machinery/camera{c_tag = "Medbay East"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/turf/open/floor/plasteel/white,/area/medical/medbay) +"byk" = (/turf/closed/wall,/area/medical/genetics) +"byl" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_medical{id_tag = "GeneticsDoor"; name = "Genetics"; req_access_txt = "5; 68"},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bym" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"byn" = (/obj/structure/chair/office/light{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"byo" = (/obj/machinery/computer/scan_consolenew,/turf/open/floor/plasteel/whiteblue/side{dir = 5},/area/medical/genetics) +"byp" = (/obj/structure/grille,/obj/machinery/door/poddoor/shutters/preopen{id = "robotics2"; name = "robotics lab shutters"},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/assembly/robotics) +"byq" = (/obj/machinery/door/airlock/research{name = "Robotics Lab"; req_access_txt = "29"; req_one_access_txt = "0"},/turf/open/floor/plasteel/white,/area/assembly/robotics) +"byr" = (/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bys" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byt" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"byu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byw" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byx" = (/obj/machinery/light,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"byz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/research{name = "Experimentation Lab"; req_access_txt = "7"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byA" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byC" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/toxins/explab) +"byE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byF" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byG" = (/obj/machinery/power/apc{dir = 4; name = "Experimentation Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/explab) +"byH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/explab) +"byI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"byJ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint2) +"byK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint2) +"byL" = (/obj/machinery/door/airlock/titanium,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"byM" = (/obj/machinery/door/airlock/titanium{name = "Supply Shuttle Airlock"; req_access_txt = "31"},/obj/docking_port/mobile/supply{dwidth = 5; width = 12},/obj/docking_port/stationary{dir = 8; dwidth = 5; height = 7; id = "supply_home"; name = "Cargo Bay"; width = 12},/turf/open/floor/plating,/area/shuttle/supply) +"byN" = (/obj/machinery/conveyor_switch/oneway{convdir = -1; id = "QMLoad"},/turf/open/floor/plasteel,/area/quartermaster/storage) +"byO" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/storage) +"byP" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #3"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/storage) +"byQ" = (/obj/structure/table,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel,/area/quartermaster/office) +"byR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"byS" = (/obj/machinery/mineral/ore_redemption{input_dir = 8; output_dir = 4},/obj/machinery/door/firedoor,/turf/open/floor/plasteel/floorgrime,/area/quartermaster/office) +"byT" = (/turf/open/floor/plasteel/loadingarea{dir = 4},/area/quartermaster/office) +"byU" = (/obj/structure/chair{dir = 8},/obj/machinery/light,/turf/open/floor/plasteel,/area/quartermaster/office) +"byV" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/hallway/primary/central) +"byW" = (/obj/machinery/keycard_auth{pixel_x = -24; pixel_y = 0},/obj/machinery/computer/cargo,/turf/open/floor/plasteel/blue/side{dir = 8},/area/crew_quarters/heads) +"byX" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Head of Personnel"},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"byY" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/item/weapon/stamp/hop,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"byZ" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bza" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall,/area/engine/gravity_generator) +"bzb" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bzc" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/camera{c_tag = "Gravity Generator Foyer"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bzd" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/closed/wall,/area/engine/gravity_generator) +"bze" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/teleporter) +"bzf" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/teleporter) +"bzg" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/teleporter) +"bzh" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/teleporter) +"bzi" = (/obj/machinery/shieldwallgen,/obj/structure/window/reinforced{dir = 8},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/teleporter) +"bzj" = (/obj/machinery/shieldwallgen,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/teleporter) +"bzk" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/teleporter) +"bzl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/blue/side{dir = 8},/area/hallway/primary/central) +"bzm" = (/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = -30; pixel_y = 0; pixel_z = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bzn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bzo" = (/obj/machinery/vending/medical{pixel_x = -2},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bzp" = (/turf/closed/wall,/area/medical/sleeper) +"bzq" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/sleeper) +"bzr" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bzs" = (/obj/machinery/button/door{desc = "A remote control switch for the genetics doors."; id = "GeneticsDoor"; name = "Genetics Exit Button"; normaldoorcontrol = 1; pixel_x = 8; pixel_y = 24},/obj/structure/table,/obj/item/weapon/book/manual/medical_cloning{pixel_y = 6},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzt" = (/obj/structure/closet/wardrobe/white,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzu" = (/obj/structure/closet/secure_closet/personal/patient,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzv" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzw" = (/obj/machinery/dna_scannernew,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/genetics) +"bzx" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/open/floor/plasteel,/area/medical/genetics) +"bzy" = (/obj/structure/window/reinforced,/mob/living/carbon/monkey,/turf/open/floor/plasteel,/area/medical/genetics) +"bzz" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 12},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzA" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/sign/securearea{pixel_x = 32},/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bzB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) +"bzC" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) +"bzD" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/research{name = "Research Division"}) +"bzE" = (/obj/machinery/camera{c_tag = "Research Division West"; dir = 2; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzF" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzG" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 10},/area/medical/research{name = "Research Division"}) +"bzI" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 6},/area/medical/research{name = "Research Division"}) +"bzK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bzL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bzM" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bzN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/crew_quarters/hor) +"bzO" = (/turf/closed/wall,/area/crew_quarters/hor) +"bzP" = (/turf/closed/wall/r_wall,/area/crew_quarters/hor) +"bzQ" = (/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzR" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzS" = (/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzT" = (/obj/structure/chair/office/light,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzU" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bzV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bzW" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bzX" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bzY" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bzZ" = (/turf/open/floor/plating,/area/maintenance/asmaint2) +"bAa" = (/obj/machinery/door/window,/turf/open/floor/mineral/titanium/purple,/area/shuttle/abandoned) +"bAb" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/mineral/titanium/purple,/area/shuttle/abandoned) +"bAc" = (/obj/structure/table,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bAd" = (/obj/structure/table,/obj/item/weapon/gun/energy/laser/retro,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bAe" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/door/poddoor{id = "QMLoaddoor"; name = "supply dock loading door"},/turf/open/floor/plating,/area/shuttle/supply) +"bAf" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/door/poddoor{id = "QMLoaddoor"; name = "supply dock loading door"},/turf/open/floor/plating,/area/quartermaster/storage) +"bAg" = (/obj/structure/plasticflaps,/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/turf/open/floor/plating,/area/quartermaster/storage) +"bAh" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/quartermaster/storage) +"bAi" = (/obj/machinery/conveyor{dir = 4; id = "QMLoad"},/obj/machinery/light,/obj/machinery/status_display{density = 0; pixel_y = -30; supply_display = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/quartermaster/storage) +"bAj" = (/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/quartermaster/storage) +"bAk" = (/obj/machinery/camera{c_tag = "Cargo Bay South"; dir = 1},/turf/open/floor/plasteel,/area/quartermaster/storage) +"bAl" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 8; freq = 1400; location = "QM #4"},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/quartermaster/storage) +"bAm" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/open/floor/plasteel,/area/quartermaster/office) +"bAn" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/quartermaster/office) +"bAo" = (/obj/machinery/light,/obj/machinery/power/apc{dir = 2; name = "Cargo Office APC"; pixel_x = 1; pixel_y = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/brown/corner{dir = 2},/area/quartermaster/office) +"bAp" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/office) +"bAq" = (/turf/open/floor/plasteel/brown/corner{dir = 8},/area/quartermaster/office) +"bAr" = (/turf/closed/wall,/area/security/checkpoint/supply) +"bAs" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/supply) +"bAt" = (/obj/machinery/camera{c_tag = "Cargo Bay Entrance"; dir = 4; network = list("SS13")},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bAu" = (/obj/machinery/door/poddoor/shutters/preopen{id = "hopqueue"; name = "HoP Queue Shutters"},/turf/open/floor/plasteel/loadingarea{dir = 4},/area/hallway/primary/central) +"bAv" = (/obj/item/device/radio/intercom{dir = 8; name = "Station Intercom (General)"; pixel_x = -28},/obj/structure/closet/secure_closet/hop,/turf/open/floor/plasteel/blue/side{dir = 10},/area/crew_quarters/heads) +"bAw" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Head of Personnel's Desk"; departmentType = 5; name = "Head of Personnel RC"; pixel_y = -30},/obj/machinery/camera{c_tag = "Head of Personnel's Office"; dir = 1},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bAx" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bAy" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bAz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bAA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/engine/gravity_generator) +"bAB" = (/obj/structure/closet/radiation,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = -32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bAC" = (/obj/structure/closet/radiation,/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/gravity_generator) +"bAD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/engine/gravity_generator) +"bAE" = (/obj/machinery/computer/teleporter,/turf/open/floor/plating,/area/teleporter) +"bAF" = (/obj/machinery/teleport/station,/turf/open/floor/plating,/area/teleporter) +"bAG" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/teleporter) +"bAH" = (/obj/structure/rack,/obj/item/weapon/tank/internals/oxygen,/obj/item/clothing/mask/gas,/turf/open/floor/plating,/area/teleporter) +"bAI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bAJ" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; dir = 4; freq = 1400; location = "Medbay"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/medbay) +"bAK" = (/obj/machinery/door/window/eastleft{name = "Medical Delivery"; req_access_txt = "5"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/medical/medbay) +"bAL" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bAM" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bAN" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bAO" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bAP" = (/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bAQ" = (/turf/open/floor/plasteel/white/side{dir = 8},/area/medical/sleeper) +"bAR" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/open/floor/plasteel,/area/medical/sleeper) +"bAS" = (/obj/structure/sign/nosmoking_2,/turf/closed/wall,/area/medical/sleeper) +"bAT" = (/obj/structure/table/glass,/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 7; pixel_y = 1},/turf/open/floor/plasteel,/area/medical/sleeper) +"bAU" = (/obj/machinery/atmospherics/components/unary/cryo_cell,/turf/open/floor/plasteel,/area/medical/sleeper) +"bAV" = (/obj/structure/table,/obj/machinery/cell_charger,/turf/open/floor/plasteel,/area/medical/sleeper) +"bAW" = (/obj/structure/table/glass,/obj/machinery/camera{c_tag = "Medbay Cryogenics"; dir = 2; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/obj/item/weapon/reagent_containers/glass/beaker/cryoxadone{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel,/area/medical/sleeper) +"bAX" = (/obj/machinery/camera{c_tag = "Genetics Cloning"; dir = 4; network = list("SS13")},/obj/structure/table,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/item/weapon/storage/box/rxglasses{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/bodybags,/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bAY" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bAZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBa" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/genetics) +"bBb" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBe" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whitepurple/side{dir = 4},/area/medical/genetics) +"bBf" = (/obj/machinery/door/airlock/research{name = "Genetics Research"; req_access_txt = "9"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBg" = (/obj/structure/disposalpipe/sortjunction{sortType = 23},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBh" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bBi" = (/obj/machinery/door/airlock/research{name = "Genetics Research Access"; req_access_txt = "47"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/poddoor/preopen{id = "Biohazard"; name = "biohazard containment door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/medical/research{name = "Research Division"}) +"bBk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/research{name = "Research Division"}) +"bBl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBn" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bBr" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bBs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bBt" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bBu" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the RD's goons and the AI's satellite from the safety of his office."; name = "Research Monitor"; network = list("RD","MiniSat"); pixel_x = 0; pixel_y = 2},/obj/structure/table,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bBv" = (/obj/machinery/computer/aifixer,/obj/machinery/requests_console{announcementConsole = 1; department = "Research Director's Desk"; departmentType = 5; name = "Research Director RC"; pixel_x = -2; pixel_y = 30},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bBw" = (/obj/structure/rack,/obj/item/weapon/circuitboard/aicore{pixel_x = -2; pixel_y = 4},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bBx" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bBy" = (/obj/effect/landmark/xmastree/rdrod,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bBz" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/explab) +"bBA" = (/turf/closed/wall,/area/toxins/explab) +"bBB" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/book/manual/experimentor,/turf/open/floor/plasteel/white/corner{dir = 4},/area/toxins/explab) +"bBC" = (/obj/machinery/computer/rdconsole/experiment,/turf/open/floor/plasteel/white/side{dir = 1},/area/toxins/explab) +"bBD" = (/obj/structure/closet/radiation,/turf/open/floor/plasteel/white/corner{dir = 1},/area/toxins/explab) +"bBE" = (/obj/machinery/button/door{id = "telelab"; name = "Test Chamber Blast Doors"; pixel_x = 25; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/explab) +"bBF" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bBG" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bBH" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bBI" = (/obj/structure/lattice,/obj/effect/landmark{name = "carpspawn"},/turf/open/space,/area/space) +"bBJ" = (/obj/machinery/door/airlock/glass,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bBK" = (/obj/machinery/door/airlock/glass,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bBL" = (/obj/structure/chair{dir = 4},/obj/effect/decal/remains/human,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bBM" = (/obj/machinery/computer/shuttle/white_ship,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bBN" = (/turf/closed/wall,/area/quartermaster/qm) +"bBO" = (/obj/machinery/door/airlock/glass_mining{name = "Quartermaster"; req_access_txt = "41"},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bBP" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/qm) +"bBQ" = (/turf/closed/wall,/area/quartermaster/miningdock) +"bBR" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/quartermaster/miningdock) +"bBS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/mining{req_access_txt = "48"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bBT" = (/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/supply) +"bBU" = (/obj/item/weapon/book/manual/wiki/security_space_law,/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/supply) +"bBV" = (/obj/machinery/recharger{pixel_y = 4},/obj/structure/table,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/supply) +"bBW" = (/obj/machinery/computer/secure_data,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/supply) +"bBX" = (/obj/machinery/door/airlock/command{name = "Head of Personnel"; req_access = null; req_access_txt = "57"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/crew_quarters/heads) +"bBY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall,/area/engine/gravity_generator) +"bBZ" = (/obj/machinery/ai_status_display,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/engine/gravity_generator) +"bCa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/closed/wall,/area/engine/gravity_generator) +"bCb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/closed/wall,/area/engine/gravity_generator) +"bCc" = (/obj/machinery/camera{c_tag = "Central Hallway South-East"; dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bCd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/medical/sleeper) +"bCe" = (/obj/machinery/door/airlock/glass_medical{id_tag = ""; name = "Surgery Observation"; req_access_txt = "0"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bCf" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bCg" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bCh" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/medical/sleeper) +"bCi" = (/turf/open/floor/plasteel,/area/medical/sleeper) +"bCj" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plasteel,/area/medical/sleeper) +"bCk" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel,/area/medical/sleeper) +"bCl" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/plasteel,/area/medical/sleeper) +"bCm" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10; pixel_x = 0; initialize_directions = 10},/turf/open/floor/plasteel,/area/medical/sleeper) +"bCn" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCp" = (/obj/structure/chair,/obj/effect/landmark/start{name = "Geneticist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCr" = (/obj/machinery/door/airlock/glass_research{name = "Genetics Research"; req_access_txt = "5; 9; 68"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCs" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCt" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCu" = (/obj/machinery/camera{c_tag = "Genetics Research"; dir = 1; network = list("SS13","RD"); pixel_x = 0},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whitepurple/side{dir = 4},/area/medical/genetics) +"bCv" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/genetics) +"bCw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCx" = (/obj/machinery/camera{c_tag = "Genetics Access"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bCy" = (/turf/closed/wall/r_wall,/area/toxins/server) +"bCz" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/command{name = "Server Room"; req_access = null; req_access_txt = "30"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/toxins/server) +"bCA" = (/turf/closed/wall,/area/security/checkpoint/science) +"bCB" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/security/checkpoint/science) +"bCC" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/security/checkpoint/science) +"bCD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/science) +"bCE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bCF" = (/obj/structure/table,/obj/machinery/button/door{id = "Biohazard"; name = "Biohazard Shutter Control"; pixel_x = -5; pixel_y = 5; req_access_txt = "47"},/obj/machinery/button/door{id = "rnd2"; name = "Research Lab Shutter Control"; pixel_x = 5; pixel_y = 5; req_access_txt = "47"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bCG" = (/obj/structure/chair/office/light{dir = 8},/obj/effect/landmark/start{name = "Research Director"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bCH" = (/obj/machinery/computer/robotics,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bCI" = (/obj/structure/rack,/obj/item/device/aicard,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bCJ" = (/obj/machinery/holopad,/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bCK" = (/obj/structure/displaycase/labcage,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bCL" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "telelab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/obj/machinery/door/firedoor/heavy,/turf/open/floor/engine,/area/toxins/explab) +"bCM" = (/obj/machinery/door/poddoor/preopen{id = "telelab"; name = "test chamber blast door"},/obj/machinery/door/firedoor/heavy,/turf/open/floor/engine,/area/toxins/explab) +"bCN" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bCO" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bCP" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bCQ" = (/obj/structure/table,/obj/item/weapon/tank/internals/oxygen,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bCR" = (/turf/open/floor/mineral/titanium/blue,/turf/closed/wall/mineral/titanium/interior,/area/shuttle/supply) +"bCS" = (/obj/structure/table,/obj/item/weapon/cartridge/quartermaster{pixel_x = 6; pixel_y = 5},/obj/item/weapon/cartridge/quartermaster,/obj/item/weapon/cartridge/quartermaster{pixel_x = -4; pixel_y = 7},/obj/machinery/requests_console{department = "Cargo Bay"; departmentType = 2; pixel_x = -30; pixel_y = 0},/obj/item/weapon/coin/silver,/turf/open/floor/plasteel/brown{dir = 9},/area/quartermaster/qm) +"bCT" = (/obj/machinery/power/apc{dir = 1; name = "Quartermaster APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) +"bCU" = (/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) +"bCV" = (/obj/machinery/holopad,/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) +"bCW" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel/brown{dir = 1},/area/quartermaster/qm) +"bCX" = (/obj/structure/closet/secure_closet/quartermaster,/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel/brown{dir = 5},/area/quartermaster/qm) +"bCY" = (/obj/machinery/power/apc{dir = 1; name = "Mining Dock APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bCZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bDa" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bDb" = (/obj/machinery/light{dir = 1},/obj/machinery/light_switch{pixel_y = 28},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bDc" = (/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/supply) +"bDd" = (/obj/structure/chair/office/dark{dir = 1},/obj/effect/landmark/start/depsec/supply,/turf/open/floor/plasteel,/area/security/checkpoint/supply) +"bDe" = (/turf/open/floor/plasteel,/area/security/checkpoint/supply) +"bDf" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/computer/security/mining{network = list("MINE","AuxBase")},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/supply) +"bDg" = (/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bDh" = (/obj/structure/sign/securearea{pixel_y = 32},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"bDi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"bDj" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/blue/side{dir = 1},/area/hallway/primary/central) +"bDk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bDl" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bDm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bDn" = (/obj/structure/sign/securearea{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bDo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bDp" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bDq" = (/obj/structure/chair,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDr" = (/obj/structure/chair,/obj/machinery/camera{c_tag = "Surgery Observation"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDs" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDt" = (/obj/structure/chair,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDu" = (/obj/structure/chair,/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bDv" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/shower{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bDw" = (/obj/effect/landmark/start{name = "Medical Doctor"},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bDx" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 6},/turf/open/floor/plasteel,/area/medical/sleeper) +"bDy" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 1},/turf/open/floor/plasteel,/area/medical/sleeper) +"bDz" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel,/area/medical/sleeper) +"bDA" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bDB" = (/obj/machinery/dna_scannernew,/turf/open/floor/plasteel/whiteblue/side{dir = 10},/area/medical/genetics) +"bDC" = (/obj/machinery/computer/cloning,/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/plasteel/whiteblue/side{dir = 2},/area/medical/genetics) +"bDD" = (/obj/machinery/clonepod,/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/medical/genetics) +"bDE" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/medical/genetics) +"bDF" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light_switch{pixel_y = -28},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bDG" = (/obj/structure/closet/secure_closet/medical1,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bDH" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/genetics) +"bDI" = (/obj/structure/closet/wardrobe/genetics_white,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/white,/area/medical/genetics) +"bDJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/asmaint) +"bDK" = (/obj/machinery/r_n_d/server/robotics,/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bDL" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; external_pressure_bound = 140; on = 1; pressure_checks = 0},/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bDM" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 32},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/server) +"bDN" = (/obj/machinery/atmospherics/pipe/simple{dir = 10},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/black,/area/toxins/server) +"bDO" = (/obj/machinery/camera{c_tag = "Server Room"; dir = 2; network = list("SS13","RD"); pixel_x = 22},/obj/machinery/power/apc{dir = 1; name = "Server Room APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/black,/area/toxins/server) +"bDP" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{target_temperature = 80; dir = 2; on = 1},/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/plasteel/black,/area/toxins/server) +"bDQ" = (/obj/structure/reagent_dispensers/peppertank{pixel_x = -30; pixel_y = 0},/obj/machinery/airalarm{pixel_y = 25},/obj/structure/closet,/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/science) +"bDR" = (/obj/machinery/light_switch{pixel_x = 8; pixel_y = 28},/obj/machinery/button/door{id = "Biohazard"; name = "Biohazard Shutter Control"; pixel_x = -5; pixel_y = 28; req_access_txt = "47"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/science) +"bDS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/science) +"bDT" = (/obj/structure/table,/obj/machinery/computer/security/telescreen{desc = "Used for watching the RD's goons from the safety of your own office."; name = "Research Monitor"; network = list("RD"); pixel_x = 0; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/science) +"bDU" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/science) +"bDV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bDW" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/crew_quarters/hor) +"bDX" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/item/weapon/folder/white,/obj/item/weapon/stamp/rd{pixel_x = 3; pixel_y = -2},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bDY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bDZ" = (/obj/machinery/computer/mecha,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bEa" = (/obj/structure/rack,/obj/item/device/taperecorder{pixel_x = -3},/obj/item/device/paicard{pixel_x = 4},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bEb" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bEc" = (/obj/machinery/modular_computer/console/preset/research,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel/white,/area/crew_quarters/hor) +"bEd" = (/turf/open/floor/engine,/area/toxins/explab) +"bEe" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bEf" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/mineral/titanium/purple,/area/shuttle/abandoned) +"bEg" = (/obj/machinery/door/window/northright,/obj/effect/decal/remains/human,/turf/open/floor/mineral/titanium/purple,/area/shuttle/abandoned) +"bEh" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/supply) +"bEi" = (/obj/machinery/computer/cargo,/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/qm) +"bEj" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEl" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start{name = "Quartermaster"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 4},/area/quartermaster/qm) +"bEo" = (/obj/machinery/door/airlock/glass_mining{name = "Quartermaster"; req_access_txt = "41"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/qm) +"bEp" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bEq" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bEr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/sortjunction{dir = 1; icon_state = "pipe-j2s"; sortType = 3},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bEs" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bEt" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/checkpoint/supply) +"bEu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/supply) +"bEv" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/security/checkpoint/supply) +"bEw" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/machinery/light{dir = 4},/obj/item/device/radio/off,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/supply) +"bEx" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AIW"; location = "QM"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEy" = (/obj/machinery/door/firedoor,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEz" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AftH"; location = "AIW"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEA" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEB" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=CHE"; location = "AIE"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bEC" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=HOP"; location = "CHE"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bED" = (/obj/structure/chair,/obj/structure/sign/nosmoking_2{pixel_x = -28},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bEE" = (/obj/structure/chair,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bEF" = (/obj/machinery/holopad,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bEG" = (/obj/structure/chair,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/black,/area/medical/sleeper) +"bEH" = (/obj/structure/closet/secure_closet/medical1,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bEI" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/obj/machinery/camera{c_tag = "Medbay Treatment Center"; dir = 8; network = list("SS13")},/turf/open/floor/plasteel,/area/medical/sleeper) +"bEJ" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel,/area/medical/sleeper) +"bEK" = (/obj/structure/table/reinforced,/obj/item/weapon/wrench/medical,/turf/open/floor/plasteel,/area/medical/sleeper) +"bEL" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1; name = "Connector Port (Air Supply)"},/obj/machinery/portable_atmospherics/canister/oxygen,/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/light,/turf/open/floor/plasteel,/area/medical/sleeper) +"bEM" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1; name = "Connector Port (Air Supply)"},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel,/area/medical/sleeper) +"bEN" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 1},/turf/open/floor/plasteel,/area/medical/sleeper) +"bEO" = (/turf/open/floor/plating,/area/maintenance/asmaint) +"bEP" = (/obj/structure/reagent_dispensers/watertank,/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bEQ" = (/obj/machinery/airalarm/server{dir = 4; pixel_x = -22; pixel_y = 0},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/black{name = "Server Walkway"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bER" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/black{name = "Server Walkway"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bES" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "Server Room"; req_access_txt = "30"},/turf/open/floor/plasteel/black,/area/toxins/server) +"bET" = (/obj/machinery/atmospherics/pipe/manifold{dir = 8},/turf/open/floor/plasteel/black,/area/toxins/server) +"bEU" = (/obj/structure/chair/office/light,/obj/machinery/atmospherics/pipe/simple{dir = 4},/turf/open/floor/plasteel/black,/area/toxins/server) +"bEV" = (/obj/machinery/atmospherics/pipe/simple{dir = 9},/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel/black,/area/toxins/server) +"bEW" = (/obj/machinery/camera{c_tag = "Security Post - Science"; dir = 4; network = list("SS13","RD")},/obj/machinery/newscaster{pixel_x = -30},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/science) +"bEX" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/security/checkpoint/science) +"bEY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/security/checkpoint/science) +"bEZ" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start/depsec/science,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint/science) +"bFa" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/science) +"bFb" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bFc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bFd" = (/obj/machinery/door/airlock/glass_command{name = "Research Director"; req_access_txt = "30"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFe" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFf" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFh" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFi" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bFj" = (/obj/machinery/r_n_d/experimentor,/turf/open/floor/engine,/area/toxins/explab) +"bFk" = (/obj/effect/landmark{name = "blobstart"},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/engine,/area/toxins/explab) +"bFl" = (/obj/machinery/atmospherics/components/unary/thermomachine/heater{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bFm" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bFn" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"},/turf/open/floor/plating/airless,/area/shuttle/supply) +"bFo" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/supply) +"bFp" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_r"},/turf/open/floor/plating/airless,/area/shuttle/supply) +"bFq" = (/obj/machinery/computer/security/mining{network = list("MINE","AuxBase")},/obj/machinery/camera{c_tag = "Quartermaster's Office"; dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/obj/machinery/status_display{density = 0; pixel_x = -32; pixel_y = 0; supply_display = 1},/turf/open/floor/plasteel/brown{dir = 10},/area/quartermaster/qm) +"bFr" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) +"bFs" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/computer/stockexchange,/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) +"bFt" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/obj/item/weapon/pen/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) +"bFu" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/stamp/qm{pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 2},/area/quartermaster/qm) +"bFv" = (/obj/structure/filingcabinet,/obj/machinery/light_switch{pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/brown{dir = 6},/area/quartermaster/qm) +"bFw" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/qm) +"bFx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bFy" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bFz" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bFA" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/security/checkpoint/supply) +"bFB" = (/obj/machinery/light_switch{pixel_y = -25},/obj/structure/closet,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/supply) +"bFC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side,/area/security/checkpoint/supply) +"bFD" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = -30},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/red/side,/area/security/checkpoint/supply) +"bFE" = (/obj/structure/filingcabinet,/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -32},/obj/machinery/camera{c_tag = "Security Post - Cargo"; dir = 1},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/supply) +"bFF" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/brown/corner{dir = 8},/area/hallway/primary/central) +"bFG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFH" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFI" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/camera{c_tag = "Central Primary Hallway South-West"; dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFJ" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFK" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFL" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFM" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/sign/directions/engineering{pixel_x = -32; pixel_y = -40},/obj/structure/sign/directions/medical{dir = 4; icon_state = "direction_med"; pixel_x = -32; pixel_y = -24},/obj/structure/sign/directions/evac{dir = 4; icon_state = "direction_evac"; pixel_x = -32; pixel_y = -32},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFN" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFO" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/status_display{pixel_y = -32},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/camera{c_tag = "Central Primary Hallway South"; dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFS" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 22},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFT" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFU" = (/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = -32},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFV" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/junction{dir = 8; icon_state = "pipe-j2"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/hallway/primary/central) +"bFZ" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/sleeper) +"bGa" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/medical/sleeper) +"bGb" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/medical/sleeper) +"bGc" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Recovery Room"; req_access_txt = "0"},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bGd" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bGe" = (/obj/structure/table,/obj/item/stack/packageWrap,/obj/item/stack/packageWrap,/obj/item/weapon/pen,/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 0; pixel_y = 30; pixel_z = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bGf" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bGg" = (/turf/closed/wall,/area/medical/cmo) +"bGh" = (/obj/machinery/suit_storage_unit/cmo,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bGi" = (/obj/machinery/computer/crew,/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Medical Officer's Desk"; departmentType = 5; name = "Chief Medical Officer RC"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bGj" = (/obj/machinery/computer/med_data,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bGk" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bGl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"bGm" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"bGn" = (/obj/machinery/r_n_d/server/core,/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bGo" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; external_pressure_bound = 120; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/bluegrid{name = "Server Base"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/server) +"bGp" = (/obj/structure/grille,/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/server) +"bGq" = (/obj/machinery/atmospherics/pipe/simple{dir = 9},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/toxins/server) +"bGr" = (/obj/machinery/computer/rdservercontrol,/turf/open/floor/plasteel/black,/area/toxins/server) +"bGs" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plasteel/black,/area/toxins/server) +"bGt" = (/obj/item/device/radio/intercom{pixel_x = -25},/obj/structure/filingcabinet,/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/science) +"bGu" = (/obj/machinery/power/apc{dir = 2; name = "Science Security APC"; pixel_y = -24},/obj/structure/cable,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/science) +"bGv" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/item/device/radio/off,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/science) +"bGw" = (/obj/machinery/computer/secure_data,/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = -30},/turf/open/floor/plasteel/red/side,/area/security/checkpoint/science) +"bGx" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/science) +"bGy" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bGz" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bGA" = (/obj/machinery/power/apc{dir = 8; name = "RD Office APC"; pixel_x = -25},/obj/structure/cable,/obj/machinery/light_switch{pixel_y = -23},/obj/item/weapon/twohanded/required/kirbyplants/dead,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGB" = (/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = -24},/obj/machinery/light,/obj/machinery/computer/card/minor/rd,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGC" = (/obj/structure/table,/obj/item/weapon/cartridge/signal/toxins,/obj/item/weapon/cartridge/signal/toxins{pixel_x = -4; pixel_y = 2},/obj/item/weapon/cartridge/signal/toxins{pixel_x = 4; pixel_y = 6},/obj/machinery/camera{c_tag = "Research Director's Office"; dir = 1; network = list("SS13","RD")},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGD" = (/obj/structure/closet/secure_closet/RD,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGE" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGF" = (/obj/machinery/suit_storage_unit/rd,/turf/open/floor/plasteel/cafeteria,/area/crew_quarters/hor) +"bGG" = (/obj/machinery/camera{c_tag = "Experimentor Lab Chamber"; dir = 1; network = list("SS13","RD")},/obj/machinery/light,/obj/structure/sign/nosmoking_2{pixel_y = -32},/turf/open/floor/engine,/area/toxins/explab) +"bGH" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bGI" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bGJ" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bGK" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"bGL" = (/turf/closed/wall,/area/maintenance/aft) +"bGM" = (/turf/closed/wall,/area/storage/tech) +"bGN" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/central) +"bGO" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass{name = "Central Access"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/central) +"bGP" = (/turf/closed/wall,/area/janitor) +"bGQ" = (/obj/machinery/door/airlock{name = "Custodial Closet"; req_access_txt = "26"},/obj/structure/disposalpipe/segment,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/janitor) +"bGR" = (/turf/closed/wall,/area/maintenance/asmaint) +"bGS" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"bGT" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/black,/area/hallway/primary/central) +"bGU" = (/obj/structure/disposalpipe/segment,/obj/structure/table,/obj/item/weapon/surgicaldrill,/turf/open/floor/plasteel,/area/medical/sleeper) +"bGV" = (/obj/structure/table,/obj/item/weapon/hemostat,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white/side{dir = 2},/area/medical/sleeper) +"bGW" = (/obj/structure/table,/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bGX" = (/obj/structure/table,/obj/item/weapon/retractor,/turf/open/floor/plasteel/white/side{dir = 2},/area/medical/sleeper) +"bGY" = (/obj/structure/table,/obj/item/weapon/cautery{pixel_x = 4},/turf/open/floor/plasteel,/area/medical/sleeper) +"bGZ" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/gun/syringe,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/soap/nanotrasen,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHa" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/whiteblue/corner{dir = 2},/area/medical/sleeper) +"bHb" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/sleeper) +"bHc" = (/obj/structure/closet/l3closet,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHd" = (/obj/structure/closet/wardrobe/white/medical,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHe" = (/obj/structure/closet/secure_closet/medical3,/obj/machinery/airalarm{pixel_y = 24},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHf" = (/obj/structure/closet/secure_closet/medical3,/obj/machinery/camera{c_tag = "Medbay Storage"; dir = 2; network = list("SS13")},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHg" = (/obj/structure/table,/obj/item/weapon/storage/box/bodybags{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/box/rxglasses,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHh" = (/obj/structure/disposalpipe/trunk,/obj/machinery/disposal/bin,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bHi" = (/turf/open/floor/plasteel/whiteblue/corner{dir = 8},/area/medical/medbay) +"bHj" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/cmo) +"bHk" = (/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bHl" = (/obj/structure/chair/office/light,/obj/effect/landmark/start{name = "Chief Medical Officer"},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bHm" = (/obj/machinery/keycard_auth{pixel_x = 24; pixel_y = 0},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bHn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bHo" = (/turf/closed/wall/r_wall,/area/toxins/xenobiology) +"bHp" = (/turf/closed/wall/r_wall,/area/toxins/storage) +"bHq" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bHr" = (/obj/machinery/door/firedoor/heavy,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bHs" = (/obj/machinery/door/firedoor/heavy,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bHt" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bHu" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bHv" = (/obj/item/device/multitool,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bHw" = (/obj/structure/chair,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bHx" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; name = "KEEP CLEAR: DOCKING AREA"; pixel_y = 32},/turf/open/space,/area/space/nearstation) +"bHy" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/obj/machinery/requests_console{department = "Mining"; departmentType = 0; pixel_x = -30; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bHz" = (/obj/structure/chair/office/dark{dir = 8},/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bHA" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bHB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bHC" = (/obj/machinery/door/airlock/maintenance{name = "Mining Maintenance"; req_access_txt = "48"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/quartermaster/miningdock) +"bHD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bHE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/power/apc{dir = 1; name = "Cargo Security APC"; pixel_x = 1; pixel_y = 24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/security/checkpoint/supply) +"bHF" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bHG" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bHH" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/aft) +"bHI" = (/obj/structure/table,/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/assembly/flash/handheld,/obj/item/device/assembly/flash/handheld,/obj/machinery/ai_status_display{pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/storage/tech) +"bHJ" = (/obj/structure/table,/obj/item/weapon/electronics/apc,/obj/item/weapon/electronics/airlock,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/storage/tech) +"bHK" = (/obj/structure/table,/obj/item/weapon/screwdriver{pixel_y = 16},/obj/item/weapon/wirecutters,/turf/open/floor/plating,/area/storage/tech) +"bHL" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plating,/area/storage/tech) +"bHM" = (/obj/machinery/camera{c_tag = "Tech Storage"; dir = 2},/obj/machinery/power/apc{dir = 1; name = "Tech Storage APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/storage/tech) +"bHN" = (/obj/structure/table,/obj/item/device/analyzer,/obj/item/device/healthanalyzer,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/storage/tech) +"bHO" = (/obj/structure/table,/obj/item/device/plant_analyzer,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plating,/area/storage/tech) +"bHP" = (/turf/open/floor/plating,/area/storage/tech) +"bHQ" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bHR" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bHS" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bHT" = (/obj/structure/closet/jcloset,/turf/open/floor/plasteel,/area/janitor) +"bHU" = (/obj/structure/closet/l3closet/janitor,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel,/area/janitor) +"bHV" = (/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/camera{c_tag = "Custodial Closet"},/obj/vehicle/janicart,/turf/open/floor/plasteel,/area/janitor) +"bHW" = (/obj/item/weapon/storage/box/lights/mixed,/obj/item/weapon/storage/box/lights/mixed,/turf/open/floor/plasteel,/area/janitor) +"bHX" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/janitor) +"bHY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/janitor) +"bHZ" = (/obj/machinery/portable_atmospherics/canister/water_vapor,/turf/open/floor/plasteel,/area/janitor) +"bIa" = (/obj/machinery/door/window/westleft{name = "Janitoral Delivery"; req_access_txt = "26"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/janitor) +"bIb" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=8"; dir = 1; freq = 1400; location = "Janitor"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/janitor) +"bIc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bId" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bIe" = (/obj/structure/disposalpipe/segment,/obj/structure/table,/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/item/clothing/suit/apron/surgical,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/white/side{dir = 4},/area/medical/sleeper) +"bIf" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIg" = (/obj/effect/landmark/start{name = "Medical Doctor"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIh" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIi" = (/obj/structure/table,/obj/item/weapon/surgical_drapes,/obj/item/weapon/razor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 8},/area/medical/sleeper) +"bIj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/medical/sleeper) +"bIk" = (/obj/structure/table,/obj/structure/bedsheetbin{pixel_x = 2},/obj/item/clothing/suit/straight_jacket,/obj/item/clothing/mask/muzzle,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/corner{dir = 8},/area/medical/sleeper) +"bIl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIm" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/medical/sleeper) +"bIn" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Medbay Storage"; req_access_txt = "45"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIp" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIq" = (/obj/machinery/door/airlock/glass_medical{id_tag = null; name = "Medbay Storage"; req_access_txt = "45"},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bIr" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/medbay) +"bIs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bIt" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bIu" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bIv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bIw" = (/obj/structure/table/glass,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bIx" = (/obj/structure/table/glass,/obj/item/weapon/folder/white,/obj/item/weapon/stamp/cmo,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bIy" = (/obj/structure/table/glass,/obj/item/weapon/pen,/obj/item/clothing/neck/stethoscope,/mob/living/simple_animal/pet/cat/Runtime,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bIz" = (/obj/structure/disposalpipe/segment,/obj/item/device/radio/intercom{pixel_x = 25},/obj/machinery/camera{c_tag = "Chief Medical Office"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = -22},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bIA" = (/turf/open/floor/engine,/area/toxins/xenobiology) +"bIB" = (/obj/machinery/camera{c_tag = "Xenobiology Test Chamber"; dir = 2; network = list("Xeno","RD"); pixel_x = 0},/obj/machinery/light{dir = 1},/turf/open/floor/engine,/area/toxins/xenobiology) +"bIC" = (/obj/machinery/portable_atmospherics/canister/toxins,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/toxins/storage) +"bID" = (/obj/machinery/portable_atmospherics/canister/toxins,/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 32},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/toxins/storage) +"bIE" = (/obj/machinery/power/apc{dir = 8; name = "Misc Research APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bIF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bIG" = (/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bIH" = (/obj/machinery/vending/coffee,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bII" = (/turf/closed/wall/r_wall,/area/toxins/mixing) +"bIJ" = (/obj/structure/closet/bombcloset,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 28},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bIK" = (/obj/structure/closet/bombcloset,/obj/machinery/light{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bIL" = (/obj/machinery/portable_atmospherics/canister,/obj/structure/window/reinforced{dir = 8},/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/camera{c_tag = "Toxins Lab West"; dir = 2; network = list("SS13","RD"); pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bIM" = (/obj/machinery/portable_atmospherics/canister,/obj/item/device/radio/intercom{pixel_y = 25},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bIN" = (/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/airalarm{frequency = 1439; locked = 0; pixel_y = 23},/obj/item/weapon/storage/firstaid/toxin,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bIO" = (/obj/machinery/portable_atmospherics/pump,/obj/structure/window/reinforced{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bIP" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bIQ" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/light{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bIR" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bIS" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bIT" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bIU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bIV" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bIW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/toxins/mixing) +"bIX" = (/turf/closed/wall,/area/toxins/mixing) +"bIY" = (/obj/structure/frame/computer{anchored = 1},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/abandoned) +"bIZ" = (/obj/machinery/computer/security/mining{network = list("MINE","AuxBase")},/obj/machinery/camera{c_tag = "Mining Dock"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bJa" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bJb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bJc" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/wardrobe/miner,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bJd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/quartermaster/miningdock) +"bJe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bJf" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bJg" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = 15},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bJh" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bJi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/maintenance/aft) +"bJj" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bJk" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bJl" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bJm" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bJn" = (/obj/structure/table,/obj/item/device/aicard,/obj/item/weapon/aiModule/reset,/turf/open/floor/plating,/area/storage/tech) +"bJo" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = -3; pixel_y = 3},/obj/item/stack/cable_coil,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plating,/area/storage/tech) +"bJp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/storage/tech) +"bJq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bJr" = (/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bJs" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bJt" = (/turf/open/floor/plasteel,/area/janitor) +"bJu" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Janitor"},/turf/open/floor/plasteel,/area/janitor) +"bJv" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/janitor) +"bJw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/janitor) +"bJx" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/janitor) +"bJy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/hostile/lizard{name = "Wags-His-Tail"; real_name = "Wags-His-Tail"},/turf/open/floor/plasteel,/area/janitor) +"bJz" = (/obj/item/weapon/mop,/obj/item/weapon/reagent_containers/glass/bucket,/turf/open/floor/plasteel,/area/janitor) +"bJA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/power/apc{dir = 8; name = "Custodial Closet APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/janitor) +"bJB" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/asmaint) +"bJC" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 6},/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 25},/turf/open/floor/plating,/area/maintenance/asmaint) +"bJD" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) +"bJE" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bJF" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"bJG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Surgery Maintenance"; req_access_txt = "45"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/sleeper) +"bJH" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJJ" = (/obj/structure/table/optable,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJL" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJM" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/medical{name = "Operating Theatre"; req_access_txt = "45"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/medical/sleeper) +"bJN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/whiteblue/side{dir = 8},/area/medical/sleeper) +"bJO" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJP" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/iv_drip,/turf/open/floor/plasteel/whiteblue/corner{dir = 4},/area/medical/sleeper) +"bJQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/medical/sleeper) +"bJR" = (/obj/structure/table,/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/weapon/storage/belt/medical{pixel_x = 0; pixel_y = 2},/obj/item/clothing/neck/stethoscope,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJS" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJT" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bJU" = (/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = -30; pixel_y = 0},/obj/machinery/camera{c_tag = "Medbay South"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bJV" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bJW" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bJX" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bJY" = (/obj/structure/disposalpipe/segment,/obj/machinery/light_switch{pixel_x = 28; pixel_y = 0},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bJZ" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKa" = (/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKb" = (/obj/effect/decal/cleanable/oil,/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKd" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bKe" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/storage) +"bKf" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bKg" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bKh" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bKi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/mixing) +"bKj" = (/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bKk" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bKl" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/obj/machinery/meter,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bKm" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bKn" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bKo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/maintenance/asmaint2) +"bKp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/toxins/mixing) +"bKq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/toxins/mixing) +"bKr" = (/obj/machinery/doppler_array{dir = 4},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/mixing) +"bKs" = (/turf/closed/wall,/area/toxins/test_area) +"bKt" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/toxins/test_area) +"bKu" = (/obj/item/weapon/scalpel,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bKv" = (/obj/structure/table,/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) +"bKw" = (/obj/machinery/computer/shuttle/mining,/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) +"bKx" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/quartermaster/miningdock) +"bKy" = (/obj/machinery/computer/shuttle/mining,/turf/open/floor/plasteel/brown{dir = 9},/area/quartermaster/miningdock) +"bKz" = (/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bKA" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bKB" = (/obj/structure/closet/secure_closet/miner,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bKC" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) +"bKD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bKE" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/aft) +"bKF" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bKG" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/borgupload{pixel_x = -1; pixel_y = 1},/obj/item/weapon/circuitboard/computer/aiupload{pixel_x = 2; pixel_y = -2},/turf/open/floor/plasteel,/area/storage/tech) +"bKH" = (/obj/machinery/camera{c_tag = "Secure Tech Storage"; dir = 2},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/storage/tech) +"bKI" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/storage/tech) +"bKJ" = (/obj/structure/table,/obj/machinery/cell_charger{pixel_y = 5},/obj/item/device/multitool,/turf/open/floor/plating,/area/storage/tech) +"bKK" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/pandemic{pixel_x = -3; pixel_y = 3},/obj/item/weapon/circuitboard/computer/rdconsole,/obj/item/weapon/circuitboard/machine/rdserver{pixel_x = 3; pixel_y = -3},/obj/item/weapon/circuitboard/machine/destructive_analyzer,/obj/item/weapon/circuitboard/machine/protolathe,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/item/weapon/circuitboard/computer/aifixer,/obj/item/weapon/circuitboard/computer/teleporter,/obj/item/weapon/circuitboard/machine/circuit_imprinter,/obj/item/weapon/circuitboard/machine/mechfab,/turf/open/floor/plating,/area/storage/tech) +"bKL" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/mining,/obj/item/weapon/circuitboard/machine/autolathe{pixel_x = 3; pixel_y = -3},/obj/item/weapon/circuitboard/computer/arcade/battle,/turf/open/floor/plating,/area/storage/tech) +"bKM" = (/obj/structure/rack,/obj/item/weapon/circuitboard/machine/telecomms/processor,/obj/item/weapon/circuitboard/machine/telecomms/receiver,/obj/item/weapon/circuitboard/machine/telecomms/server,/obj/item/weapon/circuitboard/machine/telecomms/bus,/obj/item/weapon/circuitboard/machine/telecomms/broadcaster,/obj/item/weapon/circuitboard/computer/message_monitor{pixel_y = -5},/turf/open/floor/plating,/area/storage/tech) +"bKN" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bKO" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/key/janitor,/turf/open/floor/plasteel,/area/janitor) +"bKP" = (/obj/structure/table,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/item/weapon/grenade/chem_grenade/cleaner,/obj/machinery/requests_console{department = "Janitorial"; departmentType = 1; pixel_y = -29},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/open/floor/plasteel,/area/janitor) +"bKQ" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/light,/turf/open/floor/plasteel,/area/janitor) +"bKR" = (/obj/structure/janitorialcart,/turf/open/floor/plasteel,/area/janitor) +"bKS" = (/obj/item/weapon/restraints/legcuffs/beartrap,/obj/item/weapon/restraints/legcuffs/beartrap,/obj/item/weapon/storage/box/mousetraps,/obj/item/weapon/storage/box/mousetraps,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/janitor) +"bKT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/janitor) +"bKU" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/janitor) +"bKV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bKW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bKX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"bKY" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"bKZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/power/apc{dir = 4; name = "Treatment Center APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/sleeper) +"bLa" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 4},/area/medical/sleeper) +"bLb" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLc" = (/obj/machinery/computer/operating,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLd" = (/obj/structure/sign/nosmoking_2{pixel_x = -28},/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/plasteel/whiteblue/corner{dir = 1},/area/medical/sleeper) +"bLe" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLf" = (/obj/machinery/vending/wallmed{pixel_x = 28; pixel_y = 0},/obj/machinery/camera{c_tag = "Medbay Recovery Room"; dir = 8; network = list("SS13")},/obj/machinery/iv_drip,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLg" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/weapon/gun/syringe,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLh" = (/obj/structure/closet/crate/freezer/surplus_limbs,/obj/item/weapon/reagent_containers/glass/beaker/synthflesh,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bLi" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/clothing/neck/stethoscope,/obj/machinery/vending/wallmed{pixel_y = 28},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLj" = (/obj/structure/chair/office/light{dir = 8},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLk" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/button/door{id = "medpriv4"; name = "Privacy Shutters"; pixel_y = 25},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLl" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "medpriv4"; name = "privacy door"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bLm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLn" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLo" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bLp" = (/obj/machinery/door/airlock/glass_command{name = "Chief Medical Officer"; req_access_txt = "40"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bLq" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bLr" = (/obj/machinery/holopad,/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bLs" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bLt" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/medical/cmo) +"bLu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bLv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/sortjunction{sortType = 10},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bLw" = (/obj/effect/landmark/event_spawn,/turf/open/floor/engine,/area/toxins/xenobiology) +"bLx" = (/obj/machinery/power/apc{dir = 8; name = "Toxins Storage APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/camera{c_tag = "Toxins Storage"; dir = 4; network = list("SS13","RD")},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/airlock/research{name = "Toxins Storage"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bLC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bLD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bLE" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bLF" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/research{name = "Toxins Lab"; req_access_txt = "8"},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bLG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bLH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bLI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/mixing) +"bLJ" = (/obj/structure/sign/securearea{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/toxins/mixing) +"bLK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/toxins/mixing) +"bLL" = (/obj/machinery/light/small{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/toxins/mixing) +"bLM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/toxins/mixing) +"bLN" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/item/device/radio/intercom{pixel_y = 25},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/toxins/mixing) +"bLO" = (/obj/machinery/button/massdriver{dir = 2; id = "toxinsdriver"; pixel_y = 24},/obj/effect/landmark/event_spawn,/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/mixing) +"bLP" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the test chamber."; dir = 8; layer = 4; name = "Test Chamber Telescreen"; network = list("Toxins"); pixel_x = 30; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/mixing) +"bLQ" = (/obj/item/target,/obj/structure/window/reinforced,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/toxins/test_area) +"bLR" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bLS" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) +"bLT" = (/obj/item/weapon/ore/iron,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bLU" = (/obj/structure/closet/crate,/obj/machinery/light/small{dir = 4},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bLV" = (/turf/open/floor/plasteel/brown{dir = 8},/area/quartermaster/miningdock) +"bLW" = (/obj/effect/landmark/start{name = "Shaft Miner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bLX" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bLY" = (/obj/machinery/light/small{dir = 1},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/aft) +"bLZ" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/aft) +"bMa" = (/turf/open/floor/plating,/area/maintenance/aft) +"bMb" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/crew{pixel_x = -1; pixel_y = 1},/obj/item/weapon/circuitboard/computer/card{pixel_x = 2; pixel_y = -2},/obj/item/weapon/circuitboard/computer/communications{pixel_x = 5; pixel_y = -5},/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel,/area/storage/tech) +"bMc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/storage/tech) +"bMd" = (/obj/machinery/door/airlock/highsecurity{name = "Secure Tech Storage"; req_access_txt = "19;23"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/storage/tech) +"bMe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/storage/tech) +"bMf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating,/area/storage/tech) +"bMg" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/storage/tech) +"bMh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) +"bMi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) +"bMj" = (/obj/machinery/door/airlock/engineering{name = "Tech Storage"; req_access_txt = "23"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) +"bMk" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bMl" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bMm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bMn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/janitor) +"bMo" = (/obj/machinery/door/airlock/maintenance{name = "Custodial Maintenance"; req_access_txt = "26"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/janitor) +"bMp" = (/obj/machinery/power/apc{dir = 8; name = "Medbay Maintenance APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/maintenance/asmaint) +"bMq" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille/broken,/turf/open/floor/plating,/area/maintenance/asmaint) +"bMr" = (/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 25},/turf/open/floor/plating,/area/maintenance/asmaint) +"bMs" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/fulltile{obj_integrity = 35},/turf/open/floor/plating,/area/maintenance/asmaint) +"bMt" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) +"bMu" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bMv" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bMw" = (/obj/structure/closet/secure_closet/medical2,/turf/open/floor/plasteel,/area/medical/sleeper) +"bMx" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/sleeper) +"bMy" = (/obj/machinery/vending/wallmed{pixel_y = -28},/obj/machinery/camera{c_tag = "Surgery Operating"; dir = 1; network = list("SS13"); pixel_x = 22},/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMz" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/sleeper) +"bMA" = (/obj/structure/closet/crate/freezer,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/empty,/obj/item/weapon/reagent_containers/blood/AMinus,/obj/item/weapon/reagent_containers/blood/BMinus{pixel_x = -4; pixel_y = 4},/obj/item/weapon/reagent_containers/blood/BPlus{pixel_x = 1; pixel_y = 2},/obj/item/weapon/reagent_containers/blood/OMinus,/obj/item/weapon/reagent_containers/blood/OPlus{pixel_x = -2; pixel_y = -1},/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/random,/obj/item/weapon/reagent_containers/blood/APlus,/obj/item/weapon/reagent_containers/blood/random,/turf/open/floor/plasteel,/area/medical/sleeper) +"bMB" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMC" = (/obj/machinery/light,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMD" = (/obj/structure/closet/wardrobe/pjs,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bME" = (/obj/structure/table,/obj/machinery/light,/obj/item/weapon/reagent_containers/spray/cleaner,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMF" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/o2{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/o2,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMG" = (/obj/structure/table,/obj/item/device/radio/intercom{broadcasting = 0; freerange = 0; frequency = 1485; listening = 1; name = "Station Intercom (Medbay)"; pixel_x = 0; pixel_y = -30},/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMH" = (/obj/structure/table,/obj/machinery/requests_console{announcementConsole = 0; department = "Medbay"; departmentType = 1; name = "Medbay RC"; pixel_x = 0; pixel_y = -30; pixel_z = 0},/obj/item/weapon/storage/firstaid/fire{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMI" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/brute{pixel_x = 3; pixel_y = 3},/obj/item/weapon/storage/firstaid/brute,/obj/item/weapon/storage/firstaid/regular{pixel_x = -3; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMJ" = (/obj/machinery/light,/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/syringes,/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{pixel_x = 7; pixel_y = -3},/obj/item/weapon/reagent_containers/glass/bottle/morphine{pixel_x = 8; pixel_y = -3},/obj/item/weapon/reagent_containers/syringe{pixel_x = 6; pixel_y = -3},/turf/open/floor/plasteel/white,/area/medical/sleeper) +"bMK" = (/obj/structure/bed,/obj/item/weapon/bedsheet/medical,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bML" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bMM" = (/obj/machinery/door/airlock/medical{name = "Patient Room"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bMN" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 2},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bMO" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bMP" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/cmo) +"bMQ" = (/obj/structure/table,/obj/item/weapon/cartridge/medical{pixel_x = -2; pixel_y = 6},/obj/item/weapon/cartridge/medical{pixel_x = 6; pixel_y = 3},/obj/item/weapon/cartridge/medical,/obj/item/weapon/cartridge/chemistry{pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bMR" = (/obj/machinery/computer/card/minor/cmo,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bMS" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bMT" = (/obj/structure/closet/secure_closet/CMO,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/barber,/area/medical/cmo) +"bMU" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/toxins/xenobiology) +"bMV" = (/obj/structure/disposaloutlet{dir = 1},/obj/structure/disposalpipe/trunk,/turf/open/floor/engine,/area/toxins/xenobiology) +"bMW" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/toxins/storage) +"bMX" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/toxins/storage) +"bMY" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/toxins/storage) +"bMZ" = (/obj/machinery/portable_atmospherics/scrubber/huge,/turf/open/floor/plasteel/floorgrime,/area/toxins/storage) +"bNa" = (/obj/structure/sign/nosmoking_2{pixel_x = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bNb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bNc" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bNd" = (/obj/item/device/assembly/prox_sensor{pixel_x = -4; pixel_y = 1},/obj/item/device/assembly/prox_sensor{pixel_x = 8; pixel_y = 9},/obj/item/device/assembly/prox_sensor{pixel_x = 9; pixel_y = -2},/obj/item/device/assembly/prox_sensor{pixel_x = 0; pixel_y = 2},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNe" = (/obj/structure/chair/stool,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNf" = (/obj/structure/table/reinforced,/obj/item/weapon/wrench,/obj/item/weapon/screwdriver{pixel_y = 10},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNg" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNh" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNi" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/research{name = "Toxins Launch Room Access"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bNj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNk" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNl" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNm" = (/obj/machinery/door/airlock/research{name = "Toxins Launch Room"; req_access_txt = "8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNo" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNp" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/mixing) +"bNq" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'BOMB RANGE"; name = "BOMB RANGE"},/turf/closed/wall,/area/toxins/test_area) +"bNr" = (/obj/structure/chair,/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bNs" = (/obj/item/device/flashlight/lamp,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bNt" = (/obj/structure/chair,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bNu" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/obj/effect/decal/remains/human,/turf/open/floor/mineral/titanium,/area/shuttle/abandoned) +"bNv" = (/obj/machinery/door/airlock/titanium{name = "Mining Shuttle Airlock"; req_access_txt = "0"},/obj/docking_port/mobile{dir = 8; dwidth = 3; height = 5; id = "mining"; name = "mining shuttle"; port_angle = 90; width = 7},/obj/docking_port/stationary{dir = 8; dwidth = 3; height = 5; id = "mining_home"; name = "mining shuttle bay"; width = 7},/turf/open/floor/plating,/area/shuttle/labor) +"bNw" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Mining Dock Airlock"; req_access = null; req_access_txt = "48"; shuttledocked = 1},/turf/open/floor/plating,/area/quartermaster/miningdock) +"bNx" = (/obj/machinery/door/airlock/glass_mining{cyclelinkeddir = 8; name = "Mining Dock"; req_access_txt = "48"},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bNy" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bNz" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"bNA" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/aft) +"bNB" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/robotics{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/computer/mecha_control{pixel_x = 1; pixel_y = -1},/turf/open/floor/plasteel,/area/storage/tech) +"bNC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/storage/tech) +"bND" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/storage/tech) +"bNE" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/obj/item/weapon/stock_parts/subspace/analyzer,/turf/open/floor/plating,/area/storage/tech) +"bNF" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/cloning{pixel_x = 0},/obj/item/weapon/circuitboard/computer/med_data{pixel_x = 3; pixel_y = -3},/obj/item/weapon/circuitboard/machine/clonescanner,/obj/item/weapon/circuitboard/machine/clonepod,/obj/item/weapon/circuitboard/computer/scan_consolenew,/turf/open/floor/plating,/area/storage/tech) +"bNG" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/secure_data{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/computer/security{pixel_x = 1; pixel_y = -1},/turf/open/floor/plating,/area/storage/tech) +"bNH" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/circuitboard/computer/powermonitor{pixel_x = -2; pixel_y = 2},/obj/item/weapon/circuitboard/computer/stationalert{pixel_x = 1; pixel_y = -1},/obj/item/weapon/circuitboard/computer/atmos_alert{pixel_x = 3; pixel_y = -3},/turf/open/floor/plating,/area/storage/tech) +"bNI" = (/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plating,/area/storage/tech) +"bNJ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bNK" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bNL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bNM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bNN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bNO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bNP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bNQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bNR" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bNS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"bNT" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/asmaint) +"bNU" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bNV" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bNW" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plating,/area/maintenance/asmaint) +"bNX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/sleeper) +"bNY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall/r_wall,/area/medical/sleeper) +"bNZ" = (/turf/closed/wall/r_wall,/area/medical/medbay) +"bOa" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bOb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bOc" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/shieldwallgen{req_access = list(55)},/turf/open/floor/plating,/area/toxins/xenobiology) +"bOd" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bOe" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bOf" = (/obj/machinery/door/window/southleft{dir = 1; name = "Test Chamber"; req_access_txt = "55"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"bOg" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bOh" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "misclab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bOi" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bOj" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bOk" = (/obj/machinery/vending/cigarette,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bOl" = (/obj/structure/closet/l3closet/scientist{pixel_x = -2},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOm" = (/obj/structure/closet/wardrobe/science_white,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOn" = (/obj/item/device/assembly/signaler{pixel_x = 0; pixel_y = 8},/obj/item/device/assembly/signaler{pixel_x = -8; pixel_y = 5},/obj/item/device/assembly/signaler{pixel_x = 6; pixel_y = 5},/obj/item/device/assembly/signaler{pixel_x = -2; pixel_y = -2},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOo" = (/obj/item/device/transfer_valve{pixel_x = -5},/obj/item/device/transfer_valve{pixel_x = -5},/obj/item/device/transfer_valve{pixel_x = 0},/obj/item/device/transfer_valve{pixel_x = 0},/obj/item/device/transfer_valve{pixel_x = 5},/obj/item/device/transfer_valve{pixel_x = 5},/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOp" = (/obj/item/device/assembly/timer{pixel_x = 5; pixel_y = 4},/obj/item/device/assembly/timer{pixel_x = -4; pixel_y = 2},/obj/item/device/assembly/timer{pixel_x = 6; pixel_y = -4},/obj/item/device/assembly/timer{pixel_x = 0; pixel_y = 0},/obj/structure/table/reinforced,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOq" = (/obj/structure/tank_dispenser,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOr" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOs" = (/obj/machinery/power/apc{dir = 4; name = "Toxins Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable,/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bOt" = (/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) +"bOu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/toxins/mixing) +"bOv" = (/obj/machinery/camera{c_tag = "Toxins Launch Room Access"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/mixing) +"bOw" = (/obj/machinery/door/window/southleft{name = "Mass Driver Door"; req_access_txt = "7"},/turf/open/floor/plasteel/loadingarea,/area/toxins/mixing) +"bOx" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/mixing) +"bOy" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bOz" = (/turf/open/floor/plating/airless,/area/toxins/test_area) +"bOA" = (/obj/structure/chair{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bOB" = (/obj/item/weapon/ore/silver,/obj/item/weapon/ore/silver,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOC" = (/obj/machinery/camera{c_tag = "Mining Dock External"; dir = 8},/obj/structure/reagent_dispensers/fueltank,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOD" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0},/turf/closed/wall,/area/quartermaster/miningdock) +"bOE" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/brown{dir = 10},/area/quartermaster/miningdock) +"bOF" = (/obj/structure/rack{dir = 1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/obj/item/weapon/pickaxe{pixel_x = 5},/obj/item/weapon/shovel{pixel_x = -5},/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOG" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOH" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOI" = (/obj/machinery/mineral/equipment_vendor,/turf/open/floor/plasteel,/area/quartermaster/miningdock) +"bOJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/aft) +"bOK" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bOL" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/storage/tech) +"bOM" = (/obj/structure/table,/obj/item/weapon/stock_parts/micro_laser,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/manipulator,/obj/item/weapon/stock_parts/capacitor,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/obj/item/weapon/stock_parts/micro_laser/high,/turf/open/floor/plating,/area/storage/tech) +"bON" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/obj/item/weapon/stock_parts/subspace/amplifier,/turf/open/floor/plating,/area/storage/tech) +"bOO" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plating,/area/storage/tech) +"bOP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/storage/tech) +"bOQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/storage/tech) +"bOR" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bOS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bOT" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"bOU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint) +"bOV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/maintenance/asmaint) +"bOW" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/closed/wall/r_wall,/area/maintenance/asmaint) +"bOX" = (/obj/structure/closet,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bOY" = (/obj/structure/reagent_dispensers/watertank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bOZ" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPa" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPb" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bPc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/sign/securearea{pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPe" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bPf" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j1s"; sortType = 11},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPg" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPh" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPi" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "Medbay APC"; pixel_x = 24; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/medical/medbay) +"bPj" = (/obj/machinery/vending/wallmed{pixel_y = 28},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bPk" = (/obj/machinery/door/airlock/medical{name = "Patient Room 2"; req_access_txt = "5"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bPl" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bPm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/medical/medbay) +"bPn" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPo" = (/obj/machinery/power/apc{dir = 1; name = "CM Office APC"; pixel_y = 24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/medical/cmo) +"bPp" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPq" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bPr" = (/obj/item/weapon/wrench,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bPs" = (/obj/machinery/computer/security/telescreen{name = "Test Chamber Moniter"; network = list("Xeno"); pixel_x = 0; pixel_y = 2},/obj/structure/table/reinforced,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bPt" = (/obj/machinery/button/door{id = "misclab"; name = "Test Chamber Blast Doors"; pixel_x = 0; pixel_y = -2; req_access_txt = "55"},/obj/structure/table/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/window/reinforced{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bPu" = (/obj/machinery/door/window/southleft{name = "Test Chamber"; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bPv" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bPw" = (/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/obj/structure/table,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bPx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bPy" = (/obj/structure/sign/biohazard,/turf/closed/wall/r_wall,/area/toxins/xenobiology) +"bPz" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/door/firedoor/heavy,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bPA" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/firedoor/heavy,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bPB" = (/obj/machinery/camera{c_tag = "Research Division South"; dir = 8; network = list("SS13")},/obj/machinery/door/firedoor/heavy,/turf/open/floor/plasteel/white/side{dir = 9},/area/medical/research{name = "Research Division"}) +"bPC" = (/obj/structure/sign/fire,/turf/closed/wall/r_wall,/area/medical/research{name = "Research Division"}) +"bPD" = (/obj/structure/sign/nosmoking_2{pixel_x = -32},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bPE" = (/obj/machinery/mass_driver{dir = 4; id = "toxinsdriver"},/turf/open/floor/plating,/area/toxins/mixing) +"bPF" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/toxins/mixing) +"bPG" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/toxins/mixing) +"bPH" = (/obj/machinery/door/poddoor{id = "toxinsdriver"; name = "toxins launcher bay door"},/turf/open/floor/plating,/area/toxins/mixing) +"bPI" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bPJ" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bPK" = (/obj/item/device/radio/beacon,/turf/open/floor/plating/airless,/area/toxins/test_area) +"bPL" = (/obj/machinery/camera{active_power_usage = 0; c_tag = "Bomb Test Site"; desc = "A specially-reinforced camera with a long lasting battery, used to monitor the bomb testing site."; dir = 8; invuln = 1; light = null; name = "Hardened Bomb-Test Camera"; network = list("Toxins"); use_power = 0},/obj/item/target/alien{anchored = 1},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating{luminosity = 2; initial_gas_mix = "o2=0.01;n2=0.01"},/area/toxins/test_area) +"bPM" = (/turf/closed/indestructible{desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; icon_state = "riveted"; name = "hyper-reinforced wall"},/area/toxins/test_area) +"bPN" = (/obj/structure/shuttle/engine/heater,/turf/open/floor/plating,/area/shuttle/labor) +"bPO" = (/obj/structure/ore_box,/turf/open/floor/mineral/titanium/blue,/area/shuttle/labor) +"bPP" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"bPQ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/aft) +"bPR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bPS" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/transmitter,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/obj/item/weapon/stock_parts/subspace/treatment,/turf/open/floor/plating,/area/storage/tech) +"bPT" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/item/weapon/stock_parts/subspace/filter,/obj/machinery/light/small,/turf/open/floor/plating,/area/storage/tech) +"bPU" = (/obj/structure/table,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/ansible,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/obj/item/weapon/stock_parts/subspace/crystal,/turf/open/floor/plating,/area/storage/tech) +"bPV" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/clothing/gloves/color/yellow,/obj/item/device/t_scanner,/obj/item/device/multitool,/turf/open/floor/plating,/area/storage/tech) +"bPW" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/electrical{pixel_x = 1; pixel_y = -1},/obj/item/device/multitool,/obj/item/clothing/glasses/meson,/obj/machinery/light/small,/turf/open/floor/plating,/area/storage/tech) +"bPX" = (/obj/machinery/requests_console{department = "Tech storage"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/storage/tech) +"bPY" = (/obj/machinery/vending/assist,/turf/open/floor/plating,/area/storage/tech) +"bPZ" = (/obj/structure/disposalpipe/segment,/obj/machinery/camera{c_tag = "Aft Primary Hallway 2"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bQa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bQb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bQc" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/caution{dir = 5},/area/hallway/primary/aft) +"bQd" = (/turf/closed/wall/r_wall,/area/atmos) +"bQe" = (/obj/machinery/portable_atmospherics/canister/air,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/atmos) +"bQf" = (/obj/machinery/portable_atmospherics/canister/oxygen,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/atmos) +"bQg" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/atmos) +"bQh" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/atmos) +"bQi" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/atmos) +"bQj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/maintenance{name = "Atmospherics Maintenance"; req_access_txt = "24"},/turf/open/floor/plating,/area/atmos) +"bQk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/closed/wall/r_wall,/area/atmos) +"bQl" = (/obj/machinery/atmospherics/pipe/simple/supply/visible,/turf/closed/wall/r_wall,/area/atmos) +"bQm" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bQn" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/clothing/neck/stethoscope,/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQo" = (/obj/structure/chair/office/light{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQp" = (/obj/structure/closet/secure_closet/personal/patient,/obj/machinery/button/door{id = "medpriv1"; name = "Privacy Shutters"; pixel_y = -25},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQq" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "medpriv1"; name = "privacy door"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bQr" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/medbay) +"bQt" = (/obj/machinery/door/airlock/maintenance{name = "Medbay Maintenance"; req_access_txt = "5"},/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/medical/medbay) +"bQu" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bQv" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bQw" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bQx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/junction,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"bQy" = (/obj/machinery/power/apc{dir = 8; name = "Xenobiology APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQz" = (/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQA" = (/obj/structure/chair/stool,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQC" = (/obj/machinery/monkey_recycler,/obj/machinery/firealarm{dir = 2; pixel_y = 24},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQD" = (/obj/machinery/processor{desc = "A machine used to process slimes and retrieve their extract."; name = "Slime Processor"},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQE" = (/obj/machinery/smartfridge/extract,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQF" = (/obj/structure/table,/obj/machinery/reagentgrinder,/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQG" = (/obj/structure/closet/l3closet/scientist,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQH" = (/obj/structure/closet/l3closet/scientist,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 28},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bQI" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/xenobiology) +"bQJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bQK" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/research{name = "Research Division"}) +"bQL" = (/obj/machinery/door/poddoor{id = "mixvent"; name = "Mixer Room Vent"},/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bQM" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bQN" = (/obj/machinery/sparker{dir = 2; id = "mixingsparker"; pixel_x = 25},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; external_pressure_bound = 0; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bQO" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/closed/wall/r_wall,/area/toxins/mixing) +"bQP" = (/obj/machinery/airlock_sensor{id_tag = "tox_airlock_sensor"; master_tag = "tox_airlock_control"; pixel_y = 24},/obj/machinery/atmospherics/components/binary/pump{dir = 4; on = 1},/turf/open/floor/engine,/area/toxins/mixing) +"bQQ" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/obj/machinery/meter,/obj/machinery/embedded_controller/radio/airlock_controller{airpump_tag = "tox_airlock_pump"; exterior_door_tag = "tox_airlock_exterior"; id_tag = "tox_airlock_control"; interior_door_tag = "tox_airlock_interior"; pixel_x = -24; pixel_y = 0; sanitize_external = 1; sensor_tag = "tox_airlock_sensor"},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bQR" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4; name = "mix to port"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bQS" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/mixing) +"bQT" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bQU" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bQV" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bQW" = (/obj/structure/chair{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bQX" = (/obj/structure/shuttle/engine/propulsion/burst,/obj/structure/window/reinforced{dir = 1; layer = 2.9},/turf/open/floor/plating/airless,/area/shuttle/labor) +"bQY" = (/obj/structure/disposalpipe/segment,/obj/machinery/status_display{density = 0; layer = 3; pixel_x = -32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bQZ" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bRa" = (/turf/open/floor/plasteel/caution{dir = 4},/area/hallway/primary/aft) +"bRb" = (/turf/closed/wall,/area/atmos) +"bRc" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plasteel,/area/atmos) +"bRd" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bRe" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel,/area/atmos) +"bRf" = (/obj/machinery/firealarm{dir = 2; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bRg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bRh" = (/obj/machinery/pipedispenser,/turf/open/floor/plasteel,/area/atmos) +"bRi" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bRj" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 8},/obj/machinery/light{dir = 1},/obj/machinery/meter{frequency = 1441; id_tag = "waste_meter"; name = "Waste Loop"},/turf/open/floor/plasteel,/area/atmos) +"bRk" = (/obj/machinery/camera{c_tag = "Atmospherics North East"},/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Distro to Waste"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bRl" = (/obj/machinery/atmospherics/pipe/manifold/supply/visible{dir = 2},/obj/machinery/meter{frequency = 1441; id_tag = "distro_meter"; name = "Distribution Loop"},/turf/open/floor/plasteel,/area/atmos) +"bRm" = (/obj/machinery/atmospherics/pipe/manifold/supply/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bRn" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Air to Distro"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bRo" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 10; initialize_directions = 10},/turf/open/floor/plasteel,/area/atmos) +"bRp" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"bRq" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/closed/wall/r_wall,/area/atmos) +"bRr" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/space,/area/space/nearstation) +"bRs" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/space,/area/space) +"bRt" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 10},/turf/open/space,/area/space/nearstation) +"bRu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/medical/virology) +"bRv" = (/turf/closed/wall/r_wall,/area/medical/virology) +"bRw" = (/turf/closed/wall,/area/medical/virology) +"bRx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/doorButtons/access_button{idDoor = "virology_airlock_exterior"; idSelf = "virology_airlock_control"; name = "Virology Access Button"; pixel_x = -24; pixel_y = 0; req_access_txt = "39"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/virology{autoclose = 0; frequency = 1449; icon_state = "door_locked"; id_tag = "virology_airlock_exterior"; locked = 1; name = "Virology Exterior Airlock"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/medical/virology) +"bRy" = (/obj/structure/sign/biohazard,/turf/closed/wall,/area/medical/virology) +"bRz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 13},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"bRA" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Xenobiology Maintenance"; req_access_txt = "55"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/xenobiology) +"bRB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRD" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRF" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRH" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRI" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Xenobiology Lab"; req_access_txt = "55"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bRJ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/white/side{dir = 5},/area/medical/research{name = "Research Division"}) +"bRK" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/research{name = "Research Division"}) +"bRL" = (/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bRM" = (/obj/effect/landmark/event_spawn,/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bRN" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1449; glass = 1; heat_proof = 1; icon_state = "door_locked"; id_tag = "tox_airlock_exterior"; locked = 1; name = "Mixing Room Exterior Airlock"; req_access_txt = "8"},/turf/open/floor/engine,/area/toxins/mixing) +"bRO" = (/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{dir = 2; frequency = 1449; id = "tox_airlock_pump"},/turf/open/floor/engine,/area/toxins/mixing) +"bRP" = (/obj/machinery/door/airlock/glass_research{autoclose = 0; frequency = 1449; glass = 1; heat_proof = 1; icon_state = "door_locked"; id_tag = "tox_airlock_interior"; locked = 1; name = "Mixing Room Interior Airlock"; req_access_txt = "8"},/turf/open/floor/engine,/area/toxins/mixing) +"bRQ" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bRR" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bRS" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/camera{c_tag = "Toxins Lab East"; dir = 8; network = list("SS13","RD"); pixel_y = -22},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/mixing) +"bRT" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bRU" = (/obj/structure/closet/wardrobe/grey,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bRV" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bRW" = (/obj/structure/chair{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bRX" = (/obj/item/device/flashlight/lamp,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bRY" = (/obj/structure/chair{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating/airless,/area/toxins/test_area) +"bRZ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/test_area) +"bSa" = (/turf/closed/wall,/area/construction) +"bSb" = (/obj/structure/closet/crate,/turf/open/floor/plating,/area/construction) +"bSc" = (/turf/open/floor/plating,/area/construction) +"bSd" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plating,/area/construction) +"bSe" = (/turf/open/floor/plasteel,/area/construction) +"bSf" = (/obj/structure/closet/toolcloset,/turf/open/floor/plasteel,/area/construction) +"bSg" = (/turf/open/floor/plasteel/caution{dir = 6},/area/hallway/primary/aft) +"bSh" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/turf/open/floor/plasteel,/area/atmos) +"bSi" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bSj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/atmos) +"bSk" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/camera{c_tag = "Atmospherics Monitoring"; dir = 2; network = list("SS13")},/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel/caution{dir = 5},/area/atmos) +"bSl" = (/obj/machinery/camera{c_tag = "Atmospherics North West"; dir = 4; network = list("SS13")},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"bSm" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bSn" = (/turf/open/floor/plasteel,/area/atmos) +"bSo" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bSp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bSq" = (/obj/machinery/pipedispenser/disposal,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bSr" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bSs" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bSt" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bSu" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Mix to Distro"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bSv" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 8; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"bSw" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Mix to Incinerator"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bSx" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 10; initialize_directions = 10},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bSy" = (/obj/structure/grille,/turf/closed/wall/r_wall,/area/atmos) +"bSz" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space/nearstation) +"bSA" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall/r_wall,/area/medical/virology) +"bSB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSC" = (/obj/item/weapon/storage/secure/safe{pixel_x = 5; pixel_y = 29},/obj/machinery/camera{c_tag = "Virology Break Room"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSD" = (/obj/machinery/light{dir = 1},/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSE" = (/obj/item/weapon/bedsheet,/obj/structure/bed,/turf/open/floor/plasteel/white,/area/medical/virology) +"bSF" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSH" = (/obj/structure/closet/emcloset,/obj/machinery/camera{c_tag = "Virology Airlock"; dir = 2; network = list("SS13")},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSI" = (/turf/open/floor/plasteel/white,/area/medical/virology) +"bSJ" = (/mob/living/carbon/monkey,/turf/open/floor/plasteel/white,/area/medical/virology) +"bSK" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bSL" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{pixel_x = 32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bSM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/toxins/xenobiology) +"bSN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bSO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/chair/comfy/black,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bSP" = (/obj/effect/landmark/start{name = "Scientist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/chair/comfy/black,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bSQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bSR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bSS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bST" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bSU" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/xenobiology) +"bSV" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/research{name = "Research Division"}) +"bSW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/research{name = "Research Division"}) +"bSX" = (/turf/open/floor/plasteel/white/side{dir = 1},/area/medical/research{name = "Research Division"}) +"bSY" = (/obj/machinery/sparker{dir = 2; id = "mixingsparker"; pixel_x = 25},/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 4; frequency = 1441; id = "air_in"},/turf/open/floor/engine/vacuum,/area/toxins/mixing) +"bSZ" = (/obj/structure/sign/fire{pixel_y = -32},/obj/machinery/atmospherics/components/binary/pump{dir = 8; on = 1},/turf/open/floor/engine,/area/toxins/mixing) +"bTa" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/obj/machinery/meter,/obj/machinery/button/door{id = "mixvent"; name = "Mixing Room Vent Control"; pixel_x = -25; pixel_y = 5; req_access_txt = "7"},/obj/machinery/button/ignition{id = "mixingsparker"; pixel_x = -25; pixel_y = -5},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bTb" = (/obj/machinery/light,/obj/machinery/atmospherics/components/binary/valve{dir = 4; name = "port to mix"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/mixing) +"bTc" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/mixing) +"bTd" = (/obj/item/target,/obj/structure/window/reinforced{dir = 1},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/toxins/test_area) +"bTe" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/space/nearstation) +"bTf" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/aft) +"bTg" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance{lootcount = 4; name = "4maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"bTh" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/aft) +"bTi" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"bTj" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/aft) +"bTk" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/aft) +"bTl" = (/obj/structure/light_construct{dir = 8},/turf/open/floor/plating,/area/construction) +"bTm" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plating,/area/construction) +"bTn" = (/obj/structure/light_construct{dir = 4},/turf/open/floor/plasteel,/area/construction) +"bTo" = (/obj/structure/disposalpipe/segment,/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 1},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bTp" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bTq" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/loadingarea{dir = 8},/area/hallway/primary/aft) +"bTr" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/plasticflaps{opacity = 1},/obj/machinery/navbeacon{codes_txt = "delivery;dir=4"; dir = 4; freq = 1400; location = "Atmospherics"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/atmos) +"bTs" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/loadingarea{dir = 4},/area/atmos) +"bTt" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTu" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bTw" = (/obj/machinery/computer/atmos_control,/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; name = "Atmos RC"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"bTx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/atmos) +"bTy" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel,/area/atmos) +"bTz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bTA" = (/obj/machinery/pipedispenser/disposal/transit_tube,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTB" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bTC" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Waste In"; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTD" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/atmos) +"bTE" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible,/turf/open/floor/plasteel,/area/atmos) +"bTF" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix Outlet Pump"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bTG" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air to Mix"; on = 0},/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bTH" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/manifold/yellow/visible,/turf/open/floor/plasteel/green/side{dir = 5},/area/atmos) +"bTI" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bTJ" = (/obj/machinery/atmospherics/pipe/simple{dir = 4},/obj/structure/grille,/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) +"bTK" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "mix_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/vacuum,/area/atmos) +"bTL" = (/obj/machinery/camera{c_tag = "Atmospherics Waste Tank"},/turf/open/floor/engine/vacuum,/area/atmos) +"bTM" = (/turf/open/floor/engine/vacuum,/area/atmos) +"bTN" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) +"bTO" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = -3; pixel_y = 6},/turf/open/floor/plasteel/white,/area/medical/virology) +"bTP" = (/obj/machinery/iv_drip,/turf/open/floor/plasteel/white,/area/medical/virology) +"bTQ" = (/obj/machinery/shower{dir = 4},/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel/white,/area/medical/virology) +"bTR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bTS" = (/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/closet/l3closet,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bTT" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) +"bTU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/mob/living/carbon/monkey,/turf/open/floor/plasteel/white,/area/medical/virology) +"bTV" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/virology) +"bTW" = (/obj/machinery/disposal/bin,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = -32},/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTX" = (/obj/machinery/computer/camera_advanced/xenobio,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTY" = (/obj/machinery/light,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/table/glass,/obj/item/weapon/storage/box/monkeycubes,/obj/item/weapon/storage/box/monkeycubes,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bTZ" = (/obj/structure/table/glass,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUa" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUb" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUc" = (/obj/structure/table,/obj/item/weapon/extinguisher{pixel_x = 4; pixel_y = 3},/obj/item/weapon/extinguisher,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUd" = (/obj/structure/table,/obj/machinery/requests_console{department = "Science"; departmentType = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = -30},/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUe" = (/obj/structure/table,/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/machinery/light,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUf" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/syringes,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUg" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bUh" = (/turf/closed/wall,/area/toxins/xenobiology) +"bUi" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/toxins/misc_lab) +"bUj" = (/obj/machinery/door/airlock/research{name = "Testing Lab"; req_access_txt = "47"},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bUk" = (/turf/closed/wall/r_wall,/area/toxins/misc_lab) +"bUl" = (/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bUm" = (/obj/effect/decal/cleanable/oil,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bUn" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/aft) +"bUo" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/maintenance/aft) +"bUp" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/aft) +"bUq" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/aft) +"bUr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"bUs" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"bUt" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating,/area/maintenance/aft) +"bUu" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"bUv" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/aft) +"bUw" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bUx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/construction) +"bUy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bUz" = (/obj/structure/closet/crate,/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bUA" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plating,/area/construction) +"bUB" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bUC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/construction) +"bUD" = (/obj/machinery/door/airlock/engineering{name = "Construction Area"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bUE" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bUF" = (/turf/open/floor/plasteel/caution{dir = 5},/area/hallway/primary/aft) +"bUG" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "atmos"; layer = 2.9; name = "atmos blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bUH" = (/obj/structure/tank_dispenser{pixel_x = -1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bUI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"bUJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bUK" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bUL" = (/obj/machinery/computer/atmos_control,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"bUM" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/atmos) +"bUN" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bUO" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/atmos) +"bUP" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"bUQ" = (/obj/structure/closet/crate,/turf/open/floor/plasteel,/area/atmos) +"bUR" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 8},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/atmos) +"bUS" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix to Filter"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bUT" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bUU" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"bUV" = (/obj/machinery/atmospherics/pipe/manifold/green/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bUW" = (/obj/machinery/atmospherics/pipe/manifold/green/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bUX" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "mix_in"; name = "Gas Mix Tank Control"; output_tag = "mix_out"; sensors = list("mix_sensor" = "Tank")},/turf/open/floor/plasteel/green/side{dir = 4},/area/atmos) +"bUY" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bUZ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/atmos) +"bVa" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "mix_sensor"},/turf/open/floor/engine/vacuum,/area/atmos) +"bVb" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/vacuum,/area/atmos) +"bVc" = (/obj/structure/table,/obj/item/weapon/storage/box/donkpockets{pixel_x = 3; pixel_y = 3},/obj/machinery/newscaster{pixel_x = -30},/turf/open/floor/plasteel/white,/area/medical/virology) +"bVd" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/white,/area/medical/virology) +"bVe" = (/obj/structure/closet/wardrobe/virology_white,/turf/open/floor/plasteel/white,/area/medical/virology) +"bVf" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/doorButtons/access_button{idDoor = "virology_airlock_interior"; idSelf = "virology_airlock_control"; name = "Virology Access Button"; pixel_x = 8; pixel_y = -28; req_access_txt = "39"},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel/white,/area/medical/virology) +"bVg" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bVh" = (/obj/structure/closet/l3closet,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel/white,/area/medical/virology) +"bVi" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bVj" = (/obj/structure/sign/biohazard,/turf/closed/wall,/area/toxins/xenobiology) +"bVk" = (/obj/machinery/door/firedoor,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bVl" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bVm" = (/obj/machinery/door/firedoor,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/camera{c_tag = "Xenobiology North"; dir = 8; network = list("SS13","RD")},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bVn" = (/obj/structure/closet/bombcloset,/obj/machinery/light_switch{pixel_x = -20; pixel_y = 0},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVo" = (/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVp" = (/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bVq" = (/obj/machinery/requests_console{department = "Science"; departmentType = 2; dir = 2; name = "Science Requests Console"; pixel_x = 0; pixel_y = 30},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVr" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/clothing/ears/earmuffs,/obj/machinery/camera{c_tag = "Testing Lab North"; dir = 2; network = list("SS13","RD")},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVs" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/engine,/area/toxins/misc_lab) +"bVt" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 1},/turf/open/floor/engine,/area/toxins/misc_lab) +"bVu" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4; req_access = null},/turf/open/floor/engine,/area/toxins/misc_lab) +"bVv" = (/obj/machinery/atmospherics/components/unary/thermomachine/heater{dir = 8},/turf/open/floor/engine,/area/toxins/misc_lab) +"bVw" = (/turf/closed/wall,/area/toxins/misc_lab) +"bVx" = (/obj/machinery/light/small{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVy" = (/obj/machinery/light/small{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bVz" = (/obj/structure/rack,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bVA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/maintenance/aft) +"bVB" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/aft) +"bVC" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/aft) +"bVD" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/aft) +"bVE" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bVF" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/aft) +"bVG" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/maintenance{name = "Construction Area Maintenance"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bVH" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bVI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bVJ" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/construction) +"bVK" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/construction) +"bVL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bVM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bVN" = (/obj/structure/table/reinforced,/obj/machinery/door/firedoor/heavy,/obj/machinery/door/window/northleft{dir = 4; icon_state = "left"; name = "Atmospherics Desk"; req_access_txt = "24"},/obj/machinery/door/poddoor/preopen{id = "atmos"; layer = 2.9; name = "atmos blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/atmos) +"bVO" = (/obj/structure/chair{dir = 8},/obj/effect/landmark/start{name = "Atmospheric Technician"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bVP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bVQ" = (/obj/structure/chair/office/dark{dir = 4},/obj/effect/landmark/start{name = "Atmospheric Technician"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/atmos) +"bVR" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"bVS" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/atmos) +"bVT" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel,/area/atmos) +"bVU" = (/obj/machinery/atmospherics/components/trinary/mixer{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"bVV" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"bVW" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 6},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/atmos) +"bVX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bVY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_atmos{name = "Distribution Loop"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) +"bVZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"bWa" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"bWb" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Pure to Mix"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bWc" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 5; initialize_directions = 12},/turf/open/floor/plasteel,/area/atmos) +"bWd" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Unfiltered to Mix"; on = 1},/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4; initialize_directions = 12},/turf/open/floor/plasteel,/area/atmos) +"bWe" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/green/side{dir = 6},/area/atmos) +"bWf" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bWg" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/space,/area/space/nearstation) +"bWh" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "mix_in"; pixel_y = 1},/turf/open/floor/engine/vacuum,/area/atmos) +"bWi" = (/obj/structure/table,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/machinery/reagentgrinder,/turf/open/floor/plasteel/white,/area/medical/virology) +"bWj" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bWk" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/white,/area/medical/virology) +"bWl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/virology{autoclose = 0; frequency = 1449; icon_state = "door_locked"; id_tag = "virology_airlock_interior"; locked = 1; name = "Virology Interior Airlock"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/virology) +"bWm" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/medical/virology) +"bWn" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_virology{name = "Monkey Pen"; req_access_txt = "39"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bWo" = (/obj/structure/disposalpipe/trunk{dir = 4},/obj/structure/disposaloutlet,/turf/open/floor/engine,/area/toxins/xenobiology) +"bWp" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/engine,/area/toxins/xenobiology) +"bWq" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bWr" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/window/reinforced,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bWs" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bWt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bWu" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/button/door{id = "xenobio8"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bWv" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "xenobio8"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bWw" = (/obj/structure/closet/l3closet/scientist{pixel_x = -2},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bWx" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bWy" = (/obj/structure/table,/obj/structure/window/reinforced{dir = 4},/obj/item/device/electropack,/obj/item/device/healthanalyzer,/obj/item/device/assembly/signaler,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bWz" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/engine,/area/toxins/misc_lab) +"bWA" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/open/floor/engine,/area/toxins/misc_lab) +"bWB" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/engine,/area/toxins/misc_lab) +"bWC" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 8},/turf/open/floor/engine,/area/toxins/misc_lab) +"bWD" = (/obj/machinery/magnetic_module,/obj/effect/landmark{name = "blobstart"},/obj/structure/target_stake,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) +"bWE" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"bWF" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"bWG" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"bWH" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/aft) +"bWI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"bWJ" = (/turf/closed/wall,/area/maintenance/bar) +"bWK" = (/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"bWL" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bWM" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating,/area/construction) +"bWN" = (/obj/machinery/camera{c_tag = "Construction Area"; dir = 1},/turf/open/floor/plating,/area/construction) +"bWO" = (/obj/structure/rack{dir = 1},/obj/item/clothing/suit/hazardvest,/turf/open/floor/plating,/area/construction) +"bWP" = (/obj/structure/table,/obj/item/stack/cable_coil{amount = 5},/obj/item/device/flashlight,/turf/open/floor/plating,/area/construction) +"bWQ" = (/obj/structure/table,/turf/open/floor/plating,/area/construction) +"bWR" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bWS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bWT" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/preopen{id = "atmos"; layer = 2.9; name = "atmos blast door"},/turf/open/floor/plating,/area/atmos) +"bWU" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/structure/table,/obj/item/weapon/tank/internals/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/weapon/tank/internals/emergency_oxygen{pixel_x = -8; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/obj/item/clothing/mask/breath{pixel_x = 4; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/atmos) +"bWV" = (/obj/structure/sign/atmosplaque{pixel_x = 0; pixel_y = -32},/obj/structure/table,/obj/item/weapon/storage/box,/obj/item/weapon/storage/box,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bWW" = (/obj/machinery/computer/station_alert,/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/button/door{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = 24; pixel_y = 4; req_access_txt = "24"},/turf/open/floor/plasteel/caution{dir = 6},/area/atmos) +"bWX" = (/obj/structure/table,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 7},/obj/item/clothing/head/welding{pixel_x = -5; pixel_y = 3},/obj/machinery/light{dir = 8},/obj/item/device/multitool,/turf/open/floor/plasteel,/area/atmos) +"bWY" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/storage/belt/utility,/obj/item/device/t_scanner,/obj/item/device/t_scanner,/obj/item/device/t_scanner,/turf/open/floor/plasteel,/area/atmos) +"bWZ" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50; pixel_x = 2; pixel_y = 2},/turf/open/floor/plasteel,/area/atmos) +"bXa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/atmos) +"bXb" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6; initialize_directions = 6},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXc" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXd" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXe" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXf" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXg" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXh" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 4; initialize_directions = 11},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"bXi" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXk" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/virology{name = "Break Room"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXl" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXm" = (/obj/machinery/doorButtons/airlock_controller{idExterior = "virology_airlock_exterior"; idInterior = "virology_airlock_interior"; idSelf = "virology_airlock_control"; name = "Virology Access Console"; pixel_x = 8; pixel_y = 22; req_access_txt = "39"},/obj/machinery/light_switch{pixel_x = -4; pixel_y = 24},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXn" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXo" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/firealarm{pixel_y = 25},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXp" = (/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Virology APC"; pixel_x = 0; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/camera{c_tag = "Virology Module"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bXq" = (/obj/machinery/vending/medical,/turf/open/floor/plasteel/white,/area/medical/virology) +"bXr" = (/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/engine,/area/toxins/xenobiology) +"bXs" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"bXt" = (/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bXu" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bXv" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bXw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio8"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"bXx" = (/obj/structure/rack,/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/obj/machinery/airalarm{dir = 4; locked = 0; pixel_x = -23; pixel_y = 0},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bXy" = (/obj/structure/table,/obj/machinery/cell_charger{pixel_y = 5},/obj/item/stack/cable_coil,/obj/item/device/multitool,/obj/item/weapon/stock_parts/cell/high/plus,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bXz" = (/turf/open/floor/engine,/area/toxins/misc_lab) +"bXA" = (/obj/machinery/atmospherics/components/binary/valve,/turf/open/floor/engine,/area/toxins/misc_lab) +"bXB" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/engine,/area/toxins/misc_lab) +"bXC" = (/obj/item/pipe{dir = 4; icon_state = "mixer"; name = "gas mixer fitting"; pipe_type = 14},/turf/open/floor/engine,/area/toxins/misc_lab) +"bXD" = (/obj/structure/table,/obj/item/device/assembly/igniter{pixel_x = -5; pixel_y = 3},/obj/item/device/assembly/igniter{pixel_x = 5; pixel_y = -4},/obj/item/device/assembly/igniter{pixel_x = 2; pixel_y = 6},/obj/item/device/assembly/igniter{pixel_x = 2; pixel_y = -1},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/obj/item/device/assembly/timer{pixel_x = -3; pixel_y = 3},/turf/open/floor/engine,/area/toxins/misc_lab) +"bXE" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bXF" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bXG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/toxins/misc_lab) +"bXH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"bXI" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/aft) +"bXJ" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plasteel/freezer,/area/maintenance/bar) +"bXK" = (/obj/machinery/shower{dir = 8},/obj/item/weapon/soap,/turf/open/floor/plasteel/freezer,/area/maintenance/bar) +"bXL" = (/obj/machinery/vending/autodrobe{req_access_txt = "0"},/turf/open/floor/wood,/area/maintenance/bar) +"bXM" = (/obj/machinery/vending/clothing,/turf/open/floor/wood,/area/maintenance/bar) +"bXN" = (/obj/machinery/vending/kink,/turf/open/floor/wood,/area/maintenance/bar) +"bXO" = (/obj/structure/table/wood,/obj/machinery/newscaster{pixel_y = 32},/obj/item/weapon/reagent_containers/spray/cleaner,/turf/open/floor/wood,/area/maintenance/bar) +"bXP" = (/obj/structure/table/wood,/obj/machinery/firealarm{pixel_y = 24},/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/wood,/area/maintenance/bar) +"bXQ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/closed/wall,/area/maintenance/bar) +"bXR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bXS" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/closed/wall,/area/maintenance/aft) +"bXT" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bXU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/maintenance/aft) +"bXV" = (/obj/machinery/power/apc{name = "Aft Hall APC"; dir = 8; pixel_x = -25; pixel_y = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"bXW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bXX" = (/obj/item/weapon/crowbar,/obj/item/weapon/wrench,/obj/structure/window/reinforced,/turf/open/floor/plasteel/caution{dir = 6},/area/hallway/primary/aft) +"bXY" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/atmos) +"bXZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/atmos) +"bYa" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/glass_atmos{name = "Atmospherics Monitoring"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) +"bYb" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6; initialize_directions = 6},/turf/open/floor/plasteel,/area/atmos) +"bYc" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bYd" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"bYe" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"bYf" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"bYg" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"bYh" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bYi" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "N2O Outlet Pump"; on = 0},/turf/open/floor/plasteel/escape{dir = 5},/area/atmos) +"bYj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "n2o_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/n2o,/area/atmos) +"bYk" = (/turf/open/floor/engine/n2o,/area/atmos) +"bYl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall/r_wall,/area/medical/virology) +"bYm" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/medical/virology) +"bYn" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall,/area/medical/virology) +"bYo" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/turf/open/floor/plasteel/white,/area/medical/virology) +"bYp" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/white,/area/medical/virology) +"bYq" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bYr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/virology) +"bYs" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio3"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bYt" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio3"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bYu" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bYv" = (/obj/structure/window/reinforced{dir = 1},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"bYw" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio8"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"bYx" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/structure/disposaloutlet{dir = 1},/turf/open/floor/engine,/area/toxins/xenobiology) +"bYy" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bYz" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10; pixel_x = 0; initialize_directions = 10},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bYA" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/clothing/glasses/science,/obj/item/clothing/glasses/science,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bYB" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/turf/open/floor/engine,/area/toxins/misc_lab) +"bYC" = (/obj/structure/table,/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/grenade/chem_grenade,/obj/item/weapon/grenade/chem_grenade,/turf/open/floor/engine,/area/toxins/misc_lab) +"bYD" = (/turf/open/floor/plating,/area/toxins/misc_lab) +"bYE" = (/obj/structure/target_stake,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/toxins/misc_lab) +"bYF" = (/obj/machinery/door/airlock{name = "Shower"},/turf/open/floor/plasteel/freezer,/area/maintenance/bar) +"bYG" = (/turf/open/floor/wood,/area/maintenance/bar) +"bYH" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/maintenance/bar) +"bYI" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) +"bYJ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/bar) +"bYK" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bYL" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-y"; dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bYM" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bYN" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bYO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bYP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/power/apc{dir = 1; name = "Construction Area APC"; pixel_y = 24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/construction) +"bYQ" = (/obj/machinery/power/apc{dir = 2; name = "Telecoms Monitoring APC"; pixel_y = -24},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/tcommsat/computer) +"bYR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"bYS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/aft) +"bYT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"bYU" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/arrival{dir = 8},/area/atmos) +"bYV" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible{dir = 1},/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) +"bYW" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/caution{dir = 8},/area/atmos) +"bYX" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/atmos) +"bYY" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"bYZ" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/atmos{name = "Atmospherics"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) +"bZa" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Air to External"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"bZb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"bZc" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"bZd" = (/obj/item/device/radio/beacon,/turf/open/floor/plasteel,/area/atmos) +"bZe" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air to Port"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bZf" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Mix to Port"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bZg" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Pure to Port"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"bZh" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plasteel,/area/atmos) +"bZi" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/open/floor/plasteel,/area/atmos) +"bZj" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "n2o_in"; name = "Nitrous Oxide Supply Control"; output_tag = "n2o_out"; sensors = list("n2o_sensor" = "Tank")},/turf/open/floor/plasteel/escape{dir = 4},/area/atmos) +"bZk" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2o_sensor"},/turf/open/floor/engine/n2o,/area/atmos) +"bZl" = (/obj/machinery/portable_atmospherics/canister/nitrous_oxide,/turf/open/floor/engine/n2o,/area/atmos) +"bZm" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/n2o,/area/atmos) +"bZn" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/asmaint) +"bZo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"bZp" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"bZq" = (/obj/machinery/smartfridge/chemistry/virology,/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) +"bZr" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"bZs" = (/obj/machinery/computer/pandemic,/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) +"bZt" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/medical/virology) +"bZu" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_virology{name = "Isolation A"; req_access_txt = "39"},/turf/open/floor/plasteel/white,/area/medical/virology) +"bZv" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/virology) +"bZw" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_virology{name = "Isolation B"; req_access_txt = "39"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/white,/area/medical/virology) +"bZx" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall,/area/toxins/xenobiology) +"bZy" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bZz" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 11; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"bZA" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bZB" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"bZC" = (/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bZD" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bZE" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50; pixel_x = 3; pixel_y = 3},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/mineral/plasma{layer = 2.9},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"bZF" = (/obj/machinery/camera{c_tag = "Testing Firing Range"; dir = 8; network = list("SS13","RD"); pixel_y = -22},/turf/open/floor/plating,/area/toxins/misc_lab) +"bZG" = (/obj/structure/target_stake,/turf/open/floor/plating,/area/toxins/misc_lab) +"bZH" = (/obj/structure/table,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/obj/item/weapon/screwdriver,/turf/open/floor/plating,/area/maintenance/aft) +"bZI" = (/obj/structure/table,/obj/item/weapon/poster/contraband,/turf/open/floor/plating,/area/maintenance/aft) +"bZJ" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/turf/open/floor/wood,/area/maintenance/bar) +"bZK" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/wood,/area/maintenance/bar) +"bZL" = (/obj/structure/bed,/obj/item/weapon/bedsheet/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/wood,/area/maintenance/bar) +"bZM" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/bar) +"bZN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) +"bZO" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/carpet,/area/maintenance/bar) +"bZP" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/carpet,/area/maintenance/bar) +"bZQ" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,/turf/open/floor/carpet,/area/maintenance/bar) +"bZR" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/bar) +"bZS" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bZT" = (/turf/closed/wall/r_wall,/area/tcommsat/server) +"bZU" = (/turf/closed/wall/r_wall,/area/tcommsat/computer) +"bZV" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"bZW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"bZX" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 9},/turf/closed/wall/r_wall,/area/atmos) +"bZY" = (/obj/machinery/camera{c_tag = "Atmospherics Access"; dir = 4; network = list("SS13")},/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/caution{dir = 8},/area/atmos) +"bZZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/atmos) +"caa" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"cab" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel/caution{dir = 4},/area/atmos) +"cac" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/structure/sign/securearea,/turf/closed/wall,/area/atmos) +"cad" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "External to Filter"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"cae" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"caf" = (/obj/structure/reagent_dispensers/watertank/high,/turf/open/floor/plasteel,/area/atmos) +"cag" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/atmos) +"cah" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/suit/hazardvest,/obj/item/clothing/gloves/color/black,/obj/item/clothing/gloves/color/black,/obj/item/clothing/gloves/color/black,/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas,/turf/open/floor/plasteel,/area/atmos) +"cai" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"caj" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"cak" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel,/area/atmos) +"cal" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 1; filter_type = "n2o"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"cam" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/escape{dir = 6},/area/atmos) +"can" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "n2o_in"; pixel_y = 1},/turf/open/floor/engine/n2o,/area/atmos) +"cao" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/maintenance/asmaint) +"cap" = (/obj/structure/table/glass,/obj/item/clothing/gloves/color/latex,/obj/machinery/requests_console{department = "Virology"; name = "Virology Requests Console"; pixel_x = -32},/obj/item/device/healthanalyzer,/obj/item/clothing/glasses/hud/health,/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) +"caq" = (/obj/structure/table,/obj/item/weapon/hand_labeler,/obj/item/device/radio/headset/headset_med,/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) +"car" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/medical/virology) +"cas" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"cat" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/effect/landmark{name = "revenantspawn"},/turf/open/floor/plasteel/white,/area/medical/virology) +"cau" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"cav" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"caw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cax" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/button/door{id = "xenobio7"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"cay" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "xenobio7"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"caz" = (/obj/item/device/radio/intercom{pixel_x = -25},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"caA" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"caB" = (/obj/structure/chair/office/light,/obj/effect/landmark/start{name = "Scientist"},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"caC" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"caD" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"caE" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"caF" = (/obj/structure/closet/secure_closet/personal/cabinet,/turf/open/floor/wood,/area/maintenance/bar) +"caG" = (/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/wood,/area/maintenance/bar) +"caH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/button/door{id = "MaintDorm2"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 10; pixel_y = -25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/maintenance/bar) +"caI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock{id_tag = "MaintDorm2"; name = "Dorm 2"},/turf/open/floor/wood,/area/maintenance/bar) +"caJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/wood,/area/maintenance/bar) +"caK" = (/obj/structure/chair/stool,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/maintenance/bar) +"caL" = (/obj/structure/table/wood/poker,/obj/item/weapon/coin/iron,/obj/item/weapon/coin/iron,/obj/item/weapon/coin/iron,/turf/open/floor/carpet,/area/maintenance/bar) +"caM" = (/obj/structure/table/wood/poker,/obj/item/weapon/storage/pill_bottle/dice,/obj/item/weapon/dice/d20,/turf/open/floor/carpet,/area/maintenance/bar) +"caN" = (/turf/open/floor/wood{icon_state = "wood-broken"},/area/maintenance/bar) +"caO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/maintenance/bar) +"caP" = (/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"caQ" = (/obj/machinery/telecomms/server/presets/engineering,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"caR" = (/obj/machinery/telecomms/bus/preset_four,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"caS" = (/obj/machinery/light{dir = 1},/obj/machinery/power/apc{cell_type = 5000; dir = 1; name = "Telecoms Server APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"caT" = (/obj/machinery/telecomms/processor/preset_three,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"caU" = (/obj/machinery/telecomms/server/presets/security,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"caV" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/tcommsat/computer) +"caW" = (/obj/structure/table,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/tcommsat/computer) +"caX" = (/obj/item/device/radio/intercom{dir = 8; freerange = 1; name = "Station Intercom (Telecoms)"; pixel_x = 0; pixel_y = 26},/turf/open/floor/plasteel,/area/tcommsat/computer) +"caY" = (/obj/machinery/light{dir = 1},/obj/machinery/announcement_system,/turf/open/floor/plasteel,/area/tcommsat/computer) +"caZ" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/disposalpipe/segment,/obj/machinery/light{dir = 8},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"cba" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel/escape{dir = 8},/area/atmos) +"cbb" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 1},/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) +"cbc" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/door/poddoor/preopen{id = "atmos"; name = "atmos blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/atmos) +"cbd" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/obj/machinery/door/poddoor/preopen{id = "atmos"; name = "atmos blast door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/atmos) +"cbe" = (/turf/closed/wall/r_wall,/area/security/checkpoint/engineering) +"cbf" = (/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/turf/open/floor/plasteel,/area/atmos) +"cbg" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/camera{c_tag = "Atmospherics West"; dir = 8; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/atmos) +"cbh" = (/obj/structure/extinguisher_cabinet{pixel_x = -27; pixel_y = 0},/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air to Port"; on = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cbi" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"cbj" = (/obj/structure/door_assembly/door_assembly_mai,/turf/open/floor/plating,/area/maintenance/asmaint) +"cbk" = (/obj/structure/table/glass,/obj/item/device/radio/intercom{pixel_x = -25},/obj/machinery/light{dir = 8},/obj/item/weapon/storage/box/beakers{pixel_x = 2; pixel_y = 2},/obj/item/weapon/storage/box/syringes,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) +"cbl" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel/white,/area/medical/virology) +"cbm" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Virologist"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"cbn" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/obj/item/weapon/pen/red,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) +"cbo" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/virology) +"cbp" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/white,/area/medical/virology) +"cbq" = (/obj/structure/table,/turf/open/floor/plasteel/white,/area/medical/virology) +"cbr" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/white,/area/medical/virology) +"cbs" = (/obj/effect/landmark{name = "revenantspawn"},/mob/living/simple_animal/slime,/turf/open/floor/engine,/area/toxins/xenobiology) +"cbt" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"cbu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio7"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"cbv" = (/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbw" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/general/visible,/obj/machinery/button/ignition{id = "testigniter"; pixel_x = -6; pixel_y = 2},/obj/machinery/button/door{id = "testlab"; name = "Test Chamber Blast Doors"; pixel_x = 4; pixel_y = 2; req_access_txt = "55"},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbx" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cby" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 0; pixel_y = 6},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbz" = (/obj/structure/rack,/obj/item/weapon/wrench,/obj/item/weapon/crowbar,/obj/machinery/computer/security/telescreen{name = "Test Chamber Moniter"; network = list("Test"); pixel_x = 0; pixel_y = -30},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbA" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/droneDispenser,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cbB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cbC" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cbD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cbE" = (/obj/structure/table/reinforced,/obj/structure/window/reinforced{dir = 1},/obj/machinery/recharger{pixel_y = 4},/obj/item/weapon/paper/range,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/toxins/misc_lab) +"cbF" = (/obj/structure/table/reinforced,/obj/machinery/magnetic_controller{autolink = 1},/obj/structure/window/reinforced{dir = 1},/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 29},/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/toxins/misc_lab) +"cbG" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/tinted/fulltile,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cbH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/shard,/turf/open/floor/plating,/area/maintenance/aft) +"cbI" = (/obj/machinery/light{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/maintenance/bar) +"cbJ" = (/obj/structure/table/wood/poker,/obj/effect/landmark/event_spawn,/turf/open/floor/carpet,/area/maintenance/bar) +"cbK" = (/obj/structure/table/wood/poker,/obj/item/weapon/book/manual/daredice,/turf/open/floor/carpet,/area/maintenance/bar) +"cbL" = (/obj/machinery/light{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) +"cbM" = (/obj/machinery/telecomms/server/presets/common,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbN" = (/obj/machinery/telecomms/processor/preset_four,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbO" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbP" = (/obj/machinery/telecomms/bus/preset_three,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbQ" = (/obj/machinery/telecomms/server/presets/command,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cbR" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) +"cbS" = (/obj/machinery/computer/message_monitor,/turf/open/floor/plasteel/yellow/side{dir = 8},/area/tcommsat/computer) +"cbT" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cbU" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cbV" = (/obj/structure/table,/obj/item/weapon/paper_bin,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cbW" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/scrubber,/obj/machinery/light/small,/turf/open/floor/plasteel/escape{dir = 8},/area/atmos) +"cbX" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/turf/closed/wall/r_wall,/area/atmos) +"cbY" = (/obj/machinery/door/firedoor/heavy,/obj/machinery/door/airlock/atmos{name = "Atmospherics"; req_access_txt = "24"},/turf/open/floor/plasteel,/area/atmos) +"cbZ" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/atmos) +"cca" = (/obj/machinery/power/apc{dir = 8; name = "Engineering Security APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel/red/side{dir = 9},/area/security/checkpoint/engineering) +"ccb" = (/obj/machinery/requests_console{department = "Security"; departmentType = 5; pixel_y = 30},/obj/structure/closet,/turf/open/floor/plasteel/red/side{dir = 1},/area/security/checkpoint/engineering) +"ccc" = (/obj/structure/filingcabinet,/obj/machinery/airalarm{pixel_y = 23},/turf/open/floor/plasteel/red/side{dir = 5},/area/security/checkpoint/engineering) +"ccd" = (/obj/structure/fireaxecabinet{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel,/area/atmos) +"cce" = (/obj/structure/closet/secure_closet/atmospherics,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"ccf" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/obj/machinery/portable_atmospherics/canister,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/atmos) +"ccg" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/atmos) +"cch" = (/obj/machinery/atmospherics/pipe/manifold/yellow/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cci" = (/obj/machinery/camera{c_tag = "Atmospherics East"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Plasma Outlet Pump"; on = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/atmos) +"ccj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "tox_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/plasma,/area/atmos) +"cck" = (/turf/open/floor/engine/plasma,/area/atmos) +"ccl" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/engine/plasma,/area/atmos) +"ccm" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint) +"ccn" = (/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) +"cco" = (/obj/structure/table/glass,/obj/structure/reagent_dispensers/virusfood{density = 0; pixel_x = -30},/obj/item/weapon/book/manual/wiki/infections{pixel_y = 7},/obj/item/weapon/reagent_containers/syringe/antiviral,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/spray/cleaner,/turf/open/floor/plasteel/whitegreen/side{dir = 8},/area/medical/virology) +"ccp" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/white,/area/medical/virology) +"ccq" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plasteel/white,/area/medical/virology) +"ccr" = (/obj/machinery/disposal/bin,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = -32},/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel/whitegreen/side{dir = 4},/area/medical/virology) +"ccs" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/medical/virology) +"cct" = (/obj/structure/closet/secure_closet/personal/patient,/turf/open/floor/plasteel/white,/area/medical/virology) +"ccu" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "xenobio2"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"ccv" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio2"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"ccw" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio7"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"ccx" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/machinery/atmospherics/pipe/simple/general/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/misc_lab) +"ccy" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/misc_lab) +"ccz" = (/obj/structure/grille,/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/engine,/area/toxins/misc_lab) +"ccA" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) +"ccB" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/window/reinforced{dir = 4},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) +"ccC" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ccD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ccE" = (/obj/machinery/door/airlock/glass_research{name = "Firing Range"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ccF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ccG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ccH" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ccI" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ccJ" = (/obj/structure/closet/crate,/obj/item/clothing/under/color/lightpurple,/obj/item/stack/spacecash/c200,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ccK" = (/obj/structure/girder,/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"ccL" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/wood{icon_state = "wood-broken7"},/area/maintenance/bar) +"ccM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/button/door{id = "MaintDorm1"; name = "Dorm Bolt Control"; normaldoorcontrol = 1; pixel_x = 10; pixel_y = 25; req_access_txt = "0"; specialfunctions = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/maintenance/bar) +"ccN" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock{id_tag = "MaintDorm1"; name = "Dorm 1"},/turf/open/floor/wood,/area/maintenance/bar) +"ccO" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/wood,/area/maintenance/bar) +"ccP" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/maintenance/bar) +"ccQ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/chair/stool,/turf/open/floor/carpet,/area/maintenance/bar) +"ccR" = (/obj/structure/chair/stool,/turf/open/floor/carpet,/area/maintenance/bar) +"ccS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/carpet,/area/maintenance/bar) +"ccT" = (/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ccU" = (/obj/machinery/blackbox_recorder,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ccV" = (/obj/machinery/telecomms/broadcaster/preset_right,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ccW" = (/obj/machinery/telecomms/receiver/preset_right,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ccX" = (/obj/machinery/computer/telecomms/server{network = "tcommsat"},/turf/open/floor/plasteel/yellow/side{dir = 10},/area/tcommsat/computer) +"ccY" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/tcommsat/computer) +"ccZ" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cda" = (/obj/structure/table,/obj/item/weapon/folder/blue,/obj/item/weapon/pen/blue,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cdb" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"cdc" = (/turf/closed/wall,/area/engine/break_room) +"cdd" = (/turf/open/floor/plasteel/caution{dir = 9},/area/engine/break_room) +"cde" = (/turf/open/floor/plasteel/caution{dir = 1},/area/engine/break_room) +"cdf" = (/turf/open/floor/plasteel/caution{dir = 5},/area/engine/break_room) +"cdg" = (/turf/closed/wall,/area/security/checkpoint/engineering) +"cdh" = (/obj/item/weapon/screwdriver{pixel_y = 10},/obj/machinery/button/door{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -24; pixel_y = -6; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/device/radio/off,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/engineering) +"cdi" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/security/checkpoint/engineering) +"cdj" = (/obj/machinery/camera{c_tag = "Security Post - Engineering"; dir = 8; network = list("SS13")},/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/engineering) +"cdk" = (/obj/machinery/suit_storage_unit/atmos,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cdl" = (/obj/structure/sign/nosmoking_2,/turf/closed/wall,/area/atmos) +"cdm" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"cdn" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "tox_in"; name = "Plasma Supply Control"; output_tag = "tox_out"; sensors = list("tox_sensor" = "Tank")},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"cdo" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "tox_sensor"},/turf/open/floor/engine/plasma,/area/atmos) +"cdp" = (/obj/machinery/portable_atmospherics/canister/toxins,/turf/open/floor/engine/plasma,/area/atmos) +"cdq" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/plasma,/area/atmos) +"cdr" = (/obj/structure/closet/l3closet/virology,/turf/open/floor/plasteel/whitegreen/side{dir = 2},/area/medical/virology) +"cds" = (/obj/structure/closet/secure_closet/medical1,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/whitegreen/side{dir = 2},/area/medical/virology) +"cdt" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall/r_wall,/area/medical/virology) +"cdu" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/machinery/camera{c_tag = "Xenobiology South"; dir = 4; network = list("SS13","RD")},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cdv" = (/obj/machinery/light{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cdw" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1},/turf/open/floor/engine,/area/toxins/misc_lab) +"cdx" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/engine,/area/toxins/misc_lab) +"cdy" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cdz" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cdA" = (/obj/structure/grille,/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/toxins/misc_lab) +"cdB" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cdC" = (/obj/structure/rack,/obj/item/weapon/gun/energy/laser/practice,/obj/item/clothing/ears/earmuffs,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cdD" = (/obj/item/weapon/shard{icon_state = "small"},/turf/open/floor/plating,/area/maintenance/aft) +"cdE" = (/obj/structure/table/wood,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/effect/landmark{name = "blobstart"},/turf/open/floor/wood,/area/maintenance/bar) +"cdF" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/turf/open/floor/wood,/area/maintenance/bar) +"cdG" = (/obj/structure/bed,/obj/item/weapon/bedsheet/blue,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/wood,/area/maintenance/bar) +"cdH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood{icon_state = "wood-broken6"},/area/maintenance/bar) +"cdI" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/wood,/area/maintenance/bar) +"cdJ" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/wood,/area/maintenance/bar) +"cdK" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/wood,/area/maintenance/bar) +"cdL" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/maintenance/bar) +"cdM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cdN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cdO" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cdP" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plating,/area/tcommsat/computer) +"cdQ" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) +"cdR" = (/obj/machinery/status_display,/turf/closed/wall,/area/tcommsat/computer) +"cdS" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/turf/open/floor/plating,/area/tcommsat/computer) +"cdT" = (/obj/machinery/door/airlock/glass_command{name = "Control Room"; req_access_txt = "19; 61"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cdU" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/tcommsat/computer) +"cdV" = (/obj/machinery/door/firedoor,/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"cdW" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"cdX" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"cdY" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/light_switch{pixel_x = -23; pixel_y = 0},/obj/machinery/light{dir = 8},/turf/open/floor/plasteel,/area/engine/break_room) +"cdZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel,/area/engine/break_room) +"cea" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/engine/break_room) +"ceb" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cec" = (/obj/machinery/door/airlock/glass_security{name = "Security Office"; req_access_txt = "63"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/security/checkpoint/engineering) +"ced" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel/red/side{dir = 8},/area/security/checkpoint/engineering) +"cee" = (/obj/structure/chair/office/dark,/obj/effect/landmark/start/depsec/engineering,/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/security/checkpoint/engineering) +"cef" = (/obj/machinery/computer/secure_data,/obj/machinery/light_switch{pixel_x = 27},/turf/open/floor/plasteel/red/side{dir = 4},/area/security/checkpoint/engineering) +"ceg" = (/obj/machinery/power/apc{dir = 8; name = "Atmospherics APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel,/area/atmos) +"ceh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/atmos) +"cei" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/item/weapon/wrench,/turf/open/floor/plasteel,/area/atmos) +"cej" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"cek" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 1; filter_type = "plasma"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"cel" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"cem" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "tox_in"; pixel_y = 1},/turf/open/floor/engine/plasma,/area/atmos) +"cen" = (/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint) +"ceo" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/maintenance/asmaint) +"cep" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"ceq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/closed/wall/r_wall,/area/medical/virology) +"cer" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/item/weapon/wrench,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"ces" = (/obj/machinery/atmospherics/components/binary/valve/open{icon_state = "mvalve_map"; dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"cet" = (/obj/machinery/atmospherics/components/unary/tank/air{dir = 8},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) +"ceu" = (/obj/structure/closet/emcloset,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/asmaint) +"cev" = (/obj/structure/rack{dir = 1},/obj/machinery/light/small{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) +"cew" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"cex" = (/obj/structure/window/reinforced,/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio6"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"cey" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/door/poddoor/preopen{id = "xenobio6"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"cez" = (/obj/item/device/radio/intercom{pixel_x = -25},/turf/open/floor/engine,/area/toxins/misc_lab) +"ceA" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/misc_lab) +"ceB" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ceC" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/stripes/corner{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ceD" = (/obj/structure/table,/obj/item/device/flashlight/lamp,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ceE" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ceF" = (/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"ceG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/airlock{name = "Gaming Room"},/turf/open/floor/wood,/area/maintenance/bar) +"ceH" = (/obj/machinery/door/airlock{name = "Gaming Room"},/turf/open/floor/wood,/area/maintenance/bar) +"ceI" = (/obj/machinery/power/terminal{dir = 4},/obj/machinery/ntnet_relay,/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceJ" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceK" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceL" = (/obj/machinery/telecomms/hub/preset,/turf/open/floor/plasteel/vault{dir = 8; name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceM" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ceO" = (/obj/machinery/door/airlock/glass_engineering{cyclelinkeddir = 4; name = "Server Room"; req_access_txt = "61"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/vault{dir = 5},/area/tcommsat/computer) +"ceP" = (/turf/open/floor/plasteel/vault{dir = 5},/area/tcommsat/computer) +"ceQ" = (/obj/machinery/door/airlock/glass_engineering{cyclelinkeddir = 8; name = "Server Room"; req_access_txt = "61"},/turf/open/floor/plasteel/vault{dir = 5},/area/tcommsat/computer) +"ceR" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/tcommsat/computer) +"ceS" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"ceT" = (/obj/structure/closet/emcloset,/obj/machinery/camera{c_tag = "Telecoms Monitoring"; dir = 8; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"ceU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/aft) +"ceV" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"ceW" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"ceX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"ceY" = (/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"ceZ" = (/obj/structure/table,/obj/item/clothing/glasses/meson,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel,/area/engine/break_room) +"cfa" = (/turf/open/floor/plasteel,/area/engine/break_room) +"cfb" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"cfc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/engine/break_room) +"cfd" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/security/checkpoint/engineering) +"cfe" = (/obj/structure/table,/obj/machinery/recharger{pixel_y = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 10},/area/security/checkpoint/engineering) +"cff" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/security_space_law,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/red/side,/area/security/checkpoint/engineering) +"cfg" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/obj/item/weapon/pen,/obj/structure/reagent_dispensers/peppertank{pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/red/side{dir = 6},/area/security/checkpoint/engineering) +"cfh" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/security/checkpoint/engineering) +"cfi" = (/obj/machinery/requests_console{department = "Atmospherics"; departmentType = 4; name = "Atmos RC"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/machinery/light{dir = 4; icon_state = "tube1"},/turf/open/floor/plasteel,/area/atmos) +"cfj" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/camera{c_tag = "Atmospherics Central"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Port to Filter"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"cfk" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/structure/chair/stool,/turf/open/floor/plasteel,/area/atmos) +"cfl" = (/obj/machinery/atmospherics/components/unary/thermomachine/heater{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cfm" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 5},/turf/open/space,/area/space/nearstation) +"cfn" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfo" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfp" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfq" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) +"cfr" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfs" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cft" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfu" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cfv" = (/obj/structure/chair/stool{pixel_y = 8},/obj/machinery/light/small{dir = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfw" = (/obj/machinery/atmospherics/components/binary/valve{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfx" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 8},/obj/machinery/portable_atmospherics/canister/air,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfy" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"cfz" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cfA" = (/obj/machinery/door/window/northleft{base_state = "right"; dir = 8; icon_state = "right"; name = "Containment Pen"; req_access_txt = "55"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"cfB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/window/northleft{dir = 4; name = "Containment Pen"; req_access_txt = "55"},/obj/machinery/door/poddoor/preopen{id = "xenobio6"; name = "containment blast door"},/turf/open/floor/engine,/area/toxins/xenobiology) +"cfC" = (/obj/machinery/sparker{id = "testigniter"; pixel_x = -25},/turf/open/floor/engine,/area/toxins/misc_lab) +"cfD" = (/obj/item/device/radio/beacon,/turf/open/floor/engine,/area/toxins/misc_lab) +"cfE" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/engine,/area/toxins/misc_lab) +"cfF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/engine,/area/toxins/misc_lab) +"cfG" = (/obj/machinery/door/poddoor/preopen{id = "testlab"; name = "test chamber blast door"},/obj/machinery/door/airlock/glass_research{cyclelinkeddir = 4; name = "Test Chamber"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/engine,/area/toxins/misc_lab) +"cfH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/toxins/misc_lab) +"cfI" = (/obj/machinery/door/airlock/glass_research{cyclelinkeddir = 8; name = "Test Chamber"; req_access_txt = "47"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/toxins/misc_lab) +"cfJ" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cfK" = (/obj/machinery/power/apc{dir = 4; name = "Testing Lab APC"; pixel_x = 26; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cfL" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cfM" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cfN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment,/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"cfO" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -2; pixel_y = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cfP" = (/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cfQ" = (/obj/structure/closet/secure_closet/freezer/kitchen/maintenance,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cfR" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cfS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cfT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/airlock{name = "Kitchen"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cfU" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cfV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/newscaster{pixel_y = 32},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cfW" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/firealarm{pixel_y = 24},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cfX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/machinery/door/window/eastleft{name = "Bar Counter"},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cfY" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/wood,/area/maintenance/bar) +"cfZ" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/wood,/area/maintenance/bar) +"cga" = (/obj/machinery/light{dir = 1},/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) +"cgb" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/maintenance/bar) +"cgc" = (/obj/machinery/camera{c_tag = "Telecoms Server Room"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cgd" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) +"cge" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating,/area/tcommsat/computer) +"cgf" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'SERVER ROOM'."; name = "SERVER ROOM"; pixel_y = 0},/turf/closed/wall,/area/tcommsat/computer) +"cgg" = (/turf/open/floor/plasteel,/area/tcommsat/computer) +"cgh" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cgi" = (/obj/machinery/requests_console{announcementConsole = 1; department = "Telecoms Admin"; departmentType = 5; name = "Telecoms RC"; pixel_x = 30; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cgj" = (/obj/structure/disposalpipe/sortjunction{dir = 2; icon_state = "pipe-j2s"; sortType = 5},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/caution/corner{dir = 8},/area/hallway/primary/aft) +"cgk" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"cgl" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/camera{c_tag = "Aft Primary Hallway 1"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel/yellow/corner{dir = 2},/area/hallway/primary/aft) +"cgm" = (/obj/machinery/power/apc{dir = 8; name = "Engineering Foyer APC"; pixel_x = -24},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/turf/open/floor/plasteel,/area/engine/break_room) +"cgn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"cgo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"cgp" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/security/checkpoint/engineering) +"cgq" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel,/area/atmos) +"cgr" = (/obj/structure/closet/wardrobe/atmospherics_yellow,/turf/open/floor/plasteel,/area/atmos) +"cgs" = (/obj/machinery/space_heater,/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/atmos) +"cgt" = (/obj/machinery/space_heater,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"cgu" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cgv" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Port to Filter"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"cgw" = (/obj/machinery/atmospherics/pipe/manifold/general/visible,/obj/item/weapon/cigbutt,/turf/open/floor/plasteel,/area/atmos) +"cgx" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{dir = 8},/turf/open/floor/plasteel,/area/atmos) +"cgy" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "CO2 Outlet Pump"; on = 0},/turf/open/floor/plasteel/yellow/side{dir = 5},/area/atmos) +"cgz" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; external_pressure_bound = 0; frequency = 1441; id_tag = "co2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/co2,/area/atmos) +"cgA" = (/turf/open/floor/engine/co2,/area/atmos) +"cgB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgD" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgE" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgF" = (/obj/machinery/door/airlock/atmos{name = "Atmospherics Maintenance"; req_access_txt = "12;24"},/turf/open/floor/plating,/area/maintenance/asmaint) +"cgG" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"cgH" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cgI" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "xenobio1"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"cgJ" = (/obj/structure/table/reinforced,/obj/machinery/button/door{id = "xenobio1"; name = "Containment Blast Doors"; pixel_x = 0; pixel_y = 4; req_access_txt = "55"},/obj/structure/window/reinforced{dir = 1},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/light,/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/toxins/xenobiology) +"cgK" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cgL" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/machinery/door/poddoor/preopen{id = "xenobio6"; name = "containment blast door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/engine,/area/toxins/xenobiology) +"cgM" = (/obj/machinery/camera{c_tag = "Testing Chamber"; dir = 1; network = list("Test","RD"); pixel_x = 0},/obj/machinery/light,/turf/open/floor/engine,/area/toxins/misc_lab) +"cgN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/stripes/corner{dir = 4},/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cgO" = (/obj/machinery/camera{c_tag = "Testing Lab South"; dir = 8; network = list("SS13","RD"); pixel_y = -22},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cgP" = (/obj/structure/closet/crate,/obj/item/target,/obj/item/target,/obj/item/target,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cgQ" = (/obj/structure/closet/crate,/obj/item/target/syndicate,/obj/item/target/alien,/obj/item/target/clown,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cgR" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/port) +"cgS" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cgT" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/solar{id = "portsolar"; name = "Port Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/port) +"cgU" = (/turf/closed/wall/r_wall,/area/maintenance/aft) +"cgV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) +"cgW" = (/obj/structure/table,/obj/machinery/microwave,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cgX" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cgY" = (/obj/structure/reagent_dispensers/keg/mead,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cgZ" = (/obj/structure/table,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/shotglass,/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cha" = (/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"chb" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"chc" = (/obj/structure/chair/stool/bar,/turf/open/floor/wood,/area/maintenance/bar) +"chd" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/maintenance/bar) +"che" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/bar) +"chf" = (/obj/machinery/message_server,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"chg" = (/obj/machinery/telecomms/broadcaster/preset_left,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"chh" = (/obj/machinery/telecomms/receiver/preset_left,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"chi" = (/obj/structure/table,/obj/item/device/multitool,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/tcommsat/computer) +"chj" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"chk" = (/obj/machinery/light_switch{pixel_x = 27},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"chl" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/tcommsat/computer) +"chm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 9},/area/hallway/primary/aft) +"chn" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/hallway/primary/aft) +"cho" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/hallway/primary/aft) +"chp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"chq" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/hallway/primary/aft) +"chr" = (/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 5},/area/hallway/primary/aft) +"chs" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/engine/break_room) +"cht" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"chu" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"chv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"chw" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"chx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/break_room) +"chy" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel,/area/engine/break_room) +"chz" = (/obj/machinery/vending/snack/random,/turf/open/floor/plasteel,/area/engine/break_room) +"chA" = (/turf/closed/wall/r_wall,/area/engine/engineering) +"chB" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel,/area/atmos) +"chC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 5},/turf/open/floor/plasteel,/area/atmos) +"chD" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 1},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"chE" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{dir = 1},/turf/open/floor/plasteel,/area/atmos) +"chF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 9},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/atmos) +"chG" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "N2 to Pure"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"chH" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "co2_in"; name = "Carbon Dioxide Supply Control"; output_tag = "co2_out"; sensors = list("co2_sensor" = "Tank")},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/atmos) +"chI" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "co2_sensor"},/turf/open/floor/engine/co2,/area/atmos) +"chJ" = (/obj/machinery/portable_atmospherics/canister/carbon_dioxide,/turf/open/floor/engine/co2,/area/atmos) +"chK" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/engine/co2,/area/atmos) +"chL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/asmaint) +"chM" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"chN" = (/obj/structure/sign/nosmoking_2{pixel_x = 0; pixel_y = 28},/turf/open/floor/plating,/area/maintenance/asmaint) +"chO" = (/obj/structure/chair/stool,/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"chP" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) +"chQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"chR" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"chS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint) +"chT" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"chU" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"chV" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"chW" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"chX" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"chY" = (/obj/structure/rack,/obj/item/clothing/shoes/winterboots,/obj/item/clothing/suit/hooded/wintercoat,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"chZ" = (/obj/machinery/portable_atmospherics/pump,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) +"cia" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cib" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/floorgrime,/area/toxins/misc_lab) +"cic" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/asmaint2) +"cid" = (/obj/structure/table,/obj/effect/decal/cleanable/cobweb,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cie" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cif" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cig" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/closet/crate,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"cih" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/aft) +"cii" = (/obj/structure/table,/obj/item/device/radio/intercom{freerange = 0; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/item/weapon/kitchen/rollingpin,/obj/item/weapon/reagent_containers/food/condiment/sugar,/obj/item/weapon/reagent_containers/food/condiment/enzyme,/obj/item/weapon/reagent_containers/glass/beaker,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cij" = (/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cik" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cil" = (/obj/structure/table,/obj/machinery/power/apc{auto_name = 1; dir = 8; name = "Maintenance Bar APC"; pixel_x = -25; pixel_y = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass,/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cim" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cin" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cio" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cip" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/chair/stool/bar,/turf/open/floor/wood,/area/maintenance/bar) +"ciq" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/wood,/area/maintenance/bar) +"cir" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/wood,/area/maintenance/bar) +"cis" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/maintenance/bar) +"cit" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/door/airlock/maintenance{name = "Maintenance Bar"},/turf/open/floor/wood,/area/maintenance/bar) +"ciu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/bar) +"civ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating,/area/maintenance/aft) +"ciw" = (/obj/machinery/telecomms/server/presets/supply,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cix" = (/obj/machinery/telecomms/bus/preset_two,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ciy" = (/obj/machinery/telecomms/processor/preset_one,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ciz" = (/obj/machinery/telecomms/server/presets/medical,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"ciA" = (/obj/machinery/computer/telecomms/monitor{network = "tcommsat"},/turf/open/floor/plasteel/yellow/side{dir = 8},/area/tcommsat/computer) +"ciB" = (/obj/structure/chair/office/dark{dir = 8},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plasteel,/area/tcommsat/computer) +"ciC" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/tcommsat/computer) +"ciD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/tcommsat/computer) +"ciE" = (/obj/machinery/door/airlock/engineering{name = "Telecommunications"; req_access_txt = "61"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/tcommsat/computer) +"ciF" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 8},/area/hallway/primary/aft) +"ciG" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"ciH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"ciI" = (/obj/machinery/navbeacon{codes_txt = "patrol;next_patrol=AIE"; location = "AftH"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"ciJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plasteel,/area/hallway/primary/aft) +"ciK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/hallway/primary/aft) +"ciL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_engineering{name = "Engineering"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"ciM" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"ciN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"ciO" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel,/area/engine/break_room) +"ciP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"ciQ" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"ciR" = (/obj/machinery/vending/cigarette{pixel_x = 0; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/break_room) +"ciS" = (/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/turf/open/floor/plasteel,/area/atmos) +"ciT" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel,/area/atmos) +"ciU" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/meter,/turf/open/floor/plasteel,/area/atmos) +"ciV" = (/obj/machinery/atmospherics/pipe/manifold/cyan/visible,/turf/open/floor/plasteel,/area/atmos) +"ciW" = (/obj/machinery/atmospherics/components/trinary/mixer{dir = 4; node1_concentration = 0.8; node2_concentration = 0.2; on = 1; pixel_x = 0; pixel_y = 0; target_pressure = 4500},/turf/open/floor/plasteel,/area/atmos) +"ciX" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 4},/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "O2 to Pure"; on = 0},/turf/open/floor/plasteel,/area/atmos) +"ciY" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 1; filter_type = "co2"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"ciZ" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/atmos) +"cja" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8; frequency = 1441; id = "co2_in"; pixel_y = 1},/turf/open/floor/engine/co2,/area/atmos) +"cjb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/asmaint) +"cjc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint) +"cjd" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cje" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"cjf" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cjg" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) +"cjh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cji" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/asmaint) +"cjj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/mob/living/simple_animal/mouse,/turf/open/floor/plating,/area/maintenance/asmaint) +"cjk" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cjl" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"cjm" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cjn" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; external_pressure_bound = 140; on = 1; pressure_checks = 0},/obj/machinery/camera{c_tag = "Xenobiology Kill Room"; dir = 4; network = list("SS13","RD")},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"cjo" = (/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"cjp" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; external_pressure_bound = 120; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"cjq" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/biohazard,/turf/open/floor/plating,/area/toxins/xenobiology) +"cjr" = (/obj/machinery/atmospherics/components/unary/thermomachine/freezer{target_temperature = 80; dir = 2; on = 1},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"cjs" = (/obj/structure/closet/emcloset,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cjt" = (/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cju" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cjv" = (/obj/machinery/portable_atmospherics/scrubber,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) +"cjw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"cjx" = (/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cjy" = (/obj/structure/table,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cjz" = (/obj/machinery/power/apc{dir = 8; name = "Engineering Maintenance APC"; pixel_x = -25; pixel_y = 1},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cjA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cjB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/aft) +"cjC" = (/obj/structure/table,/obj/machinery/airalarm{dir = 4; locked = 0; pixel_x = -23; pixel_y = 0},/obj/item/weapon/storage/box/donkpockets,/obj/item/weapon/kitchen/knife,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cjD" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cjE" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/structure/table,/obj/item/wallframe/camera,/obj/item/wallframe/camera,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"cjF" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/bar) +"cjG" = (/obj/structure/table,/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/chem_dispenser/drinks{name = "dusty old soda dispenser"},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cjH" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cjI" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cjJ" = (/obj/structure/table,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/filled/cola,/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cjK" = (/obj/structure/chair/stool/bar,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) +"cjL" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) +"cjM" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/wood{icon_state = "wood-broken5"},/area/maintenance/bar) +"cjN" = (/obj/structure/disposalpipe/junction{icon_state = "pipe-j1"; dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/wood,/area/maintenance/bar) +"cjO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/bar) +"cjP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/disposalpipe/junction{icon_state = "pipe-j2"; dir = 1},/turf/open/floor/plating,/area/maintenance/aft) +"cjQ" = (/obj/machinery/telecomms/server/presets/service,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cjR" = (/obj/machinery/telecomms/processor/preset_two,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cjS" = (/obj/structure/sign/nosmoking_2{pixel_y = -32},/obj/machinery/light,/turf/open/floor/bluegrid{name = "Mainframe Base"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cjT" = (/obj/machinery/telecomms/bus/preset_one,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cjU" = (/obj/machinery/telecomms/server/presets/science,/turf/open/floor/plasteel/black{name = "Mainframe Floor"; initial_gas_mix = "n2=100;TEMP=80"},/area/tcommsat/server) +"cjV" = (/obj/structure/window/reinforced/fulltile,/obj/structure/grille,/obj/structure/cable,/turf/open/floor/plating,/area/tcommsat/computer) +"cjW" = (/obj/structure/table,/obj/item/device/radio/off,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/tcommsat/computer) +"cjX" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cjY" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/light,/obj/structure/filingcabinet/chestdrawer,/turf/open/floor/plasteel,/area/tcommsat/computer) +"cjZ" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = -2; pixel_y = -1},/turf/open/floor/plasteel,/area/tcommsat/computer) +"cka" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/yellow/side{dir = 10},/area/hallway/primary/aft) +"ckb" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) +"ckc" = (/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) +"ckd" = (/obj/machinery/light,/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) +"cke" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/yellow/side,/area/hallway/primary/aft) +"ckf" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/yellow/side{dir = 6},/area/hallway/primary/aft) +"ckg" = (/obj/structure/grille,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/break_room) +"ckh" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/engine/break_room) +"cki" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"ckj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"ckk" = (/obj/machinery/camera{c_tag = "Engineering Foyer"; dir = 1},/obj/structure/noticeboard{dir = 1; pixel_y = -27},/turf/open/floor/plasteel,/area/engine/break_room) +"ckl" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/break_room) +"ckm" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel,/area/engine/break_room) +"ckn" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/closet/firecloset,/turf/open/floor/plasteel,/area/engine/break_room) +"cko" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/engineering) +"ckp" = (/obj/machinery/camera{c_tag = "Atmospherics South West"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/atmos) +"ckq" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/floor/plasteel,/area/atmos) +"ckr" = (/obj/machinery/atmospherics/components/binary/valve/digital{name = "Waste Release"},/turf/open/floor/plasteel,/area/atmos) +"cks" = (/obj/machinery/light{dir = 4},/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 6},/turf/open/floor/plasteel,/area/atmos) +"ckt" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/cyan/visible{dir = 9},/turf/open/floor/plating,/area/atmos) +"cku" = (/obj/machinery/power/apc{dir = 2; name = "Incinerator APC"; pixel_x = 0; pixel_y = -24},/obj/structure/cable,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/floor/plating,/area/maintenance/incinerator) +"ckv" = (/obj/structure/sign/fire{pixel_x = 0; pixel_y = -32},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"ckw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/maintenance/asmaint) +"ckx" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cky" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"ckz" = (/obj/structure/sign/biohazard,/turf/closed/wall,/area/maintenance/asmaint) +"ckA" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/asmaint) +"ckB" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/maintenance/asmaint) +"ckC" = (/obj/structure/disposalpipe/segment,/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/asmaint) +"ckD" = (/obj/structure/disposalpipe/segment,/obj/structure/closet/l3closet,/turf/open/floor/plating,/area/maintenance/asmaint) +"ckE" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 5},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"ckF" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"ckG" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/manifold/general/visible,/turf/open/floor/bluegrid{name = "Killroom Floor"; initial_gas_mix = "n2=500;TEMP=80"},/area/toxins/xenobiology) +"ckH" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/research{name = "Kill Chamber"; req_access_txt = "55"},/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plating,/area/toxins/xenobiology) +"ckI" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"ckJ" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 4},/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"ckK" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 9},/obj/structure/table,/obj/item/weapon/folder/white,/obj/item/weapon/pen,/turf/open/floor/plasteel/white,/area/toxins/xenobiology) +"ckL" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckM" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/cyan/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckN" = (/obj/machinery/atmospherics/pipe/simple/cyan/hidden{icon_state = "intact"; dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckO" = (/obj/machinery/portable_atmospherics/canister,/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/toxins/misc_lab) +"ckP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/toxins/misc_lab) +"ckQ" = (/obj/item/stack/sheet/cardboard,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckR" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckS" = (/obj/machinery/light/small,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckT" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/maintenance/asmaint2) +"ckU" = (/obj/machinery/portable_atmospherics/canister/air,/turf/open/floor/plating,/area/maintenance/aft) +"ckV" = (/obj/machinery/processor,/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"ckW" = (/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"ckX" = (/obj/structure/closet/secure_closet/personal/cabinet,/obj/item/clothing/glasses/sunglasses/reagent,/obj/item/ammo_box/foambox,/obj/item/weapon/gun/ballistic/shotgun/toy/unrestricted,/obj/item/weapon/lighter,/obj/item/clothing/mask/cigarette/cigar/cohiba,/obj/item/weapon/storage/box/drinkingglasses,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/bar) +"ckY" = (/obj/structure/table,/obj/machinery/chem_dispenser/drinks/beer{name = "dusty old booze dispenser"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"ckZ" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"cla" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"clb" = (/obj/structure/table,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/bar,/area/maintenance/bar) +"clc" = (/obj/structure/chair/stool/bar,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) +"cld" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) +"cle" = (/obj/machinery/vending/cigarette,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/wood,/area/maintenance/bar) +"clf" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/wood,/area/maintenance/bar) +"clg" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"clh" = (/turf/closed/wall/r_wall,/area/engine/chiefs_office) +"cli" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"clj" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/disposalpipe/segment,/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/engine/chiefs_office) +"clk" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/machinery/door/airlock/glass_command{name = "Chief Engineer"; req_access_txt = "56"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/chiefs_office) +"cll" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side{dir = 10},/area/engine/break_room) +"clm" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side,/area/engine/break_room) +"cln" = (/obj/machinery/light,/obj/structure/closet/firecloset,/turf/open/floor/plasteel/yellow/side{dir = 6},/area/engine/break_room) +"clo" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 2; filter_type = "n2"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"clp" = (/turf/closed/wall,/area/maintenance/incinerator) +"clq" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/closed/wall,/area/maintenance/incinerator) +"clr" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/closed/wall,/area/maintenance/incinerator) +"cls" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/door/airlock/atmos{name = "Turbine Access"; req_access_txt = "32"},/turf/open/floor/plating,/area/maintenance/incinerator) +"clt" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/item/toy/minimeteor,/obj/item/weapon/poster/contraband,/turf/open/floor/plating,/area/maintenance/asmaint) +"clu" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/obj/item/roller,/turf/open/floor/plating,/area/maintenance/asmaint) +"clv" = (/obj/structure/disposalpipe/segment,/obj/structure/rack{dir = 1},/obj/effect/spawner/lootdrop/maintenance,/obj/item/weapon/reagent_containers/food/snacks/donkpocket,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"clw" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/weapon/c_tube,/turf/open/floor/plating,/area/maintenance/asmaint) +"clx" = (/obj/structure/mopbucket,/obj/item/weapon/caution,/turf/open/floor/plating,/area/maintenance/asmaint) +"cly" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/toxins/xenobiology) +"clz" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/toxins/xenobiology) +"clA" = (/obj/machinery/door/airlock/maintenance{name = "Air Supply Maintenance"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"clB" = (/obj/machinery/door/airlock/maintenance{name = "Testing Lab Maintenance"; req_access_txt = "47"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/toxins/misc_lab) +"clC" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/toxins/misc_lab) +"clD" = (/obj/structure/closet/cardboard,/turf/open/floor/plating,/area/maintenance/asmaint2) +"clE" = (/obj/machinery/door/airlock/maintenance{name = "Firefighting equipment"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"clF" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/maintenance/portsolar) +"clG" = (/turf/closed/wall/r_wall,/area/maintenance/portsolar) +"clH" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"clI" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall,/area/maintenance/aft) +"clJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"clK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/aft) +"clL" = (/obj/structure/closet/wardrobe/black,/obj/effect/decal/cleanable/cobweb,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/aft) +"clM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"clN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"clO" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"clP" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/aft) +"clQ" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/aft) +"clR" = (/obj/machinery/suit_storage_unit/ce,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/white,/area/engine/chiefs_office) +"clS" = (/obj/machinery/holopad,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"clT" = (/obj/machinery/light{dir = 1},/obj/machinery/keycard_auth{pixel_x = 0; pixel_y = 24},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"clU" = (/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"clV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"clW" = (/obj/machinery/power/apc{cell_type = 5000; dir = 4; name = "CE Office APC"; pixel_x = 24; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"clX" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall,/area/engine/engineering) +"clY" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 2; name = "Engine Room"; req_access_txt = "10"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"clZ" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/turf/closed/wall,/area/engine/engineering) +"cma" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plasteel,/area/atmos) +"cmb" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel,/area/atmos) +"cmc" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/floor/plasteel,/area/atmos) +"cmd" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel,/area/atmos) +"cme" = (/obj/machinery/atmospherics/components/trinary/filter{dir = 4; filter_type = "o2"; on = 1},/turf/open/floor/plasteel,/area/atmos) +"cmf" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4},/turf/open/floor/plasteel,/area/atmos) +"cmg" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 4; initialize_directions = 12},/turf/open/floor/plasteel,/area/atmos) +"cmh" = (/obj/machinery/atmospherics/pipe/simple/green/visible{dir = 9},/turf/open/floor/plasteel,/area/atmos) +"cmi" = (/obj/effect/decal/cleanable/cobweb,/obj/structure/reagent_dispensers/watertank,/obj/item/weapon/extinguisher,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cmj" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "atmospherics mix pump"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cmk" = (/obj/machinery/light_switch{pixel_x = 0; pixel_y = 26},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cml" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/maintenance/incinerator) +"cmm" = (/obj/machinery/disposal/bin,/obj/structure/sign/deathsposal{pixel_x = 0; pixel_y = 32},/obj/structure/disposalpipe/trunk,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/incinerator) +"cmn" = (/obj/machinery/power/smes{capacity = 9e+006; charge = 10000},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/decal/cleanable/cobweb{icon_state = "cobweb2"},/turf/open/floor/plating,/area/maintenance/incinerator) +"cmo" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint) +"cmp" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint) +"cmq" = (/obj/structure/disposalpipe/segment,/obj/structure/grille/broken,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cmr" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cms" = (/obj/structure/disposalpipe/segment,/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cmt" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cmu" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/barricade/wooden,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cmv" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmw" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating/airless,/area/space/nearstation) +"cmx" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmz" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmA" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmB" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/maintenance/asmaint2) +"cmC" = (/obj/machinery/space_heater,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmD" = (/obj/structure/sign/securearea{pixel_y = 32},/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmF" = (/obj/structure/rack{dir = 1},/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmG" = (/obj/machinery/door/airlock/maintenance{name = "Research Delivery access"; req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmH" = (/obj/machinery/light/small{dir = 1},/obj/structure/chair/stool,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmI" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cmJ" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cmK" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/portsolar) +"cmL" = (/obj/machinery/power/terminal{dir = 4},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/maintenance/portsolar) +"cmM" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/portsolar) +"cmN" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/portsolar) +"cmO" = (/obj/machinery/camera{c_tag = "Aft Port Solar Access"; dir = 4},/obj/machinery/light/small{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cmP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/aft) +"cmQ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) +"cmR" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/aft) +"cmS" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"cmT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/maintenance/aft) +"cmU" = (/obj/machinery/computer/atmos_alert,/obj/machinery/requests_console{announcementConsole = 1; department = "Chief Engineer's Desk"; departmentType = 3; name = "Chief Engineer RC"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cmV" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/lighter,/obj/item/clothing/glasses/meson{pixel_y = 4},/obj/item/weapon/stamp/ce,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cmW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cmX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cmY" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"cmZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/closet/firecloset,/turf/open/floor/plasteel,/area/engine/engineering) +"cna" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cnb" = (/obj/machinery/camera{c_tag = "Engineering Access"},/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) +"cnc" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/red/side{dir = 10},/area/atmos) +"cnd" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "n2_in"; name = "Nitrogen Supply Control"; output_tag = "n2_out"; sensors = list("n2_sensor" = "Tank")},/turf/open/floor/plasteel/red/side,/area/atmos) +"cne" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "N2 Outlet Pump"; on = 1},/turf/open/floor/plasteel/red/side{dir = 6},/area/atmos) +"cnf" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plasteel,/area/atmos) +"cng" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/open/floor/plasteel/blue/side{dir = 10},/area/atmos) +"cnh" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "o2_in"; name = "Oxygen Supply Control"; output_tag = "o2_out"; sensors = list("o2_sensor" = "Tank")},/turf/open/floor/plasteel/blue/side{dir = 0},/area/atmos) +"cni" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "O2 Outlet Pump"; on = 1},/turf/open/floor/plasteel/blue/side{dir = 6},/area/atmos) +"cnj" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/floor/plasteel/arrival{dir = 10},/area/atmos) +"cnk" = (/obj/machinery/computer/atmos_control/tank{frequency = 1441; input_tag = "air_in"; name = "Mixed Air Supply Control"; output_tag = "air_out"; sensors = list("air_sensor" = "Tank")},/turf/open/floor/plasteel/arrival,/area/atmos) +"cnl" = (/obj/machinery/camera{c_tag = "Atmospherics South East"; dir = 1},/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Air Outlet Pump"; on = 1},/turf/open/floor/plasteel/arrival{dir = 6},/area/atmos) +"cnm" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Atmospherics External Airlock"; req_access_txt = "24"},/turf/open/floor/plating,/area/atmos) +"cnn" = (/turf/open/floor/plating,/area/atmos) +"cno" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Atmospherics External Airlock"; req_access_txt = "24"},/turf/open/floor/plating,/area/atmos) +"cnp" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 6},/turf/open/space,/area/space/nearstation) +"cnq" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/turf/closed/wall,/area/maintenance/incinerator) +"cnr" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{dir = 4},/obj/structure/reagent_dispensers/fueltank,/obj/item/weapon/storage/toolbox/emergency,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cns" = (/obj/machinery/atmospherics/components/binary/pump{dir = 8; name = "Mix to MiniSat"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnt" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnu" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnv" = (/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnw" = (/obj/structure/disposalpipe/segment,/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cnx" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/airalarm{desc = "This particular atmos control unit appears to have no access restrictions."; dir = 8; icon_state = "alarm0"; locked = 0; name = "all-access air alarm"; pixel_x = 24; req_access = "0"; req_one_access = "0"},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cny" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnz" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"cnC" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnE" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnF" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnG" = (/obj/structure/reagent_dispensers/watertank,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnH" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnI" = (/obj/structure/rack{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/spawner/lootdrop/maintenance,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnJ" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnK" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnM" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnN" = (/obj/structure/closet/firecloset,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cnO" = (/obj/machinery/power/tracker,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/port) +"cnP" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cnQ" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cnR" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cnS" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cnT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cnU" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cnV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cnW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cnX" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cnY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/portsolar) +"cnZ" = (/obj/machinery/door/airlock/engineering{name = "Aft Port Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plating,/area/maintenance/portsolar) +"coa" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/aft) +"cob" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/aft) +"coc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cod" = (/obj/structure/disposalpipe/sortjunction{dir = 8; icon_state = "pipe-j2s"; sortType = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"coe" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cof" = (/obj/machinery/shieldgen,/turf/open/floor/plating,/area/engine/engineering) +"cog" = (/turf/open/floor/plating,/area/engine/engineering) +"coh" = (/obj/machinery/power/apc{cell_type = 15000; dir = 1; name = "Engineering APC"; pixel_x = 0; pixel_y = 25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"coi" = (/obj/machinery/light{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"coj" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/portable_atmospherics/pump,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"cok" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/item/clothing/gloves/color/yellow,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"col" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/table,/obj/item/weapon/tank/internals/emergency_oxygen/engi,/obj/item/clothing/mask/breath,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"com" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"con" = (/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/yellow/side,/area/engine/engineering) +"coo" = (/turf/closed/wall,/area/engine/engineering) +"cop" = (/obj/machinery/computer/station_alert,/obj/item/device/radio/intercom{broadcasting = 0; name = "Station Intercom (General)"; pixel_y = 20},/turf/open/floor/plasteel,/area/engine/engineering) +"coq" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/modular_computer/console/preset/engineering,/turf/open/floor/plasteel,/area/engine/engineering) +"cor" = (/obj/machinery/computer/station_alert,/obj/machinery/button/door{desc = "A remote control-switch for the engineering security doors."; id = "Engineering"; name = "Engineering Lockdown"; pixel_x = -24; pixel_y = -10; req_access_txt = "10"},/obj/machinery/button/door{desc = "A remote control-switch for secure storage."; id = "Secure Storage"; name = "Engineering Secure Storage"; pixel_x = -24; pixel_y = 0; req_access_txt = "11"},/obj/machinery/button/door{id = "atmos"; name = "Atmospherics Lockdown"; pixel_x = -24; pixel_y = 10; req_access_txt = "24"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cos" = (/obj/structure/chair/office/light{dir = 4},/obj/effect/landmark/start{name = "Chief Engineer"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cot" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/yellow,/obj/item/weapon/paper/monitorkey,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cou" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cov" = (/obj/structure/closet/secure_closet/engineering_chief{req_access_txt = "0"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cow" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"cox" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/closet/firecloset,/turf/open/floor/plasteel,/area/engine/engineering) +"coy" = (/obj/effect/landmark{name = "lightsout"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"coz" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) +"coA" = (/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/closed/wall/r_wall,/area/atmos) +"coB" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"coC" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/floor/plating,/area/atmos) +"coD" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/green/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"coE" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/atmos) +"coF" = (/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/closed/wall/r_wall,/area/atmos) +"coG" = (/obj/machinery/atmospherics/components/unary/tank/toxins{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coH" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "plasma tank pump"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coI" = (/obj/machinery/atmospherics/pipe/manifold4w/general{level = 2},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coJ" = (/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "Mix to Incinerator"; on = 0},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coK" = (/obj/item/weapon/cigbutt,/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 10},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coL" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coM" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{name = "output gas connector port"},/obj/machinery/portable_atmospherics/canister,/obj/structure/sign/nosmoking_2{pixel_x = 28},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"coN" = (/obj/structure/table,/obj/item/weapon/cartridge/medical,/turf/open/floor/plating,/area/maintenance/asmaint) +"coO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/closet/firecloset/full,/turf/open/floor/plating,/area/maintenance/asmaint) +"coP" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/item/latexballon,/turf/open/floor/plating,/area/maintenance/asmaint) +"coQ" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating,/area/maintenance/aft) +"coR" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/maintenance/aft) +"coS" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"coT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"coU" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"coV" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"coW" = (/obj/structure/rack,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"coX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"coY" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint2) +"coZ" = (/obj/structure/grille,/obj/structure/window/reinforced/tinted/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 6},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpa" = (/obj/machinery/power/apc{dir = 8; name = "Science Maintenance APC"; pixel_x = -25},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/camera{c_tag = "Aft Starboard Solar Access"; dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpb" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpc" = (/obj/structure/closet/emcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpd" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cpe" = (/obj/machinery/power/solar_control{id = "portsolar"; name = "Aft Port Solar Control"; track = 0},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/portsolar) +"cpf" = (/turf/open/floor/plating,/area/maintenance/portsolar) +"cpg" = (/obj/machinery/power/apc{dir = 4; name = "Aft Port Solar APC"; pixel_x = 23; pixel_y = 2},/obj/machinery/camera{c_tag = "Aft Port Solar Control"; dir = 1},/obj/structure/cable,/turf/open/floor/plating,/area/maintenance/portsolar) +"cph" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"cpi" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cpj" = (/obj/structure/closet/crate,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/rods{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/stack/sheet/mineral/plasma{amount = 30},/turf/open/floor/plating,/area/engine/engineering) +"cpk" = (/obj/machinery/portable_atmospherics/canister/freon,/turf/open/floor/plating,/area/engine/engineering) +"cpl" = (/obj/machinery/door/poddoor{id = "Secure Storage"; name = "secure storage"},/turf/open/floor/plating,/area/engine/engineering) +"cpm" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel,/area/engine/engineering) +"cpn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"cpo" = (/turf/open/floor/plasteel,/area/engine/engineering) +"cpp" = (/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel,/area/engine/engineering) +"cpq" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cpr" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"cps" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/machinery/camera{c_tag = "Engineering Power Storage"},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cpt" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/chair/office/dark{dir = 1},/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) +"cpu" = (/obj/machinery/camera{c_tag = "Chief Engineer's Office"; dir = 4; network = list("SS13")},/obj/machinery/airalarm{dir = 4; icon_state = "alarm0"; pixel_x = -22},/obj/machinery/computer/card/minor/ce,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cpv" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/storage/fancy/cigarettes,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cpw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cpx" = (/obj/item/device/radio/intercom{dir = 4; name = "Station Intercom (General)"; pixel_x = 27},/obj/structure/filingcabinet/chestdrawer,/mob/living/simple_animal/parrot/Poly,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cpy" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engineering) +"cpz" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engineering) +"cpA" = (/obj/machinery/door/poddoor/preopen{id = "Engineering"; name = "engineering security door"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engineering) +"cpB" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/green/visible,/turf/open/space,/area/space/nearstation) +"cpC" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "waste_out"},/turf/open/floor/plating/airless,/area/atmos) +"cpD" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/cyan/visible,/turf/open/space,/area/space/nearstation) +"cpE" = (/obj/structure/sign/nosmoking_2{pixel_x = -28},/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4; name = "input gas connector port"},/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpF" = (/obj/machinery/atmospherics/components/binary/pump{dir = 4; name = "input port pump"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpG" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpH" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpI" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpJ" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; name = "Incinerator to Output"; on = 0},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cpK" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/incinerator) +"cpL" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/closed/wall,/area/maintenance/asmaint) +"cpM" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/closed/wall,/area/maintenance/asmaint) +"cpN" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/shard,/turf/open/floor/plating,/area/maintenance/asmaint) +"cpO" = (/obj/structure/disposalpipe/segment,/obj/item/weapon/cigbutt/roach,/turf/open/floor/plating,/area/maintenance/asmaint) +"cpP" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/closed/wall,/area/maintenance/asmaint) +"cpQ" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cpR" = (/obj/structure/chair,/obj/item/weapon/storage/fancy/cigarettes,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cpS" = (/obj/structure/chair,/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cpT" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/maintenance/aft) +"cpU" = (/obj/structure/closet,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpV" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpW" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpX" = (/obj/structure/rack,/obj/effect/decal/cleanable/cobweb/cobweb2,/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cpY" = (/turf/closed/wall/r_wall,/area/maintenance/starboardsolar) +"cpZ" = (/obj/machinery/door/airlock/engineering{name = "Aft Starboard Solar Access"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cqa" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/starboardsolar) +"cqb" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"cqc" = (/turf/closed/wall/r_wall,/area/engine/engine_smes) +"cqd" = (/obj/effect/spawner/lootdrop/maintenance,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"cqe" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cqf" = (/obj/machinery/portable_atmospherics/canister/toxins,/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "Engineering Secure Storage"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/engine/engineering) +"cqg" = (/obj/effect/landmark{name = "blobstart"},/turf/open/floor/plating,/area/engine/engineering) +"cqh" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/engine/engineering) +"cqi" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cqj" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cqk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel,/area/engine/engineering) +"cql" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) +"cqm" = (/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 4},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cqn" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cqo" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cqp" = (/obj/item/weapon/cartridge/engineering{pixel_x = 4; pixel_y = 5},/obj/item/weapon/cartridge/engineering{pixel_x = -3; pixel_y = 2},/obj/item/weapon/cartridge/engineering{pixel_x = 3},/obj/structure/table/reinforced,/obj/machinery/light_switch{pixel_x = 27},/obj/item/weapon/cartridge/atmos,/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"cqq" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/engine/engineering) +"cqr" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 1; name = "Engine Room"; req_access_txt = "10"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cqs" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter,/turf/closed/wall/r_wall,/area/atmos) +"cqt" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{name = "Mixed Air Tank In"},/turf/closed/wall/r_wall,/area/atmos) +"cqu" = (/obj/machinery/atmospherics/pipe/simple,/obj/structure/grille,/obj/machinery/meter{name = "Mixed Air Tank Out"},/turf/closed/wall/r_wall,/area/atmos) +"cqv" = (/obj/structure/grille,/obj/structure/disposalpipe/segment,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/incinerator) +"cqw" = (/obj/structure/chair/stool,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqx" = (/obj/machinery/atmospherics/components/binary/valve{name = "Mix to Space"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqy" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqz" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqA" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cqB" = (/obj/machinery/portable_atmospherics/canister,/obj/effect/decal/cleanable/cobweb,/turf/open/floor/plating,/area/maintenance/asmaint) +"cqC" = (/obj/machinery/door/airlock/maintenance{name = "Biohazard Disposals"; req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"cqD" = (/obj/structure/disposalpipe/segment,/turf/closed/wall,/area/maintenance/asmaint2) +"cqE" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cqF" = (/obj/structure/reagent_dispensers/fueltank,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cqG" = (/obj/machinery/power/apc{dir = 8; name = "Aft Starboard Solar APC"; pixel_x = -26; pixel_y = 3},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cqH" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cqI" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes,/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cqJ" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/maintenance/aft) +"cqK" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cqL" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cqM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cqN" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cqO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"cqP" = (/obj/machinery/field/generator,/turf/open/floor/plating,/area/engine/engineering) +"cqQ" = (/obj/machinery/power/emitter,/turf/open/floor/plating,/area/engine/engineering) +"cqR" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel,/area/engine/engineering) +"cqS" = (/obj/structure/table,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/apc,/obj/item/weapon/stock_parts/cell/high/plus,/obj/item/weapon/stock_parts/cell/high/plus,/turf/open/floor/plasteel,/area/engine/engineering) +"cqT" = (/obj/structure/table,/obj/item/weapon/book/manual/engineering_singularity_safety,/obj/item/clothing/gloves/color/yellow,/obj/item/clothing/gloves/color/yellow,/turf/open/floor/plasteel,/area/engine/engineering) +"cqU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cqV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cqW" = (/obj/structure/closet/crate{name = "solar pack crate"},/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/solar_assembly,/obj/item/weapon/circuitboard/computer/solar_control,/obj/item/weapon/electronics/tracker,/obj/item/weapon/paper/solar,/turf/open/floor/plasteel,/area/engine/engineering) +"cqX" = (/obj/structure/tank_dispenser,/turf/open/floor/plasteel,/area/engine/engineering) +"cqY" = (/obj/machinery/suit_storage_unit/engine,/turf/open/floor/plasteel,/area/engine/engineering) +"cqZ" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"cra" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"crb" = (/obj/machinery/door/airlock/glass_command{name = "Chief Engineer"; req_access_txt = "56"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plasteel/neutral{dir = 2},/area/engine/chiefs_office) +"crc" = (/obj/structure/grille,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/chiefs_office) +"crd" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/engine/chiefs_office) +"cre" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/engine/engineering) +"crf" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"crg" = (/obj/machinery/door/firedoor,/turf/open/floor/plasteel/yellow/side{dir = 5},/area/engine/engineering) +"crh" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "n2_in"},/turf/open/floor/engine/n2,/area/atmos) +"cri" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "n2_sensor"},/turf/open/floor/engine/n2,/area/atmos) +"crj" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 0; frequency = 1441; id_tag = "n2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/n2,/area/atmos) +"crk" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "o2_in"},/turf/open/floor/engine/o2,/area/atmos) +"crl" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "o2_sensor"},/turf/open/floor/engine/o2,/area/atmos) +"crm" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 0; frequency = 1441; id_tag = "o2_out"; initialize_directions = 1; internal_pressure_bound = 4000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/o2,/area/atmos) +"crn" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "air_in"},/turf/open/floor/engine/air,/area/atmos) +"cro" = (/obj/machinery/air_sensor{frequency = 1441; id_tag = "air_sensor"},/turf/open/floor/engine/air,/area/atmos) +"crp" = (/obj/machinery/atmospherics/components/unary/vent_pump/high_volume{dir = 1; external_pressure_bound = 0; frequency = 1441; icon_state = "vent_map"; id_tag = "air_out"; internal_pressure_bound = 2000; on = 1; pressure_checks = 2; pump_direction = 0},/turf/open/floor/engine/air,/area/atmos) +"crq" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -29},/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/turf/open/floor/plating,/area/maintenance/incinerator) +"crr" = (/obj/machinery/light/small,/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -31},/obj/machinery/computer/turbine_computer{id = "incineratorturbine"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"crs" = (/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 8},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"crt" = (/obj/machinery/computer/security/telescreen{desc = "Used for watching the turbine vent."; dir = 1; name = "turbine vent monitor"; network = list("Turbine"); pixel_x = 0; pixel_y = -29},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"cru" = (/obj/machinery/button/door{id = "auxincineratorvent"; name = "Auxiliary Vent Control"; pixel_x = 6; pixel_y = -24; req_access_txt = "32"},/obj/machinery/button/door{id = "turbinevent"; name = "Turbine Vent Control"; pixel_x = -6; pixel_y = -24; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{dir = 4},/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"crv" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/binary/valve{dir = 4; name = "Incinerator to Space"},/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"crw" = (/obj/machinery/doorButtons/airlock_controller{idExterior = "incinerator_airlock_exterior"; idSelf = "incinerator_access_control"; idInterior = "incinerator_airlock_interior"; name = "Incinerator Access Console"; pixel_x = 6; pixel_y = -26; req_access_txt = "12"},/obj/machinery/button/ignition{id = "Incinerator"; pixel_x = -6; pixel_y = -24},/obj/machinery/atmospherics/pipe/manifold/general/visible{dir = 4; initialize_directions = 11},/obj/machinery/meter,/turf/open/floor/plasteel/floorgrime,/area/maintenance/incinerator) +"crx" = (/obj/machinery/atmospherics/components/unary/portables_connector/visible{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"cry" = (/obj/machinery/meter,/obj/machinery/atmospherics/pipe/manifold/general/hidden{icon_state = "manifold"; dir = 1},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"crz" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/components/binary/pump{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"crA" = (/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/machinery/meter,/turf/open/floor/plating,/area/maintenance/asmaint) +"crB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint) +"crC" = (/obj/structure/disposalpipe/segment,/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/maintenance/asmaint) +"crD" = (/obj/machinery/door/airlock/external{name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/aft) +"crE" = (/obj/structure/rack,/obj/structure/disposalpipe/segment,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"crF" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 3; name = "3maintenance loot spawner"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"crG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) +"crH" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"crI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"crJ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plating,/area/maintenance/asmaint2) +"crK" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint2) +"crL" = (/obj/structure/chair/stool,/obj/machinery/camera{c_tag = "Aft Starboard Solar Control"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"crM" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"crN" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"crO" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/turf/open/floor/plating,/area/maintenance/aft) +"crP" = (/obj/structure/closet,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/aft) +"crQ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"crR" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 1},/area/engine/engine_smes) +"crS" = (/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) +"crT" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 4},/area/engine/engine_smes) +"crU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"crV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/closed/wall,/area/engine/engineering) +"crW" = (/obj/structure/grille,/obj/structure/window/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"crX" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/window/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"crY" = (/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_engineering{name = "Power Storage"; req_access_txt = "11"; req_one_access_txt = "0"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"crZ" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/engine/engineering) +"csa" = (/obj/structure/table,/obj/item/weapon/crowbar/large,/obj/item/weapon/storage/box/lights/mixed,/obj/item/clothing/glasses/meson,/obj/item/clothing/glasses/meson,/turf/open/floor/plasteel/yellow/side{dir = 9},/area/engine/engineering) +"csb" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/weapon/storage/belt/utility,/obj/item/weapon/wrench,/obj/item/weapon/weldingtool,/obj/item/clothing/head/welding{pixel_x = -3; pixel_y = 5},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"csc" = (/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) +"csd" = (/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/engine/engineering) +"cse" = (/obj/machinery/light{dir = 1},/obj/structure/table,/obj/item/weapon/book/manual/wiki/engineering_hacking{pixel_x = 3; pixel_y = 3},/obj/item/weapon/book/manual/wiki/engineering_construction,/obj/item/clothing/glasses/meson,/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"csf" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) +"csg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"csh" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/structure/closet/radiation,/turf/open/floor/plasteel/yellow/side{dir = 4},/area/engine/engineering) +"csi" = (/turf/open/floor/engine/n2,/area/atmos) +"csj" = (/obj/machinery/portable_atmospherics/canister/nitrogen,/turf/open/floor/engine/n2,/area/atmos) +"csk" = (/turf/open/floor/engine/o2,/area/atmos) +"csl" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/open/floor/engine/o2,/area/atmos) +"csm" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/turf/open/floor/engine/air,/area/atmos) +"csn" = (/obj/machinery/portable_atmospherics/canister/air,/obj/effect/landmark/event_spawn,/turf/open/floor/engine/air,/area/atmos) +"cso" = (/turf/open/floor/engine/air,/area/atmos) +"csp" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/incinerator) +"csq" = (/turf/closed/wall/r_wall,/area/maintenance/incinerator) +"csr" = (/obj/machinery/atmospherics/pipe/simple/general/visible{dir = 2},/turf/closed/wall/r_wall,/area/maintenance/incinerator) +"css" = (/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "incinerator_airlock_interior"; locked = 1; name = "Turbine Interior Airlock"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine,/area/maintenance/incinerator) +"cst" = (/obj/machinery/atmospherics/pipe/simple/general/visible,/turf/closed/wall/r_wall,/area/maintenance/incinerator) +"csu" = (/obj/machinery/atmospherics/pipe/simple/general/hidden{dir = 9},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"csv" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/maintenance/asmaint) +"csw" = (/obj/structure/disposalpipe/junction{dir = 2; icon_state = "pipe-y"},/turf/open/floor/plating,/area/maintenance/asmaint) +"csx" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"csy" = (/obj/structure/chair/stool{pixel_y = 8},/turf/open/floor/plating,/area/maintenance/asmaint) +"csz" = (/obj/effect/landmark{name = "xeno_spawn"; pixel_x = -1},/obj/structure/disposalpipe/segment,/turf/open/floor/plating{icon_state = "platingdmg3"},/area/maintenance/asmaint2) +"csA" = (/obj/structure/closet/toolcloset,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plating,/area/maintenance/asmaint2) +"csB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"csC" = (/obj/machinery/door/airlock/maintenance{req_access_txt = "12"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"csD" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint2) +"csE" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/closed/wall,/area/maintenance/asmaint2) +"csF" = (/obj/machinery/power/solar_control{id = "starboardsolar"; name = "Aft Starboard Solar Control"; track = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"csG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"csH" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"csI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"csJ" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) +"csK" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"csL" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) +"csM" = (/obj/machinery/navbeacon{codes_txt = "delivery;dir=2"; freq = 1400; location = "Engineering"},/obj/structure/plasticflaps{opacity = 1},/obj/effect/turf_decal/bot,/turf/open/floor/plasteel,/area/engine/engineering) +"csN" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/engine/engineering) +"csO" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = -32; pixel_y = 0},/obj/structure/disposalpipe/segment,/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/maintenance/aft) +"csP" = (/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/yellow/side{dir = 9},/area/engine/engineering) +"csQ" = (/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"csR" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/engine/engineering) +"csS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"csT" = (/obj/machinery/requests_console{announcementConsole = 0; department = "Engineering"; departmentType = 4; name = "Engineering RC"; pixel_y = 30},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"csU" = (/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/yellow/side{dir = 1},/area/engine/engineering) +"csV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) +"csW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"csX" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"csY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"csZ" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cta" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plasteel,/area/engine/engineering) +"ctb" = (/obj/structure/closet/secure_closet/engineering_personal,/turf/open/floor/plasteel/yellow/side{dir = 4},/area/engine/engineering) +"ctc" = (/obj/machinery/light/small,/turf/open/floor/engine/n2,/area/atmos) +"ctd" = (/obj/machinery/light/small,/turf/open/floor/engine/o2,/area/atmos) +"cte" = (/obj/machinery/light/small,/turf/open/floor/engine/air,/area/atmos) +"ctf" = (/obj/structure/lattice,/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "Incinerator Output Pump"; on = 1},/turf/open/space,/area/maintenance/incinerator) +"ctg" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2; on = 1},/obj/machinery/doorButtons/access_button{idDoor = "incinerator_airlock_exterior"; idSelf = "incinerator_access_control"; layer = 3.1; name = "Incinerator airlock control"; pixel_x = 8; pixel_y = -24},/obj/machinery/light/small{dir = 8},/obj/structure/sign/fire{pixel_x = -32; pixel_y = 0},/turf/open/floor/engine,/area/maintenance/incinerator) +"cth" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine,/area/maintenance/incinerator) +"cti" = (/obj/machinery/atmospherics/components/binary/pump{dir = 1; on = 1},/obj/structure/sign/fire{pixel_x = 32; pixel_y = 0},/obj/machinery/doorButtons/access_button{idSelf = "incinerator_access_control"; idDoor = "incinerator_airlock_interior"; name = "Incinerator airlock control"; pixel_x = -8; pixel_y = 24},/obj/machinery/light/small{dir = 4},/turf/open/floor/engine,/area/maintenance/incinerator) +"ctj" = (/obj/machinery/light/small,/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"ctk" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"ctl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint) +"ctm" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint) +"ctn" = (/obj/machinery/light/small,/obj/structure/table,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/obj/effect/spawner/lootdrop/maintenance,/obj/item/weapon/clipboard,/turf/open/floor/plating,/area/maintenance/asmaint) +"cto" = (/obj/structure/table,/obj/effect/spawner/lootdrop/maintenance{lootcount = 2; name = "2maintenance loot spawner"},/turf/open/floor/plating,/area/maintenance/asmaint) +"ctp" = (/obj/structure/disposalpipe/segment,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ctq" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/starboardsolar) +"ctr" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cts" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/port) +"ctt" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 2; on = 1},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"ctu" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 4},/area/engine/engine_smes) +"ctv" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/vault{dir = 8},/area/engine/engine_smes) +"ctw" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/power/smes/engineering,/turf/open/floor/plasteel/vault{dir = 1},/area/engine/engine_smes) +"ctx" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/camera{c_tag = "SMES Room"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"cty" = (/obj/machinery/door/window/southleft{base_state = "left"; dir = 2; icon_state = "left"; name = "Engineering Delivery"; req_access_txt = "10"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel,/area/engine/engineering) +"ctz" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/airlock/maintenance{name = "Engineering Maintenance"; req_access_txt = "10"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/engine/engineering) +"ctA" = (/obj/machinery/camera{c_tag = "Engineering West"; dir = 4; network = list("SS13")},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel/yellow/corner{dir = 1},/area/engine/engineering) +"ctB" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"ctC" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/open/floor/plasteel,/area/engine/engineering) +"ctD" = (/obj/machinery/holopad,/obj/effect/turf_decal/bot,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"ctE" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plasteel,/area/engine/engineering) +"ctF" = (/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) +"ctG" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"ctH" = (/obj/structure/closet/secure_closet/engineering_personal,/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/turf/open/floor/plasteel/yellow/side{dir = 4},/area/engine/engineering) +"ctI" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/space,/area/maintenance/incinerator) +"ctJ" = (/obj/machinery/door/airlock/glass{autoclose = 0; frequency = 1449; heat_proof = 1; icon_state = "door_locked"; id_tag = "incinerator_airlock_exterior"; locked = 1; name = "Turbine Exterior Airlock"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine,/area/maintenance/incinerator) +"ctK" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/closed/wall,/area/maintenance/asmaint) +"ctL" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "Waste Out"; on = 1},/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint) +"ctM" = (/obj/structure/disposalpipe/junction{dir = 4; icon_state = "pipe-j2"},/turf/open/floor/plating,/area/maintenance/asmaint) +"ctN" = (/obj/structure/closet/emcloset,/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint) +"ctO" = (/obj/structure/disposalpipe/segment,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"ctP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"ctQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"ctR" = (/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"ctS" = (/obj/machinery/door/window{name = "SMES Chamber"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"ctT" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/structure/window/reinforced,/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"ctU" = (/obj/structure/window/reinforced,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/black,/area/engine/engine_smes) +"ctV" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/engine_smes) +"ctW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engine_smes) +"ctX" = (/obj/machinery/door/firedoor,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/camera{c_tag = "SMES Access"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/engine_smes) +"ctY" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/loadingarea,/area/engine/engineering) +"ctZ" = (/obj/machinery/light/small{dir = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel,/area/engine/engineering) +"cua" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cub" = (/obj/machinery/firealarm{pixel_y = 24},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuc" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/sign/nosmoking_2{pixel_y = 32},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cud" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cue" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/airalarm{pixel_y = 23},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cug" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuh" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cui" = (/obj/structure/table,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen,/obj/item/weapon/storage/firstaid/fire,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuj" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuk" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 9},/turf/open/floor/plasteel,/area/engine/engineering) +"cul" = (/obj/structure/closet/radiation,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cum" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = 0},/turf/closed/wall/r_wall,/area/engine/engineering) +"cun" = (/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/engine/engineering) +"cuo" = (/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) +"cup" = (/obj/structure/table,/obj/item/device/flashlight{pixel_y = 5},/obj/item/clothing/ears/earmuffs{pixel_x = -5; pixel_y = 6},/obj/item/weapon/airlock_painter,/turf/open/floor/plasteel,/area/engine/engineering) +"cuq" = (/obj/machinery/camera{c_tag = "Engineering East"; dir = 8; network = list("SS13"); pixel_x = 0; pixel_y = 0},/obj/structure/closet/wardrobe/engineering_yellow,/turf/open/floor/plasteel/yellow/corner{dir = 4},/area/engine/engineering) +"cur" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1; frequency = 1441; id = "inc_in"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cus" = (/obj/machinery/igniter{icon_state = "igniter0"; id = "Incinerator"; luminosity = 2; on = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cut" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 0; initialize_directions = 1; internal_pressure_bound = 4000; on = 0; pressure_checks = 2; pump_direction = 0},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = -32},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cuu" = (/obj/machinery/door/poddoor{id = "auxincineratorvent"; name = "Auxiliary Incinerator Vent"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cuv" = (/obj/structure/grille,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/maintenance/asmaint) +"cuw" = (/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cux" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cuy" = (/obj/structure/table,/obj/item/weapon/weldingtool,/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cuz" = (/obj/machinery/space_heater,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cuA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Solar Maintenance"; req_access = null; req_access_txt = "10; 13"},/turf/open/floor/plating,/area/maintenance/starboardsolar) +"cuB" = (/obj/machinery/power/port_gen/pacman,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cuC" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cuD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cuE" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cuF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cuG" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 4; name = "SMES Room"; req_access_txt = "32"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engine_smes) +"cuH" = (/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cuI" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cuJ" = (/obj/machinery/door/airlock/engineering{cyclelinkeddir = 8; name = "SMES Room"; req_access_txt = "32"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/delivery,/turf/open/floor/plasteel{name = "floor"},/area/engine/engine_smes) +"cuK" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engineering) +"cuL" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cuM" = (/obj/structure/disposalpipe/segment,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cuN" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuO" = (/obj/machinery/door/firedoor,/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuQ" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuR" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/engineering_hacking{pixel_x = 3; pixel_y = 3},/obj/item/weapon/book/manual/wiki/engineering_construction,/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cuS" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuT" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cuU" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/color/black,/obj/item/weapon/extinguisher{pixel_x = 8},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9},/turf/open/floor/plasteel,/area/engine/engineering) +"cuV" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating,/area/engine/engineering) +"cuW" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) +"cuX" = (/obj/machinery/camera{c_tag = "Engineering Center"; dir = 2; pixel_x = 23},/obj/machinery/light{dir = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) +"cuY" = (/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating,/area/engine/engineering) +"cuZ" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/storage/belt/utility,/turf/open/floor/plasteel,/area/engine/engineering) +"cva" = (/obj/machinery/holopad,/turf/open/floor/plasteel,/area/engine/engineering) +"cvb" = (/obj/structure/table,/obj/item/weapon/book/manual/wiki/engineering_guide,/obj/item/weapon/book/manual/engineering_particle_accelerator{pixel_y = 6},/turf/open/floor/plasteel,/area/engine/engineering) +"cvc" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) +"cvd" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/vending/engivend,/turf/open/floor/plasteel,/area/engine/engineering) +"cve" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/obj/structure/closet/secure_closet/engineering_electrical,/turf/open/floor/plasteel,/area/engine/engineering) +"cvf" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/effect/turf_decal/stripes/line{dir = 5},/obj/structure/closet/secure_closet/engineering_welding,/turf/open/floor/plasteel,/area/engine/engineering) +"cvg" = (/obj/structure/closet/emcloset,/obj/machinery/light/small{dir = 1},/turf/open/floor/plating,/area/engine/engineering) +"cvh" = (/obj/structure/shuttle/engine/propulsion/burst{dir = 8},/turf/closed/wall/mineral/titanium,/area/shuttle/pod_4) +"cvi" = (/turf/closed/wall/mineral/titanium,/area/shuttle/pod_4) +"cvj" = (/obj/machinery/power/compressor{comp_id = "incineratorturbine"; dir = 1; luminosity = 2},/obj/structure/cable/yellow,/obj/structure/cable/yellow{d2 = 2; icon_state = "0-2"},/obj/machinery/camera{c_tag = "Turbine Chamber"; dir = 4; network = list("Turbine")},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cvk" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,/turf/open/space,/area/maintenance/asmaint) +"cvl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cvm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cvn" = (/turf/open/floor/plasteel,/area/engine/engine_smes) +"cvo" = (/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cvp" = (/obj/machinery/light,/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/engine/engine_smes) +"cvq" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cvr" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cvs" = (/obj/machinery/door/firedoor,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cvt" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"; pixel_x = -32; pixel_y = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cvu" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cvv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cvw" = (/obj/structure/table,/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/turf/open/floor/plasteel,/area/engine/engineering) +"cvx" = (/obj/structure/table,/obj/item/clothing/gloves/color/yellow,/obj/item/weapon/storage/toolbox/electrical{pixel_y = 5},/turf/open/floor/plasteel,/area/engine/engineering) +"cvy" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel,/area/engine/engineering) +"cvz" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cvA" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"cvB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/door/firedoor,/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/bot{dir = 2},/turf/open/floor/plasteel{dir = 2},/area/engine/engineering) +"cvC" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) +"cvD" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/engine/engineering) +"cvE" = (/obj/structure/particle_accelerator/end_cap,/turf/open/floor/plating,/area/engine/engineering) +"cvF" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/landmark/event_spawn,/turf/open/floor/plating,/area/engine/engineering) +"cvG" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/engine/engineering) +"cvH" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"cvI" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plasteel,/area/engine/engineering) +"cvJ" = (/obj/effect/landmark/start{name = "Station Engineer"},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,/turf/open/floor/plasteel,/area/engine/engineering) +"cvK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cvL" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cvM" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "Escape Pod Four"; req_access = null; req_access_txt = "0"},/turf/open/floor/plating,/area/engine/engineering) +"cvN" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "Escape Pod Four"; req_access = null; req_access_txt = "0"; shuttledocked = 1},/turf/open/floor/plating,/area/engine/engineering) +"cvO" = (/obj/machinery/door/airlock/titanium{name = "Escape Pod Airlock"},/obj/docking_port/mobile/pod{dir = 4; id = "pod4"; name = "escape pod 4"; port_angle = 180; preferred_direction = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_4) +"cvP" = (/obj/item/device/radio/intercom{pixel_y = 25},/obj/item/weapon/storage/pod{pixel_x = 6; pixel_y = -32},/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_4) +"cvQ" = (/obj/machinery/computer/shuttle/pod{pixel_y = -32; possible_destinations = "pod_asteroid4"; shuttleId = "pod4"},/obj/structure/chair{dir = 4},/obj/machinery/status_display{density = 0; layer = 3; pixel_x = 0; pixel_y = 32},/turf/open/floor/mineral/titanium/blue,/area/shuttle/pod_4) +"cvR" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/pod_4) +"cvS" = (/obj/docking_port/stationary/random{dir = 4; id = "pod_asteroid4"; name = "asteroid"},/turf/open/space,/area/space) +"cvT" = (/obj/machinery/power/turbine{luminosity = 2},/obj/structure/cable/yellow,/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cvU" = (/obj/item/weapon/wrench,/obj/structure/lattice/catwalk,/turf/open/space,/area/space/nearstation) +"cvV" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1},/turf/open/floor/plating/airless,/area/maintenance/asmaint) +"cvW" = (/obj/effect/decal/cleanable/dirt,/obj/structure/table_frame,/obj/item/weapon/wirerod,/obj/effect/spawner/lootdrop/maintenance,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cvX" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cvY" = (/obj/structure/disposaloutlet,/obj/structure/disposalpipe/trunk{dir = 1},/turf/open/floor/plating/airless,/area/space) +"cvZ" = (/obj/machinery/door/airlock{name = "Observatory Access"},/turf/open/floor/plating,/area/maintenance/aft) +"cwa" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "SMES room APC"; pixel_y = -24},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cwb" = (/obj/structure/chair/office/light{dir = 4},/obj/machinery/firealarm{dir = 1; pixel_y = -24},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plasteel,/area/engine/engine_smes) +"cwc" = (/obj/structure/table,/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_y = -35},/obj/item/weapon/stock_parts/cell/high/plus,/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/engine/engine_smes) +"cwd" = (/obj/structure/table,/obj/machinery/camera{c_tag = "Engineering Storage"; dir = 4; network = list("SS13")},/turf/open/floor/plasteel,/area/engine/engineering) +"cwe" = (/obj/structure/table,/obj/item/stack/rods{amount = 50},/turf/open/floor/plasteel,/area/engine/engineering) +"cwf" = (/obj/structure/table,/obj/item/weapon/storage/toolbox/mechanical{pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/item/device/flashlight{pixel_x = 1; pixel_y = 5},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwg" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'RADIOACTIVE AREA'"; icon_state = "radiation"; name = "RADIOACTIVE AREA"; pixel_x = 0; pixel_y = -32},/obj/machinery/light,/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwh" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwi" = (/obj/item/clothing/glasses/meson,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwj" = (/obj/structure/chair/stool,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwk" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = 25; pixel_y = 0; req_access_txt = "11"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwl" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = -25; pixel_y = 0; req_access_txt = "11"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) +"cwm" = (/obj/machinery/particle_accelerator/control_box,/obj/structure/cable/yellow,/turf/open/floor/plating,/area/engine/engineering) +"cwn" = (/obj/structure/particle_accelerator/fuel_chamber,/turf/open/floor/plating,/area/engine/engineering) +"cwo" = (/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plating,/area/engine/engineering) +"cwp" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = 25; pixel_y = 0; req_access_txt = "11"},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/engine/engineering) +"cwq" = (/obj/machinery/button/door{id = "Singularity"; name = "Shutters Control"; pixel_x = -25; pixel_y = 0; req_access_txt = "11"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwr" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cws" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/mask/gas{pixel_x = 3; pixel_y = 3},/obj/item/clothing/mask/gas,/obj/item/clothing/mask/gas{pixel_x = -3; pixel_y = -3},/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwt" = (/obj/structure/closet/firecloset,/turf/open/floor/plasteel,/area/engine/engineering) +"cwu" = (/obj/structure/sign/pods{pixel_x = 32; pixel_y = 0},/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plasteel,/area/engine/engineering) +"cwv" = (/obj/machinery/camera{c_tag = "Engineering Escape Pod"; dir = 4; network = list("SS13")},/turf/open/floor/plating,/area/engine/engineering) +"cww" = (/obj/effect/landmark{name = "carpspawn"},/turf/open/space,/area/space/nearstation) +"cwx" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 1},/turf/open/floor/plating/airless,/area/maintenance/incinerator) +"cwy" = (/obj/structure/sign/fire{pixel_x = 0; pixel_y = 0},/turf/closed/wall/r_wall,/area/maintenance/incinerator) +"cwz" = (/obj/machinery/door/poddoor{id = "turbinevent"; name = "Turbine Vent"},/turf/open/floor/engine/vacuum,/area/maintenance/incinerator) +"cwA" = (/obj/effect/decal/cleanable/dirt,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cwB" = (/obj/effect/decal/cleanable/cobweb/cobweb2,/turf/open/floor/plating,/area/maintenance/aft) +"cwC" = (/obj/structure/table,/obj/item/stack/sheet/plasteel{amount = 10},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/plasteel,/area/engine/engineering) +"cwD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; external_pressure_bound = 101.325; on = 1; pressure_checks = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cwE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/landmark/start{name = "Station Engineer"},/turf/open/floor/plasteel,/area/engine/engineering) +"cwF" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cwG" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/machinery/disposal/bin,/obj/structure/disposalpipe/trunk{dir = 8},/turf/open/floor/plasteel,/area/engine/engineering) +"cwH" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/open/floor/plating,/area/engine/engineering) +"cwI" = (/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/turf/open/floor/plating,/area/engine/engineering) +"cwJ" = (/obj/machinery/door/poddoor/shutters/preopen{id = "Singularity"; name = "radiation shutters"},/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/engine/engineering) +"cwK" = (/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/weapon/crowbar,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) +"cwL" = (/obj/structure/chair/stool,/turf/open/floor/plating,/area/engine/engineering) +"cwM" = (/obj/structure/particle_accelerator/power_box,/turf/open/floor/plating,/area/engine/engineering) +"cwN" = (/obj/item/weapon/screwdriver,/turf/open/floor/plating,/area/engine/engineering) +"cwO" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/engine/engineering) +"cwP" = (/obj/machinery/door/airlock/external{name = "External Access"; req_access = null; req_access_txt = "13"},/turf/open/floor/plating,/area/maintenance/asmaint2) +"cwQ" = (/obj/effect/decal/cleanable/dirt,/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/maintenance/asmaint2) +"cwR" = (/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cwS" = (/obj/structure/chair,/turf/open/floor/plating,/area/maintenance/aft) +"cwT" = (/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/maintenance/aft) +"cwU" = (/obj/structure/table,/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil,/obj/item/weapon/electronics/airlock,/obj/item/weapon/electronics/airlock,/turf/open/floor/plasteel,/area/engine/engineering) +"cwV" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/open/floor/plasteel,/area/engine/engineering) +"cwW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/closet/radiation,/turf/open/floor/plasteel,/area/engine/engineering) +"cwX" = (/obj/structure/table,/obj/item/weapon/folder/yellow,/obj/item/clothing/ears/earmuffs{pixel_x = -3; pixel_y = -2},/turf/open/floor/plasteel,/area/engine/engineering) +"cwY" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plasteel,/area/engine/engineering) +"cwZ" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/area/engine/engineering) +"cxa" = (/obj/machinery/light/small{dir = 8},/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/engine/engineering) +"cxb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32},/turf/open/floor/plating,/area/engine/engineering) +"cxc" = (/obj/structure/reagent_dispensers/fueltank,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) +"cxd" = (/obj/machinery/power/rad_collector{anchored = 1},/obj/structure/cable/yellow,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) +"cxe" = (/obj/machinery/power/rad_collector{anchored = 1},/obj/item/weapon/tank/internals/plasma,/obj/structure/cable/yellow,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) +"cxf" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"cxg" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) +"cxh" = (/obj/structure/particle_accelerator/particle_emitter/left,/turf/open/floor/plating,/area/engine/engineering) +"cxi" = (/obj/structure/particle_accelerator/particle_emitter/center,/turf/open/floor/plating,/area/engine/engineering) +"cxj" = (/obj/structure/particle_accelerator/particle_emitter/right,/turf/open/floor/plating,/area/engine/engineering) +"cxk" = (/obj/structure/reagent_dispensers/watertank,/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/engine/engineering) +"cxl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = -32},/turf/open/floor/plating,/area/engine/engineering) +"cxm" = (/obj/machinery/light/small{dir = 4},/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/engine/engineering) +"cxn" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) +"cxo" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall/r_wall,/area/engine/engineering) +"cxp" = (/obj/machinery/camera{c_tag = "Engineering MiniSat Access"; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cxq" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel,/area/engine/engineering) +"cxr" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) +"cxs" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/machinery/power/solar{id = "starboardsolar"; name = "Starboard Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/starboard) +"cxt" = (/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cxu" = (/obj/structure/table,/obj/item/device/taperecorder{pixel_y = 0},/turf/open/floor/plating,/area/maintenance/aft) +"cxv" = (/obj/structure/table,/obj/item/weapon/storage/box/matches,/obj/item/weapon/storage/fancy/cigarettes,/turf/open/floor/plating,/area/maintenance/aft) +"cxw" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating/airless,/area/engine/engineering) +"cxx" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'HIGH VOLTAGE'"; icon_state = "shock"; name = "HIGH VOLTAGE"},/turf/closed/wall/r_wall,/area/engine/engineering) +"cxy" = (/obj/structure/grille,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"cxz" = (/obj/structure/grille,/obj/structure/cable,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"cxA" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/engine/engineering) +"cxB" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/obj/structure/fans/tiny,/turf/open/floor/plating,/area/engine/engineering) +"cxC" = (/obj/structure/cable/yellow{icon_state = "1-4"; d1 = 1; d2 = 4},/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating,/area/engine/engineering) +"cxD" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/engine/engineering) +"cxE" = (/obj/item/weapon/wirecutters,/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/engine/engineering) +"cxF" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating,/area/engine/engineering) +"cxG" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating,/area/engine/engineering) +"cxH" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel,/area/engine/engineering) +"cxI" = (/obj/machinery/light,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cxJ" = (/obj/machinery/door/airlock/command{name = "MiniSat Access"; req_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel,/area/engine/engineering) +"cxK" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel,/area/engine/engineering) +"cxL" = (/obj/structure/transit_tube_pod,/obj/structure/transit_tube/station/reverse/flipped{dir = 4},/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) +"cxM" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space) +"cxN" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cxO" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cxP" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cxQ" = (/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cxR" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cxS" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"cxT" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cxU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cxV" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity North-West"; dir = 2; network = list("Singularity")},/obj/machinery/power/grounding_rod,/turf/open/floor/plating/airless,/area/engine/engineering) +"cxW" = (/obj/machinery/power/grounding_rod,/turf/open/floor/plating/airless,/area/space/nearstation) +"cxX" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/engine/engineering) +"cxY" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity North East"; dir = 2; network = list("Singularity")},/obj/machinery/power/grounding_rod,/turf/open/floor/plating/airless,/area/engine/engineering) +"cxZ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cya" = (/obj/structure/grille,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cyb" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 2; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/open/floor/plasteel,/area/engine/engineering) +"cyc" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel,/area/engine/engineering) +"cyd" = (/obj/machinery/light,/turf/open/floor/plasteel,/area/engine/engineering) +"cye" = (/obj/structure/transit_tube,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/engine/engineering) +"cyf" = (/obj/structure/cable,/obj/machinery/power/solar{id = "starboardsolar"; name = "Starboard Solar Array"},/turf/open/floor/plasteel/airless/solarpanel,/area/solar/starboard) +"cyg" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cyh" = (/turf/open/floor/plating/airless,/area/engine/engineering) +"cyi" = (/obj/structure/cable/yellow{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"cyj" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating/airless,/area/space/nearstation) +"cyk" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/open/floor/plating/airless,/area/space/nearstation) +"cyl" = (/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"cym" = (/obj/item/weapon/wrench,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyn" = (/obj/machinery/light/small{dir = 8},/turf/open/floor/plating,/area/engine/engineering) +"cyo" = (/obj/structure/closet/emcloset,/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 32},/turf/open/floor/plating,/area/engine/engineering) +"cyp" = (/obj/structure/window/reinforced/fulltile,/obj/structure/transit_tube,/turf/open/floor/plating,/area/engine/engineering) +"cyq" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cyr" = (/obj/machinery/power/emitter{anchored = 1; dir = 4; state = 2},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cys" = (/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating/airless,/area/engine/engineering) +"cyt" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating/airless,/area/space/nearstation) +"cyu" = (/obj/machinery/field/generator{anchored = 1; state = 2},/turf/open/floor/plating/airless,/area/space/nearstation) +"cyv" = (/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating/airless,/area/engine/engineering) +"cyw" = (/obj/machinery/power/emitter{anchored = 1; dir = 8; state = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plating/airless,/area/engine/engineering) +"cyx" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"cyy" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 1; name = "Engineering External Access"; req_access = null; req_access_txt = "10;13"},/turf/open/floor/plating,/area/engine/engineering) +"cyz" = (/obj/structure/sign/securearea,/turf/closed/wall,/area/engine/engineering) +"cyA" = (/obj/structure/transit_tube/curved/flipped{dir = 1},/turf/open/space,/area/space) +"cyB" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"cyC" = (/obj/item/device/multitool,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyD" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{icon_state = "1-4"; d1 = 1; d2 = 4},/turf/open/floor/plating/airless,/area/space/nearstation) +"cyE" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/obj/machinery/power/tesla_coil,/turf/open/floor/plating/airless,/area/space/nearstation) +"cyF" = (/obj/item/weapon/wirecutters,/obj/structure/lattice,/turf/open/space,/area/space/nearstation) +"cyG" = (/obj/structure/cable/yellow{icon_state = "0-4"; d2 = 4},/obj/machinery/power/tesla_coil,/turf/open/floor/plating/airless,/area/space/nearstation) +"cyH" = (/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable/yellow{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"cyI" = (/obj/structure/transit_tube/curved{dir = 4},/turf/open/space,/area/space) +"cyJ" = (/obj/structure/lattice,/obj/structure/transit_tube/crossing/horizontal,/turf/open/space,/area/space) +"cyK" = (/obj/structure/transit_tube/horizontal,/turf/open/space,/area/space) +"cyL" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/transit_tube/crossing/horizontal,/turf/open/space,/area/space) +"cyM" = (/obj/structure/window/reinforced/fulltile,/obj/structure/transit_tube/horizontal,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"cyN" = (/obj/structure/transit_tube/horizontal,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"cyO" = (/obj/structure/transit_tube/station/reverse,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"cyP" = (/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"cyQ" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyR" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyS" = (/obj/effect/landmark/event_spawn,/turf/open/space,/area/space/nearstation) +"cyT" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyV" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"cyW" = (/obj/machinery/atmospherics/components/unary/vent_pump{on = 1},/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"cyX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"cyY" = (/obj/effect/turf_decal/stripes/line{dir = 9},/turf/open/floor/plating/airless,/area/space/nearstation) +"cyZ" = (/obj/effect/turf_decal/stripes/line{dir = 1},/turf/open/floor/plating/airless,/area/space/nearstation) +"cza" = (/obj/effect/turf_decal/stripes/line{dir = 5},/turf/open/floor/plating/airless,/area/space/nearstation) +"czb" = (/obj/item/weapon/crowbar,/turf/open/space,/area/space/nearstation) +"czc" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 4; name = "MiniSat External Access"; req_access = null; req_access_txt = "65;13"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"czd" = (/obj/structure/sign/securearea{desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; icon_state = "space"; layer = 4; name = "EXTERNAL AIRLOCK"; pixel_x = 0; pixel_y = 32},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"cze" = (/obj/machinery/door/airlock/external{cyclelinkeddir = 8; name = "MiniSat External Access"; req_access = null; req_access_txt = "65;13"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"czf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"czg" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"czh" = (/obj/machinery/light{dir = 8},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"czi" = (/obj/machinery/the_singularitygen,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating/airless,/area/space/nearstation) +"czj" = (/obj/item/weapon/wrench,/turf/open/floor/plating/airless,/area/space/nearstation) +"czk" = (/obj/machinery/the_singularitygen/tesla,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating/airless,/area/space/nearstation) +"czl" = (/obj/machinery/light{dir = 4; icon_state = "tube1"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"czm" = (/obj/structure/lattice/catwalk,/obj/machinery/atmospherics/pipe/simple/yellow/visible,/turf/open/space,/area/space) +"czn" = (/obj/structure/closet/emcloset,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"czo" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/structure/sign/securearea{pixel_y = -32},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"czp" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/obj/machinery/light/small,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"czq" = (/obj/machinery/camera{c_tag = "MiniSat Pod Access"; dir = 1; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 2; on = 1},/obj/machinery/light/small,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"czr" = (/obj/item/weapon/weldingtool,/turf/open/space,/area/space/nearstation) +"czs" = (/obj/effect/turf_decal/stripes/line{dir = 10},/turf/open/floor/plating/airless,/area/space/nearstation) +"czt" = (/obj/effect/turf_decal/stripes/line{dir = 2},/turf/open/floor/plating/airless,/area/space/nearstation) +"czu" = (/obj/effect/turf_decal/stripes/line{dir = 6},/turf/open/floor/plating/airless,/area/space/nearstation) +"czv" = (/turf/closed/wall,/area/ai_monitored/turret_protected/aisat_interior) +"czw" = (/obj/machinery/door/airlock/hatch{name = "MiniSat Foyer"; req_one_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"czx" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/closed/wall,/area/ai_monitored/turret_protected/aisat_interior) +"czy" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall,/area/ai_monitored/turret_protected/aisat_interior) +"czz" = (/obj/machinery/atmospherics/components/unary/outlet_injector/on{dir = 8},/turf/open/floor/plating/airless,/area/ai_monitored/turret_protected/aisat_interior) +"czA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"czB" = (/obj/structure/cable{icon_state = "0-2"; d2 = 2},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable,/obj/structure/lattice/catwalk,/turf/open/space,/area/solar/starboard) +"czC" = (/obj/structure/table,/obj/machinery/light/small{dir = 1},/obj/item/weapon/folder{pixel_x = 3},/obj/item/weapon/phone{pixel_x = -3; pixel_y = 3},/obj/item/weapon/pen,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) +"czD" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"czE" = (/obj/structure/rack{dir = 1},/obj/machinery/light/small{dir = 1},/obj/machinery/light_switch{pixel_y = 28},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/item/device/radio/off{pixel_y = 4},/obj/item/weapon/screwdriver{pixel_y = 10},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) +"czF" = (/obj/item/device/radio/off,/turf/open/floor/plating/airless,/area/engine/engineering) +"czG" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/computer/station_alert,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) +"czH" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) +"czI" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) +"czJ" = (/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) +"czK" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"czL" = (/obj/machinery/door/poddoor/shutters{id = "teledoor"; name = "MiniSat Teleport Access"},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"czM" = (/obj/machinery/button/door{id = "teledoor"; name = "MiniSat Teleport Shutters Control"; pixel_x = 0; pixel_y = 25; req_access_txt = "17;65"},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"czN" = (/obj/machinery/teleport/hub,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"czO" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plating/airless,/area/engine/engineering) +"czP" = (/obj/structure/grille,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating/airless,/area/engine/engineering) +"czQ" = (/obj/machinery/computer/security/telescreen/entertainment{pixel_x = -31},/obj/machinery/computer/monitor,/obj/structure/cable{icon_state = "0-4"; d2 = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) +"czR" = (/obj/structure/chair/office/dark{dir = 8},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) +"czS" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/effect/landmark/start{name = "Cyborg"},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) +"czT" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) +"czU" = (/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"czV" = (/obj/machinery/door/airlock/hatch{name = "MiniSat Teleporter"; req_access_txt = "17;65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"czW" = (/obj/machinery/bluespace_beacon,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"czX" = (/obj/machinery/teleport/station,/obj/machinery/light/small{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"czY" = (/obj/structure/grille,/turf/open/floor/plating/airless,/area/engine/engineering) +"czZ" = (/obj/structure/cable/yellow{icon_state = "0-2"; d2 = 2},/obj/machinery/power/tesla_coil,/turf/open/floor/plating/airless,/area/space/nearstation) +"cAa" = (/obj/structure/lattice,/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 5},/turf/open/space,/area/space) +"cAb" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible{icon_state = "intact"; dir = 10},/obj/structure/lattice,/turf/open/space,/area/space) +"cAc" = (/obj/structure/table,/obj/machinery/microwave{pixel_x = 0; pixel_y = 4},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) +"cAd" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) +"cAe" = (/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) +"cAf" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/grimy,/area/ai_monitored/turret_protected/aisat_interior) +"cAg" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "MiniSat Foyer APC"; pixel_x = 27; pixel_y = 0},/obj/structure/chair,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cAh" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/closed/wall,/area/ai_monitored/turret_protected/aisat_interior) +"cAi" = (/obj/machinery/camera{c_tag = "MiniSat Teleporter"; dir = 1; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cAj" = (/obj/machinery/computer/teleporter,/turf/open/floor/plating,/area/ai_monitored/turret_protected/aisat_interior) +"cAk" = (/obj/structure/cable,/obj/machinery/power/tracker,/turf/open/floor/plasteel/airless/solarpanel,/area/solar/starboard) +"cAl" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity West"; dir = 1; network = list("Singularity")},/turf/open/floor/plating/airless,/area/engine/engineering) +"cAm" = (/obj/structure/cable/yellow{d1 = 1; d2 = 4; icon_state = "1-4"; tag = "90Curve"},/turf/open/floor/plating/airless,/area/space/nearstation) +"cAn" = (/obj/structure/cable/yellow{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"cAo" = (/obj/structure/cable/yellow{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/open/floor/plating/airless,/area/space/nearstation) +"cAp" = (/obj/machinery/camera/emp_proof{c_tag = "Singularity East"; dir = 1; network = list("Singularity")},/turf/open/floor/plating/airless,/area/engine/engineering) +"cAq" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAr" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/machinery/meter,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAs" = (/obj/structure/rack{dir = 1},/obj/machinery/status_display{pixel_y = -32},/obj/item/weapon/storage/box/donkpockets,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) +"cAt" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/obj/machinery/light/small,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cAu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cAv" = (/obj/machinery/turretid{control_area = null; enabled = 1; icon_state = "control_standby"; name = "Antechamber Turret Control"; pixel_x = 0; pixel_y = -24; req_access = list(65)},/obj/machinery/light/small,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/camera/motion{c_tag = "MiniSat Foyer"; dir = 1; network = list("MiniSat")},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cAw" = (/obj/machinery/ai_status_display{pixel_y = -32},/obj/structure/table,/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) +"cAx" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAy" = (/obj/structure/sign/securearea,/turf/closed/wall/r_wall,/area/engine/engineering) +"cAz" = (/obj/machinery/atmospherics/pipe/simple/yellow/visible,/obj/structure/rack,/obj/item/weapon/wrench,/obj/item/weapon/crowbar/red,/obj/item/clothing/head/welding,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAA" = (/obj/machinery/atmospherics/components/unary/tank/air,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAB" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/aisat_interior) +"cAC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Antechamber"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cAD" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/aisat_interior) +"cAE" = (/obj/machinery/recharge_station,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAF" = (/obj/structure/grille,/turf/closed/wall/r_wall,/area/engine/engineering) +"cAG" = (/obj/machinery/portable_atmospherics/canister/air,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/effect/turf_decal/stripes/corner{dir = 2},/turf/open/floor/plating{tag = "icon-warnplatecorner"},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAH" = (/obj/machinery/atmospherics/components/binary/pump{dir = 2; name = "Mix to MiniSat"},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAI" = (/obj/machinery/atmospherics/components/binary/pump{dir = 0; name = "Air Out"; on = 0},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAJ" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAK" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 4; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = -9; pixel_y = 2},/turf/open/floor/plasteel/darkblue/corner{dir = 1},/area/ai_monitored/turret_protected/aisat_interior) +"cAL" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cAM" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/darkblue/corner{dir = 4},/area/ai_monitored/turret_protected/aisat_interior) +"cAN" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 4; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = -9; pixel_y = 2},/obj/structure/extinguisher_cabinet{pixel_x = 5; pixel_y = 30},/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAO" = (/obj/effect/turf_decal/stripes/line,/turf/open/floor/plating{icon_plating = "warnplate"},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAP" = (/obj/structure/table,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/glass{amount = 50},/obj/item/clothing/head/welding,/obj/item/stack/sheet/mineral/plasma{amount = 35; layer = 3.1},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/obj/effect/turf_decal/stripes/corner{dir = 1},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAQ" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "MiniSat Atmospherics"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/obj/machinery/space_heater,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAR" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAS" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAT" = (/obj/machinery/light/small{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 28; pixel_y = 0},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/darkblue/corner{dir = 4},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cAU" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/aisat_interior) +"cAV" = (/obj/machinery/light/small{dir = 8},/obj/machinery/camera{c_tag = "MiniSat Antechamber"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/turretid{control_area = "AI Satellite Atmospherics"; enabled = 1; icon_state = "control_standby"; name = "Atmospherics Turret Control"; pixel_x = -27; pixel_y = 0; req_access = list(65)},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/darkblue/corner{dir = 1},/area/ai_monitored/turret_protected/aisat_interior) +"cAW" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cAX" = (/obj/machinery/light/small{dir = 4},/obj/machinery/turretid{control_area = "AI Satellite Service"; enabled = 1; icon_state = "control_standby"; name = "Service Bay Turret Control"; pixel_x = 27; pixel_y = 0; req_access = list(65)},/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,/turf/open/floor/plasteel/darkblue/corner{dir = 4},/area/ai_monitored/turret_protected/aisat_interior) +"cAY" = (/obj/machinery/light/small{dir = 8},/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = -28; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/darkblue/corner{dir = 1},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cAZ" = (/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBa" = (/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBb" = (/obj/machinery/light/small{dir = 4},/obj/machinery/camera{c_tag = "MiniSat Service Bay"; dir = 8; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/obj/machinery/airalarm{dir = 8; icon_state = "alarm0"; pixel_x = 24},/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = -3; pixel_y = 3},/obj/item/weapon/storage/toolbox/mechanical,/obj/item/device/multitool,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBc" = (/obj/machinery/power/apc{dir = 8; name = "MiniSat Atmospherics APC"; pixel_x = -27; pixel_y = 0},/obj/structure/cable{icon_state = "0-4"; d2 = 4},/obj/machinery/portable_atmospherics/scrubber,/obj/effect/turf_decal/stripes/line{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cBd" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cBe" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/ai_slipper{uses = 10},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cBf" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cBg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Atmospherics"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cBh" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cBi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/ai_slipper{uses = 10},/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,/mob/living/simple_animal/bot/secbot/pingsky,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cBj" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cBk" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Service Bay"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cBl" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBm" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/ai_slipper{uses = 10},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBo" = (/obj/machinery/power/apc{dir = 4; name = "MiniSat Service Bay APC"; pixel_x = 27; pixel_y = 0},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/port_gen/pacman,/obj/effect/turf_decal/stripes/line{dir = 8},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBp" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cBq" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/mob/living/simple_animal/bot/floorbot,/turf/open/floor/plasteel/darkblue/corner,/area/ai_monitored/turret_protected/AIsatextAS{name = "AI Satellite Atmospherics"}) +"cBr" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/machinery/porta_turret/ai{dir = 4},/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1447; listening = 0; name = "Station Intercom (AI Private)"; pixel_y = -29},/turf/open/floor/plasteel/darkblue/corner{dir = 8},/area/ai_monitored/turret_protected/aisat_interior) +"cBs" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/obj/machinery/turretid{control_area = "AI Satellite Hallway"; enabled = 1; icon_state = "control_standby"; name = "Chamber Hallway Turret Control"; pixel_x = 32; pixel_y = -24; req_access = list(65)},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/aisat_interior) +"cBt" = (/obj/machinery/porta_turret/ai{dir = 4},/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plasteel/darkblue/corner,/area/ai_monitored/turret_protected/aisat_interior) +"cBu" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/mob/living/simple_animal/bot/cleanbot,/turf/open/floor/plasteel/darkblue/corner{dir = 8},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBv" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBw" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/plasteel/vault{dir = 8},/area/ai_monitored/turret_protected/AIsatextFP{name = "AI Satellite Service"}) +"cBx" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBy" = (/turf/closed/wall,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBz" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBA" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Chamber Hallway"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBB" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBC" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBD" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_southmaint"; name = "south maintenance airlock"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"cBE" = (/obj/machinery/portable_atmospherics/scrubber,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBF" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBG" = (/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBH" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBI" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBJ" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBL" = (/obj/structure/rack,/obj/item/weapon/crowbar/red,/obj/item/weapon/wrench,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBM" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBN" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBO" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External NorthWest"; dir = 8; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) +"cBP" = (/obj/machinery/porta_turret/ai{dir = 4; installation = /obj/item/weapon/gun/energy/e_gun},/obj/machinery/light{icon_state = "tube1"; dir = 8},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBQ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 4; on = 1; scrub_N2O = 0; scrub_Toxins = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBR" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBS" = (/obj/machinery/porta_turret/ai{dir = 4; installation = /obj/item/weapon/gun/energy/e_gun},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBT" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External NorthEast"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) +"cBU" = (/obj/structure/sign/securearea{pixel_x = 32; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBV" = (/obj/machinery/camera/motion{c_tag = "MiniSat Core Hallway"; dir = 4; network = list("MiniSat")},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBW" = (/obj/structure/sign/securearea{pixel_x = -32; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBX" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBY" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cBZ" = (/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCa" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 10},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCb" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCd" = (/obj/machinery/door/airlock/maintenance_hatch{name = "MiniSat Maintenance"; req_access_txt = "65"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCe" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCf" = (/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCg" = (/obj/machinery/airalarm{dir = 4; pixel_x = -23; pixel_y = 0},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCh" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCi" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/effect/landmark/event_spawn,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCj" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 4; name = "MiniSat Chamber Hallway APC"; pixel_x = 27; pixel_y = 0},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCk" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 5},/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/atmospherics/components/unary/vent_pump{dir = 8; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/item/device/radio/intercom{broadcasting = 1; frequency = 1447; listening = 0; name = "Station Intercom (AI Private)"; pixel_x = -28; pixel_y = -29},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCn" = (/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai) +"cCo" = (/obj/machinery/status_display,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai) +"cCp" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/hatch{name = "MiniSat Chamber Observation"; req_one_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCq" = (/obj/structure/sign/securearea,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai) +"cCr" = (/obj/machinery/ai_status_display,/turf/closed/wall/r_wall,/area/ai_monitored/turret_protected/ai) +"cCs" = (/obj/machinery/light/small{dir = 1},/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen{pixel_x = 4; pixel_y = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCt" = (/obj/machinery/airalarm{frequency = 1439; pixel_y = 23},/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCu" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCv" = (/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{dir = 8},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCw" = (/obj/machinery/light/small{dir = 1},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCx" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/white,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCy" = (/obj/machinery/atmospherics/components/unary/vent_pump{dir = 4; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCz" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/manifold/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCA" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCB" = (/obj/structure/chair/office/dark,/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCC" = (/obj/structure/grille,/turf/open/floor/plating,/area/ai_monitored/turret_protected/AIsatextFS{name = "AI Satellite Hallway"}) +"cCD" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/ai_monitored/turret_protected/ai) +"cCE" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/obj/machinery/door/firedoor,/obj/machinery/door/airlock/glass_command{name = "AI Core"; req_access_txt = "65"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCF" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plating,/area/ai_monitored/turret_protected/ai) +"cCG" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_se"; name = "southeast of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"cCH" = (/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cCI" = (/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/ai_slipper{uses = 10},/obj/machinery/atmospherics/pipe/simple/supply/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCK" = (/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/machinery/status_display{pixel_x = -32},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cCL" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 6},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCM" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 4},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCN" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/machinery/holopad,/obj/machinery/atmospherics/pipe/simple/supply/hidden{dir = 9; pixel_y = 0},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCO" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 5},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCP" = (/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{dir = 10},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCQ" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/machinery/ai_status_display{pixel_x = 32},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cCR" = (/obj/machinery/porta_turret/ai{dir = 4},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cCS" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/turretid{name = "AI Chamber turret control"; pixel_x = 5; pixel_y = -24},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cCT" = (/obj/machinery/door/window{dir = 1; name = "AI Core Door"; req_access_txt = "16"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cCU" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{cell_type = 5000; dir = 2; name = "AI Chamber APC"; pixel_y = -24},/obj/machinery/flasher{id = "AI"; pixel_x = -11; pixel_y = -24},/obj/machinery/camera/motion{c_tag = "MiniSat AI Chamber North"; dir = 1; network = list("MiniSat")},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cCV" = (/turf/closed/wall,/area/ai_monitored/turret_protected/ai) +"cCW" = (/obj/effect/landmark/start{name = "AI"},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = -27; pixel_y = -9},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = -31},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 27; pixel_y = -9},/obj/machinery/newscaster/security_unit{pixel_x = -28; pixel_y = -28},/obj/machinery/requests_console{department = "AI"; departmentType = 5; pixel_x = 28; pixel_y = -28},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cCX" = (/obj/machinery/ai_slipper{uses = 10},/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cCY" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External SouthWest"; dir = 8; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) +"cCZ" = (/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = 28},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = -27; pixel_y = 5},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 0; pixel_y = -25},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cDa" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 8; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = 9; pixel_y = 2},/obj/machinery/atmospherics/components/unary/vent_pump{dir = 1; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cDb" = (/obj/structure/showcase{density = 0; desc = "An old, deactivated cyborg. Whilst once actively used to guard against intruders, it now simply intimidates them with its cold, steely gaze."; dir = 4; icon = 'icons/mob/robots.dmi'; icon_state = "robot_old"; name = "Cyborg Statue"; pixel_x = -9; pixel_y = 2},/obj/machinery/atmospherics/components/unary/vent_scrubber{dir = 1; on = 1},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cDc" = (/obj/effect/landmark{name = "tripai"},/obj/item/device/radio/intercom{anyai = 1; freerange = 1; listening = 0; name = "Custom Channel"; pixel_x = 0; pixel_y = 28},/obj/item/device/radio/intercom{broadcasting = 0; freerange = 1; listening = 1; name = "Common Channel"; pixel_x = 27; pixel_y = 5},/obj/item/device/radio/intercom{anyai = 1; broadcasting = 0; freerange = 1; frequency = 1447; name = "Private Channel"; pixel_x = 0; pixel_y = -25},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cDd" = (/obj/structure/lattice,/obj/machinery/camera{c_tag = "MiniSat External SouthEast"; dir = 4; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) +"cDe" = (/obj/docking_port/stationary{dheight = 9; dir = 2; dwidth = 5; height = 24; id = "syndicate_s"; name = "south of station"; turf_type = /turf/open/space; width = 18},/turf/open/space,/area/space) +"cDf" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cDg" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/turf/closed/wall,/area/ai_monitored/turret_protected/ai) +"cDh" = (/obj/machinery/power/smes{charge = 5e+006},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cDi" = (/obj/machinery/camera/motion{c_tag = "MiniSat AI Chamber South"; dir = 2; network = list("MiniSat")},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cDj" = (/obj/machinery/power/terminal{icon_state = "term"; dir = 1},/obj/machinery/ai_slipper{uses = 10},/turf/open/floor/bluegrid,/area/ai_monitored/turret_protected/ai) +"cDk" = (/obj/machinery/firealarm{dir = 1; pixel_y = -24},/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cDl" = (/obj/machinery/airalarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/holopad,/turf/open/floor/plasteel/black,/area/ai_monitored/turret_protected/ai) +"cDm" = (/obj/machinery/camera{c_tag = "MiniSat External South"; dir = 2; network = list("MiniSat"); pixel_x = 0; pixel_y = 0; start_active = 1},/turf/open/space,/area/space) + +(1,1,1) = {" +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaaeaaeaaeaaeaaeaadaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaagaahaaiaajaakaalaalaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaamaahaahaanaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaoaahaahaahaapaahaaqaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaraadaadaadaasaadaadaadaataaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaauaadaavaahaawaadaataaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaahaahaaxaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaadaadaadaadaahaahaaxaayaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaahaaAaadaahaahaaxaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaaCaaDaadaahaahaaxaadaadaaEaaFaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaahaaGaadaaHaaIaaHaadaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaahaahaaKaahaahaahaaLaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaazaahaahaahaaMaahaahaahaaHaahaahaahaadaaNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaadaadaadaadaadaadaaOaahaahaadaadaadaadaadaadaafaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaPaaQaaRaaSaaTaadaahaahaahaadaaUaaVaaWaaXaaYaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaZaaQaaQaaQaaQabaaahaahaahaadaahaahaahaaCabbaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaPaaQaaQaaQaaQabcaahaahaahabdaahaahaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaaQaaQaaQaaQaaQabeaahaahaahabfaahaahaahaahabgaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabiabjabkablabmabnaadaahaahaahaadaboabpaahaahabgaayaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqabqabqabqabqabqabqabqabqaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabraaQabsaadaadaadaaHabtaaHaadabuaadaahaahaahaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabvabhaaaabhaaaabhaaaabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabwabxabyaadaaaaadabzabzabzaadaadaadabAabBabCaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabDabDabEabFabGabFabGabFabHabDabDaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadabzabzabzaadaaaaarabIabJabKaataaaaadabzabzabzaadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabDabLabMabNabOabPabQabRabSabTabDaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaarabIabJabKabUaaaaaaaaaaaaaaaaaaaaaabVabIabJabKaataaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabDabWabXabYabXabXabXabZabSacaabDabhabhaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabDabDacbaccacdaceacfabQabQabSacgabDabhabhabhabhabhabhabhabhabhabhabhaaaaaaaaaabhaaaabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaachabDaciabQabQabQabQacjabQabQackaclabDaaaabhaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaabhaaaabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDabDacmacjabQabQacnacoacjabQacpacqabDabhacrabhabhabhabhabhabhabhabhabhabhabhabhabhaaaabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDactabQabQabQacuacvacwabQabQacxacyabDabDaczabhabhabhabhabhabhabhabhaaaaaaaaaaaaabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaacAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBacCacDacEacFacGabQacHabQabQabQabQabQabQabSabQacIacJaczacKacKacLacKacKacLacLacKacMacMacNacMacNacMacOacOacPacPacPacOacOaaaaaaaaaaaaaaaabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaacAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhacQabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacRacSacTacUacVacWabQabQacXacYacZabQadaadbadcabQaddadeaczadfadfadfadfadfadfadfadfacMadgadhadhadhadiacOadjadkadladmadnacOaaaaaaaaaabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhadoabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacLacLacLacLabhabhaaaadpaaaabhabhacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacRadqadradsacVadtaduadtadtadtadvadtadtadtadwadtadtadxaczaczaczaczaczaczaczaczaczaczadyadhadzadAadgacOadBadCadDadEadFacOaaaabhadGabqabqabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsabhabhaaaadHaaaadIabhacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaabhaaaabhaaaaaaadpaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacRadJadKadLacVadMabQadNadtadOadPadQadtadRadSadTadtadUaczadVadWadXadYadZaeaaebaecaczaedadhadzaeeadgacPaefaegaehadDaeiacOaaaabhaejaekaejabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaaaaaaabhaaaabhaaaaaaadHaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaelaelaelaelaelaaaaemaaaaelaelaelaelaelabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBaenaeoaepacVaeqabQaeradtaesaetaeuadtaevaewaeradtaexaczaeyaezaeAaeAaeAaeAaeAaeBaczaeCadhadzaeeadgacPaeDaeEaeFadDaeGacOabhabhaejaeHaejabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaeIaeIaeIaeIaeIaaaaeJaaaaeIaeIaeIaeIaeIabhacsaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaeKaeLaeLaeLaeLaeMaeNaeOaePaePaePaePaeQaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaeRacBacBacBaeSaeTaeUacVaeVaeWaeXadtaeVaeYadtadtadtaeZaeXadtadtaczafaafbafcafdafeaffafgafhafiadhadhadzaeeadgacOafjafkaflafmafnacOacNacNacMaekaejaejacMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaafoafpafpafpafpafqafrafsaftaftaftaftafuaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhafvafvafvafvafvaaaaeNaaaafvafvafvafvafvabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBafwafxafyafzafAafBafCafDafEafFafGafHafIafJafKafLafMafNafOaczafPafQafRafSafTafUafVafWafXadhadhafYafZacMacOagaacOagbacOagcacOagdageacMagfaejaggaghaghaghaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhagiagiagiagiagiaaaafraaaagiagiagiagiagiabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaaaaabhaaaaaaaaaaeNaaaaaaaaaabhaaaaaaaaaacAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBagjagkaglagmagnagoagpagqagqagragsagqagqagqagtaguagvagwagxaczafPafPagyagzagAagBagCagDaczagEagFagGagHacMagIagJagKagLagMagNagKagOagPagQagRagSagTagUagVagWagXaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaaaaabhaaaaaaaaaafraaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaelaelaelaelaelaaaaeNaaaaelaelaelaelaelabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagYagZahaahbahcahdacBaheahfahgahgahhahiahjahkahkahkadtahlahmaczaczaczahnahoahpahqahrahsaczahtacNahuahvacMahwahxahyahzahAahBahCahDahEacMahFacMaggaghaghaghaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaeIaeIaeIaeIaeIaaaafraaaaeIaeIaeIaeIaeIabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaeKaeLaeLaeLaeLaeMaeNaeOaePaePaePaePaeQaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBacBacBahGahHahIacBabDadtahJadtadtadtahKahKahKahKahKahLahMahNahOahPahQahRahSahTahUahVahNahWagKahXahYahZaiaaibahyaicahAaidahCaieaejacMacMacMacMacMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaafoafpafpafpafpafqafrafsaftaftaftaftafuaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsadIafvafvafvafvafvaaaaeNaaaafvafvafvafvafvabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaacBacBacBacBacBabDaifaigaihaiiaijahKaikailaimainaioaipaiqairaisaitaiuahSaivahSaiwaixaiyaizaiAaiBahyaizaiCaiDaiEaiFaiGaiHaiIaiJaiKaiLaiMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhagiagiagiagiagiaaaafraaaagiagiagiagiagiabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaaaaabhaaaaaaaaaaeNaaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhabhabDaijaiNaiOaiPaijahKaiQaiRaiSaiTaioaipahNaiUaiVaiWaiXaiYaiZajaajbajcajdajeajfajgajhajhajgajiajjajkajlajmajnacMajoajpaiMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaaaaabhaaaaaaaaaafraaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaelaelaelaelaelaaaaeNaaaaelaelaelaelaelabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabDaijaiNajqaiPajrahKajsajtaiSajuaioaipaiqajvajwajxajyajzajAajBajCajDajEajFajGajHajIajJajKajLajMajNajOajPajQajRajSajTajUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhaeIaeIaeIaeIaeIaaaafraaaaeIaeIaeIaeIaeIabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaeKaeLaeLaeLaeLaeMaeNaeOaePaePaePaePaeQaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaabDajVajWajWajXajYahKajZakaakbakcaioaipahNakdakeakfakgakhakiakjahNahNacMakkajoacMacMacMacMacMacMacMacMacMacMacMaklakmajUabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaafoafpafpafpafpafqafrafsaftaftaftaftafuaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaknafvafvafvafvafvaaaaeNaaaafvafvafvafvafvabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhakoakoakpakpabDabDadtadtaeVakqahKahKahKahKahKakraksaktakuaktaktaktaktaktaktakvakwakxakyakzakAakBakCakDakEakFakGakHakIakJakKaklakmajUabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhagiagiagiagiagiaaaafraaaagiagiagiagiagiaknacAaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaabhaaaabhaaaaaaakLaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhakoakMakNakOakPakQakRakSakTakUakVakWakXakYakZalaalbalcaldalcalcalcalcalcalcalealcalcalfaldalgalhalialjalkallalmalnaloalpakKaklakmaiMabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaabhaaaabhaaaaaaafraaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsabhabhabhabhalqalralqabhabhabhabhacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalsaltaltaltalsaaaabhakoalualvalwalxalyalzalAalBalCalDalEalFalGalHalEalIalJalHalEalFalKalLalLalLalMalNalOalPalQalRalSalTalUalTalTalTalValWalWakKaklakmajUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsabhabhabhabhabhafrabhabhabhabhabhacsacsacsabhaaaaaaaaaaaaaaaaaaaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaabhaaaalqalXalqaaaaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalsalYalZamaalsakpakpambamcamdameamfakBahKamgahKakBamhamiamjamkamlammamjamkamlamnamoamkampamqamkamramsamkamtamuamvakBamwamxalWamyalWamzamAalWakKaklakmajUabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaabhaaaaaaamBaaaaaaabhaaaaaaabhaaaabhabhabhaaaaaaaaaaaaaaaaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaabhalqalqamCalqalqaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaJamDamDamDamDamDaaaaltamEamFamGamHamIamJamKamcamLamMamNakBamOaktamPakBamQamRamSakBamTamRamSakBamTamUamSakBamVamWamXamYakAakBamRamZanaakBanbancandaneandanfangalWakKaklakmajUabhaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaabhaaaaaaanhaaaaaaabhaaaaaaabhaaaaaaaaaabhabhaaaaaaaaaaaaaaaanianjaniabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaabhankanlanmannankanoanoanoanoanoanoanoanoanoaaaaaaaaaaaaamDanpanqanramDaaaalsansalsantalsakpakpakpanuanvanwanxakBanyanzanAakBanBamRanCakBanDamRanEakBanFamRanGakBanHanIanJamYanKakBanLanManNakBanOanPanOanQanOanRanOanOakKaklakmaiMaiMabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaabhaaaanSanTanSaaaabhaaaaaaabhaaaaaaaaaaaaabhabhaaaaaaaaaaaaanianUaniabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaankanVanWanXankanYanYanoanZaoaaobanoaocanoaaaaaaaaaabhanoaodaoaaoeanoaaaalsaofaofaogalsaaaaaaaohakoakpaoiaojakBaokaolaomakBaonaooaooamkaooaooaooamkaooaooaooamkaopaoqaoraosaotakBakBakBakBakBaouaovaouakJaouaowaouakJakKaoxaoyaozaiMaiMaiMabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaaaaabhaaaanSaoAanSaaaabhabhabhabhaaaabhaaaaaaaaaabhabhaaaaaaaaaaniaoBaniabhaaaabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaoCaoCaoCaoCaoCaoCaoCaoCaoCaoCaoCaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaankaoDaoEaoFankaoGaoHaoIaoJaoaaoKanoanoanoamDanoamDamDanoaoLaoMaoLanoaaaaltaofaofaoNalsakpakpakpaoOaoPaoQaoRakoakBakBakBakBaoSaoSaoSaoTaoSaoSaoSaoUaoSaoSaoSaoTaoSaoSaoSaoVaoVaoWaoXaoXaoXaoYaouaovaouakJaouaowaouakJakKaklaoZapaapbapcapbabqaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaaaaaaaabhanSanSapdanSanSabhaaaaaaabhaaaabhaaaaaaaaaaaaabhabhaaaaaaaniaoBaniabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaoCapeapfapfapfapfapfapfapfapgaoCabhaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaankankaphapiankapjaoaanoaoaaoaaoaaoIaoaaoaapkaoaanqaoaaoaaoaaoaaplamDaaaalsapmaofaofapnapoamJappamcamLamMamLapqaoVaoVaoVapraoVaoVapsaoVaoVaoVaoVaoVaoVaoVaptaoVaoVaoVapuaoVaoVaoVaoVaoVaoVapvakJapwapxapyapzapAapxakJapBapCapDapEapEapFaiMabqaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaaaaaaaaaaabhapGapHapIapJapGabhaaaaaaabhaaaabhaaaabhaaaaaaaaaabhanianianiaoBanianianianianianiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaoCapKapLapLapLapLapLapLapLapMaoCabhaaaaaaaaaabhaaaaaaaaaaaaanoanoanoanoanoabhabhanoapNapOapPapQaoHanoanoamDamDanoanoanoanoamDanoamDamDanoapRaoaapSanoaaaalsapTapTapTalsakpakpapUapVapWapXapYakoapZapZapZapZapZaqaaqbapZapZapZapZapZapZapZaqcaqdaqdaqdaqeaqfaqdaqgaqhaqiaqjaoYaqkaqlakKakKakKakKakKakKakKaklaqmaiMaqnaqoaiMaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaaaaaaaaaaaaaabhapGaqpaqqaqrapGabhaaaaaaabhaaaabhaaaabhanianjanianjaniaqsaoBaoBaoBaoBaoBaoBaqtaniabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaoCapKapLapLapLapLapLapLapLapMaoCaoCaquaoCaoCabhabqabqanoanoanoaqvaqwaqxanoaaaaaaanoaoaapOapjaoaaqyanoaqzaqzaqAaqzaqzaqAaqAachachaqBaqBanoaqCaoaaqDanoaaaalsaqEaqEaqEalsaaaabhakoakoaqFakoaqGaqHaqIaqIaqJaqIaqIaqIaqKaqLaqLaqLaqMaqLaqLaqNaqOaqPaqQapEaqRapEapEapEapEaqSapEapEapEapEapEaqTaqUaqVaqWaqXaqXaqYaqZaraarbarcaiMaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaaaaaaaaabqabqabqaaaabhapGardarearfapGargargargargarganjanjanjaniarhaoBaqtanianiaoBanianianianiarianianiabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaoCapKapLapLapLarjapLapLapLapMarkarlarmarnaoCabhanoaroanoarparqaoaarraoaanoamDamDanoarsapOapjarsanoanoanoamDamDamDanoanoachartaqAaqAachanoanoaoIanoanoaaaaaaaaaaaaaaaaaaaaaabharuarvamJaruarwaqIarxaryarzarAarzaqIarBaqLarCarDarEarFaqLaoSaoVarGarHarIarJarJarJarJarJarKarLarJarJarJarJarJarMarNarOarParQarRarSaiMarTarUaiMabharVarWarWarXarWarWarYabhabhaaaaaaaaaabhanjarZanjaaaargapGapGasaasbapGascaoBaoBaoBaniasdaoBaseaniasfaoBaoBasganiaoBaniashasianiaoBasjaniaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaoCapKapLapLaskaslasmapLapLasnasoaspasqasraoCabhanoaoaanoassastapQasuasvanoaqDaoaaswaoaapOasxaoaaoaaoaaoaaoaaoaaoaaoaanoanoanoaqAachaqAachasyaszasyaaaaaaaaaaaaaaaaaaaaaaaaabharuasAasBaruasCaqIasDasEasFarzarzaqIarBaqLasGarEasHasIasJaoSaoVaoXarHaklasKasKasKasKasKasLasMasKasKasKasKasKasKasKasKasNasOaiMasPasNasNasNasNasNasQasRasRasRasRasRasQasNabhaaaaaaaaaabhasSaoBanjaaaargasTasUasVasWasXaoBaoBaniaoBaniasYaoBaoBaniaoBasZataatbariaoBaniatcatdaniaoBateaniaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaoCapKapLapLapLatfapLapLapLapMaquatgasqathaoCanoanoaroanoanoanoaoIatiatjatjatkatlatmatlatnatoatpatqanoaoaanoanoanoaoaanoatranoachaqAaqzaqAasyaszasyaaaaaaaaaaaaaaaatsatsatsatsatsatsatsatsattaqIatuatvatwarzatxaqIarBatyatzatAatBatCasJaoSaoVatDarHaklasKatEatFatGatHatIatJasKatKatLatMasKatNatLatOasNatPatQatRatSatTatUatVasNasQasRasRasRasRasRasQasNabhabhabhabhanjanjatWanjanjargatXaoBatYaoBaqsaoBanianiatZanianiauaanianiatbaubaucaoBaniaoBaudaudaudaudaudaudaudaudaudaueaueaueaueachaueaueaqAaqAaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaoCapKapLapLapLapLapLapLapLapMaquaufasqaugaoCauhauiaujaukaukaukaukaukaukaulaumaunanoanoanoanoaoaanoanoaoaauoanoatpaoaanoanoanoanoaqzaqzaqzasyaupasyaaaaaaaaaabhabhatsauqauratsausautauuatsattaqIarAauvarAauwarzaqIauxauyauzarEauAarEasJaoSaoVauBarHaklasKauCauDauEauFauGauHasKauIauJauKasKauLauMauNasNauOauPauQauQauQauQauRauSauTasRasRasRasRasRasQasNasNasNaaaaaaanjaoBaoBaoBascargauUatbatYaoBauVauWauXariaoBaoBaoBaoBaoBaoBaoBaubauYaoBauZaoBaudavaavbavcaudavdaveavfaudaqAaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaoCapKapLapLapLapLapLapLapLapMaquaufavgavhaoCaoaaoaaviavjavkavkavkavkavkavkavlavmavnachavoanoaoaavparsatpavqanoavraoaaoaaoaavsamDaqzaqzaqAasyaszasyaaaaaaaaaatsatsatsaszaszatsaszaszaszatsavtaqIarAavuavvavwarAaqIarBavxaqLavyavzavAaqLavBaoVaoXarHaklasKasKasKasKasKavCavDasKasKavEavFasKasKavGavFasNavHavIavJavKavKavLavMavNavOasRasRasRasRasRavPavQavRavSaaaaaaanjaoBaoBavTaoBargavUaoBavVavWavWavWavWavXavWavYaoBaoBaoBaoBaoBaoBaoBaoBaniauWaudavZawaawaaudawbawcawdaudaqzaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhabhaoCaweawfawfawfawfawfawfawfawgaquawhawiawjaoCawkawlawmawnapRawoawpawqawranoawsavmachawtavnamDaoaauoanoanoanoanoanoanoanoawuavsamDaqAaqzaqAasyaszasyabqabqabqawvawwawxaszaszatsatsawyatsatsavtaqIaqIawzaqIawAaqIaqIawBawCaqLaqLaqLaqLaqLawDaoVawEarHaklasKatEatFawFatHawGawHawIawJawKawLawMawNawOawPawQawRavIawSawTawTawUawVavNavSasRasRasRasRasRavSawWawXavSabhabhaniaoBaoBanianiargargargargargargargargarganiawYawZanianianianianianianianiaoBaxaaudawaawaaxbaxcavZaxdaudaqzaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxeaoCaoCaoCaoCaoCaoCaoCaoCaoCaoCaoCaxfaxgaoCaoCaxhanoaviaxiaoaaxjaxkaoaaoaanoawsavmaxlaqAaxlanoaoaaxmanoaxnaxoanoavrasvaxpaxqaxqaxqaxraxraxraxsaxtaxuaxraxraxraxsaxuaxsaxsaxtaxsaxvaxtaxwaxxaxyaxzaxzaxAaxzaxBaxzaxzaxCaxDaxzaxzaxzaxzaxEaxFaxGaxGaxHaxIasKauCauEauEaxJauGaxKaxLaxMaxNaxOaxPaxQaxRaxSaxTaxUaxVawSaxWawTawUawVaxXavSasRasRasRasRasRavSaxYawXasNaaaaaaaniaxZasfaoBayaaniaybaqtaycaydaqsaniavUaqsaniayeaoBaniayfaoBaniaygayhayiayjayjayjaykaylaymaynayoaypayqaudaueaueachachaueaueaueaueaqAaqAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayrayrayraysaytayuayvaywayxayxayxayxayxayxayxayyayzayAayBayCayDanoayEaxiayFaoaayGaoaayHanoawsayIaxqaxqaxqaxqayJaxqaunaoaayGayKaoaaoaayLayMayNayOayPayPayPayQayPayRayPayPaySayTayUayVayVayVayVayVayVayWayXayYayZayZayZayZazaayZayZazaayZazbazbazbazbazbazcazdazeazfazgasKasKasKasKasKavCazhaziazjazkazlazmaznazoazpazqazrazsaztazuazuazvawVazwavOasRasRasRasRasRazxazyazzasNaaaaaaaniaoBaoBaoBaoBaoBaoBazAavWavWavWavWavWavWavWazBaoBaoBaoBaoBauZaoBaoBazCazDazEazFazGazHazIawaawaawaazJaudaqAaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazKazLazMazNazOazPazQazPazRazSazRazTazUazUazVazWazUazXazYazUazUazZaxqaAaaxiaAbaoaaoaaAcaAdanoaAeaAfaAgaAgaAgaAgaAgaAhavmaAiaoaanoauhauhavmaAjanoaAkaAlaAmaAmaAnaAmaAoaAmaAmaApaAqaAraAsaAsaAsaAsaAsaAsaAsaAtaAuaAvaAwaAxaAyaAzaAAaABaACaADaAEaAFaAGaAHaAIaAJaoVaAKaiMapaasKatEatFaALatHaAMaANaziaziaziazjaAOaAPaAQaARawQaASaATaAUaAVaAWaAXaAYaAZaBaasRasRasRasRasRaBbasNasNasNanianianiaqsanianiarianianiatYanianiaBcanianiarianiatYaxZanianiarianiaoBaxZazCaBdaubaudaBeaBfaBgaBhaBiaBfaBjaudaqAaqzaqzaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayrayrayraysaytaBkaytaBlaBmaBlaBnazSazSaBoaBlaBmaBlaBpaBqaBraBsanoayEaxianoanoanoanoaBtaBtaBuaBvaBtaBtaBtaBtaBtawsayIaxqaxqaxqaxqaxqaBwaAjaqDaAkaaaabhaaaaBxaaaaByaaaabhaaaaAqaAraAsaBzaBAaBBaBCaBDaAsaAtaBEaBFaBGaBGaBHaBIaBJaBJaBJaBKaBLaBLaBMaBNaAIaBOaoVaBPaiMapaasKauCauEauEaBQauGaBRaBSaBTaBUaBVaBWaBXaBXaBYaBXasNaBZaCaaCbaCcaCdaCeasNaBbasRasRasRasRasRaBbaniateaoBaCfaCganianianiateaoBaniateatYaniaChaoBaniaCiaoBaniaCjaCkaniaClaoBaniariariazCaCmariaudaCnaBfaCoaCpaCoaBfaCqaudaqAaqAaqAaqzaqzaqzaqzaqzaqzaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxeaCraxeaCsazQaBlaCtaCuaCvaCwaBlazQaCsaBlaxeaCxaCyanoaCzaCAaCBaCBaCCaCDaBtaCEaCFaCGaCHaCIaCJaCEaBtaCKaCLaCMaCNaCNaCNaCNaCNaCOauhaAkabhaCPaCPaCQaCPaCRaCPaCPabhaAqaAraAsaCSaCTaCUaCVaCSaAsaCWaCXaCYaCZaDaaDbaDcaDdaDeaDfaDgaDhaAGaAGaAGaDiaBOaoVaDjaiMapaasKasKasKasKasKaDkavDaBXaBXaBXaBXaBXaBXaDlaDmaDnaBXasNasNasNasNaDoaDpasNaBbasRasRasRasRasRaBbanianiaoBaDqaCganiaDraniaoBaoBaniaoBatYaniaoBaoBaniaoBaoBaniatYauWaniaoBaoBaniaDsaoBazCaBdatbaudaudaudaudaudaudaudaudaudaueaueaueaueaueaqAaqzaqzaqzaqzaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBlaBmaBlaBlaBlaBlaBlaBlaBmaBlaaaaxeaDtaBsaDuaDvaDwaDuaDuaDuaDxaBtaCEaDyaDzaDAaDBaDCaCEaBtanoaDDaDEaDEaDEaDEaDEaDEaDFaDEaDGaaaaCPaDHaDIaDJaDKaDLaCPaaaaAqaAraAsaCSaDMaDNaDOaCSaAsaszaDPaAvaDQaDRaDSaDTaDUaDhaDVaDWaAGaAGaDXaAGaDiaBOaoVaBPaiMapaasKatEatFaDYatHaAMavDaBXaDZaEaaEbaEbaBXaDlaEcaDnaBXaEdaEeaEfaEgaEhaDpaqAaEiaEjaEjaEjaEjaEjaEkaqzaniaoBaElaEmanianianianianianiaEnaEoanianianianianianiaEpaEqaEraEsaEsaEsaEtaEuaEvaEwaExaEyaEzaEAaEBaEsaECaEDaEEaEFaEFaEFabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaEGaEGaEHaEGaEIaEIaEIaEIaEGaEHaEGaEGaxeaBnaEJaDuaEKaELaEMaENaEOaEPaBtaCEaEQaERaESaERaERaCEaBtaETaEUaEVaEWaEXaEYaEZaFaaFbaFcaDGabhaCPaFdaFeaFfaFgaFhaCPabhaAqaAraAsaFiaFjaFkaFlaFmaAsaszaFnaAvaFoaFpaFqaAGaFraFsaFtaFuaFvaDiaAIaFwaAIaBOaoVaBPaiMapaasKauCauDauEaFxauGaFyaFzaFAaFBaFCaFCaFDaFEaFFaFGaBXaFHaFIaFJaFKaFLaDpaqzaqAaqzaqAaqzaqAaqzaqAaqzaniaxZaFMaFNaFOaFPaniauVaoBaxZatYaoBaniaqzaniaCfaFNaFNaFQaFRaFSaFSaFSaFSaFSaFTaFUaFVaFWaFXaFXaFXaFYaFZaGaaGbaGcaGdaGeaGfaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEGaEGaEGaEGaGgaGhaGiaGjaGkaGlaGmaGnaGhaGoaGpaBlaBnaGqaDuaGraGsaGtaGuaGvaGwaBtaGxaERaERaERaERaERaERaGyaGzaEUaGzaGAaGzaGzaGzaGzaFbaGzaDGaaaaCPaGBaGCaGCaGDaGEaCPaaaaAqaAraAsaGFaGGaGHaGIaGJaAsaszaGKaAvaAvaFuaGLaGMaGNaGOaAvaAvaAGaAGaAIaGPaAIaBOaoVaBPaiMapaasKasKasKasKasKaGQaGRaGSaGTaGUaGVaGVaGVaGVaGVaGWaBXaGXaGYaGZaEgaEhaDpanianianianianianianianianianianianianiaHaanianianianiaCfaHbaHcaHdaHeaHdaHfaHgaHhaHiaHjaHkaHkaHkaHkaHlaHmaHnaHlaHlaHlaHlaHlaHlaHlaHoaHpaHqaEFaEFaEFabhabhabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEIaHraHraEGaGhaHsaGhaHsaGhaHsaGhaHsaGhaGoaHtaBlaBnaHuaDuaHvaHwaHxaHyaHzaHAaBtaHBaERaERaERaERaERaHCaBtaHDaHEaHFaHGaGzaGzaGzaHHaHIaHJaDGabhaCPaHKaHLaHMaHNaHOaCPabhaAqaHPaAsaHQaHRaGHaHSaHTaAsaszaHUaAIaHVaAGaHWaHXaHYaAGaHZaAIaIaaIbaAIaHXaAIaIcaqOaIdaiMapaapaapaapaapaapBavCavDaBXaIeaIfaBXaIgaBXaIhaBXaIiaBXaIjaIkaIlaImaInaIoaIpaIqaIraIsaItaIuaIuaIuaIuaIvaIwaIuaIuaIxaIyaIzaIAaEsaIBaICaIDaIEaIFaIEaIGaIHaHkaIIaIJaHkaIKaILaIMaHlaINaIOaHlaIPaIQaIRaISaITaIUaIVaIWaIXaIYaIZaJaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaJbaJcaJcaJcaJcaJcaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEIaGhaGhaJeaGhaHsaGhaHsaJfaHsaGhaHsaGhaGoaHtaBlaBnaJgaDuaDuaJhaJiaJjaJiaDuaBtaBtaBtaBtaJkaERaJlaJmaBtaJnaEUaGzaGzaGzaJoaGzaGzaFbaJpaDGaaaaCPaCPaJqaJraJqaCPaCPaaaaAqaAraAsaJsaJtaJuaJvaJwaAsaszaJxaAIaJyaAGaJzaHXaJAaAGaJBaAIaDiaDiaAIaJCaAIaJDaJEaJFaiMapBaiMaiMaiMaiMaiMaJGaJHaBXaJIaJJaBXaJKaBXaJLaBXaJMaBXaJNaJOaJPaEgaJQaJRaJSaJTaJUaJUaJVaJWaJUaJXaJYaJZaKaaKbazEazEazEaKcaKdaKeaKfaKgaoBaKhaKhaKhaKiaKjaHkaKkaKlaKmaKnaKoaKpaHlaKqaKraHlaKsaKtaKuaKvaITaKwaHoaHpaGcaKxaKyaJaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaJbaKzaKAaKBaKCaKBaKDaKzaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEIaKEaKEaEGaGhaHsaGhaHsaGhaHsaGhaHsaGhaGoaHtaBlaBnazSaKFaKGaKHaKGaKIazSaKJaKKaKLaKMaBtaKNaERaERaKOaBtaKPaEUaGzaKQaKRaKSaKTaKUaKVaKWaDGaaaabhaaaaKXaKYaKXaaaabhaaaaAqaAraAsaKZaLaaLbaHSaLcaAsaszarBaAIaLdaAGaHXaHXaHXaLeaLfaAIaaaaaaaLgaLhaLiaLjaLkaLlaLmaLnaLgaaaaaaaLoaLpaLqaLraBXaLsaJJaJJaJJaLtaJJaJJaJJaBXaEgaLuaEgaEgaEgaDpaLvaLwaLwaLxaLyaLzaLwaLAaLBaLBaLCaLDaLEaLBaLFaKhaKhaLGaKiaKhaKhaKhaLHaLIaKiaKjaHkaLJaLKaLLaLMaLNaLOaHlaLPaLQaLRaLSaLTaLUaLVaLWaKwaHoaLXaGcaIYaLYaJaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaJbaLZaMaaMbaMbaMbaMcaMdaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEGaEGaEGaEGaMeaGhaGhaGhaGhaGhaGhaMfaGhaGoaMgaBlaBnazSaMhaMiaMjaMiaMkaMiaMiaMiaMlazSaBtaMmaMnaMmaBtaBtaMoaMpaMoaDEaDEaDEaDEaMoaMqaMraDGaMsaMtaMtaMuaMvaMwaMtaMtaMxaAqaMyaAsaMzaAsaMAaMBaMCaAsatsaqKaAIaAIaAIaDiaGMaDiaAIaAIaAIaLgaLgaLgaMDaLkaLkaLkaLkaLkaMEaLgaLgaLgaLoaMFaLqaMGaBXaBXaBXaBXaBXaBXaBXaBXaBXaBXaMHaMIaMJaMKaMLaMMaMNaMOaLwaMPaLyaMQaMRaMSaLBaMTaMUaLDaMVaLBaMWaMXaMYaMZaNaaNbaNbaNcaNdaNeaKiaKjaHkaNfaNgaNhaNiaLNaNjaHlaNkaNlaNmaNnaNoaNpaNqaHlaHlaNraHpaGcaKxaKyaJaaaaabhabhabhabhabhabhabhaaaaaaaaaaaaaJbaNsaNtaNuaNvaMbaMcaNwaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaEGaEGaNxaEGaEIaEIaEIaEIaEGaEHaEGaEGaxeaNyazSaNzaNAaNBaNCaNDaNEaytaNFaNGazSaNHaNIaNJaNJaNKaNJaNJaNLaNJaNJaNJaNJaNJaNJaNMaNNaNOaNPaNQaNRaNRaNSaNRaNRaNRaNRaNTaNUaNVaNWaNRaNXaNRaNYaJEaNZaOaaObaOcaOdaLmaLmaLmaLjaLkaLkaOeaLkaLkaOfaOgaOhaOiaOjaOkaOlaLkaLkaOeaOmaOnaOoaOpaOqaOraOsaOtaLkaOuaLkaEgaOvaOwaMIaMIaMIaOxaOyaOzaOAaOBaLwaOCaODaMSaOEaOFaLBaOGaMUaOHaOIaLBaLBaOJaOKaOLaOMaONaOOaOPaOQaORaKiaKjaHkaOSaOSaOTaOUaOSaOSaHlaOVaOWaHlaOXaNqaNqaNqaHlaOYaOZaPaaGcaEFaEFaEFaPbaPbaPbaPcaPcaPcabhabhaaaaaaaaaaJbaJbaJbaJbaJbaJbaPdaPeaJbaJbaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBlaBmaBlaBlaBlaBlaBlaBlaBmaBlaaaaxeaDtaPfaNzaPgaPhaPiaPjaPkaytaPlaNGaPmaKFaNIaPnaPoaPpaPqaPraPsaNJaNJaNJaNJaNJaNJaNJaNNaNJaNIaPtaNJaNJaPuaPvaPwaPwaPwaPxaPyaPwaPzaPwaPAaPwaPBaPCaPDaPEaPFaLkaLkaLkaLkaLkaLkaLkaLkaOeaLkaLkaPGaPHaPIaPJaPKaPLaPMaLkaLkaOeaLkaPNaLkaLkaLkaLkaLkaLkaLkaPOaLkaEgaPPaMIaMIaPQaPRaPSaPTaPUaPVaPWaLwaPXaPYaPZaLwaLwaLBaQaaMUaQbaQcaQdaLBaKhaKhaQeaKhaKhaKhaQfaQgaQfaKiaKjaHkaQhaOSaOSaQiaOSaQjaHlaHlaHlaHlaHlaHlaHlaQkaHlaHoaHoaHpaGcaQlaQmaEFaQnaQoaQpaQqaQraPcabhaaaaaaaaaaaaaJbaQsaQsaQsaJcaQtaMbaQuaQvaQwaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxeaCraxeaBlazQaBlaQxaQyaQzaQAaBlazQaBlaBlaxeaBnazSaNzaQBaQCaPiaPjaPkaytaQDaNGazSaKFaNIaNJaQEaQFaQFaQFaQGaQHaQIaQFaQJaQFaQFaQFaQKaQFaQLaQFaQFaQFaQMaQNaQOaQPaQPaQQaQRaQSaQTaQUaQVaQWaQXaQYaQZaRaaLkaRbaRbaRbaRcaRbaRbaRbaRbaRdaRbaRbaRbaRbaRbaRbaRbaRbaRbaRbaRbaReaRbaRbaRbaRbaRbaRbaRbaRbaLkaLkaLkaEgaRfaRgaRgaRgaRgaRgaRhaMMaRiaOBaLwaLwaRjaLwaLwaRkaLBaRlaRmaRnaQcaRoaLBaKhaRpaRqaRraRsaRraRraRtaRuaKiaKjaHkaRvaRvaRwaRxaRyaRyaRzaHkaRAaRBaRCaEFaRDaIYaREaHoaHoaRFaRGaEFaRHaEFaRIaRJaRKaRLaRMaPcaPcaPcaPcaPcaPcaJbaRNaROaROaRPaMbaMbaMbaMbaQuaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaRQaRQaRQaRRaytayuaytaBlaBmaBlaBnazSazSaBoaBlaBmaBlaRSaRTaRUazSaNzaRVaRWaNCaRXaNEaytaRYaNGazSaRZaRZaRZaSaaSbaSbaSbaSbaSbaSbaScaSdaSbaSeaSbaSbaSbaSfaSgaShaSgaSiaSjaSkaNJaNJaSlaSmaSnaNJaSoaSpaNJaSqaSqaLkaSraOdaLgaLgaLgaLgaLgaLgaLgaLgaSsaStaSuaSvaSuaSuaSuaSwaSuaSxaSuaSyaSsaLgaLgaLgaLgaLgaLgaLgaLgaLjaLkaLkaLwaSzaSAaSBaSBaSBaSBaSBaMMaSCaSDaLwaSEaSFaSGaLBaLBaLBaLBaSHaLDaLBaLBaLBaLBaRraSIaSJaSJaSJaSJaSKaRraKiaKjaHkaSLaOSaRwaRxaOSaOSaSMaHkaSNaSOaSPaEFaHoaKxaSQaSRaSRaSSaSTaSUaSVaEFaSWaSXaSYaSZaSZaTaaTbaTbaTcaTbaTdaTeaROaTfaTfaJcaTgaThaTiaMbaQuaJcaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaTjaTkaTlaTmaTnazPazQazPaToazSaTpaRUazSazSaTqaTpazSaToaRUazSazSazSaTraTsaTtaTuaTvaTwaTwaTxaTyazSaRZaTzaRZaTAaSbaTBaTCaTDaTEaTFaTCaTGaTHaTIaTJaTKaTLaSfaTMaTNaTOaSiaTPaSkaSkaTQaSkaSkaSqaSqaTRaTSaSqaSqaSqaTTaLkaOdaLgaaaaaaaaaaaaaaaaaaaaaaSsaTUaTVaTWaTXaTYaTZaUaaUbaUcaUdaUeaSsaaaaaaaaaaaaaaaaaaaaaaLgaLjaLkaUfaUgaUhaSBaUiaSBaSBaSBaSAaMMaSCaUjaUkaSBaUlaUmaLBaUnaUoaUpaUqaUraUsaUtaUuaLBaRraUvaUwaUwaUwaUwaUxaRraKiaUyaHkaUzaUzaRwaRxaUAaUAaUBaHkaHkaUCaHkaEFaUDaIYaREaUEaUFaRFaRGaEFaEFaEFaPcaUGaUHaPcaPcaPcaPcaPcaPcaPcaUIaJbaJbaJbaJbaUJaTiaTiaTiaMbaQuaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaRQaRQaRQaRRaytaUKayvaULaUMaUMaUMaUMaUMaUMaUMaUMaULaUMaUNazSazSaKFazSaUOaUPazSaUQazSaURaUSaUTaRZaUUaRZaTAaSbaUVaTCaTCaTCaTCaTCaTGaUWaTCaTCaTCaTLaSfaUXaTNaTNaSiaTPaSkaUYaUZaUZaVaaSqaVbaVcaVdaVeaVfaVgaLkaLkaOdaLgaaaaaaaaaaaaaSsaSsaSsaSsaVhaViaVjaVkaVlaVmaVnaVoaVpaVqaVraSsaSsaSsaSsaaaaaaaaaaaaaLgaLjaLkaLkaVsaSBaVtaVuaVvaVwaVxaVyaVzaSCaUjaVAaSBaVBaSBaVCaVDaVEaVFaVGaVHaVIaVJaVDaVKaVLaVMaUwaVNaVOaUwaVPaRraKiaKjaHkaOSaOSaRwaRxaOSaOSaOSaVQaVRaOSaVSaEFaNraVTaVUaUEaUEaVVaVWaVXaEFaVYaVZaSXaSYaSZaSZaWaaTbaTbaTbaTbaWbaWcaMbaWdaMbaMbaMbaMbaMbaMbaWeaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxeaxeaxeaxeaBlaBlaBlaBlaBlaBlaBlaBlaxeaxeaytaKFaWfaWgaWgaWhaWgaWgaWgaWgaWiaWgaWjaRZaUUaWkaWlaSbaWmaTCaWnaWoaWpaWqaWraWsaWtaTCaTCaWuaSfaWvaWwaWxaSiaTPaSkaWyaWzaWAaWBaSqaWCaWDaVdaWEaWFaVgaLkaLkaOdaLgaLgaWGaSsaSsaSsaWHaWIaWJaWKaWLaWMaWNaWOaWMaWPaWMaWQaWRaWSaWTaWUaWVaSsaSsaSsaWGaLgaLgaLjaLkaLkaLwaWWaSBaWXaSBaWYaSBaSAaSBaSCaUjaWZaXaaSBaXbaLBaVDaVDaXcaXdaXeaXfaXgaVDaXhaXiaXjaUwaXkaXlaUwaXmaXnaKiaKjaHkaXoaXoaRwaRxaXpaOSaOSaXqaOSaXraXsaEFaXtaXuaXvaUEaUEaXwaXxaHoaEFaXyaSZaSXaSYaSZaRMaPcaPcaPcaPcaPcaPcaJbaThaMbaXzaXAaMbaXzaXAaMbaXBaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXCaXDaXCaXCaXEaXCaXCaXDaXCaaaaBlaCtaBraXFaWgaXGaXHaXIaXJaXIaXKaXLaXIaWjaUUaUUaXMaXNaSbaXOaXPaXQaXRaXSaXTaXUaXVaXWaXXaXYaTLaSfaSfaSfaSfaSiaTPaSkaSkaSkaSkaSkaSqaXZaYaaYbaWEaYcaVgaLkaLkaOdaLmaLmaYdaYeaYfaSsaYgaYhaYiaYjaYkaYjaYlaYmaYnaYoaYpaYqaYraYpaYsaYtaYuaSsaYvaYeaYwaYxaLmaLjaLkaLkaVsaSBaSBaSAaSBaYyaSBaYzaSBaSCaUjaVAaSBaSBaSBaYAaVDaVDaYBaYCaYDaXdaXgaYEaLBaYFaXjaYGaUwaUwaUwaXmaYHaKiaYIaHkaHkaHkaRwaRxaYJaYKaOSaYLaYMaNhaYNaEFaHoaVTaVUaUEaUEaYOaVWaYPaEFaYQaSZaSXaSYaSZaRMaPcaaaabhabhabhaaaaJcaThaMbaXzaXAaMbaXzaXAaMbaXBaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYRaYSaXCaXCaYTaYTaYUaYUaYUaYTaYTaXDaYVaBlaBlaBnazSaWgaYWaYXaYYaXGaYZaZaaXLaXIaWjaZbaZcaZdaRZaSbaZeaZfaZgaZhaZiaZiaZjaZiaZiaZiaZkaZlaSbaZmaZnaZoaZpaZqaZraZsaZtaZuaZvaZvaZvaZvaZvaZvaZvaZvaLkaLkaLkaLkaLkaZwaZxaZyaZzaZAaZBaZCaZDaZEaZFaZGaZHaZIaZJaZKaZLaZMaZNaZCaZOaZPaZQaZRaZSaZTaZUaZVaZWaLkaLkaLwaZXaSAaZYaSAaSBaVtaZZaVvaSCaUjaVAaVAbaababaLBaVDaVDaVDbacbadbadaXgbaeaLBaRraXjaUwaUwaUwaUwaXmaRraKibafbagbahbaibajbakbalbalbamaRwaRwaRwaRwbanaUEaUEaUEaUEaUEbaobapbaqbarbasbatbaubavaRLbawaPcabhabhaaaabhabhaJcaThaMbaXzaXAaMbaXzaXAaMbaXBaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYRbaxaYUaYUbayaYUaYUaYUbazaYUaYUaYUbaAbaBazQbaCazSazSaWgbaDbaEbaFbaGbaGbaHbaIbaJaWjbaKaUUaZdbaLbaLbaLbaMbaNbaLbaObaPbaQbaRbaSbaSbaTbaUaSbbaVbaWbaXbaYbaZbbabaXbbbbbcbbdbbebbfbbgbbhbbibbjaZvaLkaLkbbkbblbbmbbnbbobbpaSsbbqbbrbbsbbtbbubbvbbvbbwbbxbbybbzbbAbbBbbCbbsbbDbbqaSsbbpbbobbEbbFbblbbGaLkaLkaVsaSBaSBaSAaSBaSBaSBbbHaSBbbIaSBbbJbbKaSBaSBbbLbbMbbNaVDaVDbbOaVDbbPbbQaLBbbRbbSaUwbbTbbTbbUbbSbbVbbWbbXbbYbbYbbZbcabcbaRwaRwbccaRwaRwaRwaRwbanbcdbcebcebcebcebcebcfbcgbchbcibcjbckbclaSZbcmaPcaaaabhabhabhaaaaJcaThaMbaXzaXAaMbaXzaXAaMbaXBaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaYRbcnaXCaXCbcobcoaYUaYUaYUbcobcoaXDaBlaBlaBlaBnbcpbcqbcrbcsbctbctbctbctbcuaXGaWjbcvbcwaZdbaLbcxbcybczbcAbaLbcBbcCbcDaSbbcEbcFbcGbcHaSbbcIbcJbcKbcLbcKbcMbcNbcOaZvbcPbcQbcQbcRbcSbcTbcUaZvaOeaOebcVbcWbcWbcWbcWbcWbcWbcXbcYbcWbbubbwbcZbdabdabdbbdabdabdcbbybbBbddbdebdfbddbddbddbddbddbddbdgaOeaOeaLwbdhbdibdjbdkaSBaSBaSBbdlbdmbdnbdobdpbdqaSBaLBaLBaLBbdrbdsbdsbdsaLBaLBaLBbdtaUwaUwbdubdvbdwbdxbdvaKibdybdzbdAaHkbdBbdCbdDaYKaOSbdEaXqaYKbdFaEFbdGaHobdHaUEaUEbdHaHobdIaEFbdJbdKbdLaSYaSZaRMaPcaPcaPcaPcaPcaPcaJbaThaMbaXzaXAaMbaXzaXAaMbaXBaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaXCaXDaXCaXCbdMaXCaXCaXDaXCaaaaBlbdNaRUbdOaWgaXIaYXaXIaXGbdPaXIbdQaXIaWjbdRbdSbdTbaLbaLbaLbdUbdVbaLbcCbdWbcCaSbbcEbcFbcGbcHaSbbcIbcJbdXbdYbcKbdZbcNbcOaZvbeabcQbcQbebbecbcQbedbeeaLkaLkbbkbcWbefbegbehbeibejbekbelbembenbeobdabdabepbeqbepbdabdaberbesbetbeubevbewbexbeybezbeAbddbbGaLkaLkaLwaLwaLwaLwaLwbeBaVsbeBbeCaLwaLwaLwaLwaLwaLwaLBbeDbeDbeDbeDbeDbeDbeEbeDaLBbdvbeFbeFbdvbdzbdzbdzbdzaKibdybdzbdAaHkaHkaHkbeGaHkbeGaHkbeGaHkaHkaEFaEFbeHbeHbeHbeHbeHbeHaEFaEFbeIaSZbeJaSYaSZaSZbeKaTbaTbaTbaTbaWbbeLaMbbeMaMbaMbaMbaMbaMbaMbaWeaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhaxeaxeaBlaBlaBlaBlaBlaBlaBlaBlaxeaxeaytazSazSaWgaWgaWhaWgaWgaWgaWgaWiaWgaWjbeNbeObePbaLbcxbeQbdUbeRbaLbeSbeTbeSaSbbcEbcFbcGbcHaSbbcIbcJbcKbeUbeVbeWbcNbcObeXbcTbeYbeZbfabfbbcQbedbfcaLkaLkbbkbfdbfebejbffbfgbfgbfhbfibfjbenbfkbdabdabepbflbepbdabdabfmbesbfnbfobfpbfqbfrbfsbeAbftbddbbGbfubfvaJEbfwbdzbdzbdzbdzbdzbdzbdzbdzbfxbdzbdzbdzbdzbfybdzbdzbdzbdzbdzbdzbdzbdzbfwbdzbdzbdzbdzbdzbdzbdzbfzbfAbfBbfCbdzbfDbdzbdzbdzbdzbdzbdzbdzbdzbdzbfybfEbdzbdzbdzbdzbdzbdzbfwbfFaVZaSZbfGbfHbfIbfJaPcaPcaPcaPcaPcaUIaJbaJbaJbbfKaJbaPeaJcbfLaJcaJcaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaBlaywayxayxayxayxayxayxayxayxaywayxbfMazUazUbfNbfObfPbfQbfQbfQbfRbfSbfTaRZbfUbfVbfWbaLbaLbaLbfXbfYbaLaSbaSbaSbaSbbcEbcFbfZbgaaSbbcIbcJbcKbgbbgcbgdbgebgfbggbghbghbghbgibgjbcTbgkaZvbglaPNbbkbgmbgnbejbgobgpbgqbgrbgsbgtbenbgubepbdabgvbgwbgvbdabepbdcbesbgxbfobfpbfqbgybfsbeAbeAbddbgzaLkaLkaJEbfwbdzbdzbdzbdzbdzbdzbdzbdzbdzbgAbdzbdzbdzbdzbdzbgBbbYbbYbbYbbYbgCbdzbfwbdzbdzbdzbdzbdzbdzbgDbgEbgFbgGbgHbgHbgHbgIbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgHbgJbgKbgLbgMbgMbgNaSYbgOaSZbgPaTbaTbbgQaTbbgRbeLbgSbgSbgSbgTaJbaQvaQuaQubgUaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaBlazRazSazRaBrazSazSbgVazRazSazRaBrazSazSazSbgWbgXbgWbgWbgWbgWbgYbgZaRZaRZaRZbhaaZdbaLbcxbhbbhcbeRbaLbhdbhebhdaSbaSbaSbbhfbhgaSbbcIbcJbhhbhibhjbhkbcNaRZaZvaZvaZvaZvaZvaZvaZvbhlaZvbhmaLkbbkbgmbhnbejbgobhobhpbgrbgsbejbenbhqbhrbdabhsbhtbhubdabhvbhwbesbhxbhybhzbhAbhBbhCbeAbhDbddbhEbhFbhGaJEbfwbdzbdzbhHbdzbhIbhJbhJbhJbhJbhKbhJbhJbhLbdzbdzbdzbdzbdzbhMbhNbhObhPbfwbdzbdzbdzbdzbdzbhQbhRbhSbhTbhUbdzbdzbdzbdzbdzbhVbhWbdzbdzbdzbdzbdzbdzbdzbdzbdzbdzbdzbdzbdzbfwbhXbhYbhZbiaaSYaSZaRMaPcaPcaPcaPcaPcaPcaJbbgSbgSbgSbgSaJbaQuaQuaQubibaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaytaBlbicaBlaBnazSazSaBoaBlbidaBlaBpbiebifbifbgWbigbihbiibijbikbgYbilbimbinbinbiobipbaLbaLbaLbiqbirbaLaRZaRZaRZaRZbisbitbiubivbitbiwbcJbixbiybcKbcMbcNbizbcNbiAbiBbiBbiBbiBbiCbiDbiEbiFaLkbbkbcWbejbiGbiHbiIbiJbiKbgsbiLbiMbbvbiNbiObiPbiPbiPbiQbiRbbAbiSbiTbiUbiVbiWbiXbiYbeAbiZbddbbGaLkaLkbjabjabjabjabjabjabjabjbbjcbjcbjcbjdbjebjbbjfbjfbjfbjfbjfbjgbjgbjgbjhbjgbjgbjgbjgbjibdzbhVbjjbjkbjlbjmbdzbdzbdzbjnbjnbjobjobjobjobjobjpbjqbjqbjqbjrbjqbjsbjtbjqbjqbjubjvbjvbjvbjvbjwbjxbjybjzaPcabhaaaaaaaaaaaaaJbbjAbjAbjBbjBaJbaQvaQuaQubgUaJcaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaCraxeaCsazQaBlaCtaCubjCbjDaBlazQaCsaBlaxeaCraytbgWbjEbjFbjFbjFbjGbjHbjIbjJbitbitbjKbjLbaLbcxbjMbiqbjNbaLbjObjOaUUbjPbjQbjRbjSbjTbjTbjUbjVbjWbcLbjXbjYbcNaUUbjZbkabiEbkbbkcbkdbkebkfbkgbkhbkibkjbcWbkkbklbkmbknbkobkpbgsbkqbcWabhbkrbksbksbksbksbksbktabhbddbkubkvbkwbkxbeAbkybeAbkzbddbbGaLkbkAbjabkBbkCbkDbkEbkFbjabkGbkHbkHbkHbkIbkJbkJbkKbkLbkMbkNbjfbkObkPbkQbkRbkPbkSbkTbjgbjkbkUbjkbjkbjkbkVbkWbkXbkYbkXbkZbkZbjoblablbblcbjobldblebldbjoblfblgblfbjvblhbliblhbjvbljblkbjvbllblmaPcaPcaPcabhabhaaaaaaaaaaJbaJbblnblnblnblnblnblnblnaJbaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaabhabhabhabhaBlbloaBlaBlaBlaBlaBlaBlblpaBlabhabhabhaaabgWblqbgWblrbjFblsbltbgWaUUaWkblublvblwblxblxblxblxblxblxblyblzblAblBblCbcNbcNbcNbcNbcNbcNbcNblDblEbcNbcNbcNblFblGblHblIblJblKblJblLblMbiFaLkblNbcWblObklbklbklbklbkpbgsblPbcWabhbkrbksblQblRblSbksbktabhbddblTbfoblUblVbeAbiYbeAbeAbddbbGaLkaLkbjablWblXblYblYblZbmabkJbmbbkJbkJbkIbkJbkJbkKbmcbmdbmebjfbmfbkPbmfbmgbmfbmhbkPbjgbmibmibmjbmkbjkbmlbkWbmmbmnbmobmpbmpbjobmqbmrbmsbmtbmubmvbmwbjobmxbmybmzbjvbmAbmBbmAbmCbmDbmDbjvbmEblmaaaabhaaaabhaaaaaaaaaabhaaaaJbbmFbmFbmFbmFbmFbmFbmFaJbaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGaaaaaaaaaaaaaaaaaabmGbmHbmGbmGbmGbmGbmGbmGbmIbmGaaaabhabhaaabgWbmJbmKbmLbmMbmMbmNbmObmPbmQaRZbmRbmSbmTbmTbmTbmUbmUbmUbmUbmUbmUbmVbmWbcNbmXbmYbmZbnabnbbncbndbnebcNbnfbngbnhbiEbiEbnibnjbnkbnlbnmbnnbnobnpbbkbnqbnrbnsbntbnubklbnvbgsbcWbcWabhbkrbksblRbksblRbksbktabhbddbddbnwbfpbnxbeAbnybnzbnAbddbbGaLkaLkbjabnBblXbnCbnDbnEbnFbkJbnGbnHbnIbnJbnKbnLbkKbnMbnNbnObjfbmfbkPbmfbmgbmfbmhbnPbjgbnQbnRbnSbnTbjkbkVbkWbnUbnVbnVbnWbnXbnYbnZboabobbmsbmsbmsbocbjobodboebofbjvbogbmDbmDbohboibojbjvbmEblmbokbokbokbokabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabolbmGbmGaaaaaaaaaaaabmGbmGbombombonboobombombombombmGaaaabhabhaaabgWbopbgWboqborborbosbgWbotbotaRZboubovboubouboubovbouaRZaRZbcNbcNblEbowbcNbnbbnbbnbbnbbnbbnbboxboybozboAboBboCboDboEboFboEboGboHboIblMbiFboJboKboLboMboNboOboPbklbkpbgsbcWabhabhboQboRblSboSblQboTboUabhabhbddboVboWbddbddbddbddboXbddboYaLkaLkbjaboZbpabpbblYblZbpcbkJbpdbpebpfbpgbphbpibjfbpjbpkbplbjfbmfbkPbmfbmgbmfbmhbkPbjgbjkbjkbjkbjkbjkbkVbkWbpmbpnbpobppbpqbprbpsbptbpubpubpvbmsbpwbjobpxboebpybjvbpzbpAbpBbpCbpDbpEbjvbmEbpFbpGbpHbpIbpJaaaaaaabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbpMbmGaaaaaabmGbmGbmGbombombombombombombombpNbmGbmGbmGabhaaabgWbpObmKbpPborbpQbpRbgWaaaaaaaaabpSbpSbpSbpSbpSbpSbpSaaaaqzbpTbpUbpVbpWbpXbpYbnbbnbbnbbpZbnbbnbbqabqbbqcbnjbqdbqebqfbqgblMbqhbiEbiEbiEbqibqjaOebnqbqkbqlbqlbqlbqlbqmbqnbqoabhaaabkrbqpbksbksbksbqqbktaaaabhbddbqrbqsbqtbqubqvbqwbqxbqwbqyaLkbqzbjabqAbqBbqCbqDbqEbjabqFbpdbpebqGbqHbkJbqIbjfbqJbqKbqLbjfbqMbqNbqObqPbqQbqRbqQbqSbqTbqUbqTbqTbqTbqVbkWbqWbmnbqXbqYbqZbrabrbbrcbrdbrdbrebrfbrgbjoblfbrhbribjvbrjbrkbrlbrmbmDbrnbjvbrobrpbrqbrrbrrbrrbrrbrrbrrbrsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbrtbpMbmGbmGbmGbrubmGbrvbombombombombombombombrwbrxbryabhaaabgWbrzbmKbmKbmKbgWbgWbgWaaaaaaaaabpSbrAbrAbrAbrAbrAbpSaqzaqzbpTbrBbrCbrDbrEbrEbrEbrEbrEbrEbrEbrEbrEbrFbrGbrHbrIbrJbrKblMbrLblJbrMblJbrNbiFbrObrPbnqbnqbqobrQbrRbrSbrTbrUbqoaaaaaabkrbrVbrWbrXbrWbrYbktaaaaaabddbrZbsabsbbqwbscbqwbqxbqwbqyaLkbsdbjabsebqBbsfblYbsgbjabshbsibsjbskbslbkJbsmbjfbkKbsnbsobjfbjgbspbjgbsqbsrbssbstbstbstbstbstbstbstbsubsvbswbpnbpobsxbsybszbsAbsBbsBbsBbpvbmsbsCbsDbsEbsFbsGbsHbsIbsJbsKbsLbsMbsNbjvbsObsPbsQbsRbsRbsRbsRbsRbsSblmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbrtbrtbmGbmGbrubombmGbrvbombombombombombrubmGbmGbmGbmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbpSbsTbpTbpTbsUbrCbndbnbbsVbsVbsVbsVbnbbnbbnbbnbbsWbsXbsYbsZbtabtbbtcbtdbteblJblJbrNbtfbtgbthbtibtjbtkbtlbtmbtnbtobtpbqoabhaaabkrbtqbtrbtrbtrbtsbktaaaabhbddbttbtubtvbqwbtwbqwbqxbqwbtxaLkbsdbjabtybqBbtzbtAbtBbjabtCbpdbkIbskbtDbtEbshbshbtFbtGbtHbtIbtJbtKbtLbtMbtNbtObtPbtQbtRbtSbtTbtUbtVbkVbtWbtXbtYbtZbuabubbjobucbsBbsBbudbpvbmsbuebufbugbuhbuibsHbujbukbulbumbmDbunbuobupbjvbuqbuqbuqbuqbuqbuqbmEblmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaburbmGbpMbrtbusbombutbombmGbrubuubombombombrubmGbrubuvbuvbrubmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbuwbuxbuybuxbuzbuAbuBbuCbuDbnbbnbbnbbnbbnbbuEbcNbcNbuFblJbuGbuHbuIblMbuJblJbuKblJbuLbqybrObuMbuNbuObuPbuQbuRbuSbtobuTbqoaaaaaabkrbuUbuVbuWbuVbuXbktaaaaaabuYbuZbvabuYbuYbuYbuYbvbbuYbvcaOebvdbjabjabvebvfbvgbjabjabvhbvibvjbkJbkJbkJbkJbkJbvkbvlbvmbvmbvmbvnbvmbvobtNbtObvpbvqbvrbvsbvtbvubtVbvvbvwbvxbvybvybvzbvAbjobvBbmsbmsbvCbpvbmsbvDbvEbvFboebvGbsHbsHbvHbvIbvJbvHbsHbjvbjvbjvbvKbvLbvMbvNbvObuqbvPblmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbombombombrubmGbmGbmGbmIbmGbmGbrubombvQbvQbvRbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbvSbvTbvUbvVbvWbnbbndbnbbsVbsVbvXbsVbnbbnbbvYbvZbcNbwablJbuGbuHblJbwbblJblJbwcblJbuLbqybwdaLkbuNbwebwfbwgbwhbwhbwibwjbqoabhabhbwkbwlbwmbwnbwobwpbwqabhabhbwrbwsbwtbwubwvbwwbwxbwybuYbwzaLkbwAbwBbwCbwDbwEbwFbwGbwHbwIbwJbwKbwLbwLbwLbwLbwLbwMbwNbwLbwLbwLbwObnLbwPbwQbtObwRbwSbwTbwTbwUbtUbtVbkVbkWbwVbwWbwXbwYbwYbjobwZbxabxbbsDbxcbmsbxdbsDbxebxfbxgbxhbxibxjbxkbxlbxmbxnbxobxpbxqbxrbxsbxsbxsbxtbxubxvblmaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbrubombmGbombombombombombombombombrubmGbombombombombombxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbxxbpSbsTbpTbpTbxybnbbndbnbbnbbnbbnbbnbbnbbnbbvYbxzbcNbxAbxBboFbxCboEbxDboEbxEblJbxFbrNbxGbwdaLkbuNbuObqobxHbxIbxJbxKbxLbqoaaaaaaabhbkrbxMbxNbxMbktabhaaaaaabwrbxObxPbxQbxRbxSbxSbxTbxUbxVbxWaPDbxXbxYbxZbyabybbycbydbycbycbyebyfbygbyhbyhbyhbyibkJbkJbkJbyjbykbykbylbtObtObtObymbynbyobvtbtUbtVbjlbkWbkXbkXbkXbkXbkXbjobsDbsDbsDbsDbypbyqbypbsDbyrbysbytbyubyubyubyvbywbyxbyybyzbyAbyBbyCbyDbyEbyFbyGbyHbyIbyJbokbyKbyKbokabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbmGbmGbmGbmGbmGbmGbmGaaabmGbmGbrubombombombmGbombombmGbmGbmGbyLbmGbombombmGbombombombombombxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbyMbvTbvUbvVbrBbyNboxbyObpYbnbbyNbnbbnbbnbbvYbyPbcNbyQblJbuGbyRbuJbySbyTblJblJbyUbrNbxGbwdbbkbuNbyVbqobyWbyXbyYbyZbrUbqoaaaaqzabhbzabzbbtrbzcbzdabhaqzaaabwrbzebzfbzgbzhbzibzjbzkbuYbzlaLkaLkbshbshbzmbznbvkbzobzpbzqbzrbzrbzqbzpbzqbzpbzqbzpbzqbzpbjebjebykbzsbwTbztbzubtObymbzvbzwbzxbzybtVbzzbzAbzBbzCbzDbyubyubzEbyubyubzFbzGbzHbzIbzJbyubzKbzLbzMbzNbzNbzNbzObzObzObzObzPbzQbzRbzSbzTbzSbzUbzSbuqbzVbzWbzXbzYbzZbokabhaaaaaaaaaaaaaaaaaaabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbrubombombombombombombombrubmGbmGbmGbrubombombombombxwbombombmGbAabAbbombmGbombombxwbombombombAcbAdbxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbAebAfbAgbAfbAhbAibAhbAhbAhbAhbAhbAjbAkbnbbvYbAlbcNbAmbAnbAobApbAqbArbAsbAsbAsbArbArbAtbwdaMEbAubuObqobAvbAwbAxbAybAzbqoaaaaaaabhbAAbABbwnbACbADabhaaaaaabwrbAEbAFbAGbAHbzibzjbzkbuYbAIaLkaLkbAJbAKbALbznbAMbANbzpbAObAPbAQbARbASbATbAUbAVbAUbAWbzpbkJbkJbykbAXbwTbAYbAZbBabBbbBcbBdbBdbBebBfbBgbBhbBibBjbBkbBlbBmbBlbBlbBnbBlbBlbBobBpbBlbBlbBqbBrbBsbzNbBtbBubBvbBwbBxbBybzPbBzbBAbBBbBCbBDbBAbBEbuqbzVblmbBFbBGbBHbokaaaaaaaaaaaaaaaaaaaaaabhbBIabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmIbombombombombombombombombombmIbombmIbombombombombombBJbombombmGbombombombmGbombombBKbombombombBLbBMbxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbrAbrAbrAbrAbrAbpSbsTbpTbpTbpTbcNbpTbpTbpTbBNbBNbBNbBNbBObBPbBPbBNbBNbBQbBRbBSbBQbArbBTbBUbBVbBWbArbxGbwdaOdaLoaLobqobqobqobqobqobBXbqoaLgaLgaLgbBYbBZbxNbCabCbaLgaLgaLgbuYbuYbuYbuYbuYbuYbuYbuYbuYbAIaLkbCcbzpbzpbCdbCebzpbzpbzpbCfbAPbCgbAPbChbCibCjbCkbClbCmbChbkJbkJbykbCnbCobCpbCqbCrbCsbCtbCqbCqbCubCvbCwbCxbCybCybCybCybCzbCybCybCybCAbCAbCBbCCbCDbCDbvFbCEbvGbzNbCFbCGbCHbCIbCJbCKbzPbuqbuqbCLbCLbCLbuqbCMbuqbzVblmbCNbBGbCObokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbrubombombombombombombCPbrubmGbmGbmGbrubombombombombxwbombombmGbombCQbombmGbombombxwbombombombAcbAcbxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbCRbrAbrAbrAbCRbpSaqzaqzaqzaqzaqAaqzaqzaqzaqzbBNbCSbCTbCUbCVbCWbCXbBPbCYbCZbDabDbbAsbDcbDdbDebDfbArbxGbwdaLkaLkaLkbDgaOtaOsaOebDhbDibDjaZVaZVaZVbDkbDlbDmbDnbDoaLkaLkaLkaLkaOtaLkaOeaLkaLkaLkbDgaLkbAIaLkbDpbzpbDqbDrbDsbDtbDubzpbDvbAPbDwbAPbChbCibCibDxbDybDzbChbkJbDAbykbwTbDBbDCbDDbDEbDFbDGbDHbDIbtVbtVbjlbDJbCybDKbDLbDMbDNbDObDPbCybDQbDRbDSbDTbDUbCDbvFbCEbDVbDWbDXbDYbDZbEabEbbEcbzPbEdbEdbEdbEdbEdbEdbEdbuqbzVblmbEebzZbzZbokabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbmGbmGbmGbmGbmGbmGbmGaaabmGbmGbrubombombombmGbombombmGbombEfbEgbmGbombombmGbombombombombombxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpSbpSbEhbEhbEhbpSbpSaaaaaaaaaaaaabhaaaaaaaaaaqzbBPbEibEjbEkbElbEmbEnbEobEpbEqbErbEsbEtbEubDebEvbEwbArbxGbExaLkaLkaLkaLkaLkaLkbEyaLkbwdaLkaLkaLkaLkaLkbEzbEAbEBaLkaLkaLkaLkaLkaLkaLkaOeaLkaLkaLkaLkaPNbAIbECaLkbzpbEDbEEbEFbEGbDubzpbEHbAPbAQbEIbzpbEJbEKbELbEMbENbzpbkJbkJbykbykbykbykbykbtVbtVbtVbtVbtVbtVbEObkVbEPbCybEQbERbESbETbEUbEVbCybEWbEXbEYbEZbFabCDbvFbFbbFcbFdbFebFfbFfbFgbFhbFibzPbEdbEdbFjbFkbEdbEdbEdbuqbzVblmbCNbBGbFlbokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbrubFmbmGbombombmGbyLbmGbmGbmGbombombmGbAcbombombombombxwaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabFnbFobFobFobFpaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzbBNbFqbFrbFsbFtbFubFvbFwbFxbFybFzbFxbFAbFBbFCbFDbFEbArbFFbFGboKboKboKbFHboKboKbFIboKbFJaLkbFKbFLaLkaOmbFMbFNbFObFPbFQbFRaZVaZVbFSaZVbFTbFUaZVbFVbFWbFXbFYaLkaLkbzpbFZbGabGbbzqbzqbzpbzqbGcbzqbzpbzpbzpbzpbzpbzpbzpbzpbkJbkJbkJbGdbGebzobGfbGgbGhbGibGjbGkbGgbGlbsubGmbCybGnbGobGpbGqbGrbGsbCybGtbGubGvbGwbGxbCDbvFbGybGzbzPbGAbGBbGCbGDbGEbGFbzPbEdbEdbEdbGGbEdbEdbEdbuqbzVbzWbGHbBGbBHbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbombombombombombombombombombmGbAcbombombombombmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzbBNbBNbBPbBPbBPbBPbBNbBNbGIbCZbDabGJbArbArbArbArbArbArbGKbGLaLoaLoaLoaLobGMbGMbGMbGMbGMbGMbGMbGMbGMbGMbGNaJEbGObGPbGPbGPbGPbGPbGQbGPbGPbGPbGPbGRbGSbGRaLpaMFbGTbzpbGUbGVbGWbGXbGYbzpbGZbAPbHabHbbHcbHdbHebHfbHgbHhbHbbHibkJbkJbkJbkJbkJbvkbHjbHkbHlbHkbHmbGgbHnbkVbHobHobHobHobHobHobHobHobHobHpbHpbHpbHpbHpbHpbHqbHrbHsbzPbzPbzPbzPbzPbzPbzPbzPbuqbuqbuqbuqbuqbuqbuqbuqbzVblmbHtbHubokbokabhabhabhabqabqabqabqabqabqabqabqabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabolbmGbpMbrtbusbombombombombombombutbombHvbmGbAcbombHwbombrubmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaqzaqzbHxaqzaqzaqzaqAaqzaqzbBQbHybHzbHAbHBbHBbHCbHDbHEbHFbHGbHHbGLaqzaqzaqAaqzbGMbHIbHJbHKbHLbHMbHNbHObHPbGMbHQbHRbHSbGPbHTbHUbHVbHWbHXbHYbHZbIabIbbIcbIdbGRbGRbGRbGRbzpbIebIfbIgbIhbIibIjbIkbIlbImbInbIlbIlbIlbIobAPbIpbIqbIrbyhbyhbIsbItbIubIvbHjbIwbIxbIybIzbGgbHnbkVbHobIAbIAbIAbIBbIAbIAbIAbHobICbICbIDbICbICbHpbIEbIFbIGbIHbIIbIJbIKbILbIMbINbIObIPbIQbIRbIIbISbITbIUbIUbIVbIWbIXbIXbokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbrtbrtbmGbmGbmGbmGbmIbmGbmGbxwbxwbxwbmGbmGbrubIYbrubmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsalsaltalsalsaqzaqAaqzbBQbBQbIZbJabJbbFxbJcbJdbJebJebJfbJgbJhbJiaqAbJjbJkbJlbJmbJnbHPbJobHPbJpbHPbHPbHPbGMbJqbJrbJsbGPbJtbJubJvbJwbJxbJybJzbGPbGPbJAbJBbJCbJDbJEbJFbJGbJHbJIbJJbJKbJLbJMbJNbJObJPbJQbJRbJSbAPbAPbAPbJTbshbshbshbshbshbJUbJVbznbHjbJWbJXbHkbJYbGgbHnbkVbHobIAbIAbIAbIAbIAbIAbIAbHobJZbKabKbbKcbKdbKebKfbKgbIGbKhbKibKjbKjbKjbKjbKjbKjbKkbKlbKmbIIbokbKnbKobKpbKpbKqbKrbKiabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbKsbKtbKsabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbrtbpMbmGbmGbmGbmGbombombombKubombombombombrubmGbmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsbKvbKwbKvalsbKxbKxbKxbBQbKybKzbCZbKAbKzbKBbBQbGLbKCbGLbGLbKDbKEaqzbKFbKGbKHbKIbHPbHPbKJbHPbKKbKLbKMbHPbGMbJqbJrbKNbGPbKObKPbKQbKRbKSbKTbKUbGPbEObKVbKWbKXbKWbKYbKZbJQbLabLbbLcbAPbAQbzpbLdbLebLfbzpbLgbAPbAPbAPbAPbLhbshbLibLjbLkbLlbLmbLnbLobLpbLqbHkbLrbLsbLtbLubLvbHobIAbIAbLwbIAbIAbIAbIAbHobLxbLybLybLzbLAbLBbLCbLDbIGbLEbLFbKjbKjbKjbKjbLGbLHbLHbLHbLHbLIbLJbLKbLLbLMbLNbLObLPbKiabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbKtbKsbLQbKsbKtabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabpKbpLbpMbmGaaaaaabmGbmGbrubLRbombombombombombombuvbmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaltaofbLSaofaltbKxbLTbLUbBQbLVbKzbLWbKzbLXbKBbBQbLYbLZbMabGLbKDbKEaqAbKFbMbbMcbMdbMebMfbMebMebMgbMhbMibMibMjbMkbMlbMmbGPbGPbGPbGPbGPbMnbMobGPbGPbMpbMqbMrbMsbMtbMubMvbzpbMwbMxbMybMzbMAbzpbMBbMCbMDbzpbMEbMFbMGbMHbMIbMJbshbMKbMLbvmbMMbvmbMNbMObMPbMQbMRbMSbMTbGgbHnbkVbHobHobMUbIAbIAbMVbMUbHobHobMWbMXbMYbMYbMZbHpbNabNbbIGbNcbKibKjbKjbNdbNebNfbKjbKjbNgbNhbNibNjbNkbNlbNmbNnbNobNpbKiabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbNqbKtbNrbNsbNtbKtbNqabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaburbmGbmGaaaaaaaaaaaabmGbmGbmGbrubombNubombombrubmGbmGaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsaofaofaofbNvbNwbKzbKzbNxbLVbKzbNybKzbKzbKBbBQbNzbMabNAbGLbKDbKEaqzbKFbNBbNCbNDbHPbHPbNEbHPbNFbNGbNHbNIbGMbNJbNKbNLbNMbNNbNNbNNbNNbNObNPbNNbNNbNQbNRbNSbNTbNUbNVbNWbIjbIjbIjbIjbIjbIjbIjbIjbIjbIjbNXbNXbNXbNXbNXbNXbNYbNZbshbshbshbshbOabObbpdbGgbGgbGgbGgbGgbGgbHnbkVbHobOcbOdbOebOfbOgbOhbOcbHobMWbMXbMYbMYbMZbHpbOibOjbIGbOkbIIbOlbOmbOnbOobOpbOqbKjbOrbOsbIIbOtbOubOvbIXbOwbOxbOxbIXabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhbKtbKtbOybOzbOzbOzbOAbKtbKtabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabmGbmGaaaaaaaaaaaaaaaaaaaaabmGbmGbmGbmGbmGbmGbmGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaltbLSbLSbLSaltbKxbOBbOCbODbOEbKzbOFbOGbOHbOIbBQbGLbGLbGLbGLbKDbOJaqAbOKbJkbOLbJmbOMbHPbONbHPbHPbHPbOObOPbOQbORbOSbOTbOUbOVbOVbOVbOVbOWbOVbOXbOYbOZbPabPbbPcbPdbPebPfbqTbPgbqTbqTbqTbqTbqTbqTbqTbqTbqTbqTbqTbqTbqTbPhbPibshbMKbPjbLmbPkbLmbLnbPlbPmbPnbPnbPobPpbPabPbbPqbHobPrbPsbPtbPubPvbPwbPxbHobHobHobHobHobHobPybPzbPAbPBbPCbIIbIIbIIbIIbIIbIIbIIbPDbKjbKjbIIbokbKnblmbIXbPEbPFbPGbPHaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPIbPJbPIbOzbPKbOzbPLbPMbKsabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsapmbPNbPOalsbKxbKxbKxbBQbBQbKxbKxbKxbBQbBQbBQbPPbGLaqzbPQbPRbKEaqzaaaabhaaabGMbPSbPTbPUbHPbPVbPWbPXbPYbGMbPZbQabQbbQcbQdbQebQfbQgbQhbQdbQdbQdbQdbQdbQibQjbQdbQdbQkbQdbQlbQdbQdbQdbQdbQdbGRbGRbGRbGRbGRbGRbGRbGRbQmbHnbshbQnbQobQpbQqbvmbQrbQsbQtbQubQubQvbQubQubQwbQxbHobQybQzbQAbQzbQzbQzbQBbQCbQDbQEbQFbQGbQHbQIbQJbNbbIGbQKabhbQLbQMbQNbQObQPbQObQQbQRbQSbIIbQTbzVbQUbIXbIXbIXbIXbIXabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhbKtbKtbQVbOzbOzbOzbQWbKtbKtabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzalsalsbQXalsalsaqzaqzaqzaqAachaqAaqzaqAachaqAbPQbMabPQaqAbPQbKDbKEaqAabhabhabhbGMbGMbGMbGMbGMbGMbGMbGMbGMbGMbQYbQabQZbRabQdbQebQfbQgbQhbRbbRbbRcbRdbRebRfbRgbRhbRibRjbRkbRlbRmbRnbRobRpbRqbRrbRsbRsbRsbRsbRsbRtbGRbQmbRubRvbRvbRvbRvbRvbRwbRxbRybRvbRvbRvbRvbRvbRvbRubRzbRAbRBbRCbRDbRCbREbRCbRFbRGbRHbRGbRGbRGbRGbRIbRJbRKbIGbQKabhbQLbRLbRMbRNbRObRPbRQbRRbRSbIIbRTbzVbpFbokbRUbRVbokabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaabhabhbNqbKtbRWbRXbRYbRZbNqabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqzaqzaqzaqzaqzaqzaqzbGLbGLbGLbGLbPQbPQbPQbGLbGLbGLbGLbGLbGLbGLbKDbKEaqzaaaaaaabhbSabSbbSbbScbSdbSebSebSfbSfbSabJqbQabQZbSgbQdbShbSibSibSjbSkbRbbSlbSmbSnbSobSpbSqbSrbSsbStbSnbSubSnbSvbSwbSxaqAbSybSybSybSybSybSzbGRbQmbSAbSBbSCbSDbSEbRvbSFbSGbSHbRvbSIbSJbSKbSJbSIbSAbSLbSMbSNbSObSNbSPbSQbSNbSRbSNbSSbSNbSTbSNbSNbSUbSVbSWbSXbQKabhbQLbRLbSYbQObSZbQObTabTbbTcbIIbzZbzVbpFbokbzZbzZbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbKtbKsbTdbKsbRZabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabTebGLbGLbGLbNAbTfbGLbTgbMabThbNzbGLbTibPPbTjbTkbMabKDbKEaqzaqzaqzaqAbSabTlbScbScbScbTmbSebSebTnbSabTobQabTpbTqbTrbTsbTtbTubTvbTwbTxbTtbTtbTtbTybTzbTAbTBbTCbTDbRpbTEbTFbTGbTHbTIbRrbTJbTKbTLbTMbSybSzbTNbQmbRubTObSIbSIbTPbRvbTQbTRbTSbRvbSJbSIbSJbTTbTUbTVbkVbHobTWbTXbTYbTXbTZbUabUbbQzbUcbUdbUebUfbUgbUhbUibUjbUibUkbUkbIIbIIbIIbIIbIIbIIbIXbIXbIXbIIbzZbzVbUlbzZbzZbUmbokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbKsbKtbKsabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzaqzbTebUnbUobUpbUqbUrbUsbUtbMabMabUubGLbMabMabMabMabMabPRbKEaqzaqAbUvbUwbUxbUybUybUzbUybUAbUBbUCbUCbUDbUEbQabJrbUFbUGbUHbUIbUJbUKbULbUMbUJbUNbUJbUObUPbUQbRibURbUSbUTbUUbUVbUWbUXbUYaqAbUZbVabTMbVbbSybSzbTNbQmbRubVcbVdbSIbVebRvbVfbVgbVhbRvbSIbSIbVibSIbSIbRubQmbHobUhbUhbUhbUhbVjbVkbVlbVmbVjbUhbUhbUhbUhbUhbVnbVobVpbVqbVrbVsbVtbVubVtbVvbVwbVxbVpbVybUkbVzbzVbpFbokbokbokbokaueabhabhabhabqabqabqabqabqabqabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbGLbGLbGLbGLbVAbMabGLbVBbUrbVCbUrbUsbUrbUrbUrbUrbUrbVDbKEaqzaqAbVEbVFbVGbVHbVIbVIbVIbVIbVIbVIbVJbVKbVLbVMbJrbRabVNbVObVPbSnbVQbVRbVSbVTbVUbVVbVWbVXbVXbVYbVZbRpbWabWbbWcbWdbWebWfbWgbTJbWhbTMbTMbSybSzbTNbQmbRubWibWjbWkbRwbRvbRvbWlbRvbRvbWmbWmbWnbWmbWmbRubQmbHobWobWpbWpbWqbWrbQzbWsbWtbWubWvbIAbIAbIAbUhbWwbVpbVobWxbWybVsbWzbWAbWBbWCbUibVpbWDbVpbUkbHtbWEbWFbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqAaqAbGLbWGbWGbWHbGLbWIbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWKbMabKDbOJbGLbGLbOJbWLbSabWMbScbScbScbWNbWObWPbWQbSabWRbWSbJrbRabWTbWUbWVbSnbSnbWWbRbbWXbWYbWZbXabSnbSnbRibXbbXcbXdbXebXfbXgbXfbXhaqAbSybSybSybSybSybSzbGRbQmbRubSIbXibXjbXkbXlbXmbXnbXobXpbSIbSIbSIbSIbXqbRubQmbHobIAbXrbIAbXsbXtbQzbXubQzbXvbXwbIAbXrbIAbUhbXxbVpbVpbVobXybXzbXAbXBbXCbXDbVwbXEbVpbXFbUkbVwbXGbXHbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbUqbUrbUrbUrbXIbWJbXJbXKbWJbXLbXMbXNbXObXPbWJbXQbJebXRbXSbXTbJebXUbWLbSabSabSabSabSabSabSabSabSabSabXVbXWbJrbXXbQdbXYbXZbVSbYabVSbRbbSnbSnbSnbXabYbbYcbYcbYdbYebYfbTEbYgbYhbYibTIbRrbTJbYjbYkbYkbSybSzbGRbQmbYlbYmbYmbYmbYnbYobSIbYpbXjbYqbXjbXjbXjbXjbYrbRubQmbHobIAbIAbIAbYsbYtbWtbYubQzbYvbYwbWpbWpbYxbUhbYybYzbVpbVobYAbVsbWBbYBbXzbYCbVwbYDbYDbYDbUkbYEbXGbXHbokabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbWIbGLbGLbGLbWJbWJbYFbWJbWJbYGbYGbYGbYGbYHbYIbYJbYKbYLbYMbYMbYMbYMbYNbYObYObYObYPbYObYQbYRbYRbYSbGLbWRbYTbJrbYUbYVbYWbYXbYcbYcbYYbYZbYcbYcbZabZbbZcbSnbZdbZebZfbZgbSnbZhbZibZjbUYaqAbUZbZkbZlbZmbSybSzbTNbZnbZobZobZobZpbRubZqbSIbZrbZsbZtbZubZvbZvbZvbZwbRubQmbHobUhbUhbUhbUhbZxbZybXubZzbZxbUhbUhbUhbUhbUhbZAbZBbVobVpbZCbZDbZDbZDbZDbZEbUibYDbYDbZFbUkbZGbXGbXHbokbokbokaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbWIbZHbZIbTjbWJbZJbZKbZLbZMbZNbZObZPbZPbZQbZNbZRbZSbZTbZTbZTbZTbZTbZTbZTbZTbZUbZUbZUbZUbZUbZVbZWbGLbWRbYTbJrbYUbZXbZYbZZcaabVXcabcacbVXbVXcadcaecafcagcahcaicajcakbSnbZhcalcambWfbWgbTJcanbYkbYkbSybSzbTNcaobGRbGRbGRbkVbRucapbSIbSIcaqcarcascatbZvcatcaubRubQmbHobWobWpbWpcavbWrbQzcawbWtcaxcaybIAbIAbIAbUhcazcaAcaBbVocaCbVobVpbVpcaDcaEbVwbYDbYDbYDbUkbZGbXGbXHbzZbzZbokabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbPQbWIbMabMabMabWJcaFcaGcaHcaIcaJcaKcaLcaMcaKcaNcaObZSbZTcaPcaQcaRcaScaTcaUcaPcaVcaWcaXcaYbZUbZUbZWbGLcaZbYTbJrcbacbbcbccbccbdcbecbecbecbecbecbfcbgbRbbRbbRbcbhbSnbZfbSnbZhbZicbibUYaqAbSybSybSybSybSybSzbTNcaocbjbEObEObkVbSAcbkcblcbmcbncbocbpcbqbZvcbqcbrbRubQmbHobIAcbsbIAcbtbXtbQzbXubQzbXvcbubIAcbsbIAbUhcbvcbwcbxcbycbzcbAcbBcbBcbCcbDbUicbEbZDcbFbUkbYDbXGcbGbokbzZbokbokbokabqabqabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqAaqAbGLcbHbMabMabMabWJbWJbWJbWJbWJcbIcaKcbJcbKcaKcbLcaObZSbZTcaPcbMcbNcbOcbPcbQcaPcbRcbScbTcbUcbVbZUbZWbGLbWRbYTbJrcbWcbXbQdcbYcbZcbeccaccbccccbeccdbXaccebRbccfcakbSncaiccgcchbYhccibTIbRrbTJccjcckcclbSybSzbGRcaobGRccmccnbkVbRuccoccpccqccrccsccpcctbZvcctbTTbTVbQmbHobIAbIAbIAccuccvbWtbYubQzbYvccwbWpbWpbYxbHobUkccxccycczbUkbUkccAccBccCccDccEccFccGccHbYDbYDbXGbXHbokccIbokccJbokabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLccKbGLbGLbMabWJcaFccLccMccNccOccPccQccRccSbYGcaObZSbZTccTccUccVcbOccWccTccTcbRccXccYccZcdabZUbZWbGLbWRbYTcdbcdccdccddcdecdfcdgcdhcdicdjcbebSnbXacdkcdlccfcdmbSncaiccgbZhbZicdnbUYaqAbUZcdocdpcdqbSybSzbGRcaobGRbMtbMtbkVbRubRvcdrcdsbRvcdtbRvbRvbRvbRvbRvbRubQmbHobUhbUhbUhbUhbZxcdubXucdvbZxbUhbUhbUhbUhbHobXzcdwbXzcdxbXzbUkccAccBcdycdzcdAcdBbVocdCbUkbYDbXGbXHbokbzZbzZbzZbyKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaqAaqzaqzbGLbWIcdDbMabMabWJcdEcdFcdGbZMcdHcdIcdJcdKcdLbYGcaObZSbZTccTccTcdMcdNcdOccTcdPcdQcdRcdScdTcdUbZUbZWbGLcdVcdWcdXcdccdYcdZceacebceccedceecefcbecegcehccebRbccfceibSncejccgbZhcekcelbWfbWgbTJcemcckcckbSybSzbTNcaocenbGRceobkVcepbYmbYmceqbRvcercescetbGRceucevbHnbQmbHobWobWpbWpcewbWrbQzcawbWtcexceybIAbIAbIAbHocezbXzbXzbXzbXzbUkceAceAceBceCbVwbVwbVobVwbUkbVwbXGbXHbokceDceEceFbyKaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsacsacsacsacsacAacsacsacsacsacsaaaaaaaaaaqAaqzaqzbGLbWIbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJceGceHcaObWJcaObZSbZTceIceJceKceLceMceNceOcePceQceRceSceTbZUceUceVceWceXceYcdcceZcfacfbcfccfdcfecffcfgcfhbTDcfibRbbRbbRbcfjbSncfkcflbZhbZibSnbUYaqAbSybSybSybSybSycfmcfncfocfpbGRcfqcfrcfsbZocftcfubGRcfvcfwcfxbGRcfybQubQwcfzbHobIAbXrbIAcfAbXtbQzbXubQzbXvcfBbIAbXrbIAbHocfCbXzcfDcfEcfFcfGcfHcfIcfJcfKbVwbVobVocfLbUkbHtcfMcfNbokcfOcfPbzZbyKaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaabhaaaabhaaaadIaaaabhaaaabhaaaacsabhabhabhaqAaqAaqAbGLbWIbWJcfQcfRcfScfTcfUcfVcfWcfXbYGcfYcfZcgabWJcgbbZSbZTcgcccTcaPcaPcaPccTcgdcgecgfcggcghcgibZUbGLbGLcgjcgkcglcdccdccgmcgncgocgpcgpcgpcgpcbebSncgqcgrcgscgtcgucgvcgwcgxcchbYhcgybTIbRrbTJcgzcgAcgAbSyaqAbTNbEOcgBbGRbGRcgCbDJbGRcgDcgEbGRbGRcgFbGRbGRcgEcgGbLucgHbHobIAbIAbLwcgIcgJbWtcgKbQzbYvcgLbWpbWpbYxbHobXzbXzcgMbXzbXzbUkceAceAcgNcgObVwcgPcgQcgQbUkbzYcfMbXHbokbokbokbzZbokabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacgRcgScgTaaacgRcgScgTaaacgRcgScgTaaaacsaaaaaaaaacgUcgUcgUcgUcgVbWJcgWcgXcgYbWJcgZchachachbchccdJcdKchdbWJchebZSbZTccTchfchgcaPchhccTccTcbRchicbUchjchkchlchmchnchochpchqchrchschtchuchvchwchxchychzchAchBchCchDbVXchEchFbYbchGbYgbWabZichHbUYaqAbUZchIchJchKbSyaqAbGRbGRchLchMchNcgCchObGRcgDchPchQchRchSchTchQchUchVblmchWbHobHobHobHobHobHobQzchXchYbHobHobHobHobHobHobUkbUkbUkbUkbUkbUkchZchZciacibbUkbUkbUkbUkbUkbokcicbXHbokcidciebzZbokabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcgRcifcgTaaacgRcifcgTaaacgRcifcgTabhabhaaaaaaaaacgUcigcihbMabWIbWJciicijcikbWJcilcimcinciocipciqcirciscitciucivbZTcaPciwcixcaPciycizcaPcbRciAciBciCciDciEciFciGciHciIciJciKciLciMciNciOciPciQcgnciRchAciSbSncgqbYbciTciUciVciWciXbRociYciZbWfbWgbTJcjacgAcgAbSyaqAbGRbEOcjbcjccjdcjecjfbGRcjgcjhcjichVcjjchVcgGcjkcjlblmcjmbHocjncjocjocjpcjqbQzchXcjrbHoabhabhabhabhbokcjsbRVcjtcjucjubUkcjvcjvciacjwbUkcjxbzZbzZbzZbHtciccbGbokcjybzZbzZbokbokbokabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacgRcifcgTabhcgRcifcgTabhcgRcifcgTaaaabhabhabhabhcgUcjzcjAcjAcjBbWJcjCcjDcjEcjFcjGcjHcjIcjJcjKcjLcjMcjNcjFcjOcjPbZTcaPcjQcjRcjScjTcjUcaPcjVcjWcjXcjYcjZbZUckackbckcckdckeckfckgckhckickjckkcklckmcknckockpbSncgqckqckrbSnbSnckqckqckqbZickscktaqAbSybSybSybSybSyaqAbGRcfqckuckvckwckxckybGRbGRckzckAckBbHnckCckDbGRbGRblmcjmbHockEckFckFckGckHckIckJckKbHoabhaaaaaaabhbokbzZckLbBGckMckNbUkckOckOckPcjwbUkbokbokckQckRbHtcicbXHbzZbzZbzZckSbpHckTbpJabqabqabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhcgRcifcgTaaacgRcifcgTaaacgRcifcgTabhabhaaaaaaaaacgUckUbTkbTfbWIbWJckVckWckXbZMckYckZclaclbclccldcleclfbWJcgbbZSbZTbZTbZTbZTbZTbZTbZTbZTbZUbZUbZUbZUbZUbZUbGLclgbGLchAclhclhclhclicljclkclhcllclmclnchAbSnbUUclockqcgubVVbSnbSvbZcckqbZickqbQdaqAaqAaqAaqAaqAaqAaqAclpclpclqclrclsclpclpclpcltcluclvckBclwckBckBbGRclxbDJcjmbHobHoclyclybHobHoclyclzclybHoaaaaaaaaaaaabokbokcicclAbokbokbUkbUkbUkclBclCbUkbHtbokceFbzZclDciccfNbokbokclEbokbokbokbokabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsabhaaacgRcifcgTaaacgRcifcgTaaacgRcifcgTaaaabhaaaaaaclFclGclGclGclGclHbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJbWJclIclJclKclLclMclNclNclNclNclNclNclNclNclNclOclOclNclPclQchAclRclSclTclUclVclWclhclXclYclZchAcmacmbbWccmccmdcmecmfcmccmgcmccmhckqbQdbQdbQdaqAaqzaqAaqAclpclpcmicmjcmkcmlcmmcmnclpcmobEOcmpcmqcmrcmscmtbPpbPpcmucmvbokaaaaqzaaaaaaaaaabhcmwabhaaaaaaaaaaqzaaabokcmxcmycmzcmzcmAcmBcmCcmDcmEcmFbokbokbokbokcmGbokcicbXHbokcmHcmIbzZbokaaaabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaaaaaaacmJaaaaaaaaacmJaaaaaaaaacmJaaaaaaabhclFclFclFcmKcmLcmMcmNcmObMabUqcmPcmQcmPcmPcmPcmPcmPcmPcmPcmPcmPcmPcmPcmRbYRcmScmTchAchAchAchAchAchAchAchAchAchAchAchAchAchAchAclhcmUclUcmVcmWcmXcmYcmZcnacnbchAcmacnccndcnecnfcngcnhcnibSncnjcnkcnlcnmcnncnoaqAaqzaqAcnpcnqcnrcnscntcnucnvcnwcnxclpbEObEOckBckBbDJckBchVbEObEObDJcnybokbokbyKbyKbokbokbyKcnzbyKbokbokbyKbyKbyKbokcnAcnBbrrcnCcnDcnEcnEcnEcnFcnGcnHcnIcnJcnKcnKcnKcnLcnMbokciebzZcnNbokaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcnOcnPcnPcnQcnRcnRcnRcnRcnRcnRcnRcnRcnRcnRcnRcnScnTcnUcnVcnWcnXcnYcnZcoacmPbXIbWKbGLbPQbPQbPQbPQbPQbPQbPQbPQbPQbGLbGLcobcoccodcoechAcofcofcogchAcohcoicojcokcolcomconcoocopcoqclhcorcoscotcoucovcowcoxcoycozchAbQdcoAbRicoBcoCcoDbRicoBbRicoEbRicoFbQdbQdbQdaqAaqAaqAbSzclpcoGcoHcoIcoJcoKcoLcoMclpcoNbEOchVchVcoOckBchVbEOcoPbDJcoQbYMbYMbYMbYMbYMcoRbYMcoScoTcoTcoTcoTcoTcoTcoUcoVbpFbokcoWcoXbokbokbyKbyKbokbokcoYcfMcoZbrrcpacpbcpcbokbokbokbokbokaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaaaaaaacpdaaaaaaaaacpdaaaaaaaaacpdaaaaaaabhclFclFclFcpecpfcpgclGbMabMabMabMabGLaaaaaaabhaaaaaaabhaaaaaaabhaaabGLbTfbGLcphcpichAcpjcpkcogcplcpmcpncpocppcpocpqcprcpscptcpnclhcpuclUcpvcpwcpxclhcpycpzcpAchAaqAcpBaqAbSzcpCcpBaqAbSzaqAcpDaqAcpDaqAaqAaqzaqAaqzaqAbSzclpcpEcpFcntcpGcpHcpIcpJcpKcpLcpMcpNchVbHnchVcpOcgGcjkcpPcpQcpQcpQcpQcpQcpQcpQcpRcpScpQcpQcpQcpQcpQcpQcpTcpUcpVbokcpWcfMbokaqzaqzaqzaqzbokbzZcfMcpXcpYcpYcpZcqacpYaaaabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsabhaaacgRcqbcgTaaacgRcqbcgTaaacgRcqbcgTaaaabhaaaaaaclFclGclGclGclGbWHbPPbMabMabGLbGLbPQcqccqccqccqccqccqccqcabhbGLbGLbGLcqdcqechAcqfcqgcogcplcqhcpocqicqjcqkcqlcpocpocpocpoclhcqmcqncqncqocqpclhcqqcqrchAchAbSycqsbUZcqsbSycqsbUZcqsbSycqtbUZcqubSyaqzaqzaqAaqzaqzbSzcqvcqwcnvcqxcnvcqycqzcqAclpcqBckBckBckBcqCckBckBckBbGRbGLbGLbGLbPQbPQbPQbGLbGLbPQbPQbPQbGLbGLbPQbPQbPQbGLcqDbokbokcqEcfMbokbokbyKbyKbokbokbzZcfMcqFcpYcqGcqHcqIcpYaaaaaaabhabhaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhcgRcqbcgTaaacgRcqbcgTaaacgRcqbcgTabhabhabhaaaaaaaaaaaaabqbGLbGLbGLcqJbMabGLcqJbNAcqccqKcqLcqMcqLcqNcqcaaabGLbTkbMacqOcqechAcqPcqPcqQchAcqRcqScqTcpocqUcqVcqWcqXcqYcqYclhcqZcracracrbcrccrdcrecrfcrgchAbSycrhcricrjbSycrkcrlcrmbSycrncrocrpbSyaqzaqzaqAaqzaqzbSzclpcrqcrrcrscrtcrucrvcrwclpcrxcrycrzcrAcrBcrCchVchVbEOcrDbMabPQaaaaaaaaaaaaaaaaaaaqzaaaaaaaaaaaaaqAaaabokcrEbHtbokcrFcrGcrHcmBcrHcrHcrHcrHcrIcrJcrKcpYcrLcrMcrNcpYabhaaaaaaaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJdaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacgRcqbcgTabhcgRcqbcgTabhcgRcqbcgTaaaabhabhabhaaaaaaaaaabqbUnbUobUpbMabMacrObMacrPcqccrQcrRcrScrTcrUcqcaaabGLbTjbMacqOcqechAcqPcqPcqQchAcrVcoocrWcrXcrYcrZcrWcoocrWcrWcoocsacsbcsccqhcsdcsecsfcsgcshchAbSycsicsjcsibSycskcslcskbSycsmcsncsobSyaqAaqAaqAaqAaqAbSzclpclpclpcspcsqcsrcsscstcsqcrxcsuchVcsvcswcsxcjlchVcsybGLbMabPQaaaaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaabokcszcmIbokcsAcsBcsBcsCcsBbrrbrrbrrcsDcsDcsEcpYcsFcsGcsHcpYabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcgRcqbcgTaaacgRcqbcgTaaacgRcqbcgTabhabhaaaabhabhaaaaaaabqbGLbGLbGLbGLbMabGLbGLbGLcqccsIcsJcsKcsLcsIcqcabhbGLchAcsMcsNcsOchAcqPcqQcqQchAcsPcsQcsQcsccqUcsRcsScsTcsScsScsUcsVcsWcsWcsXcsYcsYcsZctactbchAbSycsictccsibSycskctdcskbSycsoctecsobSyaqAaqAaqAaqzaqzcfmbRtaqzaqzctfcsqctgcthcticsqbEOctjctkbLuctlctmcgGctnctobGLcrDbPQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaabokctpbzZbokbokbokbokbokbzZbokabhaaaaaaaaaabhctqctqctrctqctqabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaaacgRctscgTaaacgRctscgTaaacgRctscgTaaaacsaaaaaaabhabhaaaaaaaaaaaaaaabPQbMabPQaaaaaacqccttctuctvctwctxcqccqccqcchActycsNctzchAchAchAchAchActActBcpocpocqUcsgcpocppctCctDctEcpocpocpocpoctFcpocqUctGctHchAbSybSybSybSybSybSybSybSybSybSybSybSybSyaqAaqzaqAaqzaqzaqzbSzaqzaqzctIcsqcsrctJcstcsqbGRctKcjkctLctMcjkctNbGRbGRbGLabqabqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbokctObzZbzZbzZbzZbzZbzZbzZbokabhaaaaaaaaaabhaaactqctPctqaaaabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaabhaaaabhaaaabhaaaabhaaaabhaaaacsaaaaaaaaaabhabhaaaaaaaaaaaabPQbMabPQaaaaaacqcctQctRctSctTctUctVctWctXctVctYctZcuacubcuccudcuecufcugcuhcuicujcukculcumchAcunchAcunchAcumcuocpocpocupcqUcqVcuqchAchAchAchAchAcoocoocoocoochAaaaaaaaaaaaaaqzaqzaqAaqzaqzaqzbSzaqzaqzctIcsqcurcuscutcuuaqAbGRckzcuvbTNbTNbGRbGRaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbokcuwcuxcuycjxcuzbQTbRTbokbokabhaaaaaaaaaabhaaactqcuActqaaaabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsacAacsacsacsacsacsacsacsacsacsaaaaaaaaaaaaabhabhaaaaaaabhbPQbMabPQabhabhcqccuBcuCcuDcuEcuFcuGcuHcuIcuJcuKcuLcuMcuNcuNcuNcuOcuNcuPcuQcuRcuScuTcuUchAcuVcuWcuXcuWcuYchAcuZcpocvacvbcqUcvccuTcuTcvdcvecvfchAcvgcoocvhcvicvicviaaaaaaaaaaqzaqzaqAaqzaqzaqzbSzaqzaqzctIcsqcsqcvjcsqcsqaaaaqAaaacvkaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabokbokbokccIbokcqDbokbyKbyKbokbokaaaabhaaaaaaaaaabhaaaaaacvlaaaaaaabhaaaabhaaaaaaabhaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaabPQbMabPQaaaaaacqccvmcvncvocvpcvqcqccvrcvscqccvtcvucvvcppcpocvwcrWcvxcqhcvycvzcvAcvAcvAcvBcvCcvDcvEcvFcvGcvBcvHcvHcvIcqicvJcvKcqjcqjcqkcsgcvLcvMcogcvNcvOcvPcvQcvRcvSaaaaaaaqzaqzaqAaqzaqzaqzbSzaqzaqzctIbTecsqcvTcsqcvUaqAaqAaaacvVaqzaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabokcvWcvXcvXbokcvYabhaaaaaaabhaaaaaaabhaaaaaaaaaabhaaaaaacvlaaaaaaabhaaaabhaaaaaaabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhbGLbGLcvZbGLbGLaaacqccwacwbcwccqccqccqccqccqcchAcwdcpocvvcpocpocwecrWcwfcqhcwgcwhcwicwjcwkchAcwlcwmcwncwocwpchAcwqcwrcwrcwhcwgcqhcwscwtcqUcsgcwuchAcwvcoocvhcvicvicviaaaaaaaaaaqzaqzaqAaqzcwwaqzbSzaqzaqzcwxbTecwycwzcwybTeaqAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyKbyKbyKcvXcvXcwAbokaaaabhaaaaaaabhaaaacsacsacsacAabhabhabhabhcvlabhabhabhabhabhacAacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhbGLbTfbMacwBbGLabhcqccqccqccqccqcabhaaaaaaabhchAcwCcpocwDcwEcwFcwGchAchAcwHchAcwIcwJcwJcwJchAcwKcwLcwMcwNcwOchAcwJcwJcwJcwIchAcwHchAchAcqUcsgchAchAcoocoocoocoochAabhabhabhabhaqAaqAaqAaqAaqAaqAbSzaqzaqzaqAbTeaaaaaaaaabTeaqAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyKbzZcwPcvXcvXcwQbokaaaabhaaaaaaabhaaaacsaaaaaaabhaaaabhaaaaaacwRaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPQbUucwScwTbGLabhaaaaaaabhaaaaaaabhaaaaaaabhchAcwUcwVcwWcwXcwYcwZchAcxacxbchAcxccxdcxecxdcxfcxgcxhcxicxjcwOcxfcxdcxdcxdcxkchAcxlcxmchAcqUcxncxocxpcxqcxrcxfaaaabhabhabhabhabhaqzaqzaqAaqzaqzaqzbSzaqzaqzaqzbTebTebTebTebTeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabyKcwPbyKbyKbyKbyKbokaaaabhaaaaaaabhaaaacsabhcxscxscxscxscxsaaacxtaaacxscxscxscxscxsabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPQcxucxvbNzbGLcoocxwcxwcxwcxwcxwcxwcxwcxwcoochAcxxcxycxzcxAcxxchAchAchAcxBchAchAcxfcxfcxfcxfcxCcxDcxEcxFcxGcxfcxfcxfcxfchAchAcxBchAchAcxHcxIcxJcxKcpocxLcxfaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaacxMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabqabqabqaaaaaaaaaaaaaaaaaaaaaaaaabhaaaacsaaacxNcxOcxOcxOcxOcxPcxtcxQcxRcxRcxRcxRcxSaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabPQbPQbPQbPQbGLabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAcxTcxUcxVaqzachcxWcxfcxfcxfcxfcxXcxfcxfcxfcxfcxWachaqzcxYcxZcyachAcybchAchAcyccydcyecxfaaaaaaaaaaaaaaaaaaaaaaaaabhaaaaaaaaacxMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaacsadIcyfcyfcyfcyfcyfaaacxtaaacyfcyfcyfcyfcyfabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAcygcyhcyhaqzcyicyjcyjcyjcyjcyjcykcyjcyjcyjcyjcyjcylaqzcyhcymcygchAcyncyochAcoocoocypcooabhabhabhabhabhabhabhabhabhabhabhabhcxMabhabhabhabhabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhaaaacsaaaaaaaaaabhaaaaaaaaacxtaaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAcyqcyrcysaqAcytachcyuaqzaqzaqzaqzcyuaqzaqzcyuachcytaqzcyvcywcyxchAcyycyzcooabhaaacyAaaaabhaaaaaaaaaabhaaaaaaaaaabhaaaaaaaaacxMaaaaaaaaacyBcyBcyBcyBcyBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcxscxscxscxscxsaaacxtaaacxscxscxscxscxsabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAcygcyhcyCaqzcyDcyEaqzaqzaqzaqzaqzcyFaqzaqzaqzcyGcyHaqzcyhcyhcygchAabqabqabqabhaaaaaacyIcyJcyKcyKcyKcyJcyKcyKcyKcyJcyKcyKcyKcyLcyKcyKcyKcyMcyNcyOcyPcyBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacxNcxOcxOcxOcxOcxPcxtcxQcxRcxRcxRcxRcxSaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAcyQcyRcyhaqzcytachaqzaqzaqAaqAaqAaqAaqAaqzaqzachcytcyScyhcyTcyUchAabhaaaabqabhaaaaaaaaaabhaaaaaaaaaabhaaaaaaaaaabhaaaaaaaaacxMabqcyBcyBcyBcyVcyWcyVcyBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcyfcyfcyfcyfcyfaaacxtaaacyfcyfcyfcyfcyfabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAchAcyXcyhaqzcytachcyuaqAaqAcyYcyZczaaqAczbaqzachcytaqzcyhcyXchAchAabhaaaabqabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhcxMabqczcczdczecyPczfcyPcyBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAaaaaaaaaaabhaaaaaaaaaczgaaaaaaaaaabhaaaaaaaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhcumchAczhcyhaqzcyDcyEaqzaqzaqAcziczjczkaqAaqzaqzcyGcyHaqzcyhczlchAcumabhaaaabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqabqczmabqcyBcznczoczpczfczqczoaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcxscxscxscxscxsaaacvlaaacxscxscxscxscxsabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAchAcyXcyhaqzcytachaqzczraqAczscztczuaqAaqAcyuachcytaqzcyhcyXchAchAabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacxMabqczvczvczvczvczwczxczyczzabhabhabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaacxNcxOcxOcxOcxOczAczBczAcxRcxRcxRcxRcxSaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAcyTcyUcyhaqzcytachaqzaqzaqAaqAaqAaqAaqAaqzaqzachcytaqzcyhcyQcyRchAabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacxMaaaaaaczvczvczCczDczEczvczvczvczvczvabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcyfcyfcyfcyfcyfaaacvlaaacyfcyfcyfcyfcyfabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAcygcyhczFaqzcyDcyEaqzaqzaqzaqAaqzaqzaqzaqzaqzcyGcyHaqzcyhcyhcygchAabhaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacxMaaaaaaczvczGczHczIczJczKczLczMczNczvabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaaaaabhaaaabhaaaaaacvlaaaaaaabhaaaabhaaaaaaacsaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAczOcyrcysaqAcytachcyuaqzaqzcyuaqzaqzaqzaqzcyuachcytaqzcyvcywczPchAabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacxMaaaaaaczvczQczRczSczTczUczVczWczXczvabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaacsacsacsacsacsabhabhaaacvlaaaabhabhacsacsacsacAacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLadfchAczYcyhcyhaqzcytachachczZachachczZachachczZachachcytaqzcyhcyhczYchAabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcAacAbabhczvcAccAdcAecAfcAgcAhcAicAjczvabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsabhcAkabhacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhchAczYcyhcAlaqzcAmcyjcyjcAncyjcyjcAncyjcyjcAncyjcyjcAoaqzcApcyhczYchAabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcAqcArcAqcAqcAscAtcAucAvcAwcAxcAxcAxcAxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsaaaabhaaaacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhcAychAchAchAcyhaqAaqAaqAaqAaqzaqzaqzaqzaqzaqAaqAaqAaqAcyhchAchAchAcAyabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcAqcAzcAAcAqcABcABcACcADcABcAxcAEcAEcAxcAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacsacsacsacsacsaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhabhaaacAFchAchAchAchAchAchAchAchAchAchAchAchAchAchAchAchAchAcAFabhabhabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcAGcAHcAIcAJcABcAKcALcAMcABcANcAOcAOcAPcAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhaaaaaacAFcAFcAFcAFcumcAFcAFcAFcAFcAFcAFcAFcumcAFcAFcAFcAFaaaaaaabhacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcAQcARcAScATcAUcAVcAWcAXcAUcAYcAZcBacBbcAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhabhacLaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcBccBdcBecBfcBgcBhcBicBjcBkcBlcBmcBncBocAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacLacLacLacLacLacLacLacKacLacLacLacLacLacLacLacKacLacLacLacLacKacLacLaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacAqcAqcBpcARcBqcABcBrcBscBtcABcBucBvcBwcAxcAxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcBycBzcBycBxcBxcBAcBBcBxcBycBCcBycBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBDaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcBEcBFcBycBGcBHcBIcBJcBGcBycBKcBLcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcBMcBFcBycBGcBHcBIcBJcBGcBycBKcBNcBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBOcBxcBxcBFcBycBPcBHcBQcBRcBScBycBKcBxcBxcBTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhcBxcBUcBycBVcBHcBIcBJcBGcBycBWcBxabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcBXcBYcBZcCacCbcBJcCccCdcCecBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcCfcBycCgcChcCicBJcCjcBycCfcBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhcBxcCfcBycBPcCkcClcBJcBScBycCfcBxabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcBxcCfcBycBGcBHcBIcBJcBGcBycCfcBxcBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcBxcCfcCfcBycBGcBHcCmcBJcBGcBycCfcCfcBxabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCfcCncCncCocCncCpcCqcCrcCncCncCfcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCfcCncCncCscCtcCucCvcCwcCncCncCfcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCfcCncCncCxcCycCzcCAcCBcCncCncCfcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCCcCncCncCDcCDcCEcCFcCDcCncCncCCcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacBxcCCcCncCHcCHcCIcCJcCAcCHcCHcCncCCcBxaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCKcCLcCMcCNcCOcCPcCQcCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCRcCucCScCTcCUcCAcCRcCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcCncCncCncCHcCJcCVcCWcCVcCXcCHcCncCncCnabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCYcCncCncCZcCIcDacCVcCVcCVcDbcCIcDccCncCncDdaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacDeaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcCncCncCncCRcDfcDgcDhcCVcCIcCRcCncCncCnabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCKcCIcDicDjcCHcCIcCQcCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCHcCIcDkcDlcCIcCIcCHcCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCncCncCncCncCncCncCncCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacCncCncCncCncCncCncCncCncCncCncCnaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhcCncCncCncCncCncCncCncCncCnabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabhabhaaaaaacDmaaaaaaabhabhaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +"} diff --git a/_maps/map_files/debug/runtimestation.dmm b/_maps/map_files/debug/runtimestation.dmm index 0e6c0e299d..1a6183603c 100644 --- a/_maps/map_files/debug/runtimestation.dmm +++ b/_maps/map_files/debug/runtimestation.dmm @@ -188,7 +188,7 @@ "dF" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 5},/area/storage/primary) "dG" = (/obj/machinery/door/airlock,/turf/open/floor/plasteel,/area/storage/primary) "dH" = (/obj/effect/landmark/start,/turf/open/floor/plasteel,/area/storage/primary) -"dI" = (/obj/effect/landmark{name = "JoinLate"},/turf/open/floor/plasteel,/area/storage/primary) +"dI" = (/obj/effect/landmark/latejoin,/turf/open/floor/plasteel,/area/storage/primary) "dJ" = (/turf/open/floor/plasteel,/area/storage/primary) "dK" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/corner{dir = 8},/area/construction) "dL" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 1},/area/construction) diff --git a/_maps/map_files/generic/Centcomm.dmm b/_maps/map_files/generic/Centcomm.dmm new file mode 100644 index 0000000000..a50e899515 --- /dev/null +++ b/_maps/map_files/generic/Centcomm.dmm @@ -0,0 +1,80502 @@ +//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/space) +"ac" = ( +/obj/structure/window/reinforced, +/turf/closed/indestructible/riveted, +/area/space) +"ad" = ( +/obj/effect/landmark/transit, +/turf/open/space, +/area/space) +"ae" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/closed/indestructible/riveted, +/area/space) +"af" = ( +/turf/open/floor/holofloor/snow/cold, +/area/holodeck/rec_center/winterwonderland) +"ag" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/closed/indestructible/riveted, +/area/space) +"ah" = ( +/obj/structure/foamedmetal, +/obj/structure/window{ + icon_state = "rwindow"; + dir = 8 + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/bunker) +"ai" = ( +/obj/structure/foamedmetal, +/obj/structure/window{ + icon_state = "rwindow"; + dir = 4 + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/bunker) +"aj" = ( +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/bunker) +"ak" = ( +/turf/open/floor/holofloor{ + tag = "icon-asteroid_warn_side (WEST)"; + icon_state = "asteroid_warn_side"; + dir = 8 + }, +/area/holodeck/rec_center/bunker) +"al" = ( +/obj/structure/table, +/obj/item/stack/medical/ointment{ + heal_burn = 10 + }, +/turf/open/floor/holofloor{ + tag = "icon-asteroid_warn_side (WEST)"; + icon_state = "asteroid_warn_side"; + dir = 8 + }, +/area/holodeck/rec_center/bunker) +"am" = ( +/obj/structure/table/wood{ + layer = 3.3 + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-05"; + layer = 4.1; + pixel_y = 4 + }, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"an" = ( +/obj/structure/closet/crate/bin, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"ao" = ( +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"ap" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green{ + layer = 3.3; + pixel_y = 0 + }, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aq" = ( +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/wildlife) +"ar" = ( +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/offline) +"as" = ( +/turf/open/floor/holofloor/plating/burnmix, +/area/holodeck/rec_center/burn) +"at" = ( +/turf/open/floor/holofloor{ + dir = 9; + icon_state = "red" + }, +/area/holodeck/rec_center/court) +"au" = ( +/turf/open/floor/holofloor{ + dir = 1; + icon_state = "red" + }, +/area/holodeck/rec_center/court) +"av" = ( +/turf/open/floor/holofloor{ + dir = 5; + icon_state = "red" + }, +/area/holodeck/rec_center/court) +"aw" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/closed/indestructible/riveted, +/area/space) +"ax" = ( +/obj/structure/flora/bush, +/turf/open/floor/holofloor/snow/cold, +/area/holodeck/rec_center/winterwonderland) +"ay" = ( +/obj/item/toy/snowball{ + pixel_x = 0; + pixel_y = 6 + }, +/obj/item/toy/snowball{ + pixel_x = 5; + pixel_y = 0 + }, +/obj/item/toy/snowball{ + pixel_x = -4 + }, +/turf/open/floor/holofloor/snow/cold, +/area/holodeck/rec_center/winterwonderland) +"az" = ( +/turf/open/floor/holofloor{ + tag = "icon-asteroid_warn (WEST)"; + icon_state = "asteroid_warn"; + dir = 8 + }, +/area/holodeck/rec_center/bunker) +"aA" = ( +/obj/structure/table, +/obj/machinery/recharger, +/turf/open/floor/holofloor{ + tag = "icon-asteroidfloor (WEST)"; + icon_state = "asteroidfloor"; + dir = 8 + }, +/area/holodeck/rec_center/bunker) +"aB" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/box/matches{ + pixel_x = -4; + pixel_y = 8 + }, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aC" = ( +/obj/structure/chair/wood/normal, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aD" = ( +/obj/effect/holodeck_effect/mobspawner, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/wildlife) +"aE" = ( +/obj/effect/holodeck_effect/sparks, +/turf/open/floor/holofloor/plating/burnmix, +/area/holodeck/rec_center/burn) +"aF" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "red" + }, +/area/holodeck/rec_center/court) +"aG" = ( +/turf/open/floor/holofloor, +/area/holodeck/rec_center/court) +"aH" = ( +/turf/open/floor/holofloor{ + dir = 4; + icon_state = "red" + }, +/area/holodeck/rec_center/court) +"aI" = ( +/obj/structure/flora/grass/brown, +/turf/open/floor/holofloor/snow/cold, +/area/holodeck/rec_center/winterwonderland) +"aJ" = ( +/obj/structure/table, +/obj/item/weapon/gun/energy/laser, +/turf/open/floor/holofloor{ + tag = "icon-asteroidfloor (WEST)"; + icon_state = "asteroidfloor"; + dir = 8 + }, +/area/holodeck/rec_center/bunker) +"aK" = ( +/obj/structure/chair/wood/normal{ + icon_state = "wooden_chair"; + dir = 4 + }, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aL" = ( +/obj/structure/table/wood/poker, +/obj/item/clothing/mask/cigarette/pipe, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aM" = ( +/obj/structure/table/wood/poker, +/obj/structure/table/wood/poker, +/obj/effect/holodeck_effect/cards, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aN" = ( +/obj/structure/chair/wood/normal{ + icon_state = "wooden_chair"; + dir = 8 + }, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aO" = ( +/obj/structure/statue/snow/snowman{ + anchored = 1 + }, +/turf/open/floor/holofloor/snow/cold, +/area/holodeck/rec_center/winterwonderland) +"aP" = ( +/obj/structure/chair/wood/normal{ + icon_state = "wooden_chair"; + dir = 1 + }, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aQ" = ( +/obj/structure/chair/wood/wings, +/turf/open/floor/holofloor/snow/cold, +/area/holodeck/rec_center/winterwonderland) +"aR" = ( +/obj/structure/window/reinforced/tinted{ + icon_state = "rwindow"; + dir = 4 + }, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aS" = ( +/obj/structure/window/reinforced, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aT" = ( +/obj/structure/flora/tree/pine, +/turf/open/floor/holofloor/snow/cold, +/area/holodeck/rec_center/winterwonderland) +"aU" = ( +/obj/structure/chair/wood, +/turf/open/floor/holofloor/snow/cold, +/area/holodeck/rec_center/winterwonderland) +"aV" = ( +/obj/structure/table/wood, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-05"; + layer = 4.1; + pixel_y = 10 + }, +/turf/open/floor/holofloor{ + icon_state = "wood"; + dir = 9 + }, +/area/holodeck/rec_center/lounge) +"aW" = ( +/turf/open/floor/holofloor{ + dir = 9; + icon_state = "stairs-l" + }, +/area/holodeck/rec_center/lounge) +"aX" = ( +/turf/open/floor/holofloor{ + dir = 9; + icon_state = "stairs-r" + }, +/area/holodeck/rec_center/lounge) +"aY" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "green" + }, +/area/holodeck/rec_center/court) +"aZ" = ( +/turf/open/floor/holofloor{ + dir = 4; + icon_state = "green" + }, +/area/holodeck/rec_center/court) +"ba" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp/green{ + pixel_y = 4 + }, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/lounge) +"bb" = ( +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/lounge) +"bc" = ( +/obj/structure/chair/comfy/brown{ + dir = 4 + }, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/lounge) +"bd" = ( +/obj/structure/chair/comfy/brown{ + dir = 8 + }, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/lounge) +"be" = ( +/obj/structure/table, +/obj/item/stack/medical/bruise_pack{ + heal_brute = 10 + }, +/turf/open/floor/holofloor{ + tag = "icon-asteroid_warn_side (WEST)"; + icon_state = "asteroid_warn_side"; + dir = 8 + }, +/area/holodeck/rec_center/bunker) +"bf" = ( +/obj/structure/table/wood, +/obj/item/device/instrument/violin, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/lounge) +"bg" = ( +/obj/structure/chair/comfy/brown{ + buildstackamount = 0; + dir = 1 + }, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/lounge) +"bh" = ( +/obj/structure/table/wood, +/obj/item/weapon/book/manual/barman_recipes, +/obj/item/clothing/mask/cigarette/pipe, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/lounge) +"bi" = ( +/turf/open/floor/holofloor{ + dir = 10; + icon_state = "green" + }, +/area/holodeck/rec_center/court) +"bj" = ( +/turf/open/floor/holofloor{ + dir = 2; + icon_state = "green" + }, +/area/holodeck/rec_center/court) +"bk" = ( +/turf/open/floor/holofloor{ + dir = 6; + icon_state = "green" + }, +/area/holodeck/rec_center/court) +"bl" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/closed/indestructible/riveted, +/area/space) +"bm" = ( +/obj/effect/holodeck_effect/mobspawner/bee, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/anthophila) +"bn" = ( +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"bo" = ( +/obj/structure/flora/ausbushes/sunnybush, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"bp" = ( +/obj/structure/flora/ausbushes/genericbush, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"bq" = ( +/obj/structure/table/glass, +/obj/item/weapon/surgicaldrill, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTHWEST)"; + icon_state = "white"; + dir = 9 + }, +/area/holodeck/rec_center/medical) +"br" = ( +/obj/structure/table/glass, +/obj/item/weapon/hemostat, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTH)"; + icon_state = "white"; + dir = 1 + }, +/area/holodeck/rec_center/medical) +"bs" = ( +/obj/structure/table/glass, +/obj/item/weapon/scalpel{ + pixel_y = 10 + }, +/obj/item/weapon/circular_saw, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTH)"; + icon_state = "white"; + dir = 1 + }, +/area/holodeck/rec_center/medical) +"bt" = ( +/obj/structure/table/glass, +/obj/item/weapon/retractor, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTH)"; + icon_state = "white"; + dir = 1 + }, +/area/holodeck/rec_center/medical) +"bu" = ( +/obj/structure/table/glass, +/obj/item/stack/medical/gauze, +/obj/item/weapon/cautery, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTHEAST)"; + icon_state = "white"; + dir = 5 + }, +/area/holodeck/rec_center/medical) +"bv" = ( +/turf/open/floor/holofloor{ + dir = 9; + icon_state = "red" + }, +/area/holodeck/rec_center/basketball) +"bw" = ( +/obj/structure/holohoop{ + layer = 3.9 + }, +/turf/open/floor/holofloor{ + dir = 1; + icon_state = "red" + }, +/area/holodeck/rec_center/basketball) +"bx" = ( +/turf/open/floor/holofloor{ + dir = 5; + icon_state = "red" + }, +/area/holodeck/rec_center/basketball) +"by" = ( +/turf/open/floor/holofloor/beach, +/area/holodeck/rec_center/beach) +"bz" = ( +/turf/open/floor/holofloor/basalt, +/obj/structure/table, +/obj/machinery/readybutton, +/turf/open/floor/holofloor{ + tag = "icon-warningline"; + icon_state = "warningline"; + dir = 2 + }, +/area/holodeck/rec_center/thunderdome) +"bA" = ( +/turf/open/floor/holofloor/basalt, +/obj/structure/table, +/obj/item/clothing/head/helmet/thunderdome, +/obj/item/clothing/suit/armor/tdome/red, +/obj/item/clothing/under/color/red, +/obj/item/weapon/holo/esword/red, +/turf/open/floor/holofloor{ + tag = "icon-warningline"; + icon_state = "warningline"; + dir = 2 + }, +/area/holodeck/rec_center/thunderdome) +"bB" = ( +/turf/open/floor/holofloor/basalt, +/obj/structure/table, +/turf/open/floor/holofloor{ + tag = "icon-warningline"; + icon_state = "warningline"; + dir = 2 + }, +/area/holodeck/rec_center/thunderdome) +"bC" = ( +/obj/machinery/readybutton, +/turf/open/floor/holofloor{ + dir = 9; + icon_state = "red" + }, +/area/holodeck/rec_center/dodgeball) +"bD" = ( +/turf/open/floor/holofloor{ + dir = 1; + icon_state = "red" + }, +/area/holodeck/rec_center/dodgeball) +"bE" = ( +/turf/open/floor/holofloor{ + dir = 5; + icon_state = "red" + }, +/area/holodeck/rec_center/dodgeball) +"bF" = ( +/obj/effect/holodeck_effect/mobspawner/pet, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"bG" = ( +/obj/structure/flora/ausbushes/ppflowers, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"bH" = ( +/obj/effect/holodeck_effect/mobspawner/pet, +/obj/structure/flora/ausbushes/brflowers, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"bI" = ( +/obj/structure/table/glass, +/obj/item/weapon/surgical_drapes, +/obj/item/weapon/razor, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (WEST)"; + icon_state = "white"; + dir = 8 + }, +/area/holodeck/rec_center/medical) +"bJ" = ( +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"bK" = ( +/turf/open/floor/holofloor{ + tag = "icon-white_warn (EAST)"; + icon_state = "white"; + dir = 4 + }, +/area/holodeck/rec_center/medical) +"bL" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "red" + }, +/area/holodeck/rec_center/basketball) +"bM" = ( +/turf/open/floor/holofloor, +/area/holodeck/rec_center/basketball) +"bN" = ( +/turf/open/floor/holofloor{ + dir = 4; + icon_state = "red" + }, +/area/holodeck/rec_center/basketball) +"bO" = ( +/obj/effect/overlay/palmtree_r, +/turf/open/floor/holofloor/beach, +/area/holodeck/rec_center/beach) +"bP" = ( +/obj/effect/overlay/palmtree_l, +/obj/effect/overlay/coconut, +/turf/open/floor/holofloor/beach, +/area/holodeck/rec_center/beach) +"bQ" = ( +/turf/open/floor/holofloor/basalt, +/area/holodeck/rec_center/thunderdome) +"bR" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "red" + }, +/area/holodeck/rec_center/dodgeball) +"bS" = ( +/turf/open/floor/holofloor, +/area/holodeck/rec_center/dodgeball) +"bT" = ( +/turf/open/floor/holofloor{ + dir = 4; + icon_state = "red" + }, +/area/holodeck/rec_center/dodgeball) +"bU" = ( +/obj/structure/flora/ausbushes/brflowers, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"bV" = ( +/obj/item/weapon/storage/bag/easterbasket{ + name = "picnic basket"; + pixel_y = 6 + }, +/turf/open/floor/holofloor{ + icon_state = "redbluefull" + }, +/area/holodeck/rec_center/pet_lounge) +"bW" = ( +/obj/item/trash/plate, +/turf/open/floor/holofloor{ + icon_state = "redbluefull" + }, +/area/holodeck/rec_center/pet_lounge) +"bX" = ( +/turf/open/floor/holofloor{ + tag = "icon-white_warn (SOUTHWEST)"; + icon_state = "white"; + dir = 10 + }, +/area/holodeck/rec_center/medical) +"bY" = ( +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"bZ" = ( +/obj/structure/table/optable, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"ca" = ( +/obj/machinery/computer/operating, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"cb" = ( +/obj/structure/table/glass, +/obj/item/clothing/gloves/color/latex/nitrile, +/obj/item/clothing/suit/apron/surgical, +/obj/item/clothing/mask/surgical, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (SOUTHEAST)"; + icon_state = "white"; + dir = 6 + }, +/area/holodeck/rec_center/medical) +"cc" = ( +/turf/open/floor/holofloor{ + dir = 1; + icon_state = "red" + }, +/area/holodeck/rec_center/basketball) +"cd" = ( +/obj/effect/holodeck_effect/mobspawner/monkey, +/turf/open/floor/holofloor/beach, +/area/holodeck/rec_center/beach) +"ce" = ( +/turf/open/floor/holofloor{ + dir = 2; + icon_state = "red" + }, +/area/holodeck/rec_center/dodgeball) +"cf" = ( +/obj/structure/flora/ausbushes/palebush, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"cg" = ( +/obj/effect/holodeck_effect/mobspawner/pet, +/turf/open/floor/holofloor{ + icon_state = "redbluefull" + }, +/area/holodeck/rec_center/pet_lounge) +"ch" = ( +/obj/item/weapon/shovel/spade{ + pixel_x = 2; + pixel_y = -2 + }, +/turf/open/floor/holofloor{ + icon_state = "redbluefull" + }, +/area/holodeck/rec_center/pet_lounge) +"ci" = ( +/obj/structure/window{ + dir = 1 + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"cj" = ( +/obj/effect/holodeck_effect/mobspawner/bee, +/obj/item/clothing/head/beekeeper_head, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/anthophila) +"ck" = ( +/obj/structure/table/glass, +/obj/machinery/reagentgrinder, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTHWEST)"; + icon_state = "white"; + dir = 9 + }, +/area/holodeck/rec_center/medical) +"cl" = ( +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTHEAST)"; + icon_state = "white"; + dir = 5 + }, +/area/holodeck/rec_center/medical) +"cm" = ( +/obj/structure/table/glass, +/obj/item/weapon/storage/box/syringes{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/weapon/storage/box/beakers, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"cn" = ( +/obj/machinery/washing_machine, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"co" = ( +/turf/open/floor/holofloor{ + dir = 10; + icon_state = "red" + }, +/area/holodeck/rec_center/basketball) +"cp" = ( +/turf/open/floor/holofloor{ + dir = 2; + icon_state = "red" + }, +/area/holodeck/rec_center/basketball) +"cq" = ( +/turf/open/floor/holofloor{ + dir = 6; + icon_state = "red" + }, +/area/holodeck/rec_center/basketball) +"cr" = ( +/obj/item/clothing/under/color/rainbow, +/obj/item/clothing/glasses/sunglasses, +/turf/open/floor/holofloor/beach, +/area/holodeck/rec_center/beach) +"cs" = ( +/obj/structure/window, +/turf/open/floor/holofloor/basalt, +/area/holodeck/rec_center/thunderdome) +"ct" = ( +/obj/structure/window{ + dir = 1 + }, +/obj/item/toy/beach_ball/holoball/dodgeball, +/turf/open/floor/holofloor{ + dir = 10; + icon_state = "red" + }, +/area/holodeck/rec_center/dodgeball) +"cu" = ( +/obj/structure/window{ + dir = 1 + }, +/obj/item/toy/beach_ball/holoball/dodgeball, +/turf/open/floor/holofloor{ + dir = 2; + icon_state = "red" + }, +/area/holodeck/rec_center/dodgeball) +"cv" = ( +/obj/structure/window{ + dir = 1 + }, +/obj/item/toy/beach_ball/holoball/dodgeball, +/turf/open/floor/holofloor{ + dir = 6; + icon_state = "red" + }, +/area/holodeck/rec_center/dodgeball) +"cw" = ( +/obj/effect/holodeck_effect/mobspawner/bee, +/obj/effect/decal/remains/human, +/obj/item/clothing/suit/beekeeper_suit, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/anthophila) +"cx" = ( +/obj/effect/holodeck_effect/mobspawner/bee, +/obj/item/weapon/melee/flyswatter, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/anthophila) +"cy" = ( +/obj/machinery/chem_master, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (SOUTHWEST)"; + icon_state = "white"; + dir = 10 + }, +/area/holodeck/rec_center/medical) +"cz" = ( +/turf/open/floor/holofloor{ + tag = "icon-white_warn (SOUTHEAST)"; + icon_state = "white"; + dir = 6 + }, +/area/holodeck/rec_center/medical) +"cA" = ( +/obj/structure/table/glass, +/obj/item/device/healthanalyzer, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"cB" = ( +/obj/structure/closet/wardrobe/white, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"cC" = ( +/turf/open/floor/holofloor{ + dir = 9; + icon_state = "green" + }, +/area/holodeck/rec_center/basketball) +"cD" = ( +/turf/open/floor/holofloor{ + dir = 1; + icon_state = "green" + }, +/area/holodeck/rec_center/basketball) +"cE" = ( +/turf/open/floor/holofloor{ + dir = 5; + icon_state = "green" + }, +/area/holodeck/rec_center/basketball) +"cF" = ( +/obj/item/toy/beach_ball, +/turf/open/floor/holofloor/beach, +/area/holodeck/rec_center/beach) +"cG" = ( +/obj/structure/window{ + dir = 1 + }, +/turf/open/floor/holofloor/basalt, +/area/holodeck/rec_center/thunderdome) +"cH" = ( +/obj/structure/window, +/obj/item/toy/beach_ball/holoball/dodgeball, +/turf/open/floor/holofloor{ + dir = 9; + icon_state = "green" + }, +/area/holodeck/rec_center/dodgeball) +"cI" = ( +/obj/structure/window, +/obj/item/toy/beach_ball/holoball/dodgeball, +/turf/open/floor/holofloor{ + dir = 1; + icon_state = "green" + }, +/area/holodeck/rec_center/dodgeball) +"cJ" = ( +/obj/structure/window, +/obj/item/toy/beach_ball/holoball/dodgeball, +/turf/open/floor/holofloor{ + dir = 5; + icon_state = "green" + }, +/area/holodeck/rec_center/dodgeball) +"cK" = ( +/obj/structure/sink/puddle, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"cL" = ( +/obj/item/weapon/reagent_containers/glass/bucket, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"cM" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "green" + }, +/area/holodeck/rec_center/basketball) +"cN" = ( +/obj/item/toy/beach_ball/holoball, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/basketball) +"cO" = ( +/turf/open/floor/holofloor{ + dir = 4; + icon_state = "green" + }, +/area/holodeck/rec_center/basketball) +"cP" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "green" + }, +/area/holodeck/rec_center/dodgeball) +"cQ" = ( +/turf/open/floor/holofloor{ + dir = 4; + icon_state = "green" + }, +/area/holodeck/rec_center/dodgeball) +"cR" = ( +/obj/machinery/hydroponics/soil, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"cS" = ( +/obj/machinery/hydroponics/soil, +/obj/item/weapon/cultivator, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"cT" = ( +/obj/machinery/hydroponics/soil, +/obj/effect/holodeck_effect/mobspawner/pet, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"cU" = ( +/obj/structure/flora/ausbushes/grassybush, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"cV" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/medical, +/obj/structure/window{ + dir = 1 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTHWEST)"; + icon_state = "white"; + dir = 9 + }, +/area/holodeck/rec_center/medical) +"cW" = ( +/obj/structure/window{ + icon_state = "rwindow"; + dir = 8 + }, +/obj/structure/bed, +/obj/item/weapon/bedsheet/medical, +/obj/structure/window{ + dir = 1 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTHEAST)"; + icon_state = "white"; + dir = 5 + }, +/area/holodeck/rec_center/medical) +"cX" = ( +/obj/structure/window{ + icon_state = "rwindow"; + dir = 8 + }, +/obj/machinery/computer/pandemic, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"cY" = ( +/turf/open/floor/holofloor{ + dir = 2; + icon_state = "green" + }, +/area/holodeck/rec_center/basketball) +"cZ" = ( +/turf/open/floor/holofloor/beach/coast_t, +/area/holodeck/rec_center/beach) +"da" = ( +/obj/item/weapon/reagent_containers/glass/bucket, +/turf/open/floor/holofloor/beach/coast_t, +/area/holodeck/rec_center/beach) +"db" = ( +/obj/item/weapon/shovel/spade, +/turf/open/floor/holofloor/beach/coast_t, +/area/holodeck/rec_center/beach) +"dc" = ( +/turf/open/floor/holofloor{ + dir = 1; + icon_state = "green" + }, +/area/holodeck/rec_center/dodgeball) +"dd" = ( +/obj/structure/flora/ausbushes/pointybush, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/pet_lounge) +"de" = ( +/turf/open/floor/holofloor{ + tag = "icon-white_warn (WEST)"; + icon_state = "white"; + dir = 8 + }, +/area/holodeck/rec_center/medical) +"df" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "white_warn_corner"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/medical) +"dg" = ( +/obj/machinery/door/window/westleft, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTH)"; + icon_state = "white"; + dir = 1 + }, +/area/holodeck/rec_center/medical) +"dh" = ( +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTH)"; + icon_state = "white"; + dir = 1 + }, +/area/holodeck/rec_center/medical) +"di" = ( +/turf/open/floor/holofloor/beach/coast_b, +/area/holodeck/rec_center/beach) +"dj" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/medical, +/obj/machinery/iv_drip{ + density = 0 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (SOUTHWEST)"; + icon_state = "white"; + dir = 10 + }, +/area/holodeck/rec_center/medical) +"dk" = ( +/obj/structure/window{ + icon_state = "rwindow"; + dir = 8 + }, +/obj/structure/bed, +/obj/item/weapon/bedsheet/medical, +/obj/machinery/iv_drip{ + density = 0 + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"dl" = ( +/obj/structure/window{ + icon_state = "rwindow"; + dir = 8 + }, +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 1 + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"dm" = ( +/obj/machinery/iv_drip{ + density = 0 + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/medical) +"dn" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 1 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (SOUTHEAST)"; + icon_state = "white"; + dir = 6 + }, +/area/holodeck/rec_center/medical) +"do" = ( +/turf/open/floor/holofloor{ + dir = 10; + icon_state = "green" + }, +/area/holodeck/rec_center/basketball) +"dp" = ( +/obj/structure/holohoop{ + dir = 1; + layer = 4.1 + }, +/turf/open/floor/holofloor{ + dir = 2; + icon_state = "green" + }, +/area/holodeck/rec_center/basketball) +"dq" = ( +/turf/open/floor/holofloor{ + dir = 6; + icon_state = "green" + }, +/area/holodeck/rec_center/basketball) +"dr" = ( +/turf/open/floor/holofloor/beach/water, +/area/holodeck/rec_center/beach) +"ds" = ( +/turf/open/floor/holofloor/basalt, +/obj/structure/table, +/turf/open/floor/holofloor{ + tag = "icon-warningline (NORTH)"; + icon_state = "warningline"; + dir = 1 + }, +/area/holodeck/rec_center/thunderdome) +"dt" = ( +/turf/open/floor/holofloor/basalt, +/obj/structure/table, +/obj/item/clothing/head/helmet/thunderdome, +/obj/item/clothing/suit/armor/tdome/green, +/obj/item/clothing/under/color/green, +/obj/item/weapon/holo/esword/green, +/turf/open/floor/holofloor{ + tag = "icon-warningline (NORTH)"; + icon_state = "warningline"; + dir = 1 + }, +/area/holodeck/rec_center/thunderdome) +"du" = ( +/turf/open/floor/holofloor/basalt, +/obj/structure/table, +/obj/machinery/readybutton, +/turf/open/floor/holofloor{ + tag = "icon-warningline (NORTH)"; + icon_state = "warningline"; + dir = 1 + }, +/area/holodeck/rec_center/thunderdome) +"dv" = ( +/turf/open/floor/holofloor{ + dir = 10; + icon_state = "green" + }, +/area/holodeck/rec_center/dodgeball) +"dw" = ( +/turf/open/floor/holofloor{ + dir = 2; + icon_state = "green" + }, +/area/holodeck/rec_center/dodgeball) +"dx" = ( +/obj/machinery/readybutton, +/turf/open/floor/holofloor{ + dir = 6; + icon_state = "green" + }, +/area/holodeck/rec_center/dodgeball) +"dy" = ( +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/refuel) +"dz" = ( +/turf/open/floor/holofloor/grass, +/turf/open/floor/holofloor{ + tag = "icon-warningline"; + icon_state = "warningline"; + dir = 2 + }, +/area/holodeck/rec_center/spacechess) +"dA" = ( +/obj/item/weapon/banner/blue, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"dB" = ( +/obj/structure/table/wood/fancy, +/obj/item/clothing/suit/armor/riot/knight/blue, +/obj/item/clothing/head/helmet/knight/blue, +/obj/item/weapon/claymore/weak, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"dC" = ( +/obj/structure/table/wood/fancy, +/obj/item/clothing/head/crown/fancy{ + pixel_y = 6 + }, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"dD" = ( +/obj/structure/table/wood/fancy, +/obj/item/clothing/suit/armor/riot/knight/red, +/obj/item/clothing/head/helmet/knight/red, +/obj/item/weapon/claymore/weak, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"dE" = ( +/obj/item/weapon/banner/red, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"dF" = ( +/turf/open/floor/holofloor/hyperspace, +/area/holodeck/rec_center/kobayashi) +"dG" = ( +/obj/structure/window/reinforced, +/turf/open/floor/holofloor/hyperspace, +/area/holodeck/rec_center/kobayashi) +"dH" = ( +/obj/structure/closet{ + density = 0; + opened = 1 + }, +/obj/item/clothing/suit/judgerobe, +/obj/item/clothing/head/powdered_wig, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/chapelcourt) +"dI" = ( +/obj/structure/table/wood/fancy, +/obj/item/clothing/suit/nun, +/obj/item/clothing/head/nun_hood, +/obj/item/clothing/suit/holidaypriest, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/chapelcourt) +"dJ" = ( +/obj/structure/table/wood/fancy, +/obj/item/weapon/storage/book/bible, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/chapelcourt) +"dK" = ( +/obj/structure/table/wood/fancy, +/obj/item/weapon/book/manual/wiki/security_space_law, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/chapelcourt) +"dL" = ( +/obj/structure/closet{ + name = "Evidence Closet" + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/chapelcourt) +"dM" = ( +/obj/machinery/conveyor/holodeck{ + dir = 5; + icon_state = "conveyor0"; + id = "holocoaster"; + movedir = null; + verted = -1 + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"dN" = ( +/obj/machinery/conveyor/holodeck{ + dir = 8; + id = "holocoaster" + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"dO" = ( +/obj/machinery/conveyor/holodeck{ + dir = 6; + id = "holocoaster"; + movedir = null; + verted = -1 + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"dP" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "green" + }, +/area/holodeck/rec_center/firingrange) +"dQ" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTHWEST)"; + icon_state = "white"; + dir = 9 + }, +/area/holodeck/rec_center/firingrange) +"dR" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTH)"; + icon_state = "white"; + dir = 1 + }, +/area/holodeck/rec_center/firingrange) +"dS" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (NORTHEAST)"; + icon_state = "white"; + dir = 5 + }, +/area/holodeck/rec_center/firingrange) +"dT" = ( +/turf/open/floor/holofloor{ + dir = 4; + icon_state = "green" + }, +/area/holodeck/rec_center/firingrange) +"dU" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/refuel) +"dV" = ( +/obj/item/cardboard_cutout/adaptive{ + color = "#9999BB"; + icon_state = "cutout_viva"; + name = "Black Rook"; + tag = "icon-cutout_viva" + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/spacechess) +"dW" = ( +/obj/item/cardboard_cutout/adaptive{ + color = "#9999BB"; + icon_state = "cutout_mime"; + name = "Black Queen"; + tag = "icon-cutout_mime" + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/spacechess) +"dX" = ( +/obj/item/cardboard_cutout/adaptive{ + color = "#9999BB"; + icon_state = "cutout_clown"; + name = "Black King"; + tag = "icon-cutout_clown" + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/spacechess) +"dY" = ( +/obj/item/cardboard_cutout/adaptive{ + color = "#9999BB"; + icon_state = "cutout_ian"; + name = "Black Knight"; + tag = "icon-cutout_ian" + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/spacechess) +"dZ" = ( +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"ea" = ( +/obj/structure/chair/wood/wings, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"eb" = ( +/obj/structure/window/reinforced, +/obj/machinery/mass_driver{ + dir = 1; + icon_state = "mass_driver"; + id = "trektorpedo1"; + name = "photon torpedo tube"; + tag = "icon-mass_driver (NORTH)" + }, +/obj/item/toy/minimeteor{ + color = ""; + desc = "A primitive long-range weapon, inferior to Nanotrasen's perfected bluespace artillery."; + icon = 'icons/effects/effects.dmi'; + icon_state = "impact_laser"; + name = "photon torpedo" + }, +/turf/open/floor/holofloor/hyperspace, +/area/holodeck/rec_center/kobayashi) +"ec" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/computer/arcade/orion_trail{ + desc = "A test for cadets"; + events = list("Raiders" = 3, "Interstellar Flux" = 1, "Illness" = 3, "Breakdown" = 2, "Malfunction" = 2, "Collision" = 1, "Spaceport" = 2); + icon = 'icons/obj/machines/particle_accelerator.dmi'; + icon_state = "control_boxp"; + name = "Kobayashi Maru control computer"; + prizes = list(/obj/item/weapon/paper/trek_diploma = 1); + settlers = list("Kirk","Worf","Gene") + }, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"ed" = ( +/obj/machinery/button/massdriver{ + id = "trektorpedo1"; + layer = 3.9; + name = "photon torpedo button"; + pixel_x = -16; + pixel_y = -5 + }, +/obj/machinery/button/massdriver{ + id = "trektorpedo2"; + layer = 3.9; + name = "photon torpedo button"; + pixel_x = 16; + pixel_y = -5 + }, +/obj/machinery/computer/arcade/orion_trail{ + desc = "A test for cadets"; + events = list("Raiders" = 3, "Interstellar Flux" = 1, "Illness" = 3, "Breakdown" = 2, "Malfunction" = 2, "Collision" = 1, "Spaceport" = 2); + icon = 'icons/obj/machines/particle_accelerator.dmi'; + icon_state = "control_boxp"; + name = "Kobayashi Maru control computer"; + prizes = list(/obj/item/weapon/paper/trek_diploma = 1); + settlers = list("Kirk","Worf","Gene") + }, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"ee" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/computer/arcade/orion_trail{ + desc = "A test for cadets"; + events = list("Raiders" = 3, "Interstellar Flux" = 1, "Illness" = 3, "Breakdown" = 2, "Malfunction" = 2, "Collision" = 1, "Spaceport" = 2); + icon = 'icons/obj/machines/particle_accelerator.dmi'; + icon_state = "control_boxp"; + name = "Kobayashi Maru control computer"; + prizes = list(/obj/item/weapon/paper/trek_diploma = 1); + settlers = list("Kirk","Worf","Gene") + }, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"ef" = ( +/obj/structure/window/reinforced, +/obj/machinery/mass_driver{ + dir = 1; + icon_state = "mass_driver"; + id = "trektorpedo2"; + name = "photon torpedo tube"; + tag = "icon-mass_driver (NORTH)" + }, +/obj/item/toy/minimeteor{ + color = ""; + desc = "A primitive long-range weapon, inferior to Nanotrasen's perfected bluespace artillery."; + icon = 'icons/effects/effects.dmi'; + icon_state = "impact_laser"; + name = "photon torpedo" + }, +/turf/open/floor/holofloor/hyperspace, +/area/holodeck/rec_center/kobayashi) +"eg" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/holofloor{ + tag = "icon-chapel (NORTH)"; + icon_state = "chapel"; + dir = 1 + }, +/area/holodeck/rec_center/chapelcourt) +"eh" = ( +/turf/open/floor/holofloor{ + tag = "icon-chapel (EAST)"; + icon_state = "chapel"; + dir = 4 + }, +/area/holodeck/rec_center/chapelcourt) +"ei" = ( +/obj/structure/chair, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/chapelcourt) +"ej" = ( +/turf/open/floor/holofloor{ + tag = "icon-chapel (NORTH)"; + icon_state = "chapel"; + dir = 1 + }, +/area/holodeck/rec_center/chapelcourt) +"ek" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/holofloor{ + tag = "icon-chapel (EAST)"; + icon_state = "chapel"; + dir = 4 + }, +/area/holodeck/rec_center/chapelcourt) +"el" = ( +/obj/machinery/conveyor/holodeck{ + id = "holocoaster" + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"em" = ( +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"en" = ( +/obj/machinery/conveyor/holodeck{ + dir = 1; + id = "holocoaster"; + layer = 2.5 + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"eo" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (WEST)"; + icon_state = "white"; + dir = 8 + }, +/area/holodeck/rec_center/firingrange) +"ep" = ( +/obj/structure/target_stake, +/obj/machinery/magnetic_module, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/firingrange) +"eq" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (EAST)"; + icon_state = "white"; + dir = 4 + }, +/area/holodeck/rec_center/firingrange) +"er" = ( +/obj/item/cardboard_cutout/adaptive{ + color = "#9999BB"; + icon_state = "cutout_greytide"; + name = "Black Pawn"; + tag = "icon-cutout_greytide" + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/spacechess) +"es" = ( +/obj/item/cardboard_cutout/adaptive{ + color = "#9999BB"; + icon_state = "cutout_greytide"; + name = "Black Pawn"; + tag = "icon-cutout_greytide" + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/spacechess) +"et" = ( +/obj/machinery/door/window/westleft{ + dir = 2; + icon_state = "right" + }, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"eu" = ( +/obj/structure/window/reinforced, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"ev" = ( +/obj/machinery/door/window/westleft{ + dir = 2 + }, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"ew" = ( +/obj/structure/table/glass, +/obj/machinery/recharger, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"ex" = ( +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"ey" = ( +/obj/structure/chair/comfy{ + tag = "icon-comfychair (NORTH)"; + icon_state = "comfychair"; + dir = 1 + }, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"ez" = ( +/obj/structure/table/glass, +/obj/item/weapon/gun/energy/e_gun/mini/practice_phaser, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"eA" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "chapel"; + tag = "icon-chapel" + }, +/area/holodeck/rec_center/chapelcourt) +"eB" = ( +/turf/open/floor/holofloor{ + tag = "icon-chapel"; + icon_state = "chapel"; + dir = 2 + }, +/area/holodeck/rec_center/chapelcourt) +"eC" = ( +/obj/item/weapon/gavelblock, +/obj/item/weapon/gavelhammer, +/obj/structure/table/wood, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/chapelcourt) +"eD" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "chapel"; + tag = "icon-chapel" + }, +/area/holodeck/rec_center/chapelcourt) +"eE" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/holofloor{ + tag = "icon-chapel"; + icon_state = "chapel"; + dir = 2 + }, +/area/holodeck/rec_center/chapelcourt) +"eF" = ( +/obj/item/weapon/shovel, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"eG" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (SOUTHWEST)"; + icon_state = "white"; + dir = 10 + }, +/area/holodeck/rec_center/firingrange) +"eH" = ( +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/firingrange) +"eI" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/holofloor{ + tag = "icon-white_warn (SOUTHEAST)"; + icon_state = "white"; + dir = 6 + }, +/area/holodeck/rec_center/firingrange) +"eJ" = ( +/obj/item/weapon/weldingtool, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/refuel) +"eK" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/spacechess) +"eL" = ( +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/spacechess) +"eM" = ( +/turf/open/floor/holofloor{ + tag = "icon-stairs-old (WEST)"; + icon_state = "stairs-old"; + dir = 8 + }, +/area/holodeck/rec_center/thunderdome1218) +"eN" = ( +/obj/structure/table/wood, +/obj/item/weapon/melee/chainofcommand{ + name = "chain whip" + }, +/obj/item/weapon/twohanded/spear, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/thunderdome1218) +"eO" = ( +/obj/structure/table/wood, +/obj/item/weapon/scythe, +/obj/item/weapon/twohanded/spear, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/thunderdome1218) +"eP" = ( +/obj/structure/table/wood, +/obj/item/weapon/tailclub, +/obj/item/weapon/twohanded/spear, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/thunderdome1218) +"eQ" = ( +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/chapelcourt) +"eR" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "red" + }, +/area/holodeck/rec_center/firingrange) +"eS" = ( +/turf/open/floor/holofloor, +/area/holodeck/rec_center/firingrange) +"eT" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/holofloor{ + dir = 4; + icon_state = "red" + }, +/area/holodeck/rec_center/firingrange) +"eU" = ( +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/thunderdome1218) +"eV" = ( +/obj/machinery/modular_computer/console/preset/civilian, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"eW" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"eX" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"eY" = ( +/obj/machinery/computer/station_alert, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"eZ" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/holofloor{ + tag = "icon-chapel (NORTH)"; + icon_state = "chapel"; + dir = 1 + }, +/area/holodeck/rec_center/chapelcourt) +"fa" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/holofloor{ + tag = "icon-chapel (EAST)"; + icon_state = "chapel"; + dir = 4 + }, +/area/holodeck/rec_center/chapelcourt) +"fb" = ( +/obj/machinery/modular_computer/console/preset/civilian, +/obj/structure/window/reinforced, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"fc" = ( +/obj/machinery/computer/atmos_alert, +/obj/structure/window/reinforced, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"fd" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "chapel"; + tag = "icon-chapel" + }, +/area/holodeck/rec_center/chapelcourt) +"fe" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/holofloor{ + tag = "icon-chapel"; + icon_state = "chapel"; + dir = 2 + }, +/area/holodeck/rec_center/chapelcourt) +"ff" = ( +/obj/machinery/conveyor/holodeck{ + id = "holocoaster" + }, +/obj/structure/chair/office{ + dir = 1; + name = "coaster car" + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"fg" = ( +/obj/machinery/conveyor_switch/oneway{ + convdir = -1; + id = "holocoaster" + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"fh" = ( +/obj/structure/window/reinforced, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"fi" = ( +/obj/item/cardboard_cutout/adaptive{ + icon_state = "cutout_greytide"; + name = "White Pawn"; + tag = "icon-cutout_greytide" + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/spacechess) +"fj" = ( +/obj/item/cardboard_cutout/adaptive{ + icon_state = "cutout_greytide"; + name = "White Pawn"; + tag = "icon-cutout_greytide" + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/spacechess) +"fk" = ( +/obj/structure/window/reinforced, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/thunderdome1218) +"fl" = ( +/obj/machinery/door/window/westleft{ + dir = 2 + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/thunderdome1218) +"fm" = ( +/obj/machinery/door/window/westleft{ + dir = 2; + icon_state = "right" + }, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"fn" = ( +/obj/structure/table, +/obj/item/weapon/folder, +/obj/item/weapon/pen/blue, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/holofloor{ + tag = "icon-neutral (NORTH)"; + icon_state = "neutral"; + dir = 1 + }, +/area/holodeck/rec_center/kobayashi) +"fo" = ( +/obj/structure/table, +/obj/item/weapon/folder, +/obj/item/weapon/pen, +/turf/open/floor/holofloor{ + tag = "icon-neutral (NORTH)"; + icon_state = "neutral"; + dir = 1 + }, +/area/holodeck/rec_center/kobayashi) +"fp" = ( +/obj/structure/table, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/weapon/folder, +/obj/item/weapon/pen/red, +/turf/open/floor/holofloor{ + tag = "icon-neutral (NORTH)"; + icon_state = "neutral"; + dir = 1 + }, +/area/holodeck/rec_center/kobayashi) +"fq" = ( +/obj/machinery/door/window/westleft{ + dir = 2 + }, +/turf/open/floor/holofloor/plating, +/area/holodeck/rec_center/kobayashi) +"fr" = ( +/obj/structure/closet/crate/miningcar{ + can_buckle = 1; + desc = "Great for mining!"; + name = "minecart" + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"fs" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "red" + }, +/area/holodeck/rec_center/firingrange) +"ft" = ( +/obj/item/weapon/paper/range, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/firingrange) +"fu" = ( +/obj/structure/table/reinforced, +/obj/machinery/magnetic_controller{ + autolink = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/holofloor{ + dir = 4; + icon_state = "red" + }, +/area/holodeck/rec_center/firingrange) +"fv" = ( +/obj/item/cardboard_cutout/adaptive{ + icon_state = "cutout_viva"; + name = "White Rook"; + tag = "icon-cutout_viva" + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/spacechess) +"fw" = ( +/obj/item/cardboard_cutout/adaptive{ + icon_state = "cutout_mime"; + name = "White Queen"; + tag = "icon-cutout_mime" + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/spacechess) +"fx" = ( +/obj/item/cardboard_cutout/adaptive{ + icon_state = "cutout_clown"; + name = "White King"; + tag = "icon-cutout_clown" + }, +/turf/open/floor/holofloor{ + icon_state = "white" + }, +/area/holodeck/rec_center/spacechess) +"fy" = ( +/obj/item/cardboard_cutout/adaptive{ + icon_state = "cutout_ian"; + name = "White Knight"; + tag = "icon-cutout_ian" + }, +/turf/open/floor/holofloor{ + dir = 8; + icon_state = "dark"; + tag = "icon-white_warn (WEST)" + }, +/area/holodeck/rec_center/spacechess) +"fz" = ( +/turf/open/floor/holofloor{ + tag = "icon-neutral (NORTH)"; + icon_state = "neutral"; + dir = 1 + }, +/area/holodeck/rec_center/kobayashi) +"fA" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/kobayashi) +"fB" = ( +/turf/open/floor/holofloor{ + dir = 1; + icon_state = "green" + }, +/area/holodeck/rec_center/firingrange) +"fC" = ( +/turf/open/floor/holofloor/grass, +/turf/open/floor/holofloor{ + tag = "icon-warningline (NORTH)"; + icon_state = "warningline"; + dir = 1 + }, +/area/holodeck/rec_center/spacechess) +"fD" = ( +/obj/structure/chair/wood/normal{ + icon_state = "wooden_chair"; + dir = 1 + }, +/turf/open/floor/holofloor/grass, +/area/holodeck/rec_center/thunderdome1218) +"fE" = ( +/obj/structure/rack, +/obj/item/clothing/under/trek/medsci, +/obj/item/clothing/under/trek/medsci, +/obj/item/clothing/under/trek/command, +/turf/open/floor/holofloor{ + tag = "icon-neutral (NORTH)"; + icon_state = "neutral"; + dir = 1 + }, +/area/holodeck/rec_center/kobayashi) +"fF" = ( +/turf/open/floor/holofloor{ + tag = "icon-neutral"; + icon_state = "neutral"; + dir = 2 + }, +/area/holodeck/rec_center/kobayashi) +"fG" = ( +/obj/structure/rack, +/obj/item/clothing/under/trek/engsec, +/obj/item/clothing/under/trek/engsec, +/turf/open/floor/holofloor{ + tag = "icon-neutral (NORTH)"; + icon_state = "neutral"; + dir = 1 + }, +/area/holodeck/rec_center/kobayashi) +"fH" = ( +/obj/machinery/conveyor/holodeck{ + dir = 9; + icon_state = "conveyor0"; + id = "holocoaster"; + tag = "icon-conveyor0 (NORTHWEST)"; + verted = -1 + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"fI" = ( +/obj/machinery/conveyor/holodeck{ + dir = 4; + id = "holocoaster" + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"fJ" = ( +/obj/machinery/conveyor/holodeck{ + dir = 10; + id = "holocoaster"; + verted = -1 + }, +/turf/open/floor/holofloor/asteroid, +/area/holodeck/rec_center/rollercoaster) +"fK" = ( +/obj/item/target, +/obj/item/target/clown, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/firingrange) +"fL" = ( +/obj/item/target, +/obj/item/target/syndicate, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/firingrange) +"fM" = ( +/obj/structure/rack, +/obj/item/weapon/gun/energy/laser/practice, +/obj/item/clothing/ears/earmuffs, +/turf/open/floor/holofloor, +/area/holodeck/rec_center/firingrange) +"fN" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/closed/indestructible/riveted, +/area/space) +"fO" = ( +/turf/closed/indestructible/riveted, +/area/tdome/arena_source) +"fP" = ( +/obj/machinery/igniter, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"fQ" = ( +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"fR" = ( +/obj/structure/rack, +/obj/item/clothing/under/color/red, +/obj/item/clothing/shoes/sneakers/brown, +/obj/item/clothing/suit/armor/tdome/red, +/obj/item/clothing/head/helmet/thunderdome, +/obj/item/weapon/melee/baton/loaded, +/obj/item/weapon/melee/energy/sword/saber/red, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"fS" = ( +/obj/machinery/door/poddoor{ + id = "thunderdomegen"; + name = "General Supply" + }, +/turf/open/floor/plasteel/black, +/area/tdome/arena_source) +"fT" = ( +/obj/machinery/door/poddoor{ + id = "thunderdome"; + name = "Thunderdome Blast Door" + }, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"fU" = ( +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/tdome/arena_source) +"fV" = ( +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/tdome/arena_source) +"fW" = ( +/obj/structure/rack, +/obj/item/clothing/under/color/green, +/obj/item/clothing/shoes/sneakers/brown, +/obj/item/clothing/suit/armor/tdome/green, +/obj/item/clothing/head/helmet/thunderdome, +/obj/item/weapon/melee/baton/loaded, +/obj/item/weapon/melee/energy/sword/saber/green, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"fX" = ( +/turf/open/floor/circuit/green, +/area/tdome/arena_source) +"fY" = ( +/obj/machinery/flasher{ + id = "tdomeflash"; + name = "Thunderdome Flash" + }, +/turf/open/floor/circuit/green, +/area/tdome/arena_source) +"fZ" = ( +/obj/machinery/door/poddoor{ + id = "thunderdomehea"; + name = "Heavy Supply" + }, +/turf/open/floor/plasteel/black, +/area/tdome/arena_source) +"ga" = ( +/obj/structure/rack, +/obj/item/clothing/under/color/red, +/obj/item/clothing/shoes/sneakers/brown, +/obj/item/clothing/suit/armor/vest, +/obj/item/clothing/head/helmet/swat, +/obj/item/weapon/gun/energy/laser, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"gb" = ( +/obj/structure/rack, +/obj/item/clothing/under/color/green, +/obj/item/clothing/shoes/sneakers/brown, +/obj/item/clothing/suit/armor/vest, +/obj/item/clothing/head/helmet/swat, +/obj/item/weapon/gun/energy/laser, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"gc" = ( +/turf/closed/indestructible/riveted, +/area/start) +"gd" = ( +/obj/effect/landmark/start, +/turf/open/floor/plating, +/area/start) +"ge" = ( +/turf/closed/indestructible/riveted, +/area/ctf) +"gf" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTHWEST)"; + dir = 9 + }, +/area/ctf) +"gg" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTH)"; + dir = 1 + }, +/area/ctf) +"gh" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTHEAST)"; + dir = 5 + }, +/area/ctf) +"gi" = ( +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (NORTHWEST)"; + dir = 9 + }, +/area/ctf) +"gj" = ( +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (NORTH)"; + dir = 1 + }, +/area/ctf) +"gk" = ( +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (NORTHEAST)"; + dir = 5 + }, +/area/ctf) +"gl" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (WEST)"; + dir = 8 + }, +/area/ctf) +"gm" = ( +/turf/open/floor/plasteel/black, +/area/ctf) +"gn" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (EAST)"; + dir = 4 + }, +/area/ctf) +"go" = ( +/turf/open/floor/plasteel/blue, +/area/ctf) +"gp" = ( +/turf/open/floor/plasteel/darkblue, +/area/ctf) +"gq" = ( +/obj/structure/barricade/security/ctf, +/turf/open/floor/circuit, +/area/ctf) +"gr" = ( +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/bluespace, +/area/ctf) +"gs" = ( +/obj/structure/barricade/security/ctf, +/turf/open/floor/plasteel/bluespace, +/area/ctf) +"gt" = ( +/turf/open/floor/plasteel/bluespace, +/area/ctf) +"gu" = ( +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (WEST)"; + dir = 8 + }, +/area/ctf) +"gv" = ( +/obj/structure/barricade/security/ctf, +/turf/open/floor/circuit/red, +/area/ctf) +"gw" = ( +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (EAST)"; + dir = 4 + }, +/area/ctf) +"gx" = ( +/turf/open/floor/plasteel/red, +/area/ctf) +"gy" = ( +/obj/structure/kitchenspike, +/turf/open/floor/plasteel/black, +/area/ctf) +"gz" = ( +/turf/closed/indestructible/splashscreen, +/area/start) +"gA" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (SOUTHWEST)"; + dir = 10 + }, +/area/ctf) +"gB" = ( +/turf/open/floor/plasteel/darkblue/side, +/area/ctf) +"gC" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (SOUTHEAST)"; + dir = 6 + }, +/area/ctf) +"gD" = ( +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (SOUTHWEST)"; + dir = 10 + }, +/area/ctf) +"gE" = ( +/turf/open/floor/plasteel/darkred/side, +/area/ctf) +"gF" = ( +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (SOUTHEAST)"; + dir = 6 + }, +/area/ctf) +"gG" = ( +/obj/structure/window/reinforced/fulltile{ + obj_integrity = 5000; + max_integrity = 5000; + name = "hardened window" + }, +/turf/open/floor/plating, +/area/ctf) +"gH" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/black, +/area/ctf) +"gI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel/darkblue/corner, +/area/ctf) +"gJ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/darkblue/corner{ + tag = "icon-darkbluecorners (WEST)"; + dir = 8 + }, +/area/ctf) +"gK" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/ctf) +"gL" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/darkblue/corner, +/area/ctf) +"gM" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel/black, +/area/ctf) +"gN" = ( +/obj/machinery/power/emitter/energycannon, +/turf/open/floor/plating, +/area/ctf) +"gO" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/ctf) +"gP" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/darkblue/corner{ + tag = "icon-darkbluecorners (EAST)"; + dir = 4 + }, +/area/ctf) +"gQ" = ( +/turf/open/floor/plasteel/darkblue/corner{ + tag = "icon-darkbluecorners (WEST)"; + dir = 8 + }, +/area/ctf) +"gR" = ( +/turf/open/floor/plasteel/darkblue/corner{ + tag = "icon-darkbluecorners (EAST)"; + dir = 4 + }, +/area/ctf) +"gS" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating{ + icon_plating = "warnplate" + }, +/area/ctf) +"gT" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/ctf) +"gU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/ctf) +"gV" = ( +/turf/open/floor/plating, +/area/ctf) +"gW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating{ + luminosity = 2 + }, +/area/ctf) +"gX" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/darkblue/corner, +/area/ctf) +"gY" = ( +/turf/open/floor/plasteel/darkblue/corner{ + tag = "icon-darkbluecorners (NORTH)"; + dir = 1 + }, +/area/ctf) +"gZ" = ( +/turf/open/floor/plasteel/darkblue/corner, +/area/ctf) +"ha" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/ctf) +"hb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel/darkblue/corner{ + tag = "icon-darkbluecorners (EAST)"; + dir = 4 + }, +/area/ctf) +"hc" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/darkblue/corner{ + tag = "icon-darkbluecorners (NORTH)"; + dir = 1 + }, +/area/ctf) +"hd" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/darkblue/corner{ + tag = "icon-darkbluecorners (EAST)"; + dir = 4 + }, +/area/ctf) +"he" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel/black, +/area/ctf) +"hf" = ( +/obj/machinery/power/emitter/energycannon{ + tag = "icon-emitter (NORTH)"; + icon_state = "emitter"; + dir = 1 + }, +/turf/open/floor/plating, +/area/ctf) +"hg" = ( +/obj/structure/trap/ctf/blue, +/turf/open/floor/plasteel/blue, +/area/ctf) +"hh" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/circuit, +/area/ctf) +"hi" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/circuit, +/area/ctf) +"hj" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/circuit, +/area/ctf) +"hk" = ( +/turf/open/floor/plasteel/darkred, +/area/ctf) +"hl" = ( +/obj/structure/trap/ctf/red, +/turf/open/floor/plasteel/darkred, +/area/ctf) +"hm" = ( +/turf/closed/indestructible/rock/snow, +/area/syndicate_mothership) +"hn" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/circuit, +/area/ctf) +"ho" = ( +/turf/open/floor/circuit, +/area/ctf) +"hp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/circuit, +/area/ctf) +"hq" = ( +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"hr" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/circuit, +/area/ctf) +"hs" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/circuit, +/area/ctf) +"ht" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/circuit, +/area/ctf) +"hu" = ( +/obj/structure/barricade/security/ctf, +/turf/open/floor/circuit/green/off, +/area/ctf) +"hv" = ( +/obj/structure/trap/ctf/red, +/turf/open/floor/plasteel/red, +/area/ctf) +"hw" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTHWEST)"; + dir = 9 + }, +/area/ctf) +"hx" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTH)"; + dir = 1 + }, +/area/ctf) +"hy" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTHEAST)"; + dir = 5 + }, +/area/ctf) +"hz" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/circuit/green/off, +/area/ctf) +"hA" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (NORTHWEST)"; + dir = 9 + }, +/area/ctf) +"hB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (NORTH)"; + dir = 1 + }, +/area/ctf) +"hC" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (NORTHEAST)"; + dir = 5 + }, +/area/ctf) +"hD" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (WEST)"; + dir = 8 + }, +/area/ctf) +"hE" = ( +/turf/open/floor/circuit/green/off, +/area/ctf) +"hF" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (EAST)"; + dir = 4 + }, +/area/ctf) +"hG" = ( +/turf/open/floor/circuit/red, +/area/ctf) +"hH" = ( +/turf/open/floor/circuit/green/anim, +/area/ctf) +"hI" = ( +/obj/machinery/capture_the_flag/blue, +/turf/open/floor/circuit/green/anim, +/area/ctf) +"hJ" = ( +/obj/item/weapon/twohanded/ctf/blue, +/turf/open/floor/circuit/green/anim, +/area/ctf) +"hK" = ( +/obj/item/weapon/twohanded/ctf/red, +/turf/open/floor/circuit/green/anim, +/area/ctf) +"hL" = ( +/obj/machinery/capture_the_flag/red, +/turf/open/floor/circuit/green/anim, +/area/ctf) +"hM" = ( +/obj/effect/landmark/shuttle_import, +/turf/open/space, +/area/space) +"hN" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (SOUTHWEST)"; + dir = 10 + }, +/area/ctf) +"hO" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/darkblue/side, +/area/ctf) +"hP" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (SOUTHEAST)"; + dir = 6 + }, +/area/ctf) +"hQ" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/circuit/green/off, +/area/ctf) +"hR" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (SOUTHWEST)"; + dir = 10 + }, +/area/ctf) +"hS" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/darkred/side, +/area/ctf) +"hT" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (SOUTHEAST)"; + dir = 6 + }, +/area/ctf) +"hU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/circuit/red, +/area/ctf) +"hV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/circuit/red, +/area/ctf) +"hW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/circuit/red, +/area/ctf) +"hX" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/circuit/red, +/area/ctf) +"hY" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/circuit/red, +/area/ctf) +"hZ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/circuit/red, +/area/ctf) +"ia" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/circuit/red, +/area/ctf) +"ib" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/circuit/red, +/area/ctf) +"ic" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/ctf) +"id" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/darkred/corner, +/area/ctf) +"ie" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (WEST)"; + dir = 8 + }, +/area/ctf) +"if" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (WEST)"; + dir = 8 + }, +/area/ctf) +"ig" = ( +/turf/open/floor/plasteel/darkred/corner, +/area/ctf) +"ih" = ( +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (NORTH)"; + dir = 1 + }, +/area/ctf) +"ii" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (NORTH)"; + dir = 1 + }, +/area/ctf) +"ij" = ( +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (EAST)"; + dir = 4 + }, +/area/ctf) +"ik" = ( +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (WEST)"; + dir = 8 + }, +/area/ctf) +"il" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (WEST)"; + dir = 8 + }, +/area/ctf) +"im" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel/black, +/area/ctf) +"in" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (EAST)"; + dir = 4 + }, +/area/ctf) +"io" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (NORTH)"; + dir = 1 + }, +/area/ctf) +"ip" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel/darkred/corner{ + tag = "icon-darkredcorners (NORTH)"; + dir = 1 + }, +/area/ctf) +"iq" = ( +/turf/closed/indestructible/riveted, +/area/centcom/prison) +"ir" = ( +/obj/machinery/status_display, +/turf/closed/indestructible/riveted, +/area/centcom/control) +"is" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/indestructible/riveted, +/area/centcom/control) +"it" = ( +/turf/closed/indestructible/riveted, +/area/centcom/control) +"iu" = ( +/obj/machinery/ai_status_display, +/turf/closed/indestructible/riveted, +/area/centcom/control) +"iv" = ( +/obj/effect/landmark{ + name = "prisonwarp" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/prison) +"iw" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows2"; + dir = 6 + }, +/area/centcom/prison) +"ix" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"iy" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/crowbar/red, +/obj/item/weapon/tank/internals/emergency_oxygen/engi, +/obj/item/clothing/mask/gas, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"iz" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/centcom/control) +"iA" = ( +/obj/structure/table/reinforced, +/obj/item/device/radio{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/device/radio{ + pixel_x = -5; + pixel_y = 5 + }, +/obj/item/device/radio, +/obj/machinery/airalarm{ + pixel_y = 23 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"iB" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/lockbox/loyalty, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"iC" = ( +/obj/item/weapon/storage/box/emps{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/flashbangs, +/obj/item/weapon/grenade/plastic/x4, +/obj/item/weapon/grenade/plastic/x4, +/obj/item/weapon/grenade/plastic/x4, +/obj/structure/table/reinforced, +/obj/item/clothing/ears/earmuffs, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 0; + pixel_y = 32 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"iD" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/restraints/handcuffs/cable/zipties, +/obj/item/device/assembly/flash/handheld, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"iE" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/fancy/donut_box, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"iF" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/prison) +"iG" = ( +/turf/closed/indestructible/fakedoor{ + name = "Centcom Cell" + }, +/area/centcom/prison) +"iH" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"iI" = ( +/obj/structure/closet/secure_closet/security, +/obj/item/weapon/storage/belt/security/full, +/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/clothing/head/helmet/swat/nanotrasen, +/obj/item/weapon/crowbar/red, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"iJ" = ( +/obj/structure/closet/secure_closet/security, +/obj/item/weapon/storage/belt/security/full, +/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/clothing/head/helmet/swat/nanotrasen, +/obj/item/weapon/crowbar/red, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"iK" = ( +/turf/closed/indestructible/riveted, +/area/centcom/supply) +"iL" = ( +/turf/closed/indestructible/fakedoor{ + name = "Centcom Warehouse" + }, +/area/centcom/supply) +"iM" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/indestructible/riveted, +/area/centcom/prison) +"iN" = ( +/obj/structure/sign/securearea, +/turf/closed/indestructible/riveted, +/area/centcom/prison) +"iO" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"iP" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"iQ" = ( +/obj/machinery/status_display{ + density = 0; + name = "cargo display"; + pixel_x = 0; + pixel_y = 0; + supply_display = 1 + }, +/turf/closed/indestructible/riveted, +/area/centcom/supply) +"iR" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/supply) +"iS" = ( +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/centcom/supply) +"iT" = ( +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTH)"; + icon_state = "brown"; + dir = 1 + }, +/area/centcom/supply) +"iU" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTHEAST)"; + icon_state = "brown"; + dir = 5 + }, +/area/centcom/supply) +"iV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"iW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"iX" = ( +/obj/structure/closet/secure_closet/security, +/obj/item/weapon/storage/belt/security/full, +/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/clothing/head/helmet/swat/nanotrasen, +/obj/item/weapon/crowbar/red, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"iY" = ( +/obj/structure/closet/secure_closet/security, +/obj/item/weapon/storage/belt/security/full, +/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/clothing/head/helmet/swat/nanotrasen, +/obj/item/weapon/crowbar/red, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"iZ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/centcom/supply) +"ja" = ( +/turf/open/floor/plasteel/neutral, +/area/centcom/supply) +"jb" = ( +/turf/open/floor/plasteel/brown{ + dir = 4 + }, +/area/centcom/supply) +"jc" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/centcom{ + name = "Centcom"; + opacity = 1; + req_access_txt = "0" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jd" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; + pixel_x = 0 + }, +/turf/open/floor/plating, +/area/centcom/supply) +"je" = ( +/obj/machinery/conveyor{ + dir = 1; + id = "QMLoad2"; + movedir = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jf" = ( +/obj/machinery/conveyor_switch/oneway{ + convdir = 1; + id = "QMLoad2"; + pixel_x = 6 + }, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/centcom/supply) +"jg" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/centcom/supply) +"jh" = ( +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = -32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"ji" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jj" = ( +/obj/machinery/vending/security, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/control) +"jk" = ( +/obj/structure/extinguisher_cabinet{ + dir = 4; + pixel_x = 24; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jl" = ( +/obj/machinery/door/poddoor{ + density = 1; + icon_state = "closed"; + id = "QMLoaddoor2"; + name = "Supply Dock Loading Door"; + opacity = 1 + }, +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad2"; + movedir = 8 + }, +/obj/effect/turf_decal/stripes/end{ + dir = 8 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_end (WEST)" + }, +/area/centcom/supply) +"jm" = ( +/obj/structure/plasticflaps, +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad2"; + movedir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/supply) +"jn" = ( +/obj/machinery/door/poddoor{ + density = 1; + icon_state = "closed"; + id = "QMLoaddoor2"; + name = "Supply Dock Loading Door"; + opacity = 1 + }, +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad2"; + movedir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/supply) +"jo" = ( +/obj/machinery/conveyor{ + dir = 1; + id = "QMLoad2"; + movedir = 2 + }, +/obj/effect/turf_decal/stripes/end, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jq" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jr" = ( +/obj/item/stack/packageWrap, +/obj/item/weapon/hand_labeler, +/obj/structure/table, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/supply) +"js" = ( +/obj/machinery/door/airlock/external{ + name = "Supply Shuttle"; + req_access_txt = "106" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jt" = ( +/obj/structure/fans/tiny, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/supply) +"ju" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jv" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/filingcabinet/filingcabinet, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jw" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jx" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jy" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jz" = ( +/obj/machinery/button/door{ + id = "QMLoaddoor"; + layer = 4; + name = "Loading Doors"; + pixel_x = -27; + pixel_y = -5 + }, +/obj/machinery/button/door{ + dir = 2; + id = "QMLoaddoor2"; + layer = 4; + name = "Loading Doors"; + pixel_x = -27; + pixel_y = 5 + }, +/obj/machinery/computer/cargo, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jA" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jB" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/control) +"jC" = ( +/obj/structure/noticeboard{ + dir = 8; + icon_state = "nboard00"; + pixel_x = 32; + pixel_y = 0; + tag = "icon-nboard00 (WEST)" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jD" = ( +/obj/docking_port/stationary{ + dir = 8; + dwidth = 5; + height = 7; + id = "supply_away"; + name = "Centcom"; + width = 12 + }, +/turf/open/space, +/area/space) +"jE" = ( +/turf/open/floor/plasteel/loadingarea{ + dir = 8 + }, +/area/centcom/supply) +"jF" = ( +/obj/machinery/status_display, +/turf/closed/indestructible/riveted, +/area/centcom/supply) +"jG" = ( +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/plasteel, +/area/centcom/control) +"jH" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"jI" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jJ" = ( +/obj/machinery/door/poddoor{ + density = 1; + icon_state = "closed"; + id = "QMLoaddoor"; + name = "Supply Dock Loading Door"; + opacity = 1 + }, +/obj/machinery/conveyor{ + dir = 8; + id = "QMLoad" + }, +/obj/effect/turf_decal/stripes/end{ + dir = 8 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_end (WEST)" + }, +/area/centcom/supply) +"jK" = ( +/obj/structure/plasticflaps, +/obj/machinery/conveyor{ + dir = 8; + id = "QMLoad" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/supply) +"jL" = ( +/obj/machinery/door/poddoor{ + density = 1; + icon_state = "closed"; + id = "QMLoaddoor"; + name = "Supply Dock Loading Door"; + opacity = 1 + }, +/obj/machinery/conveyor{ + dir = 8; + id = "QMLoad" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/supply) +"jM" = ( +/obj/machinery/conveyor{ + dir = 8; + id = "QMLoad" + }, +/obj/effect/turf_decal/stripes/end{ + dir = 1 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_end (NORTH)" + }, +/area/centcom/supply) +"jN" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jO" = ( +/obj/structure/closet/wardrobe/cargotech, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jP" = ( +/obj/machinery/conveyor{ + dir = 1; + id = "QMLoad"; + movedir = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jQ" = ( +/obj/machinery/conveyor_switch/oneway{ + convdir = 1; + id = "QMLoad"; + pixel_x = 6 + }, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/centcom/supply) +"jR" = ( +/obj/structure/closet/secure_closet/quartermaster, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/supply) +"jS" = ( +/obj/machinery/newscaster/security_unit{ + pixel_x = -32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jT" = ( +/obj/machinery/computer/prisoner, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"jU" = ( +/obj/machinery/computer/security, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jV" = ( +/obj/machinery/computer/secure_data, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/control) +"jW" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"jX" = ( +/obj/docking_port/stationary{ + area_type = /area/syndicate_mothership; + dir = 1; + dwidth = 25; + height = 50; + id = "emergency_syndicate"; + name = "Syndicate Auxillary Shuttle Dock"; + turf_type = /turf/open/floor/plating/asteroid/snow; + width = 50 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"jY" = ( +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/centcom/supply) +"jZ" = ( +/obj/structure/closet/secure_closet{ + anchored = 1; + name = "Contraband Locker"; + req_access_txt = "19" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"ka" = ( +/obj/structure/closet/secure_closet/courtroom, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kb" = ( +/obj/structure/closet/lawcloset, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kc" = ( +/obj/item/weapon/storage/box/handcuffs, +/obj/item/weapon/crowbar/red, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kd" = ( +/obj/structure/bookcase/random, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"ke" = ( +/obj/structure/bookcase/random, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kf" = ( +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/device/taperecorder, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kg" = ( +/obj/item/weapon/wrench, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/flash/handheld, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kh" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"ki" = ( +/obj/structure/table/wood, +/obj/item/weapon/phone{ + desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/mask/cigarette/cigar/cohiba{ + pixel_x = 6 + }, +/obj/item/clothing/mask/cigarette/cigar/havana{ + pixel_x = 2 + }, +/obj/item/clothing/mask/cigarette/cigar{ + pixel_x = 4.5 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kj" = ( +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kk" = ( +/obj/item/weapon/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/storage/secure/briefcase, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kl" = ( +/turf/closed/indestructible/riveted, +/area/syndicate_mothership/control) +"km" = ( +/obj/machinery/door/poddoor/shuttledock{ + checkdir = 1; + name = "syndicate blast door"; + turftype = /turf/open/floor/plating/asteroid/snow + }, +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"kn" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/centcom/supply) +"ko" = ( +/obj/structure/filingcabinet/medical, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"kp" = ( +/obj/structure/filingcabinet/security, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"kq" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kr" = ( +/turf/open/floor/wood, +/area/centcom/control) +"ks" = ( +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kt" = ( +/obj/machinery/newscaster/security_unit{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"ku" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"kv" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/handcuffs, +/obj/item/weapon/crowbar/red, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"kw" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"kx" = ( +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/obj/structure/table/wood, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"ky" = ( +/obj/structure/chair/comfy/brown, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kz" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24; + pixel_y = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kA" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kB" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kC" = ( +/obj/structure/chair, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kD" = ( +/obj/structure/table/wood, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kE" = ( +/obj/structure/chair/comfy/brown{ + color = "#596479"; + dir = 2 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kF" = ( +/obj/structure/table/wood, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/blue, +/obj/item/weapon/stamp/law, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kG" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kH" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"kI" = ( +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"kJ" = ( +/turf/open/floor/plasteel/brown, +/area/centcom/supply) +"kK" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -26 + }, +/turf/open/floor/plasteel/brown, +/area/centcom/supply) +"kL" = ( +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (SOUTHEAST)"; + icon_state = "brown"; + dir = 6 + }, +/area/centcom/supply) +"kM" = ( +/turf/closed/indestructible/fakedoor{ + name = "Centcom" + }, +/area/centcom/control) +"kN" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"kO" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"kP" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/wrench, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/flash/handheld, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"kQ" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/device/flashlight/seclite, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"kR" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kS" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/blue, +/obj/item/weapon/stamp/law, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kT" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom Security"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/control) +"kU" = ( +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 2; + icon_state = "leftsecure"; + name = "Centcom Stand"; + req_access_txt = "109"; + tag = "icon-leftsecure (NORTH)" + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kV" = ( +/obj/structure/table/wood, +/obj/machinery/door/window, +/obj/item/device/radio/intercom{ + desc = "Talk smack through this."; + syndie = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kW" = ( +/obj/structure/table/wood, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/weapon/gavelblock, +/obj/item/weapon/gavelhammer, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kX" = ( +/obj/structure/table/wood, +/obj/item/device/radio/intercom{ + desc = "Talk smack through this."; + syndie = 1 + }, +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 2; + icon_state = "leftsecure"; + name = "Centcom Stand"; + req_access_txt = "109"; + tag = "icon-leftsecure (NORTH)" + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kY" = ( +/obj/structure/table/wood, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/device/megaphone, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"kZ" = ( +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 2; + icon_state = "leftsecure"; + name = "Centcom Stand"; + req_access_txt = "109"; + tag = "icon-leftsecure (NORTH)" + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"la" = ( +/turf/open/space/transit, +/area/space) +"lb" = ( +/obj/machinery/door/airlock/centcom{ + name = "Shuttle Control Office"; + opacity = 1; + req_access_txt = "109" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/supply) +"lc" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom Supply"; + req_access_txt = "106" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/supply) +"ld" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/turf/open/floor/plating/asteroid, +/area/centcom/control) +"le" = ( +/obj/machinery/door/poddoor/shutters, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/control) +"lf" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/fernybush, +/turf/open/floor/plasteel{ + dir = 6; + icon_state = "asteroid8"; + name = "sand" + }, +/area/centcom/control) +"lg" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen/red, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"lh" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/handcuffs, +/obj/item/weapon/crowbar/red, +/obj/item/weapon/crowbar/power, +/obj/item/weapon/storage/belt/security/full, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"li" = ( +/obj/structure/chair/comfy/brown{ + buildstackamount = 0; + dir = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"lj" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -24 + }, +/turf/open/floor/plasteel/vault, +/area/centcom/control) +"lk" = ( +/turf/open/floor/plasteel/vault, +/area/centcom/control) +"ll" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/briefcase, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"lm" = ( +/obj/structure/noticeboard{ + dir = 8; + icon_state = "nboard00"; + pixel_x = 32; + pixel_y = 0; + tag = "icon-nboard00 (WEST)" + }, +/turf/open/floor/plasteel/vault, +/area/centcom/control) +"ln" = ( +/obj/structure/flora/grass/both, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"lo" = ( +/obj/structure/table/reinforced, +/obj/machinery/computer/stockexchange, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"lp" = ( +/obj/machinery/computer/auxillary_base{ + pixel_y = 32 + }, +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/pen/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"lq" = ( +/obj/machinery/computer/shuttle/labor, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"lr" = ( +/obj/machinery/computer/shuttle/mining, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"ls" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/table/reinforced, +/obj/item/weapon/crowbar/red, +/obj/item/weapon/wrench, +/obj/item/clothing/mask/gas, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"lt" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"lu" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/filingcabinet/filingcabinet, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"lv" = ( +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTHWEST)"; + icon_state = "brown"; + dir = 9 + }, +/area/centcom/supply) +"lw" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTHEAST)"; + icon_state = "brown"; + dir = 5 + }, +/area/centcom/supply) +"lx" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/directions/engineering{ + desc = "A sign that shows there are doors here. There are doors everywhere!"; + icon_state = "doors"; + name = "WARNING: BLAST DOORS"; + pixel_x = 0; + pixel_y = 0; + tag = "icon-doors" + }, +/turf/open/floor/plating, +/area/centcom/control) +"ly" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"lz" = ( +/turf/open/floor/plasteel/darkred/side{ + dir = 8 + }, +/area/centcom/control) +"lA" = ( +/turf/open/floor/plasteel/vault{ + dir = 9 + }, +/area/centcom/control) +"lB" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom Security"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"lC" = ( +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"lD" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/item/device/radio/intercom{ + desc = "Talk smack through this."; + pixel_x = -32; + syndie = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"lE" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"lF" = ( +/obj/structure/flora/grass/brown, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"lG" = ( +/obj/structure/flora/tree/pine, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"lH" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows"; + dir = 1 + }, +/area/syndicate_mothership/control) +"lI" = ( +/obj/item/weapon/disk/data, +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"lJ" = ( +/turf/closed/indestructible/riveted, +/area/centcom/ferry) +"lK" = ( +/obj/machinery/computer/security/telescreen/entertainment, +/turf/closed/indestructible/riveted, +/area/centcom/ferry) +"lL" = ( +/obj/machinery/ai_status_display, +/turf/closed/indestructible/riveted, +/area/centcom/supply) +"lM" = ( +/obj/machinery/computer/cargo, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"lN" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTHWEST)"; + icon_state = "brown"; + dir = 9 + }, +/area/centcom/supply) +"lO" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTH)"; + icon_state = "brown"; + dir = 1 + }, +/area/centcom/supply) +"lP" = ( +/obj/structure/noticeboard{ + dir = 8; + icon_state = "nboard00"; + pixel_x = 32; + pixel_y = 0; + tag = "icon-nboard00 (WEST)" + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTHEAST)"; + icon_state = "brown"; + dir = 5 + }, +/area/centcom/supply) +"lQ" = ( +/obj/structure/table, +/obj/item/weapon/clipboard, +/obj/item/stack/packageWrap, +/obj/item/stack/cable_coil/white, +/obj/item/weapon/hand_labeler, +/turf/open/floor/plasteel/green/side{ + dir = 9 + }, +/area/centcom/control) +"lR" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/green/side{ + dir = 1 + }, +/area/centcom/control) +"lS" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/turf/open/floor/plasteel/green/side{ + dir = 1 + }, +/area/centcom/control) +"lT" = ( +/turf/open/floor/plasteel/green/side{ + dir = 1 + }, +/area/centcom/control) +"lU" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/green/side{ + dir = 1 + }, +/area/centcom/control) +"lV" = ( +/obj/item/weapon/storage/firstaid/regular, +/obj/structure/table, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/centcom/control) +"lW" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/genericbush, +/turf/open/floor/grass, +/area/centcom/control) +"lX" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/control) +"lY" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen/red, +/obj/machinery/button/door{ + id = "XCCsec3"; + name = "XCC Shutter 3 Control"; + pixel_x = -24; + pixel_y = 24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"lZ" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/obj/machinery/button/door{ + id = "XCCsecdepartment"; + layer = 3; + name = "CC Security Checkpoint Control"; + pixel_x = 24; + pixel_y = 24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"ma" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/darkred/side{ + dir = 8 + }, +/area/centcom/control) +"mb" = ( +/obj/machinery/computer/secure_data, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"mc" = ( +/obj/structure/table/wood, +/obj/item/device/radio/intercom{ + desc = "Talk smack through this."; + syndie = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"md" = ( +/obj/structure/table/wood, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"me" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder, +/obj/item/weapon/pen/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"mf" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/newscaster{ + pixel_x = 32 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"mg" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows2"; + dir = 1 + }, +/area/syndicate_mothership/control) +"mh" = ( +/obj/item/toy/figure/syndie, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"mi" = ( +/obj/machinery/newscaster/security_unit, +/turf/closed/indestructible/riveted, +/area/centcom/ferry) +"mj" = ( +/obj/structure/toilet{ + dir = 4 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/centcom/ferry) +"mk" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/shower{ + pixel_y = 16 + }, +/obj/structure/curtain, +/obj/machinery/door/window/brigdoor/southleft{ + name = "Shower" + }, +/obj/item/weapon/soap/deluxe, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 2; + on = 1 + }, +/turf/open/floor/plasteel/white, +/area/centcom/ferry) +"ml" = ( +/obj/machinery/computer/security/mining, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"mm" = ( +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (SOUTHWEST)"; + icon_state = "brown"; + dir = 10 + }, +/area/centcom/supply) +"mn" = ( +/obj/structure/chair/office/dark, +/turf/open/floor/plasteel/brown, +/area/centcom/supply) +"mo" = ( +/obj/structure/plasticflaps{ + opacity = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/supply) +"mp" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/control) +"mq" = ( +/turf/open/floor/plasteel/neutral, +/area/centcom/control) +"mr" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/centcom/control) +"ms" = ( +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"mt" = ( +/obj/machinery/vending/cola, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"mu" = ( +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/darkred/side{ + dir = 8 + }, +/area/centcom/control) +"mv" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/restraints/handcuffs/cable/zipties, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"mw" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"mx" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"my" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/newscaster{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"mz" = ( +/obj/structure/flora/bush, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"mA" = ( +/turf/closed/indestructible/fakeglass, +/area/syndicate_mothership/control) +"mB" = ( +/obj/structure/sign/nosmoking_2, +/turf/closed/indestructible/riveted, +/area/centcom/ferry) +"mC" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/white, +/area/centcom/ferry) +"mD" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror/magic/badmin{ + pixel_x = 28 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/turf/open/floor/plasteel/white, +/area/centcom/ferry) +"mE" = ( +/obj/item/weapon/clipboard, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"mF" = ( +/obj/machinery/keycard_auth{ + pixel_y = -24 + }, +/obj/structure/table/reinforced, +/obj/item/stack/packageWrap, +/obj/item/stack/cable_coil/white, +/obj/item/weapon/hand_labeler, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"mG" = ( +/obj/machinery/newscaster/security_unit{ + pixel_y = -32 + }, +/obj/machinery/computer/cargo, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"mH" = ( +/obj/machinery/computer/security/mining, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"mI" = ( +/obj/machinery/light, +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"mJ" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -24 + }, +/obj/structure/closet/crate/bin, +/obj/structure/extinguisher_cabinet{ + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/centcom/supply) +"mK" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -26 + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (SOUTHEAST)"; + icon_state = "brown"; + dir = 6 + }, +/area/centcom/supply) +"mL" = ( +/turf/open/floor/plasteel/loadingarea{ + dir = 1 + }, +/area/centcom/control) +"mM" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/centcom/control) +"mN" = ( +/obj/machinery/door/poddoor/shutters{ + id = "XCCsecdepartment"; + name = "XCC Security Checkpoint Shutters" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/control) +"mO" = ( +/obj/structure/chair/office/dark, +/turf/open/floor/plasteel/grimy, +/area/centcom/control) +"mP" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/photo_album, +/obj/item/device/camera, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"mQ" = ( +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"mR" = ( +/obj/machinery/newscaster/security_unit{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/darkred/side{ + dir = 8 + }, +/area/centcom/control) +"mS" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"mT" = ( +/obj/machinery/door/airlock/silver{ + name = "Bathroom" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/centcom/ferry) +"mU" = ( +/obj/machinery/ai_status_display, +/turf/closed/indestructible/riveted, +/area/centcom/ferry) +"mV" = ( +/obj/machinery/status_display, +/turf/closed/indestructible/riveted, +/area/centcom/ferry) +"mW" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/centcom/control) +"mX" = ( +/obj/machinery/vending/cola, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/control) +"mY" = ( +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/centcom/control) +"mZ" = ( +/obj/machinery/computer/prisoner, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"na" = ( +/obj/machinery/computer/security, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"nb" = ( +/obj/machinery/computer/secure_data, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"nc" = ( +/obj/machinery/vending/snack, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"nd" = ( +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 2; + icon_state = "leftsecure"; + name = "Centcom Stand"; + req_access_txt = "109"; + tag = "icon-leftsecure (NORTH)" + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24; + pixel_y = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"ne" = ( +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 2; + icon_state = "leftsecure"; + name = "Centcom Stand"; + req_access_txt = "109"; + tag = "icon-leftsecure (NORTH)" + }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"nf" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/centcom/ferry) +"ng" = ( +/obj/structure/table/wood, +/obj/item/device/taperecorder, +/obj/item/weapon/storage/box/handcuffs, +/obj/item/device/flashlight/seclite, +/obj/structure/noticeboard{ + pixel_y = 28 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"nh" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/photo_album, +/obj/item/device/camera, +/obj/structure/reagent_dispensers/peppertank{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"ni" = ( +/obj/machinery/ai_status_display{ + pixel_y = 32 + }, +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-15"; + pixel_x = -6; + pixel_y = 12; + tag = "icon-plant-15" + }, +/turf/open/floor/plasteel/vault{ + dir = 6 + }, +/area/centcom/ferry) +"nj" = ( +/obj/structure/fireplace, +/turf/open/floor/plasteel/vault, +/area/centcom/ferry) +"nk" = ( +/obj/machinery/status_display{ + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 10 + }, +/area/centcom/ferry) +"nl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"nm" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp, +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Captain's Desk"; + departmentType = 5; + name = "Captain RC"; + pixel_x = 0; + pixel_y = 32 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nn" = ( +/obj/machinery/computer/card/centcom, +/obj/item/weapon/card/id/centcom, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"no" = ( +/obj/machinery/computer/communications, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"np" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/obj/machinery/vending/wallmed{ + name = "Emergency NanoMed"; + pixel_x = 0; + pixel_y = 32; + req_access_txt = "0"; + use_power = 0 + }, +/turf/open/floor/plasteel/vault, +/area/centcom/ferry) +"nq" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/blue, +/obj/item/weapon/melee/chainofcommand, +/obj/item/weapon/stamp/captain, +/obj/machinery/newscaster/security_unit{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault, +/area/centcom/ferry) +"nr" = ( +/obj/structure/table/wood, +/obj/machinery/computer/security/wooden_tv, +/obj/item/weapon/storage/secure/safe{ + pixel_x = 32; + pixel_y = 24 + }, +/turf/open/floor/plasteel/vault, +/area/centcom/ferry) +"ns" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"nt" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/red, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"nu" = ( +/obj/structure/table/reinforced, +/obj/item/stack/packageWrap, +/obj/item/weapon/hand_labeler, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"nv" = ( +/obj/machinery/photocopier, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"nw" = ( +/obj/machinery/computer/cargo, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"nx" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/centcom/control) +"ny" = ( +/obj/structure/table, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/control) +"nz" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/centcom/control) +"nA" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"nB" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault, +/area/centcom/control) +"nC" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/vault, +/area/centcom/control) +"nD" = ( +/obj/item/weapon/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/storage/secure/briefcase, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"nE" = ( +/turf/open/floor/wood, +/area/centcom/ferry) +"nF" = ( +/obj/structure/chair/comfy/brown{ + color = "#c45c57"; + dir = 4; + icon_state = "comfychair" + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nG" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nH" = ( +/obj/structure/chair/comfy/black{ + dir = 8 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nI" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/wood, +/area/centcom/ferry) +"nJ" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nK" = ( +/obj/structure/chair/comfy/brown{ + color = "#c45c57"; + dir = 8; + icon_state = "comfychair" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nL" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nM" = ( +/obj/machinery/door/airlock/centcom{ + name = "Administrative Office"; + opacity = 1; + req_access_txt = "109" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"nN" = ( +/obj/structure/chair/comfy/brown{ + color = "#596479"; + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nO" = ( +/obj/machinery/modular_computer/console/preset/command, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"nP" = ( +/obj/structure/table/reinforced, +/obj/machinery/computer/stockexchange, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"nQ" = ( +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTHEAST)"; + icon_state = "brown"; + dir = 5 + }, +/area/centcom/supply) +"nR" = ( +/obj/machinery/computer/security/mining, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"nS" = ( +/obj/machinery/vending/snack, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/control) +"nT" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"nU" = ( +/obj/structure/bookcase/random, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/ferry) +"nV" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"nW" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nX" = ( +/obj/structure/table/wood, +/obj/item/weapon/phone{ + desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/mask/cigarette/cigar/cohiba{ + pixel_x = 6 + }, +/obj/item/clothing/mask/cigarette/cigar/havana{ + pixel_x = 2 + }, +/obj/item/clothing/mask/cigarette/cigar{ + pixel_x = 4.5 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nY" = ( +/obj/structure/chair/comfy/brown{ + color = "#c45c57"; + dir = 8; + icon_state = "comfychair" + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"nZ" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"oa" = ( +/obj/structure/table/wood, +/obj/machinery/computer/security/wooden_tv, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"ob" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/light_switch{ + pixel_x = 24 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"oc" = ( +/obj/machinery/light_switch{ + pixel_x = -24 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"od" = ( +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"oe" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/mirror/magic/badmin{ + pixel_x = 28 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"of" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/stamp/qm, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"og" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/centcom/supply) +"oh" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"oi" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/machinery/door/window/brigdoor{ + tag = "icon-rightsecure (EAST)"; + name = "Centcom Customs"; + icon_state = "rightsecure"; + dir = 4; + req_access_txt = "109"; + base_state = "rightsecure" + }, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/pen/red, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/supply) +"oj" = ( +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"ok" = ( +/obj/item/weapon/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/storage/secure/briefcase, +/obj/structure/table/wood, +/obj/structure/noticeboard{ + dir = 8; + icon_state = "nboard00"; + pixel_x = 32; + pixel_y = 0; + tag = "icon-nboard00 (WEST)" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"ol" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows2"; + dir = 6 + }, +/area/syndicate_mothership/control) +"om" = ( +/obj/machinery/door/airlock/centcom{ + name = "Auxillary Dock"; + opacity = 1; + req_access_txt = "" + }, +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"on" = ( +/obj/structure/table/wood, +/obj/machinery/recharger, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"oo" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + tag = "icon-manifold (WEST)"; + icon_state = "manifold"; + dir = 8 + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"op" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"oq" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/wood, +/area/centcom/ferry) +"or" = ( +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"os" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"ot" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/item/clothing/under/rank/librarian/curator, +/obj/item/clothing/under/skirt/black, +/obj/item/clothing/under/shorts/black, +/obj/item/clothing/under/pants/track, +/obj/item/clothing/tie/armband/deputy, +/obj/item/clothing/tie/waistcoat, +/obj/item/clothing/shoes/jackboots, +/obj/item/clothing/shoes/laceup, +/obj/item/clothing/neck/stripedredscarf, +/obj/item/clothing/neck/tie/red, +/obj/item/clothing/head/helmet/space/beret, +/obj/item/clothing/suit/curator, +/obj/item/clothing/suit/space/officer, +/obj/item/clothing/gloves/fingerless, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/glasses/eyepatch, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24; + pixel_y = 0 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"ou" = ( +/obj/structure/destructible/cult/tome, +/obj/item/weapon/book/codex_gigas, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"ov" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/cartridge/quartermaster{ + pixel_x = -6 + }, +/obj/item/weapon/cartridge/quartermaster{ + pixel_x = 6 + }, +/obj/item/weapon/cartridge/quartermaster{ + pixel_y = 6 + }, +/obj/item/device/gps/mining, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"ow" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/structure/window/reinforced{ + dir = 4; + pixel_x = 0 + }, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/red, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/supply) +"ox" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"oy" = ( +/obj/structure/chair/comfy/brown{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"oz" = ( +/obj/structure/chair/comfy/black{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"oA" = ( +/obj/structure/bookcase/random, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"oB" = ( +/obj/structure/bookcase/random, +/obj/machinery/status_display{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"oC" = ( +/obj/structure/bookcase/random, +/obj/structure/noticeboard{ + dir = 1; + icon_state = "nboard00"; + pixel_y = -32; + tag = "icon-nboard00 (NORTH)" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"oD" = ( +/obj/machinery/vending/coffee, +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 1 + }, +/area/centcom/control) +"oE" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/fancy/donut_box, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"oF" = ( +/obj/machinery/vending/cigarette, +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/centcom/control) +"oG" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/structure/extinguisher_cabinet{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"oH" = ( +/obj/item/weapon/storage/crayons, +/obj/structure/table, +/obj/item/weapon/storage/crayons, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership/control) +"oI" = ( +/obj/machinery/washing_machine, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership/control) +"oJ" = ( +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"oK" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/red, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/flash/handheld, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"oL" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/red, +/obj/item/weapon/lighter, +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"oM" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"oN" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/machinery/light_switch{ + pixel_y = -24 + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"oO" = ( +/obj/structure/closet/crate/bin, +/obj/machinery/light, +/turf/open/floor/wood, +/area/centcom/ferry) +"oP" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/dsquad, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"oQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/vault, +/area/centcom/ferry) +"oR" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/secure/briefcase{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/weapon/storage/lockbox/medal, +/obj/machinery/newscaster/security_unit{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"oS" = ( +/obj/structure/table/wood, +/obj/item/device/flashlight/lamp, +/turf/open/floor/plasteel/vault, +/area/centcom/ferry) +"oT" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/black, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"oU" = ( +/obj/structure/dresser, +/obj/structure/sign/goldenplaque{ + name = "The Most Robust Captain Award for Robustness"; + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"oV" = ( +/obj/structure/filingcabinet/filingcabinet, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"oW" = ( +/obj/structure/filingcabinet/filingcabinet, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/supply) +"oX" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/supply) +"oY" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -26 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"oZ" = ( +/obj/machinery/button/door{ + id = "XCCsec3"; + name = "XCC Shutter 3 Control"; + pixel_x = 24; + pixel_y = -24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"pa" = ( +/obj/structure/closet/crate/bin, +/turf/open/floor/plasteel/green/side{ + dir = 10 + }, +/area/centcom/control) +"pb" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/green/side, +/area/centcom/control) +"pc" = ( +/turf/open/floor/plasteel/green/side, +/area/centcom/control) +"pd" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/green/side{ + dir = 6 + }, +/area/centcom/control) +"pe" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/turf/open/floor/plating/asteroid, +/area/centcom/control) +"pf" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fernybush, +/turf/open/floor/plasteel{ + name = "plating"; + icon_state = "asteroid5" + }, +/area/centcom/control) +"pg" = ( +/turf/closed/indestructible/riveted/uranium, +/area/wizard_station) +"ph" = ( +/turf/closed/indestructible/fakeglass{ + color = "#008000"; + dir = 8; + icon_state = "fakewindows" + }, +/area/wizard_station) +"pi" = ( +/turf/closed/indestructible/fakeglass{ + color = "#008000"; + dir = 8; + icon_state = "fakewindows2" + }, +/area/wizard_station) +"pj" = ( +/turf/closed/indestructible/fakeglass{ + color = "#008000"; + dir = 4; + icon_state = "fakewindows" + }, +/area/wizard_station) +"pk" = ( +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/space) +"pl" = ( +/obj/machinery/computer/shuttle/syndicate/recall, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pm" = ( +/obj/machinery/vending/coffee, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pn" = ( +/obj/machinery/vending/cola, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"po" = ( +/obj/machinery/vending/cigarette{ + products = list(/obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate = 7, /obj/item/weapon/storage/fancy/cigarettes/cigpack_uplift = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_robust = 2, /obj/item/weapon/storage/fancy/cigarettes/cigpack_carp = 3, /obj/item/weapon/storage/fancy/cigarettes/cigpack_midori = 1, /obj/item/weapon/storage/box/matches = 10, /obj/item/weapon/lighter/greyscale = 4, /obj/item/weapon/storage/fancy/rollingpapers = 5) + }, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pp" = ( +/obj/structure/urinal{ + pixel_y = 28 + }, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pq" = ( +/obj/item/weapon/soap/syndie, +/obj/structure/mopbucket, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pr" = ( +/obj/structure/mirror{ + pixel_x = 28 + }, +/obj/item/weapon/mop, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership/control) +"ps" = ( +/obj/machinery/door/airlock/centcom{ + name = "Administrative Office"; + opacity = 1; + req_access_txt = "109" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/ferry) +"pt" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/indestructible/riveted, +/area/centcom/ferry) +"pu" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom Security"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/supply) +"pv" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom"; + opacity = 1; + req_access_txt = "0" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/control) +"pw" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/turf/open/floor/grass, +/area/centcom/control) +"px" = ( +/turf/open/floor/engine/cult, +/area/wizard_station) +"py" = ( +/obj/machinery/computer/shuttle, +/turf/open/floor/engine/cult, +/area/wizard_station) +"pz" = ( +/obj/item/weapon/paper{ + info = "GET DAT FUKKEN DISK"; + name = "memo" + }, +/obj/structure/noticeboard{ + pixel_x = -32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pA" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pB" = ( +/mob/living/simple_animal/hostile/carp/cayenne, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pC" = ( +/obj/machinery/door/airlock/centcom{ + name = "Restroom"; + opacity = 1; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pD" = ( +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pE" = ( +/obj/structure/mirror{ + pixel_x = 28 + }, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership/control) +"pF" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/device/taperecorder, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"pG" = ( +/obj/machinery/computer/auxillary_base{ + pixel_y = 32 + }, +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/device/radio/headset/headset_cent, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"pH" = ( +/obj/machinery/computer/shuttle/labor, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"pI" = ( +/obj/machinery/computer/shuttle/mining, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"pJ" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/table/reinforced, +/obj/item/weapon/crowbar/red, +/obj/item/weapon/wrench, +/obj/item/clothing/mask/gas, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"pK" = ( +/obj/structure/filingcabinet/filingcabinet, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"pL" = ( +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/obj/structure/filingcabinet/filingcabinet, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"pM" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/item/weapon/weldingtool/experimental, +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"pN" = ( +/obj/structure/table/reinforced, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/plasteel{ + amount = 15 + }, +/obj/item/stack/sheet/rglass{ + amount = 50; + pixel_x = 2; + pixel_y = -2 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/item/stack/cable_coil/white, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"pO" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/machinery/newscaster{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/vault, +/area/centcom/ferry) +"pP" = ( +/obj/machinery/light_switch{ + pixel_y = 24 + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"pQ" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"pR" = ( +/obj/item/device/flashlight/lamp, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"pS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"pT" = ( +/obj/machinery/computer/card/centcom, +/obj/item/weapon/card/id/centcom, +/obj/machinery/computer/security/telescreen{ + desc = "Used for watching the RD's goons and the AI's satellite from the safety of his office."; + name = "Research Monitor"; + network = list("RD","Sat"); + pixel_x = 0; + pixel_y = 28 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"pU" = ( +/obj/structure/sign/securearea, +/turf/closed/indestructible/riveted, +/area/centcom/ferry) +"pV" = ( +/obj/machinery/power/smes/magical, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/white{ + tag = "icon-0-4"; + icon_state = "0-4" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"pW" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Commander's Office APC"; + pixel_x = 26; + pixel_y = 0 + }, +/obj/structure/table/reinforced, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/obj/item/stack/sheet/plasteel{ + amount = 15 + }, +/obj/item/stack/sheet/rglass{ + amount = 50; + pixel_x = 2; + pixel_y = -2 + }, +/obj/item/stack/rods{ + amount = 50 + }, +/obj/item/stack/cable_coil/white, +/obj/item/weapon/screwdriver/power, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/white{ + d2 = 2; + icon_state = "0-2"; + tag = "icon-0-2" + }, +/obj/structure/cable/white{ + tag = "icon-0-8"; + icon_state = "0-8" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"pX" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/suit/space/hardsuit/deathsquad{ + pixel_y = 5 + }, +/obj/item/clothing/gloves/combat, +/obj/item/clothing/shoes/combat/swat, +/obj/item/clothing/mask/gas/sechailer/swat, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"pY" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/lockbox/loyalty, +/obj/item/weapon/gun/ballistic/automatic/ar, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"pZ" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/handcuffs, +/obj/item/weapon/crowbar/red, +/obj/item/weapon/crowbar/power, +/obj/item/weapon/storage/belt/security/full, +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"qa" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/fernybush, +/turf/open/floor/plasteel{ + dir = 6; + icon_state = "asteroid8"; + name = "sand" + }, +/area/centcom/supply) +"qb" = ( +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/supply) +"qc" = ( +/obj/machinery/door/poddoor/shutters{ + id = "XCCsec3"; + name = "XCC Checkpoint 3 Shutters" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/control) +"qd" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = -24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"qe" = ( +/obj/structure/filingcabinet/medical, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"qf" = ( +/obj/structure/filingcabinet/security, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"qg" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"qh" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/wrench, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"qi" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/handcuffs, +/obj/item/weapon/crowbar/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"qj" = ( +/obj/item/weapon/storage/box/ids{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/silver_ids, +/obj/structure/table/reinforced, +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"qk" = ( +/turf/closed/indestructible/riveted, +/area/centcom/evac) +"ql" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/centcom/evac) +"qm" = ( +/obj/machinery/status_display, +/turf/closed/indestructible/riveted, +/area/centcom/evac) +"qn" = ( +/obj/structure/table/wood, +/obj/item/device/paicard, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"qo" = ( +/obj/structure/table/wood, +/obj/item/pizzabox, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"qp" = ( +/obj/structure/chair/stool, +/obj/effect/landmark{ + name = "Syndicate-Spawn" + }, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"qq" = ( +/obj/machinery/computer/telecrystals/uplinker, +/turf/open/floor/plasteel/podhatch{ + dir = 9 + }, +/area/syndicate_mothership/control) +"qr" = ( +/obj/structure/toilet{ + icon_state = "toilet00"; + dir = 8 + }, +/obj/structure/window/reinforced/tinted{ + tag = "icon-rwindow (NORTH)"; + icon_state = "rwindow"; + dir = 1 + }, +/obj/machinery/door/window{ + tag = "icon-right (WEST)"; + name = "Tactical Toilet"; + icon_state = "right"; + dir = 8; + opacity = 1 + }, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/syndicate_mothership/control) +"qs" = ( +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"qt" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"qu" = ( +/obj/machinery/computer/shuttle/white_ship, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"qv" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel/green/side{ + dir = 9 + }, +/area/centcom/ferry) +"qw" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 1 + }, +/area/centcom/ferry) +"qx" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/turf/open/floor/plasteel/green/corner{ + dir = 1 + }, +/area/centcom/ferry) +"qy" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/centcom/ferry) +"qz" = ( +/obj/structure/noticeboard{ + dir = 8; + icon_state = "nboard00"; + pixel_x = 32; + pixel_y = 0; + tag = "icon-nboard00 (WEST)" + }, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/centcom/ferry) +"qA" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"qB" = ( +/obj/structure/chair/comfy/black, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = -32 + }, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 4; + on = 1 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"qC" = ( +/obj/structure/chair/comfy/black, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"qD" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-2-4"; + icon_state = "2-4" + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"qE" = ( +/obj/item/weapon/clipboard, +/obj/structure/table/reinforced, +/obj/item/device/detective_scanner, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"qF" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"qG" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"qH" = ( +/obj/machinery/door/airlock/centcom{ + name = "Administrative Storage"; + req_access_txt = "106" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"qI" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/visible{ + tag = "icon-manifold (NORTH)"; + icon_state = "manifold"; + dir = 1 + }, +/obj/machinery/meter, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/structure/cable/white{ + tag = "icon-2-8"; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"qJ" = ( +/obj/machinery/power/terminal{ + icon_state = "term"; + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/visible{ + tag = "icon-manifold (NORTH)"; + icon_state = "manifold"; + dir = 1 + }, +/obj/structure/cable/white{ + tag = "icon-0-8"; + icon_state = "0-8" + }, +/obj/structure/cable/white{ + tag = "icon-0-4"; + icon_state = "0-4" + }, +/obj/structure/cable/white{ + d2 = 2; + icon_state = "0-2"; + tag = "icon-0-2" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"qK" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/visible{ + tag = "icon-manifold (NORTH)"; + icon_state = "manifold"; + dir = 1 + }, +/obj/machinery/meter, +/obj/structure/cable/white{ + tag = "icon-1-8"; + icon_state = "1-8" + }, +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/obj/structure/cable/white{ + tag = "icon-2-8"; + icon_state = "2-8" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"qL" = ( +/obj/machinery/door/airlock/vault{ + locked = 1; + name = "Vault Door"; + req_access_txt = "53" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"qM" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"qN" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 8; + on = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"qO" = ( +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (NORTH)"; + icon_state = "darkred"; + dir = 1 + }, +/area/centcom/control) +"qP" = ( +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"qQ" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom Security"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"qR" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"qS" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"qT" = ( +/obj/structure/chair, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"qU" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"qV" = ( +/obj/structure/closet/crate/bin, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"qW" = ( +/obj/structure/table, +/obj/item/toy/foamblade, +/obj/item/toy/gun, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"qX" = ( +/obj/structure/table, +/obj/item/toy/katana, +/obj/item/toy/carpplushie, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"qY" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"qZ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"ra" = ( +/obj/machinery/door/poddoor/shuttledock, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/evac) +"rb" = ( +/obj/structure/showcase{ + desc = "A strange machine supposedly from another world. The Wizard Federation has been meddling with it for years."; + icon = 'icons/obj/machines/telecomms.dmi'; + icon_state = "processor"; + name = "byond random number generator" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"rc" = ( +/obj/structure/showcase{ + desc = "A historical figure of great importance to the wizard federation. He spent his long life learning magic, stealing artifacts, and harassing idiots with swords. May he rest forever, Rodney."; + icon = 'icons/mob/mob.dmi'; + icon_state = "nim"; + name = "wizard of yendor showcase" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"rd" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows"; + dir = 9 + }, +/area/syndicate_mothership/control) +"re" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows2"; + dir = 8 + }, +/area/syndicate_mothership/control) +"rf" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows"; + dir = 4 + }, +/area/syndicate_mothership/control) +"rg" = ( +/obj/structure/table/wood, +/obj/item/weapon/reagent_containers/food/snacks/pizzaslice/mushroom, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"rh" = ( +/obj/structure/table/wood, +/obj/item/weapon/reagent_containers/food/drinks/beer{ + pixel_x = 5; + pixel_y = -2 + }, +/obj/item/toy/cards/deck/syndicate{ + icon_state = "deck_syndicate_full"; + pixel_x = -6; + pixel_y = 6 + }, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"ri" = ( +/obj/machinery/computer/telecrystals/uplinker, +/turf/open/floor/plasteel/podhatch{ + dir = 8 + }, +/area/syndicate_mothership/control) +"rj" = ( +/obj/structure/closet/cardboard, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"rk" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"rl" = ( +/turf/open/floor/plating/asteroid/snow/atmosphere, +/obj/machinery/porta_turret/syndicate/pod, +/turf/closed/wall/mineral/plastitanium{ + dir = 8; + icon_state = "diagonalWall3" + }, +/area/shuttle/assault_pod) +"rm" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/assault_pod) +"rn" = ( +/obj/machinery/door/airlock/centcom{ + name = "Assault Pod"; + opacity = 1; + req_access_txt = "150" + }, +/turf/open/floor/plating, +/area/shuttle/assault_pod) +"ro" = ( +/turf/open/floor/plating/asteroid/snow/atmosphere, +/obj/machinery/porta_turret/syndicate/pod, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/assault_pod) +"rp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"rq" = ( +/obj/machinery/computer/shuttle/ferry, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"rr" = ( +/turf/open/floor/plasteel/green/side{ + dir = 10 + }, +/area/centcom/ferry) +"rs" = ( +/obj/structure/chair/office/dark, +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, +/area/centcom/ferry) +"rt" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, +/area/centcom/ferry) +"ru" = ( +/turf/open/floor/plasteel/green/corner, +/area/centcom/ferry) +"rv" = ( +/turf/open/floor/plasteel/green/side{ + dir = 6 + }, +/area/centcom/ferry) +"rw" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom Supply"; + req_access_txt = "106" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"rx" = ( +/turf/open/floor/plasteel/vault{ + dir = 9 + }, +/area/centcom/ferry) +"ry" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/ferry) +"rz" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/pill_bottle/dice, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"rA" = ( +/obj/structure/table/wood, +/obj/item/toy/cards/deck/cas{ + pixel_x = -5; + pixel_y = 5 + }, +/obj/item/toy/cards/deck/cas/black{ + pixel_x = 5; + pixel_y = 5 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"rB" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"rC" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/red, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"rD" = ( +/obj/item/weapon/storage/fancy/donut_box, +/obj/structure/table/reinforced, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"rE" = ( +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/newscaster{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"rF" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/portable_atmospherics/canister/air, +/obj/structure/cable/white{ + tag = "icon-1-4"; + icon_state = "1-4" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"rG" = ( +/obj/machinery/computer/monitor, +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/white{ + tag = "icon-4-8"; + icon_state = "4-8" + }, +/obj/structure/cable/white{ + tag = "icon-1-8"; + icon_state = "1-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"rH" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 1 + }, +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -24 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/white{ + tag = "icon-1-8"; + icon_state = "1-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"rI" = ( +/obj/item/weapon/storage/box/handcuffs, +/obj/item/ammo_box/a357, +/obj/item/ammo_box/a357, +/obj/item/weapon/gun/ballistic/revolver/mateba, +/obj/structure/table/reinforced, +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"rJ" = ( +/obj/item/weapon/gun/energy/pulse/carbine/loyalpin, +/obj/item/device/flashlight/seclite, +/obj/structure/table/reinforced, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"rK" = ( +/obj/item/weapon/storage/box/emps{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/flashbangs, +/obj/item/weapon/grenade/plastic/x4, +/obj/item/weapon/grenade/plastic/x4, +/obj/item/weapon/grenade/plastic/x4, +/obj/structure/table/reinforced, +/obj/item/clothing/ears/earmuffs, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"rL" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/green/corner{ + dir = 1 + }, +/area/centcom/control) +"rM" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 1 + }, +/area/centcom/control) +"rN" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"rO" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 1; + heat_capacity = 1e+006 + }, +/area/centcom/control) +"rP" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/centcom/control) +"rQ" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/centcom/control) +"rR" = ( +/obj/structure/sign/securearea, +/turf/closed/indestructible/riveted, +/area/centcom/control) +"rS" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/control) +"rT" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"rU" = ( +/turf/open/floor/plasteel/yellowsiding{ + dir = 1 + }, +/area/centcom/evac) +"rV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"rW" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/centcom{ + name = "Centcom"; + opacity = 1; + req_access_txt = "0" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"rX" = ( +/turf/closed/indestructible/fakeglass{ + color = "#008000"; + dir = 6; + icon_state = "fakewindows2" + }, +/area/wizard_station) +"rY" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Cockpit" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"rZ" = ( +/obj/machinery/door/poddoor/shutters{ + id = "nukeop_ready"; + name = "shuttle dock" + }, +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"sa" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"sb" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/assault_pod) +"sc" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/assault_pod) +"sd" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/assault_pod) +"se" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"sf" = ( +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"sg" = ( +/obj/machinery/keycard_auth{ + pixel_y = -24 + }, +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/obj/machinery/button/door{ + id = "XCCFerry"; + name = "Hanger Bay Shutters"; + pixel_x = 0; + pixel_y = -38; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"sh" = ( +/obj/machinery/computer/emergency_shuttle, +/obj/machinery/newscaster/security_unit{ + pixel_y = -32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"si" = ( +/obj/machinery/computer/communications, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"sj" = ( +/obj/machinery/light, +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"sk" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -24 + }, +/obj/structure/closet/crate/bin, +/obj/structure/extinguisher_cabinet{ + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/centcom/ferry) +"sl" = ( +/obj/structure/chair/comfy/black{ + dir = 1 + }, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"sm" = ( +/obj/structure/chair/comfy/black{ + dir = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"sn" = ( +/obj/structure/cable/white{ + tag = "icon-1-2"; + icon_state = "1-2" + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"so" = ( +/obj/machinery/atmospherics/components/unary/vent_pump{ + dir = 1; + on = 1 + }, +/turf/open/floor/wood, +/area/centcom/ferry) +"sp" = ( +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -24 + }, +/turf/open/floor/plasteel/vault{ + dir = 9 + }, +/area/centcom/control) +"sq" = ( +/obj/machinery/computer/security, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"sr" = ( +/obj/structure/chair/office/dark, +/turf/open/floor/plasteel/darkred/side, +/area/centcom/control) +"ss" = ( +/obj/machinery/computer/card/centcom, +/obj/machinery/button/door{ + id = "XCCcustoms1"; + layer = 3.5; + name = "CC Customs 1 Control"; + pixel_x = 8; + pixel_y = -24 + }, +/obj/machinery/button/door{ + id = "XCCcustoms2"; + layer = 3.5; + name = "CC Customs 2 Control"; + pixel_x = -8; + pixel_y = -24 + }, +/turf/open/floor/plasteel/darkred/side, +/area/centcom/control) +"st" = ( +/obj/machinery/computer/security, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"su" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"sv" = ( +/turf/open/floor/plasteel/neutral, +/area/centcom/evac) +"sw" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/directions/engineering{ + desc = "A sign that shows there are doors here. There are doors everywhere!"; + icon_state = "doors"; + name = "WARNING: BLAST DOORS"; + pixel_x = 0; + pixel_y = 0; + tag = "icon-doors" + }, +/turf/open/floor/plating, +/area/centcom/evac) +"sx" = ( +/obj/machinery/computer/camera_advanced, +/turf/open/floor/wood, +/area/wizard_station) +"sy" = ( +/obj/structure/table/wood/fancy, +/obj/item/device/radio/intercom{ + desc = "Talk smack through this."; + syndie = 1 + }, +/turf/open/floor/wood, +/area/wizard_station) +"sz" = ( +/turf/open/floor/carpet, +/area/wizard_station) +"sA" = ( +/obj/structure/chair/wood/wings, +/turf/open/floor/carpet, +/area/wizard_station) +"sB" = ( +/obj/machinery/door/airlock/external{ + req_access_txt = "150" + }, +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"sC" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows"; + dir = 8 + }, +/area/syndicate_mothership/control) +"sD" = ( +/obj/machinery/button/door{ + id = "nukeop_ready"; + name = "mission launch control"; + pixel_x = -26; + pixel_y = 0; + req_access_txt = "151" + }, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"sE" = ( +/obj/machinery/computer/telecrystals/uplinker, +/turf/open/floor/plasteel/podhatch{ + dir = 10 + }, +/area/syndicate_mothership/control) +"sF" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/assault_pod) +"sG" = ( +/obj/machinery/door/airlock/centcom{ + name = "Shuttle Control Office"; + opacity = 1; + req_access_txt = "109" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/ferry) +"sH" = ( +/obj/structure/table/reinforced, +/obj/item/stack/packageWrap, +/obj/item/weapon/crowbar/power, +/obj/item/weapon/wrench, +/obj/item/weapon/hand_labeler, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"sI" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"sJ" = ( +/obj/structure/bookcase/random, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"sK" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"sL" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/vault{ + dir = 6 + }, +/area/centcom/ferry) +"sM" = ( +/obj/structure/cable/white, +/turf/open/floor/plasteel/vault, +/area/centcom/ferry) +"sN" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/vault{ + dir = 10 + }, +/area/centcom/ferry) +"sO" = ( +/obj/structure/closet/crate/bin, +/obj/machinery/light_switch{ + pixel_y = -24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"sP" = ( +/obj/structure/table/wood, +/obj/item/weapon/dice/d20{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/dice/d10{ + pixel_x = -3 + }, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_y = -32 + }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"sQ" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/leafybush, +/turf/open/floor/grass, +/area/centcom/ferry) +"sR" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/pointybush, +/turf/open/floor/grass, +/area/centcom/ferry) +"sS" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/genericbush, +/turf/open/floor/grass, +/area/centcom/ferry) +"sT" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/turf/open/floor/grass, +/area/centcom/ferry) +"sU" = ( +/obj/machinery/newscaster, +/turf/closed/indestructible/riveted, +/area/centcom/control) +"sV" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen/red, +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 1; + icon_state = "rightsecure"; + name = "Centcom Customs"; + req_access_txt = "109" + }, +/obj/machinery/door/window, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/control) +"sW" = ( +/turf/open/floor/plasteel/blue/corner, +/area/centcom/evac) +"sX" = ( +/turf/open/floor/plasteel/blue/side, +/area/centcom/evac) +"sY" = ( +/turf/open/floor/plasteel/blue/corner{ + tag = "icon-bluecorner (WEST)"; + icon_state = "bluecorner"; + dir = 8 + }, +/area/centcom/evac) +"sZ" = ( +/turf/open/floor/plasteel, +/area/centcom/evac) +"ta" = ( +/obj/docking_port/stationary{ + dir = 4; + dwidth = 25; + height = 50; + id = "emergency_away"; + name = "Centcom Emergency Shuttle Dock"; + width = 50 + }, +/turf/open/space, +/area/space) +"tb" = ( +/turf/open/floor/wood, +/area/wizard_station) +"tc" = ( +/obj/structure/chair/wood/wings{ + icon_state = "wooden_chair_wings"; + dir = 1 + }, +/turf/open/floor/wood, +/area/wizard_station) +"td" = ( +/obj/structure/chair/wood/wings{ + tag = "icon-wooden_chair_wings (EAST)"; + icon_state = "wooden_chair_wings"; + dir = 4 + }, +/turf/open/floor/carpet, +/area/wizard_station) +"te" = ( +/obj/structure/table/wood/poker, +/obj/item/toy/figure/wizard, +/turf/open/floor/carpet, +/area/wizard_station) +"tf" = ( +/obj/structure/chair/wood/wings{ + tag = "icon-wooden_chair_wings (WEST)"; + icon_state = "wooden_chair_wings"; + dir = 8 + }, +/turf/open/floor/carpet, +/area/wizard_station) +"tg" = ( +/obj/docking_port/stationary{ + area_type = /area/syndicate_mothership; + dheight = 9; + dir = 2; + dwidth = 5; + height = 24; + id = "syndicate_away"; + name = "syndicate recon outpost"; + turf_type = /turf/open/floor/plating/asteroid/snow; + width = 18 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/space) +"th" = ( +/obj/item/weapon/storage/box/drinkingglasses, +/obj/item/weapon/reagent_containers/food/drinks/bottle/rum, +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"ti" = ( +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"tj" = ( +/obj/structure/table/wood, +/obj/item/device/syndicatedetonator{ + desc = "This gaudy button can be used to instantly detonate syndicate bombs that have been activated on the station. It is also fun to press." + }, +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"tk" = ( +/obj/structure/table/wood, +/obj/item/toy/nuke, +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"tl" = ( +/obj/machinery/door/airlock/centcom{ + aiControlDisabled = 1; + name = "Assault Pod"; + opacity = 1; + req_access_txt = "150" + }, +/turf/open/floor/plating, +/area/shuttle/assault_pod) +"tm" = ( +/obj/machinery/computer/shuttle/syndicate/drop_pod, +/turf/closed/wall/shuttle{ + tag = "icon-wall3"; + icon_state = "wall3"; + dir = 2 + }, +/area/shuttle/assault_pod) +"tn" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/directions/engineering{ + desc = "A sign that shows there are doors here. There are doors everywhere!"; + icon_state = "doors"; + name = "WARNING: EXTERNAL AIRLOCK"; + pixel_x = 0; + tag = "icon-doors" + }, +/turf/open/floor/plating, +/area/centcom/ferry) +"to" = ( +/obj/structure/closet/emcloset, +/obj/item/weapon/tank/internals/emergency_oxygen/engi, +/obj/item/weapon/tank/internals/emergency_oxygen/engi, +/obj/item/weapon/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, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"tp" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"tq" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"tr" = ( +/obj/machinery/firealarm{ + pixel_y = 24 + }, +/obj/structure/chair{ + dir = 8 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"ts" = ( +/obj/machinery/door/airlock/centcom{ + name = "Administrative Office"; + opacity = 1; + req_access_txt = "109" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/ferry) +"tt" = ( +/obj/machinery/door/poddoor/shutters{ + id = "XCCsec1"; + name = "XCC Checkpoint 1 Shutters" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"tu" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/green/corner{ + dir = 1 + }, +/area/centcom/control) +"tv" = ( +/obj/machinery/pdapainter, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"tw" = ( +/obj/machinery/photocopier, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/button/door{ + id = "XCCFerry"; + name = "Hanger Bay Shutters"; + pixel_x = -8; + pixel_y = 24; + req_access_txt = "2" + }, +/obj/machinery/button/door{ + id = "XCCsec3"; + name = "CC Main Access Control"; + pixel_x = 8; + pixel_y = 24 + }, +/obj/machinery/button/door{ + id = "XCCsec1"; + name = "CC Shutter 1 Control"; + pixel_x = 8; + pixel_y = 38 + }, +/obj/machinery/button/door{ + id = "XCCsec3"; + name = "XCC Shutter 3 Control"; + pixel_x = -8; + pixel_y = 38 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"tx" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"ty" = ( +/obj/item/device/flashlight/lamp, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"tz" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"tA" = ( +/obj/structure/filingcabinet/medical, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"tB" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/centcom/control) +"tC" = ( +/obj/machinery/door/poddoor/shutters{ + id = "XCCcustoms2"; + name = "XCC Customs 2 Shutters" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"tD" = ( +/obj/structure/table, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/green/side{ + dir = 9 + }, +/area/centcom/control) +"tE" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/centcom/control) +"tF" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/control) +"tG" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/centcom/control) +"tH" = ( +/obj/machinery/door/poddoor/shutters{ + id = "XCCcustoms1"; + name = "XCC Customs 1 Shutters" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"tI" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 10 + }, +/area/centcom/evac) +"tJ" = ( +/turf/open/floor/plasteel/blue/side{ + tag = "icon-blue (NORTHEAST)"; + icon_state = "blue"; + dir = 5 + }, +/area/centcom/evac) +"tK" = ( +/turf/open/floor/plasteel/blue, +/area/centcom/evac) +"tL" = ( +/turf/open/floor/plasteel/blue/side{ + tag = "icon-blue (EAST)"; + icon_state = "blue"; + dir = 4 + }, +/area/centcom/evac) +"tM" = ( +/turf/open/floor/plasteel/blue/side{ + tag = "icon-blue (WEST)"; + icon_state = "blue"; + dir = 8 + }, +/area/centcom/evac) +"tN" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/area/centcom/evac) +"tO" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Observation Room" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"tP" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Game Room" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"tQ" = ( +/obj/structure/chair/wood/wings{ + icon_state = "wooden_chair_wings"; + dir = 1 + }, +/turf/open/floor/carpet, +/area/wizard_station) +"tR" = ( +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'FOURTH WALL'."; + name = "\improper FOURTH WALL"; + pixel_x = -32 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"tS" = ( +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"tT" = ( +/obj/effect/landmark{ + name = "Syndicate-Spawn" + }, +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"tU" = ( +/obj/machinery/door/window{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Uplink Management Control"; + req_access_txt = "151" + }, +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"tV" = ( +/obj/structure/chair, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/assault_pod) +"tW" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"tX" = ( +/turf/open/floor/plasteel/neutral, +/area/centcom/ferry) +"tY" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"tZ" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/centcom{ + name = "Centcom Security"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"ua" = ( +/obj/machinery/door/poddoor/shutters{ + id = "XCCFerry"; + name = "XCC Ferry Hangar" + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/centcom/ferry) +"ub" = ( +/obj/machinery/button/door{ + id = "XCCFerry"; + name = "Hanger Bay Shutters"; + pixel_x = 0; + pixel_y = 24; + req_access_txt = "2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"uc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"ud" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"ue" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"uf" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"ug" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom Customs"; + opacity = 1; + req_access_txt = "109" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"uh" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/red{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/weapon/folder/blue{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/lighter, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"ui" = ( +/obj/structure/chair/comfy/brown{ + color = "#596479"; + dir = 2 + }, +/turf/open/floor/plasteel/vault, +/area/centcom/control) +"uj" = ( +/obj/structure/table/reinforced, +/obj/machinery/computer/med_data/laptop, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"uk" = ( +/turf/open/floor/plasteel/green/side{ + dir = 8 + }, +/area/centcom/control) +"ul" = ( +/turf/open/floor/plasteel/loadingarea, +/area/centcom/control) +"um" = ( +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/centcom/control) +"un" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"uo" = ( +/turf/open/floor/plasteel/blue/side{ + tag = "icon-blue (SOUTHEAST)"; + icon_state = "blue"; + dir = 6 + }, +/area/centcom/evac) +"up" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/area/centcom/evac) +"uq" = ( +/obj/structure/chair/wood/wings{ + tag = "icon-wooden_chair_wings (WEST)"; + icon_state = "wooden_chair_wings"; + dir = 8 + }, +/turf/open/floor/wood, +/area/wizard_station) +"ur" = ( +/obj/structure/table/wood/fancy, +/obj/item/device/camera/spooky, +/turf/open/floor/carpet, +/area/wizard_station) +"us" = ( +/obj/structure/table/wood/poker, +/obj/item/toy/cards/deck, +/turf/open/floor/carpet, +/area/wizard_station) +"ut" = ( +/obj/machinery/computer/telecrystals/boss, +/turf/open/floor/plasteel/podhatch{ + dir = 5 + }, +/area/syndicate_mothership/control) +"uu" = ( +/obj/structure/sign/map/left{ + pixel_y = -32 + }, +/obj/structure/rack{ + icon = 'icons/obj/stationobjs.dmi'; + icon_state = "minibar_left"; + name = "skeletal minibar" + }, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka, +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"uv" = ( +/obj/structure/sign/map/right{ + pixel_y = -32 + }, +/obj/structure/rack{ + icon = 'icons/obj/stationobjs.dmi'; + icon_state = "minibar_right"; + name = "skeletal minibar" + }, +/obj/item/weapon/reagent_containers/food/drinks/bottle/gin, +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"uw" = ( +/obj/machinery/door/airlock/centcom{ + name = "Equipment Room"; + opacity = 1; + req_access_txt = "150" + }, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"ux" = ( +/turf/open/floor/plating/asteroid/snow/atmosphere, +/obj/machinery/porta_turret/syndicate/pod, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/assault_pod) +"uy" = ( +/turf/open/floor/plating/asteroid/snow/atmosphere, +/obj/machinery/porta_turret/syndicate/pod, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/assault_pod) +"uz" = ( +/obj/docking_port/stationary{ + dir = 8; + dwidth = 2; + height = 13; + id = "ferry_away"; + name = "Centcom Ferry Dock"; + width = 5 + }, +/turf/open/space, +/area/space) +"uA" = ( +/obj/machinery/door/airlock/external{ + name = "Ferry Airlock"; + req_access_txt = "0" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"uB" = ( +/obj/structure/fans/tiny, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"uC" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"uD" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"uE" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"uF" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/directions/engineering{ + desc = "A sign that shows there are doors here. There are doors everywhere!"; + icon_state = "doors"; + name = "WARNING: BLAST DOORS"; + pixel_x = 0; + pixel_y = 0; + tag = "icon-doors" + }, +/turf/open/floor/plating, +/area/centcom/ferry) +"uG" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"uH" = ( +/turf/open/floor/plasteel/green/side{ + dir = 8 + }, +/area/centcom/ferry) +"uI" = ( +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/centcom/ferry) +"uJ" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8; + heat_capacity = 1e+006 + }, +/area/centcom/control) +"uK" = ( +/obj/machinery/computer/med_data, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"uL" = ( +/obj/machinery/computer/card/centcom, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"uM" = ( +/turf/open/floor/plasteel/green/corner, +/area/centcom/control) +"uN" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/green/side{ + dir = 8 + }, +/area/centcom/control) +"uO" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/centcom/control) +"uP" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"uQ" = ( +/turf/open/floor/plasteel/neutral/side{ + tag = "icon-neutral (NORTHEAST)"; + icon_state = "neutral"; + dir = 5 + }, +/area/centcom/evac) +"uR" = ( +/obj/item/weapon/statuebust{ + pixel_y = 12 + }, +/obj/structure/table/wood/fancy, +/turf/open/floor/wood, +/area/wizard_station) +"uS" = ( +/obj/machinery/vending/magivend, +/turf/open/floor/engine/cult, +/area/wizard_station) +"uT" = ( +/obj/machinery/vending/snack, +/turf/open/floor/engine/cult, +/area/wizard_station) +"uU" = ( +/obj/structure/table/wood/fancy, +/obj/item/weapon/storage/pill_bottle/dice{ + icon_state = "magicdicebag" + }, +/turf/open/floor/carpet, +/area/wizard_station) +"uV" = ( +/obj/structure/table/wood/fancy, +/obj/item/weapon/storage/photo_album, +/obj/machinery/light, +/turf/open/floor/carpet, +/area/wizard_station) +"uW" = ( +/turf/open/floor/plasteel/black, +/area/syndicate_mothership/control) +"uX" = ( +/obj/machinery/mech_bay_recharge_port, +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"uY" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mech_bay_recharge_floor, +/area/syndicate_mothership/control) +"uZ" = ( +/obj/machinery/computer/mech_bay_power_console, +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"va" = ( +/obj/machinery/vending/tool, +/turf/open/floor/plasteel/black, +/area/syndicate_mothership/control) +"vb" = ( +/obj/structure/closet/cardboard/metal, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"vc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"vd" = ( +/obj/machinery/door/airlock/centcom{ + aiControlDisabled = 1; + name = "Assault Pod"; + opacity = 1; + req_access_txt = "150" + }, +/obj/docking_port/mobile/assault_pod{ + dwidth = 3; + name = "steel rain"; + port_angle = 90; + preferred_direction = 4 + }, +/turf/open/floor/plating, +/area/shuttle/assault_pod) +"ve" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"vf" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"vg" = ( +/obj/machinery/button/door{ + id = "XCCsec1"; + name = "CC Shutter 1 Control"; + pixel_y = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"vh" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, +/area/centcom/control) +"vi" = ( +/obj/machinery/computer/crew, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"vj" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/wood, +/area/centcom/control) +"vk" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/wood, +/area/centcom/control) +"vl" = ( +/obj/machinery/computer/communications, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"vm" = ( +/turf/open/floor/plasteel/blue/side{ + tag = "icon-blue (NORTHWEST)"; + icon_state = "blue"; + dir = 9 + }, +/area/centcom/evac) +"vn" = ( +/turf/open/floor/plasteel/blue/side{ + tag = "icon-blue (SOUTHWEST)"; + icon_state = "blue"; + dir = 10 + }, +/area/centcom/evac) +"vo" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Study" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"vp" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Break Room" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"vq" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"vr" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/structure/sign/vacuum, +/turf/open/floor/plating, +/area/centcom/ferry) +"vs" = ( +/obj/machinery/light, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"vt" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"vu" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_y = -28 + }, +/obj/structure/sign/securearea{ + pixel_x = 32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"vv" = ( +/obj/machinery/door/airlock/centcom{ + name = "Briefing Room"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/ferry) +"vw" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, +/area/centcom/control) +"vx" = ( +/obj/item/weapon/storage/box/ids{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/silver_ids, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"vy" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen/blue, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"vz" = ( +/obj/machinery/computer/prisoner, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"vA" = ( +/obj/machinery/computer/secure_data, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"vB" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"vC" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel/green/corner, +/area/centcom/control) +"vD" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/blue/side, +/area/centcom/control) +"vE" = ( +/obj/item/weapon/storage/firstaid/regular, +/obj/structure/table, +/turf/open/floor/plasteel/green/side{ + dir = 6 + }, +/area/centcom/control) +"vF" = ( +/turf/open/floor/plasteel/blue/corner{ + dir = 4 + }, +/area/centcom/evac) +"vG" = ( +/obj/structure/chair/wood/wings, +/turf/open/floor/engine/cult, +/area/wizard_station) +"vH" = ( +/obj/structure/table/wood, +/obj/item/stack/medical/bruise_pack, +/obj/item/stack/medical/ointment, +/turf/open/floor/engine/cult, +/area/wizard_station) +"vI" = ( +/obj/structure/table/wood, +/obj/item/weapon/retractor, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"vJ" = ( +/obj/structure/table/wood, +/obj/item/clothing/suit/wizrobe/magusblue, +/obj/item/clothing/head/wizard/magus, +/obj/item/weapon/staff, +/obj/structure/mirror/magic{ + pixel_y = 28 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"vK" = ( +/obj/structure/table/wood, +/obj/item/clothing/suit/wizrobe/magusred, +/obj/item/clothing/head/wizard/magus, +/obj/item/weapon/staff, +/turf/open/floor/engine/cult, +/area/wizard_station) +"vL" = ( +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard, +/turf/open/floor/grass, +/area/wizard_station) +"vM" = ( +/obj/effect/decal/cleanable/blood/splatter, +/obj/effect/decal/cleanable/blood/gibs/body, +/turf/open/floor/grass, +/area/wizard_station) +"vN" = ( +/obj/effect/decal/remains/xeno/larva, +/turf/open/floor/grass, +/area/wizard_station) +"vO" = ( +/obj/effect/decal/cleanable/blood/splatter, +/turf/open/floor/grass, +/area/wizard_station) +"vP" = ( +/obj/structure/chair/stool, +/turf/open/floor/plasteel/black, +/area/syndicate_mothership/control) +"vQ" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"vR" = ( +/obj/structure/table/wood, +/obj/item/weapon/phone{ + desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/mask/cigarette/cigar/cohiba{ + pixel_x = 6 + }, +/obj/item/clothing/mask/cigarette/cigar/havana{ + pixel_x = 2 + }, +/obj/item/clothing/mask/cigarette/cigar{ + pixel_x = 4.5 + }, +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"vS" = ( +/obj/structure/bookcase/random, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"vT" = ( +/obj/structure/table/wood, +/obj/machinery/computer/med_data/laptop, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"vU" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"vV" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"vW" = ( +/obj/structure/closet/secure_closet/ertEngi, +/obj/structure/sign/directions/engineering{ + pixel_y = 24 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"vX" = ( +/obj/structure/closet/secure_closet/ertEngi, +/obj/machinery/airalarm{ + pixel_y = 24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"vY" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/device/flashlight/seclite, +/obj/structure/noticeboard{ + pixel_y = 28 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"vZ" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/c4{ + pixel_x = 6 + }, +/obj/item/weapon/c4{ + pixel_x = -4 + }, +/obj/machinery/firealarm{ + pixel_y = 24 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"wa" = ( +/obj/structure/rack, +/obj/item/weapon/gun/energy/e_gun{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/gun/energy/e_gun, +/obj/structure/sign/nanotrasen{ + pixel_y = 32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"wb" = ( +/obj/structure/closet/secure_closet/ertCom, +/obj/structure/sign/directions/engineering{ + desc = "A direction sign, pointing out which way the Command department is."; + dir = 2; + icon_state = "direction_bridge"; + name = "command department"; + pixel_y = 24; + tag = "icon-direction_bridge" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"wc" = ( +/obj/machinery/door/airlock/glass_medical{ + name = "Infirmary" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/control) +"wd" = ( +/turf/open/floor/plasteel/blue/corner{ + tag = "icon-bluecorner (NORTH)"; + icon_state = "bluecorner"; + dir = 1 + }, +/area/centcom/evac) +"we" = ( +/turf/open/floor/plasteel/blue/side{ + tag = "icon-blue (NORTH)"; + icon_state = "blue"; + dir = 1 + }, +/area/centcom/evac) +"wf" = ( +/turf/closed/indestructible/fakeglass{ + color = "#008000"; + dir = 1; + icon_state = "fakewindows" + }, +/area/wizard_station) +"wg" = ( +/obj/structure/destructible/cult/tome, +/turf/open/floor/engine/cult, +/area/wizard_station) +"wh" = ( +/obj/structure/closet/crate{ + icon_state = "crateopen"; + opened = 1 + }, +/obj/item/clothing/suit/wizrobe/red, +/obj/item/clothing/head/wizard/red, +/obj/item/weapon/staff, +/obj/item/clothing/shoes/sandal/magic, +/turf/open/floor/engine/cult, +/area/wizard_station) +"wi" = ( +/turf/open/floor/grass, +/area/wizard_station) +"wj" = ( +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/corgi, +/turf/open/floor/grass, +/area/wizard_station) +"wk" = ( +/obj/structure/closet/syndicate/personal, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/syndicate_mothership/control) +"wl" = ( +/obj/structure/table, +/obj/item/weapon/gun/energy/ionrifle{ + pin = /obj/item/device/firing_pin + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/syndicate_mothership/control) +"wm" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/box/drinkingglasses, +/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{ + pixel_y = 5 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"wn" = ( +/turf/open/floor/plasteel/black, +/area/centcom/ferry) +"wo" = ( +/obj/structure/chair/office/dark, +/obj/effect/landmark{ + name = "Emergencyresponseteam" + }, +/turf/open/floor/plasteel/black, +/area/centcom/ferry) +"wp" = ( +/obj/structure/chair/office/dark, +/obj/effect/landmark{ + name = "Emergencyresponseteam" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/ferry) +"wq" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"wr" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"ws" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/centcom/control) +"wt" = ( +/turf/open/floor/plasteel/blue/corner, +/area/centcom/control) +"wu" = ( +/obj/item/weapon/scalpel{ + pixel_y = 12 + }, +/obj/item/weapon/circular_saw, +/obj/item/weapon/retractor{ + pixel_x = 4 + }, +/obj/item/weapon/hemostat{ + pixel_x = -4 + }, +/obj/item/clothing/gloves/color/latex, +/obj/item/clothing/mask/surgical, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"wv" = ( +/obj/structure/bed/roller, +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"ww" = ( +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"wx" = ( +/obj/machinery/computer/med_data, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"wy" = ( +/turf/closed/indestructible/fakeglass{ + color = "#008000"; + dir = 1; + icon_state = "fakewindows2" + }, +/area/wizard_station) +"wz" = ( +/obj/structure/bookcase/random/reference, +/turf/open/floor/engine/cult, +/area/wizard_station) +"wA" = ( +/obj/structure/destructible/cult/talisman{ + desc = "A altar dedicated to the Wizard's Federation" + }, +/obj/item/weapon/kitchen/knife/ritual, +/turf/open/floor/engine/cult, +/area/wizard_station) +"wB" = ( +/obj/item/clothing/shoes/sandal/marisa, +/obj/item/clothing/suit/wizrobe/marisa, +/obj/item/clothing/head/wizard/marisa, +/obj/item/weapon/staff/broom, +/turf/open/floor/engine/cult, +/area/wizard_station) +"wC" = ( +/obj/effect/decal/cleanable/blood/splatter, +/mob/living/simple_animal/hostile/creature{ + name = "Experiment 35b" + }, +/turf/open/floor/grass, +/area/wizard_station) +"wD" = ( +/obj/machinery/photocopier, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"wE" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/red{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/weapon/folder/blue{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/weapon/lighter, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"wF" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/secure/briefcase, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"wG" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"wH" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen/blue, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"wI" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"wJ" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/effect/landmark{ + name = "Emergencyresponseteam" + }, +/turf/open/floor/plasteel/black, +/area/centcom/ferry) +"wK" = ( +/obj/machinery/door/poddoor/ert, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"wL" = ( +/turf/open/floor/plasteel/vault{ + tag = "icon-vault (NORTHEAST)"; + dir = 5 + }, +/area/centcom/ferry) +"wM" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/radio, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"wN" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/firstaid/regular, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"wO" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"wP" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/centcom/control) +"wQ" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, +/area/centcom/control) +"wR" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/green/corner, +/area/centcom/control) +"wS" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/blue/corner, +/area/centcom/control) +"wT" = ( +/obj/structure/table/optable, +/obj/item/weapon/surgical_drapes, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"wU" = ( +/turf/open/floor/plasteel/blue, +/area/centcom/control) +"wV" = ( +/obj/machinery/computer/communications, +/obj/structure/extinguisher_cabinet{ + pixel_x = 24 + }, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"wW" = ( +/turf/open/floor/plasteel/yellowsiding, +/area/centcom/evac) +"wX" = ( +/turf/closed/indestructible/fakeglass{ + color = "#008000" + }, +/area/wizard_station) +"wY" = ( +/obj/effect/landmark/start{ + name = "wizard" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"wZ" = ( +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood/splatter, +/turf/open/floor/grass, +/area/wizard_station) +"xa" = ( +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/slime, +/turf/open/floor/grass, +/area/wizard_station) +"xb" = ( +/obj/effect/decal/remains/xeno, +/turf/open/floor/grass, +/area/wizard_station) +"xc" = ( +/obj/structure/chair/comfy/brown{ + color = "#596479"; + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"xd" = ( +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"xe" = ( +/obj/structure/table/reinforced, +/obj/item/device/flashlight/seclite, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xf" = ( +/obj/machinery/shuttle_manipulator, +/turf/open/floor/circuit/green, +/area/centcom/ferry) +"xg" = ( +/turf/open/floor/circuit/green, +/area/centcom/ferry) +"xh" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xi" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/obj/effect/landmark{ + name = "Emergencyresponseteam" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/ferry) +"xj" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/yellow, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"xk" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/zipties, +/obj/item/weapon/crowbar/red, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"xl" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "Briefing Area APC"; + pixel_x = 26; + pixel_y = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xm" = ( +/obj/structure/sign/bluecross_2, +/turf/closed/indestructible/riveted, +/area/centcom/control) +"xn" = ( +/obj/machinery/computer/operating, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"xo" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"xp" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/evac) +"xq" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/evac) +"xr" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/evac) +"xs" = ( +/obj/structure/table, +/obj/item/toy/sword, +/obj/item/weapon/gun/ballistic/shotgun/toy/crossbow, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/evac) +"xt" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/evac) +"xu" = ( +/obj/structure/chair/wood/wings{ + icon_state = "wooden_chair_wings"; + dir = 1 + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"xv" = ( +/mob/living/simple_animal/bot/medbot/mysterious{ + desc = "If you don't accidentally blow yourself up from time to time you're not really a wizard anyway."; + faction = list("neutral","silicon","creature"); + name = "Nobody's Perfect" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"xw" = ( +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno, +/turf/open/floor/grass, +/area/wizard_station) +"xx" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xy" = ( +/obj/machinery/computer/card/centcom, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"xz" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/device/taperecorder, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"xA" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xB" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/crowbar/red, +/obj/item/weapon/tank/internals/emergency_oxygen/engi, +/obj/item/clothing/mask/gas, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xC" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/pen/blue, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xD" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/restraints/handcuffs/cable/zipties, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xE" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/lockbox/loyalty, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"xF" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/toolbox/mechanical, +/obj/item/weapon/tank/internals/emergency_oxygen/engi, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"xG" = ( +/obj/machinery/newscaster/security_unit{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xH" = ( +/obj/machinery/door/poddoor/shutters{ + id = "XCCsec3"; + name = "CC Main Access Shutters" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/control) +"xI" = ( +/obj/item/weapon/defibrillator/loaded, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"xJ" = ( +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = 6; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = -3 + }, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 3; + pixel_y = -2 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 4; + pixel_y = 1 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 2; + pixel_y = 8 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"xK" = ( +/obj/machinery/sleeper{ + tag = "icon-sleeper-open (EAST)"; + icon_state = "sleeper-open"; + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"xL" = ( +/obj/machinery/light, +/obj/structure/noticeboard{ + dir = 1; + icon_state = "nboard00"; + pixel_y = -32; + tag = "icon-nboard00 (NORTH)" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"xM" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"xN" = ( +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"xO" = ( +/obj/item/weapon/storage/firstaid/toxin, +/obj/item/weapon/storage/firstaid/o2{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/structure/table/reinforced, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/cmo, +/area/centcom/control) +"xP" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/storage/fancy/donut_box, +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 1; + icon_state = "rightsecure"; + name = "Centcom Customs"; + req_access_txt = "109" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/evac) +"xQ" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen/red, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/evac) +"xR" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 1; + icon_state = "rightsecure"; + name = "Centcom Customs"; + req_access_txt = "109" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/evac) +"xS" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Observation Deck" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"xT" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/device/radio/headset/headset_cent, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"xU" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/obj/effect/landmark{ + name = "Emergencyresponseteam" + }, +/turf/open/floor/plasteel/black, +/area/centcom/ferry) +"xV" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/obj/effect/landmark{ + name = "Emergencyresponseteam" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/ferry) +"xW" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/turf/open/floor/grass, +/area/centcom/evac) +"xX" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/genericbush, +/turf/open/floor/grass, +/area/centcom/evac) +"xY" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/restraints/handcuffs/cable/zipties, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"xZ" = ( +/turf/open/floor/plasteel/darkred/side{ + dir = 1 + }, +/area/centcom/evac) +"ya" = ( +/obj/machinery/computer/secure_data, +/obj/machinery/button/door{ + id = "XCCcustoms1"; + layer = 3; + name = "CC Emergency Docks Control"; + pixel_x = 24; + pixel_y = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yb" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/fernybush, +/obj/machinery/light, +/turf/open/floor/plasteel{ + dir = 6; + icon_state = "asteroid8"; + name = "sand" + }, +/area/centcom/evac) +"yc" = ( +/obj/structure/statue/uranium/nuke, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"yd" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/red, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"ye" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/red, +/obj/item/weapon/lighter, +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"yf" = ( +/obj/structure/bookcase/random, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"yg" = ( +/obj/structure/filingcabinet/medical, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"yh" = ( +/obj/structure/filingcabinet/security, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"yi" = ( +/obj/structure/closet/crate/bin, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"yj" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/machinery/power/apc{ + dir = 2; + name = "Briefing Room APC"; + pixel_y = -26 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"yk" = ( +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"yl" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/obj/machinery/light, +/obj/structure/noticeboard{ + dir = 1; + icon_state = "nboard00"; + pixel_y = -32; + tag = "icon-nboard00 (NORTH)" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"ym" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/structure/extinguisher_cabinet{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"yn" = ( +/obj/item/device/radio{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/device/radio{ + pixel_x = -5; + pixel_y = 5 + }, +/obj/item/device/radio, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/ferry) +"yo" = ( +/obj/structure/closet/secure_closet/ertMed, +/obj/structure/sign/directions/medical{ + dir = 1; + pixel_y = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"yp" = ( +/obj/structure/closet/secure_closet/ertMed, +/obj/machinery/vending/wallmed{ + name = "Emergency NanoMed"; + pixel_x = 0; + pixel_y = -32; + req_access_txt = "0"; + use_power = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"yq" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/emps, +/obj/item/weapon/gun/energy/ionrifle, +/obj/structure/sign/bluecross_2{ + pixel_y = -32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"yr" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/syringes, +/obj/item/weapon/gun/syringe/rapidsyringe, +/obj/structure/reagent_dispensers/peppertank{ + pixel_y = -32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"ys" = ( +/obj/structure/closet/secure_closet/ertSec, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn (NORTHWEST)" + }, +/area/centcom/ferry) +"yt" = ( +/obj/structure/closet/secure_closet/ertSec, +/obj/structure/sign/directions/security{ + dir = 1; + pixel_y = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"yu" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/device/taperecorder, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"yv" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/green/side{ + dir = 9 + }, +/area/centcom/control) +"yw" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/green/corner{ + dir = 1 + }, +/area/centcom/control) +"yx" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/centcom/control) +"yy" = ( +/obj/structure/table, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/centcom/control) +"yz" = ( +/obj/structure/filingcabinet/medical, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24; + pixel_y = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"yA" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"yB" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yC" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/evac) +"yD" = ( +/obj/machinery/computer/security, +/obj/machinery/newscaster{ + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yE" = ( +/obj/structure/closet/secure_closet/security, +/obj/item/weapon/storage/belt/security/full, +/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/clothing/head/helmet/swat/nanotrasen, +/obj/item/weapon/crowbar/red, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"yF" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/centcom/control) +"yG" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/blue/corner{ + dir = 4 + }, +/area/centcom/control) +"yH" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = 6 + }, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = -4 + }, +/obj/item/weapon/reagent_containers/hypospray/medipen, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"yI" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"yJ" = ( +/obj/structure/closet/secure_closet/security, +/obj/item/weapon/storage/belt/security/full, +/obj/item/weapon/gun/ballistic/automatic/wt550, +/obj/item/clothing/head/helmet/swat/nanotrasen, +/obj/item/weapon/crowbar/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yK" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/crowbar/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yL" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = -24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yM" = ( +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yN" = ( +/obj/machinery/door/airlock/external, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"yO" = ( +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (EAST)"; + dir = 4 + }, +/area/centcom/control) +"yP" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/storage/fancy/donut_box, +/obj/structure/window/reinforced{ + dir = 4; + pixel_x = 0 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/control) +"yQ" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/reagent_containers/food/drinks/britcup, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/control) +"yR" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (WEST)"; + dir = 8 + }, +/area/centcom/control) +"yS" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yT" = ( +/turf/open/floor/plasteel/vault{ + dir = 9 + }, +/area/centcom/evac) +"yU" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yV" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/device/taperecorder, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yW" = ( +/obj/item/weapon/storage/box/ids{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/silver_ids, +/obj/structure/table/reinforced, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"yX" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Storage" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"yY" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Personal Quarters" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"yZ" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Bathroom" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"za" = ( +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/red, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"zb" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (EAST)"; + dir = 4 + }, +/area/centcom/control) +"zc" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/folder/red, +/obj/item/weapon/pen/red, +/obj/machinery/door/window/brigdoor{ + tag = "icon-rightsecure (EAST)"; + name = "Centcom Customs"; + icon_state = "rightsecure"; + dir = 4; + req_access_txt = "109"; + base_state = "rightsecure" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/control) +"zd" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen/blue, +/obj/machinery/door/window/brigdoor{ + tag = "icon-rightsecure (WEST)"; + name = "Centcom Customs"; + icon_state = "rightsecure"; + dir = 8; + req_access_txt = "109"; + base_state = "rightsecure" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/centcom/control) +"ze" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (WEST)"; + dir = 8 + }, +/area/centcom/control) +"zf" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"zg" = ( +/obj/item/clothing/suit/wizrobe/black, +/obj/item/clothing/head/wizard/black, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/wizard_station) +"zh" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/wizard_station) +"zi" = ( +/obj/item/cardboard_cutout, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/wizard_station) +"zj" = ( +/obj/structure/table/wood, +/obj/effect/landmark{ + name = "Teleport-Scroll" + }, +/obj/item/weapon/dice/d20, +/obj/item/weapon/dice, +/turf/open/floor/carpet, +/area/wizard_station) +"zk" = ( +/obj/structure/punching_bag, +/turf/open/floor/carpet, +/area/wizard_station) +"zl" = ( +/obj/structure/urinal{ + pixel_y = 28 + }, +/turf/open/floor/plasteel/white, +/area/wizard_station) +"zm" = ( +/turf/open/floor/plasteel/white, +/area/wizard_station) +"zn" = ( +/obj/structure/mirror/magic{ + pixel_y = 28 + }, +/obj/structure/sink{ + pixel_y = 20 + }, +/turf/open/floor/plasteel/white, +/area/wizard_station) +"zo" = ( +/obj/structure/table/reinforced, +/obj/machinery/button/door{ + id = "XCCsec3"; + name = "CC Main Access Control" + }, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"zp" = ( +/obj/machinery/computer/security, +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"zq" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, +/area/centcom/control) +"zr" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/green/corner, +/area/centcom/control) +"zs" = ( +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/obj/machinery/computer/med_data, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"zt" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen/blue, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"zu" = ( +/obj/item/weapon/cautery/alien, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/wizard_station) +"zv" = ( +/obj/item/weapon/coin/antagtoken, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/wizard_station) +"zw" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet/wiz, +/turf/open/floor/carpet, +/area/wizard_station) +"zx" = ( +/obj/item/weapon/soap/homemade, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/wizard_station) +"zy" = ( +/obj/machinery/door/airlock/centcom{ + name = "Thunderdome Booth"; + opacity = 1; + req_access_txt = "0" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/control) +"zz" = ( +/obj/structure/closet/cardboard, +/obj/item/weapon/banhammer, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/wizard_station) +"zA" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/wizard_station) +"zB" = ( +/obj/vehicle/scooter/skateboard{ + tag = "icon-skateboard (EAST)"; + icon_state = "skateboard"; + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/wizard_station) +"zC" = ( +/obj/structure/dresser, +/obj/item/weapon/storage/backpack/satchel, +/turf/open/floor/carpet, +/area/wizard_station) +"zD" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/bag/tray, +/obj/item/weapon/reagent_containers/food/snacks/burger/spell, +/turf/open/floor/carpet, +/area/wizard_station) +"zE" = ( +/obj/structure/bookcase/random/adult, +/turf/open/floor/plasteel/white, +/area/wizard_station) +"zF" = ( +/obj/structure/toilet{ + tag = "icon-toilet00 (NORTH)"; + icon_state = "toilet00"; + dir = 1 + }, +/turf/open/floor/plasteel/white, +/area/wizard_station) +"zG" = ( +/obj/structure/table/wood/fancy, +/obj/item/weapon/skub{ + pixel_y = 16 + }, +/turf/open/floor/plasteel/white, +/area/wizard_station) +"zH" = ( +/turf/closed/indestructible/riveted, +/area/tdome/tdomeobserve) +"zI" = ( +/obj/machinery/door/airlock/external, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/tdome/tdomeobserve) +"zJ" = ( +/obj/machinery/vending/cola, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"zK" = ( +/obj/machinery/vending/snack, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"zL" = ( +/obj/item/weapon/clipboard, +/obj/item/weapon/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/stamp, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"zM" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/red, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"zN" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/tdome/tdomeobserve) +"zO" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/green/side{ + dir = 9 + }, +/area/tdome/tdomeobserve) +"zP" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/green/corner{ + dir = 1 + }, +/area/tdome/tdomeobserve) +"zQ" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"zR" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"zS" = ( +/obj/structure/closet/crate/bin, +/turf/open/floor/plasteel/green/side{ + dir = 5 + }, +/area/tdome/tdomeobserve) +"zT" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom Security"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/tdome/tdomeobserve) +"zU" = ( +/obj/machinery/door/airlock{ + icon = 'icons/obj/doors/airlocks/station/uranium.dmi'; + name = "Engine Room" + }, +/obj/structure/barricade/wooden, +/turf/open/floor/engine/cult, +/area/wizard_station) +"zV" = ( +/turf/closed/indestructible/riveted, +/area/centcom/holding) +"zW" = ( +/obj/structure/closet/crate/bin, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"zX" = ( +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"zY" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fernybush, +/turf/open/floor/plasteel{ + name = "plating"; + icon_state = "asteroid5" + }, +/area/tdome/tdomeobserve) +"zZ" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/fernybush, +/turf/open/floor/plasteel{ + dir = 6; + icon_state = "asteroid8"; + name = "sand" + }, +/area/tdome/tdomeobserve) +"Aa" = ( +/turf/open/floor/plasteel/red/corner, +/area/tdome/tdomeobserve) +"Ab" = ( +/turf/open/floor/plasteel/neutral/corner{ + dir = 8; + heat_capacity = 1e+006 + }, +/area/tdome/tdomeobserve) +"Ac" = ( +/obj/machinery/status_display, +/turf/closed/indestructible/riveted, +/area/tdome/tdomeobserve) +"Ad" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Ae" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral, +/area/tdome/tdomeobserve) +"Af" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/paper/pamphlet/ccaInfo, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"Ag" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/tdomeobserve) +"Ah" = ( +/obj/structure/chair/office/light{ + dir = 8 + }, +/turf/open/floor/plasteel/neutral, +/area/tdome/tdomeobserve) +"Ai" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"Aj" = ( +/turf/open/floor/plasteel/neutral/corner, +/area/tdome/tdomeobserve) +"Ak" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Al" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/turf/open/floor/plating/asteroid, +/area/tdome/tdomeobserve) +"Am" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/turf/open/floor/plating/asteroid, +/area/tdome/tdomeobserve) +"An" = ( +/obj/structure/table/wood, +/turf/open/floor/engine/cult, +/area/wizard_station) +"Ao" = ( +/obj/structure/table/wood, +/obj/item/weapon/gun/magic/wand{ + desc = "Used in emergencies to reignite magma engines."; + max_charges = 0; + name = "wand of emergency engine ignition" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"Ap" = ( +/obj/structure/table/wood, +/obj/item/weapon/bikehorn/golden{ + pixel_x = -8; + pixel_y = 8 + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"Aq" = ( +/obj/structure/table, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"Ar" = ( +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"As" = ( +/obj/structure/closet/secure_closet/bar{ + req_access_txt = "25" + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"At" = ( +/obj/structure/reagent_dispensers/beerkeg, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"Au" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/donkpockets{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/donkpockets{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/donkpockets{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/box/donkpockets{ + pixel_x = 3; + pixel_y = 3 + }, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"Av" = ( +/obj/structure/rack, +/obj/item/device/camera, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Aw" = ( +/obj/structure/rack, +/obj/item/toy/sword, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Ax" = ( +/obj/structure/rack, +/obj/item/toy/gun, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Ay" = ( +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Az" = ( +/turf/open/floor/plating/beach/sand, +/area/centcom/holding) +"AA" = ( +/obj/effect/overlay/palmtree_r, +/obj/effect/overlay/coconut, +/turf/open/floor/plating/beach/sand, +/area/centcom/holding) +"AB" = ( +/obj/effect/overlay/palmtree_l, +/turf/open/floor/plating/beach/sand, +/area/centcom/holding) +"AC" = ( +/obj/machinery/shower{ + dir = 4 + }, +/turf/open/floor/plasteel/whitered/side{ + dir = 9 + }, +/area/tdome/tdomeobserve) +"AD" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/whitered/side{ + dir = 1 + }, +/area/tdome/tdomeobserve) +"AE" = ( +/obj/machinery/shower{ + dir = 8 + }, +/turf/open/floor/plasteel/whitered/side{ + dir = 5 + }, +/area/tdome/tdomeobserve) +"AF" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"AG" = ( +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"AH" = ( +/obj/machinery/door/window/brigdoor{ + base_state = "rightsecure"; + dir = 2; + icon_state = "rightsecure"; + name = "Thunderdoom Booth"; + req_access_txt = "109" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"AI" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"AJ" = ( +/turf/open/floor/plasteel/goonplaque{ + desc = "This is a plaque commemorating the thunderdome and all those who have died at its pearly blast doors." + }, +/area/tdome/tdomeobserve) +"AK" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/green/corner, +/area/tdome/tdomeobserve) +"AL" = ( +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"AM" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"AN" = ( +/obj/machinery/shower{ + dir = 4 + }, +/turf/open/floor/plasteel/whitegreen/side{ + tag = "icon-whitegreen (NORTHWEST)"; + icon_state = "whitegreen"; + dir = 9 + }, +/area/tdome/tdomeobserve) +"AO" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/whitegreen/side{ + dir = 1 + }, +/area/tdome/tdomeobserve) +"AP" = ( +/obj/machinery/shower{ + dir = 8 + }, +/turf/open/floor/plasteel/whitegreen/side{ + tag = "icon-whitegreen (NORTHEAST)"; + icon_state = "whitegreen"; + dir = 5 + }, +/area/tdome/tdomeobserve) +"AQ" = ( +/obj/structure/table, +/obj/item/clothing/head/that, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"AR" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"AS" = ( +/obj/item/device/camera, +/turf/open/floor/plating/beach/sand, +/area/centcom/holding) +"AT" = ( +/obj/machinery/shower{ + dir = 4 + }, +/turf/open/floor/plasteel/whitered/corner{ + tag = "icon-whiteredcorner (NORTH)"; + icon_state = "whiteredcorner"; + dir = 1 + }, +/area/tdome/tdomeobserve) +"AU" = ( +/obj/item/weapon/soap/nanotrasen, +/turf/open/floor/plasteel/white, +/area/tdome/tdomeobserve) +"AV" = ( +/obj/machinery/shower{ + dir = 8 + }, +/turf/open/floor/plasteel/whitered/corner{ + tag = "icon-whiteredcorner (EAST)"; + icon_state = "whiteredcorner"; + dir = 4 + }, +/area/tdome/tdomeobserve) +"AW" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/red/corner, +/area/tdome/tdomeobserve) +"AX" = ( +/turf/open/floor/plasteel/neutral/side, +/area/tdome/tdomeobserve) +"AY" = ( +/turf/open/floor/plasteel/red/side, +/area/tdome/tdomeobserve) +"AZ" = ( +/turf/open/floor/plasteel/red/side{ + dir = 6 + }, +/area/tdome/tdomeobserve) +"Ba" = ( +/obj/machinery/door/airlock/centcom{ + name = "Thunderdome Backstage"; + opacity = 1; + req_access_txt = "0" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"Bb" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 1; + heat_capacity = 1e+006 + }, +/area/tdome/tdomeobserve) +"Bc" = ( +/turf/open/floor/plasteel/neutral/corner{ + dir = 1 + }, +/area/tdome/tdomeobserve) +"Bd" = ( +/turf/open/floor/plasteel/neutral/corner{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"Be" = ( +/turf/open/floor/plasteel/green/side{ + dir = 10 + }, +/area/tdome/tdomeobserve) +"Bf" = ( +/turf/open/floor/plasteel/green/side, +/area/tdome/tdomeobserve) +"Bg" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/green/corner{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Bh" = ( +/obj/machinery/shower{ + dir = 4 + }, +/turf/open/floor/plasteel/whitegreen/corner{ + dir = 1 + }, +/area/tdome/tdomeobserve) +"Bi" = ( +/obj/machinery/shower{ + dir = 8 + }, +/turf/open/floor/plasteel/whitegreen/corner{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"Bj" = ( +/obj/structure/destructible/cult/forge{ + desc = "A engine used in powering the wizards ship"; + name = "magma engine" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"Bk" = ( +/obj/structure/table, +/obj/item/ammo_box/foambox, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"Bl" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/drinks/shaker, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"Bm" = ( +/obj/structure/table, +/obj/item/weapon/lighter, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"Bn" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"Bo" = ( +/obj/structure/table, +/obj/item/weapon/dice/d20, +/turf/open/floor/plasteel/freezer{ + dir = 2 + }, +/area/centcom/holding) +"Bp" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/obj/item/clothing/head/bandana{ + pixel_y = -10 + }, +/obj/item/clothing/glasses/sunglasses, +/turf/open/floor/plating/beach/sand, +/area/centcom/holding) +"Bq" = ( +/obj/structure/chair/stool{ + pixel_y = 8 + }, +/turf/open/floor/plating/beach/sand, +/area/centcom/holding) +"Br" = ( +/obj/machinery/shower{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/tdome/tdomeobserve) +"Bs" = ( +/turf/open/floor/plasteel/white, +/area/tdome/tdomeobserve) +"Bt" = ( +/obj/machinery/shower{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/tdome/tdomeobserve) +"Bu" = ( +/turf/open/floor/plasteel/red/side{ + dir = 1 + }, +/area/tdome/tdomeobserve) +"Bv" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1; + heat_capacity = 1e+006 + }, +/area/tdome/tdomeobserve) +"Bw" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/tdome/tdomeobserve) +"Bx" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/red/side{ + dir = 10 + }, +/area/tdome/tdomeobserve) +"By" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/red/side, +/area/tdome/tdomeobserve) +"Bz" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/redyellow/side, +/area/tdome/tdomeobserve) +"BA" = ( +/turf/open/floor/plasteel/redyellow/side, +/area/tdome/tdomeobserve) +"BB" = ( +/turf/open/floor/plasteel/loadingarea, +/area/tdome/tdomeobserve) +"BC" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/green/side, +/area/tdome/tdomeobserve) +"BD" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/green/side{ + dir = 6 + }, +/area/tdome/tdomeobserve) +"BE" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"BF" = ( +/turf/open/floor/plasteel/green/side{ + dir = 1 + }, +/area/tdome/tdomeobserve) +"BG" = ( +/obj/structure/window/reinforced{ + resistance_flags = 3; + color = "#008000"; + dir = 1 + }, +/turf/open/floor/plating/lava, +/area/wizard_station) +"BH" = ( +/obj/structure/rack, +/obj/item/clothing/head/that, +/obj/item/clothing/under/suit_jacket, +/obj/item/clothing/tie/waistcoat, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"BI" = ( +/obj/item/toy/beach_ball, +/turf/open/floor/plating/beach/sand, +/area/centcom/holding) +"BJ" = ( +/obj/machinery/door/airlock/silver{ + name = "Shower" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white, +/area/tdome/tdomeobserve) +"BK" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/tdome/tdomeobserve) +"BL" = ( +/obj/structure/sign/nosmoking_2, +/turf/closed/indestructible/riveted, +/area/tdome/tdomeobserve) +"BM" = ( +/obj/machinery/door/airlock/centcom{ + name = "Thunderdome"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/tdome/tdomeobserve) +"BN" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/indestructible/riveted, +/area/tdome/tdomeobserve) +"BO" = ( +/obj/structure/shuttle/engine/heater{ + resistance_flags = 3 + }, +/obj/structure/window/reinforced{ + resistance_flags = 3; + color = "#008000"; + dir = 1 + }, +/turf/open/floor/plating/lava/airless, +/area/wizard_station) +"BP" = ( +/obj/structure/rack, +/obj/item/weapon/storage/crayons, +/obj/item/weapon/gun/ballistic/automatic/toy/pistol, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"BQ" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"BR" = ( +/obj/structure/table, +/obj/structure/bedsheetbin, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/whitered/side{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"BS" = ( +/obj/structure/closet/secure_closet/personal, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"BT" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"BU" = ( +/obj/structure/closet/secure_closet/freezer/meat, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawbacon, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawbacon, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawbacon, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawbacon, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/killertomato, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/killertomato, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/killertomato, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/killertomato, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/human/mutant/lizard, +/obj/item/weapon/reagent_containers/food/snacks/sausage, +/obj/item/weapon/reagent_containers/food/snacks/sausage, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawcutlet, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawcutlet, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawcutlet, +/obj/item/weapon/reagent_containers/food/snacks/carpmeat, +/obj/item/weapon/reagent_containers/food/snacks/carpmeat, +/obj/item/weapon/reagent_containers/food/snacks/carpmeat, +/obj/item/weapon/reagent_containers/food/snacks/carpmeat, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"BV" = ( +/obj/structure/closet/secure_closet/freezer/fridge, +/obj/item/weapon/reagent_containers/food/snacks/grown/potato, +/obj/item/weapon/reagent_containers/food/snacks/grown/potato, +/obj/item/weapon/reagent_containers/food/snacks/grown/whitebeet, +/obj/item/weapon/reagent_containers/food/snacks/grown/whitebeet, +/obj/item/weapon/reagent_containers/food/snacks/grown/tomato, +/obj/item/weapon/reagent_containers/food/snacks/grown/tomato, +/obj/item/weapon/reagent_containers/food/snacks/grown/rice, +/obj/item/weapon/reagent_containers/food/snacks/grown/rice, +/obj/item/weapon/reagent_containers/food/snacks/grown/icepepper, +/obj/item/weapon/reagent_containers/food/snacks/grown/icepepper, +/obj/item/weapon/reagent_containers/food/snacks/grown/citrus/lemon, +/obj/item/weapon/reagent_containers/food/snacks/grown/citrus/lime, +/obj/item/weapon/reagent_containers/food/snacks/grown/citrus/orange, +/obj/item/weapon/reagent_containers/food/snacks/grown/cherries, +/obj/item/weapon/reagent_containers/food/snacks/grown/apple, +/obj/item/weapon/reagent_containers/food/snacks/grown/ambrosia/deus, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"BW" = ( +/obj/machinery/processor, +/obj/effect/turf_decal/stripes/end, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"BX" = ( +/obj/structure/closet/secure_closet/freezer/kitchen, +/obj/item/weapon/reagent_containers/food/snacks/grown/banana, +/obj/item/weapon/reagent_containers/food/snacks/grown/banana, +/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, +/obj/item/weapon/reagent_containers/food/snacks/grown/wheat, +/obj/item/weapon/reagent_containers/food/snacks/grown/vanillapod, +/obj/item/weapon/reagent_containers/food/snacks/grown/vanillapod, +/obj/item/weapon/reagent_containers/food/snacks/grown/sugarcane, +/obj/item/weapon/reagent_containers/food/snacks/grown/sugarcane, +/obj/item/weapon/reagent_containers/food/snacks/grown/oat, +/obj/item/weapon/reagent_containers/food/snacks/grown/oat, +/obj/item/weapon/reagent_containers/food/snacks/grown/grapes, +/obj/item/weapon/reagent_containers/food/snacks/grown/grapes, +/obj/item/weapon/reagent_containers/food/snacks/grown/corn, +/obj/item/weapon/reagent_containers/food/snacks/grown/corn, +/obj/item/weapon/reagent_containers/food/snacks/grown/chili, +/obj/item/weapon/reagent_containers/food/snacks/grown/chili, +/obj/item/weapon/reagent_containers/food/snacks/grown/carrot, +/obj/item/weapon/reagent_containers/food/snacks/grown/apple, +/obj/item/weapon/reagent_containers/food/snacks/grown/ambrosia/vulgaris, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"BY" = ( +/obj/structure/closet/secure_closet/freezer/meat, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/bear, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/goliath, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/goliath, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/goliath, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/goliath, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno, +/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno, +/obj/item/weapon/reagent_containers/food/snacks/spaghetti, +/obj/item/weapon/reagent_containers/food/snacks/spaghetti, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawcutlet, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawcutlet, +/obj/item/weapon/reagent_containers/food/snacks/meat/rawcutlet, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"BZ" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/turf/open/floor/grass, +/area/tdome/tdomeobserve) +"Ca" = ( +/obj/structure/table/wood, +/obj/structure/sign/goldenplaque{ + pixel_y = 32 + }, +/obj/item/clothing/tie/lawyers_badge{ + desc = "A badge of upmost glory."; + name = "thunderdome badge" + }, +/turf/open/floor/plasteel/grimy, +/area/tdome/tdomeobserve) +"Cb" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Cc" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/tdome/tdomeobserve) +"Cd" = ( +/obj/structure/table/wood, +/obj/structure/sign/goldenplaque{ + pixel_y = 32 + }, +/obj/item/clothing/tie/medal/silver{ + pixel_y = 5 + }, +/turf/open/floor/plasteel/grimy, +/area/tdome/tdomeobserve) +"Ce" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/genericbush, +/turf/open/floor/grass, +/area/tdome/tdomeobserve) +"Cf" = ( +/obj/structure/table/wood, +/obj/machinery/reagentgrinder{ + desc = "Used to grind things up into raw materials and liquids."; + pixel_y = 5 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Cg" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/box/beanbag, +/obj/item/weapon/gun/ballistic/revolver/doublebarrel, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Ch" = ( +/obj/structure/table/wood, +/obj/structure/reagent_dispensers/beerkeg, +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Ci" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Cj" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/box/drinkingglasses, +/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{ + pixel_y = 5 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Ck" = ( +/turf/open/floor/plasteel/green/corner, +/area/tdome/tdomeobserve) +"Cl" = ( +/obj/structure/table, +/obj/structure/bedsheetbin, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/whitegreen/side{ + tag = "icon-whitegreen (EAST)"; + icon_state = "whitegreen"; + dir = 4 + }, +/area/tdome/tdomeobserve) +"Cm" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/space, +/area/wizard_station) +"Cn" = ( +/obj/structure/rack, +/obj/item/weapon/storage/crayons, +/obj/item/weapon/gun/ballistic/shotgun/toy/crossbow, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Co" = ( +/turf/open/floor/plating/beach/coastline_b, +/area/centcom/holding) +"Cp" = ( +/obj/item/clothing/head/collectable/paper, +/turf/open/floor/plating/beach/coastline_b, +/area/centcom/holding) +"Cq" = ( +/obj/structure/sink{ + dir = 8; + icon_state = "sink"; + pixel_x = -12 + }, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/whitered/corner{ + tag = "icon-whiteredcorner (NORTH)"; + icon_state = "whiteredcorner"; + dir = 1 + }, +/area/tdome/tdomeobserve) +"Cr" = ( +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"Cs" = ( +/turf/open/floor/plasteel/red, +/area/tdome/tdomeobserve) +"Ct" = ( +/obj/structure/table/wood, +/obj/item/weapon/reagent_containers/food/drinks/trophy/gold_cup, +/turf/open/floor/plasteel/grimy, +/area/tdome/tdomeobserve) +"Cu" = ( +/turf/open/floor/plasteel/bar, +/area/tdome/tdomeobserve) +"Cv" = ( +/turf/open/floor/plasteel/green/side{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Cw" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = 28 + }, +/turf/open/floor/plasteel/whitegreen/corner{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"Cx" = ( +/obj/structure/rack, +/obj/item/clothing/shoes/laceup, +/obj/item/clothing/under/suit_jacket/female{ + desc = "A black trouser suit for women. Very formal."; + name = "black suit"; + pixel_x = 3; + pixel_y = 1 + }, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Cy" = ( +/obj/structure/table, +/obj/item/weapon/gun/ballistic/automatic/toy/pistol, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"Cz" = ( +/turf/open/floor/plating/beach/water, +/area/centcom/holding) +"CA" = ( +/obj/structure/sink{ + dir = 8; + icon_state = "sink"; + pixel_x = -12 + }, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/white, +/area/tdome/tdomeobserve) +"CB" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ + pixel_x = -8; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/food/condiment/peppermill{ + pixel_x = -8 + }, +/obj/item/weapon/kitchen/knife, +/obj/machinery/newscaster{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"CC" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/red, +/area/tdome/tdomeobserve) +"CD" = ( +/obj/machinery/firealarm{ + dir = 4; + pixel_x = 24 + }, +/turf/open/floor/plasteel/white, +/area/tdome/tdomeobserve) +"CE" = ( +/obj/structure/table/wood, +/obj/structure/sign/atmosplaque{ + desc = "This plaque commemorates those who have fallen in glorious combat. For all the charred, dizzy, and beaten men who have died in its hands."; + name = "Thunderdome Plaque"; + pixel_y = -32 + }, +/obj/item/clothing/tie/medal/gold{ + pixel_x = 3; + pixel_y = 5 + }, +/obj/item/clothing/tie/medal/gold, +/turf/open/floor/plasteel/grimy, +/area/tdome/tdomeobserve) +"CF" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"CG" = ( +/obj/structure/table/wood, +/obj/structure/sign/atmosplaque{ + desc = "This plaque commemorates those who have fallen in glorious combat. For all the charred, dizzy, and beaten men who have died in its hands."; + name = "Thunderdome Plaque"; + pixel_y = -32 + }, +/obj/item/clothing/tie/medal{ + pixel_y = 5 + }, +/turf/open/floor/plasteel/grimy, +/area/tdome/tdomeobserve) +"CH" = ( +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24; + pixel_y = 0 + }, +/turf/open/floor/plasteel/bar, +/area/tdome/tdomeobserve) +"CI" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/bar, +/area/tdome/tdomeobserve) +"CJ" = ( +/obj/machinery/chem_master/condimaster{ + name = "HoochMaster 2000" + }, +/obj/machinery/airalarm{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"CK" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = 28 + }, +/turf/open/floor/plasteel/white, +/area/tdome/tdomeobserve) +"CL" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/holding) +"CM" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/holding) +"CN" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/holding) +"CO" = ( +/obj/structure/sink{ + dir = 8; + icon_state = "sink"; + pixel_x = -12 + }, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/whitered/corner{ + tag = "icon-whiteredcorner (WEST)"; + icon_state = "whiteredcorner"; + dir = 8 + }, +/area/tdome/tdomeobserve) +"CP" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/food/snacks/mint, +/obj/item/weapon/reagent_containers/food/condiment/enzyme{ + pixel_y = 5 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"CQ" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/turf/open/floor/plasteel/red, +/area/tdome/tdomeobserve) +"CR" = ( +/obj/structure/sink{ + dir = 8; + icon_state = "sink"; + pixel_x = -12 + }, +/turf/open/floor/plasteel/bar, +/area/tdome/tdomeobserve) +"CS" = ( +/obj/structure/table/wood, +/obj/machinery/chem_dispenser/drinks/beer, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"CT" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = 28 + }, +/turf/open/floor/plasteel/whitegreen/corner, +/area/tdome/tdomeobserve) +"CU" = ( +/obj/item/weapon/reagent_containers/food/snacks/egg/rainbow{ + desc = "I bet you think you're pretty clever... well you are."; + name = "easter egg" + }, +/turf/open/space, +/area/space) +"CV" = ( +/obj/effect/landmark{ + name = "Holding Facility" + }, +/turf/open/floor/engine, +/area/centcom/holding) +"CW" = ( +/obj/structure/sink{ + dir = 8; + icon_state = "sink"; + pixel_x = -12 + }, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = -28 + }, +/turf/open/floor/plasteel/whitered/side{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"CX" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/suit/apron/chef, +/obj/item/weapon/kitchen/rollingpin, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"CY" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/reagent_containers/food/condiment/saltshaker{ + pixel_x = -8; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/food/condiment/peppermill{ + pixel_x = -8 + }, +/obj/item/weapon/reagent_containers/food/drinks/britcup, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"CZ" = ( +/turf/open/floor/plasteel/vault, +/area/tdome/tdomeobserve) +"Da" = ( +/obj/structure/chair, +/obj/effect/landmark{ + name = "tdomeobserve" + }, +/obj/structure/sign/barsign{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Db" = ( +/obj/structure/chair, +/obj/effect/landmark{ + name = "tdomeobserve" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dc" = ( +/obj/machinery/computer/security/telescreen{ + pixel_y = 0 + }, +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/ai_status_display{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dd" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"De" = ( +/obj/structure/table/wood, +/obj/machinery/chem_dispenser/drinks, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Df" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/obj/structure/mirror{ + desc = "Mirror mirror on the wall, who is the most robust of them all?"; + pixel_x = 28 + }, +/turf/open/floor/plasteel/whitegreen/side{ + tag = "icon-whitegreen (EAST)"; + icon_state = "whitegreen"; + dir = 4 + }, +/area/tdome/tdomeobserve) +"Dg" = ( +/obj/machinery/door/airlock/centcom{ + name = "Thunderdome Locker Room"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/tdome/tdomeobserve) +"Dh" = ( +/obj/structure/table/reinforced, +/obj/machinery/reagentgrinder{ + desc = "Used to grind things up into raw materials and liquids."; + pixel_y = 5 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Di" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/item/weapon/storage/bag/tray, +/obj/item/weapon/kitchen/fork, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"Dj" = ( +/turf/open/floor/plasteel/redyellow, +/area/tdome/tdomeobserve) +"Dk" = ( +/obj/machinery/vending/boozeomat, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dl" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/neutral/corner, +/area/tdome/tdomeobserve) +"Dm" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 6 + }, +/area/tdome/tdomeobserve) +"Dn" = ( +/obj/structure/rack, +/obj/item/weapon/storage/box/donkpockets, +/obj/item/weapon/storage/box/donkpockets, +/obj/item/clothing/head/chefhat, +/turf/open/floor/plasteel/vault, +/area/tdome/tdomeobserve) +"Do" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/structure/noticeboard{ + dir = 1; + icon_state = "nboard00"; + pixel_y = -32; + tag = "icon-nboard00 (NORTH)" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/tdomeobserve) +"Dp" = ( +/obj/machinery/computer/security/telescreen{ + pixel_y = 0 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dq" = ( +/obj/item/weapon/storage/fancy/cigarettes/cigars{ + pixel_y = 6 + }, +/obj/item/weapon/storage/fancy/cigarettes/cigars/cohiba{ + pixel_y = 3 + }, +/obj/item/weapon/storage/fancy/cigarettes/cigars/havana, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dr" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 10 + }, +/area/tdome/tdomeobserve) +"Ds" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 8; + heat_capacity = 1e+006 + }, +/area/tdome/tdomeobserve) +"Dt" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"Du" = ( +/obj/structure/table/reinforced, +/obj/machinery/microwave{ + desc = "Cooks and boils stuff, somehow."; + pixel_x = -3; + pixel_y = 5 + }, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dv" = ( +/obj/structure/table/reinforced, +/obj/machinery/microwave{ + desc = "Cooks and boils stuff, somehow."; + pixel_x = -3; + pixel_y = 5 + }, +/obj/structure/sign/barsign{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dw" = ( +/obj/machinery/icecream_vat, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dx" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows"; + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dy" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows2"; + dir = 8 + }, +/area/tdome/tdomeobserve) +"Dz" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows"; + dir = 4 + }, +/area/tdome/tdomeobserve) +"DA" = ( +/obj/item/weapon/storage/box/matches{ + pixel_x = -3; + pixel_y = 5 + }, +/obj/structure/table/wood, +/obj/structure/sign/barsign{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"DB" = ( +/obj/item/weapon/lighter{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/lighter, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"DC" = ( +/obj/structure/table/wood, +/obj/item/weapon/book/manual/barman_recipes, +/obj/item/weapon/reagent_containers/food/drinks/shaker, +/obj/item/weapon/reagent_containers/glass/rag, +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"DD" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 1 + }, +/area/tdome/tdomeobserve) +"DE" = ( +/turf/closed/indestructible/riveted, +/area/tdome/arena) +"DF" = ( +/obj/machinery/door/airlock/centcom{ + name = "Thunderdome Gear Room"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/tdome/tdomeobserve) +"DG" = ( +/obj/machinery/igniter, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena) +"DH" = ( +/turf/open/floor/plasteel, +/area/tdome/arena) +"DI" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/arena) +"DJ" = ( +/turf/closed/indestructible/riveted, +/area/tdome/tdomeadmin) +"DK" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/turf/open/floor/plating/asteroid, +/area/tdome/tdomeadmin) +"DL" = ( +/obj/machinery/door/airlock/centcom{ + name = "Thunderdome Administration"; + opacity = 1; + req_access_txt = "102" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/tdome/tdomeadmin) +"DM" = ( +/obj/structure/rack, +/obj/item/clothing/under/color/red, +/obj/item/clothing/shoes/sneakers/brown, +/obj/item/clothing/suit/armor/tdome/red, +/obj/item/clothing/head/helmet/thunderdome, +/obj/item/weapon/melee/baton/loaded, +/obj/item/weapon/melee/energy/sword/saber/red, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"DN" = ( +/obj/machinery/door/poddoor{ + id = "thunderdomegen"; + name = "General Supply" + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/tdome/arena) +"DO" = ( +/obj/effect/landmark{ + name = "tdome2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"DP" = ( +/obj/effect/landmark{ + name = "tdome2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"DQ" = ( +/obj/effect/landmark{ + name = "tdome2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"DR" = ( +/obj/machinery/door/poddoor{ + id = "thunderdome"; + name = "Thunderdome Blast Door" + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/tdome/arena) +"DS" = ( +/turf/open/floor/plasteel/red/side{ + dir = 8 + }, +/area/tdome/arena) +"DT" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena) +"DU" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/tdome/arena) +"DV" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena) +"DW" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/tdome/arena) +"DX" = ( +/turf/open/floor/plasteel/green/side{ + dir = 4 + }, +/area/tdome/arena) +"DY" = ( +/obj/machinery/door/poddoor{ + id = "thunderdome"; + name = "Thunderdome Blast Door" + }, +/turf/open/floor/plasteel/loadingarea{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/tdome/arena) +"DZ" = ( +/obj/effect/landmark{ + name = "tdome1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"Ea" = ( +/obj/effect/landmark{ + name = "tdome1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"Eb" = ( +/obj/effect/landmark{ + name = "tdome1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"Ec" = ( +/obj/machinery/door/poddoor{ + id = "thunderdomegen"; + name = "General Supply" + }, +/turf/open/floor/plasteel/loadingarea{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/tdome/arena) +"Ed" = ( +/obj/structure/rack, +/obj/item/clothing/under/color/green, +/obj/item/clothing/shoes/sneakers/brown, +/obj/item/clothing/suit/armor/tdome/green, +/obj/item/clothing/head/helmet/thunderdome, +/obj/item/weapon/melee/baton/loaded, +/obj/item/weapon/melee/energy/sword/saber/green, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"Ee" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/fernybush, +/turf/open/floor/plasteel{ + dir = 6; + icon_state = "asteroid8"; + name = "sand" + }, +/area/tdome/tdomeadmin) +"Ef" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/tdome/tdomeadmin) +"Eg" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/tdome/tdomeadmin) +"Eh" = ( +/obj/effect/landmark{ + name = "tdome2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"Ei" = ( +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/effect/landmark{ + name = "tdome2" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena) +"Ej" = ( +/obj/effect/landmark{ + name = "tdome2" + }, +/turf/open/floor/plasteel/neutral, +/area/tdome/arena) +"Ek" = ( +/obj/effect/landmark{ + name = "tdome2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"El" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/tdome/arena) +"Em" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/tdome/arena) +"En" = ( +/obj/effect/landmark{ + name = "tdome1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"Eo" = ( +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/effect/landmark{ + name = "tdome1" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena) +"Ep" = ( +/obj/effect/landmark{ + name = "tdome1" + }, +/turf/open/floor/plasteel/neutral, +/area/tdome/arena) +"Eq" = ( +/obj/effect/landmark{ + name = "tdome1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"Er" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fernybush, +/turf/open/floor/plasteel{ + name = "plating"; + icon_state = "asteroid5" + }, +/area/tdome/tdomeadmin) +"Es" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/tdome/tdomeadmin) +"Et" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/tdome/tdomeadmin) +"Eu" = ( +/obj/machinery/camera{ + pixel_x = 11; + pixel_y = -9; + network = list("thunder"); + c_tag = "Red Team" + }, +/obj/effect/landmark{ + name = "tdome2" + }, +/turf/open/floor/plasteel/neutral, +/area/tdome/arena) +"Ev" = ( +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/tdome/arena) +"Ew" = ( +/turf/open/floor/circuit/green, +/area/tdome/arena) +"Ex" = ( +/obj/machinery/flasher{ + id = "tdomeflash"; + name = "Thunderdome Flash" + }, +/turf/open/floor/circuit/green, +/area/tdome/arena) +"Ey" = ( +/turf/open/floor/plasteel/loadingarea{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/tdome/arena) +"Ez" = ( +/obj/machinery/camera{ + pixel_x = 12; + pixel_y = -10; + network = list("thunder"); + c_tag = "Green Team" + }, +/obj/effect/landmark{ + name = "tdome1" + }, +/turf/open/floor/plasteel/neutral, +/area/tdome/arena) +"EA" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/turf/open/floor/plating/asteroid, +/area/tdome/tdomeadmin) +"EB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/tdome/tdomeadmin) +"EC" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/tdome/tdomeadmin) +"ED" = ( +/obj/machinery/camera{ + pixel_x = 10; + network = list("thunder"); + c_tag = "Arena" + }, +/turf/open/floor/circuit/green, +/area/tdome/arena) +"EE" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/tdome/arena) +"EF" = ( +/turf/open/floor/plasteel/green/corner, +/area/tdome/arena) +"EG" = ( +/obj/effect/landmark{ + name = "tdome2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"EH" = ( +/obj/effect/landmark{ + name = "tdome2" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/tdome/arena) +"EI" = ( +/obj/effect/landmark{ + name = "tdome2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"EJ" = ( +/obj/effect/landmark{ + name = "tdome1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"EK" = ( +/obj/effect/landmark{ + name = "tdome1" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/tdome/arena) +"EL" = ( +/obj/effect/landmark{ + name = "tdome1" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"EM" = ( +/obj/machinery/door/poddoor{ + id = "thunderdomehea"; + name = "Heavy Supply" + }, +/turf/open/floor/plasteel/loadingarea{ + dir = 1 + }, +/area/tdome/arena) +"EN" = ( +/obj/machinery/door/poddoor{ + id = "thunderdomehea"; + name = "Heavy Supply" + }, +/turf/open/floor/plasteel/loadingarea, +/area/tdome/arena) +"EO" = ( +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/tdome/tdomeadmin) +"EP" = ( +/obj/structure/rack, +/obj/item/clothing/under/color/red, +/obj/item/clothing/shoes/sneakers/brown, +/obj/item/clothing/suit/armor/vest, +/obj/item/clothing/head/helmet/swat, +/obj/item/weapon/gun/energy/laser, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"EQ" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows"; + dir = 8 + }, +/area/tdome/tdomeadmin) +"ER" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows2"; + dir = 8 + }, +/area/tdome/tdomeadmin) +"ES" = ( +/turf/closed/indestructible/fakeglass{ + icon_state = "fakewindows"; + dir = 4 + }, +/area/tdome/tdomeadmin) +"ET" = ( +/obj/structure/rack, +/obj/item/clothing/under/color/green, +/obj/item/clothing/shoes/sneakers/brown, +/obj/item/clothing/suit/armor/vest, +/obj/item/clothing/head/helmet/swat, +/obj/item/weapon/gun/energy/laser, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/tdome/arena) +"EU" = ( +/obj/item/device/radio{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/device/radio{ + pixel_x = -5; + pixel_y = 5 + }, +/obj/item/device/radio, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"EV" = ( +/obj/effect/landmark{ + name = "tdomeadmin" + }, +/obj/structure/chair/comfy/black{ + dir = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/tdome/tdomeadmin) +"EW" = ( +/obj/machinery/computer/security/telescreen{ + pixel_y = 0 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"EX" = ( +/obj/structure/chair/comfy/brown{ + color = "#66b266"; + dir = 1 + }, +/turf/open/floor/plasteel/darkgreen, +/area/tdome/tdomeadmin) +"EY" = ( +/obj/machinery/button/flasher{ + id = "tdomeflash"; + pixel_x = 0; + pixel_y = 0 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"EZ" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"Fa" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"Fb" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/tdome/tdomeadmin) +"Fc" = ( +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fd" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24; + pixel_y = 0 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fe" = ( +/turf/open/floor/plasteel/grimy, +/area/tdome/tdomeadmin) +"Ff" = ( +/turf/open/floor/plasteel/darkgreen/side{ + tag = "icon-darkgreen (NORTH)"; + icon_state = "darkgreen"; + dir = 1 + }, +/area/tdome/tdomeadmin) +"Fg" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fh" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"Fi" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"Fj" = ( +/turf/closed/indestructible/fakedoor{ + name = "Thunderdome Admin" + }, +/area/tdome/tdomeadmin) +"Fk" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/centcom{ + name = "Thunderdome Administration"; + opacity = 1; + req_access_txt = "102" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/tdome/tdomeadmin) +"Fl" = ( +/turf/open/floor/plasteel/vault, +/area/tdome/tdomeadmin) +"Fm" = ( +/obj/machinery/door/airlock/external{ + name = "Backup Emergency Escape Shuttle" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/tdomeadmin) +"Fn" = ( +/obj/machinery/door/airlock/titanium, +/obj/docking_port/stationary{ + dir = 4; + dwidth = 2; + height = 8; + id = "backup_away"; + name = "Backup Shuttle Dock"; + width = 8 + }, +/obj/docking_port/mobile/emergency/backup, +/turf/open/floor/plating, +/area/shuttle/escape) +"Fo" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"Fp" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper{ + info = "Due to circumstances beyond our control, your Emergency Evacuation Shuttle is out of service.

We apologise for the inconvinience this may cause you.

Please enjoy the use of this complementary book.

Sincerely,
Centcom Operations Demolitions Examination Retribution Bugfixing Underlining Services" + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"Fq" = ( +/obj/structure/bookcase/random, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fr" = ( +/obj/structure/table/wood, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/fourcolor, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fs" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/red, +/obj/item/weapon/book/manual/wiki/security_space_law, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Ft" = ( +/obj/structure/table/wood, +/obj/item/weapon/clipboard, +/obj/item/device/radio/headset/headset_cent, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fu" = ( +/obj/structure/table/wood, +/obj/item/weapon/phone{ + desc = "Supposedly a direct line to NanoTrasen Central Command. It's not even plugged in."; + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/clothing/mask/cigarette/cigar/cohiba{ + pixel_x = 6 + }, +/obj/item/clothing/mask/cigarette/cigar/havana{ + pixel_x = 2 + }, +/obj/item/clothing/mask/cigarette/cigar{ + pixel_x = 4.5 + }, +/obj/machinery/airalarm{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fv" = ( +/obj/machinery/button/door{ + id = "thunderdomehea"; + name = "Heavy Supply Control"; + pixel_y = 0; + req_access_txt = "102" + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fw" = ( +/obj/machinery/button/door{ + id = "thunderdome"; + name = "Main Blast Doors Control"; + pixel_y = 0; + req_access_txt = "102" + }, +/obj/structure/table/reinforced, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fx" = ( +/obj/machinery/button/door{ + id = "thunderdomegen"; + name = "General Supply Control"; + pixel_y = 0; + req_access_txt = "102" + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fy" = ( +/obj/structure/table/wood, +/obj/item/weapon/folder/red, +/obj/item/weapon/lighter, +/obj/machinery/newscaster{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"Fz" = ( +/obj/item/weapon/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/weapon/storage/secure/briefcase, +/obj/structure/table/wood, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"FA" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"FB" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/box/drinkingglasses, +/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey{ + pixel_y = 5 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeadmin) +"FC" = ( +/obj/structure/table/wood, +/obj/item/weapon/book/manual/random, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"FD" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/genericbush, +/turf/open/floor/grass, +/area/tdome/tdomeadmin) +"FE" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/turf/open/floor/grass, +/area/tdome/tdomeadmin) +"FF" = ( +/obj/machinery/status_display, +/turf/closed/indestructible/riveted, +/area/tdome/tdomeadmin) +"FG" = ( +/obj/machinery/ai_status_display, +/turf/closed/indestructible/riveted, +/area/tdome/tdomeadmin) +"FH" = ( +/turf/closed/wall/mineral/titanium/overspace, +/area/centcom/evac) +"FI" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_r"; + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/centcom/evac) +"FJ" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion"; + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/centcom/evac) +"FK" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion_l"; + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/centcom/evac) +"FL" = ( +/obj/docking_port/stationary{ + dir = 1; + dwidth = 1; + height = 4; + id = "pod4_away"; + name = "recovery ship"; + width = 3 + }, +/turf/open/space, +/area/space) +"FM" = ( +/obj/docking_port/stationary{ + dir = 1; + dwidth = 1; + height = 4; + id = "pod3_away"; + name = "recovery ship"; + width = 3 + }, +/turf/open/space, +/area/space) +"FN" = ( +/turf/closed/wall/mineral/titanium, +/area/centcom/evac) +"FO" = ( +/obj/structure/window/reinforced, +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/centcom/evac) +"FP" = ( +/obj/machinery/door/airlock/titanium, +/turf/open/floor/plating, +/area/centcom/evac) +"FQ" = ( +/obj/structure/window/shuttle, +/obj/structure/grille, +/turf/open/floor/plating, +/area/centcom/evac) +"FR" = ( +/turf/open/floor/plating, +/area/centcom/evac) +"FS" = ( +/turf/open/floor/plating, +/turf/closed/wall/mineral/titanium/interior, +/area/centcom/evac) +"FT" = ( +/turf/open/floor/mineral/titanium/blue, +/turf/closed/wall/mineral/titanium/interior, +/area/centcom/evac) +"FU" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"FV" = ( +/turf/open/floor/mineral/titanium/yellow, +/area/centcom/evac) +"FW" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/toxin{ + pixel_x = -2; + pixel_y = 4 + }, +/obj/item/weapon/storage/firstaid/toxin, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"FX" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/fire{ + pixel_x = -2; + pixel_y = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"FY" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 0 + }, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = -2; + pixel_y = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"FZ" = ( +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"Ga" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien20" + }, +/area/abductor_ship) +"Gb" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien21" + }, +/area/abductor_ship) +"Gc" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien22" + }, +/area/abductor_ship) +"Gd" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien23" + }, +/area/abductor_ship) +"Ge" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien24" + }, +/area/abductor_ship) +"Gf" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien16" + }, +/area/abductor_ship) +"Gg" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien17" + }, +/area/abductor_ship) +"Gh" = ( +/obj/machinery/abductor/experiment{ + team = 1 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Gi" = ( +/obj/machinery/abductor/console{ + team = 1 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Gj" = ( +/obj/machinery/abductor/pad{ + team = 1 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Gk" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien18" + }, +/area/abductor_ship) +"Gl" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien19" + }, +/area/abductor_ship) +"Gm" = ( +/obj/machinery/abductor/experiment{ + team = 4 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Gn" = ( +/obj/machinery/abductor/console{ + team = 4 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Go" = ( +/obj/machinery/abductor/pad{ + team = 4 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Gp" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"Gq" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"Gr" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/pen, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"Gs" = ( +/obj/structure/table/reinforced, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"Gt" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"Gu" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"Gv" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien14" + }, +/area/abductor_ship) +"Gw" = ( +/obj/machinery/computer/camera_advanced/abductor{ + team = 1 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Gx" = ( +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Gy" = ( +/obj/structure/closet/abductor, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Gz" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien15" + }, +/area/abductor_ship) +"GA" = ( +/obj/machinery/computer/camera_advanced/abductor{ + team = 4 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"GB" = ( +/obj/machinery/computer/secure_data, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"GC" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"GD" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"GE" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/clipboard, +/obj/item/weapon/stamp, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"GF" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien12" + }, +/area/abductor_ship) +"GG" = ( +/obj/item/weapon/retractor/alien, +/obj/item/weapon/hemostat/alien, +/obj/structure/table/abductor, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"GH" = ( +/obj/effect/landmark/abductor/scientist, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"GI" = ( +/obj/structure/table/optable/abductor, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"GJ" = ( +/obj/effect/landmark/abductor/agent, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"GK" = ( +/obj/structure/table/abductor, +/obj/item/weapon/storage/box/alienhandcuffs, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"GL" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien13" + }, +/area/abductor_ship) +"GM" = ( +/obj/effect/landmark/abductor/scientist{ + team = 4 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"GN" = ( +/obj/effect/landmark/abductor/agent{ + team = 4 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"GO" = ( +/obj/structure/table, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"GP" = ( +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"GQ" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"GR" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien10" + }, +/area/abductor_ship) +"GS" = ( +/obj/item/weapon/surgical_drapes, +/obj/item/weapon/paper/abductor, +/obj/item/weapon/scalpel/alien, +/obj/structure/table/abductor, +/obj/item/weapon/cautery/alien, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"GT" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien11" + }, +/area/abductor_ship) +"GU" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/handcuffs, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"GV" = ( +/obj/machinery/door/window/northright{ + base_state = "right"; + dir = 4; + icon_state = "right"; + name = "Security Desk"; + req_access_txt = "103" + }, +/turf/open/floor/mineral/plastitanium, +/area/centcom/evac) +"GW" = ( +/obj/docking_port/stationary{ + dir = 4; + dwidth = 1; + height = 4; + id = "pod2_away"; + name = "recovery ship"; + width = 3 + }, +/turf/open/space, +/area/space) +"GX" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien6" + }, +/area/abductor_ship) +"GY" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien7" + }, +/area/abductor_ship) +"GZ" = ( +/obj/machinery/abductor/gland_dispenser, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Ha" = ( +/obj/structure/table/abductor, +/obj/item/weapon/surgicaldrill/alien, +/obj/item/weapon/circular_saw/alien, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Hb" = ( +/obj/structure/bed/abductor, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Hc" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien8" + }, +/area/abductor_ship) +"Hd" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien9" + }, +/area/abductor_ship) +"He" = ( +/turf/closed/indestructible/abductor, +/area/abductor_ship) +"Hf" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien2" + }, +/area/abductor_ship) +"Hg" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien3" + }, +/area/abductor_ship) +"Hh" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien4" + }, +/area/abductor_ship) +"Hi" = ( +/turf/closed/indestructible/abductor{ + icon_state = "alien5" + }, +/area/abductor_ship) +"Hj" = ( +/obj/structure/bed, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"Hk" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/centcom/evac) +"Hl" = ( +/obj/machinery/door/airlock/titanium, +/turf/open/floor/mineral/titanium/yellow, +/area/centcom/evac) +"Hm" = ( +/obj/docking_port/stationary{ + dir = 4; + dwidth = 2; + height = 7; + id = "pod1_away"; + name = "recovery ship"; + width = 5 + }, +/turf/open/space, +/area/space) +"Hn" = ( +/obj/machinery/abductor/experiment{ + team = 2 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Ho" = ( +/obj/machinery/abductor/console{ + team = 2 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Hp" = ( +/obj/machinery/abductor/pad{ + team = 2 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Hq" = ( +/obj/machinery/abductor/experiment{ + team = 3 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Hr" = ( +/obj/machinery/abductor/console{ + team = 3 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Hs" = ( +/obj/machinery/abductor/pad{ + team = 3 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Ht" = ( +/obj/machinery/computer/camera_advanced/abductor{ + team = 2 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Hu" = ( +/obj/machinery/computer/camera_advanced/abductor{ + team = 3 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Hv" = ( +/obj/structure/table, +/obj/structure/bedsheetbin, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"Hw" = ( +/obj/structure/table, +/obj/item/weapon/hand_labeler, +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"Hx" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/donkpockets, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"Hy" = ( +/obj/effect/landmark/abductor/scientist{ + team = 2 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"Hz" = ( +/obj/effect/landmark/abductor/agent{ + team = 2 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"HA" = ( +/obj/effect/landmark/abductor/scientist{ + team = 3 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"HB" = ( +/obj/effect/landmark/abductor/agent{ + team = 3 + }, +/turf/open/floor/plating/abductor, +/area/abductor_ship) +"HC" = ( +/obj/machinery/door/airlock/titanium{ + name = "Cockpit"; + req_access_txt = "109" + }, +/turf/open/floor/mineral/titanium/yellow, +/area/centcom/evac) +"HD" = ( +/obj/structure/table, +/obj/item/device/radio/off, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"HE" = ( +/obj/structure/chair{ + dir = 4; + name = "Prosecution" + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"HF" = ( +/obj/structure/filingcabinet, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"HG" = ( +/obj/structure/chair, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"HH" = ( +/obj/structure/table, +/obj/item/weapon/storage/lockbox, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"HI" = ( +/obj/structure/table, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"HJ" = ( +/obj/machinery/computer/shuttle, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"HK" = ( +/obj/structure/table, +/obj/item/weapon/clipboard, +/obj/item/weapon/pen, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"HL" = ( +/obj/structure/table, +/obj/item/weapon/paper_bin, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"HM" = ( +/turf/closed/indestructible/riveted, +/area/awaymission/errorroom) +"HN" = ( +/turf/closed/mineral/ash_rock, +/area/awaymission/errorroom) +"HO" = ( +/obj/structure/speaking_tile, +/turf/closed/mineral/ash_rock, +/area/awaymission/errorroom) +"HP" = ( +/obj/item/rupee, +/turf/open/floor/plating/ashplanet/wateryrock{ + initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; + planetary_atmos = 0 + }, +/area/awaymission/errorroom) +"HQ" = ( +/turf/open/floor/plating/ashplanet/wateryrock{ + initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; + planetary_atmos = 0 + }, +/area/awaymission/errorroom) +"HR" = ( +/obj/effect/landmark/error, +/turf/open/floor/plating/ashplanet/wateryrock{ + initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; + planetary_atmos = 0 + }, +/area/awaymission/errorroom) +"HS" = ( +/obj/structure/signpost/salvation{ + icon = 'icons/obj/structures.dmi'; + icon_state = "ladder10"; + invisibility = 100 + }, +/turf/open/floor/plating/ashplanet/wateryrock{ + initial_gas_mix = "o2=22;n2=82;TEMP=293.15"; + planetary_atmos = 0 + }, +/area/awaymission/errorroom) +"HT" = ( +/obj/structure/lattice, +/turf/open/space, +/area/space) +"HU" = ( +/obj/machinery/door/airlock/external, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"HV" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/centcom/evac) +"HW" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"HX" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"HY" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"HZ" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"Ia" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"Ib" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"Ic" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"Id" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"Ie" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"If" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"Ig" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"Ih" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"Ii" = ( +/turf/open/floor/plasteel, +/obj/effect/turf_decal/delivery, +/area/centcom/evac) +"Ij" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"Ik" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"Il" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"Im" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/tdome/arena_source) +"In" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Io" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Ip" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Iq" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Ir" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Is" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"It" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Iu" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/tdome/arena_source) +"Iv" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"Iw" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/tdome/arena_source) +"Ix" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"Iy" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/tdome/arena_source) +"Iz" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IA" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IB" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IC" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"ID" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IE" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IF" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IG" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/tdome/arena_source) +"IH" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"II" = ( +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/tdome/arena_source) +"IJ" = ( +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/tdome/arena_source) +"IK" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"IL" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/tdome/arena_source) +"IM" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IN" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IO" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IP" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IQ" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/tdome/arena_source) +"IR" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"IS" = ( +/turf/open/floor/plasteel/loadingarea{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/tdome/arena_source) +"IT" = ( +/turf/open/floor/plasteel/loadingarea{ + dir = 4 + }, +/area/tdome/arena_source) +"IU" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"IV" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/tdome/arena_source) +"IW" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IX" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"IY" = ( +/obj/machinery/camera{ + pixel_x = 10; + network = list("thunder"); + c_tag = "Arena" + }, +/turf/open/floor/circuit/green, +/area/tdome/arena_source) +"IZ" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Ja" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jb" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/tdome/arena_source) +"Jc" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"Jd" = ( +/turf/open/floor/plasteel/loadingarea{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 8 + }, +/area/tdome/arena_source) +"Je" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/tdome/arena_source) +"Jf" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"Jg" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/tdome/arena_source) +"Jh" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Ji" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jj" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jk" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jl" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jm" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jn" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jo" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/tdome/arena_source) +"Jp" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"Jq" = ( +/turf/open/floor/plasteel/green/corner, +/area/tdome/arena_source) +"Jr" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"Js" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/tdome/arena_source) +"Jt" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Ju" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jv" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jw" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jx" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jy" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"Jz" = ( +/turf/open/floor/plasteel/neutral, +/area/tdome/arena_source) +"JA" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 8 + }, +/area/tdome/arena_source) +"JB" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"JC" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"JD" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/tdome/arena_source) +"JE" = ( +/obj/machinery/light, +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"JF" = ( +/obj/machinery/light, +/turf/open/floor/plating, +/area/syndicate_mothership) +"JG" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plating, +/area/syndicate_mothership/control) +"JH" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"JI" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"JJ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"JK" = ( +/obj/machinery/light/small, +/turf/open/floor/plating, +/area/syndicate_mothership) +"JL" = ( +/obj/machinery/light, +/turf/open/floor/wood, +/area/syndicate_mothership/control) +"JM" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/bar{ + dir = 2 + }, +/area/syndicate_mothership/control) +"JN" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plating/airless, +/area/syndicate_mothership/control) +"JO" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating, +/area/centcom/evac) +"JP" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plating, +/area/centcom/evac) +"JQ" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"JR" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"JS" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/centcom/evac) +"JT" = ( +/obj/structure/bed, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"JU" = ( +/obj/structure/table, +/obj/item/weapon/storage/box/donkpockets, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"JV" = ( +/obj/structure/table, +/obj/item/device/radio/off, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/centcom/evac) +"JW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"JX" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"JY" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/brown{ + tag = "icon-brown (NORTH)"; + icon_state = "brown"; + dir = 1 + }, +/area/centcom/supply) +"JZ" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/brown{ + dir = 4 + }, +/area/centcom/supply) +"Ka" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/brown{ + dir = 4 + }, +/area/centcom/supply) +"Kb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"Kc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel, +/area/centcom/control) +"Kd" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/brown, +/area/centcom/supply) +"Ke" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"Kf" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/brown{ + dir = 4 + }, +/area/centcom/supply) +"Kg" = ( +/obj/item/toy/figure/syndie, +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"Kh" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"Ki" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"Kj" = ( +/obj/structure/flora/grass/both, +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"Kk" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/brown{ + dir = 8 + }, +/area/centcom/control) +"Kl" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"Km" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/control) +"Kn" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/control) +"Ko" = ( +/obj/structure/flora/tree/pine, +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"Kp" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/grass, +/area/centcom/control) +"Kq" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/grass, +/area/centcom/evac) +"Kr" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/genericbush, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/grass, +/area/centcom/control) +"Ks" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plating/asteroid, +/area/centcom/evac) +"Kt" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fernybush, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel{ + name = "plating"; + icon_state = "asteroid5" + }, +/area/centcom/control) +"Ku" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/genericbush, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/grass, +/area/centcom/control) +"Kv" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"Kw" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"Kx" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"Ky" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"Kz" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"KA" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"KB" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"KC" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"KD" = ( +/obj/structure/chair, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"KE" = ( +/obj/structure/chair, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"KF" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"KG" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/obj/machinery/light, +/turf/open/floor/plating/asteroid, +/area/centcom/evac) +"KH" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"KI" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"KJ" = ( +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"KK" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"KL" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/green/corner{ + dir = 4 + }, +/area/centcom/ferry) +"KM" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"KN" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"KO" = ( +/obj/machinery/light, +/turf/open/floor/wood, +/area/wizard_station) +"KP" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/ferry) +"KQ" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"KR" = ( +/obj/structure/flora/grass/both, +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"KS" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plating/asteroid, +/area/centcom/control) +"KT" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/evac) +"KU" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/evac) +"KV" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/evac) +"KW" = ( +/obj/machinery/light, +/turf/open/floor/engine/cult, +/area/wizard_station) +"KX" = ( +/obj/machinery/light, +/turf/open/floor/engine/cult, +/area/wizard_station) +"KY" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/grass, +/area/centcom/evac) +"KZ" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/genericbush, +/obj/machinery/light, +/turf/open/floor/grass, +/area/centcom/evac) +"La" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"Lb" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/engine/cult, +/area/wizard_station) +"Lc" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/evac) +"Ld" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"Le" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/centcom/evac) +"Lf" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"Lg" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/carpet, +/area/wizard_station) +"Lh" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/wizard_station) +"Li" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/wizard_station) +"Lj" = ( +/obj/structure/closet/crate/bin, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Lk" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/neutral/side{ + dir = 1; + heat_capacity = 1e+006 + }, +/area/tdome/tdomeobserve) +"Ll" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/neutral/side{ + dir = 1; + heat_capacity = 1e+006 + }, +/area/tdome/tdomeobserve) +"Lm" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/red/side{ + dir = 4 + }, +/area/tdome/tdomeobserve) +"Ln" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/green/side{ + dir = 8 + }, +/area/tdome/tdomeobserve) +"Lo" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plating/asteroid, +/area/tdome/tdomeadmin) +"Lp" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/fernybush, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel{ + dir = 6; + icon_state = "asteroid8"; + name = "sand" + }, +/area/tdome/tdomeadmin) +"Lq" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plating/asteroid, +/area/tdome/tdomeadmin) +"Lr" = ( +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/fernybush, +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel{ + dir = 6; + icon_state = "asteroid8"; + name = "sand" + }, +/area/tdome/tdomeadmin) +"Ls" = ( +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/tdome/tdomeadmin) +"Lt" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + dir = 5 + }, +/area/tdome/tdomeadmin) +"Lu" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/obj/machinery/light, +/turf/open/floor/grass, +/area/tdome/tdomeadmin) +"Lv" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/pointybush, +/obj/machinery/light, +/turf/open/floor/grass, +/area/tdome/tdomeadmin) +"Lw" = ( +/obj/structure/flora/bush, +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"Lx" = ( +/obj/structure/flora/grass/brown, +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"Ly" = ( +/obj/structure/flora/grass/brown, +/obj/effect/light_emitter{ + set_cap = 1; + set_luminosity = 4 + }, +/turf/open/floor/plating/asteroid/snow/atmosphere, +/area/syndicate_mothership) +"Lz" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plating/beach/sand, +/area/centcom/holding) +"LA" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"LB" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/cafeteria, +/area/centcom/holding) +"LC" = ( +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/grass, +/area/centcom/evac) +"LD" = ( +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/grass, +/area/centcom/evac) +"LE" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/grass, +/area/centcom/evac) +"LF" = ( +/obj/structure/fluff/arc, +/turf/open/floor/grass, +/area/centcom/evac) +"LG" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/grass, +/area/centcom/evac) +"LH" = ( +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/window/reinforced, +/turf/open/floor/grass, +/area/centcom/evac) +"LI" = ( +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/grass, +/area/centcom/evac) +"LJ" = ( +/obj/structure/chair/comfy/black{ + dir = 1 + }, +/obj/machinery/light, +/obj/machinery/status_display{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/control) +"LK" = ( +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/lavendergrass, +/turf/open/floor/grass, +/area/centcom/evac) +"LL" = ( +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/grass, +/area/centcom/evac) +"LM" = ( +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/lavendergrass, +/turf/open/floor/grass, +/area/centcom/evac) +"LN" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/ywflowers, +/turf/open/floor/grass, +/area/centcom/evac) +"LO" = ( +/obj/structure/fluff/arc, +/turf/open/floor/grass, +/area/centcom/control) +"LP" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/brflowers, +/turf/open/floor/grass, +/area/centcom/evac) +"LQ" = ( +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/window/reinforced, +/turf/open/floor/grass, +/area/centcom/evac) +"LR" = ( +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/window/reinforced, +/turf/open/floor/grass, +/area/centcom/evac) +"LS" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/evac) +"LT" = ( +/obj/effect/turf_decal/stripes/line, +/obj/structure/closet/crate/bin, +/turf/open/floor/plasteel, +/area/centcom/evac) +"LU" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/evac) +"LV" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/genericbush, +/obj/machinery/light, +/turf/open/floor/grass, +/area/centcom/evac) +"LW" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/handcuffs, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"LX" = ( +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/fullgrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/palebush, +/turf/open/floor/plating/asteroid, +/area/centcom/evac) +"LY" = ( +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"LZ" = ( +/obj/machinery/ai_status_display, +/turf/closed/indestructible/riveted, +/area/centcom/evac) +"Ma" = ( +/obj/structure/fans/tiny, +/turf/open/floor/plasteel/vault{ + dir = 8 + }, +/area/centcom/evac) +"Mb" = ( +/obj/machinery/door/airlock/centcom{ + name = "Centcom Security"; + opacity = 1; + req_access_txt = "101" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/centcom/evac) +"Mc" = ( +/turf/closed/indestructible/fakedoor{ + name = "Centcom" + }, +/area/centcom/evac) + +(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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gz +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HM +HM +HM +HM +HM +HM +HM +HM +HM +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HN +HN +HN +HN +HN +HN +HN +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HP +HP +HP +HQ +HP +HP +HP +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HP +HP +HP +HQ +HP +HP +HP +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HP +HP +HP +HQ +HP +HP +HP +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HQ +HQ +HQ +HQ +HQ +HQ +HQ +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gd +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HP +HP +HP +HQ +HQ +HQ +HQ +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HO +HP +HP +HP +HQ +HQ +HR +HS +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HP +HP +HP +HQ +HQ +HQ +HQ +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HQ +HQ +HQ +HQ +HQ +HQ +HQ +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HP +HP +HP +HQ +HP +HP +HP +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HP +HP +HP +HQ +HP +HP +HP +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HP +HP +HP +HQ +HP +HP +HP +HN +HM +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 +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +gc +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HN +HN +HN +HN +HN +HN +HN +HN +HN +HM +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HM +HM +HM +HM +HM +HM +HM +HM +HM +HM +HM +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +wf +wy +wX +pg +pg +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +pg +pg +vG +wg +wz +wg +xu +pg +wf +wX +pg +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +sx +tb +vo +px +px +px +px +px +xS +px +px +pg +pg +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +sy +uq +tb +pg +px +px +px +px +px +pg +px +sz +px +pg +pg +pg +pg +pg +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +tb +tb +tb +tb +pg +vG +wg +px +wg +xu +pg +px +px +px +pg +zg +zu +zz +pg +pg +rX +pg +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +sx +tc +tb +tb +KO +pg +pg +wf +wy +wX +pg +pg +La +sz +px +yX +zh +zh +zA +zU +px +px +pg +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +pg +pg +sy +tb +tb +tb +uR +pg +vH +px +px +px +xv +pg +px +px +px +pg +zi +zv +zB +pg +pg +zU +pg +pg +pg +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +pg +pg +Kv +rb +pg +pg +pg +tO +pg +pg +pg +vI +px +px +px +KW +pg +px +sz +px +pg +pg +pg +pg +pg +px +px +Bj +BG +pg +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +ph +px +px +px +rX +px +px +px +KM +uS +pg +px +px +px +px +px +rX +px +px +px +pg +zj +Lg +zC +pg +An +px +px +BG +BO +Cm +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +pi +py +px +px +rY +px +px +px +px +px +vp +px +px +wA +wY +px +xS +px +sz +px +yY +sz +zw +sz +rX +Ao +px +px +BG +BO +Cm +la +la +CU +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +pj +px +px +px +rX +px +px +px +KN +uT +pg +px +px +px +px +px +rX +px +px +px +pg +zk +Lh +zD +pg +An +px +px +BG +BO +Cm +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +pg +pg +Kw +rc +pg +pg +pg +tP +pg +pg +pg +vJ +px +px +px +KW +pg +px +sz +px +pg +pg +pg +pg +pg +Ap +px +Bj +BG +pg +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +pg +pg +sz +td +sz +ur +uU +pg +vK +wh +wB +px +px +pg +px +px +px +pg +zl +zx +zE +pg +pg +rX +pg +pg +pg +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +sA +te +tQ +sz +uV +pg +pg +wf +wy +wX +pg +pg +La +sz +px +yZ +zm +zm +zF +pg +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +tf +sz +td +sz +ph +vL +vO +wC +wZ +vO +ph +px +px +px +pg +zn +Li +zG +pg +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +sA +us +tQ +pi +vM +wi +vM +xa +vM +pi +px +sz +px +pg +pg +pg +pg +pg +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +tf +sz +pj +vN +wj +vO +wi +vO +pj +px +px +pg +pg +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +pg +pg +vO +wi +vM +xb +xw +pg +wf +wX +pg +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +pg +pg +pg +pg +pg +pg +pg +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(40,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +la +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(47,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(48,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +tR +hq +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +Kl +Kl +Kl +Kl +Kl +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +lF +hq +hq +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +pk +pk +pk +pk +pk +pk +Kl +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +pk +pk +pk +pk +pk +pk +pk +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +Kl +Kl +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +mz +hq +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +lF +hq +hq +hq +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +pk +pk +pk +pk +pk +pk +pk +rd +mg +mA +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +Kl +Kl +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +lG +hq +lF +hq +Kl +pk +pk +pk +pk +pk +pk +Kl +re +kI +sB +tg +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +ln +hq +hq +hq +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +re +kI +sC +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +lF +hq +hq +hq +hq +mz +hq +Kl +re +kI +re +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(64,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +Kl +Kl +Kl +Kl +hq +lG +ln +hq +hq +hq +hq +hq +hq +hq +hq +Kl +re +kI +re +Kl +Kl +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(65,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +kl +kl +kl +kl +Kl +hq +hq +hq +lG +hq +hq +hq +hq +hq +hq +hq +Kl +re +kI +re +Kl +hq +Lw +Kl +pk +pk +pk +pk +pk +pk +pk +pk +pk +pk +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(66,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +Kl +hq +hq +hq +hq +hq +ln +hq +Kl +Kl +Kl +Lx +Kl +rf +kI +rf +Kl +Lx +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(67,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +Kl +hq +hq +lG +hq +hq +hq +Kl +Kl +kl +kl +kl +kl +kl +rZ +kl +kl +kl +kl +Kl +Kl +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(68,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +Kl +lG +hq +hq +lF +hq +hq +Lw +kl +kl +pl +pz +JI +oJ +oJ +sD +th +JL +kl +kl +Kl +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(69,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +jX +km +ku +JE +kl +Kl +hq +hq +hq +hq +hq +hq +Kl +kl +oH +oJ +oJ +pA +pA +oJ +pA +ti +tT +qq +kl +Kl +lF +mz +hq +lG +hq +hq +mh +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(70,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +Kl +ol +oI +oJ +pA +qn +rg +oJ +pA +tj +tS +ut +kl +Kl +hq +lG +hq +hq +hq +mh +yc +mh +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(71,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +kl +kl +kl +kl +kl +kl +kl +kl +kl +oJ +oJ +pA +qo +rh +oJ +pA +ti +tS +uu +kl +Lw +hq +lF +lG +mz +hq +hq +mh +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(72,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kI +kI +kI +kI +JG +kI +kI +kI +kI +om +JH +oJ +pB +pA +pA +oJ +oJ +tk +tU +uv +kl +Kl +Kj +Lw +Kl +Kl +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(73,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +kl +lH +mg +mA +kl +kl +kl +kl +kl +kl +pm +oJ +oJ +oJ +oJ +oJ +oJ +oJ +kl +kl +kl +ol +kl +kl +hm +hm +hm +hm +hm +hm +hm +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(74,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +Kl +lI +Kg +Kj +Kl +Kj +Kj +Kl +Kl +kl +pn +oJ +qp +qp +qp +qp +oJ +oJ +uw +uW +uW +uW +wk +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(75,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +JE +kl +Kl +lG +hq +hq +lG +hq +hq +lG +Kj +kl +po +oJ +qq +ri +ri +sE +oJ +JM +kl +uW +uW +uW +wk +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gf +Gv +GF +GR +GX +aa +aa +aa +Gf +Gv +GF +GR +GX +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +Kl +hq +hq +lG +hq +lG +hq +hq +Ko +kl +kl +pC +kl +kl +kl +sC +sB +sC +kl +uX +uW +uW +wk +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Ga +Gg +Gw +GG +GS +GY +He +aa +Ga +Gg +Ht +GG +GS +GY +He +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +Kl +hq +lG +hq +ln +hq +hq +lG +Kl +kl +pp +pD +pD +kl +kl +re +kI +re +kl +uY +uW +uW +wk +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gb +Gh +Gx +GH +Gx +GZ +Hf +aa +Gb +Hn +Gx +Hy +Gx +GZ +Hf +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +km +ku +kI +kl +Kj +hq +hq +hq +lG +hq +hq +lG +Kj +kl +pq +pD +qr +kl +kl +re +kI +re +kl +uZ +uW +uW +wk +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gc +Gi +Gx +GI +Gx +Ha +Hg +aa +Gc +Ho +Gx +GI +Gx +Ha +Hg +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +kl +kl +kl +kl +Kl +hq +lG +ln +hq +hq +ln +hq +Ko +ol +pr +pE +kl +kl +kl +re +kI +re +kl +va +uW +vP +wl +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gd +Gj +Gx +GJ +Gx +Hb +Hh +aa +Gd +Hp +Gx +Hz +Gx +Hb +Hh +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(80,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +Kl +Kl +Kl +Kl +Kl +hq +hq +hq +ln +lG +hq +ln +Kl +kl +kl +kl +kl +kl +kl +re +kI +re +kl +kl +kl +kl +kl +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Ge +Gk +Gy +GK +Gy +Hc +Hi +aa +Ge +Gk +Gy +GK +Gy +Hc +Hi +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(81,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +lG +hq +hq +hq +lG +Kj +hm +aa +kl +qs +qs +qs +re +kI +re +qs +qs +qs +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gl +Gz +GL +GT +Hd +aa +aa +aa +Gl +Gz +GL +GT +Hd +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(82,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +lG +hq +ln +hq +hm +aa +kl +qs +rj +sa +re +sB +re +sa +vb +qs +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(83,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +ln +hq +hq +ln +hq +lG +hm +aa +kl +qs +rk +rl +rm +tl +rm +ux +vc +qs +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gf +Gv +GF +GR +GX +aa +aa +aa +Gf +Gv +GF +GR +GX +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +lG +hq +hq +hq +hm +aa +kl +qt +rl +rm +sb +sc +sb +rm +ux +vq +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Ga +Gg +GA +GG +GS +GY +He +aa +Ga +Gg +Hu +GG +GS +GY +He +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +kl +JJ +rm +sb +sc +sd +sc +sb +rm +JN +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gb +Gm +Gx +GM +Gx +GZ +Hf +aa +Gb +Hq +Gx +HA +Gx +GZ +Hf +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +kl +qt +rn +sc +sF +tm +tV +sc +vd +vq +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gc +Gn +Gx +GI +Gx +Ha +Hg +aa +Gc +Hr +Gx +GI +Gx +Ha +Hg +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +kl +qt +rm +sd +sc +sb +sc +sd +rm +vq +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gd +Go +Gx +GN +Gx +Hb +Hh +aa +Gd +Hs +Gx +HB +Gx +Hb +Hh +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +kl +qt +ro +rm +sd +sc +sd +rm +uy +vq +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Ge +Gk +Gy +GK +Gy +Hc +Hi +aa +Ge +Gk +Gy +GK +Gy +Hc +Hi +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +kl +qs +rp +ro +rm +tl +rm +uy +ve +qs +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Gl +Gz +GL +GT +Hd +aa +aa +aa +Gl +Gz +GL +GT +Hd +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +kl +qs +qs +se +se +se +se +se +qs +qs +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +kl +kl +kl +kl +kl +kl +kl +kl +kl +kl +kl +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hq +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +hm +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FN +FN +FN +FN +FN +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FI +FO +FR +FR +FN +FN +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FJ +FO +JO +FR +FR +FN +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +zV +zV +zV +zV +zV +zV +zV +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FK +FO +FS +FN +FP +FN +FN +FN +FN +FN +FN +FN +FN +FN +FN +FN +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Aq +Aq +Bk +BH +BP +Cn +Cx +zV +zV +zV +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FN +FN +FT +JQ +FZ +Gp +GB +GO +GU +FN +Hj +Hj +JT +Hj +Hj +FN +FN +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Ar +Ar +Ar +Ay +Ay +Ay +Ay +CL +CV +CV +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FN +FU +FZ +FV +Gq +GC +GP +GP +FN +FV +FV +FV +FV +FV +FN +FN +FN +FN +FN +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +As +Ar +Bl +AR +Ay +Ay +Ay +CM +CV +CV +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FL +FP +FV +FV +FV +Gr +GD +GP +GP +FN +Hj +Hj +FV +Hj +Hj +FN +HD +JU +HH +Hk +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +At +Ar +Aq +AR +Ay +Ay +Ay +CM +CV +CV +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FN +FW +FZ +FV +Gs +GE +Gs +GV +FN +FN +FN +Hl +FN +FN +FN +Gu +FZ +HI +Hk +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +At +Ar +Bm +AR +Ay +Ay +Ay +CN +CV +CV +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FQ +FX +FZ +FV +FV +FV +FV +FV +JS +FV +FV +FV +FV +FV +HC +FV +HG +HJ +Hk +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Ar +Ar +Bn +AR +Ay +Ay +LA +zV +zV +zV +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FN +FY +FZ +FV +Gt +FZ +Gu +Gu +FZ +Gu +Gu +FV +FZ +Hv +FN +HE +FZ +HK +Hk +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Au +AQ +Bo +AR +Ay +Ay +Ay +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FM +FP +FV +FV +FV +FZ +FZ +GQ +GQ +FZ +GQ +GQ +FV +FZ +Hw +FN +HF +JV +HL +Hk +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Av +Ay +Ay +Ay +Ay +Ay +Ay +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FN +FU +FZ +FV +FV +FV +FV +FV +FV +FV +FV +FV +FZ +Hx +FN +FN +FN +FN +FN +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Aw +Ay +Ay +Ay +Ay +Ay +AR +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FN +FN +FT +JR +FZ +Gu +Gu +Gu +FV +Gu +Gu +Gu +FV +FZ +FU +FN +FN +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Ax +Ay +Ay +Ay +Ay +AR +Cy +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FI +FO +FS +FN +FP +FN +FN +FN +FP +FN +Hk +FN +FP +FN +FN +FN +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Ay +AR +Ay +Ay +Ay +Ay +AR +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FJ +FO +JP +FR +FR +FN +aa +aa +GW +aa +aa +aa +Hm +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Az +Az +Az +Az +BQ +BQ +LB +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FK +FO +FR +FR +FN +FN +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +AA +Az +Az +Az +Az +Co +Cz +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +FN +FN +FN +FN +FN +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Az +Az +Bp +Az +Az +Co +Cz +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Lz +AS +Az +BI +Az +Co +Cz +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +Az +Az +Bq +Az +Az +Cp +Cz +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +AB +Az +AA +Az +Az +Co +Cz +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zV +zV +zV +zV +zV +zV +zV +zV +zV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +hM +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +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 +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(129,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(130,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(131,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(132,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(133,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +nf +nf +mU +mV +nf +nf +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(134,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +nf +pF +qu +rq +sf +nf +aa +aa +uz +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(135,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +pG +qv +rr +sg +lJ +aa +nf +uA +nf +aa +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(136,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +nf +pH +qw +rs +sh +lJ +tn +nf +uB +nf +vr +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(137,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +nf +pI +qx +rt +si +mU +to +nf +uA +nf +to +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(138,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mV +pJ +qy +ru +sj +mV +tp +tW +uC +tW +vs +mV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(139,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +nf +pK +qy +ru +qA +sG +tq +tX +uD +tX +vt +nf +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(140,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +pL +qz +rv +sk +lJ +tr +tY +uE +tY +vu +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(141,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +lJ +lJ +rw +lJ +lJ +lJ +tZ +uF +tZ +lJ +lJ +nf +nf +mV +nf +nf +lJ +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(142,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +nf +nf +lJ +nf +nf +lJ +pM +qA +rx +qA +sH +lJ +ua +ua +ua +lJ +vQ +wm +nD +vU +xx +xT +yd +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(143,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +ng +nD +nU +on +oK +lJ +pN +qA +ry +qA +sI +lJ +tZ +uF +tZ +lJ +vR +od +od +od +od +od +ye +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(144,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +nh +nE +nV +nE +oL +lJ +lJ +lJ +lJ +lJ +pt +lJ +ub +uG +ue +pt +vS +od +wD +xc +xy +od +yf +pt +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(145,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +ni +nF +nW +nE +oM +mV +pO +qB +rz +sl +sJ +lJ +qw +uH +rt +mV +vT +od +wE +xd +xz +od +yg +mU +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(146,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +nj +nG +nX +oo +nI +ps +oQ +qC +rA +sm +sK +lJ +qw +tX +rt +pU +vU +wn +ry +wn +ry +wn +yh +mV +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(147,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +mi +mB +lJ +nk +nH +nY +op +oN +lJ +pP +op +nE +nE +sL +mU +uc +tX +uf +vv +qA +ry +wF +xe +xA +ry +yi +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(148,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lK +mj +mC +mT +nl +nI +nI +oq +oO +mV +pQ +qD +rB +sn +sM +ts +ud +tX +KP +mU +qA +wo +wG +xf +xB +xU +yj +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zH +zH +zH +zH +DJ +DJ +DJ +DJ +DJ +DJ +DJ +DJ +DJ +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(149,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gf +gl +gl +gl +gl +gl +gl +gl +gl +gl +gA +hg +gp +gp +gp +gp +gp +ge +gp +gp +gp +gp +gp +ge +gp +gp +gp +gp +gp +hg +gf +gl +gl +gl +gl +gl +gl +gl +gl +gl +gA +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +mk +mD +lJ +nm +nJ +nZ +nL +oP +lK +pR +qE +rC +nE +sN +pU +ue +tX +vf +vv +qA +wp +wH +xg +xC +xV +yk +lJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zH +zY +zZ +zN +Lo +Ef +Er +Ee +Ef +Lo +Ef +Er +Ee +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(150,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gm +gm +gm +gm +gm +gm +gm +gm +gm +gB +ge +gp +gq +gq +gq +gp +go +gp +gp +gp +gp +gp +go +gp +gq +gq +gq +gp +ge +gg +gm +gm +gm +gm +gm +gm +gm +gm +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +lJ +lJ +mU +nn +nK +oa +or +oQ +ps +pS +qF +rD +so +sO +lJ +qy +tX +ru +pU +vV +wo +wI +xh +xD +xU +yl +lJ +aa +aa +aa +aa +aa +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +zN +zN +zH +DJ +DJ +Ef +Ef +DJ +DJ +DJ +Ef +Ef +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(151,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gm +gy +gm +gy +gm +gy +gm +gy +gm +gB +ge +gp +gq +gp +gp +gp +go +gp +gp +hH +gp +gp +go +gp +gp +gp +gq +gp +ge +gg +gm +gy +gm +gy +gm +gy +gm +gy +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +mV +no +nL +ob +os +oR +lJ +pT +qG +rE +nE +sP +lJ +qy +tX +ru +lJ +vU +ry +wJ +xi +wJ +ry +ym +lJ +aa +aa +aa +aa +aa +zH +AC +AT +Br +zH +BR +Cq +CA +CO +CW +zH +Dl +Dt +BK +DL +Eg +Es +EB +Eg +DL +Eg +EO +EO +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(152,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gm +gy +gm +gy +gm +gy +gm +gy +gm +gB +ge +gp +gq +gp +gp +gp +go +gp +hH +hI +hH +gp +go +gp +gp +gp +gq +gp +ge +gg +gm +gy +gm +gy +gm +gy +gm +gy +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +jD +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +lJ +lK +nM +lJ +lJ +lJ +lJ +pU +qH +lJ +mV +lJ +lJ +qy +tX +ru +pt +on +wn +ry +wn +ry +wn +yn +lJ +aa +aa +aa +aa +aa +zH +AD +AU +Bs +BJ +Bs +Bs +Bs +Bs +Bs +Dg +AY +Bb +BK +DL +Eg +Et +EC +Eg +DL +Eg +EO +EO +DJ +Fj +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(153,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gm +gy +gm +gy +gm +gy +gm +gy +gm +gB +ge +gp +gq +gp +gp +gp +go +gp +gp +hH +gp +gp +go +gp +gp +gp +gq +gp +ge +gg +gm +gy +gm +gy +gm +gy +gm +gy +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iZ +jl +js +iZ +js +jJ +iZ +aa +aa +aa +aa +iZ +iZ +lL +jF +iK +lJ +np +nL +oc +ot +oS +mV +pM +qI +rF +lJ +sQ +nf +qy +tX +ru +lJ +mU +pU +wK +wK +wK +pU +mV +lJ +aa +aa +aa +aa +aa +zH +AE +AV +Bt +zH +BS +BS +BS +BS +BS +zH +AX +Bu +zH +DJ +DJ +DJ +DJ +DJ +DJ +DJ +EO +EO +EO +EO +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(154,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gm +gm +gm +gm +gm +gm +gm +gm +gm +gB +ge +gp +gq +gq +gq +gp +go +gp +gp +gp +gp +gp +go +gp +gq +gq +gq +gp +ge +gg +gm +gm +gm +gm +gm +gm +gm +gm +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +jd +jm +jt +iZ +jt +jK +jd +aa +aa +aa +aa +iZ +lo +lM +ml +mE +lJ +nq +nN +od +od +oT +pt +pV +qJ +rG +mV +sR +nf +qy +tX +ru +lJ +vW +wq +qA +qA +qA +wq +yo +lJ +aa +aa +aa +aa +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +AY +Bb +zH +DM +DM +DM +DM +DM +DM +DJ +EO +Ls +EO +EO +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(155,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gh +gn +gn +gn +gn +gn +gn +gn +gn +gn +gC +hg +gp +gp +gp +gp +gp +ge +gp +gp +gp +gp +gp +ge +gp +gp +gp +gp +gp +hg +gh +gn +gn +gn +gn +gn +gn +gn +gn +gn +gC +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iK +iQ +iZ +iZ +jn +js +iZ +js +jL +iZ +iZ +iZ +iZ +iQ +iK +lp +lN +mm +mF +lJ +nr +nO +oe +ou +oU +mU +pW +qK +rH +lJ +sQ +nf +qy +uD +ru +lJ +vX +qA +wL +wL +wL +qA +yp +lJ +aa +aa +aa +aa +zH +zW +zH +AW +Bd +BK +Aj +Cr +AF +Cr +AF +Lm +Dm +Bu +zH +DN +DN +DN +DN +DN +DN +DJ +DJ +DJ +Fb +Fb +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(156,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +go +go +go +ge +ge +ge +go +go +go +ge +ge +ge +hg +hg +hg +ge +ge +ge +ge +ge +ge +ge +ge +ge +hg +hg +hg +ge +ge +ge +go +go +go +ge +ge +ge +go +go +go +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iK +iR +iR +je +jo +iS +jz +jE +jM +jP +jP +jP +iR +iR +iZ +lq +iT +mn +mG +lJ +mU +mV +lJ +lJ +lJ +lJ +lJ +qL +pU +lJ +nf +pt +KL +tX +ru +lJ +vY +qA +wM +xj +xE +qA +yq +lJ +aa +aa +aa +aa +zI +zX +zI +AX +Bu +BK +BT +AM +AG +AM +AG +AM +AG +Bc +DF +DO +Eh +Eh +Eh +Eh +EG +EM +EP +DJ +EO +EO +DJ +DJ +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(157,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gf +gl +gl +gl +gA +ge +gf +gl +gl +gl +gA +ge +gf +gl +gl +gl +gA +ge +gp +gp +gp +gp +gp +ge +gf +gl +gl +gl +gA +ge +gf +gl +gl +gl +gA +ge +gf +gl +gl +gl +gA +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iK +iS +iS +jf +jp +ju +ju +ju +jN +jQ +jY +jY +jE +jE +iZ +lr +lO +kJ +mH +lL +ns +nP +of +ov +oV +mV +pX +qM +rI +lJ +sS +nf +qy +tX +ru +lJ +vZ +qA +wN +xk +xF +qA +yr +lJ +aa +aa +aa +aa +zH +zN +zH +AY +Lk +zH +zH +Ba +zH +zH +Ac +BL +Ac +zH +zH +DP +Ei +Ej +Ej +Ei +EH +EM +EP +DJ +EO +EO +Ef +FD +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(158,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gp +gp +gp +gB +go +gg +gp +gp +gp +gB +go +gg +gp +gq +gp +gB +ge +gp +gm +gm +gm +gp +ge +gg +gm +gq +gm +gB +go +gg +gm +gm +gm +gB +go +gg +gm +gm +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iK +JY +ja +ja +ja +ja +ja +ja +ja +ja +ja +ja +ja +Kd +iQ +ls +iT +kJ +mI +jF +lt +lv +og +mm +oV +pt +pY +qN +rJ +lJ +sT +nf +qy +uI +ru +lJ +wa +qA +wL +wL +wL +qA +ys +mU +aa +aa +aa +aa +zH +zY +zN +AX +Bu +zH +BU +Cb +CB +CP +CX +Dh +Dn +Du +zH +DP +Ej +Eu +Ej +Ej +EH +EM +EP +DJ +EO +EO +Ef +Lu +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(159,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gq +gq +gq +gB +go +gg +gq +gq +gq +gB +go +gg +gq +gq +gq +gB +ge +gp +ge +gq +ge +gp +ge +gg +gq +gq +gq +gB +go +gg +gq +gq +gq +gB +go +gg +gq +gq +gq +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iL +iT +ja +jg +iR +ja +iR +ja +iR +ja +iR +kn +ja +kJ +lb +lt +iT +kJ +lt +lb +lt +iT +ja +kJ +lt +mU +pZ +qA +rK +lJ +sS +nf +uf +uG +vg +lJ +wb +wr +wO +xl +xG +wr +yt +lJ +aa +aa +aa +aa +zH +zZ +zN +AY +Bb +Ac +BV +Bs +Cs +Bs +Cs +Bs +Cs +Dv +zH +DP +Ei +Ej +Ej +Ei +EH +EM +EP +DJ +EO +EO +Ef +FD +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(160,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gp +gq +gp +gB +go +gg +gp +gq +gp +gB +go +gg +gp +gq +gp +gB +ge +gp +gm +gm +gm +gp +ge +gg +gm +gq +gm +gB +go +gg +gm +gq +gm +gB +go +gg +gm +gq +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iL +iT +ja +jg +jq +ja +jq +ja +jq +ja +jq +kn +ja +kJ +iK +lu +lP +kL +mJ +iK +nt +iT +ja +kJ +oW +lJ +lJ +lJ +lJ +lJ +lJ +lJ +tZ +uF +tZ +lJ +mU +pU +lJ +lJ +lJ +pU +mV +lJ +yN +it +it +it +zH +zN +zH +AX +Bu +zH +BW +Cs +Bs +CQ +Bs +Cs +Bs +Dw +zH +DQ +Ek +Ek +Ek +Ek +EI +EM +EP +DJ +Fc +Fc +DJ +DJ +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(161,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gh +gn +gn +gn +gC +ge +gh +gn +gn +gn +gC +ge +gh +gn +gn +gn +gC +ge +gp +gp +gp +gp +gp +ge +gh +gn +gn +gn +gC +ge +gh +gn +gn +gn +gC +ge +gh +gn +gn +gn +gC +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iK +iT +ja +jg +jq +ja +jq +ja +jq +ja +jq +kn +ja +kJ +jF +iK +iK +lb +iK +iQ +nu +lO +ja +mn +oX +iQ +iK +iK +pw +lW +it +tt +tt +tt +tt +tt +it +pw +lW +it +it +it +pf +iz +qP +iz +lf +iz +zJ +Aa +AF +AZ +Bv +Ac +BX +Bs +CC +BN +CY +Di +Do +zH +zH +DR +DR +DR +DR +DR +DR +DJ +DJ +DJ +DJ +Fk +DJ +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(162,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +go +go +go +ge +ge +ge +go +go +go +ge +ge +ge +ge +ge +ge +ge +ge +ge +gp +gp +gp +ge +ge +ge +ge +ge +ge +ge +ge +ge +go +go +go +ge +ge +ge +go +go +go +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iL +iT +ja +jg +jq +ja +jq +ja +jq +ja +jq +kn +ja +kK +iK +lv +jY +jY +mm +iK +nv +iT +ja +kJ +nP +iK +qa +iK +iz +iz +it +ir +jc +lx +jc +ir +it +iz +iz +it +lW +it +iz +ir +HU +iu +iz +it +zK +Ab +AG +AM +Bw +zH +BY +Cs +CD +BM +CZ +Dj +Dj +Dx +DG +DS +El +Ev +Ev +EE +DS +DG +EQ +EU +Fd +Fc +Fq +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(163,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gf +gl +gl +gl +gA +ge +gf +gl +gl +gl +gA +ge +gp +gp +gp +gp +gp +ge +gp +gp +gp +gp +gp +ge +gp +gp +gp +gp +gp +ge +gf +gl +gl +gl +gA +ge +gf +gl +gl +gl +gA +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iL +iT +ja +ja +ja +ja +ja +ja +ja +ja +ja +ja +ja +kJ +lc +iT +ja +ja +kJ +lc +lt +nQ +jb +kL +oY +iK +iZ +iK +rL +rM +lX +tu +rM +uJ +vh +vw +lX +ws +wP +rR +iz +it +qf +yE +lA +za +zo +it +zH +Ac +zH +Ba +zH +zH +zH +zH +zH +zH +Da +Dj +Db +Dy +DH +DH +DH +DH +DH +DH +DH +DH +ER +EV +Fe +Fl +Fr +FF +DJ +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(164,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gp +gq +gp +gB +gG +gg +gp +gq +gp +gB +gp +gp +gm +ge +gm +gp +gp +gp +gq +hH +gq +gp +gp +gp +gm +ge +gm +gp +gp +gg +gm +gq +gm +gB +gG +gg +gm +gq +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iK +iU +jb +JZ +jr +jv +jv +jb +jO +jR +jO +JZ +jb +kL +iK +lw +JZ +jb +mK +iK +nw +nR +oh +lt +oZ +pu +qb +pu +rM +mq +lX +mq +mp +mq +mq +mq +lX +mq +ws +kT +qP +kT +lk +jB +jB +jB +zp +it +zL +Ad +zN +AG +Bx +zH +BZ +Ce +BZ +zH +Db +Dj +Db +Dy +DI +DT +DT +DT +DT +DT +DT +DI +ER +EV +Fe +Fl +Fs +Ef +FE +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(165,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gq +gq +gq +gB +gG +gg +gq +gq +gq +gB +gp +gp +gm +gq +gm +gp +gp +gp +hH +hJ +hH +gp +gp +gp +gm +gq +gm +gp +gp +gg +gq +gq +gq +gB +gG +gg +gq +gq +gq +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iK +iK +iQ +iK +iK +iK +iK +jF +iK +iK +iK +iK +iQ +iK +iK +iK +iK +mo +iK +iK +iQ +iZ +oi +ow +iZ +iK +iZ +iK +rN +rN +iz +iz +ug +iz +iz +iz +is +rN +rN +it +iz +it +yu +tz +yO +zb +mb +ir +zM +Ae +AH +Bb +By +zH +zN +zN +zN +zH +Dc +Dj +Dp +Dy +DH +DU +DU +DU +DU +DU +DU +DH +ER +EW +Fc +Fl +Ft +Ef +FD +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(166,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gp +gq +gp +gB +gG +gg +gp +gq +gp +gB +gp +gp +gm +ge +gm +gp +gp +gp +gq +hH +gq +gp +gp +gp +gm +ge +gm +gp +gp +gg +gm +gq +gm +gB +gG +gg +gm +gq +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +ld +iz +lQ +mp +mL +Kk +nx +mW +mp +mL +pa +it +Kt +it +rM +mq +iz +tv +iH +uK +vi +vx +iz +mq +vh +iz +pw +it +it +iz +yP +zc +iz +is +zN +Af +zN +Bb +AY +zH +Ca +Ct +CE +zH +Db +Dj +Db +Dy +DH +DV +DV +DV +DV +DV +DV +DH +ER +EV +Fe +Fl +Fu +DJ +Ef +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(167,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gh +gn +gn +gn +gC +ge +gh +gn +gn +gn +gC +ge +gp +gp +gp +gp +gp +ge +gp +gp +gp +gp +gp +ge +gp +gp +gp +gp +gp +ge +gh +gn +gn +gn +gC +ge +gh +gn +gn +gn +gC +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +it +it +lR +mq +mq +mq +mq +mq +mq +mq +pb +is +it +is +rM +mq +it +tw +lk +kr +vj +vy +iz +mq +wQ +is +it +is +yv +yF +ul +mp +nS +iz +zO +zQ +AI +Bc +Bz +zH +zN +zN +zN +zH +Db +Dj +Db +Dy +DH +DV +DV +DV +DV +DV +DV +DH +ER +EV +Fe +Fl +Fg +Ef +FD +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(168,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +go +go +go +ge +ge +ge +go +go +go +ge +ge +ge +ge +ge +ge +ge +ge +ge +gp +gp +gp +ge +ge +ge +ge +ge +ge +ge +ge +ge +go +go +go +ge +ge +ge +go +go +go +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +le +lx +lS +mq +mq +mq +mq +mq +mq +mq +pb +iz +qc +lx +rM +mq +iz +tx +uh +ks +mO +vz +ir +mq +vh +iz +xH +lx +yw +mq +mq +mq +zq +iz +zP +Ag +Ag +Ag +BA +BL +Cb +Cb +CF +BN +Db +Dj +Db +Dy +DH +DV +DV +Ew +Ew +DV +DV +DH +ER +EW +Fc +Fl +Fv +Ef +FE +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(169,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gf +gl +gl +gl +gA +ge +gf +gl +gl +gl +gA +ge +ge +ge +gV +ge +ge +ge +gp +gp +gp +gp +gp +ge +ge +ge +gV +ge +ge +ge +gf +gl +gl +gl +gA +ge +gf +gl +gl +gl +gA +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +kM +le +kM +lT +mq +mq +mX +ny +nS +mq +mq +pc +pv +qc +pv +rO +mq +iz +ty +ui +ks +ks +sq +iz +mq +mq +pv +xH +pv +ul +mq +mp +mq +ul +zy +zQ +Ag +AJ +Ag +BB +BM +Cc +Cc +Cc +BM +CZ +Dj +Db +Dy +DH +DV +DV +Ex +ED +DV +DV +DH +ER +EX +Ff +Fl +Fw +FG +Ef +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(170,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gp +gq +gp +gB +go +gg +gp +gq +gp +gB +ge +ge +ge +gV +ge +ge +ge +gp +gm +gm +gm +gp +ge +ge +ge +gV +ge +ge +ge +gg +gm +gq +gm +gB +go +gg +gm +gq +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +le +iz +lS +mq +mq +mq +mq +mq +mq +mq +pb +lx +qc +iz +rP +mq +iz +tz +uj +ks +mO +vA +ir +mq +uM +lx +xH +iz +yx +mq +mq +mq +zr +iz +zR +Ag +Ag +Ag +BA +BN +Cb +Cb +CF +zH +Db +Dj +Db +Dy +DH +DV +DV +Ew +Ew +DV +DV +DH +ER +EY +Fc +Fl +Fx +Ef +FE +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(171,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gq +gq +gq +gB +go +gg +gq +gq +gq +gB +gV +gV +gV +gV +gV +gV +ge +gp +ge +gq +ge +gp +ge +gV +gV +gV +gV +gV +gV +gg +gq +gq +gq +gB +go +gg +gq +gq +gq +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +it +it +lU +mq +mq +mq +mq +mq +mq +mq +pb +is +it +is +rP +mq +it +tA +lk +kr +vk +vB +iz +mq +wR +is +it +is +yy +yG +ul +mp +mX +iz +zS +zQ +AK +Bd +Bz +zH +zN +zN +zN +zH +Db +Dj +Db +Dy +DH +DV +DV +DV +DV +DV +DV +DH +ER +EV +Fe +Fl +Fg +Ef +FD +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(172,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gg +gp +gp +gp +gB +go +gg +gp +gp +gp +gB +ge +ge +ge +gV +ge +gG +ge +gp +gm +gm +gm +gp +ge +gG +ge +gV +ge +ge +ge +gg +gm +gm +gm +gB +go +gg +gm +gm +gm +gB +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +lf +iz +lV +mr +mM +mY +nz +mY +mM +mr +pd +it +Ku +iz +rP +mq +iz +qf +iH +uL +vl +mS +iz +mq +uM +iz +lW +it +it +iz +yQ +zd +iz +is +zN +Af +zN +Bb +Bf +zH +Cd +Ct +CG +zH +Db +Dj +Db +Dy +DH +DV +DV +DV +DV +DV +DV +DH +ER +EV +Fe +Fl +Fy +DJ +Ef +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(173,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gh +gn +gn +gn +gC +ge +gh +gn +gn +gn +gC +ge +ge +ge +gV +gG +gG +gG +gp +gp +gp +gp +gp +gG +gG +gG +gV +ge +ge +ge +gh +gn +gn +gn +gC +ge +gh +gn +gn +gn +gC +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iz +it +iz +jc +lx +jc +iz +it +iz +it +iz +it +rN +rN +iz +iz +ug +iz +iz +iz +is +rN +rN +it +iz +it +yz +yH +yR +ze +vi +ir +zM +Ah +AH +Bb +BC +zH +zN +zN +zN +zH +Dc +Dj +Dp +Dy +DH +DW +DW +DW +DW +DW +DW +DH +ER +EW +Fc +Fl +Fz +Ef +FE +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(174,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +gO +gO +gO +ge +ge +ge +ge +gV +ge +gG +ge +ge +gp +gp +gp +ge +ge +gG +ge +gV +ge +ge +ge +ge +ge +gU +ge +ge +ge +ge +gm +gm +gm +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iq +iv +iF +iM +iv +iF +iM +iv +iF +iM +iv +iF +iM +iv +iF +iM +iv +iF +iq +lW +it +mN +mN +mN +mN +mN +it +lW +iz +pw +iz +rP +mq +lX +mq +mp +mq +mq +mq +lX +mq +wt +kT +qP +kT +lk +jB +jB +jB +zs +it +zL +Ai +zN +AL +BD +zH +Ce +BZ +Ce +zH +Da +Dj +Db +Dy +DI +DT +DT +DT +DT +DT +DT +DI +ER +EV +Fe +Fl +FA +Ef +FD +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(175,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +gm +gH +gI +gP +gT +gX +hb +ge +ge +ge +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +ge +ge +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iq +iw +iG +iN +iw +iG +iq +iw +iG +iq +iw +iG +iq +iw +iG +iN +iw +iG +iq +is +ir +iz +jc +lx +jc +iz +it +it +it +it +it +rQ +rP +lX +tB +rP +uM +uM +vC +lX +wt +wS +xm +iz +it +yA +yI +lA +zf +zt +it +zH +Ac +zH +Ba +zH +zH +zH +zH +zH +zH +Db +Dj +Db +Dy +DH +DH +DH +DH +DH +DH +DH +DH +ER +EV +Fe +Fl +FB +FF +DJ +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(176,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +gm +gH +gJ +gp +gn +gp +hc +gK +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gG +gG +gG +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ir +ix +iH +JW +iV +iV +jh +iV +iV +jA +iV +iV +jS +iV +iV +Kb +kN +iH +kT +lX +Ke +iO +iV +iV +iV +kN +iz +lf +it +it +it +rR +lB +it +ir +jc +lx +jc +ir +it +iz +iz +it +pw +it +iz +ir +iH +iu +iz +it +zJ +Aj +AL +AF +BE +zH +Cf +Cu +CH +BM +CZ +Dj +Dj +Dz +DG +DX +Em +Ey +Ey +EF +DX +DG +ES +EU +Fg +Fc +Fq +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(177,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +gm +gH +gK +gQ +gp +gY +gH +ge +gt +ge +gm +gm +gm +ge +ge +gG +gG +gG +ge +ge +gm +gm +gm +ge +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +is +iy +iH +iP +iW +iW +iW +iW +jw +iH +jG +iW +iW +iW +iW +iW +kO +iH +kT +lX +iH +iP +iW +iW +jw +jH +iz +pe +it +it +pw +iz +qP +it +tC +tC +tC +tC +tC +it +pw +lW +it +it +it +ld +iz +iH +iz +pe +iz +zK +Ak +AM +Be +Bv +Ac +Cg +Cu +CI +BN +Dd +Dd +Do +zH +zH +DY +DY +DY +DY +DY +DY +DJ +DJ +DJ +DJ +Fk +DJ +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(178,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gK +gm +gm +gm +gH +ge +gt +gG +gm +ho +gm +gp +go +gp +go +gp +go +gp +gm +ho +gm +gG +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +iz +iz +ir +iz +jc +iz +iz +jx +jB +jH +iz +iz +jc +iz +ir +iz +iz +it +iz +jc +iz +iz +iz +jx +Km +ir +iz +it +it +iz +ir +lB +it +ir +jc +lx +jc +ir +it +iz +iz +iu +ir +it +it +it +lB +it +it +it +zH +zN +zH +AX +BF +zH +Ch +Cu +Cu +CR +Cu +Cu +Cu +DA +zH +DZ +En +En +En +En +EJ +EN +ET +DJ +Fc +Fc +DJ +DJ +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(179,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gs +gr +gs +ge +ge +gL +gR +gm +gZ +hd +ge +gt +gG +gm +ho +gm +go +gp +go +gp +go +gp +go +gm +ho +gm +gG +gt +gG +gN +gS +gV +ha +hf +ge +ge +gs +gr +gs +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +iA +iI +iI +iX +iH +ji +iz +jx +jB +jH +iz +jT +iH +ko +kv +kP +lg +ir +lY +iH +mO +mZ +iz +jx +jH +iz +pe +iz +qd +qO +iH +sp +it +tD +uk +uN +uk +pa +ir +wu +wT +xn +xI +iz +ld +iz +iH +it +pf +ld +zH +Al +zN +Bf +Bb +Ac +Ci +Cu +Cu +Cu +Cu +Cu +Cu +DB +zH +Ea +Eo +Ep +Ep +Eo +EK +EN +ET +DJ +EO +EO +Ef +FD +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(180,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gs +gr +gs +ge +ge +gJ +gp +gn +gp +hc +ge +gt +gG +gm +ho +gm +gp +go +gp +go +gp +go +gp +gm +ho +gm +gG +gt +ge +ge +ge +gV +ge +ge +ge +ge +gs +gr +gs +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iu +iB +iH +iH +iH +iH +jj +ir +jx +jB +jH +ir +jU +iH +iH +iH +iH +iH +kT +lk +jB +ks +na +ir +jx +jH +iz +lf +iz +qe +qO +mv +mS +sU +lU +mq +mq +mq +pb +sU +wv +mq +wU +xJ +iz +pf +iz +jB +it +iz +iz +zH +Am +zN +AX +BF +zH +Cj +Cb +CJ +CS +De +Dk +Dq +DC +zH +Ea +Ep +Ez +Ep +Ep +EK +EN +ET +DJ +EO +EO +Ef +Lu +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(181,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gK +gQ +gp +gY +gH +ge +gt +ge +gm +ho +gm +ge +gq +ho +ho +ho +gq +ge +gm +ho +gm +ge +gt +gG +gG +gG +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +iC +iJ +iJ +iY +iH +ji +iz +jx +jB +jH +iz +jV +iH +kp +kw +kQ +lh +ir +lZ +iH +mO +nb +iz +jx +jH +iz +pe +iz +qf +qO +mb +sq +iz +tE +mq +mq +mq +vD +iz +wv +wU +mq +xK +iz +pe +iz +jB +it +Ld +iH +zH +zN +zH +Bf +Lk +zH +zH +Ba +zH +zH +Ac +zH +Ac +zH +zH +Ea +Eo +Ep +Ep +Eo +EK +EN +ET +DJ +EO +EO +Ef +FD +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(182,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +gm +gH +gK +gm +gm +gm +gH +gq +gt +gq +gm +ho +gm +gG +ho +ho +ho +ho +ho +gG +gm +ho +gm +gq +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +iz +iz +ir +iz +jc +iz +iz +jx +jB +jH +iz +iz +jc +iz +ir +iz +iz +it +iz +jc +iz +iz +iz +jx +Km +ir +iz +ir +qg +qO +jB +sr +sV +tF +ul +mq +mq +mp +wc +ww +mq +wU +xL +it +iz +it +Ld +kT +jB +jB +zT +zX +zT +AX +BF +BK +Ck +AF +AL +AF +AL +AF +AL +Bd +DF +Eb +Eq +Eq +Eq +Eq +EL +EN +ET +DJ +EO +EO +DJ +DJ +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(183,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +gm +gH +gL +gR +gm +gZ +hd +gq +gt +gq +gm +ho +gm +gG +ho +ho +gq +ho +ho +gG +gm +ho +gm +gq +gt +gG +gN +gS +gV +ha +hf +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +is +iD +iH +iO +iV +iV +iV +iV +jy +iH +jI +iV +iV +iV +iV +iV +kN +iH +kT +lX +iH +iO +iV +iV +jy +jH +iz +pf +iz +qh +qO +rS +ss +iz +tE +mq +mq +mq +vD +iz +ww +wU +mq +xM +iz +lf +iz +jB +it +iH +iH +zH +Lj +zH +Bg +Bc +BK +Ab +Cv +AM +Cv +AM +Ln +Dr +BF +zH +Ec +Ec +Ec +Ec +Ec +Ec +DJ +DJ +DJ +Fb +Fb +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(184,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +gm +gH +gJ +gp +gn +gp +hc +gq +gt +gq +gm +ho +gm +gG +ho +ho +ho +ho +ho +gG +gm +ho +gm +gq +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ir +iE +iH +JX +iW +iW +jk +iW +iW +jC +iW +iW +jW +iW +iW +Kc +kO +iH +kT +lX +Ki +iP +iW +iW +iW +kO +iz +ld +iz +qi +qO +jB +sr +sV +tF +ul +mq +mq +mp +wc +ww +mq +wU +xN +iz +ld +iz +jB +it +it +it +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +Bf +Bb +zH +Ed +Ed +Ed +Ed +Ed +Ed +DJ +EO +Lt +EO +EO +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(185,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gK +gQ +gp +gY +gH +ge +gt +ge +gm +ho +gm +ge +gq +ho +ho +ho +gq +ge +gm +ho +gm +ge +gt +gG +gG +gG +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iq +iw +iG +iN +iw +iG +iq +iw +iG +iq +iw +iG +iq +iw +iG +iN +iw +iG +iq +is +ir +iz +jc +lx +jc +iz +it +it +it +qj +iH +mb +st +iz +tG +um +uO +um +vE +iz +wx +wV +ww +xO +iz +lf +iz +iH +it +aa +aa +aa +zH +AN +Bh +Br +zH +BS +BS +BS +BS +BS +zH +AX +BF +zH +DJ +DJ +DJ +DJ +DJ +DJ +DJ +EO +EO +EO +EO +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(186,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gK +gm +gm +gm +gH +ge +gt +gG +gm +ho +gm +gp +go +gp +go +gp +go +gp +gm +ho +gm +gG +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iq +iv +iF +iM +iv +iF +iM +iv +iF +iM +iv +iF +iM +iv +iF +iM +iv +iF +iq +ms +mP +oj +iH +kq +iH +ox +it +qk +qk +qk +qQ +LZ +qk +it +ir +jc +lx +jc +ir +it +it +it +lB +it +it +iz +it +lB +it +aa +aa +aa +zH +AO +AU +Bs +BJ +Bs +Bs +Bs +Bs +Bs +Dg +Bf +Bb +BK +DL +Eg +Es +EB +Eg +DL +Eg +EO +EO +DJ +Fj +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(187,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gt +gr +gt +ge +ge +gL +gR +gm +gZ +hd +ge +gt +gG +gm +ho +gm +go +gp +go +gp +go +gp +go +gm +ho +gm +gG +gt +gG +gN +gS +gV +ha +hf +ge +ge +gt +gr +gt +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +iq +kd +ks +ks +ks +ks +ks +oy +is +qk +LX +ql +LY +ql +KG +qk +tH +tH +tH +tH +tH +qk +Ks +ql +Ma +Mb +yS +Lc +yC +yS +Mc +aa +aa +aa +zH +AP +Bi +Bt +zH +Cl +Cw +CK +CT +Df +zH +Ds +DD +BK +DL +Eg +Et +EC +Eg +DL +Eg +EO +EO +DJ +EO +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(188,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gJ +gp +gn +gp +hc +ge +gt +gG +gm +ho +gm +gp +go +gp +go +gp +go +gp +gm +ho +gm +gG +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +jZ +kq +iH +Ke +iH +ly +it +ke +ks +ks +ks +ks +ks +LJ +it +qk +qk +qk +qQ +qk +qk +qk +qm +rW +sw +rW +qm +qk +qk +qk +qQ +qk +qk +qk +qk +qQ +qk +aa +aa +aa +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +zH +zN +zN +zH +DJ +DJ +Ef +Ef +DJ +DJ +DJ +Ef +Ef +DJ +EO +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(189,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gK +gQ +gp +gY +gH +ge +gt +ge +gm +gm +gm +ge +ge +ge +ge +ge +ge +ge +gm +gm +gm +ge +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +ka +kr +kx +kR +li +kr +kT +iH +ks +ks +ks +ks +ks +oy +it +xX +xW +qk +qR +rT +su +su +KK +un +uP +un +KK +su +su +rT +xo +qk +xW +qk +yJ +yS +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zH +Al +Am +zN +Lp +Ef +EA +DK +Ef +Lp +Ef +EA +DK +DJ +EO +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(190,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gK +gm +gm +gm +gH +hh +hn +hr +hw +hD +hD +hD +hD +hD +hD +hD +hD +hD +hD +hD +hN +gm +gm +gG +gG +gG +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +kb +kr +ky +kS +li +kr +ir +mt +mQ +nc +nA +iH +iH +kk +it +xW +xX +qk +qS +rU +sv +sv +sv +sv +sv +sv +sv +sv +sv +wW +xp +qk +xW +qk +yK +yC +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +zH +zH +zH +zH +DJ +DJ +DJ +DJ +DJ +DJ +DJ +DJ +DJ +DJ +EO +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(191,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gL +gR +gm +gZ +hd +hi +ho +hs +hx +gp +gp +gp +gp +gp +gp +gp +gp +gp +gp +gp +hO +ge +ge +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +it +jc +it +it +it +jc +it +it +it +it +is +jc +jc +is +it +Kq +xX +ql +qU +rU +sv +sW +tI +sv +sv +sv +sv +sv +sv +wW +xs +ql +LV +qk +LW +Le +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +DJ +Fm +DJ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(192,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gs +gr +ge +ge +gJ +gq +gq +gq +hc +hi +ho +hs +hx +gp +gq +gp +ge +gq +gq +gq +ge +gp +gq +gp +hO +ge +ge +ge +gN +gS +gV +ha +hf +ge +ge +gr +gs +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +kc +iH +kz +is +lj +lz +ma +mu +mR +nd +lk +iH +iH +ly +it +xX +xW +qm +qT +rU +sv +sX +tJ +tI +sv +sv +sv +sv +sv +wW +xq +qm +xX +qk +yJ +yS +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +EZ +EZ +Fn +EZ +EZ +EZ +EZ +EZ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(193,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gK +gQ +gp +gY +gH +hi +ho +hs +hx +gp +gp +gp +gp +gp +gp +gp +gp +gp +gp +gp +hO +ge +ge +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +kd +ks +ks +kT +lk +lA +mb +mv +mS +iz +lk +kr +kr +kq +it +xX +xW +qk +qT +rU +sv +sX +tK +tJ +tI +sv +sv +sv +sv +wW +xq +qk +ql +qk +qk +qQ +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Fa +Fh +Fh +Fh +Fh +Fh +Fh +Fa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(194,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gM +gO +gO +gO +he +hj +hp +ht +hy +gn +gn +gn +gn +gn +gn +gn +gn +gn +gn +gn +hP +gm +gm +gG +gG +gG +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iu +ke +ks +kA +ir +iz +lB +iz +iz +iz +ir +nB +mw +ks +oA +it +qk +ql +qk +KD +rU +sv +sW +tL +tL +tL +tL +tL +vF +sv +wW +KT +qk +xY +yB +yL +yT +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +EZ +Fh +Fh +Fh +Fh +Fh +Fh +EZ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(195,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gU +ge +ge +ge +gt +ge +hz +hE +hE +ge +ge +ge +ge +ge +ge +ge +hE +hE +hQ +ge +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +kd +kr +kB +kU +kr +kr +kr +kr +kr +iz +nC +mw +ks +oB +it +LK +LN +LQ +qS +rU +sv +sY +tK +tK +tK +vm +tM +wd +sv +wW +xp +xP +xZ +yC +yC +yS +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +EZ +Fi +Fi +Fi +Fi +Fh +Fi +EZ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(196,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +gG +hz +hE +hE +hE +hE +ho +gq +ho +hE +hE +hE +hE +hQ +gG +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +is +kf +kr +kC +kV +kr +ks +mc +mw +kr +iz +nC +mw +ks +oC +it +LL +LF +LH +qS +rU +sv +sZ +sY +tK +tK +tK +vF +sZ +sv +wW +xt +xQ +xZ +yC +yC +yU +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +EZ +Fi +Fi +Fi +Fi +Fh +Fi +EZ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(197,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gt +gr +gt +ge +ge +gN +gS +gV +ha +hf +gG +gt +gG +hz +hE +hE +ho +hE +hE +ho +hE +hE +ho +hE +hE +hQ +gG +gt +gG +gN +gS +gV +ha +hf +ge +ge +gt +gr +gt +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ir +kg +kr +kD +kW +kr +ks +md +mw +kr +iz +nC +mw +ks +oD +it +LM +LP +LR +qS +rU +sv +sW +tL +uo +tK +tK +tK +vF +sv +wW +xp +xR +xZ +yC +yC +yV +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +EZ +Fh +Fo +Fh +Fh +Fh +Fh +EZ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(198,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +gG +hz +hE +hE +gq +ho +hE +hE +hE +ho +gq +hE +hE +hQ +gG +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +is +kh +kr +kE +kX +kr +ks +ks +ks +kr +kT +lk +ks +ks +oE +it +qk +ql +qk +KD +rU +sv +sY +tM +tM +tM +tM +tM +wd +sv +wW +KT +qk +ya +yD +yM +yW +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +Fa +Fh +Fp +FC +Fh +Fh +Fh +Fa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(199,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +gG +gG +gG +gt +ge +hz +hE +hE +hE +gq +ho +hE +ho +gq +hE +hE +hE +hQ +ge +gt +gG +gG +gG +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ir +ki +kr +kF +kY +kr +ks +md +mw +kr +iz +nC +mw +ks +oF +is +xW +xX +qk +qT +rU +sv +sv +sv +sv +uQ +vn +tK +we +sv +wW +xq +qk +ql +qk +qk +qk +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +EZ +EZ +EZ +EZ +EZ +EZ +EZ +EZ +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(200,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +hu +hz +ge +hE +hE +hE +gq +ho +gq +hE +hE +hE +ge +hQ +hu +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +is +kj +kr +kC +kV +kr +ks +mc +mw +kr +iz +nC +mw +ks +oC +it +xX +xW +qm +qT +rU +sv +sv +sv +sv +sv +uQ +vn +we +sv +wW +xq +qm +xW +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(201,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gs +gr +ge +ge +gN +gS +gV +ha +hf +gG +gt +hu +hz +hE +ge +hE +hE +hE +hE +hE +hE +hE +ge +hE +hQ +hu +gt +gG +gN +gS +gV +ha +hf +ge +ge +gr +gs +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +kd +kr +kB +kZ +kr +kr +kr +kr +kr +iz +nC +mw +ks +oB +it +Kq +xX +ql +qX +rU +sv +sv +sv +sv +sv +sv +uQ +wd +sv +wW +LT +ql +LV +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(202,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +hu +hz +ge +hE +hE +hE +gv +hG +gv +hE +hE +hE +ge +hQ +hu +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +iu +ke +ks +kG +ir +ll +lC +me +mx +lC +ir +nB +mw +ks +kd +it +xW +xX +qk +qS +rU +sv +sv +sv +sv +sv +sv +sv +sv +sv +wW +xp +qk +xX +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(203,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +gG +gG +gG +gt +ge +hz +hE +hE +hE +gv +hG +hE +hG +gv +hE +hE +hE +hQ +ge +gt +gG +gG +gG +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +kd +ks +ks +kT +lk +lD +lE +lE +lD +iz +lk +kr +kr +oG +it +xW +xX +qk +qZ +rV +rV +rV +rV +rV +rV +rV +rV +rV +rV +rV +Ih +qk +xW +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(204,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +gG +hz +hE +hE +gv +hG +hE +hE +hE +hG +gv +hE +hE +hQ +gG +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +kk +kt +kH +is +lm +lE +mf +my +lE +ne +lk +nT +ok +kh +it +qk +qk +qk +LS +HV +HV +HV +HV +HV +HV +HV +HV +HV +HV +HV +LU +qk +qk +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(205,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gt +gr +gt +ge +ge +gN +gS +gV +ha +hf +gG +gt +gG +hz +hE +hE +hG +hE +hE +hG +hE +hE +hG +hE +hE +hQ +gG +gt +gG +gN +gS +gV +ha +hf +ge +ge +gt +gr +gt +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +it +it +it +it +it +it +iu +it +it +ir +it +it +it +it +it +it +qk +qk +qk +ra +ra +ra +ra +ra +ra +ra +ra +ra +ra +ra +ra +ra +qk +qk +qk +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(206,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +gG +hz +hE +hE +hE +hE +hG +gv +hG +hE +hE +hE +hE +hQ +gG +gt +ge +ge +ge +gV +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ta +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(207,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +ge +hz +hE +hE +ge +ge +ge +ge +ge +ge +ge +hE +hE +hQ +ge +gt +ge +ge +ge +gW +ge +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(208,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +gG +gG +gG +gm +gm +hA +gu +gu +gu +gu +gu +gu +gu +gu +gu +gu +gu +hR +hU +hX +hZ +ic +gT +gT +gT +im +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(209,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +ge +ge +hB +hk +hk +hk +hk +hk +hk +hk +hk +hk +hk +hk +hS +hV +hG +ia +gK +ig +hk +ij +gH +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(210,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gs +gr +ge +ge +gN +gS +gV +ha +hf +gG +ge +ge +hB +hk +gv +hk +ge +gv +gv +gv +ge +hk +gv +hk +hS +hV +hG +ia +id +gv +gv +gv +in +ge +ge +gr +gs +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(211,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +ge +ge +hB +hk +hk +hk +hk +hk +hk +hk +hk +hk +hk +hk +hS +hV +hG +ia +ie +ih +gm +ik +io +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(212,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +gG +gG +gG +gm +gm +hC +hF +hF +hF +hF +hF +hF +hF +hF +hF +hF +hF +hT +hW +hY +ib +gK +gm +gm +gm +gH +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(213,1,1) = {" +ab +ae +ae +ae +ae +ae +ae +ae +ae +ae +ae +ab +ae +ae +ae +ae +ae +ae +ae +ae +ae +ae +ab +ae +ae +ae +ae +ae +ae +ae +ae +ae +ae +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +ge +gm +gm +gm +ge +ge +ge +ge +ge +ge +ge +gm +gm +gm +ge +gt +ge +gK +ig +hk +ij +gH +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(214,1,1) = {" +ac +af +af +af +af +af +af +af +af +af +af +bl +bm +bm +bm +bm +bm +bm +bm +bm +bm +bm +bl +dy +dy +dy +dy +dy +dy +dy +dy +dy +dy +fN +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +gG +gm +hG +gm +hk +gx +hk +gx +hk +gx +hk +gm +hG +gm +gG +gt +ge +id +hk +gu +hk +in +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(215,1,1) = {" +ac +af +ax +af +af +aQ +aT +aI +af +ay +af +bl +bm +bm +bm +bm +bm +bm +bm +bm +bm +bm +bl +dy +dU +dU +dy +dU +dU +dy +dU +dU +dy +fN +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gt +gr +gt +ge +ge +gN +gS +gV +ha +hf +gG +gt +gG +gm +hG +gm +gx +hk +gx +hk +gx +hk +gx +gm +hG +gm +gG +gt +ge +ie +ih +gm +ik +io +ge +ge +gt +gr +gt +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(216,1,1) = {" +ac +af +ay +af +af +af +af +af +af +ay +af +bl +bm +bm +bm +bm +cj +cw +bm +bm +bm +bm +bl +dy +dU +dU +eJ +dU +dU +eJ +dU +dU +dy +fN +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +gG +gm +hG +gm +hk +gx +hk +gx +hk +gx +hk +gm +hG +gm +gG +gt +ge +gK +gm +gm +gm +gH +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(217,1,1) = {" +ac +af +ay +aI +aO +af +aU +af +af +aI +af +bl +bm +bm +bm +bm +bm +cx +bm +bm +bm +bm +bl +dy +dU +dU +dy +dU +dU +dy +dU +dU +dy +fN +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +gG +gG +gG +gt +ge +gm +hG +gm +ge +gv +hG +hG +hG +gv +ge +gm +hG +gm +ge +gt +ge +gK +ig +hk +ij +gH +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(218,1,1) = {" +ac +af +af +af +af +af +ax +af +af +af +af +bl +bm +bm +bm +bm +bm +bm +bm +bm +bm +bm +bl +dy +dy +dy +dy +dy +dy +dy +dy +dy +dy +fN +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +gv +gm +hG +gm +gG +hG +hG +hG +hG +hG +gG +gm +hG +gm +gv +gt +gv +id +hk +gu +hk +in +gK +gm +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(219,1,1) = {" +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +gN +gS +gV +ha +hf +gG +gt +gv +gm +hG +gm +gG +hG +hG +gv +hG +hG +gG +gm +hG +gm +gv +gt +gv +ie +ih +gm +ik +io +gK +gm +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(220,1,1) = {" +ac +ah +ah +ah +ah +ah +ah +ah +ah +ah +ah +bl +bn +bp +bF +cf +bF +bn +cf +bF +bo +bn +bl +dz +dV +er +eK +eL +eK +eL +fi +fv +fC +fN +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +gv +gm +hG +gm +gG +hG +hG +hG +hG +hG +gG +gm +hG +gm +gv +gt +gv +gK +gm +gm +gm +gH +gK +gm +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(221,1,1) = {" +ac +ai +ai +ai +ai +ai +ai +ai +ai +ai +ai +bl +bo +bF +bU +bn +bn +bG +cK +cR +cR +cf +bl +dz +dW +es +eL +eK +eL +eK +fj +fw +fC +fN +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +gG +gG +gG +gt +ge +gm +hG +gm +ge +gv +hG +hG +hG +gv +ge +gm +hG +gm +ge +gt +ge +gK +ig +hk +ij +gH +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(222,1,1) = {" +ac +aj +aj +aj +aj +aj +aj +aj +aj +aj +aj +bl +bn +bG +bV +cg +bn +bn +bU +cS +cT +bn +bl +dz +dX +er +eK +eL +eK +eL +fi +fx +fC +fN +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gs +gr +gs +ge +ge +ge +ge +gV +ge +ge +ge +gt +gG +gm +hG +gm +hk +gx +hk +gx +hk +gx +hk +gm +hG +gm +gG +gt +ge +id +hk +gu +hk +in +ge +ge +gs +gr +gs +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(223,1,1) = {" +ac +ak +az +az +ak +az +az +ak +az +az +ak +bl +bp +bH +bW +ch +bn +bo +cL +cT +cR +bp +bl +dz +dY +es +eL +eK +eL +eK +fj +fy +fC +fN +fO +fO +fO +fO +fO +fO +fO +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gs +gr +gs +ge +ge +gN +gS +gV +ha +hf +gG +gt +gG +gm +hG +gm +gx +hk +gx +hk +gx +hk +gx +gm +hG +gm +gG +gt +ge +ie +ih +gm +ik +io +ge +ge +gs +gr +gs +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(224,1,1) = {" +ac +al +aA +aJ +ak +aJ +aJ +ak +aJ +aA +be +bl +bn +bn +bF +cf +bn +bF +bn +cU +dd +bn +bl +dz +dV +er +eK +eL +eK +eL +fi +fv +fC +fN +fO +fR +fR +fR +fR +fR +fR +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +gG +gm +hG +gm +hk +gx +hk +gx +hk +gx +hk +gm +hG +gm +gG +gt +ge +gK +gm +gm +gm +gH +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(225,1,1) = {" +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +fO +fS +fS +fS +fS +fS +fS +fO +fO +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +gt +ge +gm +gm +gm +ge +ge +gG +gG +gG +ge +ge +gm +gm +gm +ge +gt +ge +gK +ig +hk +ij +gH +gK +gm +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(226,1,1) = {" +ac +am +aB +ao +ao +aR +aR +aR +aR +aR +aR +bl +bq +bI +bX +bJ +ck +cy +bJ +cV +de +dj +ac +dA +dZ +et +eM +eU +eU +eU +fk +dZ +fD +fN +fO +ab +ab +ab +ab +ab +ab +fZ +ga +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +gG +gG +gG +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gH +id +hk +gu +hk +in +gK +gm +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(227,1,1) = {" +ac +an +ao +aK +ao +aS +aV +ba +bc +bc +bf +bl +br +bJ +bJ +bJ +cl +cz +bJ +cW +df +dk +ac +dB +dZ +eu +eN +eU +eU +eU +fk +dZ +fD +fN +fO +ab +ab +ab +ab +ab +ab +fZ +ga +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gV +ge +ge +ge +ge +ge +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +gm +ge +ge +ge +if +ii +gO +il +ip +gK +gm +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(228,1,1) = {" +ac +ao +aC +aL +aP +ao +aW +bb +bb +bb +bg +bl +bs +bJ +bZ +ci +cm +cA +bJ +cX +dg +dl +ac +dC +ea +eu +eO +eU +eU +eU +fl +dZ +fD +fN +fO +ab +ab +ab +ab +ab +ab +fZ +ga +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gr +gr +gr +ge +ge +ge +ge +gW +ge +ge +ge +ge +ge +gV +ge +gG +ge +ge +hk +hk +hk +ge +ge +gG +ge +gV +ge +ge +ge +ge +gT +gT +gT +ge +ge +ge +gr +gr +gr +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(229,1,1) = {" +ac +ao +aC +aM +aP +ao +aX +bb +bb +bb +bg +bl +bt +bJ +ca +ci +bJ +bJ +bJ +bJ +dh +dm +ac +dD +dZ +eu +eP +eU +eU +eU +fk +dZ +fD +fN +fO +ab +ab +ab +ab +ab +ab +fZ +ga +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gi +gu +gu +gu +gD +ge +gi +gu +gu +gu +gD +ge +ge +ge +gV +gG +gG +gG +hk +hk +hk +hk +hk +gG +gG +gG +gV +ge +ge +ge +gi +gu +gu +gu +gD +ge +gi +gu +gu +gu +gD +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(230,1,1) = {" +ac +ap +ao +aN +ao +aS +aV +bb +bd +bd +bh +bl +bu +bK +cb +ci +cn +cB +bJ +bJ +cl +dn +ac +dE +dZ +ev +eM +eU +eU +eU +fk +dZ +fD +fN +fO +ab +ab +ab +ab +ab +ab +fZ +ga +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gm +gm +gE +gx +gj +gm +gm +gm +gE +ge +ge +ge +gV +ge +gG +ge +hk +gm +gm +gm +hk +ge +gG +ge +gV +ge +ge +ge +gj +gm +gm +gm +gE +gx +gj +gm +gm +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(231,1,1) = {" +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +fO +fT +fT +fT +fT +fT +fT +fO +fO +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gv +gv +gv +gE +gx +gj +gv +gv +gv +gE +gV +gV +gV +gV +gV +gV +ge +hk +ge +gv +ge +hk +ge +gV +gV +gV +gV +gV +gV +gj +gv +gv +gv +gE +gx +gj +gv +gv +gv +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(232,1,1) = {" +ac +aq +aq +aq +aq +aq +aq +aq +aq +aq +aq +bl +bv +bL +bL +bL +co +cC +cM +cM +cM +do +bl +dF +eb +ew +ex +eV +fb +ex +fm +fz +fE +fN +fP +fU +Iw +IJ +IJ +Je +fU +fP +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gv +gm +gE +gx +gj +gm +gv +gm +gE +ge +ge +ge +gV +ge +ge +ge +hk +gm +gm +gm +hk +ge +ge +ge +gV +ge +ge +ge +gj +gm +gv +gm +gE +gx +gj +gm +gv +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(233,1,1) = {" +ac +aq +aD +aq +aq +aq +aq +aq +aq +aD +aq +bl +bv +bL +cc +bM +cp +cD +bM +cY +cM +do +bl +dG +ec +ex +ex +eW +eW +fh +fn +fA +fF +fN +fQ +fQ +fQ +fQ +fQ +fQ +fQ +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gk +gw +gw +gw +gF +ge +gk +gw +gw +gw +gF +ge +ge +ge +gV +ge +ge +ge +hk +hk +hk +hk +hk +ge +ge +ge +gV +ge +ge +ge +gk +gw +gw +gw +gF +ge +gk +gw +gw +gw +gF +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(234,1,1) = {" +ac +aq +aq +aq +aq +aD +aD +aq +aq +aq +aq +bl +bw +bM +cc +bM +cp +cD +cN +cY +bM +dp +bl +dG +ed +ey +ex +ex +ex +fh +fo +fA +fF +fN +Ij +Il +Il +Il +Il +Il +Il +Ij +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gx +gx +gx +ge +ge +ge +gx +gx +gx +ge +ge +ge +ge +ge +ge +ge +ge +ge +hk +hk +hk +ge +ge +ge +ge +ge +ge +ge +ge +ge +gx +gx +gx +ge +ge +ge +gx +gx +gx +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(235,1,1) = {" +ac +aq +aD +aq +aq +aq +aq +aq +aq +aD +aq +bl +bx +bN +cc +bM +cp +cD +bM +cY +cO +dq +bl +dG +ee +ex +ex +eX +eX +fh +fp +fA +fF +fN +fQ +Im +Im +Im +Im +Im +Im +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gi +gu +gu +gu +gD +ge +gi +gu +gu +gu +gD +ge +hk +hk +hk +hk +hk +ge +hk +hk +hk +hk +hk +ge +hk +hk +hk +hk +hk +ge +gi +gu +gu +gu +gD +ge +gi +gu +gu +gu +gD +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(236,1,1) = {" +ac +aq +aq +aq +aq +aq +aq +aq +aq +aq +aq +bl +bx +bN +bN +bN +cq +cE +cO +cO +cO +dq +bl +dF +ef +ez +ex +eY +fc +ex +fq +fz +fG +fN +fQ +In +In +In +In +In +In +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gv +gm +gE +gG +gj +gm +gv +gm +gE +hk +hk +gm +ge +gm +hk +hk +hk +gv +hH +gv +hk +hk +hk +gm +ge +gm +hk +hk +gj +gm +gv +gm +gE +gG +gj +gm +gv +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(237,1,1) = {" +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +fQ +In +In +In +In +In +In +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gv +gv +gv +gE +gG +gj +gv +gv +gv +gE +hk +hk +gm +gv +gm +hk +hk +hk +hH +hK +hH +hk +hk +hk +gm +gv +gm +hk +hk +gj +gv +gv +gv +gE +gG +gj +gv +gv +gv +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(238,1,1) = {" +ac +ar +ar +ar +ar +ar +ar +ar +ar +ar +ar +bl +by +by +by +by +by +by +by +cZ +di +dr +bl +dH +eg +eA +eQ +eZ +fd +eZ +fd +eZ +eD +fN +fQ +In +In +fX +fX +In +In +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gv +gm +gE +gG +gj +gm +gv +gm +gE +hk +hk +gm +ge +gm +hk +hk +hk +gv +hH +gv +hk +hk +hk +gm +ge +gm +hk +hk +gj +gm +gv +gm +gE +gG +gj +gm +gv +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(239,1,1) = {" +ac +ar +ar +ar +ar +ar +ar +ar +ar +ar +ar +bl +by +bO +cd +by +cr +by +by +da +di +dr +bl +dI +eh +eB +eQ +fa +fe +fa +fe +fa +eB +fN +fQ +In +In +fY +IY +In +In +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gk +gw +gw +gw +gF +ge +gk +gw +gw +gw +gF +ge +hk +hk +hk +hk +hk +ge +hk +hk +hk +hk +hk +ge +hk +hk +hk +hk +hk +ge +gk +gw +gw +gw +gF +ge +gk +gw +gw +gw +gF +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(240,1,1) = {" +ac +ar +ar +ar +ar +ar +ar +ar +ar +ar +ar +bl +by +by +by +by +by +by +by +db +di +dr +bl +dJ +ei +eC +eQ +eQ +eQ +eQ +eQ +eQ +eQ +fN +fQ +In +In +fX +fX +In +In +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gx +gx +gx +ge +ge +ge +gx +gx +gx +ge +ge +ge +ge +ge +ge +ge +ge +ge +hk +hk +hk +ge +ge +ge +ge +ge +ge +ge +ge +ge +gx +gx +gx +ge +ge +ge +gx +gx +gx +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(241,1,1) = {" +ac +ar +ar +ar +ar +ar +ar +ar +ar +ar +ar +bl +by +bP +cd +by +by +cF +by +cZ +di +dr +bl +dK +ej +eD +eQ +eZ +fd +eZ +fd +eZ +eD +fN +fQ +In +In +In +In +In +In +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gi +gu +gu +gu +gD +ge +gi +gu +gu +gu +gD +ge +gi +gu +gu +gu +gD +ge +hk +hk +hk +hk +hk +ge +gi +gu +gu +gu +gD +ge +gi +gu +gu +gu +gD +ge +gi +gu +gu +gu +gD +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(242,1,1) = {" +ac +ar +ar +ar +ar +ar +ar +ar +ar +ar +ar +bl +by +by +by +by +by +by +by +cZ +di +dr +bl +dL +ek +eE +eQ +fa +fe +fa +fe +fa +eB +fN +fQ +In +In +In +In +In +In +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gv +gm +gE +gx +gj +gm +gv +gm +gE +gx +gj +gm +gv +gm +gE +ge +hk +gm +gm +gm +hk +ge +gj +hk +gv +hk +gE +gx +gj +gm +gv +gm +gE +gx +gj +gm +gv +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(243,1,1) = {" +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +fQ +Iu +Iu +Iu +Iu +Iu +Iu +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gv +gv +gv +gE +gx +gj +gv +gv +gv +gE +gx +gj +gv +gv +gv +gE +ge +hk +ge +gv +ge +hk +ge +gj +gv +gv +gv +gE +gx +gj +gv +gv +gv +gE +gx +gj +gv +gv +gv +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(244,1,1) = {" +ac +as +as +as +as +as +as +as +as +as +as +bl +bz +bQ +bQ +bQ +cs +cG +bQ +bQ +bQ +ds +bl +dM +el +el +el +el +ff +ff +ff +ff +fH +fN +Ij +Il +Il +Il +Il +Il +Il +Ij +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gm +gm +gE +gx +gj +gm +gm +gm +gE +gx +gj +gm +gv +gm +gE +ge +hk +gm +gm +gm +hk +ge +gj +hk +gv +hk +gE +gx +gj +gm +gm +gm +gE +gx +gj +gm +gm +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(245,1,1) = {" +ac +as +aE +as +as +as +as +as +as +aE +as +bl +bA +bQ +bQ +bQ +cs +cG +bQ +bQ +bQ +dt +bl +dN +em +eF +em +em +fg +em +em +em +fI +fN +fQ +fQ +fQ +fQ +fQ +fQ +fQ +fQ +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gk +gw +gw +gw +gF +ge +gk +gw +gw +gw +gF +ge +gk +gw +gw +gw +gF +ge +hk +hk +hk +hk +hk +ge +gk +gw +gw +gw +gF +ge +gk +gw +gw +gw +gF +ge +gk +gw +gw +gw +gF +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(246,1,1) = {" +ac +as +as +as +aE +as +as +aE +as +as +as +bl +bA +bQ +bQ +bQ +cs +cG +bQ +bQ +bQ +dt +bl +dN +em +em +em +em +em +em +em +em +fI +fN +fP +fV +II +IS +IS +Jq +fV +fP +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +gx +gx +gx +ge +ge +ge +gx +gx +gx +ge +ge +ge +hv +hv +hv +ge +ge +ge +ge +ge +ge +ge +ge +ge +hv +hv +hv +ge +ge +ge +gx +gx +gx +ge +ge +ge +gx +gx +gx +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(247,1,1) = {" +ac +as +aE +as +as +as +as +as +as +aE +as +bl +bA +bQ +bQ +bQ +cs +cG +bQ +bQ +bQ +dt +bl +dN +em +em +em +em +em +em +fr +em +fI +fN +fO +fT +fT +fT +fT +fT +fT +fO +fO +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gi +gu +gu +gu +gu +gu +gu +gu +gu +gu +gD +hl +hk +hk +hk +hk +hk +ge +hk +hk +hk +hk +hk +ge +hk +hk +hk +hk +hk +hl +gi +gu +gu +gu +gu +gu +gu +gu +gu +gu +gD +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(248,1,1) = {" +ac +as +as +as +as +as +as +as +as +as +as +bl +bB +bQ +bQ +bQ +cs +cG +bQ +bQ +bQ +du +bl +dO +en +en +en +en +en +en +en +en +fJ +fN +fO +ab +ab +ab +ab +ab +ab +fZ +gb +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gm +gm +gm +gm +gm +gm +gm +gm +gE +ge +hk +gv +gv +gv +hk +hk +hk +hk +hk +hk +hk +hk +hk +gv +gv +gv +hk +ge +gj +gm +gm +gm +gm +gm +gm +gm +gm +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(249,1,1) = {" +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +fO +ab +ab +ab +ab +ab +ab +fZ +gb +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gy +gm +gy +gm +gy +gm +gy +gm +gE +ge +hk +gv +hk +hk +hk +hk +hk +hk +hH +hk +hk +hk +hk +hk +hk +gv +hk +ge +gj +gm +gy +gm +gy +gm +gy +gm +gy +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(250,1,1) = {" +ac +at +aF +aF +aF +aF +aY +aY +aY +aY +bi +bl +bC +bR +bR +bR +ct +cH +cP +cP +cP +dv +bl +dP +dP +dP +dP +dP +dP +dP +dP +dP +dP +fN +fO +ab +ab +ab +ab +ab +ab +fZ +gb +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gy +gm +gy +gm +gy +gm +gy +gm +gE +ge +hk +gv +hk +hk +hk +hk +hk +hH +hL +hH +hk +hk +hk +hk +hk +gv +hk +ge +gj +gm +gy +gm +gy +gm +gy +gm +gy +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(251,1,1) = {" +ac +au +aG +aG +aG +aG +aG +aG +aG +aG +bj +bl +bD +bS +ce +bS +cu +cI +bS +dc +bS +dw +bl +dQ +eo +eG +eR +eR +eR +eR +fs +fB +fK +fN +fO +ab +ab +ab +ab +ab +ab +fZ +gb +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gy +gm +gy +gm +gy +gm +gy +gm +gE +ge +hk +gv +hk +hk +hk +hk +hk +hk +hH +hk +hk +hk +hk +hk +hk +gv +hk +ge +gj +gm +gy +gm +gy +gm +gy +gm +gy +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(252,1,1) = {" +ac +au +aG +aG +aG +aG +aG +aG +aG +aG +bj +bl +bD +bS +ce +bS +cu +cI +bS +dc +bS +dw +bl +dR +ep +eH +eS +eS +eS +eS +ft +fB +fL +fN +fO +ab +ab +ab +ab +ab +ab +fZ +gb +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gj +gm +gm +gm +gm +gm +gm +gm +gm +gm +gE +ge +hk +gv +gv +gv +hk +hk +hk +hk +hk +hk +hk +hk +hk +gv +gv +gv +hk +ge +gj +gm +gm +gm +gm +gm +gm +gm +gm +gm +gE +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(253,1,1) = {" +ac +au +aG +aG +aG +aG +aG +aG +aG +aG +bj +bl +bD +bS +ce +bS +cu +cI +bS +dc +bS +dw +bl +dS +eq +eI +eT +eT +eT +eT +fu +fB +fM +fN +fO +fS +fS +fS +fS +fS +fS +fO +fO +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +gk +gw +gw +gw +gw +gw +gw +gw +gw +gw +gF +hl +hk +hk +hk +hk +hk +ge +hk +hk +hk +hk +hk +ge +hk +hk +hk +hk +hk +hl +gk +gw +gw +gw +gw +gw +gw +gw +gw +gw +gF +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(254,1,1) = {" +ac +av +aH +aH +aH +aH +aZ +aZ +aZ +aZ +bk +bl +bE +bT +bT +bT +cv +cJ +cQ +cQ +cQ +dx +bl +dT +dT +dT +dT +dT +dT +dT +dT +dT +dT +fN +fO +fW +fW +fW +fW +fW +fW +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +ge +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(255,1,1) = {" +ab +aw +aw +aw +aw +aw +aw +aw +aw +aw +aw +ab +aw +aw +aw +aw +aw +aw +aw +aw +aw +aw +ab +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag +ab +fO +fO +fO +fO +fO +fO +fO +fO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +HT +HT +"} diff --git a/_maps/map_files/generic/Fastload.dmm b/_maps/map_files/generic/Fastload.dmm new file mode 100644 index 0000000000..96b4a26934 --- /dev/null +++ b/_maps/map_files/generic/Fastload.dmm @@ -0,0 +1,3 @@ +"a" = () + +(1,1,1, 1,1,1) = {""} diff --git a/_maps/map_files/generic/Space.dmm b/_maps/map_files/generic/Space.dmm new file mode 100644 index 0000000000..c71d2e76ad --- /dev/null +++ b/_maps/map_files/generic/Space.dmm @@ -0,0 +1,259 @@ +"a" = (/turf/open/space,/area/space) + +(1,1,1) = {" +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +"} diff --git a/_maps/map_files/generic/SpaceDock.dmm b/_maps/map_files/generic/SpaceDock.dmm new file mode 100644 index 0000000000..7c3b1d0e4b --- /dev/null +++ b/_maps/map_files/generic/SpaceDock.dmm @@ -0,0 +1,260 @@ +"a" = (/turf/open/space,/area/space) +"b" = (/obj/docking_port/stationary{dheight = 0;dir = 2;dwidth = 11;height = 22;id = "whiteship_away";name = "Deep Space";width = 35},/turf/open/space,/area/space) + +(1,1,1) = {" +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +"} diff --git a/_maps/metastation.dm b/_maps/metastation.dm index 3fbd063eaf..3d13caf6d2 100644 --- a/_maps/metastation.dm +++ b/_maps/metastation.dm @@ -1,30 +1 @@ -#if !defined(MAP_FILE) - - #define TITLESCREEN "title" //Add an image in misc/fullscreen.dmi, and set this define to the icon_state, to set a custom titlescreen for your map - - #define MINETYPE "lavaland" - - #include "map_files\MetaStation\MetaStation.dmm" -#ifndef TRAVIS_MASS_MAP_BUILD - #include "map_files\generic\z2.dmm" - #include "map_files\generic\z3.dmm" - #include "map_files\generic\z4.dmm" - #include "map_files\generic\lavaland.dmm" - #include "map_files\generic\z6.dmm" - #include "map_files\generic\z7.dmm" - #include "map_files\generic\z8.dmm" - #include "map_files\generic\z9.dmm" - #include "map_files\generic\z10.dmm" - #include "map_files\generic\z11.dmm" - - #define MAP_PATH "map_files/MetaStation" - #define MAP_FILE "MetaStation.dmm" - #define MAP_NAME "MetaStation" - - #define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG -#endif -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, ignoring MetaStation. - -#endif +#define FORCE_MAP "_maps/metastation.json" \ No newline at end of file diff --git a/_maps/metastation.json b/_maps/metastation.json new file mode 100644 index 0000000000..4b1b63499f --- /dev/null +++ b/_maps/metastation.json @@ -0,0 +1,7 @@ +{ + "map_name": "MetaStation", + "map_path": "map_files/MetaStation", + "map_file": "MetaStation.dmm", + "minetype": "lavaland", + "transition_config": "default" +} \ No newline at end of file diff --git a/_maps/omegastation.dm b/_maps/omegastation.dm index ad4fe6607c..ea4a0c155f 100644 --- a/_maps/omegastation.dm +++ b/_maps/omegastation.dm @@ -1,36 +1 @@ -#if !defined(MAP_FILE) - - #define TITLESCREEN "title" //Add an image in misc/fullscreen.dmi, and set this define to the icon_state, to set a custom titlescreen for your map - - #define MINETYPE "lavaland" - - #include "map_files\OmegaStation\OmegaStation.dmm" -#ifndef TRAVIS_MASS_MAP_BUILD - #include "map_files\generic\z2.dmm" - #include "map_files\generic\z3.dmm" - #include "map_files\generic\z4.dmm" - #include "map_files\generic\lavaland.dmm" - #include "map_files\generic\z6.dmm" - #include "map_files\generic\z7.dmm" - #include "map_files\generic\z8.dmm" - #include "map_files\generic\z9.dmm" - #include "map_files\generic\z10.dmm" - #include "map_files\generic\z11.dmm" - - #define MAP_PATH "map_files/OmegaStation" - #define MAP_FILE "OmegaStation.dmm" - #define MAP_NAME "OmegaStation" - - #define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG -#endif - #if !defined(MAP_OVERRIDE_FILES) - #define MAP_OVERRIDE_FILES - #include "map_files\OmegaStation\job\job_changes.dm" - #include "map_files\OmegaStation\job\removed_jobs.dm" - #endif - -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, ignoring OmegaStation. - -#endif +#define FORCE_MAP "_maps/omegastation.json" \ No newline at end of file diff --git a/_maps/omegastation.json b/_maps/omegastation.json new file mode 100644 index 0000000000..53fbc24def --- /dev/null +++ b/_maps/omegastation.json @@ -0,0 +1,7 @@ +{ + "map_name": "OmegaStation", + "map_path": "map_files/OmegaStation", + "map_file": "OmegaStation.dmm", + "minetype": "lavaland", + "transition_config": "default" +} \ No newline at end of file diff --git a/_maps/pubbystation.dm b/_maps/pubbystation.dm index 9ef04e8061..867d0ddb17 100644 --- a/_maps/pubbystation.dm +++ b/_maps/pubbystation.dm @@ -1,38 +1 @@ -#if !defined(MAP_FILE) - - #define TITLESCREEN "title" //Add an image in misc/fullscreen.dmi, and set this define to the icon_state, to set a custom titlescreen for your map - - #define MINETYPE "lavaland" - - #include "map_files\PubbyStation\PubbyStation.dmm" -#ifndef TRAVIS_MASS_MAP_BUILD - #include "map_files\generic\z2.dmm" - #include "map_files\generic\z3.dmm" - #include "map_files\generic\z4.dmm" - #include "map_files\generic\lavaland.dmm" - #include "map_files\generic\z6.dmm" - #include "map_files\generic\z7.dmm" - #include "map_files\generic\z8.dmm" - #include "map_files\generic\z9.dmm" - #include "map_files\generic\z10.dmm" - #include "map_files\generic\z11.dmm" - - #define MAP_PATH "map_files/PubbyStation" - #define MAP_FILE "PubbyStation.dmm" - #define MAP_NAME "PubbyStation" - - #define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG -#endif - #if !defined(MAP_OVERRIDE_FILES) - #define MAP_OVERRIDE_FILES - #include "map_files\PubbyStation\job\job_changes.dm" - #include "map_files\PubbyStation\job\removed_jobs.dm" - #include "map_files\PubbyStation\monastery_shuttle.dm" - #include "map_files\PubbyStation\areas.dm" - #endif - -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, ignoring PubbyStation. - -#endif +#define FORCE_MAP "_maps/pubbystation.json" \ No newline at end of file diff --git a/_maps/pubbystation.json b/_maps/pubbystation.json new file mode 100644 index 0000000000..88a2702148 --- /dev/null +++ b/_maps/pubbystation.json @@ -0,0 +1,7 @@ +{ + "map_name": "PubbyStation", + "map_path": "map_files/PubbyStation", + "map_file": "PubbyStation.dmm", + "minetype": "lavaland", + "transition_config": "default" +} \ No newline at end of file diff --git a/_maps/runtimestation.dm b/_maps/runtimestation.dm index 7c97c10344..612644e5f0 100644 --- a/_maps/runtimestation.dm +++ b/_maps/runtimestation.dm @@ -1,23 +1 @@ -#if !defined(MAP_FILE) - - // Runtime Station - // This is a developer sandbox map that will compile and - // load quickly. Not intended for production deployment. - - #define TITLESCREEN "title" - - #define MINETYPE "lavaland" - - #include "map_files\debug\runtimestation.dmm" - - #define MAP_PATH "map_files/debug" - #define MAP_FILE "runtimestation.dmm" - #define MAP_NAME "Runtime Station" - - #define MAP_TRANSITION_CONFIG list(MAIN_STATION = UNAFFECTED) - -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, ignoring Runtime Station. - -#endif +#define FORCE_MAP "_maps/runtimestation.json" \ No newline at end of file diff --git a/_maps/runtimestation.json b/_maps/runtimestation.json new file mode 100644 index 0000000000..664f6c98e0 --- /dev/null +++ b/_maps/runtimestation.json @@ -0,0 +1,7 @@ +{ + "map_name": "Runtime Station", + "map_path": "map_files/debug", + "map_file": "runtimestation.dmm", + "minetype": "lavaland", + "transition_config": "default" +} diff --git a/_maps/shuttles/cargo_birdboat.dmm b/_maps/shuttles/cargo_birdboat.dmm index 2ab5bbab09..71705b06de 100644 --- a/_maps/shuttles/cargo_birdboat.dmm +++ b/_maps/shuttles/cargo_birdboat.dmm @@ -115,6 +115,9 @@ /obj/machinery/conveyor_switch/oneway{ id = "cargoshuttle" }, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/supply) "q" = ( @@ -182,6 +185,24 @@ }, /turf/open/floor/plating/airless, /area/shuttle/supply) +"A" = ( +/obj/machinery/conveyor{ + dir = 8; + id = "cargoshuttle"; + name = "cargo shuttle conveyor belt" + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"B" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) (1,1,1) = {" b @@ -201,7 +222,7 @@ e g e m -m +B m g b @@ -221,7 +242,7 @@ y "} (4,1,1) = {" b -f +A g f m diff --git a/_maps/shuttles/cargo_box.dmm b/_maps/shuttles/cargo_box.dmm index 9826719dbe..89ded173b0 100644 --- a/_maps/shuttles/cargo_box.dmm +++ b/_maps/shuttles/cargo_box.dmm @@ -52,6 +52,9 @@ pixel_x = 24; pixel_y = -8 }, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/supply) "i" = ( @@ -143,6 +146,19 @@ }, /turf/open/floor/plating/airless, /area/shuttle/supply) +"w" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) +"x" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/supply) (1,1,1) = {" b @@ -164,7 +180,7 @@ e e e e -e +x e e e @@ -188,7 +204,7 @@ u "} (4,1,1) = {" b -e +w e e e diff --git a/_maps/shuttles/emergency_airless.dmm b/_maps/shuttles/emergency_airless.dmm index 5a822e413a..a60259b354 100644 --- a/_maps/shuttles/emergency_airless.dmm +++ b/_maps/shuttles/emergency_airless.dmm @@ -1,36 +1,338 @@ -"a" = (/turf/open/space,/area/space) -"b" = (/turf/open/floor/plating/airless,/area/shuttle/escape) -"c" = (/turf/closed/wall,/area/shuttle/escape) -"d" = (/obj/structure/closet/malf,/turf/open/floor/plating/airless,/area/shuttle/escape) -"e" = (/obj/machinery/status_display,/turf/closed/wall,/area/shuttle/escape) -"f" = (/obj/effect/shuttle_build,/turf/open/floor/plating/airless,/area/shuttle/escape) -"g" = (/turf/open/floor/plating,/area/shuttle/escape) -"h" = (/obj/docking_port/mobile/emergency{name = "Shuttle Under Construction";timid = 1},/turf/open/floor/plating/airless,/area/shuttle/escape) -"i" = (/obj/structure/rack,/obj/effect/spawner/lootdrop/maintenance{lootcount = 4;name = "4maintenance loot spawner"},/turf/open/floor/plating/airless,/area/shuttle/escape) -"j" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) -"k" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/open/space, +/area/space) +"b" = ( +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"c" = ( +/turf/closed/wall, +/area/shuttle/escape) +"d" = ( +/obj/structure/closet/malf, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"e" = ( +/obj/machinery/status_display, +/turf/closed/wall, +/area/shuttle/escape) +"f" = ( +/obj/effect/shuttle_build, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"g" = ( +/turf/open/floor/plating, +/area/shuttle/escape) +"h" = ( +/obj/docking_port/mobile/emergency{ + name = "Shuttle Under Construction"; + timid = 1 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"i" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"j" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"k" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"l" = ( +/obj/structure/closet/malf, +/obj/machinery/light/built{ + tag = "icon-tube1 (WEST)"; + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"m" = ( +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance{ + lootcount = 4; + name = "4maintenance loot spawner" + }, +/obj/machinery/light/built{ + tag = "icon-tube1 (EAST)"; + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) (1,1,1) = {" -aabbbbbbbaa -abbbbbbbbba -acdbbbbbbba -aedbbbfbbba -abdbbbbbbba -abbbbbbbbba -bbbbbbbbbbc -gbbbbbbbbbc -bbbbbbbbbbc -hbbbbbbbbbc -bbbbbbbbbbc -bbbbbbbbbbb -bbbbbbbbbbc -bbbbbbbbbbc -abbbbbbbbba -abbbbbbbica -abbbbbbbiea -acbbbbbbica -acbbbbbbbba -acbbbbbbbca -aajjjjjjjaa -aakkkkkkkaa +a +a +a +a +a +a +b +g +b +h +b +b +b +b +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +b +c +e +b +b +b +b +b +b +b +b +b +b +b +b +b +c +c +c +a +a +"} +(3,1,1) = {" +b +b +d +l +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +j +k +"} +(4,1,1) = {" +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +j +k +"} +(5,1,1) = {" +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +j +k +"} +(6,1,1) = {" +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +j +k +"} +(7,1,1) = {" +b +b +b +f +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +j +k +"} +(8,1,1) = {" +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +j +k +"} +(9,1,1) = {" +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +i +m +i +b +b +j +k +"} +(10,1,1) = {" +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +c +e +c +b +c +a +a +"} +(11,1,1) = {" +a +a +a +a +a +a +c +c +c +c +c +b +c +c +a +a +a +a +a +a +a +a "} diff --git a/_maps/shuttles/emergency_asteroid.dmm b/_maps/shuttles/emergency_asteroid.dmm index 5a1fb8020f..58b8d6438d 100644 --- a/_maps/shuttles/emergency_asteroid.dmm +++ b/_maps/shuttles/emergency_asteroid.dmm @@ -254,6 +254,9 @@ /obj/structure/chair/office/light{ name = "Captain" }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "aV" = ( @@ -480,6 +483,9 @@ /obj/structure/toilet{ dir = 1 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "bF" = ( @@ -507,6 +513,48 @@ /obj/structure/grille, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) +"bJ" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"bK" = ( +/obj/structure/chair, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"bL" = ( +/obj/structure/chair, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"bM" = ( +/obj/machinery/light, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"bN" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bO" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bP" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"bQ" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) (1,1,1) = {" aa @@ -572,13 +620,13 @@ ac ad ap aq -aq +bJ ac aU bd bl ac -at +bO bu bE ad @@ -683,7 +731,7 @@ aZ ah aK at -aS +bP ac aa aa @@ -692,7 +740,7 @@ aa ah ah aB -aK +bK at aZ ah @@ -752,7 +800,7 @@ aa ah ah aB -aK +bL at aZ ah @@ -773,7 +821,7 @@ aZ ah aK at -aS +bQ ac aa aa @@ -874,9 +922,9 @@ ax ax ax aw -aw +bM ac -at +bN at bz bD diff --git a/_maps/shuttles/emergency_bar.dmm b/_maps/shuttles/emergency_bar.dmm index 15884f8264..eb696067e2 100644 --- a/_maps/shuttles/emergency_bar.dmm +++ b/_maps/shuttles/emergency_bar.dmm @@ -54,6 +54,9 @@ /obj/structure/extinguisher_cabinet{ pixel_y = 30 }, +/obj/machinery/light/small{ + dir = 1 + }, /turf/open/floor/plasteel/freezer, /area/shuttle/escape) "al" = ( @@ -110,6 +113,7 @@ /obj/structure/table/wood/poker, /obj/item/weapon/storage/box/drinkingglasses, /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey, +/obj/machinery/light, /turf/open/floor/carpet, /area/shuttle/escape) "au" = ( @@ -174,6 +178,9 @@ pixel_x = -3; pixel_y = 3 }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/plasteel/bar, /area/shuttle/escape) "aE" = ( @@ -204,6 +211,10 @@ pixel_x = -24; pixel_y = -6 }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) "aI" = ( @@ -299,12 +310,15 @@ /turf/open/floor/plasteel/grimy, /area/shuttle/escape) "aX" = ( +/obj/machinery/light{ + dir = 4 + }, /mob/living/simple_animal/drone/snowflake/bardrone, /turf/open/floor/plasteel/bar, /area/shuttle/escape) "aY" = ( /obj/machinery/vending/boozeomat, -/turf/open/floor/plasteel/bar, +/turf/closed/wall/mineral/titanium, /area/shuttle/escape) "aZ" = ( /obj/structure/chair/wood/normal{ @@ -441,6 +455,10 @@ "bw" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "bx" = ( @@ -449,10 +467,16 @@ icon_state = "toilet00"; tag = "icon-toilet00 (NORTH)" }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/plasteel/freezer, /area/shuttle/escape) "by" = ( /obj/machinery/recharge_station, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/plasteel/freezer, /area/shuttle/escape) "bz" = ( @@ -600,6 +624,42 @@ }, /turf/open/floor/plasteel/bar, /area/shuttle/escape) +"bW" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/shuttle/escape) +"bX" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/bar, +/area/shuttle/escape) +"bY" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/bar, +/area/shuttle/escape) +"bZ" = ( +/obj/machinery/light/small, +/turf/open/floor/plasteel/bar, +/area/shuttle/escape) +"ca" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/bar, +/area/shuttle/escape) +"cb" = ( +/obj/machinery/sleeper{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) (1,1,1) = {" aa @@ -635,13 +695,13 @@ aC aH aL bt -aE +bY bH aZ bc aZ bH -aE +bZ bt bp bs @@ -730,7 +790,7 @@ bt aD aE aE -aE +bX aE aE aE @@ -761,7 +821,7 @@ aN aN aN aE -aE +ca ae bt bt @@ -824,7 +884,7 @@ bt bt bt aG -bH +bW bI aS aV @@ -836,7 +896,7 @@ bT bk bF br -br +cb bU bt bt diff --git a/_maps/shuttles/emergency_birdboat.dmm b/_maps/shuttles/emergency_birdboat.dmm index 00a549295d..744dee68e2 100644 --- a/_maps/shuttles/emergency_birdboat.dmm +++ b/_maps/shuttles/emergency_birdboat.dmm @@ -1,19 +1,16 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( +"aa" = ( /turf/open/space, /area/space) -"b" = ( -/turf/closed/wall/mineral/titanium/overspace, -/area/shuttle/escape) -"c" = ( +"ab" = ( /turf/closed/wall/mineral/titanium, /area/shuttle/escape) -"d" = ( +"ac" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/escape) -"e" = ( +"ad" = ( /obj/structure/table, /obj/item/weapon/scalpel, /obj/item/weapon/retractor{ @@ -23,7 +20,7 @@ /obj/item/weapon/hemostat, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"f" = ( +"ae" = ( /obj/structure/table, /obj/item/weapon/cautery, /obj/item/weapon/surgicaldrill, @@ -32,82 +29,99 @@ }, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"g" = ( +"af" = ( /turf/open/floor/plasteel/white, /area/shuttle/escape) -"h" = ( +"ag" = ( /obj/structure/shuttle/engine/propulsion{ dir = 4; icon_state = "propulsion_r" }, /turf/open/floor/plating/airless, /area/shuttle/escape) -"i" = ( +"ah" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/shuttle/escape) -"j" = ( +"ai" = ( /obj/machinery/computer/emergency_shuttle, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"k" = ( +"aj" = ( /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"l" = ( +"ak" = ( /obj/item/weapon/twohanded/required/kirbyplants{ icon_state = "plant-22" }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"m" = ( +"al" = ( /obj/structure/chair, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) -"n" = ( +"am" = ( +/obj/structure/chair, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"an" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"o" = ( +"ao" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/shuttle/escape) +"ap" = ( /obj/structure/shuttle/engine/propulsion{ dir = 4; icon_state = "propulsion" }, /turf/open/floor/plating/airless, /area/shuttle/escape) -"p" = ( +"aq" = ( /obj/machinery/computer/communications, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"q" = ( +"ar" = ( /obj/structure/chair{ dir = 8 }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"r" = ( +"as" = ( /obj/machinery/door/airlock/glass_command{ name = "bridge door"; req_access_txt = "19" }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"s" = ( +"at" = ( /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) -"t" = ( +"au" = ( /obj/structure/shuttle/engine/propulsion{ dir = 4; icon_state = "propulsion_l" }, /turf/open/floor/plating/airless, /area/shuttle/escape) -"u" = ( +"av" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aw" = ( /obj/structure/extinguisher_cabinet{ pixel_y = -32 }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"v" = ( +"ax" = ( /obj/structure/table, /obj/machinery/recharger{ active_power_usage = 0; @@ -117,56 +131,59 @@ }, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) -"w" = ( +"ay" = ( /obj/structure/table, /obj/item/weapon/storage/box/handcuffs, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) -"x" = ( +"az" = ( /obj/machinery/door/airlock/glass_security{ name = "security airlock"; req_access_txt = "63" }, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) -"y" = ( +"aA" = ( /obj/machinery/door/airlock/glass, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"z" = ( +"aB" = ( /obj/item/weapon/twohanded/required/kirbyplants{ icon_state = "plant-21"; layer = 4.1 }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"A" = ( +"aC" = ( /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"B" = ( +"aD" = ( /turf/open/floor/plasteel/black, /area/shuttle/escape) -"C" = ( +"aE" = ( /obj/structure/chair{ dir = 4 }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"D" = ( +"aF" = ( /obj/structure/table, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"E" = ( +"aG" = ( /obj/machinery/door/airlock/titanium, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"F" = ( +"aH" = ( /obj/structure/chair{ dir = 8 }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"G" = ( +"aI" = ( /obj/structure/table, /obj/item/weapon/reagent_containers/food/snacks/boiledspaghetti{ name = "pasghetti"; @@ -175,7 +192,11 @@ }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"H" = ( +"aJ" = ( +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aK" = ( /obj/machinery/door/airlock/titanium, /obj/docking_port/mobile/emergency{ dheight = 0; @@ -189,19 +210,33 @@ }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"I" = ( +"aL" = ( +/obj/structure/table, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aM" = ( /obj/structure/table, /obj/item/weapon/reagent_containers/food/snacks/chocolatebar, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"J" = ( +"aN" = ( /obj/structure/chair{ dir = 1 }, /obj/structure/window/reinforced, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"K" = ( +"aO" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/structure/window/reinforced, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aP" = ( /obj/structure/chair, /obj/structure/window/reinforced{ dir = 1; @@ -209,13 +244,13 @@ }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"L" = ( +"aQ" = ( /obj/structure/extinguisher_cabinet{ pixel_x = -27 }, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"M" = ( +"aR" = ( /obj/structure/table/glass, /obj/item/weapon/storage/firstaid/fire{ pixel_x = 5; @@ -224,329 +259,339 @@ /obj/item/weapon/storage/firstaid/toxin, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"N" = ( +"aS" = ( /obj/structure/chair{ dir = 1 }, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"O" = ( +"aT" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aU" = ( /obj/structure/table/glass, /obj/item/weapon/storage/firstaid/brute{ pixel_x = 5; pixel_y = 5 }, /obj/item/weapon/storage/firstaid/brute, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"P" = ( +"aV" = ( /obj/structure/extinguisher_cabinet{ pixel_y = -32 }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"Q" = ( +"aW" = ( /obj/structure/chair, /turf/open/floor/plasteel/black, /area/shuttle/escape) -"R" = ( +"aX" = ( /obj/machinery/sleeper{ icon_state = "sleeper-open"; dir = 1 }, /turf/open/floor/plasteel/white, /area/shuttle/escape) -"S" = ( +"aY" = ( /obj/structure/table/glass, /obj/item/weapon/defibrillator/loaded, /turf/open/floor/plasteel/white, /area/shuttle/escape) (1,1,1) = {" -a -a -c -c -d -c -d -d -d -d -d -c -a -a +aa +aa +ab +ab +ac +ab +ac +ac +ac +ac +ac +ab +aa +aa "} (2,1,1) = {" -a -c -i -p -l -d -z -F -F -F -z -i -c -a +aa +ab +ah +aq +ak +ac +aB +aH +aH +aH +aB +ah +ab +aa "} (3,1,1) = {" -a -c -j -q -k -r -A -A -A -A -A -N -c -a +aa +ab +ai +ar +aj +as +aC +aC +aC +aC +aC +aS +ab +aa "} (4,1,1) = {" -a -d -k -k -k -c -B -B -D -A -A -N -c -a +aa +ac +aj +aj +av +ab +aD +aD +aL +aC +aC +aS +ab +aa "} (5,1,1) = {" -a -d -k -k -u -c -C -C -I -A -A -N -c -a +aa +ac +aj +aj +aw +ab +aE +aE +aM +aC +aC +aS +ab +aa "} (6,1,1) = {" -a -c -l -k -l -c -D -G -D -A -A -N -i -c +aa +ab +ak +aj +ak +ab +aF +aI +aL +aC +aC +aT +ah +ab "} (7,1,1) = {" -a -c -c -r -d -c -A -A -A -A -A -A -z -c +aa +ab +ab +as +ac +ab +aC +aC +aC +aC +aC +aC +aB +ab "} (8,1,1) = {" -a -c -m -s -s -d -z -A -A -A -A -A -P -c +aa +ab +al +at +at +ac +aB +aC +aC +aC +aC +aC +aV +ab "} (9,1,1) = {" -a -c -m -s -s -x -A -A -J -K -A -A -Q -d +aa +ab +al +at +at +az +aC +aC +aN +aP +aC +aC +aW +ac "} (10,1,1) = {" -a -c -m -s -s -d -A -A -J -K -A -A -Q -d +aa +ab +am +at +at +ac +aC +aC +aN +aP +aC +aC +aW +ac "} (11,1,1) = {" -a -c -m -s -v -c -A -A -J -K -A -A -Q -d +aa +ab +al +at +ax +ab +aC +aC +aN +aP +aC +aC +aW +ac "} (12,1,1) = {" -a -c -m -s -w -c -A -A -J -K -A -A -z -c +aa +ab +al +at +ay +ab +aC +aC +aO +aP +aC +aC +aB +ab "} (13,1,1) = {" -c -c -c -c -c -i -A -A -c -c -y -d -c -c +ab +ab +ab +ab +ab +ah +aC +aC +ah +ab +aA +ac +ab +ab "} (14,1,1) = {" -c -e -n -g -g -y -A -A -y -L -g -g -R -c +ab +ad +an +af +af +aA +aC +aC +aA +aQ +af +af +aX +ab "} (15,1,1) = {" -c -f -g -g -g -y -A -A -y -g -g -g -g -c +ab +ae +af +af +af +aA +aC +aC +aA +af +af +af +af +ab "} (16,1,1) = {" -c -g -g -g -c -c -E -E -c -c -M -O -S -c +ab +af +ao +af +ab +ab +aG +aG +ab +ab +aR +aU +aY +ab "} (17,1,1) = {" -c -c -c -c -c -c -A -A -c -c -c -c -c -c +ab +ab +ab +ab +ab +ab +aC +aJ +ab +ab +ab +ab +ab +ab "} (18,1,1) = {" -c -h -o -t -c -c -E -H -c -c -h -o -t -c +ab +ag +ap +au +ab +ab +aG +aK +ab +ab +ag +ap +au +ab "} diff --git a/_maps/shuttles/emergency_box.dmm b/_maps/shuttles/emergency_box.dmm index 051259ad30..b795c51469 100644 --- a/_maps/shuttles/emergency_box.dmm +++ b/_maps/shuttles/emergency_box.dmm @@ -22,7 +22,7 @@ /area/shuttle/escape) "af" = ( /obj/structure/table, -/obj/item/weapon/storage/firstaid/fire, +/obj/machinery/recharger, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "ag" = ( @@ -42,6 +42,7 @@ pixel_y = 3 }, /obj/item/weapon/crowbar, +/obj/item/weapon/storage/firstaid/fire, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "aj" = ( @@ -104,6 +105,7 @@ pixel_x = 6; pixel_y = -24 }, +/obj/machinery/light, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "au" = ( @@ -149,6 +151,9 @@ pixel_x = 6; pixel_y = 24 }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "aC" = ( @@ -179,6 +184,10 @@ pixel_x = -24; pixel_y = -6 }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) "aG" = ( @@ -196,7 +205,7 @@ name = "Emergency Shuttle Airlock"; req_access_txt = "2" }, -/turf/open/floor/plating, +/turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) "aJ" = ( /obj/structure/chair{ @@ -235,8 +244,8 @@ name = "Emergency Shuttle Airlock" }, /obj/docking_port/mobile/emergency{ - timid = 1; - name = "Box emergency shuttle" + name = "Box emergency shuttle"; + timid = 0 }, /turf/open/floor/plating, /area/shuttle/escape) @@ -252,6 +261,9 @@ pixel_x = 27; pixel_y = 0 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "aS" = ( @@ -345,6 +357,9 @@ pixel_x = 27; pixel_y = 0 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "bf" = ( @@ -375,6 +390,54 @@ /obj/structure/shuttle/engine/propulsion, /turf/open/floor/plating/airless, /area/shuttle/escape) +"bl" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bm" = ( +/obj/structure/table, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bn" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"bo" = ( +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"bp" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"bq" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"br" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"bs" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) (1,1,1) = {" aa @@ -410,16 +473,16 @@ aA aF aG ak -an +bn aL aL aL aL aL -an +bo ak bb -bb +bq bf ak ak @@ -491,7 +554,7 @@ aT an ak bc -bb +br bg bi bk @@ -505,14 +568,14 @@ ak aB an aK -aM -an +bm an an an an an an +bp az ak ak @@ -539,7 +602,7 @@ aS an ac aD -aC +bs aD bi bk @@ -599,7 +662,7 @@ ak ak ak aE -aC +bl aC aC aR diff --git a/_maps/shuttles/emergency_clown.dmm b/_maps/shuttles/emergency_clown.dmm index f8f5cf58a0..29c415d521 100644 --- a/_maps/shuttles/emergency_clown.dmm +++ b/_maps/shuttles/emergency_clown.dmm @@ -1,35 +1,35 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( +"aa" = ( /turf/open/space, /area/space) -"b" = ( +"ab" = ( /turf/closed/wall/mineral/titanium, /area/shuttle/escape) -"c" = ( +"ac" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/escape) -"d" = ( +"ad" = ( /turf/open/floor/mineral/titanium, /turf/closed/wall/mineral/titanium/interior, /area/shuttle/escape) -"e" = ( +"ae" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /turf/open/floor/noslip, /area/shuttle/escape) -"f" = ( +"af" = ( /obj/structure/chair{ dir = 1 }, /turf/open/floor/bluespace, /area/shuttle/escape) -"g" = ( +"ag" = ( /obj/machinery/computer/emergency_shuttle, /turf/open/floor/bluespace, /area/shuttle/escape) -"h" = ( +"ah" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/regular{ pixel_x = 2; @@ -38,35 +38,35 @@ /obj/item/weapon/crowbar, /turf/open/floor/noslip, /area/shuttle/escape) -"i" = ( +"ai" = ( /obj/machinery/computer/atmos_alert, /turf/open/floor/noslip, /area/shuttle/escape) -"j" = ( +"aj" = ( /obj/structure/chair{ dir = 8 }, /turf/open/floor/bluespace, /area/shuttle/escape) -"k" = ( +"ak" = ( /obj/item/toy/snappop/phoenix, /turf/open/floor/bluespace, /area/shuttle/escape) -"l" = ( +"al" = ( /obj/structure/chair{ dir = 4 }, /turf/open/floor/bluespace, /area/shuttle/escape) -"m" = ( +"am" = ( /obj/machinery/computer/security, /turf/open/floor/noslip, /area/shuttle/escape) -"n" = ( +"an" = ( /obj/machinery/computer/crew, /turf/open/floor/noslip, /area/shuttle/escape) -"o" = ( +"ao" = ( /obj/structure/chair{ dir = 8 }, @@ -76,7 +76,7 @@ }, /turf/open/floor/bluespace, /area/shuttle/escape) -"p" = ( +"ap" = ( /obj/item/device/radio/intercom{ name = "Station Intercom (General)"; pixel_x = 0; @@ -85,33 +85,44 @@ /obj/item/toy/snappop/phoenix, /turf/open/floor/bluespace, /area/shuttle/escape) -"q" = ( +"aq" = ( +/obj/item/toy/snappop/phoenix, +/obj/machinery/light, +/turf/open/floor/bluespace, +/area/shuttle/escape) +"ar" = ( /obj/machinery/computer/communications, /turf/open/floor/noslip, /area/shuttle/escape) -"r" = ( +"as" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Premium Lounge"; req_access_txt = "0" }, /turf/open/floor/bluespace, /area/shuttle/escape) -"s" = ( +"at" = ( /obj/machinery/status_display, /turf/closed/wall/mineral/titanium, /area/shuttle/escape) -"t" = ( +"au" = ( /turf/open/chasm/straight_down/lava_land_surface/normal_air, /area/shuttle/escape) -"u" = ( +"av" = ( +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/noslip, /area/shuttle/escape) -"v" = ( +"aw" = ( +/turf/open/floor/noslip, +/area/shuttle/escape) +"ax" = ( /obj/structure/closet/emcloset, /obj/item/toy/sword, /turf/open/floor/noslip, /area/shuttle/escape) -"w" = ( +"ay" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /obj/item/weapon/storage/firstaid/regular{ @@ -121,43 +132,58 @@ /obj/item/weapon/crowbar, /turf/open/floor/noslip, /area/shuttle/escape) -"x" = ( +"az" = ( /obj/item/weapon/greentext/quiet{ anchored = 1 }, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) -"y" = ( +"aA" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Greentext"; req_access_txt = "0" }, /turf/open/floor/bluespace, /area/shuttle/escape) -"z" = ( +"aB" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/noslip, +/area/shuttle/escape) +"aC" = ( /obj/structure/chair, /turf/open/floor/noslip, /area/shuttle/escape) -"A" = ( +"aD" = ( /obj/structure/chair{ dir = 4 }, /turf/open/floor/noslip, /area/shuttle/escape) -"B" = ( +"aE" = ( /obj/structure/table, /obj/item/device/multitool/ai_detect, /turf/open/floor/noslip, /area/shuttle/escape) -"C" = ( +"aF" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/shuttle/escape) -"D" = ( +"aG" = ( +/obj/structure/table, +/obj/item/toy/sword, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/noslip, +/area/shuttle/escape) +"aH" = ( /obj/structure/table, /obj/item/toy/sword, /turf/open/floor/noslip, /area/shuttle/escape) -"E" = ( +"aI" = ( /obj/machinery/door/airlock/titanium{ name = "Emergency Shuttle Airlock" }, @@ -167,7 +193,14 @@ }, /turf/open/floor/plating, /area/shuttle/escape) -"F" = ( +"aJ" = ( +/obj/item/toy/snappop/phoenix, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/bluespace, +/area/shuttle/escape) +"aK" = ( /obj/structure/extinguisher_cabinet{ pixel_x = -5; pixel_y = 30 @@ -175,20 +208,23 @@ /obj/item/toy/snappop/phoenix, /turf/open/floor/bluespace, /area/shuttle/escape) -"G" = ( +"aL" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 27; pixel_y = 0 }, /obj/item/toy/snappop/phoenix, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/bluespace, /area/shuttle/escape) -"H" = ( +"aM" = ( /obj/structure/bed, /obj/item/weapon/bedsheet/random, /turf/open/floor/noslip, /area/shuttle/escape) -"I" = ( +"aN" = ( /obj/structure/window/reinforced{ dir = 4 }, @@ -196,7 +232,7 @@ /obj/item/weapon/bedsheet/random, /turf/open/floor/noslip, /area/shuttle/escape) -"J" = ( +"aO" = ( /obj/structure/window/reinforced{ dir = 8 }, @@ -204,7 +240,7 @@ /obj/item/weapon/bedsheet/random, /turf/open/floor/noslip, /area/shuttle/escape) -"K" = ( +"aP" = ( /obj/structure/bed, /obj/item/weapon/bedsheet/random, /obj/structure/window/reinforced{ @@ -212,13 +248,18 @@ }, /turf/open/floor/noslip, /area/shuttle/escape) -"L" = ( +"aQ" = ( /obj/machinery/door/airlock/titanium{ name = "Emergency Shuttle Airlock" }, /turf/open/floor/plating, /area/shuttle/escape) -"M" = ( +"aR" = ( +/obj/item/toy/snappop/phoenix, +/obj/machinery/light/small, +/turf/open/floor/bluespace, +/area/shuttle/escape) +"aS" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 0; pixel_y = -30 @@ -226,36 +267,56 @@ /obj/item/toy/snappop/phoenix, /turf/open/floor/bluespace, /area/shuttle/escape) -"N" = ( +"aT" = ( /obj/machinery/door/airlock/titanium{ name = "Emergency Shuttle Cargo" }, /turf/open/floor/bluespace, /area/shuttle/escape) -"O" = ( +"aU" = ( /obj/machinery/door/airlock/glass{ name = "Emergency Shuttle Infirmary" }, /turf/open/floor/bluespace, /area/shuttle/escape) -"P" = ( +"aV" = ( /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"Q" = ( +"aW" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 27; pixel_y = 0 }, /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"R" = ( +"aX" = ( /obj/machinery/sleeper{ icon_state = "sleeper-open"; dir = 8 }, /turf/open/floor/noslip, /area/shuttle/escape) -"S" = ( +"aY" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/bananium, +/area/shuttle/escape) +"aZ" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/bananium, +/area/shuttle/escape) +"ba" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/noslip, +/area/shuttle/escape) +"bb" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /obj/item/weapon/storage/firstaid/regular{ @@ -267,301 +328,304 @@ pixel_x = 27; pixel_y = 0 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/noslip, /area/shuttle/escape) -"T" = ( +"bc" = ( /obj/structure/closet/crate/trashcart{ desc = "A heavy, metal trashcart with wheels. Feel free to hop in at any time!" }, /obj/item/toy/sword, /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"U" = ( +"bd" = ( /obj/machinery/vending/autodrobe{ extended_inventory = 1; scan_id = 0 }, /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"V" = ( +"be" = ( /obj/machinery/vending/clothing{ extended_inventory = 1 }, /turf/open/floor/mineral/bananium, /area/shuttle/escape) -"W" = ( +"bf" = ( /obj/structure/window/reinforced{ dir = 1 }, /obj/structure/shuttle/engine/heater, /turf/open/floor/plating/airless, /area/shuttle/escape) -"X" = ( +"bg" = ( /obj/structure/shuttle/engine/propulsion, /turf/open/floor/plating/airless, /area/shuttle/escape) (1,1,1) = {" -a -a -a -a -b -b -b -b -b -E -b -c -c -c -b -L -b -L -b -b -b -a +aa +aa +aa +aa +ab +ab +ab +ab +ab +aI +ab +ac +ac +ac +ab +aQ +ab +aQ +ab +ab +ab +aa "} (2,1,1) = {" -a -b -b -b -b -t -t -t -b -k -H -H -H -H -H -k -b -P -P -T -b -b +aa +ab +ab +ab +ab +au +au +au +ab +aJ +aM +aM +aM +aM +aM +aR +ab +aV +aY +bc +ab +ab "} (3,1,1) = {" -b -d -i -n -b -t -x -t -b -F -k -k -k -k -k -M -b -P -P -T -W -X +ab +ad +ai +an +ab +au +az +au +ab +aK +ak +ak +ak +ak +ak +aS +ab +aV +aV +bc +bf +bg "} (4,1,1) = {" -c -e -j -o -b -t -t -t -b -k -I -I -I -I -I -k -N -P -P -U -W -X +ac +ae +aj +ao +ab +au +au +au +ab +ak +aN +aN +aN +aN +aN +ak +aT +aV +aV +bd +bf +bg "} (5,1,1) = {" -c -f -k -p -b -c -y -c -C -k -J -J -J -J -J -k -b -Q -P -V -W -X +ac +af +ak +ap +ab +ac +aA +ac +aF +ak +aO +aO +aO +aO +aO +ak +ab +aW +aZ +be +bf +bg "} (6,1,1) = {" -c -g -k -k -b -u -k -z -D -k -k -k -k -k -k -k -s -b -b -b -W -X +ac +ag +ak +aq +ab +av +ak +aC +aG +ak +ak +ak +ak +ak +ak +aq +at +ab +ab +ab +bf +bg "} (7,1,1) = {" -c -f -k -k -r -k -k -A -D -k -I -I -I -I -I -k -c -v -u -v -W -X +ac +af +ak +ak +as +ak +ak +aD +aH +ak +aN +aN +aN +aN +aN +ak +ac +ax +ba +ax +bf +bg "} (8,1,1) = {" -c -h -l -l -s -u -k -B -D -k -K -J -J -J -J -k -O -u -u -u -W -X +ac +ah +al +al +at +aw +ak +aE +aH +ak +aP +aO +aO +aO +aO +ak +aU +aw +aw +aw +bf +bg "} (9,1,1) = {" -b -d -m -q -b -v -k -k -k -k -k -k -k -k -k -k -c -u -u -u -W -X +ab +ad +am +ar +ab +ax +ak +ak +ak +ak +ak +ak +ak +ak +ak +ak +ac +aw +aw +aw +bf +bg "} (10,1,1) = {" -a -b -b -b -b -w -u -u -u -G -H -H -H -H -H -G -c -R -S -R -b -b +aa +ab +ab +ab +ab +ay +aB +aw +aw +aL +aM +aM +aM +aM +aM +aL +ac +aX +bb +aX +ab +ab "} (11,1,1) = {" -a -a -a -a -b -c -b -c -b -b -b -c -c -c -b -b -b -c -b -c -b -a +aa +aa +aa +aa +ab +ac +ab +ac +ab +ab +ab +ac +ac +ac +ab +ab +ab +ac +ab +ac +ab +aa "} diff --git a/_maps/shuttles/emergency_cramped.dmm b/_maps/shuttles/emergency_cramped.dmm index 081b67e319..f998b1cc55 100644 --- a/_maps/shuttles/emergency_cramped.dmm +++ b/_maps/shuttles/emergency_cramped.dmm @@ -85,13 +85,13 @@ lootcount = 8; name = "8maintenance loot spawner" }, -/turf/open/floor/plasteel, /obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, /area/shuttle/escape) "p" = ( /obj/structure/closet/crate/secure/loot, -/turf/open/floor/plasteel, /obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, /area/shuttle/escape) "q" = ( /obj/machinery/door/airlock/titanium{ @@ -102,8 +102,11 @@ "r" = ( /obj/structure/closet/crate/secure/weapon, /obj/effect/spawner/lootdrop/armory_contraband, -/turf/open/floor/plasteel, /obj/effect/turf_decal/bot, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel, /area/shuttle/escape) "s" = ( /obj/structure/chair{ @@ -125,6 +128,19 @@ /obj/structure/shuttle/engine/propulsion, /turf/open/floor/plating/airless, /area/shuttle/escape) +"v" = ( +/obj/structure/closet/emcloset, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"w" = ( +/obj/structure/closet/crate/secure/weapon, +/obj/effect/spawner/lootdrop/armory_contraband, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) (1,1,1) = {" a @@ -178,14 +194,14 @@ u b f i -m +v o o o p p r -r +w m t u diff --git a/_maps/shuttles/emergency_delta.dmm b/_maps/shuttles/emergency_delta.dmm index 194e81f755..e6bb387c04 100644 --- a/_maps/shuttles/emergency_delta.dmm +++ b/_maps/shuttles/emergency_delta.dmm @@ -1,160 +1,1722 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/obj/structure/shuttle/engine/propulsion{tag = "icon-propulsion (NORTH)";icon_state = "propulsion";dir = 1},/turf/open/floor/plating,/obj/effect/turf_decal/stripes/line{dir = 1},/area/shuttle/escape) -"ac" = (/turf/closed/wall/mineral/plastitanium,/area/shuttle/escape) -"ad" = (/obj/structure/window/reinforced,/obj/structure/shuttle/engine/heater{tag = "icon-heater (NORTH)";icon_state = "heater";dir = 1},/turf/open/floor/plating,/obj/effect/turf_decal/stripes/line{dir = 1},/area/shuttle/escape) -"ae" = (/turf/closed/wall/mineral/titanium/nodiagonal,/area/shuttle/escape) -"af" = (/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"ag" = (/obj/structure/window/shuttle,/obj/structure/grille,/turf/open/floor/plating,/area/shuttle/escape) -"ah" = (/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";name = "emergency lifejacket"},/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";name = "emergency lifejacket"},/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";name = "emergency lifejacket"},/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";name = "emergency lifejacket"},/obj/item/clothing/suit/hazardvest{desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks.";name = "emergency lifejacket"},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/weapon/tank/internals/emergency_oxygen/double{pixel_x = 3},/obj/item/clothing/mask/breath{pixel_x = -3;pixel_y = -3},/obj/item/clothing/mask/breath{pixel_x = -3;pixel_y = -3},/obj/item/clothing/mask/breath{pixel_x = -3;pixel_y = -3},/obj/item/clothing/mask/breath{pixel_x = -3;pixel_y = -3},/obj/item/clothing/mask/breath{pixel_x = -3;pixel_y = -3},/obj/item/clothing/head/hardhat/orange{name = "protective hat";pixel_y = 9},/obj/item/clothing/head/hardhat/orange{name = "protective hat";pixel_y = 9},/obj/item/clothing/head/hardhat/orange{name = "protective hat";pixel_y = 9},/obj/item/clothing/head/hardhat/orange{name = "protective hat";pixel_y = 9},/obj/item/clothing/head/hardhat/orange{name = "protective hat";pixel_y = 9},/obj/structure/closet/crate/internals,/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"ai" = (/turf/open/floor/plasteel/neutral/side{dir = 1},/area/shuttle/escape) -"aj" = (/obj/item/weapon/defibrillator/loaded,/obj/structure/table/reinforced,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"ak" = (/obj/machinery/computer/operating,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"al" = (/obj/structure/table/optable,/obj/item/weapon/surgical_drapes,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"am" = (/obj/item/weapon/scalpel{pixel_y = 12},/obj/item/weapon/circular_saw,/obj/item/weapon/retractor{pixel_x = 4},/obj/item/weapon/hemostat{pixel_x = -4},/obj/item/clothing/gloves/color/latex,/obj/item/clothing/mask/surgical,/obj/structure/table/reinforced,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"an" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21";layer = 4.1;pixel_x = -3;pixel_y = 3},/turf/open/floor/plasteel/neutral/side{dir = 8;heat_capacity = 1e+006},/area/shuttle/escape) -"ao" = (/turf/open/floor/plasteel/neutral,/area/shuttle/escape) -"ap" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21";layer = 4.1;pixel_x = -3;pixel_y = 3},/turf/open/floor/plasteel/neutral/side{dir = 4},/area/shuttle/escape) -"aq" = (/obj/machinery/status_display,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"ar" = (/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{pixel_x = 6;pixel_y = 0},/obj/item/weapon/reagent_containers/glass/bottle/charcoal{pixel_x = -3},/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{pixel_x = -3;pixel_y = 8},/obj/item/weapon/reagent_containers/glass/bottle/charcoal{pixel_x = 6;pixel_y = 8},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = 3;pixel_y = -2},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = 4;pixel_y = 1},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = -2;pixel_y = 5},/obj/item/weapon/reagent_containers/syringe/epinephrine{pixel_x = 2;pixel_y = 8},/obj/structure/table/reinforced,/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"as" = (/obj/structure/chair/office/light{dir = 1},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"at" = (/obj/item/device/radio/intercom{name = "Station Intercom";pixel_x = 26;pixel_y = 58},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"au" = (/obj/structure/sink{dir = 4;pixel_x = 11},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"av" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"aw" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"ax" = (/obj/structure/flora/ausbushes/grassybush,/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/brflowers,/obj/structure/flora/ausbushes/leafybush,/obj/structure/window/shuttle,/turf/open/floor/grass,/area/shuttle/escape) -"ay" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/whiteblue/side{dir = 1},/area/shuttle/escape) -"az" = (/obj/structure/chair/office/light{dir = 8},/turf/open/floor/plasteel/whiteblue/side{tag = "icon-whiteblue (NORTH)";icon_state = "whiteblue";dir = 1},/area/shuttle/escape) -"aA" = (/turf/open/floor/plasteel/whiteblue/side{tag = "icon-whiteblue (NORTH)";icon_state = "whiteblue";dir = 1},/area/shuttle/escape) -"aB" = (/obj/item/weapon/storage/firstaid/toxin,/obj/item/weapon/storage/firstaid/o2{pixel_x = 3;pixel_y = 3},/obj/structure/table/reinforced,/turf/open/floor/plasteel/whiteblue/side{dir = 5},/area/shuttle/escape) -"aC" = (/obj/machinery/ai_status_display,/turf/closed/wall/shuttle/smooth/nodiagonal,/area/shuttle/escape) -"aD" = (/obj/machinery/status_display,/turf/closed/wall/shuttle/smooth/nodiagonal,/area/shuttle/escape) -"aE" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/delivery,/area/shuttle/escape) -"aF" = (/obj/machinery/door/airlock/glass_medical{id_tag = null;name = "Escape Shuttle Infirmary";req_access_txt = "0"},/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 8},/area/shuttle/escape) -"aG" = (/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2;pixel_y = 3},/obj/structure/table/reinforced,/turf/open/floor/plasteel/whiteblue/side{dir = 4},/area/shuttle/escape) -"aH" = (/obj/structure/chair{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom";pixel_x = -26;pixel_y = 0},/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"aI" = (/obj/structure/flora/ausbushes/grassybush,/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/ywflowers,/obj/structure/flora/ausbushes/genericbush,/obj/structure/window/shuttle,/turf/open/floor/grass,/area/shuttle/escape) -"aJ" = (/obj/machinery/shower{dir = 8;icon_state = "shower";name = "emergency shower"},/turf/open/floor/plasteel/whiteblue/side{baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface;dir = 4;tag = "icon-whiteblue (EAST)"},/area/shuttle/escape) -"aK" = (/obj/structure/extinguisher_cabinet,/turf/closed/wall/shuttle/smooth/nodiagonal,/area/shuttle/escape) -"aL" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/turf/open/floor/plasteel/whiteblue/side,/area/shuttle/escape) -"aM" = (/turf/open/floor/plasteel/whiteblue/side,/area/shuttle/escape) -"aN" = (/obj/structure/bed/roller,/obj/machinery/iv_drip,/obj/structure/extinguisher_cabinet{pixel_x = 26},/turf/open/floor/plasteel/whiteblue/side{dir = 6},/area/shuttle/escape) -"aO" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Airlock";req_access_txt = "0"},/turf/open/floor/plasteel/white,/obj/effect/turf_decal/stripes/line{dir = 8},/area/shuttle/escape) -"aP" = (/obj/structure/sign/bluecross_2,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"aQ" = (/obj/machinery/sleeper{icon_state = "sleeper-open";dir = 4},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"aR" = (/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"aS" = (/obj/machinery/sleeper{icon_state = "sleeper-open";dir = 8},/turf/open/floor/plasteel/cmo,/area/shuttle/escape) -"aT" = (/obj/structure/sign/nanotrasen,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"aU" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"aV" = (/obj/machinery/door/airlock/glass_medical{id_tag = null;name = "Escape Shuttle Infirmary";req_access_txt = "0"},/turf/open/floor/plasteel{tag = "icon-plasteel_warn_side (EAST)"},/obj/effect/turf_decal/stripes/line{dir = 2},/area/shuttle/escape) -"aW" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Airlock"},/obj/docking_port/mobile/emergency{dheight = 0;dwidth = 11;height = 18;name = "Delta emergency shuttle";timid = 1;width = 30;preferred_direction = 2;port_angle = 90},/turf/open/floor/plating,/area/shuttle/escape) -"aX" = (/obj/structure/flora/ausbushes/grassybush,/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/ppflowers,/obj/structure/flora/ausbushes/sunnybush,/obj/structure/window/shuttle,/turf/open/floor/grass,/area/shuttle/escape) -"aY" = (/obj/structure/extinguisher_cabinet{pixel_x = -26},/obj/machinery/shieldgen,/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"aZ" = (/obj/structure/rack,/obj/item/weapon/storage/toolbox/electrical{pixel_x = -3;pixel_y = 1},/obj/item/weapon/storage/toolbox/mechanical{pixel_x = 0;pixel_y = -1},/obj/item/weapon/storage/toolbox/emergency{pixel_x = 3;pixel_y = -5},/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"ba" = (/obj/structure/reagent_dispensers/fueltank,/obj/item/device/radio/intercom{name = "Station Intercom";pixel_x = -26;pixel_y = 0},/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"bb" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 9},/area/shuttle/escape) -"bc" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 5},/area/shuttle/escape) -"bd" = (/obj/structure/closet/crate/medical{name = "medical crate"},/obj/item/weapon/storage/firstaid/regular,/obj/item/weapon/storage/firstaid/o2{pixel_x = 3;pixel_y = 3},/obj/item/weapon/storage/firstaid/toxin{pixel_x = -4;pixel_y = 3},/obj/item/device/healthanalyzer{pixel_x = 3;pixel_y = 3},/obj/item/weapon/lazarus_injector,/mob/living/simple_animal/bot/medbot{name = "\improper emergency medibot";pixel_x = -3;pixel_y = 2},/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"be" = (/obj/structure/flora/ausbushes/grassybush,/obj/structure/flora/ausbushes/lavendergrass,/obj/structure/flora/ausbushes/ywflowers,/obj/structure/flora/ausbushes/fernybush,/obj/structure/window/shuttle,/turf/open/floor/grass,/area/shuttle/escape) -"bf" = (/obj/structure/reagent_dispensers/watertank,/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"bg" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 8},/area/shuttle/escape) -"bh" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 4},/area/shuttle/escape) -"bi" = (/obj/structure/closet/crate{name = "emergency supplies crate"},/obj/item/weapon/storage/toolbox/emergency,/obj/item/weapon/storage/toolbox/emergency,/obj/item/device/flashlight/flare{pixel_x = 3;pixel_y = 3},/obj/item/device/flashlight/flare{pixel_x = -6;pixel_y = -2},/obj/item/weapon/crowbar,/obj/item/weapon/wrench,/obj/item/device/radio,/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"bj" = (/obj/machinery/vending/wallmed{name = "Emergency NanoMed";pixel_x = 0;pixel_y = 0;req_access_txt = "0";use_power = 0},/turf/closed/wall/shuttle/smooth/nodiagonal,/area/shuttle/escape) -"bk" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Cargo"},/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 8},/area/shuttle/escape) -"bl" = (/obj/structure/rack,/obj/item/clothing/suit/fire/firefighter,/obj/item/weapon/tank/internals/oxygen/red,/obj/item/clothing/mask/gas,/obj/item/clothing/head/hardhat/red,/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"bm" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 10},/area/shuttle/escape) -"bn" = (/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 6},/area/shuttle/escape) -"bo" = (/turf/open/floor/plasteel/neutral/side,/area/shuttle/escape) -"bp" = (/obj/machinery/flasher{id = "shuttleflash";pixel_y = -26},/turf/open/floor/plasteel/neutral/side,/area/shuttle/escape) -"bq" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/weapon/folder/yellow,/obj/item/weapon/pen,/obj/item/hand_labeler_refill,/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"br" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel,/obj/effect/turf_decal/delivery,/area/shuttle/escape) -"bs" = (/obj/structure/table,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"bt" = (/obj/machinery/door/airlock/glass_security{name = "Holding Area";req_access_txt = "2"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bu" = (/obj/machinery/door/airlock/glass_command{name = "Cockpit";req_access_txt = "19"},/turf/open/floor/plasteel{tag = "icon-plasteel_warn_side (EAST)"},/obj/effect/turf_decal/stripes/line{dir = 2},/area/shuttle/escape) -"bv" = (/obj/machinery/door/airlock/shuttle{name = "Emergency Shuttle Airlock";req_access_txt = "2"},/turf/open/floor/plasteel/white,/obj/effect/turf_decal/stripes/line{dir = 8},/area/shuttle/escape) -"bw" = (/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bx" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"by" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bz" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21";layer = 4.1},/obj/machinery/button/flasher{id = "shuttleflash";pixel_x = -26;pixel_y = 24},/turf/open/floor/plasteel/red/corner{dir = 1},/area/shuttle/escape) -"bA" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21";layer = 4.1},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/shuttle/escape) -"bB" = (/obj/structure/table,/obj/item/weapon/clipboard,/obj/item/toy/figure/ninja,/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"bC" = (/obj/structure/chair,/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"bD" = (/obj/structure/chair,/obj/machinery/status_display{pixel_y = 32},/turf/open/floor/plasteel,/obj/effect/turf_decal/bot,/area/shuttle/escape) -"bE" = (/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bF" = (/turf/open/floor/plasteel/red/corner{dir = 1},/area/shuttle/escape) -"bG" = (/obj/structure/extinguisher_cabinet{pixel_x = 26},/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/shuttle/escape) -"bH" = (/turf/open/floor/plasteel,/area/shuttle/escape) -"bI" = (/turf/open/floor/plasteel/neutral/corner,/area/shuttle/escape) -"bJ" = (/obj/item/device/radio/intercom{name = "Station Intercom";pixel_x = 0;pixel_y = 58},/turf/open/floor/plasteel/neutral/side,/area/shuttle/escape) -"bK" = (/turf/open/floor/plasteel/neutral/corner{dir = 8},/area/shuttle/escape) -"bL" = (/obj/machinery/door/airlock/external{name = "Emergency Recovery Airlock"},/turf/open/floor/plasteel,/obj/effect/turf_decal/stripes/line{dir = 8},/area/shuttle/escape) -"bM" = (/obj/structure/chair{dir = 4},/obj/machinery/status_display{pixel_x = -32},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bN" = (/obj/structure/chair{dir = 8},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bO" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/lockbox/loyalty,/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bP" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/turf/open/floor/plasteel/red/corner{dir = 8},/area/shuttle/escape) -"bQ" = (/obj/structure/fireaxecabinet{pixel_x = 32},/turf/open/floor/plasteel/neutral/corner,/area/shuttle/escape) -"bR" = (/obj/machinery/door/airlock/external{name = "Emergency Recovery Airlock"},/turf/open/floor/plasteel{tag = "icon-plasteel_warn_side (EAST)"},/obj/effect/turf_decal/stripes/line{dir = 2},/area/shuttle/escape) -"bS" = (/turf/open/floor/plasteel/neutral/corner{dir = 4},/area/shuttle/escape) -"bT" = (/turf/open/floor/plasteel/neutral/corner{dir = 1},/area/shuttle/escape) -"bU" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bV" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/zipties,/obj/item/device/radio/intercom{name = "Station Intercom";pixel_x = 0;pixel_y = -26},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"bW" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/red/corner{dir = 8},/area/shuttle/escape) -"bX" = (/turf/open/floor/plasteel/blue/side,/area/shuttle/escape) -"bY" = (/obj/machinery/door/airlock/command{name = "Emergency Recovery Airlock";req_access = null;req_access_txt = "19"},/turf/open/floor/plasteel{tag = "icon-plasteel_warn_side (NORTH)"},/obj/effect/turf_decal/stripes/line{dir = 8},/area/shuttle/escape) -"bZ" = (/obj/machinery/suit_storage_unit/standard_unit,/turf/open/floor/plasteel,/obj/effect/turf_decal/delivery,/area/shuttle/escape) -"ca" = (/obj/structure/table/reinforced,/obj/machinery/recharger,/turf/open/floor/plasteel/vault{dir = 4},/area/shuttle/escape) -"cb" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-21";layer = 4.1;pixel_x = -3;pixel_y = 3},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)";icon_state = "vault";dir = 5},/area/shuttle/escape) -"cc" = (/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)";icon_state = "vault";dir = 5},/area/shuttle/escape) -"cd" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/fancy/donut_box,/turf/open/floor/plasteel/vault{dir = 4},/area/shuttle/escape) -"ce" = (/obj/machinery/computer/security,/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (NORTHWEST)";icon_state = "darkred";dir = 9},/area/shuttle/escape) -"cf" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)";icon_state = "vault";dir = 5},/area/shuttle/escape) -"cg" = (/obj/item/device/radio/intercom{name = "Station Intercom";pixel_x = 26;pixel_y = 58},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)";icon_state = "vault";dir = 5},/area/shuttle/escape) -"ch" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel/vault{tag = "icon-vault (NORTHEAST)";icon_state = "vault";dir = 5},/area/shuttle/escape) -"ci" = (/obj/machinery/computer/station_alert,/turf/open/floor/plasteel/darkyellow/side{tag = "icon-darkyellow (NORTHEAST)";icon_state = "darkyellow";dir = 5},/area/shuttle/escape) -"cj" = (/obj/machinery/computer/secure_data,/turf/open/floor/plasteel/darkred/side{tag = "icon-darkred (SOUTHWEST)";icon_state = "darkred";dir = 10},/area/shuttle/escape) -"ck" = (/obj/structure/chair/office/dark{dir = 8},/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cl" = (/obj/structure/chair/office/dark,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cm" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cn" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/blue,/obj/item/weapon/pen,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"co" = (/obj/structure/chair/office/dark{dir = 4},/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cp" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/plasteel/darkyellow/side{tag = "icon-darkyellow (SOUTHEAST)";icon_state = "darkyellow";dir = 6},/area/shuttle/escape) -"cq" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin,/obj/item/weapon/pen,/turf/open/floor/plasteel/vault{dir = 4},/area/shuttle/escape) -"cr" = (/obj/structure/table/reinforced,/obj/item/weapon/folder/red,/obj/item/weapon/restraints/handcuffs,/obj/item/device/assembly/flash/handheld,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cs" = (/obj/machinery/computer/crew,/turf/open/floor/plasteel/darkblue/side,/area/shuttle/escape) -"ct" = (/obj/machinery/computer/med_data,/turf/open/floor/plasteel/darkblue/side{dir = 6},/area/shuttle/escape) -"cu" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/plasteel/darkblue/side{dir = 10},/area/shuttle/escape) -"cv" = (/obj/machinery/computer/communications,/turf/open/floor/plasteel/darkblue/side,/area/shuttle/escape) -"cw" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/toolbox/mechanical,/turf/open/floor/plasteel/vault,/area/shuttle/escape) -"cx" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/item/weapon/stock_parts/cell/high,/turf/open/floor/plasteel/vault{dir = 4},/area/shuttle/escape) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/open/space, +/area/space) +"ab" = ( +/obj/structure/shuttle/engine/propulsion{ + tag = "icon-propulsion (NORTH)"; + icon_state = "propulsion"; + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"ac" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/escape) +"ad" = ( +/obj/structure/window/reinforced, +/obj/structure/shuttle/engine/heater{ + tag = "icon-heater (NORTH)"; + icon_state = "heater"; + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"ae" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/escape) +"af" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"ag" = ( +/obj/structure/window/shuttle, +/obj/structure/grille, +/turf/open/floor/plating, +/area/shuttle/escape) +"ah" = ( +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/structure/closet/crate/internals, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"ai" = ( +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/shuttle/escape) +"aj" = ( +/obj/item/weapon/defibrillator/loaded, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"ak" = ( +/obj/machinery/computer/operating, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"al" = ( +/obj/structure/table/optable, +/obj/item/weapon/surgical_drapes, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"am" = ( +/obj/item/weapon/scalpel{ + pixel_y = 12 + }, +/obj/item/weapon/circular_saw, +/obj/item/weapon/retractor{ + pixel_x = 4 + }, +/obj/item/weapon/hemostat{ + pixel_x = -4 + }, +/obj/item/clothing/gloves/color/latex, +/obj/item/clothing/mask/surgical, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"an" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8; + heat_capacity = 1e+006 + }, +/area/shuttle/escape) +"ao" = ( +/turf/open/floor/plasteel/neutral, +/area/shuttle/escape) +"ap" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 4 + }, +/area/shuttle/escape) +"aq" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"ar" = ( +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = 6; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = -3 + }, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 3; + pixel_y = -2 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 4; + pixel_y = 1 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 2; + pixel_y = 8 + }, +/obj/structure/table/reinforced, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"as" = ( +/obj/structure/chair/office/light{ + dir = 1 + }, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"at" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom"; + pixel_x = 26; + pixel_y = 58 + }, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"au" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"av" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"aw" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"ax" = ( +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/brflowers, +/obj/structure/flora/ausbushes/leafybush, +/obj/structure/window/shuttle, +/turf/open/floor/grass, +/area/shuttle/escape) +"ay" = ( +/obj/machinery/computer/med_data, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 1 + }, +/area/shuttle/escape) +"az" = ( +/obj/structure/chair/office/light{ + dir = 8 + }, +/turf/open/floor/plasteel/whiteblue/side{ + tag = "icon-whiteblue (NORTH)"; + icon_state = "whiteblue"; + dir = 1 + }, +/area/shuttle/escape) +"aA" = ( +/turf/open/floor/plasteel/whiteblue/side{ + tag = "icon-whiteblue (NORTH)"; + icon_state = "whiteblue"; + dir = 1 + }, +/area/shuttle/escape) +"aB" = ( +/obj/item/weapon/storage/firstaid/toxin, +/obj/item/weapon/storage/firstaid/o2{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 5 + }, +/area/shuttle/escape) +"aC" = ( +/obj/machinery/ai_status_display, +/turf/closed/wall/shuttle/smooth/nodiagonal, +/area/shuttle/escape) +"aD" = ( +/obj/machinery/status_display, +/turf/closed/wall/shuttle/smooth/nodiagonal, +/area/shuttle/escape) +"aE" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"aF" = ( +/obj/machinery/door/airlock/glass_medical{ + id_tag = null; + name = "Escape Shuttle Infirmary"; + req_access_txt = "0" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"aG" = ( +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 4 + }, +/area/shuttle/escape) +"aH" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/item/device/radio/intercom{ + name = "Station Intercom"; + pixel_x = -26; + pixel_y = 0 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"aI" = ( +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/genericbush, +/obj/structure/window/shuttle, +/turf/open/floor/grass, +/area/shuttle/escape) +"aJ" = ( +/obj/machinery/shower{ + dir = 8; + icon_state = "shower"; + name = "emergency shower" + }, +/turf/open/floor/plasteel/whiteblue/side{ + baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface; + dir = 4; + tag = "icon-whiteblue (EAST)" + }, +/area/shuttle/escape) +"aK" = ( +/obj/structure/extinguisher_cabinet, +/turf/closed/wall/shuttle/smooth/nodiagonal, +/area/shuttle/escape) +"aL" = ( +/obj/structure/bed/roller, +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/whiteblue/side, +/area/shuttle/escape) +"aM" = ( +/turf/open/floor/plasteel/whiteblue/side, +/area/shuttle/escape) +"aN" = ( +/obj/structure/bed/roller, +/obj/machinery/iv_drip, +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/whiteblue/side{ + dir = 6 + }, +/area/shuttle/escape) +"aO" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Emergency Shuttle Airlock"; + req_access_txt = "0" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/shuttle/escape) +"aP" = ( +/obj/structure/sign/bluecross_2, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"aQ" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 4 + }, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"aR" = ( +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"aS" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 8 + }, +/turf/open/floor/plasteel/cmo, +/area/shuttle/escape) +"aT" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"aU" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"aV" = ( +/obj/machinery/door/airlock/glass_medical{ + id_tag = null; + name = "Escape Shuttle Infirmary"; + req_access_txt = "0" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/shuttle/escape) +"aW" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Emergency Shuttle Airlock" + }, +/obj/docking_port/mobile/emergency{ + dheight = 0; + dwidth = 11; + height = 18; + name = "Delta emergency shuttle"; + width = 30; + preferred_direction = 2; + port_angle = 90 + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"aX" = ( +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/ppflowers, +/obj/structure/flora/ausbushes/sunnybush, +/obj/structure/window/shuttle, +/turf/open/floor/grass, +/area/shuttle/escape) +"aY" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -26 + }, +/obj/machinery/shieldgen, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"aZ" = ( +/obj/structure/rack, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = -3; + pixel_y = 1 + }, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = 0; + pixel_y = -1 + }, +/obj/item/weapon/storage/toolbox/emergency{ + pixel_x = 3; + pixel_y = -5 + }, +/obj/effect/turf_decal/bot, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"ba" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/item/device/radio/intercom{ + name = "Station Intercom"; + pixel_x = -26; + pixel_y = 0 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bd" = ( +/obj/structure/closet/crate/medical{ + name = "medical crate" + }, +/obj/item/weapon/storage/firstaid/regular, +/obj/item/weapon/storage/firstaid/o2{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/storage/firstaid/toxin{ + pixel_x = -4; + pixel_y = 3 + }, +/obj/item/device/healthanalyzer{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/weapon/lazarus_injector, +/obj/effect/turf_decal/bot, +/mob/living/simple_animal/bot/medbot{ + name = "\improper emergency medibot"; + pixel_x = -3; + pixel_y = 2 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"be" = ( +/obj/structure/flora/ausbushes/grassybush, +/obj/structure/flora/ausbushes/lavendergrass, +/obj/structure/flora/ausbushes/ywflowers, +/obj/structure/flora/ausbushes/fernybush, +/obj/structure/window/shuttle, +/turf/open/floor/grass, +/area/shuttle/escape) +"bf" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bg" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bh" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bi" = ( +/obj/structure/closet/crate{ + name = "emergency supplies crate" + }, +/obj/item/weapon/storage/toolbox/emergency, +/obj/item/weapon/storage/toolbox/emergency, +/obj/item/device/flashlight/flare{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/device/flashlight/flare{ + pixel_x = -6; + pixel_y = -2 + }, +/obj/item/weapon/crowbar, +/obj/item/weapon/wrench, +/obj/item/device/radio, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bj" = ( +/obj/machinery/vending/wallmed{ + name = "Emergency NanoMed"; + pixel_x = 0; + pixel_y = 0; + req_access_txt = "0"; + use_power = 0 + }, +/turf/closed/wall/shuttle/smooth/nodiagonal, +/area/shuttle/escape) +"bk" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Emergency Shuttle Cargo" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bl" = ( +/obj/structure/rack, +/obj/item/clothing/suit/fire/firefighter, +/obj/item/weapon/tank/internals/oxygen/red, +/obj/item/clothing/mask/gas, +/obj/item/clothing/head/hardhat/red, +/obj/effect/turf_decal/bot, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bm" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bn" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bo" = ( +/turf/open/floor/plasteel/neutral/side, +/area/shuttle/escape) +"bp" = ( +/obj/machinery/flasher{ + id = "shuttleflash"; + pixel_y = -26 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/neutral/side, +/area/shuttle/escape) +"bq" = ( +/obj/structure/table, +/obj/item/weapon/clipboard, +/obj/item/weapon/folder/yellow, +/obj/item/weapon/pen, +/obj/item/hand_labeler_refill, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"br" = ( +/obj/machinery/recharge_station, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bs" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/weapon/stock_parts/cell/high, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bt" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Holding Area"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bu" = ( +/obj/machinery/door/airlock/glass_command{ + name = "Cockpit"; + req_access_txt = "19" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/shuttle/escape) +"bv" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Emergency Shuttle Airlock"; + req_access_txt = "2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/shuttle/escape) +"bw" = ( +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bx" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"by" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bz" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/obj/machinery/button/flasher{ + id = "shuttleflash"; + pixel_x = -26; + pixel_y = 24 + }, +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/shuttle/escape) +"bA" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 4 + }, +/area/shuttle/escape) +"bB" = ( +/obj/structure/table, +/obj/item/weapon/clipboard, +/obj/item/toy/figure/ninja, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bC" = ( +/obj/structure/chair, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bD" = ( +/obj/structure/chair, +/obj/machinery/status_display{ + pixel_y = 32 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bE" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bF" = ( +/turf/open/floor/plasteel/red/corner{ + dir = 1 + }, +/area/shuttle/escape) +"bG" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/neutral/corner{ + dir = 4 + }, +/area/shuttle/escape) +"bH" = ( +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bI" = ( +/turf/open/floor/plasteel/neutral/corner, +/area/shuttle/escape) +"bJ" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom"; + pixel_x = 0; + pixel_y = 58 + }, +/turf/open/floor/plasteel/neutral/side, +/area/shuttle/escape) +"bK" = ( +/turf/open/floor/plasteel/neutral/corner{ + dir = 8 + }, +/area/shuttle/escape) +"bL" = ( +/obj/machinery/door/airlock/external{ + name = "Emergency Recovery Airlock" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"bM" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/status_display{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bN" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bO" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/lockbox/loyalty, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bP" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/shuttle/escape) +"bQ" = ( +/obj/structure/fireaxecabinet{ + pixel_x = 32 + }, +/turf/open/floor/plasteel/neutral/corner, +/area/shuttle/escape) +"bR" = ( +/obj/machinery/door/airlock/external{ + name = "Emergency Recovery Airlock" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (EAST)" + }, +/area/shuttle/escape) +"bS" = ( +/turf/open/floor/plasteel/neutral/corner{ + dir = 4 + }, +/area/shuttle/escape) +"bT" = ( +/turf/open/floor/plasteel/neutral/corner{ + dir = 1 + }, +/area/shuttle/escape) +"bU" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bV" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/zipties, +/obj/item/device/radio/intercom{ + name = "Station Intercom"; + pixel_x = 0; + pixel_y = -26 + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bW" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/red/corner{ + dir = 8 + }, +/area/shuttle/escape) +"bX" = ( +/turf/open/floor/plasteel/blue/side, +/area/shuttle/escape) +"bY" = ( +/obj/machinery/door/airlock/command{ + name = "Emergency Recovery Airlock"; + req_access = null; + req_access_txt = "19" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel{ + tag = "icon-plasteel_warn_side (NORTH)" + }, +/area/shuttle/escape) +"bZ" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"ca" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/shuttle/escape) +"cb" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/vault{ + tag = "icon-vault (NORTHEAST)"; + icon_state = "vault"; + dir = 5 + }, +/area/shuttle/escape) +"cc" = ( +/turf/open/floor/plasteel/vault{ + tag = "icon-vault (NORTHEAST)"; + icon_state = "vault"; + dir = 5 + }, +/area/shuttle/escape) +"cd" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/shuttle/escape) +"ce" = ( +/obj/machinery/computer/security, +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (NORTHWEST)"; + icon_state = "darkred"; + dir = 9 + }, +/area/shuttle/escape) +"cf" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel/vault{ + tag = "icon-vault (NORTHEAST)"; + icon_state = "vault"; + dir = 5 + }, +/area/shuttle/escape) +"cg" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom"; + pixel_x = 26; + pixel_y = 58 + }, +/turf/open/floor/plasteel/vault{ + tag = "icon-vault (NORTHEAST)"; + icon_state = "vault"; + dir = 5 + }, +/area/shuttle/escape) +"ch" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/plasteel/vault{ + tag = "icon-vault (NORTHEAST)"; + icon_state = "vault"; + dir = 5 + }, +/area/shuttle/escape) +"ci" = ( +/obj/machinery/computer/station_alert, +/turf/open/floor/plasteel/darkyellow/side{ + tag = "icon-darkyellow (NORTHEAST)"; + icon_state = "darkyellow"; + dir = 5 + }, +/area/shuttle/escape) +"cj" = ( +/obj/machinery/computer/secure_data, +/turf/open/floor/plasteel/darkred/side{ + tag = "icon-darkred (SOUTHWEST)"; + icon_state = "darkred"; + dir = 10 + }, +/area/shuttle/escape) +"ck" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"cl" = ( +/obj/structure/chair/office/dark, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"cm" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"cn" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/blue, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"co" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"cp" = ( +/obj/machinery/computer/atmos_alert, +/turf/open/floor/plasteel/darkyellow/side{ + tag = "icon-darkyellow (SOUTHEAST)"; + icon_state = "darkyellow"; + dir = 6 + }, +/area/shuttle/escape) +"cq" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/shuttle/escape) +"cr" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/red, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/flash/handheld, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"cs" = ( +/obj/machinery/computer/crew, +/turf/open/floor/plasteel/darkblue/side, +/area/shuttle/escape) +"ct" = ( +/obj/machinery/computer/med_data, +/turf/open/floor/plasteel/darkblue/side{ + dir = 6 + }, +/area/shuttle/escape) +"cu" = ( +/obj/machinery/computer/emergency_shuttle, +/turf/open/floor/plasteel/darkblue/side{ + dir = 10 + }, +/area/shuttle/escape) +"cv" = ( +/obj/machinery/computer/communications, +/turf/open/floor/plasteel/darkblue/side, +/area/shuttle/escape) +"cw" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/toolbox/mechanical, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"cx" = ( +/obj/structure/table/reinforced, +/obj/machinery/cell_charger, +/obj/item/weapon/stock_parts/cell/high, +/turf/open/floor/plasteel/vault{ + dir = 4 + }, +/area/shuttle/escape) +"cy" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/shuttle/escape) +"cz" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 1 + }, +/area/shuttle/escape) +"cA" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8; + heat_capacity = 1e+006 + }, +/area/shuttle/escape) +"cB" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/bot, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"cC" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"cD" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"cE" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/neutral/side{ + dir = 8; + heat_capacity = 1e+006 + }, +/area/shuttle/escape) +"cF" = ( +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"cG" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"cH" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/shuttle/escape) (1,1,1) = {" -aaabababacababacababacababacabababaa -acadadadacadadacadadacadadacadadadac -aeafagagafafagafagagafagafafagagafae -afahaiaiaiaiaiaiaiaiaiahafajakalamaf -afanaoaoaoaoaoaoaoaoaoapaqarasatauag -agavaoawaxavaoawaxavaoawagayazaAaBag -agavaoawaCavaoawaDavaoaEaFaEaoaoaGag -afaHaoawaIavaoawaIavaoaEaFaEaoaoaJag -afanaoawaKavaoawaKavaoawagaLaMaMaNaf -aOaEaoawaxavaoawaxavaoawaPaQaRaRaSaf -aTaUaoaoaoaoaoaoaoaoaoawafafaVaVaPaT -aWaEaoawaXavaoawaXavaoawafaYaEaEaZaf -afanaoawaKavaoawaCavaoawafbabbbcbdag -agavaoawbeavaoawbeavaoawafbfbgbhbiag -agavaoawaDavaoawbjavaoaEbkaEbgbhaUag -agavaoawaXavaoawaXavaoaEbkaEbgbhaUag -afanaoaoaoaoaoaoaoaoaoapafblbmbnahag -aOaEbobobobobpboboboboahafbqbrbrbsaf -afafbtafagafafagbubuagafafafafafafaf -bvbwbwbxbxbyafbzaiaibAaTbBbCbDbCahag -afbEbwbwbwbwbtbFaoaobGafbHbHbIbJbKbL -afbMbwbwbNbOagbPaoaobQafbRaebSaibTbL -afbUbUbUbUbVaTbWbXbXbIbYaUafbZbZbZag -afafagafafafafaqbubuaqafafafafagafaf -aaaaaaaaafcacbcccccccccbcdafaaaaaaaa -aaaaaaaaaTcecfcccccccgchciaTaaaaaaaa -aaaaaaaaagcjckclcmcnclcocpagaaaaaaaa -aaaaaaaaafcqcrcsctcucvcwcxafaaaaaaaa -aaaaaaaaafafagagagagagagafafaaaaaaaa +aa +ac +ae +af +af +ag +ag +af +af +aO +aT +aW +af +ag +ag +ag +af +aO +af +bv +af +af +af +af +aa +aa +aa +aa +aa +"} +(2,1,1) = {" +ab +ad +af +ah +cA +av +av +aH +an +aE +aU +aE +an +av +av +av +cE +aE +af +bw +bE +bM +bU +af +aa +aa +aa +aa +aa +"} +(3,1,1) = {" +ab +ad +ag +ai +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +bo +bt +bw +bw +bw +bU +ag +aa +aa +aa +aa +aa +"} +(4,1,1) = {" +ab +ad +ag +ai +ao +aw +aw +aw +aw +aw +ao +aw +aw +aw +aw +aw +ao +bo +af +bx +bw +bw +cG +af +aa +aa +aa +aa +aa +"} +(5,1,1) = {" +ac +ac +af +ai +ao +ax +aC +aI +aK +ax +ao +aX +aK +be +aD +aX +ao +bo +ag +bx +bw +bN +bU +af +af +aT +ag +af +af +"} +(6,1,1) = {" +ab +ad +af +cy +ao +av +av +av +av +av +ao +av +av +av +av +av +ao +bo +af +by +bw +bO +bV +af +ca +ce +cj +cq +af +"} +(7,1,1) = {" +ab +ad +ag +ai +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +bp +af +af +bt +ag +aT +af +cb +cf +ck +cr +ag +"} +(8,1,1) = {" +ac +ac +af +cz +ao +aw +aw +aw +aw +aw +ao +aw +aw +aw +aw +aw +ao +bo +ag +bz +bF +bP +bW +aq +cc +cc +cl +cs +ag +"} +(9,1,1) = {" +ab +ad +ag +ai +ao +ax +aD +aI +aK +ax +ao +aX +aC +be +bj +aX +ao +bo +bu +ai +ao +ao +bX +bu +cc +cc +cm +ct +ag +"} +(10,1,1) = {" +ab +ad +ag +ai +ao +av +av +av +av +av +ao +av +av +av +av +av +ao +bo +bu +ai +ao +ao +bX +bu +cc +cc +cn +cu +ag +"} +(11,1,1) = {" +ac +ac +af +ai +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +bo +ag +bA +bG +bQ +bI +aq +cc +cg +cl +cv +ag +"} +(12,1,1) = {" +ab +ad +ag +ah +ap +aw +aE +aE +aw +aw +cB +aw +aw +aw +aE +aE +ap +ah +af +aT +af +af +bY +af +cb +ch +co +cw +ag +"} +(13,1,1) = {" +ab +ad +af +af +aq +ag +aF +aF +ag +aP +af +af +af +af +bk +bk +af +af +af +bB +bH +bR +cH +af +cd +ci +cp +cx +af +"} +(14,1,1) = {" +ac +ac +af +aj +ar +ay +aE +aE +aL +aQ +af +aY +ba +bf +aE +aE +bl +bq +af +bC +cF +ae +af +af +af +aT +ag +af +af +"} +(15,1,1) = {" +ab +ad +ag +ak +as +az +ao +ao +aM +aR +aV +aE +bb +bg +bg +bg +bm +br +af +bD +bI +bS +bZ +af +aa +aa +aa +aa +aa +"} +(16,1,1) = {" +ab +ad +ag +al +at +aA +ao +ao +aM +aR +aV +aE +bc +bh +bh +bh +bn +br +af +bC +bJ +ai +bZ +ag +aa +aa +aa +aa +aa +"} +(17,1,1) = {" +ab +ad +af +am +au +aB +aG +aJ +aN +aS +aP +aZ +bd +bi +cC +cD +ah +bs +af +ah +bK +bT +bZ +af +aa +aa +aa +aa +aa +"} +(18,1,1) = {" +aa +ac +ae +af +ag +ag +ag +ag +af +af +aT +af +ag +ag +ag +ag +ag +af +af +ag +bL +bL +ag +af +aa +aa +aa +aa +aa "} diff --git a/_maps/shuttles/emergency_goon.dmm b/_maps/shuttles/emergency_goon.dmm index 6baf8dd790..511a833e82 100644 --- a/_maps/shuttles/emergency_goon.dmm +++ b/_maps/shuttles/emergency_goon.dmm @@ -136,6 +136,9 @@ "y" = ( /obj/structure/table/reinforced, /obj/item/weapon/storage/toolbox/emergency, +/obj/machinery/light/small{ + dir = 1 + }, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "z" = ( @@ -226,6 +229,7 @@ "L" = ( /obj/structure/table/reinforced, /obj/item/weapon/storage/firstaid/regular, +/obj/machinery/light/small, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "M" = ( @@ -259,6 +263,47 @@ icon_state = "swall0" }, /area/shuttle/escape) +"Q" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"R" = ( +/obj/machinery/light/small, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"S" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"T" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"U" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"V" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) (1,1,1) = {" a @@ -304,9 +349,9 @@ d l r r -r +R d -H +T J H d @@ -355,11 +400,11 @@ a d d s -o +Q d m d -o +V s d d @@ -434,9 +479,9 @@ a d t s -s +S o -s +U s t d diff --git a/_maps/shuttles/emergency_luxury.dmm b/_maps/shuttles/emergency_luxury.dmm index 60b93f573e..c638427edd 100644 --- a/_maps/shuttles/emergency_luxury.dmm +++ b/_maps/shuttles/emergency_luxury.dmm @@ -81,12 +81,14 @@ }, /area/shuttle/escape) "an" = ( +/obj/machinery/light/small, /turf/open/floor/plating{ tag = "icon-wood-broken2"; icon_state = "wood-broken2" }, /area/shuttle/escape) "ao" = ( +/obj/machinery/light/small, /turf/open/floor/plating{ tag = "icon-wood-broken6"; icon_state = "wood-broken6" @@ -328,6 +330,73 @@ "bh" = ( /turf/open/floor/plating/beach/coastline_b, /area/shuttle/escape) +"bi" = ( +/obj/machinery/light, +/turf/open/floor/mineral/gold, +/area/shuttle/escape) +"bj" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/gold, +/area/shuttle/escape) +"bk" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/gold, +/area/shuttle/escape) +"bl" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + tag = "icon-plant-10"; + icon_state = "plant-10" + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/gold, +/area/shuttle/escape) +"bm" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/gold, +/area/shuttle/escape) +"bn" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/gold, +/area/shuttle/escape) +"bo" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/gold, +/area/shuttle/escape) +"bp" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/light, +/turf/open/floor/mineral/gold, +/area/shuttle/escape) +"bq" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + layer = 4.1; + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/light, +/turf/open/floor/mineral/gold, +/area/shuttle/escape) (1,1,1) = {" aa @@ -382,12 +451,12 @@ ab ag an ab -ak -aj +bl aj aj aj aj +bn aj aj ak @@ -422,7 +491,7 @@ bd aj aj bg -bg +bp ab "} (7,1,1) = {" @@ -541,7 +610,7 @@ ab ad aj aj -aj +bj aj au aF @@ -637,7 +706,7 @@ ab ae aj aj -aj +bk aj au aL @@ -646,7 +715,7 @@ bd aj aj bg -bg +bq ab "} (21,1,1) = {" @@ -684,7 +753,7 @@ ab (23,1,1) = {" ab aj -aj +bi ab aj av @@ -702,12 +771,12 @@ ab al aj aq -aj +bm aw aM bc be -aj +bo aj aj ak diff --git a/_maps/shuttles/emergency_meta.dmm b/_maps/shuttles/emergency_meta.dmm index 539200a575..87fe19c7ef 100644 --- a/_maps/shuttles/emergency_meta.dmm +++ b/_maps/shuttles/emergency_meta.dmm @@ -38,7 +38,6 @@ dwidth = 5; height = 14; name = "Meta emergency shuttle"; - timid = 1; width = 25 }, /turf/open/floor/mineral/titanium/blue, @@ -106,6 +105,9 @@ pixel_y = 27 }, /obj/structure/chair, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "at" = ( @@ -191,7 +193,7 @@ /area/shuttle/escape) "au" = ( /obj/structure/shuttle/engine/propulsion{ - dir = 4 + dir = 8 }, /turf/open/floor/plating/airless, /area/shuttle/escape) @@ -220,6 +222,9 @@ /obj/item/weapon/restraints/handcuffs{ pixel_y = 3 }, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "az" = ( @@ -356,6 +361,7 @@ /obj/structure/chair{ dir = 1 }, +/obj/machinery/light, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "aT" = ( @@ -363,6 +369,9 @@ /obj/item/stack/medical/gauze, /obj/item/stack/medical/bruise_pack, /obj/item/stack/medical/ointment, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "aU" = ( @@ -414,8 +423,8 @@ /obj/machinery/door/airlock/titanium{ name = "Emergency Shuttle Cargo Bay Airlock" }, -/turf/open/floor/plasteel, /obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, /area/shuttle/escape) "bc" = ( /turf/closed/wall/shuttle{ @@ -473,29 +482,32 @@ /obj/item/weapon/weldingtool, /obj/item/weapon/wirecutters, /obj/item/stack/cable_coil, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel, /area/shuttle/escape) "bn" = ( /obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel, /obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, /area/shuttle/escape) "bo" = ( /obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel, /obj/effect/turf_decal/delivery, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel, /area/shuttle/escape) "bp" = ( -/turf/open/floor/plasteel, /obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, /area/shuttle/escape) "bq" = ( /obj/machinery/recharge_station, -/turf/open/floor/plasteel, /obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, /area/shuttle/escape) "br" = ( /turf/closed/wall/shuttle{ @@ -562,10 +574,10 @@ pixel_x = 3; pixel_y = -5 }, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel, /area/shuttle/escape) "bw" = ( /obj/item/weapon/cigbutt, @@ -581,13 +593,17 @@ "bz" = ( /obj/structure/table/optable, /obj/item/weapon/surgical_drapes, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "bA" = ( -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel, /area/shuttle/escape) "bB" = ( /turf/open/space, @@ -700,10 +716,10 @@ /obj/item/clothing/suit/fire/firefighter, /obj/item/clothing/mask/gas, /obj/item/clothing/head/hardhat/red, -/turf/open/floor/plasteel, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel, /area/shuttle/escape) "bN" = ( /obj/machinery/space_heater, @@ -712,8 +728,8 @@ pixel_x = 0; pixel_y = -27 }, -/turf/open/floor/plasteel, /obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, /area/shuttle/escape) "bO" = ( /obj/structure/closet/crate{ @@ -732,8 +748,8 @@ /obj/item/weapon/crowbar, /obj/item/weapon/wrench, /obj/item/device/radio, -/turf/open/floor/plasteel, /obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, /area/shuttle/escape) "bP" = ( /obj/structure/closet/crate/medical{ @@ -753,13 +769,13 @@ pixel_y = 3 }, /obj/item/weapon/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/plasteel, -/obj/effect/turf_decal/bot, /area/shuttle/escape) "bQ" = ( /obj/item/device/radio/intercom{ @@ -769,8 +785,8 @@ pixel_y = -31 }, /obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/plasteel, /obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, /area/shuttle/escape) "bR" = ( /obj/structure/table, @@ -778,8 +794,8 @@ /obj/item/weapon/folder/yellow, /obj/item/weapon/pen, /obj/item/hand_labeler_refill, -/turf/open/floor/plasteel, /obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, /area/shuttle/escape) "bS" = ( /obj/machinery/vending/wallmed{ @@ -797,6 +813,145 @@ "bU" = ( /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) +"bV" = ( +/obj/structure/chair, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bW" = ( +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/structure/closet/crate{ + name = "lifejackets" + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bX" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"bY" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"bZ" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ca" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"cb" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"cc" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/shuttle/escape) +"cd" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) (1,1,1) = {" aa @@ -873,7 +1028,7 @@ aq aQ ad be -be +cc be be bf @@ -901,10 +1056,10 @@ ay aq aq aq -aq +bY aq aW -bU +cb ad by by @@ -929,11 +1084,11 @@ ad (9,1,1) = {" ad ap +bX aq aq aq -aq -aq +bZ ap ad bh @@ -985,14 +1140,14 @@ aq aE ad bi -bs +cd bs bG ad "} (13,1,1) = {" -ac -ar +ad +bV aq aE ac @@ -1094,7 +1249,7 @@ aE ac ar aq -aE +ca ad bm bv @@ -1119,7 +1274,7 @@ bN ad "} (21,1,1) = {" -ac +ad ar aq aE @@ -1168,7 +1323,7 @@ ad "} (24,1,1) = {" ad -at +bW aA at aq diff --git a/_maps/shuttles/emergency_mini.dmm b/_maps/shuttles/emergency_mini.dmm index 8184f664d0..00a7362802 100644 --- a/_maps/shuttles/emergency_mini.dmm +++ b/_maps/shuttles/emergency_mini.dmm @@ -3,7 +3,7 @@ /turf/open/space, /area/space) "b" = ( -/turf/closed/wall/mineral/titanium/overspace, +/turf/closed/wall/mineral/titanium, /area/shuttle/escape) "c" = ( /obj/structure/shuttle/engine/propulsion{ @@ -13,16 +13,6 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "d" = ( -/turf/open/space, -/turf/closed/wall/shuttle{ - icon_state = "swall_f10"; - dir = 2 - }, -/area/shuttle/escape) -"e" = ( -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) -"f" = ( /obj/structure/shuttle/engine/heater{ icon_state = "heater"; dir = 1 @@ -30,13 +20,7 @@ /obj/structure/window/reinforced, /turf/open/floor/plating/airless, /area/shuttle/escape) -"g" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall3"; - dir = 2 - }, -/area/shuttle/escape) -"h" = ( +"e" = ( /obj/item/weapon/storage/firstaid/regular{ pixel_x = 2; pixel_y = 6 @@ -45,34 +29,43 @@ pixel_x = -2; pixel_y = 4 }, +/obj/structure/table, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"i" = ( +"f" = ( /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"j" = ( +"g" = ( /obj/machinery/sleeper{ dir = 8; icon_state = "sleeper-open" }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"k" = ( +"h" = ( /obj/structure/chair{ dir = 4 }, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) -"l" = ( +"i" = ( /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) -"m" = ( +"j" = ( /obj/structure/chair{ dir = 8 }, /turf/open/floor/mineral/plastitanium/brig, /area/shuttle/escape) -"n" = ( +"k" = ( +/obj/machinery/light/small{ + tag = "icon-bulb1 (WEST)"; + icon_state = "bulb1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"l" = ( /obj/machinery/vending/wallmed{ name = "Emergency NanoMed"; pixel_x = 28; @@ -80,18 +73,30 @@ }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"o" = ( -/obj/effect/spawner/structure/window/reinforced, +"m" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/light/small{ + tag = "icon-bulb1 (EAST)"; + icon_state = "bulb1"; + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"n" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/escape) -"p" = ( +"o" = ( /obj/machinery/door/airlock/glass_security{ name = "Escape Shuttle Cell"; req_access_txt = "2" }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"q" = ( +"p" = ( /obj/machinery/door/airlock/glass_medical{ id_tag = null; name = "Escape Shuttle Infirmary"; @@ -99,16 +104,22 @@ }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"r" = ( +"q" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/shuttle/escape) -"s" = ( +"r" = ( /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"t" = ( +"s" = ( /obj/structure/closet/emcloset, /turf/open/floor/mineral/titanium, /area/shuttle/escape) +"t" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) "u" = ( /obj/machinery/door/airlock/titanium{ name = "Emergency Shuttle Airlock" @@ -134,9 +145,15 @@ /turf/open/floor/mineral/titanium, /area/shuttle/escape) "y" = ( -/obj/structure/grille, -/obj/structure/window/shuttle, -/turf/open/floor/plating, +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/light{ + tag = "icon-tube1 (EAST)"; + icon_state = "tube1"; + dir = 4 + }, +/turf/open/floor/mineral/titanium, /area/shuttle/escape) "z" = ( /obj/machinery/vending/wallmed{ @@ -147,10 +164,12 @@ /area/shuttle/escape) "A" = ( /obj/structure/chair{ - dir = 8 + dir = 4 }, -/obj/item/device/radio/intercom{ - pixel_x = 25 +/obj/machinery/light{ + tag = "icon-tube1 (WEST)"; + icon_state = "tube1"; + dir = 8 }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) @@ -184,34 +203,42 @@ /turf/open/floor/mineral/titanium, /area/shuttle/escape) "E" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"F" = ( /turf/closed/wall/shuttle{ icon_state = "swall7"; dir = 2 }, -/area/shuttle/escape) -"F" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall12"; - dir = 2 +/obj/structure/table, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 3 }, +/obj/item/weapon/crowbar, +/obj/item/weapon/extinguisher, +/turf/open/floor/mineral/titanium, /area/shuttle/escape) "G" = ( -/obj/machinery/status_display, +/turf/closed/wall/shuttle{ + icon_state = "swallc1"; + dir = 2 + }, /turf/closed/wall/mineral/titanium, /area/shuttle/escape) "H" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"I" = ( /obj/machinery/door/airlock/glass_command{ name = "Escape Shuttle Cockpit"; req_access_txt = "19" }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"I" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall11"; - dir = 2 - }, -/area/shuttle/escape) "J" = ( /obj/machinery/computer/atmos_alert, /turf/open/floor/mineral/titanium, @@ -236,6 +263,10 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "N" = ( +/turf/closed/wall/shuttle{ + icon_state = "swall12"; + dir = 2 + }, /obj/machinery/computer/security, /turf/open/floor/mineral/titanium, /area/shuttle/escape) @@ -248,33 +279,20 @@ /turf/open/floor/mineral/titanium, /area/shuttle/escape) "Q" = ( -/turf/open/space, -/turf/closed/wall/shuttle{ - icon_state = "swall_f5"; - dir = 2 - }, -/area/shuttle/escape) -"R" = ( -/turf/closed/wall/shuttle{ - icon_state = "swallc1"; - dir = 2 - }, -/area/shuttle/escape) -"S" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/fire, /obj/item/weapon/extinguisher, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"T" = ( +"R" = ( /obj/structure/chair, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"U" = ( +"S" = ( /obj/machinery/computer/emergency_shuttle, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) -"V" = ( +"T" = ( /obj/structure/table, /obj/item/weapon/storage/firstaid/regular{ pixel_x = 2; @@ -283,224 +301,211 @@ /obj/item/weapon/crowbar, /turf/open/floor/mineral/titanium, /area/shuttle/escape) -"W" = ( -/turf/closed/wall/shuttle{ - icon_state = "swallc2"; - dir = 2 - }, -/area/shuttle/escape) -"X" = ( -/turf/open/space, -/turf/closed/wall/shuttle{ - icon_state = "swall_f9"; - dir = 2 - }, -/area/shuttle/escape) (1,1,1) = {" a -e -e -e -e -e -e -e -y -y -y -e -e -e -e -e -e -e -e -e +b +b +b +b +b +b +b +n +n +n +b +b +b +b +b +b +b +b +b a "} (2,1,1) = {" +b +b e -e -h -i -i -q -s +k +f +p +r v v v v v -s +r v v D -e +b J O -r -e +q +b "} (3,1,1) = {" c +d f -i -i -i -y -s -s -s -s -s -s -s -s -s -i -e +f +f +n +r +r +r +r +r +r +r +r +r +f +b K K -S -y +Q +n "} (4,1,1) = {" c -f -j +d +g +l +g n -j +r +w +w +w y -s w w w -w -w -w -w -s -i -G -s -s -T -y +r +f +H +t +r +R +n "} (5,1,1) = {" c -f -e -e -e -r -s +d +b +b +b +q +t x -y -y +n +n z -y -y +n +n C -s -s -H -s -s -U -y +r +r +I +r +r +S +n "} (6,1,1) = {" c +d +h +h +n f -k -k -y -i -s +r v v v +A v v v -v -s -i -e +r +E +b L -s -T -y +r +R +n "} (7,1,1) = {" c -f -l -l -p -s -s -s -s -s -s -s -s -s -s +d i -e +i +o +r +r +r +r +r +r +r +r +r +r +f +b M M -V -y +T +n "} (8,1,1) = {" -e -e +b +b +j m -m -y -t +n s +r w w w -A -w -s w w -D -e +r +w +w +F +b N P -r -e +q +b "} (9,1,1) = {" a -e -e -e -e -e +b +b +b +b +b u -e -e -y -e -e +b +b +n +b +b B -e -e -e -e -e -e -e +b +b +G +b +b +b +b a "} diff --git a/_maps/shuttles/emergency_pubby.dmm b/_maps/shuttles/emergency_pubby.dmm index 1592ee3359..d73b5563b3 100644 --- a/_maps/shuttles/emergency_pubby.dmm +++ b/_maps/shuttles/emergency_pubby.dmm @@ -1,71 +1,635 @@ -"a" = (/turf/open/space,/area/space) -"b" = (/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"c" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/escape) -"d" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2;pixel_y = 3},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"e" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"f" = (/obj/structure/table,/obj/machinery/recharger,/obj/structure/extinguisher_cabinet{pixel_x = 27;pixel_y = 0},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"g" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"h" = (/obj/structure/chair/comfy/black{tag = "icon-comfychair (NORTH)";icon_state = "comfychair";dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"i" = (/obj/structure/closet,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"j" = (/obj/machinery/recharge_station,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"k" = (/obj/machinery/vending/cola,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"l" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"m" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"n" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"o" = (/obj/machinery/computer/security,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"p" = (/obj/structure/chair,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"q" = (/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"r" = (/obj/structure/extinguisher_cabinet{pixel_x = 27;pixel_y = 0},/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"s" = (/obj/machinery/computer/crew,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"t" = (/obj/machinery/computer/communications,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"u" = (/obj/machinery/flasher{id = "shuttle_flasher";pixel_x = -24;pixel_y = 6},/obj/machinery/button/flasher{id = "shuttle_flasher";pixel_x = -24;pixel_y = -6},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"v" = (/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"w" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/escape) -"x" = (/obj/structure/reagent_dispensers/fueltank,/turf/open/floor/mineral/titanium/yellow,/area/shuttle/escape) -"y" = (/obj/structure/sign/nanotrasen,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"z" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Cockpit";req_access_txt = "19"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"A" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"B" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock";req_access_txt = "2"},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"C" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Cargo Hold";req_access_txt = "0"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"D" = (/obj/item/weapon/twohanded/required/kirbyplants{icon_state = "plant-22"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"E" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Brig";req_access_txt = "2"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"F" = (/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"G" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"H" = (/obj/structure/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"I" = (/obj/structure/chair{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"J" = (/turf/open/floor/carpet,/area/shuttle/escape) -"K" = (/obj/structure/chair/comfy/beige,/turf/open/floor/carpet,/area/shuttle/escape) -"L" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"M" = (/obj/structure/chair/comfy/beige{dir = 4},/turf/open/floor/carpet,/area/shuttle/escape) -"N" = (/obj/structure/table/wood/poker,/obj/item/toy/cards/deck,/turf/open/floor/carpet,/area/shuttle/escape) -"O" = (/obj/structure/chair/comfy/beige{dir = 8},/turf/open/floor/carpet,/area/shuttle/escape) -"P" = (/obj/structure/chair/comfy/beige{tag = "icon-comfychair (NORTH)";icon_state = "comfychair";dir = 1},/turf/open/floor/carpet,/area/shuttle/escape) -"Q" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Infirmary"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"R" = (/obj/machinery/sleeper{dir = 4;icon_state = "sleeper-open"},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"S" = (/obj/machinery/vending/medical,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"T" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/obj/docking_port/mobile/emergency{dheight = 0;dir = 8;dwidth = 4;height = 15;name = "Pubby emergency shuttle";port_angle = 90;timid = 1;width = 18},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"U" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2;pixel_y = 3},/obj/item/weapon/crowbar,/obj/structure/sign/nosmoking_2{pixel_x = 32},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"V" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) -"W" = (/obj/structure/table,/obj/item/weapon/defibrillator/loaded,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"X" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/open/space, +/area/space) +"ab" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"ac" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/escape) +"ad" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 3 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"ae" = ( +/obj/machinery/computer/emergency_shuttle, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"af" = ( +/obj/structure/table, +/obj/machinery/recharger, +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"ag" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ah" = ( +/obj/structure/chair/comfy/black{ + tag = "icon-comfychair (NORTH)"; + icon_state = "comfychair"; + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ai" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aj" = ( +/obj/structure/closet, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"ak" = ( +/obj/machinery/recharge_station, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"al" = ( +/obj/machinery/vending/cola, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"am" = ( +/obj/machinery/computer/atmos_alert, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"an" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ao" = ( +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ap" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aq" = ( +/obj/machinery/computer/security, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"ar" = ( +/obj/structure/chair, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"as" = ( +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"at" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"au" = ( +/obj/machinery/computer/crew, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"av" = ( +/obj/machinery/computer/communications, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aw" = ( +/obj/machinery/flasher{ + id = "shuttle_flasher"; + pixel_x = -24; + pixel_y = 6 + }, +/obj/machinery/button/flasher{ + id = "shuttle_flasher"; + pixel_x = -24; + pixel_y = -6 + }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"ax" = ( +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"ay" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"az" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"aA" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"aB" = ( +/obj/machinery/door/airlock/glass{ + name = "Emergency Shuttle Cockpit"; + req_access_txt = "19" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aC" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"aD" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"aE" = ( +/obj/machinery/door/airlock/glass{ + name = "Emergency Shuttle Cargo Hold"; + req_access_txt = "0" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aF" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aG" = ( +/obj/machinery/door/airlock/glass{ + name = "Emergency Shuttle Brig"; + req_access_txt = "2" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aH" = ( +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aI" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aJ" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aK" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aL" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aM" = ( +/turf/open/floor/carpet, +/area/shuttle/escape) +"aN" = ( +/obj/structure/chair/comfy/beige, +/turf/open/floor/carpet, +/area/shuttle/escape) +"aO" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aP" = ( +/obj/structure/chair/comfy/beige{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/shuttle/escape) +"aQ" = ( +/obj/structure/table/wood/poker, +/obj/item/toy/cards/deck, +/turf/open/floor/carpet, +/area/shuttle/escape) +"aR" = ( +/obj/structure/chair/comfy/beige{ + dir = 8 + }, +/turf/open/floor/carpet, +/area/shuttle/escape) +"aS" = ( +/obj/structure/chair/comfy/beige{ + tag = "icon-comfychair (NORTH)"; + icon_state = "comfychair"; + dir = 1 + }, +/turf/open/floor/carpet, +/area/shuttle/escape) +"aT" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aU" = ( +/obj/machinery/door/airlock/glass{ + name = "Emergency Shuttle Infirmary" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aV" = ( +/obj/machinery/sleeper{ + dir = 4; + icon_state = "sleeper-open" + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aW" = ( +/obj/machinery/vending/medical, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aX" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock" + }, +/obj/docking_port/mobile/emergency{ + dheight = 0; + dir = 8; + dwidth = 4; + height = 15; + name = "Pubby emergency shuttle"; + port_angle = 90; + width = 18 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aY" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aZ" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/weapon/crowbar, +/obj/structure/sign/nosmoking_2{ + pixel_x = 32 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"ba" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"bb" = ( +/obj/structure/table, +/obj/item/weapon/defibrillator/loaded, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bc" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/escape) (1,1,1) = {" -aaaaabcccbaaaaa -aaaaabdefbaaaaa -bbbbbbghgbbbbbb -cijkblmgnobpppc -cqqrbsmgntbuvvc -wqqxbyczcybAvvB -bcCcbDgggDbcEcb -bFgggggggggggFb -cGgHIgJKJgHIgLc -cGgHIgMNOgHIgLc -bGgHIgJPJgHIgLb -wFgggggggggggFw -bGggbbcQcbbggLb -wFgLbRFFFSbGgFT -bGgLbFFFGUbGgLb -bVVVbRFFGWbVVVb -bXXXbVVVVVbXXXb -aaaabXXXXXbaaaa +aa +aa +ab +ac +ac +ay +ab +ab +ac +ac +ab +ay +ab +ay +ab +ab +ab +aa +"} +(2,1,1) = {" +aa +aa +ab +aj +as +as +ac +aH +aJ +aJ +aJ +aH +aJ +aH +aJ +ba +bc +aa +"} +(3,1,1) = {" +aa +aa +ab +ak +as +as +aE +ao +ao +ao +ao +ao +ao +ao +ao +ba +bc +aa +"} +(4,1,1) = {" +aa +aa +ab +al +at +az +ac +ao +aK +aK +aK +ao +ao +aO +aO +ba +bc +aa +"} +(5,1,1) = {" +aa +aa +ab +ab +ab +ab +ab +aI +aL +aL +aL +aT +ab +ab +ab +ab +ab +ab +"} +(6,1,1) = {" +ab +ab +ab +am +au +aA +aF +ao +ao +ao +ao +ao +ab +aV +aY +aV +ba +bc +"} +(7,1,1) = {" +ac +ad +ag +an +an +ac +ao +ao +aM +aP +aM +ao +ac +aH +aH +aH +ba +bc +"} +(8,1,1) = {" +ac +ae +ah +ao +ao +aB +ao +ao +aN +aQ +aS +ao +aU +aH +aH +aH +ba +bc +"} +(9,1,1) = {" +ac +af +ai +ap +ap +ac +ao +ao +aM +aR +aM +ao +ac +aH +aJ +aJ +ba +bc +"} +(10,1,1) = {" +ab +ab +ab +aq +av +aA +aF +ao +ao +ao +ao +ao +ab +aW +aZ +bb +ba +bc +"} +(11,1,1) = {" +aa +aa +ab +ab +ab +ab +ab +aI +aK +aK +aK +aT +ab +ab +ab +ab +ab +ab +"} +(12,1,1) = {" +aa +aa +ab +ar +aw +aC +ac +ao +aL +aL +aL +ao +ao +aJ +aJ +ba +bc +aa +"} +(13,1,1) = {" +aa +aa +ab +ar +ax +ax +aG +ao +ao +ao +ao +ao +ao +ao +ao +ba +bc +aa +"} +(14,1,1) = {" +aa +aa +ab +ar +ax +ax +ac +aH +aO +aO +aO +aH +aO +aH +aO +ba +bc +aa +"} +(15,1,1) = {" +aa +aa +ab +ac +ac +aD +ab +ab +ac +ac +ab +ay +ab +aX +ab +ab +ab +aa "} diff --git a/_maps/shuttles/emergency_raven.dmm b/_maps/shuttles/emergency_raven.dmm new file mode 100644 index 0000000000..7bf4708da7 --- /dev/null +++ b/_maps/shuttles/emergency_raven.dmm @@ -0,0 +1,2067 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/open/space, +/obj/machinery/porta_turret/centcomm_shuttle{ + dir = 9 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 8; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"ab" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ac" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/shutters{ + id = "shuttleshutters"; + name = "blast shutters" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"ad" = ( +/turf/open/space, +/area/space) +"ae" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"af" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/fancy/donut_box, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"ag" = ( +/obj/machinery/computer/med_data, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"ah" = ( +/obj/machinery/computer/shuttle, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"ai" = ( +/obj/machinery/computer/communications, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aj" = ( +/obj/machinery/computer/crew, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"ak" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/restraints/handcuffs, +/obj/item/device/assembly/flash, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"al" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel/vault, +/area/shuttle/escape) +"am" = ( +/obj/machinery/computer/security, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"an" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTHWEST)"; + dir = 9 + }, +/area/shuttle/escape) +"ao" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTH)"; + dir = 1 + }, +/area/shuttle/escape) +"ap" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTHEAST)"; + dir = 5 + }, +/area/shuttle/escape) +"aq" = ( +/obj/machinery/computer/station_alert, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"ar" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/escape) +"as" = ( +/obj/structure/table/optable, +/obj/item/weapon/surgical_drapes, +/obj/item/clothing/gloves/color/latex, +/obj/item/clothing/mask/surgical, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 1 + }, +/area/shuttle/escape) +"at" = ( +/obj/machinery/computer/operating, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 1 + }, +/area/shuttle/escape) +"au" = ( +/obj/machinery/computer/secure_data, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"av" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (SOUTHWEST)"; + dir = 10 + }, +/area/shuttle/escape) +"aw" = ( +/turf/open/floor/plasteel/darkblue/side, +/area/shuttle/escape) +"ax" = ( +/turf/open/floor/plasteel/darkblue/corner{ + dir = 8 + }, +/area/shuttle/escape) +"ay" = ( +/turf/open/floor/plasteel/darkblue/corner, +/area/shuttle/escape) +"az" = ( +/obj/structure/chair/office/dark{ + dir = 4 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (SOUTHEAST)"; + dir = 6 + }, +/area/shuttle/escape) +"aA" = ( +/obj/machinery/computer/atmos_alert, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aB" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/scalpel, +/obj/item/weapon/circular_saw, +/obj/item/weapon/retractor, +/obj/item/weapon/hemostat, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 8 + }, +/area/shuttle/escape) +"aC" = ( +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aD" = ( +/obj/structure/chair/office/dark{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aE" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/defibrillator/loaded, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 4 + }, +/area/shuttle/escape) +"aF" = ( +/obj/machinery/door/airlock/hatch{ + name = "Shuttle Bridge Access"; + req_access_txt = "19" + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (WEST)"; + dir = 8 + }, +/area/shuttle/escape) +"aG" = ( +/obj/machinery/door/airlock/hatch{ + name = "Shuttle Bridge Access"; + req_access_txt = "19" + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (EAST)"; + dir = 4 + }, +/area/shuttle/escape) +"aH" = ( +/obj/machinery/shower{ + dir = 4; + icon_state = "shower"; + name = "emergency shower" + }, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 8 + }, +/area/shuttle/escape) +"aI" = ( +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 4 + }, +/area/shuttle/escape) +"aJ" = ( +/obj/machinery/button/flasher{ + id = "shuttleflash"; + pixel_y = -23 + }, +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTH)"; + dir = 1 + }, +/area/shuttle/escape) +"aK" = ( +/turf/open/floor/plasteel/darkblue/corner{ + dir = 1 + }, +/area/shuttle/escape) +"aL" = ( +/turf/open/floor/plasteel/darkblue/corner{ + dir = 4 + }, +/area/shuttle/escape) +"aM" = ( +/turf/open/floor/plasteel/darkblue/side{ + tag = "icon-darkblue (NORTH)"; + dir = 1 + }, +/area/shuttle/escape) +"aN" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 8 + }, +/area/shuttle/escape) +"aO" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 4 + }, +/area/shuttle/escape) +"aP" = ( +/obj/machinery/door/airlock/hatch{ + name = "Shuttle Security Bride Access"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aQ" = ( +/obj/machinery/door/airlock/hatch{ + name = "Shuttle Bridge Access"; + req_access_txt = "19" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aR" = ( +/obj/machinery/door/airlock/hatch{ + name = "Shuttle EVA"; + req_access_txt = "19" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aS" = ( +/turf/open/floor/plasteel/darkpurple/side{ + dir = 8 + }, +/area/shuttle/escape) +"aT" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/firstaid/toxin, +/obj/item/weapon/storage/firstaid/o2{ + pixel_x = 4; + pixel_y = 4 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aU" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/firstaid/fire, +/obj/item/weapon/storage/firstaid/brute{ + pixel_x = 3; + pixel_y = 4 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"aV" = ( +/turf/open/floor/plasteel/darkpurple/side{ + dir = 4 + }, +/area/shuttle/escape) +"aW" = ( +/turf/open/floor/mineral/plastitanium/brig{ + dir = 9; + floor_tile = /obj/item/stack/tile/plasteel; + icon_state = "darkred" + }, +/area/shuttle/escape) +"aX" = ( +/turf/open/floor/mineral/plastitanium/brig{ + dir = 4; + floor_tile = /obj/item/stack/tile/plasteel; + icon_state = "darkred" + }, +/area/shuttle/escape) +"aY" = ( +/obj/machinery/flasher{ + id = "shuttleflash"; + pixel_x = -26; + pixel_y = 0; + pixel_x = 0 + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 8 + }, +/area/shuttle/escape) +"aZ" = ( +/turf/open/floor/plasteel/darkgreen/side{ + dir = 4 + }, +/area/shuttle/escape) +"ba" = ( +/turf/open/floor/plasteel/darkyellow/side{ + dir = 8; + icon_state = "darkyellow"; + tag = "icon-darkyellow (NORTHEAST)" + }, +/area/shuttle/escape) +"bb" = ( +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/structure/closet/crate/internals, +/turf/open/floor/plasteel/darkyellow/side{ + tag = "icon-darkyellow (NORTHEAST)"; + icon_state = "darkyellow"; + dir = 5 + }, +/area/shuttle/escape) +"bc" = ( +/turf/open/floor/mineral/plastitanium/brig{ + dir = 8; + floor_tile = /obj/item/stack/tile/plasteel; + icon_state = "darkred" + }, +/area/shuttle/escape) +"bd" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/brig{ + dir = 4; + floor_tile = /obj/item/stack/tile/plasteel; + icon_state = "darkred" + }, +/area/shuttle/escape) +"be" = ( +/turf/open/floor/plasteel/darkgreen/side{ + dir = 8 + }, +/area/shuttle/escape) +"bf" = ( +/turf/open/floor/plasteel/darkyellow/side{ + dir = 4; + icon_state = "darkyellow"; + tag = "icon-darkyellow (NORTHEAST)" + }, +/area/shuttle/escape) +"bg" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/firstaid, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 8 + }, +/area/shuttle/escape) +"bh" = ( +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"bi" = ( +/obj/structure/bed/roller, +/obj/machinery/iv_drip, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 4 + }, +/area/shuttle/escape) +"bj" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/turf/open/floor/plasteel/darkyellow/side{ + dir = 10; + icon_state = "darkyellow"; + tag = "icon-darkyellow (SOUTHEAST)" + }, +/area/shuttle/escape) +"bk" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/turf/open/floor/plasteel/darkyellow/side{ + tag = "icon-darkyellow (SOUTHEAST)"; + icon_state = "darkyellow"; + dir = 6 + }, +/area/shuttle/escape) +"bl" = ( +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = 6; + pixel_y = 0 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = -3 + }, +/obj/item/weapon/reagent_containers/glass/bottle/epinephrine{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/glass/bottle/charcoal{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 3; + pixel_y = -2 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 4; + pixel_y = 1 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/weapon/reagent_containers/syringe/epinephrine{ + pixel_x = 2; + pixel_y = 8 + }, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 8 + }, +/area/shuttle/escape) +"bm" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 8 + }, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 4 + }, +/area/shuttle/escape) +"bn" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/mineral/plastitanium/brig{ + dir = 4; + floor_tile = /obj/item/stack/tile/plasteel; + icon_state = "darkred" + }, +/area/shuttle/escape) +"bo" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/escape) +"bp" = ( +/mob/living/simple_animal/bot/medbot{ + name = "\improper emergency medibot"; + pixel_x = -3; + pixel_y = 2 + }, +/turf/open/floor/plasteel/darkpurple/side{ + dir = 8 + }, +/area/shuttle/escape) +"bq" = ( +/turf/open/floor/plasteel/darkgreen/corner{ + dir = 4 + }, +/area/shuttle/escape) +"br" = ( +/turf/open/floor/plasteel/darkgreen/side{ + tag = "icon-darkgreen (NORTH)"; + icon_state = "darkgreen"; + dir = 1 + }, +/area/shuttle/escape) +"bs" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"bt" = ( +/turf/open/floor/plasteel/darkpurple/side{ + dir = 1 + }, +/area/shuttle/escape) +"bu" = ( +/turf/open/floor/plasteel/darkpurple/corner{ + dir = 1 + }, +/area/shuttle/escape) +"bv" = ( +/obj/structure/chair/office/dark, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"bw" = ( +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"bx" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/brig{ + dir = 6; + floor_tile = /obj/item/stack/tile/plasteel; + icon_state = "darkred" + }, +/area/shuttle/escape) +"by" = ( +/turf/open/floor/plasteel/darkgreen/corner, +/area/shuttle/escape) +"bz" = ( +/turf/open/floor/plasteel/darkgreen/side, +/area/shuttle/escape) +"bA" = ( +/turf/open/floor/plasteel/darkpurple/side, +/area/shuttle/escape) +"bB" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/paper_bin, +/obj/item/weapon/pen/blue, +/turf/open/floor/plasteel/darkpurple/side, +/area/shuttle/escape) +"bC" = ( +/obj/machinery/computer/med_data, +/turf/open/floor/plasteel/darkpurple/side, +/area/shuttle/escape) +"bD" = ( +/obj/machinery/door/airlock/hatch{ + name = "Shuttle Brig"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"bE" = ( +/obj/docking_port/mobile/emergency{ + dwidth = 14; + height = 18; + name = "Centcomm Raven Battlecruiser"; + timid = 1; + width = 32 + }, +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"bF" = ( +/turf/open/floor/plasteel/darkgreen/side{ + dir = 9; + icon_state = "darkgreen"; + tag = "icon-darkgreen (NORTH)" + }, +/area/shuttle/escape) +"bG" = ( +/turf/open/floor/plasteel/darkgreen/corner{ + dir = 1 + }, +/area/shuttle/escape) +"bH" = ( +/obj/structure/rack, +/obj/item/weapon/storage/toolbox/mechanical{ + pixel_x = 3; + pixel_y = -6 + }, +/obj/item/weapon/storage/toolbox/emergency, +/obj/item/weapon/storage/toolbox/electrical{ + pixel_x = -2; + pixel_y = 5 + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 9; + icon_state = "darkgreen"; + tag = "icon-darkgreen (NORTH)" + }, +/area/shuttle/escape) +"bI" = ( +/obj/structure/rack, +/obj/item/clothing/suit/fire/firefighter, +/obj/item/weapon/tank/internals/oxygen/red, +/obj/item/clothing/mask/gas, +/obj/item/clothing/head/hardhat/red, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 5 + }, +/area/shuttle/escape) +"bJ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"bK" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 8 + }, +/area/shuttle/escape) +"bL" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/darkgreen/side{ + tag = "icon-darkgreen (NORTH)"; + icon_state = "darkgreen"; + dir = 1 + }, +/area/shuttle/escape) +"bM" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/dice/d20, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 10 + }, +/area/shuttle/escape) +"bN" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/plasteel/darkgreen/side, +/area/shuttle/escape) +"bO" = ( +/turf/open/floor/plasteel/darkgreen/corner{ + dir = 8 + }, +/area/shuttle/escape) +"bP" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/darkgreen/side, +/area/shuttle/escape) +"bQ" = ( +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/weapon/tank/internals/emergency_oxygen/double{ + pixel_x = 3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/mask/breath{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/item/clothing/head/hardhat/orange{ + name = "protective hat"; + pixel_y = 9 + }, +/obj/structure/closet/crate/internals, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 6 + }, +/area/shuttle/escape) +"bR" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 8 + }, +/area/shuttle/escape) +"bS" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 4 + }, +/area/shuttle/escape) +"bT" = ( +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 9; + icon_state = "darkgreen"; + tag = "icon-darkgreen (NORTH)" + }, +/area/shuttle/escape) +"bU" = ( +/obj/machinery/recharge_station, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 5 + }, +/area/shuttle/escape) +"bV" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 9; + icon_state = "darkgreen"; + tag = "icon-darkgreen (NORTH)" + }, +/area/shuttle/escape) +"bW" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 5 + }, +/area/shuttle/escape) +"bX" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"bY" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"bZ" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"ca" = ( +/obj/structure/chair, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/floor/plasteel/black, +/area/shuttle/escape) +"cb" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/darkgreen/side{ + tag = "icon-darkgreen (NORTH)"; + icon_state = "darkgreen"; + dir = 1 + }, +/area/shuttle/escape) +"cc" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/darkgreen/side, +/area/shuttle/escape) +"cd" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 10 + }, +/area/shuttle/escape) +"ce" = ( +/obj/item/weapon/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 6 + }, +/area/shuttle/escape) +"cf" = ( +/obj/machinery/door/airlock/glass_titanium{ + name = "Shuttle Engine Room" + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 8 + }, +/area/shuttle/escape) +"cg" = ( +/obj/machinery/door/airlock/glass_titanium{ + name = "Shuttle Engine Room" + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 4 + }, +/area/shuttle/escape) +"ch" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 9; + icon_state = "darkgreen"; + tag = "icon-darkgreen (NORTH)" + }, +/area/shuttle/escape) +"ci" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 5 + }, +/area/shuttle/escape) +"cj" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/darkgreen/corner{ + dir = 8 + }, +/area/shuttle/escape) +"ck" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plasteel/darkgreen/corner, +/area/shuttle/escape) +"cl" = ( +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating, +/area/shuttle/escape) +"cm" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 8 + }, +/area/shuttle/escape) +"cn" = ( +/obj/structure/window/reinforced{ + dir = 4; + pixel_x = 0 + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 4 + }, +/area/shuttle/escape) +"co" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating, +/area/shuttle/escape) +"cp" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 8 + }, +/area/shuttle/escape) +"cq" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4; + pixel_x = 0 + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 4 + }, +/area/shuttle/escape) +"cr" = ( +/turf/open/space, +/obj/machinery/porta_turret/centcomm_shuttle{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"cs" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ct" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cu" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"cv" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"cw" = ( +/turf/open/space, +/obj/machinery/porta_turret/centcomm_shuttle{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"cx" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 8; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"cy" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"cz" = ( +/obj/machinery/button/door{ + id = "shuttleshutters"; + name = "Bridge Blast Shutters"; + pixel_x = 0; + pixel_y = -26; + req_access_txt = "150"; + pixel_x = 0 + }, +/turf/open/floor/plasteel/darkblue/side, +/area/shuttle/escape) +"cA" = ( +/obj/structure/grille, +/obj/machinery/door/poddoor/shutters{ + id = "shuttleshutters"; + name = "blast shutters" + }, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"cB" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cC" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cD" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"cE" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cF" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cG" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cH" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cI" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"cJ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"cK" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"cL" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cM" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cN" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cO" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cP" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cQ" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cR" = ( +/turf/open/space, +/obj/machinery/porta_turret/centcomm_shuttle{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"cS" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cT" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cU" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"cV" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cW" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cX" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cY" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"cZ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"da" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"db" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"dc" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"dd" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"de" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"df" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dg" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dh" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"di" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dj" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dk" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"dl" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"dm" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dn" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"do" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dp" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dq" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"dr" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"ds" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"dt" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"du" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dv" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"dw" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dx" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dy" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dz" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dA" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dB" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"dC" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"dD" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"dE" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dF" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"dG" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"dH" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dI" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dJ" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dK" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dL" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"dM" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dN" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dO" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dP" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dQ" = ( +/turf/open/space, +/obj/machinery/porta_turret/centcomm_shuttle{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"dR" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dS" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dT" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dU" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dV" = ( +/turf/open/space, +/obj/machinery/porta_turret/centcomm_shuttle{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"dW" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dX" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dY" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"dZ" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ea" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"eb" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ec" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ed" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ee" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ef" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"eg" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"eh" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ei" = ( +/turf/open/space, +/obj/machinery/porta_turret/centcomm_shuttle{ + dir = 10 + }, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"ej" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ek" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"el" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"em" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"en" = ( +/turf/open/space, +/obj/machinery/porta_turret/centcomm_shuttle{ + dir = 6 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"eo" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ep" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"eq" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"er" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"es" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"et" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"eu" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ev" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 4; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"ew" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 8; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"ex" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ey" = ( +/turf/closed/wall/mineral/plastitanium/interior, +/area/shuttle/escape) +"ez" = ( +/turf/open/space, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"eA" = ( +/turf/open/space, +/obj/machinery/porta_turret/centcomm_shuttle{ + dir = 5 + }, +/turf/closed/wall/mineral/plastitanium{ + dir = 1; + icon_state = "diagonalWall3" + }, +/area/shuttle/escape) +"eB" = ( +/obj/machinery/flasher{ + id = "shuttleflash"; + pixel_x = 24; + pixel_y = 0 + }, +/turf/open/floor/plasteel/darkgreen/side{ + dir = 4 + }, +/area/shuttle/escape) + +(1,1,1) = {" +aa +cs +ac +ac +cD +ad +aa +cu +cu +cs +cu +cu +bs +cs +bE +cu +cu +cD +ad +aa +bs +cu +bs +cs +cu +cs +cu +ei +ad +ad +aa +ar +"} +(2,1,1) = {" +ab +ae +am +au +cs +cs +ar +aW +bc +bc +bc +bc +bc +bD +bF +bK +bM +cs +ad +cu +bF +be +be +be +be +be +cd +cu +ad +cx +ar +co +"} +(3,1,1) = {" +ac +af +an +av +cs +an +aP +aX +bd +bd +bn +bd +bx +ab +br +aC +bN +cs +cs +cs +br +bZ +ca +aC +bZ +ca +bz +cs +cs +cs +cl +co +"} +(4,1,1) = {" +ac +ag +ao +aw +ar +aJ +ar +cs +cu +cu +cu +cu +cs +ar +br +aC +bz +ar +bT +bo +br +bZ +ca +aC +bZ +ca +bz +ab +ch +ar +cl +co +"} +(5,1,1) = {" +ac +ah +ao +ax +aF +aK +aQ +be +be +be +be +be +be +be +bG +aC +bO +bR +bG +bR +bG +aC +aC +aC +bZ +ca +bO +bR +bG +cj +cm +cp +"} +(6,1,1) = {" +ac +ai +ao +ay +aG +aL +aQ +eB +aZ +aZ +aZ +bq +by +aZ +aZ +bq +by +bS +bq +bS +bq +aC +aC +aC +bZ +ca +by +bS +bq +ck +cn +cq +"} +(7,1,1) = {" +ac +aj +ao +cz +ar +aM +ar +cs +cu +cu +ab +br +bz +bo +cs +bL +bP +ar +bU +bo +br +bZ +ca +aC +bZ +ca +bz +ab +ci +ar +cl +co +"} +(8,1,1) = {" +ac +ak +ap +az +cs +ap +aR +ba +ba +bj +cs +br +bz +cs +bH +bG +bz +cs +cs +cs +br +bZ +ca +aC +bZ +ca +bz +cs +cs +cs +cl +co +"} +(9,1,1) = {" +ab +al +aq +aA +cs +cs +ar +bb +bf +bk +cs +br +bz +cs +bI +aZ +bQ +cs +ad +cu +bW +aZ +bq +aC +by +aZ +ce +cu +ad +cy +ar +co +"} +(10,1,1) = {" +cr +cs +ac +cA +cI +ad +cr +cs +aR +cs +ar +br +bz +ar +cu +cu +cu +cI +ad +cr +cu +cs +br +aC +bz +cs +cu +en +ad +ad +cr +ar +"} +(11,1,1) = {" +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +cs +bs +bs +cs +ad +ad +ad +ad +ad +ad +ad +cu +cb +aC +cc +cu +ad +ad +ad +ad +ad +ad +"} +(12,1,1) = {" +ad +ad +cx +cs +cu +cs +cu +cu +cu +cs +bo +bt +bA +bo +ad +ad +ad +ad +aa +cs +cs +cs +br +aC +bz +cs +cs +cs +cD +ad +ad +ad +"} +(13,1,1) = {" +ad +aa +ar +aB +aH +aN +aS +aS +bg +bl +bp +bu +bA +cu +ad +ad +ad +ad +cs +bV +be +be +bG +aC +bO +be +be +cd +cs +ad +ad +ad +"} +(14,1,1) = {" +ad +cu +as +aC +aC +cu +aT +aC +bh +bh +aC +bv +bB +cu +ad +ad +ad +ad +cu +br +bX +bX +bX +aC +bX +bX +bX +bz +cu +ad +ad +ad +"} +(15,1,1) = {" +ad +cu +at +aD +aC +cu +aU +aC +aC +aC +aC +aC +bC +cu +ad +ad +ad +ad +cu +br +bY +bY +bY +aC +bY +bY +bY +bz +cu +ad +ad +ad +"} +(16,1,1) = {" +ad +cr +ar +aE +aI +aO +aV +aV +bi +bm +bi +bm +ar +cI +ad +ad +ad +ad +cs +bW +aZ +aZ +aZ +aZ +aZ +aZ +aZ +ce +cs +ad +ad +ad +"} +(17,1,1) = {" +ad +ad +cy +cs +cu +cs +cs +cu +cu +cu +cu +cs +cI +ad +ad +ad +ad +ad +cr +cs +cu +cu +ab +cu +ab +cu +cu +cs +cI +ad +ad +ad +"} diff --git a/_maps/shuttles/emergency_russiafightpit.dmm b/_maps/shuttles/emergency_russiafightpit.dmm index f47d7c463a..46b7271454 100644 --- a/_maps/shuttles/emergency_russiafightpit.dmm +++ b/_maps/shuttles/emergency_russiafightpit.dmm @@ -1,115 +1,945 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/turf/closed/wall,/area/shuttle/escape) -"ac" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/turf/open/floor/plating,/area/shuttle/escape) -"ad" = (/turf/closed/wall/rust,/area/shuttle/escape) -"ae" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/fire,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"af" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"ag" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"ah" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"ai" = (/obj/machinery/computer/crew,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"aj" = (/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"ak" = (/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"al" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"am" = (/obj/structure/table,/obj/item/weapon/storage/fancy/cigarettes/cigars/cohiba,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka{pixel_x = 5; pixel_y = 18},/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"an" = (/obj/machinery/computer/security,/turf/open/floor/mineral/titanium,/area/shuttle/escape) -"ao" = (/obj/machinery/button/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = -24},/obj/structure/chair{dir = 8},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"ap" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)"; pixel_x = 0; pixel_y = -29},/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"aq" = (/obj/structure/chair,/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"ar" = (/obj/machinery/button/door{id = "ohnorevs"; name = "window shutters"; pixel_x = 26; pixel_y = -6; req_access_txt = "19"},/obj/structure/chair,/obj/machinery/button/door{id = "bearsbearsbears"; name = "release bears"; pixel_x = 26; pixel_y = 6; req_access_txt = "20"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"as" = (/obj/machinery/status_display,/turf/closed/wall/rust,/area/shuttle/escape) -"at" = (/obj/machinery/door/airlock/glass{name = "Glorious Leaders"; req_access_txt = "19"},/turf/open/floor/mineral/titanium/blue,/area/shuttle/escape) -"au" = (/obj/structure/grille,/obj/structure/window/reinforced/fulltile,/obj/machinery/door/poddoor/shutters/preopen{id = "ohnorevs"},/turf/open/floor/plating,/area/shuttle/escape) -"av" = (/obj/structure/chair,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aw" = (/obj/machinery/flasher{id = "cockpit_flasher"; pixel_x = 6; pixel_y = 24},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"ax" = (/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"ay" = (/obj/structure/window/reinforced{dir = 8},/turf/open/floor/engine,/area/shuttle/escape) -"az" = (/obj/item/weapon/tank/internals/oxygen,/turf/open/floor/engine,/area/shuttle/escape) -"aA" = (/turf/open/floor/engine,/area/shuttle/escape) -"aB" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/engine,/area/shuttle/escape) -"aC" = (/obj/item/weapon/kitchen/knife,/turf/open/floor/engine,/area/shuttle/escape) -"aD" = (/turf/closed/wall/r_wall,/area/shuttle/escape) -"aE" = (/turf/closed/wall/r_wall/rust,/area/shuttle/escape) -"aF" = (/obj/machinery/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = 6},/obj/machinery/button/flasher{id = "shuttle_flasher"; pixel_x = -24; pixel_y = -6},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aG" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aH" = (/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aI" = (/obj/machinery/door/airlock/glass_security{name = "Emergency Shuttle Brig"; req_access_txt = "2"},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"aJ" = (/obj/structure/chair{dir = 4},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"aK" = (/obj/effect/decal/cleanable/blood/old,/turf/open/floor/engine,/area/shuttle/escape) -"aL" = (/obj/effect/decal/cleanable/blood/old,/obj/item/weapon/broken_bottle,/turf/open/floor/engine,/area/shuttle/escape) -"aM" = (/obj/effect/decal/cleanable/robot_debris/old,/obj/machinery/door/poddoor{id = "bearsbearsbears"},/turf/open/floor/engine,/area/shuttle/escape) -"aN" = (/obj/effect/decal/cleanable/blood/old,/mob/living/simple_animal/hostile/bear/fightpit,/turf/open/floor/engine,/area/shuttle/escape) -"aO" = (/obj/machinery/door/airlock/glass_security{name = "Emergency Shuttle Airlock"; req_access_txt = "2"},/turf/open/floor/plating,/area/shuttle/escape) -"aP" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aQ" = (/obj/effect/decal/cleanable/robot_debris/old,/turf/open/floor/engine,/area/shuttle/escape) -"aR" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"aS" = (/obj/structure/window/reinforced{dir = 8},/obj/effect/decal/cleanable/dirt,/turf/open/floor/engine,/area/shuttle/escape) -"aT" = (/obj/effect/decal/cleanable/vomit/old,/turf/open/floor/engine,/area/shuttle/escape) -"aU" = (/obj/effect/decal/cleanable/blood/old,/obj/machinery/door/poddoor{id = "bearsbearsbears"},/turf/open/floor/engine,/area/shuttle/escape) -"aV" = (/obj/item/weapon/kitchen/fork,/mob/living/simple_animal/hostile/bear/fightpit,/turf/open/floor/engine,/area/shuttle/escape) -"aW" = (/obj/docking_port/mobile/emergency{height = 15; name = "Box emergency shuttle"; timid = 1},/obj/machinery/door/airlock/glass_security{name = "Emergency Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/escape) -"aX" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"aY" = (/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 8},/turf/open/floor/engine,/area/shuttle/escape) -"aZ" = (/obj/effect/decal/cleanable/shreds,/obj/machinery/door/window{name = "fight pit"},/turf/open/floor/engine,/area/shuttle/escape) -"ba" = (/obj/structure/window/reinforced,/turf/open/floor/engine,/area/shuttle/escape) -"bb" = (/obj/effect/decal/cleanable/blood/old,/obj/structure/window/reinforced,/turf/open/floor/engine,/area/shuttle/escape) -"bc" = (/obj/structure/chair{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bd" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/chair{dir = 4},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"be" = (/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bf" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bg" = (/obj/structure/window/reinforced{dir = 8},/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bh" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bi" = (/obj/structure/table,/obj/item/stack/medical/bruise_pack{pixel_x = 5; pixel_y = 5},/obj/item/stack/medical/bruise_pack,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bj" = (/obj/effect/decal/cleanable/vomit/old,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bk" = (/obj/structure/kitchenspike,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bl" = (/obj/effect/decal/hammerandsickle,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bm" = (/obj/structure/table,/obj/item/weapon/hatchet,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bn" = (/obj/structure/table,/obj/item/clothing/gloves/boxing{pixel_x = 4; pixel_y = 7},/obj/item/clothing/gloves/boxing,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bo" = (/obj/structure/table,/obj/item/weapon/melee/baseball_bat{pixel_x = -5},/obj/item/weapon/crowbar/large{pixel_x = 6},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bp" = (/obj/structure/table,/obj/item/weapon/shovel,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bq" = (/obj/item/weapon/broken_bottle,/obj/effect/decal/cleanable/blood/old,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"br" = (/obj/machinery/door/airlock/glass_security{name = "Emergency Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/escape) -"bs" = (/obj/structure/extinguisher_cabinet{pixel_x = 0; pixel_y = -30},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bt" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/obj/structure/table,/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka,/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bu" = (/obj/machinery/door/airlock/glass_security{name = "Emergency Shuttle Cargo"},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bv" = (/obj/machinery/status_display,/turf/closed/wall,/area/shuttle/escape) -"bw" = (/obj/machinery/door/airlock/glass_security{name = "Emergency Shuttle Infirmary"},/turf/open/floor/mineral/plastitanium,/area/shuttle/escape) -"bx" = (/turf/open/floor/plating,/area/shuttle/escape) -"by" = (/obj/effect/decal/cleanable/dirt,/turf/open/floor/plating,/area/shuttle/escape) -"bz" = (/obj/structure/extinguisher_cabinet{pixel_x = 27; pixel_y = 0},/turf/open/floor/plating,/area/shuttle/escape) -"bA" = (/obj/structure/closet/emcloset,/turf/open/floor/plasteel/floorgrime,/area/shuttle/escape) -"bB" = (/turf/open/floor/plasteel/floorgrime,/area/shuttle/escape) -"bC" = (/obj/structure/extinguisher_cabinet{pixel_x = -5; pixel_y = 30},/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plasteel/floorgrime,/area/shuttle/escape) -"bD" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 8},/turf/open/floor/plasteel/floorgrime,/area/shuttle/escape) -"bE" = (/obj/machinery/sleeper{icon_state = "sleeper-open"; dir = 4},/turf/open/floor/plasteel/floorgrime,/area/shuttle/escape) -"bF" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/brute,/obj/item/weapon/storage/firstaid{pixel_x = 2; pixel_y = 3},/obj/item/weapon/crowbar,/turf/open/floor/plasteel/floorgrime,/area/shuttle/escape) -"bG" = (/obj/structure/closet,/turf/open/floor/plating,/area/shuttle/escape) -"bH" = (/obj/structure/closet,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/drinks/beer,/obj/item/weapon/reagent_containers/food/drinks/beer,/turf/open/floor/plating,/area/shuttle/escape) -"bI" = (/obj/structure/closet/crate,/turf/open/floor/plating,/area/shuttle/escape) -"bJ" = (/obj/effect/decal/cleanable/blood/old,/turf/open/floor/plasteel/floorgrime,/area/shuttle/escape) -"bK" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) -"bL" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/open/space, +/area/space) +"ab" = ( +/turf/closed/wall, +/area/shuttle/escape) +"ac" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/turf/open/floor/plating, +/area/shuttle/escape) +"ad" = ( +/turf/closed/wall/rust, +/area/shuttle/escape) +"ae" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/fire, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"af" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ag" = ( +/obj/machinery/computer/emergency_shuttle, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ah" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/weapon/crowbar, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"ai" = ( +/obj/machinery/computer/crew, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"aj" = ( +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ak" = ( +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"al" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"am" = ( +/obj/structure/table, +/obj/item/weapon/storage/fancy/cigarettes/cigars/cohiba, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka/badminka{ + pixel_x = 5; + pixel_y = 18 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"an" = ( +/obj/machinery/computer/security, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"ao" = ( +/obj/machinery/button/flasher{ + id = "cockpit_flasher"; + pixel_x = 6; + pixel_y = -24 + }, +/obj/structure/chair{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ap" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_x = 0; + pixel_y = -29 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"aq" = ( +/obj/structure/chair, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"ar" = ( +/obj/machinery/button/door{ + id = "ohnorevs"; + name = "window shutters"; + pixel_x = 26; + pixel_y = -6; + req_access_txt = "19" + }, +/obj/structure/chair, +/obj/machinery/button/door{ + id = "bearsbearsbears"; + name = "release bears"; + pixel_x = 26; + pixel_y = 6; + req_access_txt = "20" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"as" = ( +/obj/machinery/status_display, +/turf/closed/wall/rust, +/area/shuttle/escape) +"at" = ( +/obj/machinery/door/airlock/glass{ + name = "Glorious Leaders"; + req_access_txt = "19" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"au" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/fulltile, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "ohnorevs" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"av" = ( +/obj/structure/chair, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"aw" = ( +/obj/machinery/flasher{ + id = "cockpit_flasher"; + pixel_x = 6; + pixel_y = 24 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ax" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ay" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/engine, +/area/shuttle/escape) +"az" = ( +/obj/item/weapon/tank/internals/oxygen, +/turf/open/floor/engine, +/area/shuttle/escape) +"aA" = ( +/turf/open/floor/engine, +/area/shuttle/escape) +"aB" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine, +/area/shuttle/escape) +"aC" = ( +/obj/item/weapon/kitchen/knife, +/turf/open/floor/engine, +/area/shuttle/escape) +"aD" = ( +/turf/closed/wall/r_wall, +/area/shuttle/escape) +"aE" = ( +/turf/closed/wall/r_wall/rust, +/area/shuttle/escape) +"aF" = ( +/obj/machinery/flasher{ + id = "shuttle_flasher"; + pixel_x = -24; + pixel_y = 6 + }, +/obj/machinery/button/flasher{ + id = "shuttle_flasher"; + pixel_x = -24; + pixel_y = -6 + }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"aG" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"aH" = ( +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"aI" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Emergency Shuttle Brig"; + req_access_txt = "2" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aJ" = ( +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aK" = ( +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/engine, +/area/shuttle/escape) +"aL" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/item/weapon/broken_bottle, +/turf/open/floor/engine, +/area/shuttle/escape) +"aM" = ( +/obj/effect/decal/cleanable/robot_debris/old, +/obj/machinery/door/poddoor{ + id = "bearsbearsbears" + }, +/turf/open/floor/engine, +/area/shuttle/escape) +"aN" = ( +/obj/effect/decal/cleanable/blood/old, +/mob/living/simple_animal/hostile/bear/fightpit, +/turf/open/floor/engine, +/area/shuttle/escape) +"aO" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Emergency Shuttle Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"aP" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"aQ" = ( +/obj/effect/decal/cleanable/robot_debris/old, +/turf/open/floor/engine, +/area/shuttle/escape) +"aR" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aS" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine, +/area/shuttle/escape) +"aT" = ( +/obj/effect/decal/cleanable/vomit/old, +/turf/open/floor/engine, +/area/shuttle/escape) +"aU" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/door/poddoor{ + id = "bearsbearsbears" + }, +/turf/open/floor/engine, +/area/shuttle/escape) +"aV" = ( +/obj/item/weapon/kitchen/fork, +/mob/living/simple_animal/hostile/bear/fightpit, +/turf/open/floor/engine, +/area/shuttle/escape) +"aW" = ( +/obj/docking_port/mobile/emergency{ + height = 15; + name = "Box emergency shuttle"; + timid = 1 + }, +/obj/machinery/door/airlock/glass_security{ + name = "Emergency Shuttle Airlock" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"aX" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aY" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/engine, +/area/shuttle/escape) +"aZ" = ( +/obj/effect/decal/cleanable/shreds, +/obj/machinery/door/window{ + name = "fight pit" + }, +/turf/open/floor/engine, +/area/shuttle/escape) +"ba" = ( +/obj/structure/window/reinforced, +/turf/open/floor/engine, +/area/shuttle/escape) +"bb" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/structure/window/reinforced, +/turf/open/floor/engine, +/area/shuttle/escape) +"bc" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bd" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"be" = ( +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bf" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bg" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bh" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bi" = ( +/obj/structure/table, +/obj/item/stack/medical/bruise_pack{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/stack/medical/bruise_pack, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bj" = ( +/obj/effect/decal/cleanable/vomit/old, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bk" = ( +/obj/structure/kitchenspike, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bl" = ( +/obj/effect/decal/hammerandsickle, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bm" = ( +/obj/structure/table, +/obj/item/weapon/hatchet, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bn" = ( +/obj/structure/table, +/obj/item/clothing/gloves/boxing{ + pixel_x = 4; + pixel_y = 7 + }, +/obj/item/clothing/gloves/boxing, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bo" = ( +/obj/structure/table, +/obj/item/weapon/melee/baseball_bat{ + pixel_x = -5 + }, +/obj/item/weapon/crowbar/large{ + pixel_x = 6 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bp" = ( +/obj/structure/table, +/obj/item/weapon/shovel, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bq" = ( +/obj/item/weapon/broken_bottle, +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"br" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Emergency Shuttle Airlock" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"bs" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 0; + pixel_y = -30 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bt" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/obj/structure/table, +/obj/item/weapon/reagent_containers/food/drinks/bottle/vodka, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bu" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Emergency Shuttle Cargo" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bv" = ( +/obj/machinery/status_display, +/turf/closed/wall, +/area/shuttle/escape) +"bw" = ( +/obj/machinery/door/airlock/glass_security{ + name = "Emergency Shuttle Infirmary" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bx" = ( +/turf/open/floor/plating, +/area/shuttle/escape) +"by" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/shuttle/escape) +"bz" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 27; + pixel_y = 0 + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"bA" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plasteel/floorgrime, +/area/shuttle/escape) +"bB" = ( +/turf/open/floor/plasteel/floorgrime, +/area/shuttle/escape) +"bC" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = -5; + pixel_y = 30 + }, +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/floorgrime, +/area/shuttle/escape) +"bD" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 8 + }, +/turf/open/floor/plasteel/floorgrime, +/area/shuttle/escape) +"bE" = ( +/obj/machinery/sleeper{ + icon_state = "sleeper-open"; + dir = 4 + }, +/turf/open/floor/plasteel/floorgrime, +/area/shuttle/escape) +"bF" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/brute, +/obj/item/weapon/storage/firstaid{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/weapon/crowbar, +/turf/open/floor/plasteel/floorgrime, +/area/shuttle/escape) +"bG" = ( +/obj/structure/closet, +/turf/open/floor/plating, +/area/shuttle/escape) +"bH" = ( +/obj/structure/closet, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/obj/item/weapon/reagent_containers/food/drinks/beer, +/turf/open/floor/plating, +/area/shuttle/escape) +"bI" = ( +/obj/structure/closet/crate, +/turf/open/floor/plating, +/area/shuttle/escape) +"bJ" = ( +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/plasteel/floorgrime, +/area/shuttle/escape) +"bK" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"bL" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"bM" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/engine, +/area/shuttle/escape) +"bN" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bO" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bP" = ( +/obj/structure/kitchenspike, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bQ" = ( +/obj/machinery/light, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bR" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/escape) (1,1,1) = {" -aaaaaaaaabacacacacacadaaaaaaaa -aaaaaaadabaeafagafahabadaaaaaa -aaaaaaabaiajakakalakamabaaaaaa -aaaaaaabanaoakapaqaqaradaaaaaa -adabasabadadatabauauauasababad -abavavavacawaxayazaAaBaCaDaEaD -adaFaGaHaIaxaJayaKaLaAaKaMaNaE -aOaHaPaPacaxaJayaQaBaAaAaEaNaE -abadadabadaRaJaSaAaKaTaQaUaVaE -aWaxaXaxaxaxaJaYaZbabbbaaDaDaE -adaJaxbcbdaRbebfaxbgbhbhaxbiad -acaJbjbcbdaxaxaxaxaxaxaxaxbkac -acaJaxbcbdaRbcaxblaxbmbnaRbkac -acaJaxbcbdaxbcaxaxaxbobpaxbkac -adaJaxbcbdbjbcaxaxbqaxaRaxbkad -braxbsaRaxaxaxaxaxaxaxaxaxbtad -adabadbuadababbvadacbwacadabad -brbxbybxbxbybzadbAbBbBbBbCbDac -adabbxbxbybxbxadbEbBbBbBbFabad -aaababbGbHbIbIadbAbJbBbDadadaa -aaaaadadbKbKbKbKbKbKbKadadaaaa -aaaaaaadbLbLbLbLbLbLbLadaaaaaa +aa +aa +aa +aa +ad +ab +ad +aO +ab +aW +ad +ac +ac +ac +ad +br +ad +br +ad +aa +aa +aa +"} +(2,1,1) = {" +aa +aa +aa +aa +ab +av +aF +aH +ad +ax +aJ +aJ +aJ +aJ +bO +ax +ab +bx +ab +ab +aa +aa +"} +(3,1,1) = {" +aa +aa +aa +aa +as +av +aG +aP +ad +aX +ax +bj +ax +ax +ax +bs +ad +by +bx +ab +ad +aa +"} +(4,1,1) = {" +aa +ad +ab +ab +ab +av +aH +aP +ab +ax +bc +bc +bc +bc +bc +aR +bu +bx +bx +bG +ad +ad +"} +(5,1,1) = {" +ab +ab +ai +an +ad +ac +aI +ac +ad +bN +bd +bd +bd +bd +bd +ax +ad +bR +by +bH +bK +bL +"} +(6,1,1) = {" +ac +ae +aj +ao +ad +aw +ax +ax +aR +ax +aR +ax +aR +ax +bj +ax +ab +by +bx +bI +bK +bL +"} +(7,1,1) = {" +ac +af +ak +ak +at +ax +aJ +aJ +aJ +aJ +be +ax +bc +bc +bc +ax +ab +bz +bx +bI +bK +bL +"} +(8,1,1) = {" +ac +ag +ak +ap +ab +ay +ay +ay +aS +aY +bf +ax +ax +ax +ax +bQ +bv +ad +ad +ad +bK +bL +"} +(9,1,1) = {" +ac +af +al +aq +au +az +aK +aQ +aA +aZ +ax +ax +bl +ax +ax +ax +ad +bA +bE +bA +bK +bL +"} +(10,1,1) = {" +ac +ah +ak +aq +au +aA +aL +aB +aK +ba +bg +ax +ax +ax +bq +ax +ac +bB +bB +bJ +bK +bL +"} +(11,1,1) = {" +ad +ab +am +ar +au +aB +aA +aA +aT +bb +bh +ax +bm +bo +ax +ax +bw +bB +bB +bB +bK +bL +"} +(12,1,1) = {" +aa +ad +ab +ad +as +aC +aK +bM +aQ +ba +bh +ax +bn +bp +aR +ax +ac +bB +bB +bD +ad +ad +"} +(13,1,1) = {" +aa +aa +aa +aa +ab +aD +aM +aE +aU +aD +ax +ax +aR +ax +ax +ax +ad +bC +bF +ad +ad +aa +"} +(14,1,1) = {" +aa +aa +aa +aa +ab +aE +aN +aN +aV +aD +bi +bk +bk +bk +bP +bt +ab +bD +ab +ad +aa +aa +"} +(15,1,1) = {" +aa +aa +aa +aa +ad +aD +aE +aE +aE +aE +ad +ac +ac +ac +ad +ad +ad +ac +ad +aa +aa +aa "} diff --git a/_maps/shuttles/emergency_scrapheap.dmm b/_maps/shuttles/emergency_scrapheap.dmm index e7658534ac..8ce58a7d64 100644 --- a/_maps/shuttles/emergency_scrapheap.dmm +++ b/_maps/shuttles/emergency_scrapheap.dmm @@ -1,91 +1,689 @@ -"aa" = (/turf/open/space,/area/space) -"ab" = (/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"ac" = (/obj/structure/grille,/obj/structure/window/shuttle,/turf/open/floor/plating,/area/shuttle/escape) -"ad" = (/turf/closed/wall/mineral/titanium/nodiagonal,/area/shuttle/escape) -"ae" = (/obj/structure/table/wood,/turf/open/floor/carpet,/area/shuttle/escape) -"af" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair (NORTH)";icon_state = "comfychair";dir = 1},/turf/open/floor/carpet,/area/shuttle/escape) -"ag" = (/obj/machinery/computer/emergency_shuttle,/turf/open/floor/carpet,/area/shuttle/escape) -"ah" = (/obj/structure/table/wood,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/carpet,/area/shuttle/escape) -"ai" = (/obj/machinery/computer/atmos_alert,/turf/open/floor/carpet,/area/shuttle/escape) -"aj" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair (WEST)";icon_state = "comfychair";dir = 8},/turf/open/floor/carpet,/area/shuttle/escape) -"ak" = (/turf/open/floor/carpet,/area/shuttle/escape) -"al" = (/obj/structure/chair/comfy/brown{tag = "icon-comfychair (EAST)";icon_state = "comfychair";dir = 4},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/turf/open/floor/carpet,/area/shuttle/escape) -"am" = (/obj/machinery/computer/crew,/turf/open/floor/carpet,/area/shuttle/escape) -"an" = (/obj/item/device/radio/intercom{name = "Station Intercom (General)";pixel_x = 0;pixel_y = -29},/turf/open/floor/carpet,/area/shuttle/escape) -"ao" = (/obj/machinery/button/flasher{id = "cockpit_flasher";pixel_x = 6;pixel_y = -24},/obj/structure/table/wood/poker,/turf/open/floor/carpet,/area/shuttle/escape) -"ap" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/carpet,/area/shuttle/escape) -"aq" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock";req_access_txt = "2"},/turf/open/floor/plasteel/shuttle/red,/area/shuttle/escape) -"ar" = (/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Cockpit";req_access_txt = "19"},/turf/open/floor/carpet,/area/shuttle/escape) -"as" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock";req_access_txt = "2"},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"at" = (/obj/structure/chair,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"au" = (/obj/machinery/flasher{id = "cockpit_flasher";pixel_x = 6;pixel_y = 24},/turf/open/floor/plasteel/bar,/area/shuttle/escape) -"av" = (/turf/open/floor/plasteel/bar,/area/shuttle/escape) -"aw" = (/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"ax" = (/obj/machinery/flasher{id = "shuttle_flasher";pixel_x = -24;pixel_y = 6},/obj/machinery/button/flasher{id = "shuttle_flasher";pixel_x = -24;pixel_y = -6},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"ay" = (/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"az" = (/obj/structure/grille,/obj/machinery/door/airlock/glass{name = "Emergency Shuttle Brig";req_access_txt = "2"},/turf/open/floor/plating,/area/shuttle/escape) -"aA" = (/obj/structure/grille/broken,/turf/open/floor/plasteel,/area/shuttle/escape) -"aB" = (/turf/closed/wall/mineral/titanium/interior,/area/shuttle/escape) -"aC" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock";req_access_txt = "2"},/turf/open/floor/plating,/area/shuttle/escape) -"aD" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/obj/structure/table,/obj/item/weapon/extinguisher,/obj/item/weapon/crowbar,/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aE" = (/obj/structure/chair{dir = 1},/turf/open/floor/mineral/plastitanium/brig,/area/shuttle/escape) -"aF" = (/obj/item/weapon/twohanded/required/kirbyplants/random,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aG" = (/obj/structure/chair,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aH" = (/obj/structure/table,/obj/item/weapon/storage/firstaid/regular,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aI" = (/obj/structure/window/reinforced{dir = 4},/obj/item/device/radio/intercom{name = "Station Intercom (General)";pixel_x = 0;pixel_y = 23},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aJ" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"aK" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/obj/docking_port/mobile/emergency{name = "Scrapheap Challenge";timid = 1},/turf/open/floor/plating,/area/shuttle/escape) -"aL" = (/obj/structure/chair{dir = 1},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aM" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/chair{dir = 4},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aN" = (/obj/structure/table/wood,/obj/item/toy/cards/deck/cas/black,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aO" = (/obj/structure/table/wood,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aP" = (/obj/structure/table/wood,/obj/item/toy/cards/deck/cas,/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"aQ" = (/obj/structure/chair/comfy/brown{dir = 8},/turf/open/floor/plasteel/shuttle/white,/area/shuttle/escape) -"aR" = (/obj/structure/table_frame,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aS" = (/obj/structure/table/wood,/obj/item/weapon/storage/firstaid/fire,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aT" = (/obj/structure/chair{dir = 1},/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aU" = (/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aV" = (/obj/structure/table,/obj/machinery/recharger,/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aW" = (/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plasteel/shuttle,/area/shuttle/escape) -"aX" = (/turf/open/floor/plasteel/grimy,/area/shuttle/escape) -"aY" = (/obj/structure/chair/wood{tag = "icon-wooden_chair (NORTH)";icon_state = "wooden_chair";dir = 1},/turf/open/floor/plasteel/grimy,/area/shuttle/escape) -"aZ" = (/obj/machinery/door/airlock/titanium{name = "Emergency Shuttle Airlock"},/turf/open/floor/plating,/area/shuttle/escape) -"ba" = (/obj/structure/extinguisher_cabinet{pixel_x = 0;pixel_y = -30},/turf/open/floor/plasteel/bar,/area/shuttle/escape) -"bb" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/barricade/wooden,/turf/open/floor/plasteel/bar,/area/shuttle/escape) -"bc" = (/obj/machinery/status_display,/turf/closed/wall/mineral/titanium,/area/shuttle/escape) -"bd" = (/obj/machinery/door/airlock{name = "Unisex Restrooms";req_access_txt = "0"},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"be" = (/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bf" = (/obj/structure/extinguisher_cabinet{pixel_y = 30},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bg" = (/obj/machinery/door/airlock{name = "Unit 1"},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bh" = (/obj/machinery/door/airlock{name = "Unit 2"},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bi" = (/obj/machinery/door/airlock{name = "Unit B"},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bj" = (/obj/structure/toilet{tag = "icon-toilet00 (EAST)";icon_state = "toilet00";dir = 4},/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bk" = (/obj/machinery/recharge_station,/turf/open/floor/plasteel/freezer,/area/shuttle/escape) -"bl" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/turf/open/floor/plating/airless,/area/shuttle/escape) -"bm" = (/obj/structure/window/reinforced{dir = 1},/obj/structure/shuttle/engine/heater,/obj/structure/window/reinforced{dir = 4},/turf/open/floor/plating/airless,/area/shuttle/escape) -"bn" = (/obj/structure/shuttle/engine/propulsion,/turf/open/floor/plating/airless,/area/shuttle/escape) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/open/space, +/area/space) +"ab" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"ac" = ( +/obj/structure/grille, +/obj/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/escape) +"ad" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/escape) +"ae" = ( +/obj/structure/table/wood, +/turf/open/floor/carpet, +/area/shuttle/escape) +"af" = ( +/obj/structure/chair/comfy/brown{ + tag = "icon-comfychair (NORTH)"; + icon_state = "comfychair"; + dir = 1 + }, +/turf/open/floor/carpet, +/area/shuttle/escape) +"ag" = ( +/obj/machinery/computer/emergency_shuttle, +/turf/open/floor/carpet, +/area/shuttle/escape) +"ah" = ( +/obj/structure/table/wood, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/shuttle/escape) +"ai" = ( +/obj/machinery/computer/atmos_alert, +/turf/open/floor/carpet, +/area/shuttle/escape) +"aj" = ( +/obj/structure/chair/comfy/brown{ + tag = "icon-comfychair (WEST)"; + icon_state = "comfychair"; + dir = 8 + }, +/turf/open/floor/carpet, +/area/shuttle/escape) +"ak" = ( +/turf/open/floor/carpet, +/area/shuttle/escape) +"al" = ( +/obj/structure/chair/comfy/brown{ + tag = "icon-comfychair (EAST)"; + icon_state = "comfychair"; + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/turf/open/floor/carpet, +/area/shuttle/escape) +"am" = ( +/obj/machinery/computer/crew, +/turf/open/floor/carpet, +/area/shuttle/escape) +"an" = ( +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_x = 0; + pixel_y = -29 + }, +/turf/open/floor/carpet, +/area/shuttle/escape) +"ao" = ( +/obj/machinery/button/flasher{ + id = "cockpit_flasher"; + pixel_x = 6; + pixel_y = -24 + }, +/obj/structure/table/wood/poker, +/obj/machinery/light, +/turf/open/floor/carpet, +/area/shuttle/escape) +"ap" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/shuttle/escape) +"aq" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"ar" = ( +/obj/machinery/door/airlock/glass{ + name = "Emergency Shuttle Cockpit"; + req_access_txt = "19" + }, +/turf/open/floor/carpet, +/area/shuttle/escape) +"as" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/plasteel/shuttle/white, +/area/shuttle/escape) +"at" = ( +/obj/structure/chair, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"au" = ( +/obj/machinery/flasher{ + id = "cockpit_flasher"; + pixel_x = 6; + pixel_y = 24 + }, +/turf/open/floor/plasteel/bar, +/area/shuttle/escape) +"av" = ( +/turf/open/floor/plasteel/bar, +/area/shuttle/escape) +"aw" = ( +/turf/open/floor/plasteel/shuttle/white, +/area/shuttle/escape) +"ax" = ( +/obj/machinery/flasher{ + id = "shuttle_flasher"; + pixel_x = -24; + pixel_y = 6 + }, +/obj/machinery/button/flasher{ + id = "shuttle_flasher"; + pixel_x = -24; + pixel_y = -6 + }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"ay" = ( +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"az" = ( +/obj/structure/grille, +/obj/machinery/door/airlock/glass{ + name = "Emergency Shuttle Brig"; + req_access_txt = "2" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"aA" = ( +/obj/structure/grille/broken, +/turf/open/floor/plasteel, +/area/shuttle/escape) +"aB" = ( +/turf/closed/wall/mineral/titanium/interior, +/area/shuttle/escape) +"aC" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock"; + req_access_txt = "2" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"aD" = ( +/obj/structure/extinguisher_cabinet{ + pixel_y = -30 + }, +/obj/structure/table, +/obj/item/weapon/extinguisher, +/obj/item/weapon/crowbar, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"aE" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/brig, +/area/shuttle/escape) +"aF" = ( +/obj/item/weapon/twohanded/required/kirbyplants/random, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aG" = ( +/obj/structure/chair, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aH" = ( +/obj/structure/table, +/obj/item/weapon/storage/firstaid/regular, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aI" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/item/device/radio/intercom{ + name = "Station Intercom (General)"; + pixel_x = 0; + pixel_y = 23 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aJ" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle/white, +/area/shuttle/escape) +"aK" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock" + }, +/obj/docking_port/mobile/emergency{ + name = "Scrapheap Challenge"; + timid = 1 + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"aL" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aM" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aN" = ( +/obj/structure/table/wood, +/obj/item/toy/cards/deck/cas/black, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aO" = ( +/obj/structure/table/wood, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aP" = ( +/obj/structure/table/wood, +/obj/item/toy/cards/deck/cas, +/turf/open/floor/plasteel/shuttle/white, +/area/shuttle/escape) +"aQ" = ( +/obj/structure/chair/comfy/brown{ + dir = 8 + }, +/turf/open/floor/plasteel/shuttle/white, +/area/shuttle/escape) +"aR" = ( +/obj/structure/table_frame, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aS" = ( +/obj/structure/table/wood, +/obj/item/weapon/storage/firstaid/fire, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aT" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/structure/extinguisher_cabinet{ + pixel_y = -30 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aU" = ( +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aV" = ( +/obj/structure/table, +/obj/machinery/recharger, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aW" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"aX" = ( +/turf/open/floor/plasteel/grimy, +/area/shuttle/escape) +"aY" = ( +/obj/structure/chair/wood{ + tag = "icon-wooden_chair (NORTH)"; + icon_state = "wooden_chair"; + dir = 1 + }, +/turf/open/floor/plasteel/grimy, +/area/shuttle/escape) +"aZ" = ( +/obj/machinery/door/airlock/titanium{ + name = "Emergency Shuttle Airlock" + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"ba" = ( +/obj/structure/extinguisher_cabinet{ + pixel_x = 0; + pixel_y = -30 + }, +/turf/open/floor/plasteel/bar, +/area/shuttle/escape) +"bb" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/barricade/wooden, +/obj/machinery/light, +/turf/open/floor/plasteel/bar, +/area/shuttle/escape) +"bc" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"bd" = ( +/obj/machinery/door/airlock{ + name = "Unisex Restrooms"; + req_access_txt = "0" + }, +/turf/open/floor/plasteel/freezer, +/area/shuttle/escape) +"be" = ( +/turf/open/floor/plasteel/freezer, +/area/shuttle/escape) +"bf" = ( +/obj/structure/extinguisher_cabinet{ + pixel_y = 30 + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/freezer, +/area/shuttle/escape) +"bg" = ( +/obj/machinery/door/airlock{ + name = "Unit 1" + }, +/turf/open/floor/plasteel/freezer, +/area/shuttle/escape) +"bh" = ( +/obj/machinery/door/airlock{ + name = "Unit 2" + }, +/turf/open/floor/plasteel/freezer, +/area/shuttle/escape) +"bi" = ( +/obj/machinery/door/airlock{ + name = "Unit B" + }, +/turf/open/floor/plasteel/freezer, +/area/shuttle/escape) +"bj" = ( +/obj/structure/toilet{ + tag = "icon-toilet00 (EAST)"; + icon_state = "toilet00"; + dir = 4 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/freezer, +/area/shuttle/escape) +"bk" = ( +/obj/machinery/recharge_station, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/freezer, +/area/shuttle/escape) +"bl" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"bm" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"bn" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"bo" = ( +/obj/structure/chair, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) +"bp" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) (1,1,1) = {" -aaaaabacacacacacaaaaaa -aaabadaeafagafahaaaaaa -aaabaiajakakakalaaaaaa -aaabamakanaoapaaaaaaaa -abacaqacababaracasacaa -abacatacacauavacawacaa -abaxayayazaAacaBawaBab -aCaDaEaEacaFaGaGawaHaI -ababababadawawawawawaJ -aKaLaLaLaLawaLaLaLaLaM -abaAacacacawacacacacaM -acaGaNaOaGawaGaGaGaGaM -acawaPaQawawawawawawaJ -acaRaSaOaLaLaLaTaUaVaW -abaXaYaYacacacabababab -aZavbaavavavbbaaaaaaaa -ababababbcbdadaaaaaaaa -aZbebebfbebeabaaaaaaaa -abbgabbhabbiabaaaaaaaa -abbjabbjabbkabaaaaaaaa -ababblblblblbmaaaaaaaa -aaabbnbnbnbnbnaaaaaaaa +aa +aa +aa +aa +ab +ab +ab +aC +ab +aK +ab +ac +ac +ac +ab +aZ +ab +aZ +ab +ab +ab +aa +"} +(2,1,1) = {" +aa +ab +ab +ab +ac +ac +ax +aD +ab +bp +aA +aG +aw +aR +aX +av +ab +be +bg +bj +ab +ab +"} +(3,1,1) = {" +ab +ad +ai +am +aq +at +ay +aE +ab +aL +ac +aN +aP +aS +aY +ba +ab +be +ab +ab +bl +bn +"} +(4,1,1) = {" +ac +ae +aj +ak +ac +ac +ay +aE +ab +aL +ac +aO +aQ +aO +aY +av +ab +bf +bh +bj +bl +bn +"} +(5,1,1) = {" +ac +af +ak +an +ab +ac +az +ac +ad +aL +ac +aG +aw +aL +ac +av +bc +be +ab +ab +bl +bn +"} +(6,1,1) = {" +ac +ag +ak +ao +ab +au +aA +aF +aw +aw +aw +aw +aw +aL +ac +av +bd +be +bi +bk +bl +bn +"} +(7,1,1) = {" +ac +af +ak +ap +ar +av +ac +aG +aw +aL +ac +aG +aw +aL +ac +bb +ad +ab +ab +ab +bm +bn +"} +(8,1,1) = {" +ac +ah +al +aa +ac +ac +aB +bo +aw +aL +ac +aG +aw +aT +ab +aa +aa +aa +aa +aa +aa +aa +"} +(9,1,1) = {" +aa +aa +aa +aa +as +aw +aw +aw +aw +aL +ac +aG +aw +aU +ab +aa +aa +aa +aa +aa +aa +aa +"} +(10,1,1) = {" +aa +aa +aa +aa +ac +ac +aB +aH +aw +aL +ac +aG +aw +aV +ab +aa +aa +aa +aa +aa +aa +aa +"} +(11,1,1) = {" +aa +aa +aa +aa +aa +aa +ab +aI +aJ +aM +aM +aM +aJ +aW +ab +aa +aa +aa +aa +aa +aa +aa "} diff --git a/_maps/shuttles/emergency_supermatter.dmm b/_maps/shuttles/emergency_supermatter.dmm index 3c91d05bf5..216cc6d9b8 100644 --- a/_maps/shuttles/emergency_supermatter.dmm +++ b/_maps/shuttles/emergency_supermatter.dmm @@ -60,10 +60,10 @@ /obj/structure/reflector/single{ anchored = 1 }, -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plating, /area/shuttle/escape) "an" = ( /obj/structure/reflector/box{ @@ -78,10 +78,10 @@ dir = 8; anchored = 1 }, -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating, /area/shuttle/escape) "ap" = ( /obj/machinery/shower{ @@ -100,19 +100,19 @@ /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "as" = ( -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plating, /area/shuttle/escape) "at" = ( /turf/open/floor/plating, /area/shuttle/escape) "au" = ( -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating, /area/shuttle/escape) "av" = ( /obj/structure/chair{ @@ -253,28 +253,28 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "aR" = ( -/turf/open/floor/plating/airless, /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/turf/open/floor/plating/airless, /area/shuttle/escape) "aS" = ( -/turf/open/floor/plating/airless, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plating/airless, /area/shuttle/escape) "aT" = ( -/turf/open/floor/plating/airless, /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/turf/open/floor/plating/airless, /area/shuttle/escape) "aU" = ( -/turf/open/floor/plating/airless, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plating/airless, /area/shuttle/escape) "aV" = ( /obj/machinery/power/supermatter_shard/hugbox{ @@ -284,28 +284,28 @@ /turf/open/floor/plating/airless, /area/shuttle/escape) "aW" = ( -/turf/open/floor/plating/airless, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating/airless, /area/shuttle/escape) "aX" = ( -/turf/open/floor/plating/airless, /obj/effect/turf_decal/stripes/line{ dir = 10 }, +/turf/open/floor/plating/airless, /area/shuttle/escape) "aY" = ( -/turf/open/floor/plating/airless, /obj/effect/turf_decal/stripes/line{ dir = 2 }, +/turf/open/floor/plating/airless, /area/shuttle/escape) "aZ" = ( -/turf/open/floor/plating/airless, /obj/effect/turf_decal/stripes/line{ dir = 6 }, +/turf/open/floor/plating/airless, /area/shuttle/escape) "ba" = ( /obj/machinery/power/emitter/energycannon{ @@ -315,10 +315,10 @@ /area/shuttle/escape) "bb" = ( /obj/structure/chair, -/turf/open/floor/plating/airless, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plating/airless, /area/shuttle/escape) "bc" = ( /obj/structure/shuttle/engine/heater, @@ -338,17 +338,57 @@ /area/shuttle/escape) "bg" = ( /obj/structure/grille, -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plating, /area/shuttle/escape) "bh" = ( /obj/structure/grille, -/turf/open/floor/plating, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plating, +/area/shuttle/escape) +"bi" = ( +/obj/structure/closet/radiation{ + anchored = 1 + }, +/obj/item/clothing/glasses/meson/engine, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"bj" = ( +/obj/structure/closet/radiation{ + anchored = 1 + }, +/obj/item/clothing/glasses/meson/engine, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"bk" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plating, +/area/shuttle/escape) +"bl" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plating, /area/shuttle/escape) (1,1,1) = {" @@ -403,7 +443,7 @@ be ac ag ag -ag +bi ag ag ag @@ -458,7 +498,7 @@ as bg as as -as +bk ad at aO @@ -506,7 +546,7 @@ au bh au au -au +bl ad at aP @@ -547,7 +587,7 @@ aa ac ag ag -ag +bj ag ag ag diff --git a/_maps/shuttles/emergency_wabbajack.dmm b/_maps/shuttles/emergency_wabbajack.dmm index 9d5ba12b6c..68405ff69e 100644 --- a/_maps/shuttles/emergency_wabbajack.dmm +++ b/_maps/shuttles/emergency_wabbajack.dmm @@ -210,6 +210,9 @@ /area/shuttle/escape) "aM" = ( /obj/machinery/chem_dispenser, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/escape) "aN" = ( @@ -263,28 +266,28 @@ /turf/open/floor/plating, /area/shuttle/escape) "aW" = ( -/turf/open/floor/plasteel/yellow, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/yellow, /area/shuttle/escape) "aX" = ( -/turf/open/floor/plasteel/yellow, /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/turf/open/floor/plasteel/yellow, /area/shuttle/escape) "aY" = ( -/turf/open/floor/plasteel/whitered, /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/turf/open/floor/plasteel/whitered, /area/shuttle/escape) "aZ" = ( -/turf/open/floor/plasteel/whitered, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/turf/open/floor/plasteel/whitered, /area/shuttle/escape) "ba" = ( /obj/structure/destructible/cult/forge{ @@ -294,16 +297,16 @@ /turf/open/floor/plasteel/yellow, /area/shuttle/escape) "bb" = ( -/turf/open/floor/plasteel/yellow, /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/turf/open/floor/plasteel/yellow, /area/shuttle/escape) "bc" = ( -/turf/open/floor/plasteel/whitered, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plasteel/whitered, /area/shuttle/escape) "bd" = ( /obj/structure/destructible/cult/forge{ @@ -329,6 +332,59 @@ "bh" = ( /turf/closed/wall/mineral/titanium/overspace, /area/shuttle/escape) +"bi" = ( +/obj/machinery/light, +/turf/open/floor/plasteel/darkgreen, +/area/shuttle/escape) +"bj" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/plasteel/shuttle/red, +/area/shuttle/escape) +"bk" = ( +/obj/structure/chair/wood, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/open/floor/plasteel/cult, +/area/shuttle/escape) +"bl" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bm" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bn" = ( +/obj/machinery/light, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bo" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) +"bp" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plasteel/shuttle, +/area/shuttle/escape) (1,1,1) = {" aa @@ -365,13 +421,13 @@ at al as aE -aI +bm aI aI aE ab aE -aI +bo aW ba be @@ -384,7 +440,7 @@ ab ag ae ab -al +bj al al aB @@ -454,17 +510,17 @@ bg ac af ad -ae +bi ai an -au +bk ay ab +bl aq aq aq -aq -aq +bn aH ab ab @@ -563,7 +619,7 @@ aR aT as av -aE +bp aZ bd be diff --git a/_maps/shuttles/ferry_lighthouse.dmm b/_maps/shuttles/ferry_lighthouse.dmm index 969cf10a9e..0c1b1a134e 100644 --- a/_maps/shuttles/ferry_lighthouse.dmm +++ b/_maps/shuttles/ferry_lighthouse.dmm @@ -83,7 +83,7 @@ /area/shuttle/transport) "as" = ( /obj/structure/emergency_shield, -/turf/open/space, +/turf/open/floor/mineral/titanium/blue/airless, /area/shuttle/transport) "at" = ( /obj/machinery/door/airlock, @@ -376,8 +376,8 @@ aa (4,1,1) = {" ac af -ah -ah +bh +bh an aq as @@ -385,9 +385,9 @@ aB as as aX -ah -ah -ah +bh +bh +bh bi bj "} diff --git a/_maps/shuttles/whiteship_box.dmm b/_maps/shuttles/whiteship_box.dmm index 55b61b98fe..305bbef271 100644 --- a/_maps/shuttles/whiteship_box.dmm +++ b/_maps/shuttles/whiteship_box.dmm @@ -21,10 +21,11 @@ id = "whiteship"; launch_status = 0; name = "NT Medical Ship"; + port_angle = -90; + preferred_direction = 4; roundstart_move = "whiteship_away"; - port_angle = 180; - width = 35; - timid = 1 + timid = null; + width = 35 }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) @@ -40,8 +41,8 @@ /area/shuttle/abandoned) "ag" = ( /obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_l"; - dir = 4 + dir = 8; + icon_state = "propulsion_l" }, /turf/open/floor/plating/airless, /area/shuttle/abandoned) @@ -68,6 +69,9 @@ "al" = ( /obj/structure/table, /obj/item/weapon/screwdriver, +/obj/structure/light_construct{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "am" = ( @@ -78,8 +82,8 @@ /area/shuttle/abandoned) "an" = ( /obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion"; - dir = 4 + dir = 8; + icon_state = "propulsion" }, /turf/open/floor/plating/airless, /area/shuttle/abandoned) @@ -161,8 +165,8 @@ /area/shuttle/abandoned) "aB" = ( /obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion_r"; - dir = 4 + dir = 8; + icon_state = "propulsion_r" }, /turf/open/floor/plating/airless, /area/shuttle/abandoned) @@ -198,6 +202,7 @@ /obj/structure/frame/computer{ anchored = 1 }, +/obj/structure/light_construct, /turf/open/floor/plasteel/shuttle/white, /area/shuttle/abandoned) "aI" = ( @@ -337,8 +342,76 @@ dir = 8 }, /obj/effect/decal/remains/human, +/obj/structure/light_construct, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) +"bi" = ( +/obj/structure/light_construct/small, +/turf/open/floor/plating, +/area/shuttle/abandoned) +"bj" = ( +/obj/structure/frame/computer{ + anchored = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"bk" = ( +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"bl" = ( +/obj/structure/light_construct{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"bm" = ( +/obj/structure/light_construct{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"bn" = ( +/obj/structure/light_construct/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"bo" = ( +/obj/structure/light_construct{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"bp" = ( +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"bq" = ( +/obj/structure/light_construct/small{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"br" = ( +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"bs" = ( +/obj/structure/light_construct{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"bt" = ( +/obj/structure/light_construct/small{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/abandoned) (1,1,1) = {" aa @@ -472,7 +545,7 @@ aa aC aj aj -aj +bp aC aa aa @@ -709,11 +782,11 @@ ao aC aC aC +bl aj aj aj -aj -aj +br aC aC aC @@ -754,7 +827,7 @@ aa aC ap at -at +bi aC aj aj @@ -764,7 +837,7 @@ aj aj ba aC -at +bt at ap aC @@ -831,7 +904,7 @@ aj aj aj aj -aj +bm aj aj aj @@ -853,12 +926,12 @@ aj aj aj aj -az -am -am -am -am -aI +aC +aC +aC +aC +aC +aC aj aj aC @@ -877,10 +950,10 @@ aC aC aX aj -ae +aC aN aj -aj +bq aj af aj @@ -900,14 +973,14 @@ av av aX aC -aj -ae +bk +aC aO aj aV aY -ae -aj +aC +bs aj aC aj @@ -927,10 +1000,10 @@ aC aj af aj -aj +bn aj aZ -ae +aC aj aj aC @@ -949,12 +1022,12 @@ aj aj aC aj -aF -am -am -am -am -au +aC +aC +aC +aC +aC +aC aj aE aL @@ -975,7 +1048,7 @@ aW aj aj aj -aj +bo aj aj aj @@ -1090,7 +1163,7 @@ aC aC aw aC -bb +bj aJ aj aj diff --git a/_maps/shuttles/whiteship_meta.dmm b/_maps/shuttles/whiteship_meta.dmm index 9b6ee26e58..e71dc18a1b 100644 --- a/_maps/shuttles/whiteship_meta.dmm +++ b/_maps/shuttles/whiteship_meta.dmm @@ -34,10 +34,9 @@ id = "whiteship"; launch_status = 0; name = "NT Recovery White-Ship"; - port_angle = 180; - preferred_direction = 1; + port_angle = -90; + preferred_direction = 4; roundstart_move = "whiteship_away"; - timid = 1; width = 27 }, /obj/machinery/door/airlock/titanium{ @@ -101,6 +100,9 @@ /obj/effect/decal/cleanable/greenglow{ desc = "Looks like something's sprung a leak" }, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "ao" = ( @@ -192,6 +194,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/machinery/light/small{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "av" = ( @@ -207,6 +212,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "ax" = ( @@ -305,6 +313,9 @@ name = "dust" }, /obj/effect/turf_decal/bot, +/obj/structure/light_construct/small{ + dir = 1 + }, /turf/open/floor/plasteel, /area/shuttle/abandoned) "aC" = ( @@ -371,6 +382,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "aJ" = ( @@ -385,6 +399,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "aK" = ( @@ -509,6 +526,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "aU" = ( @@ -595,6 +615,7 @@ name = "dust" }, /obj/effect/turf_decal/bot, +/obj/structure/light_construct/small, /turf/open/floor/plasteel, /area/shuttle/abandoned) "bb" = ( @@ -723,6 +744,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/machinery/light{ + dir = 1 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "bp" = ( @@ -756,6 +780,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "bt" = ( @@ -788,11 +815,14 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "bw" = ( /obj/machinery/vending/coffee{ - pixel_x = -2; + pixel_x = 0; use_power = 0 }, /turf/open/floor/mineral/titanium, @@ -1070,13 +1100,13 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "bV" = ( -/obj/machinery/vending/cola{ - pixel_x = -1; - use_power = 0 - }, +/obj/machinery/vending/cola/random, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "bW" = ( @@ -1165,10 +1195,7 @@ }, /area/shuttle/abandoned) "cd" = ( -/obj/machinery/vending/snack{ - pixel_x = -1; - use_power = 0 - }, +/obj/machinery/vending/snack/random, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "ce" = ( @@ -1196,6 +1223,7 @@ name = "dust" }, /obj/item/device/megaphone, +/obj/structure/light_construct, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "ch" = ( @@ -1311,6 +1339,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "ct" = ( @@ -1395,6 +1426,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 1 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cB" = ( @@ -1411,6 +1445,9 @@ /obj/item/weapon/wirecutters, /obj/item/device/plant_analyzer, /obj/item/weapon/reagent_containers/glass/bucket, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cC" = ( @@ -1462,6 +1499,9 @@ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cH" = ( @@ -1503,12 +1543,15 @@ }, /obj/machinery/iv_drip{ density = 0; - pixel_x = -8 + pixel_x = 0 }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" }, +/obj/structure/light_construct/small{ + dir = 8 + }, /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "cL" = ( @@ -1650,7 +1693,10 @@ /area/shuttle/abandoned) "cW" = ( /obj/structure/table, -/obj/item/weapon/folder/white, +/obj/item/weapon/folder/white{ + pixel_x = 4; + pixel_y = -3 + }, /obj/effect/decal/cleanable/dirt{ desc = "A thin layer of dust coating the floor."; name = "dust" @@ -1712,6 +1758,86 @@ }, /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) +"dc" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"dd" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"de" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"df" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"dg" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"dh" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct/small{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/abandoned) +"di" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) +"dj" = ( +/obj/effect/decal/cleanable/dirt{ + desc = "A thin layer of dust coating the floor."; + name = "dust" + }, +/obj/structure/light_construct/small{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/shuttle/abandoned) (1,1,1) = {" aa @@ -1842,7 +1968,7 @@ bp by bH bW -aL +df ac cs cC @@ -1878,7 +2004,7 @@ bJ bx aL cl -aL +dh cE cR ac @@ -1940,7 +2066,7 @@ au aL aY ac -aL +dd bx bL bx @@ -1964,7 +2090,7 @@ bz ce ac cw -bx +di cV ac "} @@ -1987,7 +2113,7 @@ ae "} (17,1,1) = {" ah -ax +dc aN aL bj @@ -1995,10 +2121,10 @@ ax aL bO ax -aL +dg ac bx -bx +dj cX ac "} @@ -2025,7 +2151,7 @@ ay aP ba ac -aL +de bx bQ bz diff --git a/_maps/tgstation2.dm b/_maps/tgstation2.dm index 9ebc966dba..cbde71caaa 100644 --- a/_maps/tgstation2.dm +++ b/_maps/tgstation2.dm @@ -1,30 +1 @@ -#if !defined(MAP_FILE) - - #define TITLESCREEN "title" //Add an image in misc/fullscreen.dmi, and set this define to the icon_state, to set a custom titlescreen for your map - - #define MINETYPE "lavaland" - - #include "map_files\TgStation\tgstation.2.1.3.dmm" -#ifndef TRAVIS_MASS_MAP_BUILD - #include "map_files\generic\z2.dmm" - #include "map_files\generic\z3.dmm" - #include "map_files\generic\z4.dmm" - #include "map_files\generic\lavaland.dmm" - #include "map_files\generic\z6.dmm" - #include "map_files\generic\z7.dmm" - #include "map_files\generic\z8.dmm" - #include "map_files\generic\z9.dmm" - #include "map_files\generic\z10.dmm" - #include "map_files\generic\z11.dmm" - - #define MAP_PATH "map_files/TgStation" - #define MAP_FILE "tgstation.2.1.3.dmm" - #define MAP_NAME "Box Station" - - #define MAP_TRANSITION_CONFIG DEFAULT_MAP_TRANSITION_CONFIG -#endif -#elif !defined(MAP_OVERRIDE) - - #warn a map has already been included, ignoring /tg/station 2. - -#endif +#define FORCE_MAP "_maps/tgstation2.json" \ No newline at end of file diff --git a/_maps/tgstation2.json b/_maps/tgstation2.json new file mode 100644 index 0000000000..81c6fb7bb6 --- /dev/null +++ b/_maps/tgstation2.json @@ -0,0 +1,7 @@ +{ + "map_name": "Box Station", + "map_path": "map_files/TgStation", + "map_file": "tgstation.2.1.3.dmm", + "minetype": "lavaland", + "transition_config": "default" +} diff --git a/bot/minibot.py b/bot/minibot.py index bd7e62a934..82e46722f8 100644 --- a/bot/minibot.py +++ b/bot/minibot.py @@ -155,8 +155,6 @@ def signal_handler(signum, frame): if __name__ == "__main__": #listen to signals (quit on ctrl c or kill from OS) signal.signal(signal.SIGINT, signal_handler) - signal.signal(signal.SIGTERM, signal_handler) - signal.signal(signal.SIGQUIT, signal_handler) irc = setup_irc_socket() t = threading.Thread(target=nudge_handler) t.daemon = True diff --git a/code/__DEFINES/atom_hud.dm b/code/__DEFINES/atom_hud.dm index ef8a55e7d2..3a2534c00b 100644 --- a/code/__DEFINES/atom_hud.dm +++ b/code/__DEFINES/atom_hud.dm @@ -15,8 +15,9 @@ #define DIAG_MECH_HUD "11"// Mech health bar #define DIAG_BOT_HUD "12"// Bot HUDs #define DIAG_TRACK_HUD "13"// Mech tracking beacon +#define DIAG_AIRLOCK_HUD "14"//Airlock shock overlay //for antag huds. these are used at the /mob level -#define ANTAG_HUD "14" +#define ANTAG_HUD "15" //data HUD (medhud, sechud) defines //Don't forget to update human/New() if you change these! diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index c859b8d19e..4c07b1e243 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -75,4 +75,7 @@ #define TICKET_UNREPLIED "No" #define TICKET_INACTIVE "No" -#define TICKET_ACTIVE "Yes" \ No newline at end of file +#define TICKET_ACTIVE "Yes" + +//Individual logging define +#define INDIVIDUAL_LOOC_LOG "LOOC log" \ No newline at end of file diff --git a/code/__DEFINES/construction.dm b/code/__DEFINES/construction.dm index b724ef66cf..79d78dfbae 100644 --- a/code/__DEFINES/construction.dm +++ b/code/__DEFINES/construction.dm @@ -9,7 +9,6 @@ #define GIRDER_DISPLACED 3 #define GIRDER_DISASSEMBLED 4 - //rwall construction states #define INTACT 0 #define SUPPORT_LINES 1 @@ -19,6 +18,11 @@ #define SUPPORT_RODS 5 #define SHEATH 6 +//window construction states +#define WINDOW_OUT_OF_FRAME 0 +#define WINDOW_IN_FRAME 1 +#define WINDOW_SCREWED_TO_FRAME 2 + //plastic flaps construction states #define PLASTIC_FLAPS_NORMAL 0 #define PLASTIC_FLAPS_DETACHED 1 @@ -103,3 +107,8 @@ #define CAT_SANDWICH "Sandwiches" #define CAT_SOUP "Soups" #define CAT_SPAGHETTI "Spaghettis" + +#define RCD_FLOORWALL 1 +#define RCD_AIRLOCK 2 +#define RCD_DECONSTRUCT 3 +#define RCD_WINDOWGRILLE 4 \ No newline at end of file diff --git a/code/__DEFINES/events.dm b/code/__DEFINES/events.dm index 0eb196d130..cc19d9d358 100644 --- a/code/__DEFINES/events.dm +++ b/code/__DEFINES/events.dm @@ -2,3 +2,7 @@ #define NOT_ENOUGH_PLAYERS 3 #define MAP_ERROR 4 #define WAITING_FOR_SOMETHING 5 + +#define EVENT_CANT_RUN 0 +#define EVENT_READY 1 +#define EVENT_CANCELLED 2 \ No newline at end of file diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm index d736605855..0c07b50147 100644 --- a/code/__DEFINES/flags.dm +++ b/code/__DEFINES/flags.dm @@ -12,24 +12,28 @@ #define NOBLUDGEON 4 // when an item has this it produces no "X has been hit by Y with Z" message in the default attackby() #define MASKINTERNALS 8 // mask allows internals #define HEAR 16 // This flag is what recursive_hear_check() uses to determine wether to add an item to the hearer list or not. -#define HANDSLOW 32 // If an item has this flag, it will slow you to carry it #define CONDUCT 64 // conducts electricity (metal etc.) #define ABSTRACT 128 // for all things that are technically items but used for various different stuff, made it 128 because it could conflict with other flags other way #define NODECONSTRUCT 128 // For machines and structures that should not break into parts, eg, holodeck stuff #define OVERLAY_QUEUED 256 //atom queued to SSoverlay #define ON_BORDER 512 // item has priority to check when entering or leaving -#define EARBANGPROTECT 1024 - -#define NOSLIP 1024 //prevents from slipping on wet floors, in space etc (NOTE: flag shared with THICKMATERIAL for external suits and helmet) - -#define HEADBANGPROTECT 4096 +#define NOSLIP 1024 //prevents from slipping on wet floors, in space etc // BLOCK_GAS_SMOKE_EFFECT only used in masks at the moment. #define BLOCK_GAS_SMOKE_EFFECT 8192 // blocks the effect that chemical clouds would have on a mob --glasses, mask and helmets ONLY! (NOTE: flag shared with THICKMATERIAL) #define THICKMATERIAL 8192 //prevents syringes, parapens and hypos if the external suit or helmet (if targeting head) has this flag. Example: space suits, biosuit, bombsuits, thick suits that cover your body. (NOTE: flag shared with BLOCK_GAS_SMOKE_EFFECT) #define DROPDEL 16384 // When dropped, it calls qdel on itself -#define HOLOGRAM 32768 // HOlodeck shit should not be used in any fucking things + +/* Secondary atom flags, access using the SECONDARY_FLAG macros */ + +#define SLOWS_WHILE_IN_HAND "slows_while_in_hand" +#define NO_EMP_WIRES "no_emp_wires" +#define HOLOGRAM "hologram" +#define FROZEN "frozen" +#define STATIONLOVING "stationloving" +#define INFORM_ADMINS_ON_RELOCATE "inform_admins_on_relocate" +#define BANG_PROTECT "bang_protect" //turf-only flags #define NOJAUNT 1 @@ -71,3 +75,12 @@ // Flags for reagents #define REAGENT_NOREACT 1 + +//Fire and Acid stuff, for resistance_flags +#define LAVA_PROOF 1 +#define FIRE_PROOF 2 //100% immune to fire damage (but not necessarily to lava or heat) +#define FLAMMABLE 4 +#define ON_FIRE 8 +#define UNACIDABLE 16 //acid can't even appear on it, let alone melt it. +#define ACID_PROOF 32 //acid stuck on it doesn't melt it. +#define INDESTRUCTIBLE 64 //doesn't take damage diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm index d8d80a8b1c..e9a3b21bbb 100644 --- a/code/__DEFINES/is_helpers.dm +++ b/code/__DEFINES/is_helpers.dm @@ -107,7 +107,7 @@ //Misc mobs #define isobserver(A) (istype(A, /mob/dead/observer)) -#define isnewplayer(A) (istype(A, /mob/new_player)) +#define isnewplayer(A) (istype(A, /mob/dead/new_player)) #define isovermind(A) (istype(A, /mob/camera/blob)) diff --git a/code/__DEFINES/lighting.dm b/code/__DEFINES/lighting.dm index 14df624969..78395458ae 100644 --- a/code/__DEFINES/lighting.dm +++ b/code/__DEFINES/lighting.dm @@ -1,17 +1,69 @@ -//Arbitrary lighting related stuff +//Bay lighting engine shit, not in /code/modules/lighting because BYOND is being shit about it +#define LIGHTING_INTERVAL 5 // frequency, in 1/10ths of a second, of the lighting process -#define LIGHTING_CIRCULAR 1 //Comment this out to use old square lighting effects. -#define LIGHTING_CAP 10 //The lumcount level at which alpha is 0 and we're fully lit. -#define LIGHTING_CAP_FRAC (255/LIGHTING_CAP) //A precal'd variable we'll use in turf/redraw_lighting() -#define LIGHTING_ICON 'icons/effects/alphacolors.dmi' -#define LIGHTING_ICON_STATE "" -#define LIGHTING_ANIMATE_TIME 2 //Time to animate() any lighting change. Actual number pulled out of my ass -#define LIGHTING_MIN_ALPHA_DELTA_TO_ANIMATE 20 //How much does the alpha have to change to warrent an animation. -#define LIGHTING_DARKEST_VISIBLE_ALPHA 250 //Anything darker than this is so dark, we'll just consider the whole tile unlit -#define LIGHTING_LUM_FOR_FULL_BRIGHT 6 //Anything who's lum is lower then this starts off less bright. -#define LIGHTING_MIN_RADIUS 4 //Lowest radius a light source can effect. +#define LIGHTING_FALLOFF 1 // type of falloff to use for lighting; 1 for circular, 2 for square +#define LIGHTING_LAMBERTIAN 0 // use lambertian shading for light sources +#define LIGHTING_HEIGHT 1 // height off the ground of light sources on the pseudo-z-axis, you should probably leave this alone +#define LIGHTING_ROUND_VALUE 1 / 128 //Value used to round lumcounts, values smaller than 1/255 don't matter (if they do, thanks sinking points), greater values will make lighting less precise, but in turn increase performance, VERY SLIGHTLY. +#define LIGHTING_ICON 'icons/effects/lighting_object.png' // icon used for lighting shading effects -//different modes that lights can operate in -#define LIGHTING_REGULAR 1 //Apply all effects additively -#define LIGHTING_STARLIGHT 2 //Track all starlight but only apply brightest +// If the max of the lighting lumcounts of each spectrum drops below this, disable luminosity on the lighting objects. +// Set to zero to disable soft lighting. Luminosity changes then work if it's lit at all. +#define LIGHTING_SOFT_THRESHOLD 0 + +// If I were you I'd leave this alone. +#define LIGHTING_BASE_MATRIX \ + list \ + ( \ + LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \ + LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \ + LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \ + LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, LIGHTING_SOFT_THRESHOLD, 0, \ + 0, 0, 0, 1 \ + ) \ + +// Helpers so we can (more easily) control the colour matrices. +#define CL_MATRIX_RR 1 +#define CL_MATRIX_RG 2 +#define CL_MATRIX_RB 3 +#define CL_MATRIX_RA 4 +#define CL_MATRIX_GR 5 +#define CL_MATRIX_GG 6 +#define CL_MATRIX_GB 7 +#define CL_MATRIX_GA 8 +#define CL_MATRIX_BR 9 +#define CL_MATRIX_BG 10 +#define CL_MATRIX_BB 11 +#define CL_MATRIX_BA 12 +#define CL_MATRIX_AR 13 +#define CL_MATRIX_AG 14 +#define CL_MATRIX_AB 15 +#define CL_MATRIX_AA 16 +#define CL_MATRIX_CR 17 +#define CL_MATRIX_CG 18 +#define CL_MATRIX_CB 19 +#define CL_MATRIX_CA 20 + +//Some defines to generalise colours used in lighting. +//Important note on colors. Colors can end up significantly different from the basic html picture, especially when saturated +#define LIGHT_COLOR_RED "#FA8282" //Warm but extremely diluted red. rgb(250, 130, 130) +#define LIGHT_COLOR_GREEN "#64C864" //Bright but quickly dissipating neon green. rgb(100, 200, 100) +#define LIGHT_COLOR_BLUE "#6496FA" //Cold, diluted blue. rgb(100, 150, 250) + +#define LIGHT_COLOR_CYAN "#7DE1E1" //Diluted cyan. rgb(125, 225, 225) +#define LIGHT_COLOR_LIGHT_CYAN "#40CEFF" //More-saturated cyan. rgb(64, 206, 255) +#define LIGHT_COLOR_PINK "#E17DE1" //Diluted, mid-warmth pink. rgb(225, 125, 225) +#define LIGHT_COLOR_YELLOW "#E1E17D" //Dimmed yellow, leaning kaki. rgb(225, 225, 125) +#define LIGHT_COLOR_BROWN "#966432" //Clear brown, mostly dim. rgb(150, 100, 50) +#define LIGHT_COLOR_ORANGE "#FA9632" //Mostly pure orange. rgb(250, 150, 50) +#define LIGHT_COLOR_PURPLE "#952CF4" //Light Purple. rgb(149, 44, 244) +#define LIGHT_COLOR_LAVENDER "#9B51FF" //Less-saturated light purple. rgb(155, 81, 255) + +//These ones aren't a direct colour like the ones above, because nothing would fit +#define LIGHT_COLOR_FIRE "#FAA019" //Warm orange color, leaning strongly towards yellow. rgb(250, 160, 25) +#define LIGHT_COLOR_LAVA "#C48A18" //Very warm yellow, leaning slightly towards orange. rgb(196, 138, 24) +#define LIGHT_COLOR_FLARE "#FA644B" //Bright, non-saturated red. Leaning slightly towards pink for visibility. rgb(250, 100, 75) +#define LIGHT_COLOR_SLIME_LAMP "#AFC84B" //Weird color, between yellow and green, very slimy. rgb(175, 200, 75) +#define LIGHT_COLOR_TUNGSTEN "#FAE1AF" //Extremely diluted yellow, close to skin color (for some reason). rgb(250, 225, 175) +#define LIGHT_COLOR_HALOGEN "#F0FAFA" //Barely visible cyan-ish hue, as the doctor prescribed. rgb(240, 250, 250) diff --git a/code/__DEFINES/maps.dm b/code/__DEFINES/maps.dm new file mode 100644 index 0000000000..6212c2a4c7 --- /dev/null +++ b/code/__DEFINES/maps.dm @@ -0,0 +1,44 @@ +/* +The /tg/ codebase currently requires you to have 11 z-levels of the same size dimensions. +z-level order is important, the order you put them in inside the map config.dm will determine what z level number they are assigned ingame. +Names of z-level do not matter, but order does greatly, for instances such as checking alive status of revheads on z1 + +current as of 2016/6/2 +z1 = station +z2 = centcomm +z5 = mining +Everything else = randomized space +Last space-z level = empty +*/ + +#define CROSSLINKED 2 +#define SELFLOOPING 1 +#define UNAFFECTED 0 + +#define MAIN_STATION "Main Station" +#define CENTCOMM "CentComm" +#define EMPTY_AREA_1 "Empty Area 1" +#define EMPTY_AREA_2 "Empty Area 2" +#define MINING "Mining Asteroid" +#define EMPTY_AREA_3 "Empty Area 3" +#define EMPTY_AREA_4 "Empty Area 4" +#define EMPTY_AREA_5 "Empty Area 5" +#define EMPTY_AREA_6 "Empty Area 6" +#define EMPTY_AREA_7 "Empty Area 7" +#define EMPTY_AREA_8 "Empty Area 8" +#define AWAY_MISSION "Away Mission" + +//for modifying jobs +#define MAP_JOB_CHECK if(SSmapping.config.map_name != JOB_MODIFICATION_MAP_NAME) { return; } +#define MAP_JOB_CHECK_BASE if(SSmapping.config.map_name != JOB_MODIFICATION_MAP_NAME) { return ..(); } +#define MAP_REMOVE_JOB(jobpath) /datum/job/##jobpath/map_check() { return (SSmapping.config.map_name != JOB_MODIFICATION_MAP_NAME) && ..() } + +//zlevel defines, can be overridden for different maps in the appropriate _maps file. +#define ZLEVEL_STATION 1 +#define ZLEVEL_CENTCOM 2 +#define ZLEVEL_MINING 5 +#define ZLEVEL_LAVALAND 5 +#define ZLEVEL_EMPTY_SPACE 11 + +#define ZLEVEL_SPACEMIN 3 +#define ZLEVEL_SPACEMAX 11 \ No newline at end of file diff --git a/code/__DEFINES/math.dm b/code/__DEFINES/math.dm index 2ba2a7894b..76dae9e21e 100644 --- a/code/__DEFINES/math.dm +++ b/code/__DEFINES/math.dm @@ -17,6 +17,7 @@ #define TICK_USAGE_TO_MS(starting_tickusage) (TICK_DELTA_TO_MS(world.tick_usage-starting_tickusage)) #define PERCENT(val) (round(val*100, 0.1)) +#define CLAMP01(x) (Clamp(x, 0, 1)) //time of day but automatically adjusts to the server going into the next day within the same round. //for when you need a reliable time number that doesn't depend on byond time. diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index dab4471330..a06a4a61dd 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -63,7 +63,7 @@ #define HANDS_LAYER 3 #define BODY_FRONT_LAYER 2 #define FIRE_LAYER 1 //If you're on fire -#define TOTAL_LAYERS 31 //KEEP THIS UP-TO-DATE OR SHIT WILL BREAK ;_; +#define TOTAL_LAYERS 26 //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" @@ -149,16 +149,6 @@ #define STAGE_FIVE 9 #define STAGE_SIX 11 //From supermatter shard -//zlevel defines, can be overridden for different maps in the appropriate _maps file. -#define ZLEVEL_STATION 1 -#define ZLEVEL_CENTCOM 2 -#define ZLEVEL_MINING 5 -#define ZLEVEL_LAVALAND 5 -#define ZLEVEL_EMPTY_SPACE 11 - -#define ZLEVEL_SPACEMIN 3 -#define ZLEVEL_SPACEMAX 11 - //ticker.current_state values #define GAME_STATE_STARTUP 0 #define GAME_STATE_PREGAME 1 @@ -235,8 +225,9 @@ var/list/bloody_footprints_cache = list() //lighting area defines #define DYNAMIC_LIGHTING_DISABLED 0 //dynamic lighting disabled (area stays at full brightness) #define DYNAMIC_LIGHTING_ENABLED 1 //dynamic lighting enabled -#define DYNAMIC_LIGHTING_IFSTARLIGHT 2 //dynamic lighting enabled only if starlight is. -#define IS_DYNAMIC_LIGHTING(A) ( A.lighting_use_dynamic == DYNAMIC_LIGHTING_IFSTARLIGHT ? config.starlight : A.lighting_use_dynamic ) +#define DYNAMIC_LIGHTING_FORCED 2 //dynamic lighting enabled even if the area doesn't require power +#define DYNAMIC_LIGHTING_IFSTARLIGHT 3 //dynamic lighting enabled only if starlight is. +#define IS_DYNAMIC_LIGHTING(A) ( A.dynamic_lighting == DYNAMIC_LIGHTING_IFSTARLIGHT ? config.starlight : A.dynamic_lighting ) //subtypesof(), typesof() without the parent path #define subtypesof(typepath) ( typesof(typepath) - typepath ) @@ -244,15 +235,6 @@ var/list/bloody_footprints_cache = list() //Gets the turf this atom inhabits #define get_turf(A) (get_step(A, 0)) -//Fire and Acid stuff, for resistance_flags -#define LAVA_PROOF 1 -#define FIRE_PROOF 2 //100% immune to fire damage (but not necessarily to lava or heat) -#define FLAMMABLE 4 -#define ON_FIRE 8 -#define UNACIDABLE 16 //acid can't even appear on it, let alone melt it. -#define ACID_PROOF 32 //acid stuck on it doesn't melt it. -#define INDESTRUCTIBLE 64 //doesn't take damage - //Ghost orbit types: #define GHOST_ORBIT_CIRCLE "circle" #define GHOST_ORBIT_TRIANGLE "triangle" @@ -350,8 +332,8 @@ var/global/list/ghost_others_options = list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE #define SHELTER_DEPLOY_ANCHORED_OBJECTS "anchored objects" //debug printing macros -#define debug_world(msg) if (Debug2) world << "DEBUG: [msg]" -#define debug_admins(msg) if (Debug2) admins << "DEBUG: [msg]" +#define debug_world(msg) if (Debug2) to_chat(world, "DEBUG: [msg]") +#define debug_admins(msg) if (Debug2) to_chat(admins, "DEBUG: [msg]") #define debug_world_log(msg) if (Debug2) log_world("DEBUG: [msg]") #define COORD(A) "([A.x],[A.y],[A.z])" @@ -417,4 +399,4 @@ var/global/list/ghost_others_options = list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE #define TURF_DECAL_DIRT "dirt" //Error handler defines -#define ERROR_USEFUL_LEN 2 \ No newline at end of file +#define ERROR_USEFUL_LEN 2 diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index a9e6d1f68a..2d847f39b5 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -101,3 +101,10 @@ #define SNPC_STEALTH 2 #define SNPC_MARTYR 3 #define SNPC_PSYCHO 4 + +//Individual logging defines +#define INDIVIDUAL_ATTACK_LOG "Attack log" +#define INDIVIDUAL_SAY_LOG "Say log" +#define INDIVIDUAL_EMOTE_LOG "Emote log" +#define INDIVIDUAL_OOC_LOG "OOC log" +#define INDIVIDUAL_SHOW_ALL_LOG "All logs" \ No newline at end of file diff --git a/code/__DEFINES/say.dm b/code/__DEFINES/say.dm index 4b4417607b..2d460f2d8b 100644 --- a/code/__DEFINES/say.dm +++ b/code/__DEFINES/say.dm @@ -34,3 +34,5 @@ // A link given to ghost alice to follow bob #define FOLLOW_LINK(alice, bob) "(F)" +#define TURF_LINK(alice, turfy) "(T)" +#define FOLLOW_OR_TURF_LINK(alice, bob, turfy) "(F)" diff --git a/code/__DEFINES/shuttles.dm b/code/__DEFINES/shuttles.dm index a9c14bdd5c..ea52fb21ae 100644 --- a/code/__DEFINES/shuttles.dm +++ b/code/__DEFINES/shuttles.dm @@ -38,4 +38,9 @@ #define SHUTTLE_TRANSIT_BORDER 8 -#define PARALLAX_LOOP_TIME 25 \ No newline at end of file +#define PARALLAX_LOOP_TIME 25 +#define HYPERSPACE_END_TIME 5 + +#define HYPERSPACE_WARMUP 1 +#define HYPERSPACE_LAUNCH 2 +#define HYPERSPACE_END 3 \ No newline at end of file diff --git a/code/__DEFINES/status_effects.dm b/code/__DEFINES/status_effects.dm index ca376be72c..3bdd86ae39 100644 --- a/code/__DEFINES/status_effects.dm +++ b/code/__DEFINES/status_effects.dm @@ -18,6 +18,8 @@ #define STATUS_EFFECT_HISGRACE /datum/status_effect/his_grace //His Grace. +#define STATUS_EFFECT_WISH_GRANTERS_GIFT /datum/status_effect/wish_granters_gift //If you're currently resurrecting with the Wish Granter + ///////////// // DEBUFFS // ///////////// diff --git a/code/__HELPERS/_logging.dm b/code/__HELPERS/_logging.dm index ea6cecfbac..cceea91f64 100644 --- a/code/__HELPERS/_logging.dm +++ b/code/__HELPERS/_logging.dm @@ -12,7 +12,7 @@ //print a testing-mode debug message to world.log and world #ifdef TESTING -#define testing(msg) log_world("## TESTING: [msg]"); world << "## TESTING: [msg]" +#define testing(msg) log_world("## TESTING: [msg]"); to_chat(world, "## TESTING: [msg]") #else #define testing(msg) #endif @@ -89,6 +89,10 @@ if (config.log_pda) diary << "\[[time_stamp()]]CHAT: [text]" +/proc/log_sql(text) + if(config.sql_enabled) + diary << "\[[time_stamp()]]SQL: [text]" + //This replaces world.log so it displays both in DD and the file /proc/log_world(text) if(config && config.log_runtimes) diff --git a/code/__HELPERS/bandetect.dm b/code/__HELPERS/bandetect.dm index f7887d3261..9a43f30372 100644 --- a/code/__HELPERS/bandetect.dm +++ b/code/__HELPERS/bandetect.dm @@ -2,14 +2,13 @@ /client/proc/join_date_check(y,m,d) - var/DBQuery/query = dbcon.NewQuery("SELECT DATEDIFF(Now(),'[y]-[m]-[d]')") + var/DBQuery/query_datediff = dbcon.NewQuery("SELECT DATEDIFF(Now(),'[y]-[m]-[d]')") - if(!query.Execute()) - log_world("SQL ERROR doing datediff. Error : \[[query.ErrorMsg()]\]\n") + if(!query_datediff.Execute()) return FALSE - if(query.NextRow()) - var/diff = text2num(query.item[1]) + if(query_datediff.NextRow()) + var/diff = text2num(query_datediff.item[1]) if(config.use_account_age_for_jobs) player_age = max(0,diff) //So job code soesn't freak out if they are time traveling. if(diff < YOUNG) diff --git a/code/__HELPERS/cmp.dm b/code/__HELPERS/cmp.dm index f963f09a35..a84bec4d4e 100644 --- a/code/__HELPERS/cmp.dm +++ b/code/__HELPERS/cmp.dm @@ -29,15 +29,13 @@ var/cmp_field = "name" /proc/cmp_ckey_dsc(client/a, client/b) return sorttext(a.ckey, b.ckey) -/proc/cmp_subsystem_init(datum/subsystem/a, datum/subsystem/b) +/proc/cmp_subsystem_init(datum/controller/subsystem/a, datum/controller/subsystem/b) return b.init_order - a.init_order -/proc/cmp_subsystem_display(datum/subsystem/a, datum/subsystem/b) - if(a.display_order == b.display_order) - return sorttext(b.name, a.name) - return a.display_order - b.display_order +/proc/cmp_subsystem_display(datum/controller/subsystem/a, datum/controller/subsystem/b) + return sorttext(b.name, a.name) -/proc/cmp_subsystem_priority(datum/subsystem/a, datum/subsystem/b) +/proc/cmp_subsystem_priority(datum/controller/subsystem/a, datum/controller/subsystem/b) return a.priority - b.priority /proc/cmp_timer(datum/timedevent/a, datum/timedevent/b) diff --git a/code/__HELPERS/files.dm b/code/__HELPERS/files.dm index f16e5f9db7..0b501c377a 100644 --- a/code/__HELPERS/files.dm +++ b/code/__HELPERS/files.dm @@ -39,7 +39,7 @@ var/extension = copytext(path,-4,0) if( !fexists(path) || !(extension in valid_extensions) ) - src << "Error: browse_files(): File not found/Invalid file([path])." + to_chat(src, "Error: browse_files(): File not found/Invalid file([path]).") return return path @@ -53,7 +53,7 @@ /client/proc/file_spam_check() var/time_to_wait = fileaccess_timer - world.time if(time_to_wait > 0) - src << "Error: file_spam_check(): Spam. Please wait [round(time_to_wait/10)] seconds." + to_chat(src, "Error: file_spam_check(): Spam. Please wait [round(time_to_wait/10)] seconds.") return 1 fileaccess_timer = world.time + FTPDELAY return 0 diff --git a/code/__HELPERS/flags.dm b/code/__HELPERS/flags.dm new file mode 100644 index 0000000000..8ff099ef27 --- /dev/null +++ b/code/__HELPERS/flags.dm @@ -0,0 +1,3 @@ +#define HAS_SECONDARY_FLAG(atom, sflag) (atom.secondary_flags ? atom.secondary_flags[sflag] : FALSE) +#define SET_SECONDARY_FLAG(atom, sflag) if(!atom.secondary_flags) { atom.secondary_flags = list(); } atom.secondary_flags[sflag] = TRUE; +#define CLEAR_SECONDARY_FLAG(atom, sflag) if(atom.secondary_flags) atom.secondary_flags[sflag] = null diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 8eaa331bc4..7ce7dc3705 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -422,20 +422,20 @@ window_flash(G.client) switch(ignore_category ? askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No","Never for this round", StealFocus=0, Timeout=poll_time) : askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No", StealFocus=0, Timeout=poll_time)) if(1) - G << "Choice registered: Yes." + to_chat(G, "Choice registered: Yes.") if((world.time-time_passed)>poll_time) - G << "Sorry, you were too late for the consideration!" + to_chat(G, "Sorry, you were too late for the consideration!") G << 'sound/machines/buzz-sigh.ogg' else candidates += G if(2) - G << "Choice registered: No." + to_chat(G, "Choice registered: No.") if(3) var/list/L = poll_ignore[ignore_category] if(!L) poll_ignore[ignore_category] = list() poll_ignore[ignore_category] += G.ckey - G << "Choice registered: Never for this round." + to_chat(G, "Choice registered: Never for this round.") /proc/pollCandidates(var/Question, var/jobbanType, var/datum/game_mode/gametypeCheck, var/be_special_flag = 0, var/poll_time = 300, var/ignore_category = null, flashwindow = TRUE) var/list/mob/dead/observer/candidates = list() @@ -498,10 +498,10 @@ return new_character -/proc/send_to_playing_players(thing) //sends a whatever to all playing players; use instead of world << where needed +/proc/send_to_playing_players(thing) //sends a whatever to all playing players; use instead of to_chat(world, where needed) for(var/M in player_list) if(M && !isnewplayer(M)) - M << thing + to_chat(M, thing) /proc/window_flash(client/C, ignorepref = FALSE) if(ismob(C)) @@ -511,3 +511,28 @@ if(!C || (!C.prefs.windowflashing && !ignorepref)) return winset(C, "mainwindow", "flash=5") + +/proc/AnnounceArrival(var/mob/living/carbon/human/character, var/rank) + if(ticker.current_state != GAME_STATE_PLAYING || !character) + return + var/area/A = get_area(character) + var/message = "\ + [character.real_name] ([rank]) has arrived at the station at \ + [A.name]." + deadchat_broadcast(message, follow_target = character, message_type=DEADCHAT_ARRIVALRATTLE) + if((!announcement_systems.len) || (!character.mind)) + return + if((character.mind.assigned_role == "Cyborg") || (character.mind.assigned_role == character.mind.special_role)) + return + + var/obj/machinery/announcement_system/announcer = pick(announcement_systems) + announcer.announce("ARRIVAL", character.real_name, rank, list()) //make the list empty to make it announce it in common + +/proc/GetRedPart(const/hexa) + return hex2num(copytext(hexa, 2, 4)) + +/proc/GetGreenPart(const/hexa) + return hex2num(copytext(hexa, 4, 6)) + +/proc/GetBluePart(const/hexa) + return hex2num(copytext(hexa, 6, 8)) \ No newline at end of file diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index 79429cff2c..81881f76b5 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -94,7 +94,7 @@ var/list/L = chemical_reactions_list[reaction] for(var/t in L) . += " has: [t]\n" - world << . + to_chat(world, .) */ //creates every subtype of prototype (excluding prototype) and adds it to list L. diff --git a/code/__HELPERS/icons.dm b/code/__HELPERS/icons.dm index e2a29542ba..08569a8ee1 100644 --- a/code/__HELPERS/icons.dm +++ b/code/__HELPERS/icons.dm @@ -167,7 +167,7 @@ mob Output_Icon() set name = "2. Output Icon" - src<<"Icon is: \icon[getFlatIcon(src)]" + to_chat(src, "Icon is: \icon[getFlatIcon(src)]") Label_Icon() set name = "3. Label Icon" @@ -869,7 +869,7 @@ The _flatIcons list is a cache for generated icon files. text_image.color = AverageColour(atom_icon) text_image.pixel_x = 7 text_image.pixel_y = 5 - del(atom_icon) + qdel(atom_icon) return text_image var/global/list/friendly_animal_types = list() @@ -954,6 +954,8 @@ var/global/list/humanoid_icon_cache = list() if(outfit) body.equipOutfit(outfit, TRUE) + SSoverlays.Flush() + var/icon/out_icon = icon('icons/effects/effects.dmi', "nothing") body.setDir(NORTH) @@ -993,7 +995,7 @@ var/list/freeze_item_icons = list() return "\ref[initial(icon)]-[initial(icon_state)]" /obj/proc/make_frozen_visual() - if(!is_frozen && (initial(icon) && initial(icon_state))) + if(!HAS_SECONDARY_FLAG(src, FROZEN) && (initial(icon) && initial(icon_state))) var/index = freeze_icon_index() var/icon/IC var/icon/P = freeze_item_icons[index] @@ -1007,10 +1009,10 @@ var/list/freeze_item_icons = list() freeze_item_icons[index] = P icon = P name = "frozen [name]" - is_frozen = TRUE + SET_SECONDARY_FLAG(src, FROZEN) //Assumes already frozed obj/proc/make_unfrozen() icon = initial(icon) name = replacetext(name, "frozen ", "") - is_frozen = FALSE + CLEAR_SECONDARY_FLAG(src, FROZEN) diff --git a/code/__HELPERS/maths.dm b/code/__HELPERS/maths.dm index 84f55d1aef..f4bcfcca76 100644 --- a/code/__HELPERS/maths.dm +++ b/code/__HELPERS/maths.dm @@ -139,7 +139,7 @@ var/list/sqrtTable = list(1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, var/size_factor = ((-cos(inputToDegrees) +1) /2) //returns a value from 0 to 1 return size_factor + scaling_modifier //scale mod of 0 results in a number from 0 to 1. A scale modifier of +0.5 returns 0.5 to 1.5 - //world<< "Transform multiplier of [src] is [size_factor + scaling_modifer]" + //to_chat(world, "Transform multiplier of [src] is [size_factor + scaling_modifer]") diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 02dc12ddd9..61e7f9364a 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -259,16 +259,12 @@ Proc for attack log creation, because really why not living_target = target if(is_mob_user) - var/message = "\[[time_stamp()]\] [user ? "[user.name][(user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"] has [what_done] [target ? "[target.name][(is_mob_target && target.ckey) ? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][(living_target) ? " (NEWHP: [living_target.health])" : ""][(attack_location) ? "([attack_location.x],[attack_location.y],[attack_location.z])" : ""]" - user.attack_log += message - if(user.mind) - user.mind.attack_log += message + var/message = "has [what_done] [target ? "[target.name][(is_mob_target && target.ckey) ? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][(living_target) ? " (NEWHP: [living_target.health])" : ""][(attack_location) ? "([attack_location.x],[attack_location.y],[attack_location.z])" : ""]" + user.log_message(message, INDIVIDUAL_ATTACK_LOG) if(is_mob_target) - var/message = "\[[time_stamp()]\] [target ? "[target.name][(target.ckey) ? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"] has been [what_done] by [user ? "[user.name][(is_mob_user && user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][(living_target) ? " (NEWHP: [living_target.health])" : ""][(attack_location) ? "([attack_location.x],[attack_location.y],[attack_location.z])" : ""]" - target.attack_log += message - if(target.mind) - target.mind.attack_log += message + var/message = "has been [what_done] by [user ? "[user.name][(is_mob_user && user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][(living_target) ? " (NEWHP: [living_target.health])" : ""][(attack_location) ? "([attack_location.x],[attack_location.y],[attack_location.z])" : ""]" + target.log_message(message, INDIVIDUAL_ATTACK_LOG) log_attack("[user ? "[user.name][(is_mob_user && user.ckey) ? "([user.ckey])" : ""]" : "NON-EXISTANT SUBJECT"] [what_done] [target ? "[target.name][(is_mob_target && target.ckey)? "([target.ckey])" : ""]" : "NON-EXISTANT SUBJECT"][object ? " with [object]" : " "][addition][(living_target) ? " (NEWHP: [living_target.health])" : ""][(attack_location) ? "([attack_location.x],[attack_location.y],[attack_location.z])" : ""]") @@ -450,7 +446,7 @@ Proc for attack log creation, because really why not for(var/i in 1 to step_count) step(X, pick(NORTH, SOUTH, EAST, WEST)) -/proc/deadchat_broadcast(message, mob/follow_target=null, speaker_key=null, message_type=DEADCHAT_REGULAR) +/proc/deadchat_broadcast(message, mob/follow_target=null, turf/turf_target=null, speaker_key=null, message_type=DEADCHAT_REGULAR) for(var/mob/M in player_list) var/datum/preferences/prefs if(M.client && M.client.prefs) @@ -476,8 +472,20 @@ Proc for attack log creation, because really why not if(prefs.toggles & DISABLE_ARRIVALRATTLE) continue - if(isobserver(M) && follow_target) - var/link = FOLLOW_LINK(M, follow_target) - M << "[link] [message]" + if(isobserver(M)) + var/rendered_message = message + + if(follow_target) + var/F + if(turf_target) + F = FOLLOW_OR_TURF_LINK(M, follow_target, turf_target) + else + F = FOLLOW_LINK(M, follow_target) + rendered_message = "[F] [message]" + else if(turf_target) + var/turf_link = TURF_LINK(M, turf_target) + rendered_message = "[turf_link] [message]" + + to_chat(M, rendered_message) else - M << "[message]" + to_chat(M, message) diff --git a/code/__HELPERS/names.dm b/code/__HELPERS/names.dm index 61980062de..eeee27ab99 100644 --- a/code/__HELPERS/names.dm +++ b/code/__HELPERS/names.dm @@ -1,3 +1,5 @@ +#define ION_FILE "ion_laws.json" + /proc/lizard_name(gender) if(gender == MALE) return "[pick(lizard_names_male)]-[pick(lizard_names_male)]" @@ -170,12 +172,16 @@ var/syndicate_code_response//Code response for traitors. 25; 5 ) - var/safety[] = list(1,2,3)//Tells the proc which options to remove later on. - var/nouns[] = list("love","hate","anger","peace","pride","sympathy","bravery","loyalty","honesty","integrity","compassion","charity","success","courage","deceit","skill","beauty","brilliance","pain","misery","beliefs","dreams","justice","truth","faith","liberty","knowledge","thought","information","culture","trust","dedication","progress","education","hospitality","leisure","trouble","friendships", "relaxation") - var/drinks[] = list("vodka and tonic","gin fizz","bahama mama","manhattan","black Russian","whiskey soda","long island iced tea","margarita","Irish coffee"," manly dwarf","Irish cream","doctor's delight","Beepksy Smash","tequila sunrise","brave bull","gargle blaster","bloody mary","whiskey cola","white Russian","vodka martini","martini","Cuba libre","kahlua","vodka","wine","moonshine") - var/locations[] = teleportlocs.len ? teleportlocs : drinks//if null, defaults to drinks instead. + var/list/safety = list(1,2,3)//Tells the proc which options to remove later on. + var/nouns = strings(ION_FILE, "ionabstract") + var/objects = strings(ION_FILE, "ionobjects") + var/adjectives = strings(ION_FILE, "ionadjectives") + var/threats = strings(ION_FILE, "ionthreats") + var/foods = strings(ION_FILE, "ionfood") + var/drinks = strings(ION_FILE, "iondrinks") + var/list/locations = teleportlocs.len ? teleportlocs : drinks //if null, defaults to drinks instead. - var/names[] = list() + var/list/names = list() for(var/datum/data/record/t in data_core.general)//Picks from crew manifest. names += t.fields["name"] @@ -205,23 +211,34 @@ var/syndicate_code_response//Code response for traitors. code_phrase += pick(get_all_jobs())//Returns a job. safety -= 1 if(2) - switch(rand(1,2))//Places or things. + switch(rand(1,3))//Food, drinks, or things. Only selectable once. if(1) - code_phrase += pick(drinks) + code_phrase += lowertext(pick(drinks)) if(2) + code_phrase += lowertext(pick(foods)) + if(3) code_phrase += pick(locations) safety -= 2 if(3) - switch(rand(1,3))//Nouns, adjectives, verbs. Can be selected more than once. + switch(rand(1,4))//Abstract nouns, objects, adjectives, threats. Can be selected more than once. if(1) - code_phrase += pick(nouns) + code_phrase += lowertext(pick(nouns)) if(2) - code_phrase += pick(adjectives) + code_phrase += lowertext(pick(objects)) if(3) - code_phrase += pick(verbs) + code_phrase += lowertext(pick(adjectives)) + if(4) + code_phrase += lowertext(pick(threats)) if(words==1) code_phrase += "." else code_phrase += ", " return code_phrase + +/proc/change_station_name(designation) + if(config && config.server_name) + world.name = "[config.server_name]: [designation]" + else + world.name = designation + station_name = designation diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm index c49f6419d1..9af9de3ed0 100644 --- a/code/__HELPERS/text.dm +++ b/code/__HELPERS/text.dm @@ -14,8 +14,8 @@ */ // Run all strings to be used in an SQL query through this proc first to properly escape out injection attempts. -/proc/sanitizeSQL(t as text) - var/sqltext = dbcon.Quote(t); +/proc/sanitizeSQL(t) + var/sqltext = dbcon.Quote("[t]"); return copytext(sqltext, 2, lentext(sqltext));//Quote() adds quotes around input, we already do that /proc/format_table_name(table as text) @@ -553,4 +553,60 @@ var/list/binary = list("0","1") var/list/tosend = list() tosend["data"] = finalized - log << json_encode(tosend) \ No newline at end of file + log << json_encode(tosend) + +//Used for applying byonds text macros to strings that are loaded at runtime +/proc/apply_text_macros(string) + var/next_backslash = findtext(string, "\\") + if(!next_backslash) + return string + + var/leng = length(string) + + var/next_space = findtext(string, " ", next_backslash + 1) + if(!next_space) + next_space = leng - next_backslash + + if(!next_space) //trailing bs + return string + + var/base = next_backslash == 1 ? "" : copytext(string, 1, next_backslash) + var/macro = lowertext(copytext(string, next_backslash + 1, next_space)) + var/rest = next_backslash > leng ? "" : copytext(string, next_space + 1) + + //See http://www.byond.com/docs/ref/info.html#/DM/text/macros + switch(macro) + //prefixes/agnostic + if("the") + rest = text("\the []", rest) + if("a") + rest = text("\a []", rest) + if("an") + rest = text("\an []", rest) + if("proper") + rest = text("\proper []", rest) + if("improper") + rest = text("\improper []", rest) + if("roman") + rest = text("\roman []", rest) + //postfixes + if("th") + base = text("[]\th", rest) + if("s") + base = text("[]\s", rest) + if("he") + base = text("[]\he", rest) + if("she") + base = text("[]\she", rest) + if("his") + base = text("[]\his", rest) + if("himself") + base = text("[]\himself", rest) + if("herself") + base = text("[]\herself", rest) + if("hers") + base = text("[]\hers", rest) + + . = base + if(rest) + . += .(rest) diff --git a/code/__HELPERS/time.dm b/code/__HELPERS/time.dm index 94a97e2b3b..3770fedf6f 100644 --- a/code/__HELPERS/time.dm +++ b/code/__HELPERS/time.dm @@ -2,8 +2,9 @@ /proc/worldtime2text() return gameTimestamp("hh:mm:ss") -/proc/time_stamp(format = "hh:mm:ss") - return time2text(world.timeofday, format) +/proc/time_stamp(format = "hh:mm:ss", show_ds) + var/time_string = time2text(world.timeofday, format) + return show_ds ? "[time_string]:[world.timeofday % 10]" : time_string /proc/gameTimestamp(format = "hh:mm:ss") // Get the game time in text return time2text(world.time - timezoneOffset + 432000 - round_start_time, format) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 9dd1fd5ac5..9b98e7c1c1 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -186,15 +186,17 @@ Turf and target are seperate in case you want to teleport some distance from a t return 1 //Generalised helper proc for letting mobs rename themselves. Used to be clname() and ainame() -/mob/proc/rename_self(role) +/mob/proc/rename_self(role, client/C) + if(!C) + C = client var/oldname = real_name var/newname var/loop = 1 var/safety = 0 while(loop && safety < 5) - if(client && client.prefs.custom_names[role] && !safety) - newname = client.prefs.custom_names[role] + if(C && C.prefs.custom_names[role] && !safety) + newname = C.prefs.custom_names[role] else switch(role) if("clown") @@ -329,7 +331,7 @@ Turf and target are seperate in case you want to teleport some distance from a t moblist.Add(M) for(var/mob/dead/observer/M in sortmob) moblist.Add(M) - for(var/mob/new_player/M in sortmob) + for(var/mob/dead/new_player/M in sortmob) moblist.Add(M) for(var/mob/living/carbon/monkey/M in sortmob) moblist.Add(M) @@ -719,11 +721,12 @@ Turf and target are seperate in case you want to teleport some distance from a t var/pixel_y_offset = AM.pixel_y + M.get_y_shift() //Irregular objects - if(AM.bound_height != world.icon_size || AM.bound_width != world.icon_size) - var/icon/AMicon = icon(AM.icon, AM.icon_state) + var/icon/AMicon = icon(AM.icon, AM.icon_state) + var/icon/AMiconheight = AMicon.Height() + var/icon/AMiconwidth = AMicon.Width() + if(AMiconheight != world.icon_size || AMiconwidth != world.icon_size) pixel_x_offset += ((AMicon.Width()/world.icon_size)-1)*(world.icon_size*0.5) pixel_y_offset += ((AMicon.Height()/world.icon_size)-1)*(world.icon_size*0.5) - qdel(AMicon) //DY and DX var/rough_x = round(round(pixel_x_offset,world.icon_size)/world.icon_size) @@ -731,6 +734,8 @@ Turf and target are seperate in case you want to teleport some distance from a t //Find coordinates var/turf/T = get_turf(AM) //use AM's turfs, as it's coords are the same as AM's AND AM's coords are lost if it is inside another atom + if(!T) + return null var/final_x = T.x + rough_x var/final_y = T.y + rough_y @@ -832,20 +837,20 @@ var/list/WALLITEMS_INVERSE = typecacheof(list( var/pressure = air_contents.return_pressure() var/total_moles = air_contents.total_moles() - user << "Results of analysis of \icon[icon] [target]." + to_chat(user, "Results of analysis of \icon[icon] [target].") if(total_moles>0) - user << "Pressure: [round(pressure,0.1)] kPa" + to_chat(user, "Pressure: [round(pressure,0.1)] kPa") var/list/cached_gases = air_contents.gases for(var/id in cached_gases) var/gas_concentration = cached_gases[id][MOLES]/total_moles if(id in hardcoded_gases || gas_concentration > 0.001) //ensures the four primary gases are always shown. - user << "[cached_gases[id][GAS_META][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] %" + to_chat(user, "[cached_gases[id][GAS_META][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] %") - user << "Temperature: [round(air_contents.temperature-T0C)] °C" + to_chat(user, "Temperature: [round(air_contents.temperature-T0C)] °C") else - user << "[target] is empty!" + to_chat(user, "[target] is empty!") return /proc/check_target_facings(mob/living/initator, mob/living/target) @@ -919,19 +924,6 @@ var/list/WALLITEMS_INVERSE = typecacheof(list( return !QDELETED(D) return 0 - - -//Get the dir to the RIGHT of dir if they were on a clock -//NORTH --> NORTHEAST -/proc/get_clockwise_dir(dir) - . = angle2dir(dir2angle(dir)+45) - -//Get the dir to the LEFT of dir if they were on a clock -//NORTH --> NORTHWEST -/proc/get_anticlockwise_dir(dir) - . = angle2dir(dir2angle(dir)-45) - - //Compare A's dir, the clockwise dir of A and the anticlockwise dir of A //To the opposite dir of the dir returned by get_dir(B,A) //If one of them is a match, then A is facing B @@ -943,8 +935,8 @@ var/list/WALLITEMS_INVERSE = typecacheof(list( if(LA.lying) return 0 var/goal_dir = angle2dir(dir2angle(get_dir(B,A)+180)) - var/clockwise_A_dir = get_clockwise_dir(A.dir) - var/anticlockwise_A_dir = get_anticlockwise_dir(B.dir) + var/clockwise_A_dir = turn(A.dir, -45) + var/anticlockwise_A_dir = turn(B.dir, 45) if(A.dir == goal_dir || clockwise_A_dir == goal_dir || anticlockwise_A_dir == goal_dir) return 1 @@ -1321,6 +1313,42 @@ proc/pick_closest_path(value, list/matches = get_fancy_list_of_atom_types()) else . = "" +/var/mob/dview/dview_mob = new + +//Version of view() which ignores darkness, because BYOND doesn't have it (I actually suggested it but it was tagged redundant, BUT HEARERS IS A T- /rant). +/proc/dview(var/range = world.view, var/center, var/invis_flags = 0) + if(!center) + return + + dview_mob.loc = center + + dview_mob.see_invisible = invis_flags + + . = view(range, dview_mob) + dview_mob.loc = null + +/mob/dview + invisibility = 101 + density = 0 + see_in_dark = 1e6 + anchored = 1 + +/mob/dview/Destroy(force=0) + stack_trace("ALRIGHT WHICH FUCKER TRIED TO DELETE *MY* DVIEW?") + + if (!force) + return QDEL_HINT_LETMELIVE + + world.log << "EVACUATE THE SHITCODE IS TRYING TO STEAL MUH JOBS" + global.dview_mob = new + return QDEL_HINT_QUEUE + + +#define FOR_DVIEW(type, range, center, invis_flags) \ + dview_mob.loc = center; \ + dview_mob.see_invisible = invis_flags; \ + for(type in view(range, dview_mob)) + //can a window be here, or is there a window blocking it? /proc/valid_window_location(turf/T, dir_to_check) if(!T) @@ -1371,7 +1399,7 @@ var/valid_HTTPSGet = FALSE \______(_______;;; __;;; */ var/temp_file = "HTTPSGetOutput.txt" - var/command + var/command if(world.system_type == MS_WINDOWS) command = "powershell -Command \"wget [url] -OutFile [temp_file]\"" else if(world.system_type == UNIX) @@ -1393,3 +1421,8 @@ var/valid_HTTPSGet = FALSE . = file2text(f) f = null fdel(temp_file) + +#define UNTIL(X) while(!(X)) stoplag() + +/proc/to_chat(target, message) + target << message diff --git a/code/_globalvars/configuration.dm b/code/_globalvars/configuration.dm index cb3e38a92f..a83a1bd80d 100644 --- a/code/_globalvars/configuration.dm +++ b/code/_globalvars/configuration.dm @@ -1,5 +1,4 @@ var/datum/configuration/config = null -var/datum/protected_configuration/protected_config = null var/host = null var/join_motd = null @@ -26,10 +25,6 @@ var/Debug2 = 0 var/global/comms_key = "default_pwd" var/global/comms_allowed = 0 //By default, the server does not allow messages to be sent to it, unless the key is strong enough (this is to prevent misconfigured servers from becoming vulnerable) -//Cross server communications -var/global/cross_address = "byond://" //This needs to be global as the message sent contains the comms key. -var/global/cross_allowed = 0 //Don't bother attempting to send if the address wasn't set. - var/global/medal_hub = null var/global/medal_pass = " " var/global/medals_enabled = TRUE //will be auto set to false if the game fails contacting the medal hub to prevent unneeded calls. diff --git a/code/_globalvars/lists/mobs.dm b/code/_globalvars/lists/mobs.dm index 31500bb16f..876a11a7a8 100644 --- a/code/_globalvars/lists/mobs.dm +++ b/code/_globalvars/lists/mobs.dm @@ -7,10 +7,10 @@ var/list/stealthminID = list() //reference list with IDs that store ckeys, //Since it didn't really belong in any other category, I'm putting this here //This is for procs to replace all the goddamn 'in world's that are chilling around the code -var/global/list/player_list = list() //all mobs **with clients attached**. Excludes /mob/new_player +var/global/list/player_list = list() //all mobs **with clients attached**. Excludes /mob/dead/new_player var/global/list/mob_list = list() //all mobs, including clientless -var/global/list/living_mob_list = list() //all alive mobs, including clientless. Excludes /mob/new_player -var/global/list/dead_mob_list = list() //all dead mobs, including clientless. Excludes /mob/new_player +var/global/list/living_mob_list = list() //all alive mobs, including clientless. Excludes /mob/dead/new_player +var/global/list/dead_mob_list = list() //all dead mobs, including clientless. Excludes /mob/dead/new_player var/global/list/joined_player_list = list() //all clients that have joined the game at round-start or as a latejoin. var/global/list/silicon_mobs = list() //all silicon mobs var/global/list/pai_list = list() \ No newline at end of file diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index c5b1c7de61..d16ada4f05 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -27,3 +27,4 @@ var/global/list/poi_list = list() //list of points of interest for observe/f var/global/list/pinpointer_list = list() //list of all pinpointers. Used to change stuff they are pointing to all at once. var/global/list/zombie_infection_list = list() // A list of all zombie_infection organs, for any mass "animation" var/global/list/meteor_list = list() // List of all meteors. +var/global/list/active_jammers = list() // List of active radio jammers diff --git a/code/_globalvars/lists/poll_ignore.dm b/code/_globalvars/lists/poll_ignore.dm index 8c791bce9b..23db4f6ae6 100644 --- a/code/_globalvars/lists/poll_ignore.dm +++ b/code/_globalvars/lists/poll_ignore.dm @@ -3,5 +3,6 @@ #define POLL_IGNORE_PAI "pai" #define POLL_IGNORE_SENTIENCE_POTION "sentience_potion" #define POLL_IGNORE_POSSESSED_BLADE "possessed_blade" +#define POLL_IGNORE_ALIEN_LARVA "alien_larva" -var/list/poll_ignore = list() \ No newline at end of file +var/list/poll_ignore = list() diff --git a/code/_globalvars/misc.dm b/code/_globalvars/misc.dm index 513f4c7482..734f673588 100644 --- a/code/_globalvars/misc.dm +++ b/code/_globalvars/misc.dm @@ -6,17 +6,4 @@ var/timezoneOffset = 0 // The difference betwen midnight (of the host computer) // However it'd be ok to use for accessing attack logs and such too, which are even laggier. var/fileaccess_timer = 0 -var/TAB = "    " - - - -var/map_ready = 0 -/* - basically, this will be used to avoid initialize() being called twice for objects - initialize() is necessary because the map is instanced on a turf-by-turf basis - i.e. all obj on a turf are instanced, then all mobs on that turf, before moving to the next turf (starting bottom-left) - This means if we want to say, get any neighbouring objects in New(), only objects to the south and west will exist yet. - Therefore, we'd need to use spawn inside New() to wait for the surrounding turf contents to be instanced - However, using lots of spawn has a severe performance impact, and often results in spaghetti-code - map_ready will be set to 1 when world/New() is called (which happens just after the map is instanced) -*/ \ No newline at end of file +var/TAB = "    " \ No newline at end of file diff --git a/code/_globalvars/station.dm b/code/_globalvars/station.dm index 6d3ddf81be..ba0055b58d 100644 --- a/code/_globalvars/station.dm +++ b/code/_globalvars/station.dm @@ -5,6 +5,4 @@ var/global/datum/datacore/data_core = null var/CELLRATE = 0.002 // multiplier for watts per tick <> cell storage (eg: .002 means if there is a load of 1000 watts, 20 units will be taken from a cell per second) var/CHARGELEVEL = 0.001 // Cap for how fast cells charge, as a percentage-per-tick (.001 means cellcharge is capped to 1% per second) -var/list/powernets = list() - -var/map_name = "Unknown" //The name of the map that is loaded. Assigned in world/New() \ No newline at end of file +var/list/powernets = list() \ No newline at end of file diff --git a/code/_onclick/adjacent.dm b/code/_onclick/adjacent.dm index 9f9cbca252..88862965d8 100644 --- a/code/_onclick/adjacent.dm +++ b/code/_onclick/adjacent.dm @@ -37,7 +37,7 @@ // Non diagonal case if(T0.x == x || T0.y == y) // Check for border blockages - return T0.ClickCross(get_dir(T0,src), border_only = 1) && src.ClickCross(get_dir(src,T0), border_only = 1, target_atom = target) + return T0.ClickCross(get_dir(T0,src), border_only = 1, target_atom = target) && src.ClickCross(get_dir(src,T0), border_only = 1, target_atom = target) // Diagonal case var/in_dir = get_dir(T0,src) // eg. northwest (1+8) = 9 (00001001) @@ -45,11 +45,11 @@ var/d2 = in_dir&12 // eg. west (1+8)&12 (0000 1100) = 8 (0000 1000) for(var/d in list(d1,d2)) - if(!T0.ClickCross(d, border_only = 1)) + if(!T0.ClickCross(d, border_only = 1, target_atom = target)) continue // could not leave T0 in that direction var/turf/T1 = get_step(T0,d) - if(!T1 || T1.density || !T1.ClickCross(get_dir(T1,T0) | get_dir(T1,src), border_only = 0)) //let's check both directions at once + if(!T1 || T1.density || !T1.ClickCross(get_dir(T1,T0) | get_dir(T1,src), border_only = 0, target_atom = target)) //let's check both directions at once continue // couldn't enter or couldn't leave T1 if(!src.ClickCross(get_dir(src,T1), border_only = 1, target_atom = target)) @@ -64,10 +64,13 @@ * Must be on a turf */ /atom/movable/Adjacent(var/atom/neighbor) - if(neighbor == loc) return 1 - if(!isturf(loc)) return 0 - if(loc.Adjacent(neighbor,src)) return 1 - return 0 + if(neighbor == loc) + return TRUE + if(!isturf(loc)) + return FALSE + if(loc.Adjacent(neighbor,target = neighbor)) + return TRUE + return FALSE // This is necessary for storage items not on your person. /obj/item/Adjacent(var/atom/neighbor, var/recurse = 1) diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index 2f3d60d758..0f17f1775a 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -129,7 +129,7 @@ // Allows you to click on a box's contents, if that box is on the ground, but no deeper than that if(isturf(A) || isturf(A.loc) || (A.loc && isturf(A.loc.loc))) - if(A.Adjacent(src)) // see adjacent.dm + if(Adjacent(A) || (W && CheckReach(src, A, W.reach))) //Adjacent or reaching attacks if(W) if(W.pre_attackby(A,src,params)) // Return 1 in attackby() to prevent afterattack() effects (when safely moving items for example) @@ -147,6 +147,29 @@ else RangedAttack(A, params) +/proc/CheckReach(atom/movable/here, atom/movable/there, reach) + if(!here || !there) + return + switch(reach) + if(0) + return here.loc == there.loc + if(1) + return here.Adjacent(there) + if(2 to INFINITY) + var/obj/dummy = new(get_turf(here)) //We'll try to move this every tick, failing if we can't + dummy.pass_flags |= PASSTABLE + for(var/i in 1 to reach) //Limit it to that many tries + var/turf/T = get_step(dummy, get_dir(dummy, there)) + if(dummy.loc == there.loc) + qdel(dummy) + return 1 + if(there.density && dummy in range(1, there)) //For windows and + qdel(dummy) + return 1 + if(!dummy.Move(T)) //we're blocked! + qdel(dummy) + return + // Default behavior: ignore double clicks (the second click that makes the doubleclick call already calls for a normal click) /mob/proc/DblClickOn(atom/A, params) return @@ -391,4 +414,4 @@ view = -1 else view = 1 - add_view_range(view) \ No newline at end of file + add_view_range(view) diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index cd5e7e7bb5..636675c8ac 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -3,7 +3,7 @@ //PUBLIC - call these wherever you want -/mob/proc/throw_alert(category, type, severity, obj/new_master) +/mob/proc/throw_alert(category, type, severity, obj/new_master, override = FALSE) /* Proc to create or update an alert. Returns the alert if the alert is new or updated, 0 if it was thrown already category is a text string. Each mob may only have one alert per category; the previous one will be replaced @@ -11,7 +11,9 @@ severity is an optional number that will be placed at the end of the icon_state for this alert For example, high pressure's icon_state is "highpressure" and can be serverity 1 or 2 to get "highpressure1" or "highpressure2" new_master is optional and sets the alert's icon state to "template" in the ui_style icons with the master as an overlay. - Clicks are forwarded to master */ + Clicks are forwarded to master + Override makes it so the alert is not replaced until cleared by a clear_alert with clear_override, and it's used for hallucinations. + */ if(!category) return @@ -19,8 +21,11 @@ var/obj/screen/alert/thealert if(alerts[category]) thealert = alerts[category] + if(thealert.override_alerts) + return 0 if(new_master && new_master != thealert.master) WARNING("[src] threw alert [category] with new_master [new_master] while already having that alert with master [thealert.master]") + clear_alert(category) return .() else if(thealert.type != type) @@ -34,6 +39,9 @@ return 0 else thealert = new type() + thealert.override_alerts = override + if(override) + thealert.timeout = null if(new_master) var/old_layer = new_master.layer @@ -65,10 +73,12 @@ clear_alert(category) // Proc to clear an existing alert. -/mob/proc/clear_alert(category) +/mob/proc/clear_alert(category, clear_override = FALSE) var/obj/screen/alert/alert = alerts[category] if(!alert) return 0 + if(alert.override_alerts && !clear_override) + return 0 alerts -= category if(client && hud_used) @@ -85,6 +95,7 @@ var/timeout = 0 //If set to a number, this alert will clear itself after that many deciseconds var/severity = 0 var/alerttooltipstyle = "" + var/override_alerts = FALSE //If it is overriding other alerts of the same type /obj/screen/alert/MouseEntered(location,control,params) @@ -586,7 +597,7 @@ so as to remain in compliance with the most up-to-date laws." return var/paramslist = params2list(params) if(paramslist["shift"]) // screen objects don't do the normal Click() stuff so we'll cheat - usr << "[name] - [desc]" + to_chat(usr, "[name] - [desc]") return if(master) return usr.client.Click(master, location, control, params) diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index 999d357634..e9bfc36b55 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -18,7 +18,7 @@ screen.severity = severity screens[category] = screen - if(client && stat != DEAD) + if(client && screen.should_show_to(src)) client.screen += screen return screen @@ -52,9 +52,14 @@ client.screen -= screens[category] /mob/proc/reload_fullscreen() - if(client && stat != DEAD) //dead mob do not see any of the fullscreen overlays that he has. + if(client) + var/obj/screen/fullscreen/screen for(var/category in screens) - client.screen |= screens[category] + screen = screens[category] + if(screen.should_show_to(src)) + client.screen |= screen + else + client.screen -= screen /obj/screen/fullscreen icon = 'icons/mob/screen_full.dmi' @@ -64,6 +69,12 @@ plane = FULLSCREEN_PLANE mouse_opacity = 0 var/severity = 0 + var/show_when_dead = FALSE + +/obj/screen/fullscreen/proc/should_show_to(mob/mymob) + if(!show_when_dead && mymob.stat == DEAD) + return FALSE + return TRUE /obj/screen/fullscreen/Destroy() severity = 0 @@ -125,4 +136,31 @@ color = "#ff0000" /obj/screen/fullscreen/color_vision/blue - color = "#0000ff" \ No newline at end of file + color = "#0000ff" + +/obj/screen/fullscreen/lighting_backdrop + icon = 'icons/mob/screen_gen.dmi' + icon_state = "flash" + transform = matrix(200, 0, 0, 0, 200, 0) + plane = LIGHTING_PLANE + blend_mode = BLEND_OVERLAY + show_when_dead = TRUE + +//Provides darkness to the back of the lighting plane +/obj/screen/fullscreen/lighting_backdrop/lit + invisibility = INVISIBILITY_LIGHTING + layer = BACKGROUND_LAYER+21 + color = "#000" + show_when_dead = TRUE + +//Provides whiteness in case you don't see lights so everything is still visible +/obj/screen/fullscreen/lighting_backdrop/unlit + layer = BACKGROUND_LAYER+20 + show_when_dead = TRUE + +/obj/screen/fullscreen/see_through_darkness + icon_state = "nightvision" + plane = LIGHTING_PLANE + layer = LIGHTING_LAYER + blend_mode = BLEND_ADD + show_when_dead = TRUE diff --git a/code/_onclick/hud/ghost.dm b/code/_onclick/hud/ghost.dm index ac983eb314..04655315b7 100644 --- a/code/_onclick/hud/ghost.dm +++ b/code/_onclick/hud/ghost.dm @@ -46,11 +46,6 @@ /datum/hud/ghost/New(mob/owner, ui_style = 'icons/mob/screen_midnight.dmi') ..() - var/mob/dead/observer/G = mymob - if(!G.client.prefs.ghost_hud) - mymob.client.screen = null - return - var/obj/screen/using using = new /obj/screen/ghost/jumptomob() @@ -73,17 +68,13 @@ using.screen_loc = ui_ghost_pai static_inventory += using - -/datum/hud/ghost/show_hud() - var/mob/dead/observer/G = mymob - mymob.client.screen = list() - for(var/thing in plane_masters) - mymob.client.screen += plane_masters[thing] - create_parallax() - if(G.client.prefs.ghost_hud) +/datum/hud/ghost/show_hud(version = 0, mob/viewmob) + ..() + if(!mymob.client.prefs.ghost_hud) + mymob.client.screen -= static_inventory + else mymob.client.screen += static_inventory - /mob/dead/observer/create_mob_hud() if(client && !hud_used) hud_used = new /datum/hud/ghost(src, ui_style2icon(client.prefs.UI_style)) diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index d81841fa54..8e02b2cbf7 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -50,8 +50,6 @@ var/obj/screen/healths var/obj/screen/healthdoll var/obj/screen/internals - //citadel code - var/obj/screen/arousal var/ui_style_icon = 'icons/mob/screen_midnight.dmi' @@ -68,6 +66,7 @@ for(var/mytype in subtypesof(/obj/screen/plane_master)) var/obj/screen/plane_master/instance = new mytype() plane_masters["[instance.plane]"] = instance + instance.backdrop(mymob) /datum/hud/Destroy() if(mymob.hud_used == src) @@ -131,6 +130,7 @@ qdel(thing) screenoverlays.Cut() mymob = null + return ..() /mob/proc/create_mob_hud() @@ -204,6 +204,7 @@ for(var/thing in plane_masters) screenmob.client.screen += plane_masters[thing] + hud_version = display_hud_version persistent_inventory_update(screenmob) mymob.update_action_buttons(1) @@ -216,7 +217,7 @@ ..() hidden_inventory_update(viewmob) -/datum/hud/robot/show_hud(version = 0) +/datum/hud/robot/show_hud(version = 0, mob/viewmob) ..() update_robot_modules_display() @@ -244,9 +245,9 @@ if(hud_used && client) hud_used.show_hud() //Shows the next hud preset - usr << "Switched HUD mode. Press F12 to toggle." + to_chat(usr, "Switched HUD mode. Press F12 to toggle.") else - usr << "This mob type does not use a HUD." + to_chat(usr, "This mob type does not use a HUD.") //(re)builds the hand ui slots, throwing away old ones @@ -278,4 +279,4 @@ for(var/obj/screen/human/equip/E in static_inventory) E.screen_loc = ui_equip_position(mymob) if(mymob.hud_used) - show_hud(HUD_STYLE_STANDARD,mymob) \ No newline at end of file + show_hud(HUD_STYLE_STANDARD,mymob) diff --git a/code/_onclick/hud/hud_cit.dm b/code/_onclick/hud/hud_cit.dm new file mode 100644 index 0000000000..18ecf2e929 --- /dev/null +++ b/code/_onclick/hud/hud_cit.dm @@ -0,0 +1,2 @@ +/datum/hud + var/obj/screen/arousal \ No newline at end of file diff --git a/code/_onclick/hud/human.dm b/code/_onclick/hud/human.dm index c15dbf761c..2654e9308e 100644 --- a/code/_onclick/hud/human.dm +++ b/code/_onclick/hud/human.dm @@ -87,6 +87,8 @@ /datum/hud/human/New(mob/living/carbon/human/owner, ui_style = 'icons/mob/screen_midnight.dmi') ..() + owner.overlay_fullscreen("see_through_darkness", /obj/screen/fullscreen/see_through_darkness) + var/obj/screen/using var/obj/screen/inventory/inv_box diff --git a/code/_onclick/hud/parallax.dm b/code/_onclick/hud/parallax.dm index a7027798a8..37266be949 100644 --- a/code/_onclick/hud/parallax.dm +++ b/code/_onclick/hud/parallax.dm @@ -2,7 +2,6 @@ /client var/list/parallax_layers var/list/parallax_layers_cached - var/static/list/parallax_static_layers_tail = newlist(/obj/screen/parallax_pmaster, /obj/screen/parallax_space_whitifier) var/atom/movable/movingmob var/turf/previous_turf var/dont_animate_parallax //world.time of when we can state animate()ing parallax again @@ -27,11 +26,22 @@ if (length(C.parallax_layers) > C.parallax_layers_max) C.parallax_layers.len = C.parallax_layers_max - C.screen |= (C.parallax_layers + C.parallax_static_layers_tail) + C.screen |= (C.parallax_layers) + var/obj/screen/plane_master/PM = plane_masters["[PLANE_SPACE]"] + PM.color = list( + 0, 0, 0, 0, + 0, 0, 0, 0, + 0, 0, 0, 0, + 1, 1, 1, 1, + 0, 0, 0, 0 + ) + /datum/hud/proc/remove_parallax() var/client/C = mymob.client - C.screen -= (C.parallax_layers_cached + C.parallax_static_layers_tail) + C.screen -= (C.parallax_layers_cached) + var/obj/screen/plane_master/PM = plane_masters["[PLANE_SPACE]"] + PM.color = initial(PM.color) C.parallax_layers = null /datum/hud/proc/apply_parallax_pref() @@ -70,7 +80,7 @@ create_parallax() // This sets which way the current shuttle is moving (returns true if the shuttle has stopped moving so the caller can append their animation) -/datum/hud/proc/set_parallax_movedir(new_parallax_movedir) +/datum/hud/proc/set_parallax_movedir(new_parallax_movedir, skip_windups) . = FALSE var/client/C = mymob.client if(new_parallax_movedir == C.parallax_movedir) @@ -100,24 +110,29 @@ newtransform = matrix(1, 0,-480, 0, 1, 0) var/shortesttimer - for(var/thing in C.parallax_layers) - var/obj/screen/parallax_layer/L = thing + if(!skip_windups) + for(var/thing in C.parallax_layers) + var/obj/screen/parallax_layer/L = thing - var/T = PARALLAX_LOOP_TIME / L.speed - if (isnull(shortesttimer)) - shortesttimer = T - if (T < shortesttimer) - shortesttimer = T - L.transform = newtransform - animate(L, transform = matrix(), time = T, easing = QUAD_EASING | (new_parallax_movedir ? EASE_IN : EASE_OUT), flags = ANIMATION_END_NOW) - if (new_parallax_movedir) + var/T = PARALLAX_LOOP_TIME / L.speed + if (isnull(shortesttimer)) + shortesttimer = T + if (T < shortesttimer) + shortesttimer = T L.transform = newtransform - animate(transform = matrix(), time = T) //queue up another animate so lag doesn't create a shutter + animate(L, transform = matrix(), time = T, easing = QUAD_EASING | (new_parallax_movedir ? EASE_IN : EASE_OUT), flags = ANIMATION_END_NOW) + if (new_parallax_movedir) + L.transform = newtransform + animate(transform = matrix(), time = T) //queue up another animate so lag doesn't create a shutter C.parallax_movedir = new_parallax_movedir if (C.parallax_animate_timer) deltimer(C.parallax_animate_timer) - C.parallax_animate_timer = addtimer(CALLBACK(src, .proc/update_parallax_motionblur, C, animatedir, new_parallax_movedir, newtransform), min(shortesttimer, PARALLAX_LOOP_TIME), TIMER_CLIENT_TIME|TIMER_STOPPABLE) + var/datum/callback/CB = CALLBACK(src, .proc/update_parallax_motionblur, C, animatedir, new_parallax_movedir, newtransform) + if(skip_windups) + CB.Invoke() + else + C.parallax_animate_timer = addtimer(CB, min(shortesttimer, PARALLAX_LOOP_TIME), TIMER_CLIENT_TIME|TIMER_STOPPABLE) /datum/hud/proc/update_parallax_motionblur(client/C, animatedir, new_parallax_movedir, matrix/newtransform) @@ -151,7 +166,7 @@ var/area/areaobj = posobj.loc // Update the movement direction of the parallax if necessary (for shuttles) - set_parallax_movedir(areaobj.parallax_movedir) + set_parallax_movedir(areaobj.parallax_movedir, FALSE) var/force if(!C.previous_turf || (C.previous_turf.z != posobj.z)) @@ -204,6 +219,11 @@ if(M && M.client && M.hud_used && length(M.client.parallax_layers)) M.hud_used.update_parallax() +/mob/proc/update_parallax_teleport() //used for arrivals shuttle + if(client && client.eye && hud_used && length(client.parallax_layers)) + var/area/areaobj = get_area(client.eye) + hud_used.set_parallax_movedir(areaobj.parallax_movedir, TRUE) + /obj/screen/parallax_layer icon = 'icons/effects/parallax.dmi' var/speed = 1 @@ -216,7 +236,7 @@ mouse_opacity = 0 -/obj/screen/parallax_layer/New(view) +/obj/screen/parallax_layer/Initialize(mapload, view) ..() if (!view) view = world.view @@ -249,26 +269,6 @@ speed = 1 layer = 2 -/obj/screen/parallax_pmaster - appearance_flags = PLANE_MASTER - plane = PLANE_SPACE_PARALLAX - blend_mode = BLEND_MULTIPLY - mouse_opacity = FALSE - screen_loc = "CENTER-7,CENTER-7" - -/obj/screen/parallax_space_whitifier - appearance_flags = PLANE_MASTER - plane = PLANE_SPACE - color = list( - 0, 0, 0, 0, - 0, 0, 0, 0, - 0, 0, 0, 0, - 1, 1, 1, 1, - 0, 0, 0, 0 - ) - screen_loc = "CENTER-7,CENTER-7" - - #undef LOOP_NONE #undef LOOP_NORMAL #undef LOOP_REVERSE diff --git a/code/_onclick/hud/plane_master.dm b/code/_onclick/hud/plane_master.dm index 5ba5a734e1..1a7450eb17 100644 --- a/code/_onclick/hud/plane_master.dm +++ b/code/_onclick/hud/plane_master.dm @@ -4,15 +4,9 @@ appearance_flags = PLANE_MASTER|NO_CLIENT_COLOR blend_mode = BLEND_OVERLAY -/obj/screen/plane_master/New() - if(blend_mode == BLEND_MULTIPLY) - //What is this? Read http://www.byond.com/forum/?post=2141928 - var/image/backdrop = image('icons/mob/screen_gen.dmi', "black") - backdrop.transform = matrix(200, 0, 0, 0, 200, 0) - backdrop.layer = BACKGROUND_LAYER - backdrop.blend_mode = BLEND_OVERLAY - add_overlay(backdrop) - ..() +//Why do plane masters need a backdrop sometimes? Read http://www.byond.com/forum/?post=2141928 +//Trust me, you need one. Period. If you don't think you do, you're doing something extremely wrong. +/obj/screen/plane_master/proc/backdrop(mob/mymob) /obj/screen/plane_master/game_world name = "game world plane master" @@ -22,7 +16,24 @@ /obj/screen/plane_master/lighting name = "lighting plane master" plane = LIGHTING_PLANE - blend_mode = BLEND_OVERLAY -// blend_mode = BLEND_MULTIPLY -// color = list(1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,0, 0.1,0.1,0.1,0) + blend_mode = BLEND_MULTIPLY mouse_opacity = 0 + +/obj/screen/plane_master/lighting/proc/params2color(params) + color = params2list(params) +/obj/screen/plane_master/lighting/proc/basecolor() + color = LIGHTING_BASE_MATRIX + +/obj/screen/plane_master/parallax + name = "parallax plane master" + plane = PLANE_SPACE_PARALLAX + blend_mode = BLEND_MULTIPLY + mouse_opacity = FALSE + +/obj/screen/plane_master/parallax_white + name = "parallax whitifier plane master" + plane = PLANE_SPACE + +/obj/screen/plane_master/lighting/backdrop(mob/mymob) + mymob.overlay_fullscreen("lighting_backdrop_lit", /obj/screen/fullscreen/lighting_backdrop/lit) + mymob.overlay_fullscreen("lighting_backdrop_unlit", /obj/screen/fullscreen/lighting_backdrop/unlit) diff --git a/code/_onclick/hud/robot.dm b/code/_onclick/hud/robot.dm index 71f7630092..8ac02fbe23 100644 --- a/code/_onclick/hud/robot.dm +++ b/code/_onclick/hud/robot.dm @@ -206,7 +206,7 @@ screenmob.client.screen += module_store_icon //"store" icon if(!R.module.modules) - usr << "Selected module has no modules to select" + to_chat(usr, "Selected module has no modules to select") return if(!R.robot_modules_background) diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index 178ab16200..1acf3e67c5 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -80,7 +80,7 @@ return 1 var/area/A = get_area(usr) if(!A.outdoors) - usr << "There is already a defined structure here." + to_chat(usr, "There is already a defined structure here.") return 1 create_area(usr) @@ -159,7 +159,7 @@ // We don't even know if it's a middle click if(world.time <= usr.next_move) return 1 - if(usr.incapacitated()) + if(usr.incapacitated() || isobserver(usr)) return 1 if (istype(usr.loc,/obj/mecha)) // stops inventory actions in a mech return 1 @@ -241,49 +241,49 @@ if(C.internal) C.internal = null - C << "You are no longer running on internals." + to_chat(C, "You are no longer running on internals.") icon_state = "internal0" else if(!C.getorganslot("breathing_tube")) if(!istype(C.wear_mask, /obj/item/clothing/mask)) - C << "You are not wearing an internals mask!" + to_chat(C, "You are not wearing an internals mask!") return 1 else var/obj/item/clothing/mask/M = C.wear_mask if(M.mask_adjusted) // if mask on face but pushed down M.adjustmask(C) // adjust it back if( !(M.flags & MASKINTERNALS) ) - C << "You are not wearing an internals mask!" + to_chat(C, "You are not wearing an internals mask!") return var/obj/item/I = C.is_holding_item_of_type(/obj/item/weapon/tank) if(I) - C << "You are now running on internals from the [I] on your [C.get_held_index_name(C.get_held_index_of_item(I))]." + to_chat(C, "You are now running on internals from the [I] on your [C.get_held_index_name(C.get_held_index_of_item(I))].") C.internal = I else if(ishuman(C)) var/mob/living/carbon/human/H = C if(istype(H.s_store, /obj/item/weapon/tank)) - H << "You are now running on internals from the [H.s_store] on your [H.wear_suit]." + to_chat(H, "You are now running on internals from the [H.s_store] on your [H.wear_suit].") H.internal = H.s_store else if(istype(H.belt, /obj/item/weapon/tank)) - H << "You are now running on internals from the [H.belt] on your belt." + to_chat(H, "You are now running on internals from the [H.belt] on your belt.") H.internal = H.belt else if(istype(H.l_store, /obj/item/weapon/tank)) - H << "You are now running on internals from the [H.l_store] in your left pocket." + to_chat(H, "You are now running on internals from the [H.l_store] in your left pocket.") H.internal = H.l_store else if(istype(H.r_store, /obj/item/weapon/tank)) - H << "You are now running on internals from the [H.r_store] in your right pocket." + to_chat(H, "You are now running on internals from the [H.r_store] in your right pocket.") H.internal = H.r_store //Seperate so CO2 jetpacks are a little less cumbersome. if(!C.internal && istype(C.back, /obj/item/weapon/tank)) - C << "You are now running on internals from the [C.back] on your back." + to_chat(C, "You are now running on internals from the [C.back] on your back.") C.internal = C.back if(C.internal) icon_state = "internal1" else - C << "You don't have an oxygen tank!" + to_chat(C, "You don't have an oxygen tank!") return C.update_action_buttons_icon() @@ -667,21 +667,29 @@ L.say(pick(word_messages)) /obj/screen/splash - icon = 'icons/misc/fullscreen.dmi' - icon_state = "title" + icon = 'config/title_screens/images/blank.png' + icon_state = "" screen_loc = "1,1" layer = SPLASHSCREEN_LAYER plane = SPLASHSCREEN_PLANE var/client/holder -/obj/screen/splash/New(client/C, fadeout, qdel_after = TRUE) - ..() +/obj/screen/splash/New(client/C, visible, use_previous_title) holder = C + + if(!visible) + alpha = 0 + if(SStitle.title_screen) + icon = SStitle.title_screen.icon + holder.screen += src - var/titlescreen = TITLESCREEN - if(titlescreen) - icon_state = titlescreen - if(fadeout) + if(use_previous_title && !SSmapping.previous_map_config.defaulted) + holder.screen -= src //Yell at Cyberboss to finish this + + ..() + +/obj/screen/splash/proc/Fade(out, qdel_after = TRUE) + if(out) animate(src, alpha = 0, time = 30) else alpha = 0 diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 0e9112a686..da72609cb0 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -11,17 +11,14 @@ return /obj/attackby(obj/item/I, mob/living/user, params) - if(unique_rename && istype(I, /obj/item/weapon/pen)) - rewrite(user) - else - return I.attack_obj(src, user) + return I.attack_obj(src, user) /mob/living/attackby(obj/item/I, mob/user, params) user.changeNext_move(CLICK_CD_MELEE) if(user.a_intent == INTENT_HARM && stat == DEAD && butcher_results) //can we butcher it? var/sharpness = I.is_sharp() if(sharpness) - user << "You begin to butcher [src]..." + to_chat(user, "You begin to butcher [src]...") playsound(loc, 'sound/weapons/slice.ogg', 50, 1, -1) if(do_mob(user, src, 80/sharpness)) harvest(user) diff --git a/code/_onclick/observer.dm b/code/_onclick/observer.dm index c0785b34a7..a0e4dff6bf 100644 --- a/code/_onclick/observer.dm +++ b/code/_onclick/observer.dm @@ -71,13 +71,13 @@ if(awaygate) user.forceMove(awaygate.loc) else - user << "[src] has no destination." + to_chat(user, "[src] has no destination.") /obj/machinery/gateway/centeraway/attack_ghost(mob/user) if(stationgate) user.forceMove(stationgate.loc) else - user << "[src] has no destination." + to_chat(user, "[src] has no destination.") /obj/item/weapon/storage/attack_ghost(mob/user) orient2hud(user) diff --git a/code/_onclick/other_mobs.dm b/code/_onclick/other_mobs.dm index 6dfcb7f80a..21ebcdbded 100644 --- a/code/_onclick/other_mobs.dm +++ b/code/_onclick/other_mobs.dm @@ -7,7 +7,7 @@ /mob/living/carbon/human/UnarmedAttack(atom/A, proximity) if(!has_active_hand()) //can't attack without a hand. - src << "You look at your arm and sigh." + to_chat(src, "You look at your arm and sigh.") return // Special glove functions: @@ -200,5 +200,5 @@ New Players: Have no reason to click on anything at all. */ -/mob/new_player/ClickOn() +/mob/dead/new_player/ClickOn() return diff --git a/code/_onclick/telekinesis.dm b/code/_onclick/telekinesis.dm index 3c70a0544d..e2b4ab398a 100644 --- a/code/_onclick/telekinesis.dm +++ b/code/_onclick/telekinesis.dm @@ -152,7 +152,7 @@ var/const/tk_maxrange = 15 if(focus) d = max(d,get_dist(user,focus)) // whichever is further if(d > tk_maxrange) - user << "Your mind won't reach that far." + to_chat(user, "Your mind won't reach that far.") return 0 return 1 diff --git a/code/controllers/admin.dm b/code/controllers/admin.dm index 8e947f69a4..d859a62391 100644 --- a/code/controllers/admin.dm +++ b/code/controllers/admin.dm @@ -1,8 +1,10 @@ // Clickable stat() button. /obj/effect/statclick + name = "Initializing..." var/target -/obj/effect/statclick/New(text, target) +/obj/effect/statclick/New(loc, text, target) //Don't port this to Initialize it's too critical + ..() name = text src.target = target @@ -14,10 +16,10 @@ var/class /obj/effect/statclick/debug/Click() - if(!usr.client.holder) + if(!usr.client.holder || !target) return if(!class) - if(istype(target, /datum/subsystem)) + if(istype(target, /datum/controller/subsystem)) class = "subsystem" else if(istype(target, /datum/controller)) class = "controller" @@ -40,8 +42,7 @@ return switch(controller) if("Master") - new/datum/controller/master() - Master.process() + Recreate_MC() feedback_add_details("admin_verb","RMC") if("Failsafe") new /datum/controller/failsafe() diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm index dd29399f77..ccb695cc71 100644 --- a/code/controllers/configuration.dm +++ b/code/controllers/configuration.dm @@ -5,23 +5,24 @@ #define SECURITY_HAS_MAINT_ACCESS 2 #define EVERYONE_HAS_MAINT_ACCESS 4 -//Not accessible from usual debug controller verb -/datum/protected_configuration - var/autoadmin = 0 - var/autoadmin_rank = "Game Admin" +/datum/configuration/vv_get_var(var_name) + var/static/list/banned_views = list("autoadmin", "autoadmin_rank") + if(var_name in banned_views) + return debug_variable(var_name, "SECRET", 0, src) + return ..() -/datum/protected_configuration/SDQL_update() - return FALSE - -/datum/protected_configuration/vv_get_var(var_name) - return debug_variable(var_name, "SECRET", 0, src) - -/datum/protected_configuration/vv_edit_var(var_name, var_value) - return FALSE +/datum/configuration/vv_edit_var(var_name, var_value) + var/static/list/banned_edits = list("cross_address", "cross_allowed", "autoadmin", "autoadmin_rank") + if(var_name in banned_edits) + return FALSE + return ..() /datum/configuration var/name = "Configuration" // datum name + var/autoadmin = 0 + var/autoadmin_rank = "Game Admin" + var/server_name = null // server name (the name of the game window) var/server_sql_name = null // short form server name used for the DB var/station_name = null // station name (the name of the station in-game) @@ -218,10 +219,11 @@ var/announce_admin_logout = 0 var/announce_admin_login = 0 - var/list/datum/votablemap/maplist = list() - var/datum/votablemap/defaultmap = null + var/list/datum/map_config/maplist = list() + var/datum/map_config/defaultmap = null var/maprotation = 1 var/maprotatechancedelta = 0.75 + var/allow_map_voting = TRUE // Enables random events mid-round when set to 1 var/allow_random_events = 0 @@ -239,6 +241,8 @@ var/client_error_message = "Your version of byond is too old, may have issues, and is blocked from accessing this server." var/cross_name = "Other server" + var/cross_address = "byond://" + var/cross_allowed = FALSE var/showircname = 0 var/list/gamemode_cache = null @@ -251,6 +255,9 @@ var/error_silence_time = 6000 // How long a unique error will be silenced for var/error_msg_delay = 50 // How long to wait between messaging admins about occurrences of a unique error + var/arrivals_shuttle_dock_window = 55 //Time from when a player late joins on the arrivals shuttle to when the shuttle docks on the station + var/arrivals_shuttle_require_safe_latejoin = FALSE //Require the arrivals shuttle to be operational in order for latejoiners to join + /datum/configuration/New() gamemode_cache = typecacheof(/datum/game_mode,TRUE) for(var/T in gamemode_cache) @@ -418,9 +425,9 @@ if(value != "default_pwd" && length(value) > 6) //It's the default value or less than 6 characters long, warn badmins global.comms_allowed = 1 if("cross_server_address") - global.cross_address = value + cross_address = value if(value != "byond:\\address:port") - global.cross_allowed = 1 + cross_allowed = 1 if("cross_comms_name") cross_name = value if("panic_server_name") @@ -488,12 +495,14 @@ config.announce_admin_login = 1 if("maprotation") config.maprotation = 1 + if("allow_map_voting") + config.allow_map_voting = text2num(value) if("maprotationchancedelta") config.maprotatechancedelta = text2num(value) if("autoadmin") - protected_config.autoadmin = 1 + config.autoadmin = 1 if(value) - protected_config.autoadmin_rank = ckeyEx(value) + config.autoadmin_rank = ckeyEx(value) if("generate_minimaps") config.generate_minimaps = 1 if("client_warn_version") @@ -516,12 +525,6 @@ error_silence_time = text2num(value) if("error_msg_delay") error_msg_delay = text2num(value) - if("announce_adminhelps") - config.announce_adminhelps = 1 - if("discord_url") - config.discord_url = value - if("discord_password") - config.discord_password = value else diary << "Unknown setting in configuration: '[name]'" @@ -749,6 +752,10 @@ MAX_EX_LIGHT_RANGE = BombCap MAX_EX_FLASH_RANGE = BombCap MAX_EX_FLAME_RANGE = BombCap + if("arrivals_shuttle_dock_window") + config.arrivals_shuttle_dock_window = max(PARALLAX_LOOP_TIME, text2num(value)) + if("arrivals_shuttle_require_safe_latejoin") + config.arrivals_shuttle_require_safe_latejoin = text2num(value) else diary << "Unknown setting in configuration: '[name]'" @@ -760,7 +767,7 @@ /datum/configuration/proc/loadmaplist(filename) var/list/Lines = file2list(filename) - var/datum/votablemap/currentmap = null + var/datum/map_config/currentmap = null for(var/t in Lines) if(!t) continue @@ -789,21 +796,19 @@ switch (command) if ("map") - currentmap = new (data) - if ("friendlyname") - currentmap.friendlyname = data + currentmap = new ("_maps/[data].json") + if(currentmap.defaulted) + log_world("Failed to load map config for [data]!") if ("minplayers","minplayer") - currentmap.minusers = text2num(data) + currentmap.config_min_users = text2num(data) if ("maxplayers","maxplayer") - currentmap.maxusers = text2num(data) - if ("friendlyname") - currentmap.friendlyname = data + currentmap.config_max_users = text2num(data) if ("weight","voteweight") currentmap.voteweight = text2num(data) if ("default","defaultmap") config.defaultmap = currentmap if ("endmap") - config.maplist[currentmap.name] = currentmap + config.maplist[currentmap.map_name] = currentmap currentmap = null else diary << "Unknown command in map vote config: '[command]'" @@ -866,7 +871,7 @@ var/list/datum/game_mode/runnable_modes = new for(var/T in gamemode_cache) var/datum/game_mode/M = new T() - //world << "DEBUG: [T], tag=[M.config_tag], prob=[probabilities[M.config_tag]]" + //to_chat(world, "DEBUG: [T], tag=[M.config_tag], prob=[probabilities[M.config_tag]]") if(!(M.config_tag in modes)) qdel(M) continue @@ -879,7 +884,7 @@ M.maximum_players = max_pop[M.config_tag] if(M.can_start()) runnable_modes[M] = probabilities[M.config_tag] - //world << "DEBUG: runnable_mode\[[runnable_modes.len]\] = [M.config_tag]" + //to_chat(world, "DEBUG: runnable_mode\[[runnable_modes.len]\] = [M.config_tag]") return runnable_modes /datum/configuration/proc/get_runnable_midround_modes(crew) @@ -904,6 +909,6 @@ /datum/configuration/proc/stat_entry() if(!statclick) - statclick = new/obj/effect/statclick/debug("Edit", src) + statclick = new/obj/effect/statclick/debug(null, "Edit", src) - stat("[name]:", statclick) + stat("[name]:", statclick) \ No newline at end of file diff --git a/code/controllers/controller.dm b/code/controllers/controller.dm index 7c87599e69..06547d120d 100644 --- a/code/controllers/controller.dm +++ b/code/controllers/controller.dm @@ -1,4 +1,19 @@ /datum/controller var/name // The object used for the clickable stat() button. - var/obj/effect/statclick/statclick \ No newline at end of file + var/obj/effect/statclick/statclick + +/datum/controller/proc/Initialize() + +//cleanup actions +/datum/controller/proc/Shutdown() + +//when we enter dmm_suite.load_map +/datum/controller/proc/StartLoadingMap() + +//when we exit dmm_suite.load_map +/datum/controller/proc/StopLoadingMap() + +/datum/controller/proc/Recover() + +/datum/controller/proc/stat_entry() \ No newline at end of file diff --git a/code/controllers/failsafe.dm b/code/controllers/failsafe.dm index 1d20247836..f2bbf212df 100644 --- a/code/controllers/failsafe.dm +++ b/code/controllers/failsafe.dm @@ -20,6 +20,7 @@ var/datum/controller/failsafe/Failsafe // Track the MC iteration to make sure its still on track. var/master_iteration = 0 + var/running = TRUE /datum/controller/failsafe/New() // Highlander-style: there can only be one! Kill off the old and replace it with the new. @@ -27,19 +28,21 @@ var/datum/controller/failsafe/Failsafe if(istype(Failsafe)) qdel(Failsafe) Failsafe = src - LaunchLoop() + Initialize() -/datum/controller/failsafe/proc/LaunchLoop() +/datum/controller/failsafe/Initialize() set waitfor = 0 Failsafe.Loop() - qdel(Failsafe) //when Loop() returns, we delete ourselves and let the mc recreate us + if(!QDELETED(src)) + qdel(src) //when Loop() returns, we delete ourselves and let the mc recreate us /datum/controller/failsafe/Destroy() + running = FALSE ..() return QDEL_HINT_HARDDEL_NOW /datum/controller/failsafe/proc/Loop() - while(1) + while(running) lasttick = world.time if(!Master) // Replace the missing Master! This should never, ever happen. @@ -53,23 +56,23 @@ var/datum/controller/failsafe/Failsafe if(4,5) --defcon if(3) - admins << "Notice: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks." + to_chat(admins, "Notice: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks.") --defcon if(2) - admins << "Warning: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks. Automatic restart in [processing_interval] ticks." + to_chat(admins, "Warning: DEFCON [defcon_pretty()]. The Master Controller has not fired in the last [(5-defcon) * processing_interval] ticks. Automatic restart in [processing_interval] ticks.") --defcon if(1) - admins << "Warning: DEFCON [defcon_pretty()]. The Master Controller has still not fired within the last [(5-defcon) * processing_interval] ticks. Killing and restarting..." + to_chat(admins, "Warning: DEFCON [defcon_pretty()]. The Master Controller has still not fired within the last [(5-defcon) * processing_interval] ticks. Killing and restarting...") --defcon var/rtn = Recreate_MC() if(rtn > 0) defcon = 4 master_iteration = 0 - admins << "MC restarted successfully" + to_chat(admins, "MC restarted successfully") else if(rtn < 0) log_game("FailSafe: Could not restart MC, runtime encountered. Entering defcon 0") - admins << "ERROR: DEFCON [defcon_pretty()]. Could not restart MC, runtime encountered. I will silently keep retrying." + to_chat(admins, "ERROR: DEFCON [defcon_pretty()]. Could not restart MC, runtime encountered. I will silently keep retrying.") //if the return number was 0, it just means the mc was restarted too recently, and it just needs some time before we try again //no need to handle that specially when defcon 0 can handle it if(0) //DEFCON 0! (mc failed to restart) @@ -77,7 +80,7 @@ var/datum/controller/failsafe/Failsafe if(rtn > 0) defcon = 4 master_iteration = 0 - admins << "MC restarted successfully" + to_chat(admins, "MC restarted successfully") else defcon = min(defcon + 1,5) master_iteration = Master.iteration @@ -92,8 +95,8 @@ var/datum/controller/failsafe/Failsafe /datum/controller/failsafe/proc/defcon_pretty() return defcon -/datum/controller/failsafe/proc/stat_entry() +/datum/controller/failsafe/stat_entry() if(!statclick) - statclick = new/obj/effect/statclick/debug("Initializing...", src) + statclick = new/obj/effect/statclick/debug(null, "Initializing...", src) stat("Failsafe Controller:", statclick.update("Defcon: [defcon_pretty()] (Interval: [Failsafe.processing_interval] | Iteration: [Failsafe.master_iteration])")) diff --git a/code/controllers/master.dm b/code/controllers/master.dm index 148a08d267..636e1d2f86 100644 --- a/code/controllers/master.dm +++ b/code/controllers/master.dm @@ -46,8 +46,8 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING // The type of the last subsystem to be process()'d. var/last_type_processed - var/datum/subsystem/queue_head //Start of queue linked list - var/datum/subsystem/queue_tail //End of queue linked list (used for appending to the list) + var/datum/controller/subsystem/queue_head //Start of queue linked list + var/datum/controller/subsystem/queue_tail //End of queue linked list (used for appending to the list) var/queue_priority_count = 0 //Running total so that we don't have to loop thru the queue each run to split up the tick var/queue_priority_count_bg = 0 //Same, but for background subsystems var/map_loading = FALSE //Are we loading in a new map? @@ -60,7 +60,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING Recover() qdel(Master) else - init_subtypes(/datum/subsystem, subsystems) + init_subtypes(/datum/controller/subsystem, subsystems) Master = src /datum/controller/master/Destroy() @@ -68,9 +68,9 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING // Tell qdel() to Del() this object. return QDEL_HINT_HARDDEL_NOW -/datum/controller/master/proc/Shutdown() +/datum/controller/master/Shutdown() processing = FALSE - for(var/datum/subsystem/ss in subsystems) + for(var/datum/controller/subsystem/ss in subsystems) ss.Shutdown() // Returns 1 if we created a new mc, 0 if we couldn't due to a recent restart, @@ -93,7 +93,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING return 1 -/datum/controller/master/proc/Recover() +/datum/controller/master/Recover() var/msg = "## DEBUG: [time2text(world.timeofday)] MC restarted. Reports:\n" for (var/varname in Master.vars) switch (varname) @@ -111,22 +111,22 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING subsystems = Master.subsystems StartProcessing(10) else - world << "The Master Controller is having some issues, we will need to re-initialize EVERYTHING" - Setup(20, TRUE) + to_chat(world, "The Master Controller is having some issues, we will need to re-initialize EVERYTHING") + Initialize(20, TRUE) // Please don't stuff random bullshit here, // Make a subsystem, give it the SS_NO_FIRE flag, and do your work in it's Initialize() -/datum/controller/master/proc/Setup(delay, init_sss) +/datum/controller/master/Initialize(delay, init_sss) set waitfor = 0 if(delay) sleep(delay) if(init_sss) - init_subtypes(/datum/subsystem, subsystems) + init_subtypes(/datum/controller/subsystem, subsystems) - world << "Initializing subsystems..." + to_chat(world, "Initializing subsystems...") // Sort subsystems by init_order, so they initialize in the correct order. sortTim(subsystems, /proc/cmp_subsystem_init) @@ -134,7 +134,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING var/start_timeofday = REALTIMEOFDAY // Initialize subsystems. CURRENT_TICKLIMIT = config.tick_limit_mc_init - for (var/datum/subsystem/SS in subsystems) + for (var/datum/controller/subsystem/SS in subsystems) if (SS.flags & SS_NO_INIT) continue SS.Initialize(REALTIMEOFDAY) @@ -143,7 +143,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING var/time = (REALTIMEOFDAY - start_timeofday) / 10 var/msg = "Initializations complete within [time] second[time == 1 ? "" : "s"]!" - world << "[msg]" + to_chat(world, "[msg]") log_world(msg) // Sort subsystems by display setting for easy access. @@ -161,7 +161,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING /datum/controller/master/proc/RoundStart() round_started = 1 var/timer = world.time - for (var/datum/subsystem/SS in subsystems) + for (var/datum/controller/subsystem/SS in subsystems) if (SS.flags & SS_FIRE_IN_LOBBY || SS.flags & SS_TICKER) continue //already firing // Stagger subsystems. @@ -199,7 +199,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING var/list/lobbysubsystems = list() var/timer = world.time for (var/thing in subsystems) - var/datum/subsystem/SS = thing + var/datum/controller/subsystem/SS = thing if (SS.flags & SS_NO_FIRE) continue SS.queued_time = 0 @@ -261,7 +261,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING sleep_delta += 1 if (make_runtime) - var/datum/subsystem/SS + var/datum/controller/subsystem/SS SS.can_fire = 0 if (!Failsafe || (Failsafe.processing_interval > 0 && (Failsafe.lasttick+(Failsafe.processing_interval*5)) < world.time)) new/datum/controller/failsafe() // (re)Start the failsafe. @@ -313,7 +313,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING . = 0 //so the mc knows if we runtimed //we create our variables outside of the loops to save on overhead - var/datum/subsystem/SS + var/datum/controller/subsystem/SS var/SS_flags for (var/thing in subsystemstocheck) @@ -339,7 +339,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING // Run thru the queue of subsystems to run, running them while balancing out their allocated tick precentage /datum/controller/master/proc/RunQueue() . = 0 - var/datum/subsystem/queue_node + var/datum/controller/subsystem/queue_node var/queue_node_flags var/queue_node_priority var/queue_node_paused @@ -465,7 +465,7 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING var/subsystemstocheck = subsystems + ticker_SS + normal_SS + lobby_SS for (var/thing in subsystemstocheck) - var/datum/subsystem/SS = thing + var/datum/controller/subsystem/SS = thing if (!SS || !istype(SS)) //list(SS) is so if a list makes it in the subsystem list, we remove the list, not the contents subsystems -= list(SS) @@ -496,24 +496,24 @@ var/CURRENT_TICKLIMIT = TICK_LIMIT_RUNNING -/datum/controller/master/proc/stat_entry() +/datum/controller/master/stat_entry() if(!statclick) - statclick = new/obj/effect/statclick/debug("Initializing...", src) + statclick = new/obj/effect/statclick/debug(null, "Initializing...", src) stat("Byond:", "(FPS:[world.fps]) (TickCount:[world.time/world.tick_lag]) (TickDrift:[round(Master.tickdrift,1)]([round((Master.tickdrift/(world.time/world.tick_lag))*100,0.1)]%))") stat("Master Controller:", statclick.update("(TickRate:[Master.processing]) (Iteration:[Master.iteration])")) -/datum/controller/master/proc/StartLoadingMap() +/datum/controller/master/StartLoadingMap() //disallow more than one map to load at once, multithreading it will just cause race conditions while(map_loading) stoplag() for(var/S in subsystems) - var/datum/subsystem/SS = S + var/datum/controller/subsystem/SS = S SS.StartLoadingMap() map_loading = TRUE -/datum/controller/master/proc/StopLoadingMap(bounds = null) +/datum/controller/master/StopLoadingMap(bounds = null) map_loading = FALSE for(var/S in subsystems) - var/datum/subsystem/SS = S - SS.StopLoadingMap() \ No newline at end of file + var/datum/controller/subsystem/SS = S + SS.StopLoadingMap() diff --git a/code/controllers/subsystem.dm b/code/controllers/subsystem.dm index 5961393d29..2078d88656 100644 --- a/code/controllers/subsystem.dm +++ b/code/controllers/subsystem.dm @@ -1,11 +1,10 @@ -/datum/subsystem +/datum/controller/subsystem // Metadata; you should define these. - var/name = "fire coderbus" //name of the subsystem + name = "fire coderbus" //name of the subsystem var/init_order = 0 //order of initialization. Higher numbers are initialized first, lower numbers later. Can be decimal and negative values. var/wait = 20 //time to wait (in deciseconds) between each call to fire(). Must be a positive integer. - var/display_order = 100 //display affects the order the subsystem is displayed in the MC tab var/priority = 50 //When mutiple subsystems need to run in the same tick, higher priority subsystems will run first and be given a higher share of the tick before MC_TICK_CHECK triggers a sleep var/flags = 0 //see MC.dm in __DEFINES Most flags must be set on world start to take full effect. (You can also restart the mc to force them to process again) @@ -27,22 +26,14 @@ var/queued_time = 0 //time we entered the queue, (for timing and priority reasons) var/queued_priority //we keep a running total to make the math easier, if priority changes mid-fire that would break our running total, so we store it here //linked list stuff for the queue - var/datum/subsystem/queue_next - var/datum/subsystem/queue_prev - - - // The object used for the clickable stat() button. - var/obj/effect/statclick/statclick + var/datum/controller/subsystem/queue_next + var/datum/controller/subsystem/queue_prev // Used to initialize the subsystem BEFORE the map has loaded -/datum/subsystem/New() - -//cleanup actions -/datum/subsystem/proc/Shutdown() - return +/datum/controller/subsystem/New() //This is used so the mc knows when the subsystem sleeps. do not override. -/datum/subsystem/proc/ignite(resumed = 0) +/datum/controller/subsystem/proc/ignite(resumed = 0) set waitfor = 0 . = SS_SLEEPING fire(resumed) @@ -58,11 +49,11 @@ //previously, this would have been named 'process()' but that name is used everywhere for different things! //fire() seems more suitable. This is the procedure that gets called every 'wait' deciseconds. //Sleeping in here prevents future fires until returned. -/datum/subsystem/proc/fire(resumed = 0) +/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.") -/datum/subsystem/Destroy() +/datum/controller/subsystem/Destroy() dequeue() can_fire = 0 flags |= SS_NO_FIRE @@ -72,10 +63,10 @@ //Queue it to run. // (we loop thru a linked list until we get to the end or find the right point) // (this lets us sort our run order correctly without having to re-sort the entire already sorted list) -/datum/subsystem/proc/enqueue() +/datum/controller/subsystem/proc/enqueue() var/SS_priority = priority var/SS_flags = flags - var/datum/subsystem/queue_node + var/datum/controller/subsystem/queue_node var/queue_node_priority var/queue_node_flags @@ -130,7 +121,7 @@ queue_node.queue_prev = src -/datum/subsystem/proc/dequeue() +/datum/controller/subsystem/proc/dequeue() if (queue_next) queue_next.queue_prev = queue_prev if (queue_prev) @@ -144,7 +135,7 @@ state = SS_IDLE -/datum/subsystem/proc/pause() +/datum/controller/subsystem/proc/pause() . = 1 if (state == SS_RUNNING) state = SS_PAUSED @@ -153,17 +144,17 @@ //used to initialize the subsystem AFTER the map has loaded -/datum/subsystem/proc/Initialize(start_timeofday) +/datum/controller/subsystem/Initialize(start_timeofday) var/time = (REALTIMEOFDAY - start_timeofday) / 10 var/msg = "Initialized [name] subsystem within [time] second[time == 1 ? "" : "s"]!" - world << "[msg]" + to_chat(world, "[msg]") log_world(msg) return time //hook for printing stats to the "MC" statuspanel for admins to see performance and related stats etc. -/datum/subsystem/proc/stat_entry(msg) +/datum/controller/subsystem/stat_entry(msg) if(!statclick) - statclick = new/obj/effect/statclick/debug("Initializing...", src) + statclick = new/obj/effect/statclick/debug(null, "Initializing...", src) @@ -178,7 +169,7 @@ stat(title, statclick.update(msg)) -/datum/subsystem/proc/state_letter() +/datum/controller/subsystem/proc/state_letter() switch (state) if (SS_RUNNING) . = "R" @@ -193,15 +184,15 @@ //could be used to postpone a costly subsystem for (default one) var/cycles, cycles //for instance, during cpu intensive operations like explosions -/datum/subsystem/proc/postpone(cycles = 1) +/datum/controller/subsystem/proc/postpone(cycles = 1) if(next_fire - world.time < wait) next_fire += (wait*cycles) -//usually called via datum/subsystem/New() when replacing a subsystem (i.e. due to a recurring crash) +//usually called via datum/controller/subsystem/New() when replacing a subsystem (i.e. due to a recurring crash) //should attempt to salvage what it can from the old instance of subsystem -/datum/subsystem/proc/Recover() +/datum/controller/subsystem/Recover() -/datum/subsystem/vv_edit_var(var_name, var_value) +/datum/controller/subsystem/vv_edit_var(var_name, var_value) switch (var_name) if ("can_fire") //this is so the subsystem doesn't rapid fire to make up missed ticks causing more lag @@ -209,10 +200,4 @@ next_fire = world.time + wait if ("queued_priority") //editing this breaks things. return 0 - . = ..() - -//when we enter dmm_suite.load_map -/datum/subsystem/proc/StartLoadingMap() - -//when we exit dmm_suite.load_map -/datum/subsystem/proc/StopLoadingMap() \ No newline at end of file + . = ..() \ No newline at end of file diff --git a/code/controllers/subsystem/acid.dm b/code/controllers/subsystem/acid.dm index 853174a781..2dc2aa80a0 100644 --- a/code/controllers/subsystem/acid.dm +++ b/code/controllers/subsystem/acid.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/acid/SSacid +var/datum/controller/subsystem/acid/SSacid -/datum/subsystem/acid +/datum/controller/subsystem/acid name = "Acid" priority = 40 flags = SS_NO_INIT|SS_BACKGROUND @@ -8,15 +8,15 @@ var/datum/subsystem/acid/SSacid var/list/currentrun = list() var/list/processing = list() -/datum/subsystem/acid/New() +/datum/controller/subsystem/acid/New() NEW_SS_GLOBAL(SSacid) -/datum/subsystem/acid/stat_entry() +/datum/controller/subsystem/acid/stat_entry() ..("P:[processing.len]") -/datum/subsystem/acid/fire(resumed = 0) +/datum/controller/subsystem/acid/fire(resumed = 0) if (!resumed) src.currentrun = processing.Copy() diff --git a/code/controllers/subsystem/air.dm b/code/controllers/subsystem/air.dm index 2f778c0bda..6a004adef6 100644 --- a/code/controllers/subsystem/air.dm +++ b/code/controllers/subsystem/air.dm @@ -5,15 +5,14 @@ #define SSAIR_HIGHPRESSURE 5 #define SSAIR_HOTSPOTS 6 #define SSAIR_SUPERCONDUCTIVITY 7 -var/datum/subsystem/air/SSair +var/datum/controller/subsystem/air/SSair -/datum/subsystem/air +/datum/controller/subsystem/air name = "Air" init_order = -1 priority = 20 wait = 5 flags = SS_BACKGROUND - display_order = 1 var/cost_turfs = 0 var/cost_groups = 0 @@ -42,10 +41,10 @@ var/datum/subsystem/air/SSair var/map_loading = TRUE var/list/queued_for_activation -/datum/subsystem/air/New() +/datum/controller/subsystem/air/New() NEW_SS_GLOBAL(SSair) -/datum/subsystem/air/stat_entry(msg) +/datum/controller/subsystem/air/stat_entry(msg) msg += "C:{" msg += "AT:[round(cost_turfs,1)]|" msg += "EG:[round(cost_groups,1)]|" @@ -65,7 +64,7 @@ var/datum/subsystem/air/SSair ..(msg) -/datum/subsystem/air/Initialize(timeofday) +/datum/controller/subsystem/air/Initialize(timeofday) map_loading = FALSE setup_allturfs() setup_atmos_machinery() @@ -73,7 +72,7 @@ var/datum/subsystem/air/SSair ..() -/datum/subsystem/air/fire(resumed = 0) +/datum/controller/subsystem/air/fire(resumed = 0) var/timer = world.tick_usage if(currentpart == SSAIR_PIPENETS || !resumed) @@ -140,7 +139,7 @@ var/datum/subsystem/air/SSair -/datum/subsystem/air/proc/process_pipenets(resumed = 0) +/datum/controller/subsystem/air/proc/process_pipenets(resumed = 0) if (!resumed) src.currentrun = networks.Copy() //cache for sanic speed (lists are references anyways) @@ -156,7 +155,7 @@ var/datum/subsystem/air/SSair return -/datum/subsystem/air/proc/process_atmos_machinery(resumed = 0) +/datum/controller/subsystem/air/proc/process_atmos_machinery(resumed = 0) var/seconds = wait * 0.1 if (!resumed) src.currentrun = atmos_machinery.Copy() @@ -171,7 +170,7 @@ var/datum/subsystem/air/SSair return -/datum/subsystem/air/proc/process_super_conductivity(resumed = 0) +/datum/controller/subsystem/air/proc/process_super_conductivity(resumed = 0) if (!resumed) src.currentrun = active_super_conductivity.Copy() //cache for sanic speed (lists are references anyways) @@ -183,7 +182,7 @@ var/datum/subsystem/air/SSair if(MC_TICK_CHECK) return -/datum/subsystem/air/proc/process_hotspots(resumed = 0) +/datum/controller/subsystem/air/proc/process_hotspots(resumed = 0) if (!resumed) src.currentrun = hotspots.Copy() //cache for sanic speed (lists are references anyways) @@ -199,17 +198,16 @@ var/datum/subsystem/air/SSair return -/datum/subsystem/air/proc/process_high_pressure_delta(resumed = 0) +/datum/controller/subsystem/air/proc/process_high_pressure_delta(resumed = 0) while (high_pressure_delta.len) var/turf/open/T = high_pressure_delta[high_pressure_delta.len] high_pressure_delta.len-- - if (isturf(T)) - T.high_pressure_movements() - T.pressure_difference = 0 + T.high_pressure_movements() + T.pressure_difference = 0 if(MC_TICK_CHECK) return -/datum/subsystem/air/proc/process_active_turfs(resumed = 0) +/datum/controller/subsystem/air/proc/process_active_turfs(resumed = 0) //cache for sanic speed var/fire_count = times_fired if (!resumed) @@ -219,12 +217,12 @@ var/datum/subsystem/air/SSair while(currentrun.len) var/turf/open/T = currentrun[currentrun.len] currentrun.len-- - if (T && isturf(T)) + if (T) T.process_cell(fire_count) if (MC_TICK_CHECK) return -/datum/subsystem/air/proc/process_excited_groups(resumed = 0) +/datum/controller/subsystem/air/proc/process_excited_groups(resumed = 0) if (!resumed) src.currentrun = excited_groups.Copy() //cache for sanic speed (lists are references anyways) @@ -242,7 +240,7 @@ var/datum/subsystem/air/SSair return -/datum/subsystem/air/proc/remove_from_active(turf/open/T) +/datum/controller/subsystem/air/proc/remove_from_active(turf/open/T) active_turfs -= T if(currentpart == SSAIR_ACTIVETURFS) currentrun -= T @@ -251,7 +249,7 @@ var/datum/subsystem/air/SSair if(T.excited_group) T.excited_group.garbage_collect() -/datum/subsystem/air/proc/add_to_active(turf/open/T, blockchanges = 1) +/datum/controller/subsystem/air/proc/add_to_active(turf/open/T, blockchanges = 1) if(istype(T) && T.air) T.excited = 1 active_turfs |= T @@ -269,17 +267,17 @@ var/datum/subsystem/air/SSair else T.requires_activation = TRUE -/datum/subsystem/air/StartLoadingMap() +/datum/controller/subsystem/air/StartLoadingMap() LAZYINITLIST(queued_for_activation) map_loading = TRUE -/datum/subsystem/air/StopLoadingMap() +/datum/controller/subsystem/air/StopLoadingMap() map_loading = FALSE for(var/T in queued_for_activation) add_to_active(T) queued_for_activation.Cut() -/datum/subsystem/air/proc/setup_allturfs() +/datum/controller/subsystem/air/proc/setup_allturfs() var/list/turfs_to_init = block(locate(1, 1, 1), locate(world.maxx, world.maxy, world.maxz)) var/list/active_turfs = src.active_turfs var/times_fired = ++src.times_fired @@ -320,7 +318,7 @@ var/datum/subsystem/air/SSair CHECK_TICK var/msg = "HEY! LISTEN! [(world.timeofday - timer)/10] Seconds were wasted processing [starting_ats] turf(s) (connected to [ending_ats] other turfs) with atmos differences at round start." - world << "[msg]" + to_chat(world, "[msg]") warning(msg) /turf/open/proc/resolve_active_graph() @@ -349,7 +347,7 @@ var/datum/subsystem/air/SSair /turf/open/space/resolve_active_graph() return list() -/datum/subsystem/air/proc/setup_atmos_machinery() +/datum/controller/subsystem/air/proc/setup_atmos_machinery() for (var/obj/machinery/atmospherics/AM in atmos_machinery) AM.atmosinit() CHECK_TICK @@ -357,12 +355,12 @@ var/datum/subsystem/air/SSair //this can't be done with setup_atmos_machinery() because // all atmos machinery has to initalize before the first // pipenet can be built. -/datum/subsystem/air/proc/setup_pipenets() +/datum/controller/subsystem/air/proc/setup_pipenets() for (var/obj/machinery/atmospherics/AM in atmos_machinery) AM.build_network() CHECK_TICK -/datum/subsystem/air/proc/setup_template_machinery(list/atmos_machines) +/datum/controller/subsystem/air/proc/setup_template_machinery(list/atmos_machines) for(var/A in atmos_machines) var/obj/machinery/atmospherics/AM = A AM.atmosinit() diff --git a/code/controllers/subsystem/assets.dm b/code/controllers/subsystem/assets.dm index 93860e72a7..2ad4faa09a 100644 --- a/code/controllers/subsystem/assets.dm +++ b/code/controllers/subsystem/assets.dm @@ -1,15 +1,15 @@ -var/datum/subsystem/assets/SSasset +var/datum/controller/subsystem/assets/SSasset -/datum/subsystem/assets +/datum/controller/subsystem/assets name = "Assets" init_order = -3 flags = SS_NO_FIRE var/list/cache = list() -/datum/subsystem/assets/New() +/datum/controller/subsystem/assets/New() NEW_SS_GLOBAL(SSasset) -/datum/subsystem/assets/Initialize(timeofday) +/datum/controller/subsystem/assets/Initialize(timeofday) for(var/type in typesof(/datum/asset) - list(/datum/asset, /datum/asset/simple)) var/datum/asset/A = new type() A.register() diff --git a/code/controllers/subsystem/atoms.dm b/code/controllers/subsystem/atoms.dm index 23a1ce468c..8289146256 100644 --- a/code/controllers/subsystem/atoms.dm +++ b/code/controllers/subsystem/atoms.dm @@ -1,10 +1,10 @@ -var/datum/subsystem/atoms/SSatoms +var/datum/controller/subsystem/atoms/SSatoms #define INITIALIZATION_INSSATOMS 0 //New should not call Initialize #define INITIALIZATION_INNEW_MAPLOAD 1 //New should call Initialize(TRUE) #define INITIALIZATION_INNEW_REGULAR 2 //New should call Initialize(FALSE) -/datum/subsystem/atoms +/datum/controller/subsystem/atoms name = "Atoms" init_order = 11 flags = SS_NO_FIRE @@ -12,17 +12,17 @@ var/datum/subsystem/atoms/SSatoms var/initialized = INITIALIZATION_INSSATOMS var/old_initialized -/datum/subsystem/atoms/New() +/datum/controller/subsystem/atoms/New() NEW_SS_GLOBAL(SSatoms) -/datum/subsystem/atoms/Initialize(timeofday) +/datum/controller/subsystem/atoms/Initialize(timeofday) fire_overlay.appearance_flags = RESET_COLOR setupGenetics() //to set the mutations' place in structural enzymes, so monkey.initialize() knows where to put the monkey mutation. initialized = INITIALIZATION_INNEW_MAPLOAD InitializeAtoms() return ..() -/datum/subsystem/atoms/proc/InitializeAtoms(list/atoms = null) +/datum/controller/subsystem/atoms/proc/InitializeAtoms(list/atoms = null) if(initialized == INITIALIZATION_INSSATOMS) return @@ -30,10 +30,17 @@ var/datum/subsystem/atoms/SSatoms initialized = INITIALIZATION_INNEW_MAPLOAD + var/static/list/NewQdelList = list() + if(atoms) for(var/I in atoms) var/atom/A = I if(!A.initialized) //this check is to make sure we don't call it twice on an object that was created in a previous Initialize call + if(QDELETED(A)) + if(!(NewQdelList[A.type])) + stack_trace("Found new qdeletion in type [A.type]!") + NewQdelList[A.type] = TRUE + continue var/start_tick = world.time if(A.Initialize(TRUE)) LAZYADD(late_loaders, A) @@ -47,6 +54,11 @@ var/datum/subsystem/atoms/SSatoms #endif for(var/atom/A in world) if(!A.initialized) //this check is to make sure we don't call it twice on an object that was created in a previous Initialize call + if(QDELETED(A)) + if(!(NewQdelList[A.type])) + stack_trace("Found new qdeletion in type [A.type]!") + NewQdelList[A.type] = TRUE + continue var/start_tick = world.time if(A.Initialize(TRUE)) LAZYADD(late_loaders, A) @@ -71,20 +83,20 @@ var/datum/subsystem/atoms/SSatoms CHECK_TICK testing("Late-initialized [late_loaders.len] atoms") -/datum/subsystem/atoms/proc/map_loader_begin() +/datum/controller/subsystem/atoms/proc/map_loader_begin() old_initialized = initialized initialized = INITIALIZATION_INSSATOMS -/datum/subsystem/atoms/proc/map_loader_stop() +/datum/controller/subsystem/atoms/proc/map_loader_stop() initialized = old_initialized -/datum/subsystem/atoms/Recover() +/datum/controller/subsystem/atoms/Recover() initialized = SSatoms.initialized if(initialized == INITIALIZATION_INNEW_MAPLOAD) InitializeAtoms() old_initialized = SSatoms.old_initialized -/datum/subsystem/atoms/proc/setupGenetics() +/datum/controller/subsystem/atoms/proc/setupGenetics() var/list/avnums = new /list(DNA_STRUC_ENZYMES_BLOCKS) for(var/i=1, i<=DNA_STRUC_ENZYMES_BLOCKS, i++) avnums[i] = i diff --git a/code/controllers/subsystem/augury.dm b/code/controllers/subsystem/augury.dm index f9035c7252..d1a9424a19 100644 --- a/code/controllers/subsystem/augury.dm +++ b/code/controllers/subsystem/augury.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/augury/SSaugury +var/datum/controller/subsystem/augury/SSaugury -/datum/subsystem/augury +/datum/controller/subsystem/augury name = "Augury" flags = SS_NO_INIT @@ -9,16 +9,16 @@ var/datum/subsystem/augury/SSaugury var/list/observers_given_action = list() -/datum/subsystem/augury/New() +/datum/controller/subsystem/augury/New() NEW_SS_GLOBAL(SSaugury) -/datum/subsystem/augury/stat_entry(msg) +/datum/controller/subsystem/augury/stat_entry(msg) ..("W:[watchers.len]|D:[doombringers.len]") -/datum/subsystem/augury/proc/register_doom(atom/A, severity) +/datum/controller/subsystem/augury/proc/register_doom(atom/A, severity) doombringers[A] = severity -/datum/subsystem/augury/fire() +/datum/controller/subsystem/augury/fire() var/biggest_doom = null var/biggest_threat = null @@ -67,13 +67,13 @@ var/datum/subsystem/augury/SSaugury /datum/action/innate/augury/Activate() SSaugury.watchers += owner - owner << "You are now auto-following debris." + to_chat(owner, "You are now auto-following debris.") active = TRUE UpdateButtonIcon() /datum/action/innate/augury/Deactivate() SSaugury.watchers -= owner - owner << "You are no longer auto-following debris." + to_chat(owner, "You are no longer auto-following debris.") active = FALSE UpdateButtonIcon() diff --git a/code/controllers/subsystem/communications.dm b/code/controllers/subsystem/communications.dm index 08f130df2c..e17557a0fa 100644 --- a/code/controllers/subsystem/communications.dm +++ b/code/controllers/subsystem/communications.dm @@ -1,19 +1,19 @@ #define COMMUNICATION_COOLDOWN 600 #define COMMUNICATION_COOLDOWN_AI 600 -var/datum/subsystem/communications/SScommunications +var/datum/controller/subsystem/communications/SScommunications -/datum/subsystem/communications +/datum/controller/subsystem/communications name = "Communications" flags = SS_NO_INIT | SS_NO_FIRE var/silicon_message_cooldown var/nonsilicon_message_cooldown -/datum/subsystem/communications/New() +/datum/controller/subsystem/communications/New() NEW_SS_GLOBAL(SScommunications) -/datum/subsystem/communications/proc/can_announce(mob/living/user, is_silicon) +/datum/controller/subsystem/communications/proc/can_announce(mob/living/user, is_silicon) if(is_silicon && silicon_message_cooldown > world.time) . = FALSE else if(!is_silicon && nonsilicon_message_cooldown > world.time) @@ -21,7 +21,7 @@ var/datum/subsystem/communications/SScommunications else . = TRUE -/datum/subsystem/communications/proc/make_announcement(mob/living/user, is_silicon, input) +/datum/controller/subsystem/communications/proc/make_announcement(mob/living/user, is_silicon, input) if(!can_announce(user, is_silicon)) return FALSE if(is_silicon) diff --git a/code/controllers/subsystem/diseases.dm b/code/controllers/subsystem/diseases.dm index 6d5b476eb8..06a4961eb9 100644 --- a/code/controllers/subsystem/diseases.dm +++ b/code/controllers/subsystem/diseases.dm @@ -1,19 +1,19 @@ -var/datum/subsystem/diseases/SSdisease +var/datum/controller/subsystem/diseases/SSdisease -/datum/subsystem/diseases +/datum/controller/subsystem/diseases name = "Diseases" flags = SS_KEEP_TIMING|SS_NO_INIT var/list/currentrun = list() var/list/processing = list() -/datum/subsystem/diseases/New() +/datum/controller/subsystem/diseases/New() NEW_SS_GLOBAL(SSdisease) -/datum/subsystem/diseases/stat_entry(msg) +/datum/controller/subsystem/diseases/stat_entry(msg) ..("P:[processing.len]") -/datum/subsystem/diseases/fire(resumed = 0) +/datum/controller/subsystem/diseases/fire(resumed = 0) if(!resumed) src.currentrun = processing.Copy() //cache for sanic speed (lists are references anyways) diff --git a/code/controllers/subsystem/events.dm b/code/controllers/subsystem/events.dm index b04ed56f9d..b922ecc1ba 100644 --- a/code/controllers/subsystem/events.dm +++ b/code/controllers/subsystem/events.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/events/SSevent +var/datum/controller/subsystem/events/SSevent -/datum/subsystem/events +/datum/controller/subsystem/events name = "Events" init_order = 6 @@ -16,11 +16,11 @@ var/datum/subsystem/events/SSevent var/wizardmode = 0 -/datum/subsystem/events/New() +/datum/controller/subsystem/events/New() NEW_SS_GLOBAL(SSevent) -/datum/subsystem/events/Initialize(time, zlevel) +/datum/controller/subsystem/events/Initialize(time, zlevel) for(var/type in typesof(/datum/round_event_control)) var/datum/round_event_control/E = new type() if(!E.typepath) @@ -31,7 +31,7 @@ var/datum/subsystem/events/SSevent ..() -/datum/subsystem/events/fire(resumed = 0) +/datum/controller/subsystem/events/fire(resumed = 0) if(!resumed) checkEvent() //only check these if we aren't resuming a paused fire src.currentrun = running.Copy() @@ -50,23 +50,18 @@ var/datum/subsystem/events/SSevent return //checks if we should select a random event yet, and reschedules if necessary -/datum/subsystem/events/proc/checkEvent() +/datum/controller/subsystem/events/proc/checkEvent() if(scheduled <= world.time) spawnEvent() reschedule() //decides which world.time we should select another random event at. -/datum/subsystem/events/proc/reschedule() +/datum/controller/subsystem/events/proc/reschedule() scheduled = world.time + rand(frequency_lower, max(frequency_lower,frequency_upper)) - if(world.time > 108000) //2:45 - if(SSshuttle.emergency.mode < SHUTTLE_CALL) - SSshuttle.emergency.request(null, 1.5) - log_game("Round time limit reached. Shuttle has been auto-called.") - message_admins("Round time limit reached. Shuttle called.") - //selects a random event based on whether it can occur and it's 'weight'(probability) -/datum/subsystem/events/proc/spawnEvent() +/datum/controller/subsystem/events/proc/spawnEvent() + set waitfor = FALSE //for the admin prompt if(!config.allow_random_events) // var/datum/round_event_control/E = locate(/datum/round_event_control/dust) in control // if(E) E.runEvent() @@ -81,13 +76,8 @@ var/datum/subsystem/events/SSevent if(!E.canSpawnEvent(players_amt, gamemode)) continue if(E.weight < 0) //for round-start events etc. - if(E.runEvent() == PROCESS_KILL) - E.max_occurrences = 0 - continue - if (E.alertadmins) - message_admins("Random Event triggering: [E.name] ([E.typepath])") - log_game("Random Event triggering: [E.name] ([E.typepath])") - return + if(TriggerEvent(E)) + return sum_of_weights += E.weight sum_of_weights = rand(0,sum_of_weights) //reusing this variable. It now represents the 'weight' we want to select @@ -98,14 +88,15 @@ var/datum/subsystem/events/SSevent sum_of_weights -= E.weight if(sum_of_weights <= 0) //we've hit our goal - if(E.runEvent() == PROCESS_KILL)//we couldn't run this event for some reason, set its max_occurrences to 0 - E.max_occurrences = 0 - continue - if (E.alertadmins) - message_admins("Random Event triggering: [E.name] ([E.typepath])") - deadchat_broadcast("[E.name] has just been randomly triggered!") //STOP ASSUMING IT'S BADMINS! - log_game("Random Event triggering: [E.name] ([E.typepath])") - return + if(TriggerEvent(E)) + return + +/datum/controller/subsystem/events/proc/TriggerEvent(datum/round_event_control/E) + . = E.preRunEvent() + if(. == EVENT_CANT_RUN)//we couldn't run this event for some reason, set its max_occurrences to 0 + E.max_occurrences = 0 + else if(. != EVENT_CANCELLED) + E.runEvent(TRUE) /datum/round_event/proc/findEventArea() //Here's a nice proc to use to find an area for your event to land in! var/list/safe_areas = list( @@ -180,7 +171,7 @@ var/datum/subsystem/events/SSevent */ //sets up the holidays and holidays list -/datum/subsystem/events/proc/getHoliday() +/datum/controller/subsystem/events/proc/getHoliday() if(!config.allow_holidays) return // Holiday stuff was not enabled in the config! @@ -200,12 +191,12 @@ var/datum/subsystem/events/SSevent holidays = shuffle(holidays) world.update_status() -/datum/subsystem/events/proc/toggleWizardmode() +/datum/controller/subsystem/events/proc/toggleWizardmode() wizardmode = !wizardmode message_admins("Summon Events has been [wizardmode ? "enabled, events will occur every [SSevent.frequency_lower / 600] to [SSevent.frequency_upper / 600] minutes" : "disabled"]!") log_game("Summon Events was [wizardmode ? "enabled" : "disabled"]!") -/datum/subsystem/events/proc/resetFrequency() +/datum/controller/subsystem/events/proc/resetFrequency() frequency_lower = initial(frequency_lower) frequency_upper = initial(frequency_upper) diff --git a/code/controllers/subsystem/fire_burning.dm b/code/controllers/subsystem/fire_burning.dm index 0b812f7306..d420cd5a12 100644 --- a/code/controllers/subsystem/fire_burning.dm +++ b/code/controllers/subsystem/fire_burning.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/fire_burning/SSfire_burning +var/datum/controller/subsystem/fire_burning/SSfire_burning -/datum/subsystem/fire_burning +/datum/controller/subsystem/fire_burning name = "Fire Burning" priority = 40 flags = SS_NO_INIT|SS_BACKGROUND @@ -8,15 +8,15 @@ var/datum/subsystem/fire_burning/SSfire_burning var/list/currentrun = list() var/list/processing = list() -/datum/subsystem/fire_burning/New() +/datum/controller/subsystem/fire_burning/New() NEW_SS_GLOBAL(SSfire_burning) -/datum/subsystem/fire_burning/stat_entry() +/datum/controller/subsystem/fire_burning/stat_entry() ..("P:[processing.len]") -/datum/subsystem/fire_burning/fire(resumed = 0) +/datum/controller/subsystem/fire_burning/fire(resumed = 0) if (!resumed) src.currentrun = processing.Copy() diff --git a/code/controllers/subsystem/garbage.dm b/code/controllers/subsystem/garbage.dm index f9484a898e..dc28f4cb50 100644 --- a/code/controllers/subsystem/garbage.dm +++ b/code/controllers/subsystem/garbage.dm @@ -1,10 +1,9 @@ -var/datum/subsystem/garbage_collector/SSgarbage +var/datum/controller/subsystem/garbage_collector/SSgarbage -/datum/subsystem/garbage_collector +/datum/controller/subsystem/garbage_collector name = "Garbage" priority = 15 wait = 5 - display_order = 2 flags = SS_FIRE_IN_LOBBY|SS_POST_FIRE_TIMING|SS_BACKGROUND|SS_NO_INIT var/collection_timeout = 3000// deciseconds to wait to let running procs finish before we just say fuck it and force del() the object @@ -35,10 +34,10 @@ var/datum/subsystem/garbage_collector/SSgarbage var/list/qdel_list = list() // list of all types that have been qdel()eted #endif -/datum/subsystem/garbage_collector/New() +/datum/controller/subsystem/garbage_collector/New() NEW_SS_GLOBAL(SSgarbage) -/datum/subsystem/garbage_collector/stat_entry(msg) +/datum/controller/subsystem/garbage_collector/stat_entry(msg) msg += "Q:[queue.len]|D:[delslasttick]|G:[gcedlasttick]|" msg += "GR:" if (!(delslasttick+gcedlasttick)) @@ -53,14 +52,14 @@ var/datum/subsystem/garbage_collector/SSgarbage msg += "TGR:[round((totalgcs/(totaldels+totalgcs))*100, 0.01)]%" ..(msg) -/datum/subsystem/garbage_collector/fire() +/datum/controller/subsystem/garbage_collector/fire() HandleToBeQueued() if(state == SS_RUNNING) HandleQueue() //If you see this proc high on the profile, what you are really seeing is the garbage collection/soft delete overhead in byond. //Don't attempt to optimize, not worth the effort. -/datum/subsystem/garbage_collector/proc/HandleToBeQueued() +/datum/controller/subsystem/garbage_collector/proc/HandleToBeQueued() var/list/tobequeued = src.tobequeued var/starttime = world.time var/starttimeofday = world.timeofday @@ -71,7 +70,7 @@ var/datum/subsystem/garbage_collector/SSgarbage Queue(ref) tobequeued.Cut(1, 2) -/datum/subsystem/garbage_collector/proc/HandleQueue() +/datum/controller/subsystem/garbage_collector/proc/HandleQueue() delslasttick = 0 gcedlasttick = 0 var/time_to_kill = world.time - collection_timeout // Anything qdel() but not GC'd BEFORE this time needs to be manually del() @@ -125,12 +124,12 @@ var/datum/subsystem/garbage_collector/SSgarbage ++gcedlasttick ++totalgcs -/datum/subsystem/garbage_collector/proc/QueueForQueuing(datum/A) +/datum/controller/subsystem/garbage_collector/proc/QueueForQueuing(datum/A) if (istype(A) && A.gc_destroyed == GC_CURRENTLY_BEING_QDELETED) tobequeued += A A.gc_destroyed = GC_QUEUED_FOR_QUEUING -/datum/subsystem/garbage_collector/proc/Queue(datum/A) +/datum/controller/subsystem/garbage_collector/proc/Queue(datum/A) if (!istype(A) || (!isnull(A.gc_destroyed) && A.gc_destroyed >= 0)) return if (A.gc_destroyed == GC_QUEUED_FOR_HARD_DEL) @@ -146,12 +145,12 @@ var/datum/subsystem/garbage_collector/SSgarbage queue[refid] = gctime -/datum/subsystem/garbage_collector/proc/HardQueue(datum/A) +/datum/controller/subsystem/garbage_collector/proc/HardQueue(datum/A) if (istype(A) && A.gc_destroyed == GC_CURRENTLY_BEING_QDELETED) tobequeued += A A.gc_destroyed = GC_QUEUED_FOR_HARD_DEL -/datum/subsystem/garbage_collector/Recover() +/datum/controller/subsystem/garbage_collector/Recover() if (istype(SSgarbage.queue)) queue |= SSgarbage.queue if (istype(SSgarbage.tobequeued)) @@ -351,9 +350,6 @@ var/datum/subsystem/garbage_collector/SSgarbage //if find_references isn't working for some datum //update this list using tools/DMTreeToGlobalsList /datum/proc/find_references_in_globals() - SearchVar(nextmap) - SearchVar(mapchanging) - SearchVar(rebootingpendingmapchange) SearchVar(clockwork_construction_value) SearchVar(clockwork_caches) SearchVar(clockwork_daemons) @@ -398,7 +394,6 @@ var/datum/subsystem/garbage_collector/SSgarbage SearchVar(WALLITEMS_INVERSE) SearchVar(sortInstance) SearchVar(config) - SearchVar(protected_config) SearchVar(host) SearchVar(join_motd) SearchVar(station_name) @@ -416,8 +411,6 @@ var/datum/subsystem/garbage_collector/SSgarbage SearchVar(Debug2) SearchVar(comms_key) SearchVar(comms_allowed) - SearchVar(cross_address) - SearchVar(cross_allowed) SearchVar(medal_hub) SearchVar(medal_pass) SearchVar(medals_enabled) @@ -477,12 +470,10 @@ var/datum/subsystem/garbage_collector/SSgarbage SearchVar(timezoneOffset) SearchVar(fileaccess_timer) SearchVar(TAB) - SearchVar(map_ready) SearchVar(data_core) SearchVar(CELLRATE) SearchVar(CHARGELEVEL) SearchVar(powernets) - SearchVar(map_name) SearchVar(hair_styles_list) SearchVar(hair_styles_male_list) SearchVar(hair_styles_female_list) @@ -758,8 +749,6 @@ var/datum/subsystem/garbage_collector/SSgarbage SearchVar(fire_overlay) SearchVar(acid_overlay) SearchVar(BUMP_TELEPORTERS) - SearchVar(contrabandposters) - SearchVar(legitposters) SearchVar(blacklisted_glowshroom_turfs) SearchVar(PDAs) SearchVar(rod_recipes) @@ -943,7 +932,6 @@ var/datum/subsystem/garbage_collector/SSgarbage SearchVar(GALOSHES_DONT_HELP) SearchVar(SLIDE_ICE) SearchVar(limb_icon_cache) - SearchVar(ALIEN_AFK_BRACKET) SearchVar(MIN_IMPREGNATION_TIME) SearchVar(MAX_IMPREGNATION_TIME) SearchVar(MIN_ACTIVE_TIME) diff --git a/code/controllers/subsystem/icon_smooth.dm b/code/controllers/subsystem/icon_smooth.dm index bedead1ea3..a52089db2a 100644 --- a/code/controllers/subsystem/icon_smooth.dm +++ b/code/controllers/subsystem/icon_smooth.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/icon_smooth/SSicon_smooth +var/datum/controller/subsystem/icon_smooth/SSicon_smooth -/datum/subsystem/icon_smooth +/datum/controller/subsystem/icon_smooth name = "Icon Smoothing" init_order = -5 wait = 1 @@ -9,10 +9,10 @@ var/datum/subsystem/icon_smooth/SSicon_smooth var/list/smooth_queue = list() -/datum/subsystem/icon_smooth/New() +/datum/controller/subsystem/icon_smooth/New() NEW_SS_GLOBAL(SSicon_smooth) -/datum/subsystem/icon_smooth/fire() +/datum/controller/subsystem/icon_smooth/fire() while(smooth_queue.len) var/atom/A = smooth_queue[smooth_queue.len] smooth_queue.len-- @@ -22,7 +22,7 @@ var/datum/subsystem/icon_smooth/SSicon_smooth if (!smooth_queue.len) can_fire = 0 -/datum/subsystem/icon_smooth/Initialize() +/datum/controller/subsystem/icon_smooth/Initialize() smooth_zlevel(1,TRUE) smooth_zlevel(2,TRUE) var/queue = smooth_queue diff --git a/code/controllers/subsystem/inbounds.dm b/code/controllers/subsystem/inbounds.dm new file mode 100644 index 0000000000..169b8a44b2 --- /dev/null +++ b/code/controllers/subsystem/inbounds.dm @@ -0,0 +1,32 @@ +var/datum/controller/subsystem/inbounds/SSinbounds +/datum/controller/subsystem/inbounds + name = "Inbounds" + priority = 40 + flags = SS_NO_INIT + + var/list/processing = list() + var/list/currentrun = list() + +/datum/controller/subsystem/inbounds/New() + NEW_SS_GLOBAL(SSinbounds) +/datum/controller/subsystem/inbounds/stat_entry() + ..("P:[processing.len]") + +/datum/controller/subsystem/inbounds/fire(resumed = 0) + if (!resumed) + src.currentrun = processing.Copy() + //cache for sanic speed (lists are references anyways) + var/list/currentrun = src.currentrun + + while(currentrun.len) + var/atom/movable/thing = currentrun[currentrun.len] + currentrun.len-- + if(thing) + thing.check_in_bounds(wait) + else + SSinbounds.processing -= thing + if(MC_TICK_CHECK) + return + +/datum/controller/subsystem/inbounds/Recover() + processing = SSinbounds.processing diff --git a/code/controllers/subsystem/ipintel.dm b/code/controllers/subsystem/ipintel.dm index b1b99d5939..07954f5476 100644 --- a/code/controllers/subsystem/ipintel.dm +++ b/code/controllers/subsystem/ipintel.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/ipintel/SSipintel +var/datum/controller/subsystem/ipintel/SSipintel -/datum/subsystem/ipintel +/datum/controller/subsystem/ipintel name = "XKeyScore" init_order = -10 flags = SS_NO_FIRE @@ -10,10 +10,10 @@ var/datum/subsystem/ipintel/SSipintel var/list/cache = list() -/datum/subsystem/ipintel/New() +/datum/controller/subsystem/ipintel/New() NEW_SS_GLOBAL(SSipintel) -/datum/subsystem/ipintel/Initialize(timeofday, zlevel) +/datum/controller/subsystem/ipintel/Initialize(timeofday, zlevel) enabled = 1 . = ..() diff --git a/code/controllers/subsystem/jobs.dm b/code/controllers/subsystem/jobs.dm index 5c706e62e6..35577889c4 100644 --- a/code/controllers/subsystem/jobs.dm +++ b/code/controllers/subsystem/jobs.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/job/SSjob +var/datum/controller/subsystem/job/SSjob -/datum/subsystem/job +/datum/controller/subsystem/job name = "Jobs" init_order = 14 flags = SS_NO_FIRE @@ -12,11 +12,13 @@ var/datum/subsystem/job/SSjob var/list/job_debug = list() //Debug info var/initial_players_to_assign = 0 //used for checking against population caps -/datum/subsystem/job/New() + var/list/prioritized_jobs = list() + +/datum/controller/subsystem/job/New() NEW_SS_GLOBAL(SSjob) -/datum/subsystem/job/Initialize(timeofday) +/datum/controller/subsystem/job/Initialize(timeofday) if(!occupations.len) SetupOccupations() if(config.load_jobs_from_txt) @@ -24,11 +26,11 @@ var/datum/subsystem/job/SSjob ..() -/datum/subsystem/job/proc/SetupOccupations(faction = "Station") +/datum/controller/subsystem/job/proc/SetupOccupations(faction = "Station") occupations = list() var/list/all_jobs = subtypesof(/datum/job) if(!all_jobs.len) - world << "Error setting up jobs, no job datums found" + to_chat(world, "Error setting up jobs, no job datums found") return 0 for(var/J in all_jobs) @@ -39,6 +41,9 @@ var/datum/subsystem/job/SSjob continue if(!job.config_check()) continue + if(!job.map_check()) //Even though we initialize before mapping, this is fine because the config is loaded at new + testing("Removed [job.type] due to map config"); + continue occupations += job name_occupations[job.title] = job type_occupations[J] = job @@ -46,25 +51,24 @@ var/datum/subsystem/job/SSjob return 1 -/datum/subsystem/job/proc/Debug(text) +/datum/controller/subsystem/job/proc/Debug(text) if(!Debug2) return 0 job_debug.Add(text) return 1 -/datum/subsystem/job/proc/GetJob(rank) +/datum/controller/subsystem/job/proc/GetJob(rank) if(!occupations.len) SetupOccupations() return name_occupations[rank] -/datum/subsystem/job/proc/GetJobType(jobtype) +/datum/controller/subsystem/job/proc/GetJobType(jobtype) if(!occupations.len) SetupOccupations() return type_occupations[jobtype] - -/datum/subsystem/job/proc/AssignRole(mob/new_player/player, rank, latejoin=0) +/datum/controller/subsystem/job/proc/AssignRole(mob/dead/new_player/player, rank, latejoin=0) Debug("Running AR, Player: [player], Rank: [rank], LJ: [latejoin]") if(player && player.mind && rank) var/datum/job/job = GetJob(rank) @@ -86,10 +90,10 @@ var/datum/subsystem/job/SSjob return 0 -/datum/subsystem/job/proc/FindOccupationCandidates(datum/job/job, level, flag) +/datum/controller/subsystem/job/proc/FindOccupationCandidates(datum/job/job, level, flag) Debug("Running FOC, Job: [job], Level: [level], Flag: [flag]") var/list/candidates = list() - for(var/mob/new_player/player in unassigned) + for(var/mob/dead/new_player/player in unassigned) if(jobban_isbanned(player, job.title)) Debug("FOC isbanned failed, Player: [player]") continue @@ -110,7 +114,7 @@ var/datum/subsystem/job/SSjob candidates += player return candidates -/datum/subsystem/job/proc/GiveRandomJob(mob/new_player/player) +/datum/controller/subsystem/job/proc/GiveRandomJob(mob/dead/new_player/player) Debug("GRJ Giving random job, Player: [player]") for(var/datum/job/job in shuffle(occupations)) if(!job) @@ -145,8 +149,8 @@ var/datum/subsystem/job/SSjob unassigned -= player break -/datum/subsystem/job/proc/ResetOccupations() - for(var/mob/new_player/player in player_list) +/datum/controller/subsystem/job/proc/ResetOccupations() + for(var/mob/dead/new_player/player in player_list) if((player) && (player.mind)) player.mind.assigned_role = null player.mind.special_role = null @@ -158,7 +162,7 @@ var/datum/subsystem/job/SSjob //This proc is called before the level loop of DivideOccupations() and will try to select a head, ignoring ALL non-head preferences for every level until //it locates a head or runs out of levels to check //This is basically to ensure that there's atleast a few heads in the round -/datum/subsystem/job/proc/FillHeadPosition() +/datum/controller/subsystem/job/proc/FillHeadPosition() for(var/level = 1 to 3) for(var/command_position in command_positions) var/datum/job/job = GetJob(command_position) @@ -169,7 +173,7 @@ var/datum/subsystem/job/SSjob var/list/candidates = FindOccupationCandidates(job, level) if(!candidates.len) continue - var/mob/new_player/candidate = pick(candidates) + var/mob/dead/new_player/candidate = pick(candidates) if(AssignRole(candidate, command_position)) return 1 return 0 @@ -177,7 +181,7 @@ var/datum/subsystem/job/SSjob //This proc is called at the start of the level loop of DivideOccupations() and will cause head jobs to be checked before any other jobs of the same level //This is also to ensure we get as many heads as possible -/datum/subsystem/job/proc/CheckHeadPositions(level) +/datum/controller/subsystem/job/proc/CheckHeadPositions(level) for(var/command_position in command_positions) var/datum/job/job = GetJob(command_position) if(!job) @@ -187,12 +191,12 @@ var/datum/subsystem/job/SSjob var/list/candidates = FindOccupationCandidates(job, level) if(!candidates.len) continue - var/mob/new_player/candidate = pick(candidates) + var/mob/dead/new_player/candidate = pick(candidates) AssignRole(candidate, command_position) return -/datum/subsystem/job/proc/FillAIPosition() +/datum/controller/subsystem/job/proc/FillAIPosition() var/ai_selected = 0 var/datum/job/job = GetJob("AI") if(!job) @@ -202,7 +206,7 @@ var/datum/subsystem/job/SSjob var/list/candidates = list() candidates = FindOccupationCandidates(job, level) if(candidates.len) - var/mob/new_player/candidate = pick(candidates) + var/mob/dead/new_player/candidate = pick(candidates) if(AssignRole(candidate, "AI")) ai_selected++ break @@ -215,7 +219,7 @@ var/datum/subsystem/job/SSjob * fills var "assigned_role" for all ready players. * This proc must not have any side effect besides of modifying "assigned_role". **/ -/datum/subsystem/job/proc/DivideOccupations() +/datum/controller/subsystem/job/proc/DivideOccupations() //Setup new player list and get the jobs list Debug("Running DO") @@ -226,7 +230,7 @@ var/datum/subsystem/job/SSjob A.spawn_positions = 3 //Get the players who are ready - for(var/mob/new_player/player in player_list) + for(var/mob/dead/new_player/player in player_list) if(player.ready && player.mind && !player.mind.assigned_role) unassigned += player @@ -256,7 +260,7 @@ var/datum/subsystem/job/SSjob var/datum/job/assist = new /datum/job/assistant() var/list/assistant_candidates = FindOccupationCandidates(assist, 3) Debug("AC1, Candidates: [assistant_candidates.len]") - for(var/mob/new_player/player in assistant_candidates) + for(var/mob/dead/new_player/player in assistant_candidates) Debug("AC1 pass, Player: [player]") AssignRole(player, "Assistant") assistant_candidates -= player @@ -287,7 +291,7 @@ var/datum/subsystem/job/SSjob CheckHeadPositions(level) // Loop through all unassigned players - for(var/mob/new_player/player in unassigned) + for(var/mob/dead/new_player/player in unassigned) if(PopcapReached()) RejectPlayer(player) @@ -325,13 +329,13 @@ var/datum/subsystem/job/SSjob // Hand out random jobs to the people who didn't get any in the last check // Also makes sure that they got their preference correct - for(var/mob/new_player/player in unassigned) + for(var/mob/dead/new_player/player in unassigned) if(PopcapReached()) RejectPlayer(player) else if(jobban_isbanned(player, "Assistant")) GiveRandomJob(player) //you get to roll for random before everyone else just to be sure you don't get assistant. you're so speshul - for(var/mob/new_player/player in unassigned) + for(var/mob/dead/new_player/player in unassigned) if(PopcapReached()) RejectPlayer(player) else if(player.client.prefs.joblessrole == BERANDOMJOB) @@ -342,7 +346,7 @@ var/datum/subsystem/job/SSjob Debug("DO, Running AC2") // For those who wanted to be assistant if their preferences were filled, here you go. - for(var/mob/new_player/player in unassigned) + for(var/mob/dead/new_player/player in unassigned) if(PopcapReached()) RejectPlayer(player) if(player.client.prefs.joblessrole == BEASSISTANT) @@ -351,13 +355,21 @@ var/datum/subsystem/job/SSjob else // For those who don't want to play if their preference were filled, back you go. RejectPlayer(player) - for(var/mob/new_player/player in unassigned) //Players that wanted to back out but couldn't because they're antags (can you feel the edge case?) + 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?) GiveRandomJob(player) return 1 //Gives the player the stuff he should have with his rank -/datum/subsystem/job/proc/EquipRank(mob/living/H, rank, joined_late=0) +/datum/controller/subsystem/job/proc/EquipRank(mob/M, rank, joined_late=0) + var/mob/dead/new_player/N + var/mob/living/H + if(!joined_late) + N = M + H = N.new_character + else + H = M + var/datum/job/job = GetJob(rank) H.job = rank @@ -375,7 +387,7 @@ var/datum/subsystem/job/SSjob break 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]") - S = pick(latejoin) + S = get_turf(pick(latejoin)) if(!S) //final attempt, lets find some area in the arrivals shuttle to spawn them in to. log_world("Couldn't find a round start latejoin spawn point.") for(var/turf/T in get_area_turfs(/area/shuttle/arrival)) @@ -398,22 +410,26 @@ var/datum/subsystem/job/SSjob var/new_mob = job.equip(H) if(ismob(new_mob)) H = new_mob + if(!joined_late) + N.new_character = H + else + M = H - H << "You are the [rank]." - H << "As the [rank] you answer directly to [job.supervisors]. Special circumstances may change this." - H << "To speak on your departments radio, use the :h button. To see others, look closely at your headset." + to_chat(M, "You are the [rank].") + to_chat(M, "As the [rank] you answer directly to [job.supervisors]. Special circumstances may change this.") + to_chat(M, "To speak on your departments radio, use the :h button. To see others, look closely at your headset.") if(job.req_admin_notify) - H << "You are playing a job that is important for Game Progression. If you have to disconnect, please notify the admins via adminhelp." + 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.minimal_access_threshold) - H << "As this station was initially staffed with a [config.jobs_have_minimal_access ? "full crew, only your job's necessities" : "skeleton crew, additional access may"] have been added to your ID card." + to_chat(M, "As this station was initially staffed with a [config.jobs_have_minimal_access ? "full crew, only your job's necessities" : "skeleton crew, additional access may"] have been added to your ID card.") if(job && H) - job.after_spawn(H) + job.after_spawn(H, M) return H -/datum/subsystem/job/proc/setup_officer_positions() +/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") @@ -438,7 +454,7 @@ var/datum/subsystem/job/SSjob break -/datum/subsystem/job/proc/LoadJobs() +/datum/controller/subsystem/job/proc/LoadJobs() var/jobstext = return_file_text("config/jobs.txt") for(var/datum/job/J in occupations) var/regex/jobs = new("[J.title]=(-1|\\d+),(-1|\\d+)") @@ -446,7 +462,7 @@ var/datum/subsystem/job/SSjob J.total_positions = text2num(jobs.group[1]) J.spawn_positions = text2num(jobs.group[2]) -/datum/subsystem/job/proc/HandleFeedbackGathering() +/datum/controller/subsystem/job/proc/HandleFeedbackGathering() for(var/datum/job/job in occupations) var/tmp_str = "|[job.title]|" @@ -456,7 +472,7 @@ var/datum/subsystem/job/SSjob var/level4 = 0 //never var/level5 = 0 //banned var/level6 = 0 //account too young - for(var/mob/new_player/player in player_list) + for(var/mob/dead/new_player/player in player_list) if(!(player.ready && player.mind && !player.mind.assigned_role)) continue //This player is not ready if(jobban_isbanned(player, job.title)) @@ -476,31 +492,34 @@ var/datum/subsystem/job/SSjob tmp_str += "HIGH=[level1]|MEDIUM=[level2]|LOW=[level3]|NEVER=[level4]|BANNED=[level5]|YOUNG=[level6]|-" feedback_add_details("job_preferences",tmp_str) -/datum/subsystem/job/proc/PopcapReached() +/datum/controller/subsystem/job/proc/PopcapReached() if(config.hard_popcap || config.extreme_popcap) var/relevent_cap = max(config.hard_popcap, config.extreme_popcap) if((initial_players_to_assign - unassigned.len) >= relevent_cap) return 1 return 0 -/datum/subsystem/job/proc/RejectPlayer(mob/new_player/player) +/datum/controller/subsystem/job/proc/RejectPlayer(mob/dead/new_player/player) if(player.mind && player.mind.special_role) return if(PopcapReached()) Debug("Popcap overflow Check observer located, Player: [player]") - player << "You have failed to qualify for any job you desired." + to_chat(player, "You have failed to qualify for any job you desired.") unassigned -= player player.ready = 0 -/datum/subsystem/job/Recover() +/datum/controller/subsystem/job/Recover() + set waitfor = FALSE var/oldjobs = SSjob.occupations - spawn(20) - for (var/datum/job/J in oldjobs) - spawn(-1) - var/datum/job/newjob = GetJob(J.title) - if (!istype(newjob)) - return - newjob.total_positions = J.total_positions - newjob.spawn_positions = J.spawn_positions - newjob.current_positions = J.current_positions \ No newline at end of file + sleep(20) + for (var/datum/job/J in oldjobs) + INVOKE_ASYNC(src, .proc/RecoverJob, J) + +/datum/controller/subsystem/job/proc/RecoverJob(datum/job/J) + var/datum/job/newjob = GetJob(J.title) + if (!istype(newjob)) + return + newjob.total_positions = J.total_positions + newjob.spawn_positions = J.spawn_positions + newjob.current_positions = J.current_positions diff --git a/code/controllers/subsystem/lighting.dm b/code/controllers/subsystem/lighting.dm index f15f04f15b..7d3d632544 100644 --- a/code/controllers/subsystem/lighting.dm +++ b/code/controllers/subsystem/lighting.dm @@ -1,119 +1,105 @@ -var/datum/subsystem/lighting/SSlighting +var/datum/controller/subsystem/lighting/SSlighting -#define SSLIGHTING_LIGHTS 1 -#define SSLIGHTING_TURFS 2 +var/list/lighting_update_lights = list() // List of lighting sources queued for update. +var/list/lighting_update_corners = list() // List of lighting corners queued for update. +var/list/lighting_update_objects = list() // List of lighting objects queued for update. -/datum/subsystem/lighting + +/datum/controller/subsystem/lighting name = "Lighting" - init_order = 1 - wait = 1 + wait = 2 + init_order = -20 flags = SS_TICKER - priority = 25 - display_order = 5 - var/list/changed_lights = list() //list of all datum/light_source that need updating - var/changed_lights_workload = 0 //stats on the largest number of lights (max changed_lights.len) - var/list/changed_turfs = list() //list of all turfs which may have a different light level - var/changed_turfs_workload = 0 //stats on the largest number of turfs changed (max changed_turfs.len) + var/initialized = FALSE -/datum/subsystem/lighting/New() +/datum/controller/subsystem/lighting/New() NEW_SS_GLOBAL(SSlighting) - return ..() -/datum/subsystem/lighting/stat_entry() - ..("L:[round(changed_lights_workload,1)]|T:[round(changed_turfs_workload,1)]") +/datum/controller/subsystem/lighting/stat_entry() + ..("L:[lighting_update_lights.len]|C:[lighting_update_corners.len]|O:[lighting_update_objects.len]") -//Workhorse of lighting. It cycles through each light that needs updating. It updates their -//effects and then processes every turf in the queue, updating their lighting object's appearance -//Any light that returns 1 in check() deletes itself -//By using queues we are ensuring we don't perform more updates than are necessary -/datum/subsystem/lighting/fire(resumed = 0) - var/ticklimit = CURRENT_TICKLIMIT - //split our tick allotment in half so we don't spend it all on lightshift checks - CURRENT_TICKLIMIT = world.tick_usage + ((ticklimit-world.tick_usage)/2) - - var/list/changed_lights = src.changed_lights - if (!resumed) - changed_lights_workload = MC_AVERAGE(changed_lights_workload, changed_lights.len) - var/i = 1 - while (i <= changed_lights.len) - var/datum/light_source/LS = changed_lights[i++] - LS.check() - if (MC_TICK_CHECK) - break - if (i > 1) - changed_lights.Cut(1,i) - - CURRENT_TICKLIMIT = ticklimit - var/list/changed_turfs = src.changed_turfs - if (!resumed) - changed_turfs_workload = MC_AVERAGE(changed_turfs_workload, changed_turfs.len) - i = 1 - while (i <= changed_turfs.len) - var/turf/T = changed_turfs[i++] - if(T.lighting_changed) - T.redraw_lighting() - if (MC_TICK_CHECK) - break - if (i > 1) - changed_turfs.Cut(1,i) - -//same as above except it attempts to shift ALL turfs in the world regardless of lighting_changed status -/datum/subsystem/lighting/Initialize(timeofday) - var/list/turfs_to_init = block(locate(1, 1, 1), locate(world.maxx, world.maxy, world.maxz)) +/datum/controller/subsystem/lighting/Initialize(timeofday) if (config.starlight) for(var/area/A in world) - if (A.lighting_use_dynamic == DYNAMIC_LIGHTING_IFSTARLIGHT) + if (A.dynamic_lighting == DYNAMIC_LIGHTING_IFSTARLIGHT) A.luminosity = 0 - CHECK_TICK - for(var/thing in changed_lights) - var/datum/light_source/LS = thing - LS.check() - CHECK_TICK - changed_lights.Cut() + create_all_lighting_objects() + initialized = TRUE - for(var/thing in turfs_to_init) - var/turf/T = thing - T.init_lighting() - CHECK_TICK - changed_turfs.Cut() + fire(FALSE, TRUE) ..() -//Used to strip valid information from an existing instance and transfer it to the replacement. i.e. when a crash occurs -//It works by using spawn(-1) to transfer the data, if there is a runtime the data does not get transfered but the loop -//does not crash -/datum/subsystem/lighting/Recover() - if(!istype(SSlighting.changed_turfs)) - SSlighting.changed_turfs = list() - if(!istype(SSlighting.changed_lights)) - SSlighting.changed_lights = list() +/datum/controller/subsystem/lighting/fire(resumed, init_tick_checks) + var/real_tick_limit + if(!init_tick_checks) + real_tick_limit = CURRENT_TICKLIMIT + CURRENT_TICKLIMIT = ((real_tick_limit - world.tick_usage) / 3) + world.tick_usage + var/i = 0 + for (i in 1 to lighting_update_lights.len) + var/datum/light_source/L = lighting_update_lights[i] - for(var/thing in SSlighting.changed_lights) - var/datum/light_source/LS = thing - spawn(-1) //so we don't crash the loop (inefficient) - LS.check() + if (L.check() || L.destroyed || L.force_update) + L.remove_lum() + if (!L.destroyed) + L.apply_lum() - for(var/thing in changed_turfs) - var/turf/T = thing - if(T.lighting_changed) - spawn(-1) - T.redraw_lighting() + else if (L.vis_update) //We smartly update only tiles that became (in) visible to use. + L.smart_vis_update() - var/msg = "## DEBUG: [time2text(world.timeofday)] [name] subsystem restarted. Reports:\n" - for(var/varname in SSlighting.vars) - switch(varname) - if("tag","bestF","type","parent_type","vars") - continue - else - var/varval1 = SSlighting.vars[varname] - var/varval2 = vars[varname] - if(istype(varval1,/list)) - varval1 = "/list([length(varval1)])" - varval2 = "/list([length(varval2)])" - msg += "\t [varname] = [varval1] -> [varval2]\n" - log_world(msg) + L.vis_update = FALSE + L.force_update = FALSE + L.needs_update = FALSE + + if(init_tick_checks) + CHECK_TICK + else if (MC_TICK_CHECK) + break + if (i) + lighting_update_lights.Cut(1, i+1) + i = 0 + + if(!init_tick_checks) + CURRENT_TICKLIMIT = ((real_tick_limit - world.tick_usage)/2)+world.tick_usage + + for (i in 1 to lighting_update_corners.len) + var/datum/lighting_corner/C = lighting_update_corners[i] + + C.update_objects() + C.needs_update = FALSE + if(init_tick_checks) + CHECK_TICK + else if (MC_TICK_CHECK) + break + if (i) + lighting_update_corners.Cut(1, i+1) + i = 0 + + + if(!init_tick_checks) + CURRENT_TICKLIMIT = real_tick_limit + + for (i in 1 to lighting_update_objects.len) + var/atom/movable/lighting_object/O = lighting_update_objects[i] + + if (QDELETED(O)) + continue + + O.update() + O.needs_update = FALSE + if(init_tick_checks) + CHECK_TICK + else if (MC_TICK_CHECK) + break + if (i) + lighting_update_objects.Cut(1, i+1) + + +/datum/controller/subsystem/lighting/Recover() + initialized = SSlighting.initialized + ..() \ No newline at end of file diff --git a/code/controllers/subsystem/machines.dm b/code/controllers/subsystem/machines.dm index 7369ba6409..0f2356a8f2 100644 --- a/code/controllers/subsystem/machines.dm +++ b/code/controllers/subsystem/machines.dm @@ -1,21 +1,20 @@ -var/datum/subsystem/machines/SSmachine +var/datum/controller/subsystem/machines/SSmachine -/datum/subsystem/machines +/datum/controller/subsystem/machines name = "Machines" init_order = 9 - display_order = 3 flags = SS_KEEP_TIMING var/list/processing = list() var/list/currentrun = list() var/list/powernets = list() -/datum/subsystem/machines/Initialize() +/datum/controller/subsystem/machines/Initialize() makepowernets() fire() ..() -/datum/subsystem/machines/proc/makepowernets() +/datum/controller/subsystem/machines/proc/makepowernets() for(var/datum/powernet/PN in powernets) qdel(PN) powernets.Cut() @@ -26,15 +25,15 @@ var/datum/subsystem/machines/SSmachine NewPN.add_cable(PC) propagate_network(PC,PC.powernet) -/datum/subsystem/machines/New() +/datum/controller/subsystem/machines/New() NEW_SS_GLOBAL(SSmachine) -/datum/subsystem/machines/stat_entry() +/datum/controller/subsystem/machines/stat_entry() ..("M:[processing.len]|PN:[powernets.len]") -/datum/subsystem/machines/fire(resumed = 0) +/datum/controller/subsystem/machines/fire(resumed = 0) if (!resumed) for(var/datum/powernet/Powernet in powernets) Powernet.reset() //reset the power state. @@ -57,7 +56,7 @@ var/datum/subsystem/machines/SSmachine if (MC_TICK_CHECK) return -/datum/subsystem/machines/proc/setup_template_powernets(list/cables) +/datum/controller/subsystem/machines/proc/setup_template_powernets(list/cables) for(var/A in cables) var/obj/structure/cable/PC = A if(!PC.powernet) @@ -65,7 +64,7 @@ var/datum/subsystem/machines/SSmachine NewPN.add_cable(PC) propagate_network(PC,PC.powernet) -/datum/subsystem/machines/Recover() +/datum/controller/subsystem/machines/Recover() if (istype(SSmachine.processing)) processing = SSmachine.processing if (istype(SSmachine.powernets)) diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm index 359f20f83e..d94b85701c 100644 --- a/code/controllers/subsystem/mapping.dm +++ b/code/controllers/subsystem/mapping.dm @@ -1,14 +1,17 @@ -var/datum/subsystem/mapping/SSmapping +var/datum/controller/subsystem/mapping/SSmapping -/datum/subsystem/mapping +/datum/controller/subsystem/mapping name = "Mapping" init_order = 12 flags = SS_NO_FIRE - display_order = 50 var/list/nuke_tiles = list() var/list/nuke_threats = list() + var/datum/map_config/previous_map_config + var/datum/map_config/config + var/datum/map_config/next_map_config + var/list/map_templates = list() var/list/ruins_templates = list() @@ -18,20 +21,35 @@ var/datum/subsystem/mapping/SSmapping var/list/shuttle_templates = list() var/list/shelter_templates = list() -/datum/subsystem/mapping/New() +/datum/controller/subsystem/mapping/New() NEW_SS_GLOBAL(SSmapping) + if(!previous_map_config) + previous_map_config = new("data/previous_map.json", delete_after = TRUE) + if(previous_map_config.defaulted) + previous_map_config = null + if(!config) +#ifdef FORCE_MAP + config = new(FORCE_MAP) +#else + config = new +#endif return ..() -/datum/subsystem/mapping/Initialize(timeofday) +/datum/controller/subsystem/mapping/Initialize(timeofday) + if(config.defaulted) + to_chat(world, "Unable to load next map config, defaulting to Box Station") + loadWorld() + SortAreas() + process_teleport_locs() //Sets up the wizard teleport locations preloadTemplates() // Pick a random away mission. createRandomZlevel() // Generate mining. - var/mining_type = MINETYPE + var/mining_type = config.minetype if (mining_type == "lavaland") - seedRuins(list(5), config.lavaland_budget, /area/lavaland/surface/outdoors, lava_ruins_templates) + seedRuins(list(5), global.config.lavaland_budget, /area/lavaland/surface/outdoors, lava_ruins_templates) spawn_rivers() // deep space ruins @@ -43,7 +61,7 @@ var/datum/subsystem/mapping/SSmapping else space_zlevels += i - seedRuins(space_zlevels, config.space_budget, /area/space, space_ruins_templates) + seedRuins(space_zlevels, global.config.space_budget, /area/space, space_ruins_templates) // Set up Z-level transistions. setup_map_transitions() @@ -53,26 +71,24 @@ var/datum/subsystem/mapping/SSmapping Used by the AI doomsday and the self destruct nuke. */ -/datum/subsystem/mapping/proc/add_nuke_threat(datum/nuke) +/datum/controller/subsystem/mapping/proc/add_nuke_threat(datum/nuke) nuke_threats[nuke] = TRUE check_nuke_threats() -/datum/subsystem/mapping/proc/remove_nuke_threat(datum/nuke) +/datum/controller/subsystem/mapping/proc/remove_nuke_threat(datum/nuke) nuke_threats -= nuke check_nuke_threats() -/datum/subsystem/mapping/proc/check_nuke_threats() +/datum/controller/subsystem/mapping/proc/check_nuke_threats() for(var/datum/d in nuke_threats) if(!istype(d) || QDELETED(d)) nuke_threats -= d - var/threats = nuke_threats.len - for(var/N in nuke_tiles) - var/turf/open/floor/T = N - T.icon_state = (threats ? "rcircuitanim" : T.icon_regular_floor) + var/turf/open/floor/circuit/C = N + C.update_icon() -/datum/subsystem/mapping/Recover() +/datum/controller/subsystem/mapping/Recover() flags |= SS_NO_INIT map_templates = SSmapping.map_templates ruins_templates = SSmapping.ruins_templates @@ -81,7 +97,113 @@ var/datum/subsystem/mapping/SSmapping shuttle_templates = SSmapping.shuttle_templates shelter_templates = SSmapping.shelter_templates -/datum/subsystem/mapping/proc/preloadTemplates(path = "_maps/templates/") //see master controller setup + previous_map_config = SSmapping.previous_map_config + config = SSmapping.config + next_map_config = SSmapping.next_map_config + +/datum/controller/subsystem/mapping/proc/TryLoadZ(filename, errorList, forceLevel, last) + var/static/dmm_suite/loader + if(!loader) + loader = new + if(!loader.load_map(file(filename), 0, 0, forceLevel, no_changeturf = TRUE)) + errorList |= filename + if(last) + QDEL_NULL(loader) + +/datum/controller/subsystem/mapping/proc/CreateSpace(zlevel) + while(world.maxz < zlevel) + CHECK_TICK + ++world.maxz + CHECK_TICK + for(var/T in block(locate(1, 1, zlevel), locate(world.maxx, world.maxy, zlevel))) + CHECK_TICK + new /turf/open/space(T) + +#define INIT_ANNOUNCE(X) to_chat(world, "[X]"); log_world(X) +/datum/controller/subsystem/mapping/proc/loadWorld() + //if any of these fail, something has gone horribly, HORRIBLY, wrong + var/list/FailedZs = list() + + var/start_time = REALTIMEOFDAY + + INIT_ANNOUNCE("Loading [config.map_name]...") + TryLoadZ(config.GetFullMapPath(), FailedZs, ZLEVEL_STATION) + INIT_ANNOUNCE("Loaded station in [(REALTIMEOFDAY - start_time)/10]s!") + + if(config.minetype != "lavaland") + INIT_ANNOUNCE("WARNING: A map without lavaland set as it's minetype was loaded! This is being ignored! Update the maploader code!") + + for(var/I in (world.maxz + 1) to ZLEVEL_SPACEMAX) + CreateSpace(I) + + if(LAZYLEN(FailedZs)) //but seriously, unless the server's filesystem is messed up this will never happen + var/msg = "RED ALERT! The following map files failed to load: [FailedZs[1]]" + if(FailedZs.len > 1) + for(var/I in 2 to FailedZs.len) + msg += ", [I]" + msg += ". Yell at your server host!" + INIT_ANNOUNCE(msg) +#undef INIT_ANNOUNCE + +/datum/controller/subsystem/mapping/proc/maprotate() + var/players = clients.len + var/list/mapvotes = list() + //count votes + if(global.config.allow_map_voting) + for (var/client/c in clients) + var/vote = c.prefs.preferred_map + if (!vote) + if (global.config.defaultmap) + mapvotes[global.config.defaultmap.map_name] += 1 + continue + mapvotes[vote] += 1 + + //filter votes + for (var/map in mapvotes) + if (!map) + mapvotes.Remove(map) + if (!(map in global.config.maplist)) + mapvotes.Remove(map) + continue + var/datum/map_config/VM = global.config.maplist[map] + if (!VM) + mapvotes.Remove(map) + continue + if (VM.voteweight <= 0) + mapvotes.Remove(map) + continue + if (VM.config_min_users > 0 && players < VM.config_min_users) + mapvotes.Remove(map) + continue + if (VM.config_max_users > 0 && players > VM.config_max_users) + mapvotes.Remove(map) + continue + + mapvotes[map] = mapvotes[map]*VM.voteweight + + var/pickedmap = global.config.allow_map_voting ? pickweight(mapvotes) : pick(global.config.maplist) + if (!pickedmap) + return + var/datum/map_config/VM = global.config.maplist[pickedmap] + message_admins("Randomly rotating map to [VM.map_name]") + . = changemap(VM) + if (. && VM.map_name != config.map_name) + to_chat(world, "Map rotation has chosen [VM.map_name] for next round!") + +/datum/controller/subsystem/mapping/proc/changemap(var/datum/map_config/VM) + if(!VM.MakeNextMap()) + next_map_config = new(default_to_box = TRUE) + message_admins("Failed to set new map with next_map.json for [VM.map_name]! Using default as backup!") + return + + next_map_config = VM + return TRUE + +/datum/controller/subsystem/mapping/Shutdown() + if(config) + config.MakePreviousMap() + +/datum/controller/subsystem/mapping/proc/preloadTemplates(path = "_maps/templates/") //see master controller setup var/list/filelist = flist(path) for(var/map in filelist) var/datum/map_template/T = new(path = "[path][map]", rename = "[map]") @@ -91,7 +213,7 @@ var/datum/subsystem/mapping/SSmapping preloadShuttleTemplates() preloadShelterTemplates() -/datum/subsystem/mapping/proc/preloadRuinTemplates() +/datum/controller/subsystem/mapping/proc/preloadRuinTemplates() // Still supporting bans by filename var/list/banned = generateMapList("config/lavaruinblacklist.txt") banned += generateMapList("config/spaceruinblacklist.txt") @@ -114,7 +236,7 @@ var/datum/subsystem/mapping/SSmapping else if(istype(R, /datum/map_template/ruin/space)) space_ruins_templates[R.name] = R -/datum/subsystem/mapping/proc/preloadShuttleTemplates() +/datum/controller/subsystem/mapping/proc/preloadShuttleTemplates() var/list/unbuyable = generateMapList("config/unbuyableshuttles.txt") for(var/item in subtypesof(/datum/map_template/shuttle)) @@ -129,7 +251,7 @@ var/datum/subsystem/mapping/SSmapping shuttle_templates[S.shuttle_id] = S map_templates[S.shuttle_id] = S -/datum/subsystem/mapping/proc/preloadShelterTemplates() +/datum/controller/subsystem/mapping/proc/preloadShelterTemplates() for(var/item in subtypesof(/datum/map_template/shelter)) var/datum/map_template/shelter/shelter_type = item if(!(initial(shelter_type.mappath))) @@ -137,4 +259,4 @@ var/datum/subsystem/mapping/SSmapping var/datum/map_template/shelter/S = new shelter_type() shelter_templates[S.shelter_id] = S - map_templates[S.shelter_id] = S \ No newline at end of file + map_templates[S.shelter_id] = S diff --git a/code/controllers/subsystem/minimap.dm b/code/controllers/subsystem/minimap.dm index 24ae4a4d0c..8d8fd6fcec 100644 --- a/code/controllers/subsystem/minimap.dm +++ b/code/controllers/subsystem/minimap.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/minimap/SSminimap +var/datum/controller/subsystem/minimap/SSminimap -/datum/subsystem/minimap +/datum/controller/subsystem/minimap name = "Minimap" init_order = -2 flags = SS_NO_FIRE @@ -9,11 +9,11 @@ var/datum/subsystem/minimap/SSminimap var/list/z_levels = list(ZLEVEL_STATION) -/datum/subsystem/minimap/New() +/datum/controller/subsystem/minimap/New() NEW_SS_GLOBAL(SSminimap) -/datum/subsystem/minimap/Initialize(timeofday) - var/hash = md5(file2text("_maps/[MAP_PATH]/[MAP_FILE]")) +/datum/controller/subsystem/minimap/Initialize(timeofday) + var/hash = md5(SSmapping.config.GetFullMapPath()) if(config.generate_minimaps) if(hash == trim(file2text(hash_path()))) for(var/z in z_levels) //We have these files cached, let's register them @@ -25,48 +25,48 @@ var/datum/subsystem/minimap/SSminimap fdel(hash_path()) text2file(hash, hash_path()) else - world << "Minimap generation disabled. Loading from cache..." + to_chat(world, "Minimap generation disabled. Loading from cache...") var/fileloc = 0 if(check_files(0)) //Let's first check if we have maps cached in the data folder. NOTE: This will override the backup files even if this map is older. if(hash != trim(file2text(hash_path()))) - world << "Loaded cached minimap is outdated. There may be minor discrepancies in layout." //Disclaimer against players saying map is wrong. + to_chat(world, "Loaded cached minimap is outdated. There may be minor discrepancies in layout." ) fileloc = 0 else if(!check_files(1)) - world << "Failed to load backup minimap file. Aborting." //We couldn't find something. Bail to prevent issues with null files + to_chat(world, "Failed to load backup minimap file. Aborting." ) return fileloc = 1 //No map image cached with the current map, and we have a backup. Let's fall back to it. - world << "No cached minimaps detected. Backup files loaded." + to_chat(world, "No cached minimaps detected. Backup files loaded.") for(var/z in z_levels) register_asset("minimap_[z].png", fcopy_rsc(map_path(z,fileloc))) ..() -/datum/subsystem/minimap/proc/check_files(backup) // If the backup argument is true, looks in the icons folder. If false looks in the data folder. +/datum/controller/subsystem/minimap/proc/check_files(backup) // If the backup argument is true, looks in the icons folder. If false looks in the data folder. for(var/z in z_levels) if(!fexists(file(map_path(z,backup)))) //Let's make sure we have a file for this map if(backup) - log_world("Failed to find backup file for map [MAP_NAME] on zlevel [z].") + log_world("Failed to find backup file for map [SSmapping.config.map_name] on zlevel [z].") return FALSE return TRUE -/datum/subsystem/minimap/proc/hash_path(backup) +/datum/controller/subsystem/minimap/proc/hash_path(backup) if(backup) - return "icons/minimaps/[MAP_NAME].md5" + return "icons/minimaps/[SSmapping.config.map_name].md5" else - return "data/minimaps/[MAP_NAME].md5" + return "data/minimaps/[SSmapping.config.map_name].md5" -/datum/subsystem/minimap/proc/map_path(z,backup) +/datum/controller/subsystem/minimap/proc/map_path(z,backup) if(backup) - return "icons/minimaps/[MAP_NAME]_[z].png" + return "icons/minimaps/[SSmapping.config.map_name]_[z].png" else - return "data/minimaps/[MAP_NAME]_[z].png" + return "data/minimaps/[SSmapping.config.map_name]_[z].png" -/datum/subsystem/minimap/proc/send(client/client) +/datum/controller/subsystem/minimap/proc/send(client/client) for(var/z in z_levels) send_asset(client, "minimap_[z].png") -/datum/subsystem/minimap/proc/generate(z = 1, x1 = 1, y1 = 1, x2 = world.maxx, y2 = world.maxy) +/datum/controller/subsystem/minimap/proc/generate(z = 1, x1 = 1, y1 = 1, x2 = world.maxx, y2 = world.maxy) // Load the background. var/icon/minimap = new /icon('icons/minimap.dmi') // Scale it up to our target size. @@ -81,7 +81,7 @@ var/datum/subsystem/minimap/SSminimap final.Insert(minimap, "", SOUTH, 1, 0) fcopy(final, map_path(z)) -/datum/subsystem/minimap/proc/generate_tile(turf/tile, icon/minimap) +/datum/controller/subsystem/minimap/proc/generate_tile(turf/tile, icon/minimap) var/icon/tile_icon var/obj/obj var/list/obj_icons diff --git a/code/controllers/subsystem/mobs.dm b/code/controllers/subsystem/mobs.dm index ef526f4dda..0ffab58567 100644 --- a/code/controllers/subsystem/mobs.dm +++ b/code/controllers/subsystem/mobs.dm @@ -1,23 +1,22 @@ -var/datum/subsystem/mobs/SSmob +var/datum/controller/subsystem/mobs/SSmob -/datum/subsystem/mobs +/datum/controller/subsystem/mobs name = "Mobs" init_order = 4 - display_order = 4 priority = 100 flags = SS_KEEP_TIMING|SS_NO_INIT var/list/currentrun = list() -/datum/subsystem/mobs/New() +/datum/controller/subsystem/mobs/New() NEW_SS_GLOBAL(SSmob) -/datum/subsystem/mobs/stat_entry() +/datum/controller/subsystem/mobs/stat_entry() ..("P:[mob_list.len]") -/datum/subsystem/mobs/fire(resumed = 0) +/datum/controller/subsystem/mobs/fire(resumed = 0) var/seconds = wait * 0.1 if (!resumed) src.currentrun = mob_list.Copy() diff --git a/code/controllers/subsystem/npcpool.dm b/code/controllers/subsystem/npcpool.dm index 72ca676f99..ebaa5da06f 100644 --- a/code/controllers/subsystem/npcpool.dm +++ b/code/controllers/subsystem/npcpool.dm @@ -1,9 +1,8 @@ -var/datum/subsystem/npcpool/SSnpc +var/datum/controller/subsystem/npcpool/SSnpc -/datum/subsystem/npcpool +/datum/controller/subsystem/npcpool name = "NPC Pool" init_order = 17 - display_order = 6 flags = SS_POST_FIRE_TIMING|SS_NO_INIT|SS_NO_TICK_CHECK priority = 25 @@ -15,18 +14,18 @@ var/datum/subsystem/npcpool/SSnpc var/list/botPool_l = list() //list of all npcs using the pool var/list/botPool_l_non = list() //list of all non SNPC mobs using the pool -/datum/subsystem/npcpool/proc/insertBot(toInsert) +/datum/controller/subsystem/npcpool/proc/insertBot(toInsert) if(istype(toInsert,/mob/living/carbon/human/interactive)) botPool_l |= toInsert -/datum/subsystem/npcpool/New() +/datum/controller/subsystem/npcpool/New() NEW_SS_GLOBAL(SSnpc) -/datum/subsystem/npcpool/stat_entry() +/datum/controller/subsystem/npcpool/stat_entry() ..("T:[botPool_l.len + botPool_l_non.len]|D:[needsDelegate.len]|A:[needsAssistant.len + needsHelp_non.len]|U:[canBeUsed.len + canBeUsed_non.len]") -/datum/subsystem/npcpool/proc/cleanNull() +/datum/controller/subsystem/npcpool/proc/cleanNull() //cleanup nulled bots listclearnulls(botPool_l) listclearnulls(needsDelegate) @@ -34,7 +33,7 @@ var/datum/subsystem/npcpool/SSnpc listclearnulls(needsAssistant) -/datum/subsystem/npcpool/fire() +/datum/controller/subsystem/npcpool/fire() //bot delegation and coordination systems //General checklist/Tasks for delegating a task or coordinating it (for SNPCs) // 1. Bot proximity to task target: if too far, delegate, if close, coordinate @@ -121,7 +120,7 @@ var/datum/subsystem/npcpool/SSnpc candidate.update_icons() npcCount++ -/datum/subsystem/npcpool/Recover() +/datum/controller/subsystem/npcpool/Recover() if (istype(SSnpc.botPool_l)) botPool_l = SSnpc.botPool_l if (istype(SSnpc.botPool_l_non)) diff --git a/code/controllers/subsystem/orbit.dm b/code/controllers/subsystem/orbit.dm index da52ae43f7..90b1390713 100644 --- a/code/controllers/subsystem/orbit.dm +++ b/code/controllers/subsystem/orbit.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/orbit/SSorbit +var/datum/controller/subsystem/orbit/SSorbit -/datum/subsystem/orbit +/datum/controller/subsystem/orbit name = "Orbits" priority = 35 wait = 2 @@ -9,15 +9,15 @@ var/datum/subsystem/orbit/SSorbit var/list/currentrun = list() var/list/processing = list() -/datum/subsystem/orbit/New() +/datum/controller/subsystem/orbit/New() NEW_SS_GLOBAL(SSorbit) -/datum/subsystem/orbit/stat_entry() +/datum/controller/subsystem/orbit/stat_entry() ..("P:[processing.len]") -/datum/subsystem/orbit/fire(resumed = 0) +/datum/controller/subsystem/orbit/fire(resumed = 0) if (!resumed) src.currentrun = processing.Copy() diff --git a/code/controllers/subsystem/pai.dm b/code/controllers/subsystem/pai.dm index 72a64ac9d6..15c3a8307f 100644 --- a/code/controllers/subsystem/pai.dm +++ b/code/controllers/subsystem/pai.dm @@ -1,7 +1,7 @@ -var/datum/subsystem/pai/SSpai +var/datum/controller/subsystem/pai/SSpai var/list/obj/item/device/paicard/pai_card_list = list() -/datum/subsystem/pai +/datum/controller/subsystem/pai name = "pAI" flags = SS_NO_INIT|SS_NO_FIRE @@ -10,10 +10,10 @@ var/list/obj/item/device/paicard/pai_card_list = list() var/ghost_spam = FALSE var/spam_delay = 100 -/datum/subsystem/pai/New() +/datum/controller/subsystem/pai/New() NEW_SS_GLOBAL(SSpai) -/datum/subsystem/pai/Topic(href, href_list[]) +/datum/controller/subsystem/pai/Topic(href, href_list[]) if(href_list["download"]) var/datum/paiCandidate/candidate = locate(href_list["candidate"]) var/obj/item/device/paicard/card = locate(href_list["device"]) @@ -84,7 +84,7 @@ var/list/obj/item/device/paicard/pai_card_list = list() return recruitWindow(usr) -/datum/subsystem/pai/proc/recruitWindow(mob/M) +/datum/controller/subsystem/pai/proc/recruitWindow(mob/M) var/datum/paiCandidate/candidate for(var/datum/paiCandidate/c in candidates) if(c.key == M.key) @@ -135,10 +135,10 @@ var/list/obj/item/device/paicard/pai_card_list = list() M << browse(dat, "window=paiRecruit") -/datum/subsystem/pai/proc/spam_again() +/datum/controller/subsystem/pai/proc/spam_again() ghost_spam = FALSE -/datum/subsystem/pai/proc/check_ready(var/datum/paiCandidate/C) +/datum/controller/subsystem/pai/proc/check_ready(var/datum/paiCandidate/C) if(!C.ready) return FALSE for(var/mob/dead/observer/O in player_list) @@ -146,7 +146,7 @@ var/list/obj/item/device/paicard/pai_card_list = list() return C return FALSE -/datum/subsystem/pai/proc/findPAI(obj/item/device/paicard/p, mob/user) +/datum/controller/subsystem/pai/proc/findPAI(obj/item/device/paicard/p, mob/user) if(!ghost_spam) ghost_spam = TRUE for(var/mob/dead/observer/G in player_list) @@ -155,7 +155,7 @@ var/list/obj/item/device/paicard/pai_card_list = list() if(!(ROLE_PAI in G.client.prefs.be_special)) continue //G << 'sound/misc/server-ready.ogg' //Alerting them to their consideration - G << "Someone is requesting a pAI personality! Use the pAI button to submit yourself as one." + to_chat(G, "Someone is requesting a pAI personality! Use the pAI button to submit yourself as one.") addtimer(CALLBACK(src, .proc/spam_again), spam_delay) var/list/available = list() for(var/datum/paiCandidate/c in SSpai.candidates) diff --git a/code/controllers/subsystem/parallax.dm b/code/controllers/subsystem/parallax.dm index a1921782ea..fb8e317086 100644 --- a/code/controllers/subsystem/parallax.dm +++ b/code/controllers/subsystem/parallax.dm @@ -1,17 +1,17 @@ -var/datum/subsystem/parallax/SSparallax +var/datum/controller/subsystem/parallax/SSparallax -/datum/subsystem/parallax - name = "parallax" +/datum/controller/subsystem/parallax + name = "Parallax" wait = 2 flags = SS_POST_FIRE_TIMING | SS_FIRE_IN_LOBBY | SS_BACKGROUND | SS_NO_INIT priority = 65 var/list/currentrun -/datum/subsystem/parallax/New() +/datum/controller/subsystem/parallax/New() NEW_SS_GLOBAL(SSparallax) return ..() -/datum/subsystem/parallax/fire(resumed = 0) +/datum/controller/subsystem/parallax/fire(resumed = 0) if (!resumed) src.currentrun = clients.Copy() @@ -39,4 +39,4 @@ var/datum/subsystem/parallax/SSparallax C.movingmob = A if (MC_TICK_CHECK) return - currentrun = null \ No newline at end of file + currentrun = null diff --git a/code/controllers/subsystem/persistence.dm b/code/controllers/subsystem/persistence.dm index 5181ba6772..818e64940a 100644 --- a/code/controllers/subsystem/persistence.dm +++ b/code/controllers/subsystem/persistence.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/persistence/SSpersistence +var/datum/controller/subsystem/persistence/SSpersistence -/datum/subsystem/persistence +/datum/controller/subsystem/persistence name = "Persistence" init_order = -100 flags = SS_NO_FIRE @@ -13,19 +13,19 @@ var/datum/subsystem/persistence/SSpersistence var/list/saved_messages = list() var/savefile/chisel_messages_sav -/datum/subsystem/persistence/New() +/datum/controller/subsystem/persistence/New() NEW_SS_GLOBAL(SSpersistence) -/datum/subsystem/persistence/Initialize() +/datum/controller/subsystem/persistence/Initialize() LoadSatchels() LoadPoly() LoadChiselMessages() ..() -/datum/subsystem/persistence/proc/LoadSatchels() +/datum/controller/subsystem/persistence/proc/LoadSatchels() secret_satchels = new /savefile("data/npc_saves/SecretSatchels.sav") satchel_blacklist = typecacheof(list(/obj/item/stack/tile/plasteel, /obj/item/weapon/crowbar)) - secret_satchels[MAP_NAME] >> old_secret_satchels + secret_satchels[SSmapping.config.map_name] >> old_secret_satchels var/list/expanded_old_satchels = list() var/placed_satchels = 0 @@ -44,14 +44,14 @@ var/datum/subsystem/persistence/SSpersistence if(!isemptylist(free_satchels) && ((free_satchels.len + placed_satchels) >= (50 - expanded_old_satchels.len) * 0.1)) //up to six tiles, more than enough to kill anything that moves break -/datum/subsystem/persistence/proc/PlaceSecretSatchel(list/expanded_old_satchels) +/datum/controller/subsystem/persistence/proc/PlaceSecretSatchel(list/expanded_old_satchels) var/satchel_string if(expanded_old_satchels.len >= 20) //guards against low drop pools assuring that one player cannot reliably find his own gear. satchel_string = pick_n_take(expanded_old_satchels) old_secret_satchels = jointext(expanded_old_satchels,"#") - secret_satchels[MAP_NAME] << old_secret_satchels + secret_satchels[SSmapping.config.map_name] << old_secret_satchels var/list/chosen_satchel = splittext(satchel_string,"|") if(!chosen_satchel || isemptylist(chosen_satchel) || chosen_satchel.len != 3) //Malformed @@ -70,15 +70,15 @@ var/datum/subsystem/persistence/SSpersistence new path(F) return 1 -/datum/subsystem/persistence/proc/LoadPoly() +/datum/controller/subsystem/persistence/proc/LoadPoly() for(var/mob/living/simple_animal/parrot/Poly/P in living_mob_list) twitterize(P.speech_buffer, "polytalk") break //Who's been duping the bird?! -/datum/subsystem/persistence/proc/LoadChiselMessages() +/datum/controller/subsystem/persistence/proc/LoadChiselMessages() chisel_messages_sav = new /savefile("data/npc_saves/ChiselMessages.sav") var/saved_json - chisel_messages_sav[MAP_NAME] >> saved_json + chisel_messages_sav[SSmapping.config.map_name] >> saved_json if(!saved_json) return @@ -98,11 +98,11 @@ var/datum/subsystem/persistence/SSpersistence qdel(M) -/datum/subsystem/persistence/proc/CollectData() +/datum/controller/subsystem/persistence/proc/CollectData() CollectChiselMessages() CollectSecretSatchels() -/datum/subsystem/persistence/proc/CollectSecretSatchels() +/datum/controller/subsystem/persistence/proc/CollectSecretSatchels() for(var/A in new_secret_satchels) var/obj/item/weapon/storage/backpack/satchel/flat/F = A if(QDELETED(F) || F.z != ZLEVEL_STATION || F.invisibility != INVISIBILITY_MAXIMUM) @@ -118,13 +118,13 @@ var/datum/subsystem/persistence/SSpersistence if(isemptylist(savable_obj)) continue old_secret_satchels += "[F.x]|[F.y]|[pick(savable_obj)]#" - secret_satchels[MAP_NAME] << old_secret_satchels + secret_satchels[SSmapping.config.map_name] << old_secret_satchels -/datum/subsystem/persistence/proc/CollectChiselMessages() +/datum/controller/subsystem/persistence/proc/CollectChiselMessages() for(var/obj/structure/chisel_message/M in chisel_messages) saved_messages += list(M.pack()) - chisel_messages_sav[MAP_NAME] << json_encode(saved_messages) + chisel_messages_sav[SSmapping.config.map_name] << json_encode(saved_messages) -/datum/subsystem/persistence/proc/SaveChiselMessage(obj/structure/chisel_message/M) +/datum/controller/subsystem/persistence/proc/SaveChiselMessage(obj/structure/chisel_message/M) saved_messages += list(M.pack()) // dm eats one list. diff --git a/code/controllers/subsystem/ping.dm b/code/controllers/subsystem/ping.dm index 1f07ce2e76..d1297c692c 100644 --- a/code/controllers/subsystem/ping.dm +++ b/code/controllers/subsystem/ping.dm @@ -1,18 +1,18 @@ #define PING_BUFFER_TIME 25 -var/datum/subsystem/ping/SSping +var/datum/controller/subsystem/ping/SSping -/datum/subsystem/ping +/datum/controller/subsystem/ping name = "Ping" wait = 6 flags = SS_NO_INIT|SS_POST_FIRE_TIMING|SS_FIRE_IN_LOBBY priority = 10 var/list/currentrun -/datum/subsystem/ping/New() +/datum/controller/subsystem/ping/New() NEW_SS_GLOBAL(SSping) -/datum/subsystem/ping/fire(resumed = FALSE) +/datum/controller/subsystem/ping/fire(resumed = FALSE) if (!resumed) src.currentrun = clients.Copy() diff --git a/code/controllers/subsystem/processing/fastprocess.dm b/code/controllers/subsystem/processing/fastprocess.dm index 7a46f253ef..53898e142e 100644 --- a/code/controllers/subsystem/processing/fastprocess.dm +++ b/code/controllers/subsystem/processing/fastprocess.dm @@ -1,10 +1,10 @@ //Fires five times every second. -var/datum/subsystem/processing/fastprocess/SSfastprocess -/datum/subsystem/processing/fastprocess +var/datum/controller/subsystem/processing/fastprocess/SSfastprocess +/datum/controller/subsystem/processing/fastprocess name = "Fast Processing" wait = 2 stat_tag = "FP" -/datum/subsystem/processing/fastprocess/New() +/datum/controller/subsystem/processing/fastprocess/New() NEW_SS_GLOBAL(SSfastprocess) diff --git a/code/controllers/subsystem/processing/flightpacks.dm b/code/controllers/subsystem/processing/flightpacks.dm index a036d06046..fee475d730 100644 --- a/code/controllers/subsystem/processing/flightpacks.dm +++ b/code/controllers/subsystem/processing/flightpacks.dm @@ -1,11 +1,11 @@ -var/datum/subsystem/processing/flightpacks/SSflightpacks -/datum/subsystem/processing/flightpacks +var/datum/controller/subsystem/processing/flightpacks/SSflightpacks +/datum/controller/subsystem/processing/flightpacks name = "Flightpack Movement" priority = 30 wait = 2 stat_tag = "FM" flags = SS_NO_INIT|SS_TICKER|SS_KEEP_TIMING -/datum/subsystem/processing/flightpacks/New() +/datum/controller/subsystem/processing/flightpacks/New() NEW_SS_GLOBAL(SSflightpacks) diff --git a/code/controllers/subsystem/processing/objects.dm b/code/controllers/subsystem/processing/objects.dm index 95e7ee1165..ee15dc0603 100644 --- a/code/controllers/subsystem/processing/objects.dm +++ b/code/controllers/subsystem/processing/objects.dm @@ -1,5 +1,5 @@ -var/datum/subsystem/objects/SSobj -/datum/subsystem/objects +var/datum/controller/subsystem/objects/SSobj +/datum/controller/subsystem/objects name = "Objects" priority = 40 flags = SS_NO_INIT @@ -7,12 +7,12 @@ var/datum/subsystem/objects/SSobj var/list/processing = list() var/list/currentrun = list() -/datum/subsystem/objects/New() +/datum/controller/subsystem/objects/New() NEW_SS_GLOBAL(SSobj) -/datum/subsystem/objects/stat_entry() +/datum/controller/subsystem/objects/stat_entry() ..("P:[processing.len]") -/datum/subsystem/objects/fire(resumed = 0) +/datum/controller/subsystem/objects/fire(resumed = 0) if (!resumed) src.currentrun = processing.Copy() //cache for sanic speed (lists are references anyways) @@ -28,5 +28,5 @@ var/datum/subsystem/objects/SSobj if (MC_TICK_CHECK) return -/datum/subsystem/objects/Recover() +/datum/controller/subsystem/objects/Recover() processing = SSobj.processing diff --git a/code/controllers/subsystem/processing/overlays.dm b/code/controllers/subsystem/processing/overlays.dm index de7cf91dd5..5cb6490982 100644 --- a/code/controllers/subsystem/processing/overlays.dm +++ b/code/controllers/subsystem/processing/overlays.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/processing/overlays/SSoverlays +var/datum/controller/subsystem/processing/overlays/SSoverlays -/datum/subsystem/processing/overlays +/datum/controller/subsystem/processing/overlays name = "Overlay" flags = SS_TICKER|SS_FIRE_IN_LOBBY wait = 1 @@ -13,33 +13,37 @@ var/datum/subsystem/processing/overlays/SSoverlays var/list/overlay_icon_cache var/initialized = FALSE -/datum/subsystem/processing/overlays/New() +/datum/controller/subsystem/processing/overlays/New() NEW_SS_GLOBAL(SSoverlays) LAZYINITLIST(overlay_icon_state_caches) LAZYINITLIST(overlay_icon_cache) -/datum/subsystem/processing/overlays/Initialize() +/datum/controller/subsystem/processing/overlays/Initialize() initialized = TRUE - for(var/I in processing) - var/atom/A = I - A.compile_overlays() - CHECK_TICK - processing.Cut() + Flush() ..() -/datum/subsystem/processing/overlays/Recover() +/datum/controller/subsystem/processing/overlays/Recover() overlay_icon_state_caches = SSoverlays.overlay_icon_state_caches overlay_icon_cache = SSoverlays.overlay_icon_cache processing = SSoverlays.processing -/datum/subsystem/processing/overlays/fire() +/datum/controller/subsystem/processing/overlays/fire(resumed = FALSE, mc_check = TRUE) while(processing.len) var/atom/thing = processing[processing.len] processing.len-- if(thing) thing.compile_overlays(FALSE) - if(MC_TICK_CHECK) - break + if(mc_check) + if(MC_TICK_CHECK) + break + else + CHECK_TICK + +/datum/controller/subsystem/processing/overlays/proc/Flush() + if(processing.len) + testing("Flushing [processing.len] overlays") + fire(mc_check = FALSE) //pair this thread up with the MC to get extra compile time /atom/proc/compile_overlays() if(LAZYLEN(priority_overlays) && LAZYLEN(our_overlays)) @@ -54,7 +58,7 @@ var/datum/subsystem/processing/overlays/SSoverlays /proc/iconstate2appearance(icon, iconstate) var/static/image/stringbro = new() - var/list/icon_states_cache = SSoverlays.overlay_icon_state_caches + var/list/icon_states_cache = SSoverlays.overlay_icon_state_caches var/list/cached_icon = icon_states_cache[icon] if (cached_icon) var/cached_appearance = cached_icon["[iconstate]"] @@ -92,16 +96,17 @@ var/datum/subsystem/processing/overlays/SSoverlays new_overlays[i] = icon2appearance(cached_overlay) else //image probable appearance_bro.appearance = cached_overlay - appearance_bro.dir = cached_overlay.dir + if(!ispath(cached_overlay)) + appearance_bro.dir = cached_overlay.dir new_overlays[i] = appearance_bro.appearance return new_overlays #define NOT_QUEUED_ALREADY (!(flags & OVERLAY_QUEUED)) -#define QUEUE_FOR_COMPILE flags |= OVERLAY_QUEUED; SSoverlays.processing += src; +#define QUEUE_FOR_COMPILE flags |= OVERLAY_QUEUED; SSoverlays.processing += src; /atom/proc/cut_overlays(priority = FALSE) var/list/cached_overlays = our_overlays var/list/cached_priority = priority_overlays - + var/need_compile = FALSE if(LAZYLEN(cached_overlays)) //don't queue empty lists, don't cut priority overlays @@ -116,7 +121,6 @@ var/datum/subsystem/processing/overlays/SSoverlays QUEUE_FOR_COMPILE /atom/proc/cut_overlay(list/overlays, priority) - var/static/image/appearance_bro = new() if(!overlays) return @@ -135,7 +139,6 @@ var/datum/subsystem/processing/overlays/SSoverlays QUEUE_FOR_COMPILE /atom/proc/add_overlay(list/overlays, priority = FALSE) - var/static/image/appearance_bro = new() if(!overlays) return @@ -165,7 +168,7 @@ var/datum/subsystem/processing/overlays/SSoverlays if(cut_old) cut_overlays() return - + var/list/cached_other = other.our_overlays if(cached_other) if(cut_old) @@ -188,4 +191,4 @@ var/datum/subsystem/processing/overlays/SSoverlays overlays -= x /image/proc/cut_overlays(x) - overlays.Cut() \ No newline at end of file + overlays.Cut() diff --git a/code/controllers/subsystem/processing/processing.dm b/code/controllers/subsystem/processing/processing.dm index 1b8e152561..ef03ce6db6 100644 --- a/code/controllers/subsystem/processing/processing.dm +++ b/code/controllers/subsystem/processing/processing.dm @@ -1,7 +1,7 @@ //Used to process objects. Fires once every second. -var/datum/subsystem/processing/SSprocessing -/datum/subsystem/processing +var/datum/controller/subsystem/processing/SSprocessing +/datum/controller/subsystem/processing name = "Processing" priority = 25 flags = SS_BACKGROUND|SS_POST_FIRE_TIMING|SS_NO_INIT @@ -11,13 +11,13 @@ var/datum/subsystem/processing/SSprocessing var/list/processing = list() var/list/currentrun = list() -/datum/subsystem/processing/New() +/datum/controller/subsystem/processing/New() NEW_SS_GLOBAL(SSprocessing) -/datum/subsystem/processing/stat_entry() +/datum/controller/subsystem/processing/stat_entry() ..("[stat_tag]:[processing.len]") -/datum/subsystem/processing/fire(resumed = 0) +/datum/controller/subsystem/processing/fire(resumed = 0) if (!resumed) currentrun = processing.Copy() //cache for sanic speed (lists are references anyways) diff --git a/code/controllers/subsystem/radio.dm b/code/controllers/subsystem/radio.dm index 854fb8cc5f..922b176428 100644 --- a/code/controllers/subsystem/radio.dm +++ b/code/controllers/subsystem/radio.dm @@ -1,16 +1,16 @@ -var/datum/subsystem/radio/SSradio +var/datum/controller/subsystem/radio/SSradio -/datum/subsystem/radio +/datum/controller/subsystem/radio name = "Radio" init_order = 18 flags = SS_NO_FIRE|SS_NO_INIT var/list/datum/radio_frequency/frequencies = list() -/datum/subsystem/radio/New() +/datum/controller/subsystem/radio/New() NEW_SS_GLOBAL(SSradio) -/datum/subsystem/radio/proc/add_object(obj/device, new_frequency as num, filter = null as text|null) +/datum/controller/subsystem/radio/proc/add_object(obj/device, new_frequency as num, filter = null as text|null) var/f_text = num2text(new_frequency) var/datum/radio_frequency/frequency = frequencies[f_text] @@ -22,7 +22,7 @@ var/datum/subsystem/radio/SSradio frequency.add_listener(device, filter) return frequency -/datum/subsystem/radio/proc/remove_object(obj/device, old_frequency) +/datum/controller/subsystem/radio/proc/remove_object(obj/device, old_frequency) var/f_text = num2text(old_frequency) var/datum/radio_frequency/frequency = frequencies[f_text] @@ -35,7 +35,7 @@ var/datum/subsystem/radio/SSradio return 1 -/datum/subsystem/radio/proc/return_frequency(new_frequency as num) +/datum/controller/subsystem/radio/proc/return_frequency(new_frequency as num) var/f_text = num2text(new_frequency) var/datum/radio_frequency/frequency = frequencies[f_text] diff --git a/code/controllers/subsystem/religion.dm b/code/controllers/subsystem/religion.dm index 69ec3fe7d5..fe07d4e1ea 100644 --- a/code/controllers/subsystem/religion.dm +++ b/code/controllers/subsystem/religion.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/religion/SSreligion +var/datum/controller/subsystem/religion/SSreligion -/datum/subsystem/religion +/datum/controller/subsystem/religion name = "Religion" init_order = 19 flags = SS_NO_FIRE|SS_NO_INIT @@ -13,5 +13,5 @@ var/datum/subsystem/religion/SSreligion var/holy_weapon -/datum/subsystem/religion/New() +/datum/controller/subsystem/religion/New() NEW_SS_GLOBAL(SSreligion) diff --git a/code/controllers/subsystem/server_maintenance.dm b/code/controllers/subsystem/server_maintenance.dm index 1e4b4ae76f..c3a9aa64ad 100644 --- a/code/controllers/subsystem/server_maintenance.dm +++ b/code/controllers/subsystem/server_maintenance.dm @@ -1,28 +1,27 @@ -var/datum/subsystem/server_maint/SSserver +var/datum/controller/subsystem/server_maint/SSserver -/datum/subsystem/server_maint +/datum/controller/subsystem/server_maint name = "Server Tasks" wait = 6000 flags = SS_NO_TICK_CHECK -/datum/subsystem/server_maint/New() +/datum/controller/subsystem/server_maint/New() NEW_SS_GLOBAL(SSserver) -/datum/subsystem/server_maint/Initialize(timeofday) +/datum/controller/subsystem/server_maint/Initialize(timeofday) if (config.hub) world.visibility = 1 ..() -/datum/subsystem/server_maint/fire() +/datum/controller/subsystem/server_maint/fire() //handle kicking inactive players if(config.kick_inactive > 0) for(var/client/C in clients) if(C.is_afk(INACTIVITY_KICK)) if(!istype(C.mob, /mob/dead)) log_access("AFK: [key_name(C)]") - C << "You have been inactive for more than 10 minutes and have been disconnected." + to_chat(C, "You have been inactive for more than 10 minutes and have been disconnected.") qdel(C) if(config.sql_enabled) - sql_poll_players() - sql_poll_admins() + sql_poll_population() diff --git a/code/controllers/subsystem/shuttles.dm b/code/controllers/subsystem/shuttles.dm index 68284d7c6e..dd6140f6eb 100644 --- a/code/controllers/subsystem/shuttles.dm +++ b/code/controllers/subsystem/shuttles.dm @@ -1,8 +1,8 @@ #define HIGHLIGHT_DYNAMIC_TRANSIT 1 -var/datum/subsystem/shuttle/SSshuttle +var/datum/controller/subsystem/shuttle/SSshuttle -/datum/subsystem/shuttle +/datum/controller/subsystem/shuttle name = "Shuttles" wait = 10 init_order = 3 @@ -18,6 +18,7 @@ var/datum/subsystem/shuttle/SSshuttle //emergency shuttle stuff var/obj/docking_port/mobile/emergency/emergency + var/obj/docking_port/mobile/arrivals/arrivals var/obj/docking_port/mobile/emergency/backup/backup_shuttle var/emergencyCallTime = 6000 //time taken for emergency shuttle to reach the station when called (in deciseconds) var/emergencyDockTime = 1800 //time taken for emergency shuttle to leave again once it has docked (in deciseconds) @@ -46,10 +47,12 @@ var/datum/subsystem/shuttle/SSshuttle var/lockdown = FALSE //disallow transit after nuke goes off -/datum/subsystem/shuttle/New() +/datum/controller/subsystem/shuttle/New() NEW_SS_GLOBAL(SSshuttle) -/datum/subsystem/shuttle/Initialize(timeofday) +/datum/controller/subsystem/shuttle/Initialize(timeofday) + if(!emergency) + WARNING("No /obj/docking_port/mobile/arrivals placed on the map!") if(!emergency) WARNING("No /obj/docking_port/mobile/emergency placed on the map!") if(!backup_shuttle) @@ -65,13 +68,14 @@ var/datum/subsystem/shuttle/SSshuttle continue supply_packs[P.type] = P - initial_move() setup_transit_zone() + initial_move() #ifdef HIGHLIGHT_DYNAMIC_TRANSIT color_space() #endif + ..() -/datum/subsystem/shuttle/proc/setup_transit_zone() +/datum/controller/subsystem/shuttle/proc/setup_transit_zone() if(transit_markers.len == 0) WARNING("No /obj/effect/landmark/transit placed on the map!") return @@ -85,7 +89,7 @@ var/datum/subsystem/shuttle/SSshuttle T.flags |= UNUSED_TRANSIT_TURF #ifdef HIGHLIGHT_DYNAMIC_TRANSIT -/datum/subsystem/shuttle/proc/color_space() +/datum/controller/subsystem/shuttle/proc/color_space() if(transit_markers.len == 0) WARNING("No /obj/effect/landmark/transit placed on the map!") return @@ -104,7 +108,7 @@ var/datum/subsystem/shuttle/SSshuttle //world.log << "[transit_turfs.len] transit turfs registered" -/datum/subsystem/shuttle/fire() +/datum/controller/subsystem/shuttle/fire() for(var/thing in mobile) if(!thing) mobile.Remove(thing) @@ -148,19 +152,19 @@ var/datum/subsystem/shuttle/SSshuttle if(MC_TICK_CHECK) return -/datum/subsystem/shuttle/proc/getShuttle(id) +/datum/controller/subsystem/shuttle/proc/getShuttle(id) for(var/obj/docking_port/mobile/M in mobile) if(M.id == id) return M WARNING("couldn't find shuttle with id: [id]") -/datum/subsystem/shuttle/proc/getDock(id) +/datum/controller/subsystem/shuttle/proc/getDock(id) for(var/obj/docking_port/stationary/S in stationary) if(S.id == id) return S WARNING("couldn't find dock with id: [id]") -/datum/subsystem/shuttle/proc/requestEvac(mob/user, call_reason) +/datum/controller/subsystem/shuttle/proc/requestEvac(mob/user, call_reason) if(!emergency) WARNING("requestEvac(): There is no emergency shuttle, but the \ shuttle was called. Using the backup shuttle instead.") @@ -176,33 +180,33 @@ var/datum/subsystem/shuttle/SSshuttle emergency = backup_shuttle if(world.time - round_start_time < config.shuttle_refuel_delay) - user << "The emergency shuttle is refueling. Please wait another [abs(round(((world.time - round_start_time) - config.shuttle_refuel_delay)/600))] minutes before trying again." + to_chat(user, "The emergency shuttle is refueling. Please wait another [abs(round(((world.time - round_start_time) - config.shuttle_refuel_delay)/600))] minutes before trying again.") return switch(emergency.mode) if(SHUTTLE_RECALL) - user << "The emergency shuttle may not be called while returning to Centcom." + to_chat(user, "The emergency shuttle may not be called while returning to Centcom.") return if(SHUTTLE_CALL) - user << "The emergency shuttle is already on its way." + to_chat(user, "The emergency shuttle is already on its way.") return if(SHUTTLE_DOCKED) - user << "The emergency shuttle is already here." + to_chat(user, "The emergency shuttle is already here.") return if(SHUTTLE_IGNITING) - user << "The emergency shuttle is firing its engines to leave." + to_chat(user, "The emergency shuttle is firing its engines to leave.") return if(SHUTTLE_ESCAPE) - user << "The emergency shuttle is moving away to a safe distance." + to_chat(user, "The emergency shuttle is moving away to a safe distance.") return if(SHUTTLE_STRANDED) - user << "The emergency shuttle has been disabled by Centcom." + to_chat(user, "The emergency shuttle has been disabled by Centcom.") return call_reason = trim(html_encode(call_reason)) if(length(call_reason) < CALL_SHUTTLE_REASON_LENGTH && seclevel2num(get_security_level()) > SEC_LEVEL_GREEN) - user << "You must provide a reason." + to_chat(user, "You must provide a reason.") return var/area/signal_origin = get_area(user) @@ -221,20 +225,20 @@ var/datum/subsystem/shuttle/SSshuttle // Called when an emergency shuttle mobile docking port is // destroyed, which will only happen with admin intervention -/datum/subsystem/shuttle/proc/emergencyDeregister() +/datum/controller/subsystem/shuttle/proc/emergencyDeregister() // When a new emergency shuttle is created, it will override the // backup shuttle. src.emergency = src.backup_shuttle -/datum/subsystem/shuttle/proc/cancelEvac(mob/user) +/datum/controller/subsystem/shuttle/proc/cancelEvac(mob/user) if(canRecall()) emergency.cancel(get_area(user)) log_game("[key_name(user)] has recalled the shuttle.") message_admins("[key_name_admin(user)] has recalled the shuttle.") return 1 -/datum/subsystem/shuttle/proc/canRecall() - if(emergency.mode != SHUTTLE_CALL) +/datum/controller/subsystem/shuttle/proc/canRecall() + if(!emergency || emergency.mode != SHUTTLE_CALL) return if(ticker.mode.name == "meteor") return @@ -251,7 +255,7 @@ var/datum/subsystem/shuttle/SSshuttle return return 1 -/datum/subsystem/shuttle/proc/autoEvac() +/datum/controller/subsystem/shuttle/proc/autoEvac() var/callShuttle = 1 for(var/thing in shuttle_caller_list) @@ -275,15 +279,15 @@ var/datum/subsystem/shuttle/SSshuttle log_game("There is no means of calling the shuttle anymore. Shuttle automatically called.") message_admins("All the communications consoles were destroyed and all AIs are inactive. Shuttle called.") -/datum/subsystem/shuttle/proc/registerHostileEnvironment(datum/bad) +/datum/controller/subsystem/shuttle/proc/registerHostileEnvironment(datum/bad) hostileEnvironments[bad] = TRUE checkHostileEnvironment() -/datum/subsystem/shuttle/proc/clearHostileEnvironment(datum/bad) +/datum/controller/subsystem/shuttle/proc/clearHostileEnvironment(datum/bad) hostileEnvironments -= bad checkHostileEnvironment() -/datum/subsystem/shuttle/proc/checkHostileEnvironment() +/datum/controller/subsystem/shuttle/proc/checkHostileEnvironment() for(var/datum/d in hostileEnvironments) if(!istype(d) || QDELETED(d)) hostileEnvironments -= d @@ -304,7 +308,7 @@ var/datum/subsystem/shuttle/SSshuttle null, 'sound/AI/shuttledock.ogg', "Priority") //try to move/request to dockHome if possible, otherwise dockAway. Mainly used for admin buttons -/datum/subsystem/shuttle/proc/toggleShuttle(shuttleId, dockHome, dockAway, timed) +/datum/controller/subsystem/shuttle/proc/toggleShuttle(shuttleId, dockHome, dockAway, timed) var/obj/docking_port/mobile/M = getShuttle(shuttleId) if(!M) return 1 @@ -321,7 +325,7 @@ var/datum/subsystem/shuttle/SSshuttle return 0 //dock successful -/datum/subsystem/shuttle/proc/moveShuttle(shuttleId, dockId, timed) +/datum/controller/subsystem/shuttle/proc/moveShuttle(shuttleId, dockId, timed) var/obj/docking_port/mobile/M = getShuttle(shuttleId) var/obj/docking_port/stationary/D = getDock(dockId) @@ -335,7 +339,7 @@ var/datum/subsystem/shuttle/SSshuttle return 2 return 0 //dock successful -/datum/subsystem/shuttle/proc/request_transit_dock(obj/docking_port/mobile/M) +/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") @@ -345,7 +349,7 @@ var/datum/subsystem/shuttle/SSshuttle if(!(M in transit_requesters)) transit_requesters += M -/datum/subsystem/shuttle/proc/generate_transit_dock(obj/docking_port/mobile/M) +/datum/controller/subsystem/shuttle/proc/generate_transit_dock(obj/docking_port/mobile/M) // First, determine the size of the needed zone // Because of shuttle rotation, the "width" of the shuttle is not // always x. @@ -368,7 +372,7 @@ var/datum/subsystem/shuttle/SSshuttle transit_width += M.height transit_height += M.width /* - world << "The attempted transit dock will be [transit_width] width, and \ + to_chat(world, "The attempted transit dock will be [transit_width] width, and \) [transit_height] in height. The travel dir is [travel_dir]." */ @@ -398,17 +402,17 @@ var/datum/subsystem/shuttle/SSshuttle continue base if(!(T.flags & UNUSED_TRANSIT_TURF)) continue base - //world << "[COORD(topleft)] and [COORD(bottomright)]" + //to_chat(world, "[COORD(topleft)] and [COORD(bottomright)]") break base if((!proposed_zone) || (!proposed_zone.len)) return FALSE var/turf/topleft = proposed_zone[1] - //world << "[COORD(topleft)] is TOPLEFT" + //to_chat(world, "[COORD(topleft)] is TOPLEFT") // Then create a transit docking port in the middle var/coords = M.return_coords(0, 0, dock_dir) - //world << json_encode(coords) + //to_chat(world, json_encode(coords)) /* 0------2 | | | | @@ -429,7 +433,7 @@ var/datum/subsystem/shuttle/SSshuttle var/turf/low_point = locate(lowx, lowy, topleft.z) new /obj/effect/landmark/stationary(low_point) - world << "Starting at the low point, we go [x2],[y2]" + to_chat(world, "Starting at the low point, we go [x2],[y2]") */ // Then invert the numbers var/transit_x = topleft.x + SHUTTLE_TRANSIT_BORDER + abs(x2) @@ -446,11 +450,11 @@ var/datum/subsystem/shuttle/SSshuttle if(WEST) transit_path = /turf/open/space/transit/west - //world << "Docking port at [transit_x], [transit_y], [topleft.z]" + //to_chat(world, "Docking port at [transit_x], [transit_y], [topleft.z]") var/turf/midpoint = locate(transit_x, transit_y, topleft.z) if(!midpoint) return FALSE - //world << "Making transit dock at [COORD(midpoint)]" + //to_chat(world, "Making transit dock at [COORD(midpoint)]") var/area/shuttle/transit/A = new() A.parallax_movedir = travel_dir var/obj/docking_port/stationary/transit/new_transit_dock = new(midpoint) @@ -473,14 +477,14 @@ var/datum/subsystem/shuttle/SSshuttle M.assigned_transit = new_transit_dock return TRUE -/datum/subsystem/shuttle/proc/initial_move() +/datum/controller/subsystem/shuttle/proc/initial_move() for(var/obj/docking_port/mobile/M in mobile) if(!M.roundstart_move) continue M.dockRoundstart() CHECK_TICK -/datum/subsystem/shuttle/Recover() +/datum/controller/subsystem/shuttle/Recover() if (istype(SSshuttle.mobile)) mobile = SSshuttle.mobile if (istype(SSshuttle.stationary)) @@ -504,5 +508,4 @@ var/datum/subsystem/shuttle/SSshuttle centcom_message = SSshuttle.centcom_message ordernum = SSshuttle.ordernum - points = SSshuttle.points - + points = SSshuttle.points \ No newline at end of file diff --git a/code/controllers/subsystem/spacedrift.dm b/code/controllers/subsystem/spacedrift.dm index ce94670ecf..d4b6d9143a 100644 --- a/code/controllers/subsystem/spacedrift.dm +++ b/code/controllers/subsystem/spacedrift.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/spacedrift/SSspacedrift +var/datum/controller/subsystem/spacedrift/SSspacedrift -/datum/subsystem/spacedrift +/datum/controller/subsystem/spacedrift name = "Space Drift" priority = 30 wait = 5 @@ -9,15 +9,15 @@ var/datum/subsystem/spacedrift/SSspacedrift var/list/currentrun = list() var/list/processing = list() -/datum/subsystem/spacedrift/New() +/datum/controller/subsystem/spacedrift/New() NEW_SS_GLOBAL(SSspacedrift) -/datum/subsystem/spacedrift/stat_entry() +/datum/controller/subsystem/spacedrift/stat_entry() ..("P:[processing.len]") -/datum/subsystem/spacedrift/fire(resumed = 0) +/datum/controller/subsystem/spacedrift/fire(resumed = 0) if (!resumed) src.currentrun = processing.Copy() diff --git a/code/controllers/subsystem/squeak.dm b/code/controllers/subsystem/squeak.dm index 055dc98c30..1bfef29a23 100644 --- a/code/controllers/subsystem/squeak.dm +++ b/code/controllers/subsystem/squeak.dm @@ -1,23 +1,23 @@ -var/datum/subsystem/squeak/SSsqueak +var/datum/controller/subsystem/squeak/SSsqueak // The Squeak // because this is about placement of mice mobs, and nothing to do with // mice - the computer peripheral -/datum/subsystem/squeak +/datum/controller/subsystem/squeak name = "Squeak" priority = 40 flags = SS_NO_FIRE var/list/exposed_wires = list() -/datum/subsystem/squeak/New() +/datum/controller/subsystem/squeak/New() NEW_SS_GLOBAL(SSsqueak) -/datum/subsystem/squeak/Initialize(timeofday) +/datum/controller/subsystem/squeak/Initialize(timeofday) trigger_migration() -/datum/subsystem/squeak/proc/trigger_migration(num_mice=10) +/datum/controller/subsystem/squeak/proc/trigger_migration(num_mice=10) find_exposed_wires() var/mob/living/simple_animal/mouse/M @@ -33,7 +33,7 @@ var/datum/subsystem/squeak/SSsqueak num_mice -= 1 M = null -/datum/subsystem/squeak/proc/find_exposed_wires() +/datum/controller/subsystem/squeak/proc/find_exposed_wires() exposed_wires.Cut() var/list/all_turfs = block(locate(1,1,1), locate(world.maxx,world.maxy,1)) diff --git a/code/controllers/subsystem/stickyban.dm b/code/controllers/subsystem/stickyban.dm index e33e9f6665..23900adb4e 100644 --- a/code/controllers/subsystem/stickyban.dm +++ b/code/controllers/subsystem/stickyban.dm @@ -1,16 +1,16 @@ -var/datum/subsystem/stickyban/SSstickyban +var/datum/controller/subsystem/stickyban/SSstickyban -/datum/subsystem/stickyban +/datum/controller/subsystem/stickyban name = "Sticky Ban" init_order = -10 flags = SS_NO_FIRE var/list/cache = list() -/datum/subsystem/stickyban/New() +/datum/controller/subsystem/stickyban/New() NEW_SS_GLOBAL(SSstickyban) -/datum/subsystem/stickyban/Initialize(timeofday) +/datum/controller/subsystem/stickyban/Initialize(timeofday) var/list/bannedkeys = world.GetConfig("ban") //sanitize the sticky ban list for (var/bannedkey in bannedkeys) diff --git a/code/controllers/subsystem/sun.dm b/code/controllers/subsystem/sun.dm index 8a4bf5b286..65dc87005f 100644 --- a/code/controllers/subsystem/sun.dm +++ b/code/controllers/subsystem/sun.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/sun/SSsun +var/datum/controller/subsystem/sun/SSsun -/datum/subsystem/sun +/datum/controller/subsystem/sun name = "Sun" wait = 600 init_order = 2 @@ -11,7 +11,7 @@ var/datum/subsystem/sun/SSsun var/rate var/list/solars = list() -/datum/subsystem/sun/New() +/datum/controller/subsystem/sun/New() NEW_SS_GLOBAL(SSsun) angle = rand (0,360) // the station position to the sun is randomised at round start @@ -19,10 +19,10 @@ var/datum/subsystem/sun/SSsun if(prob(50)) // same chance to rotate clockwise than counter-clockwise rate = -rate -/datum/subsystem/sun/stat_entry(msg) +/datum/controller/subsystem/sun/stat_entry(msg) ..("P:[solars.len]") -/datum/subsystem/sun/fire() +/datum/controller/subsystem/sun/fire() angle = (360 + angle + rate * 6) % 360 // increase/decrease the angle to the sun, adjusted by the rate // now calculate and cache the (dx,dy) increments for line drawing diff --git a/code/controllers/subsystem/tgui.dm b/code/controllers/subsystem/tgui.dm index 0a82e857ac..04cf2cc38f 100644 --- a/code/controllers/subsystem/tgui.dm +++ b/code/controllers/subsystem/tgui.dm @@ -1,10 +1,9 @@ -var/datum/subsystem/tgui/SStgui +var/datum/controller/subsystem/tgui/SStgui -/datum/subsystem/tgui +/datum/controller/subsystem/tgui name = "tgui" wait = 9 init_order = 16 - display_order = 6 flags = SS_NO_INIT|SS_FIRE_IN_LOBBY priority = 110 @@ -13,18 +12,18 @@ var/datum/subsystem/tgui/SStgui var/list/processing_uis = list() // A list of processing UIs, ungrouped. var/basehtml // The HTML base used for all UIs. -/datum/subsystem/tgui/New() +/datum/controller/subsystem/tgui/New() basehtml = file2text('tgui/tgui.html') // Read the HTML from disk. NEW_SS_GLOBAL(SStgui) -/datum/subsystem/tgui/Shutdown() +/datum/controller/subsystem/tgui/Shutdown() close_all_uis() -/datum/subsystem/tgui/stat_entry() +/datum/controller/subsystem/tgui/stat_entry() ..("P:[processing_uis.len]") -/datum/subsystem/tgui/fire(resumed = 0) +/datum/controller/subsystem/tgui/fire(resumed = 0) if (!resumed) src.currentrun = processing_uis.Copy() //cache for sanic speed (lists are references anyways) diff --git a/code/controllers/subsystem/throwing.dm b/code/controllers/subsystem/throwing.dm index 2b23ac485a..260f5698ec 100644 --- a/code/controllers/subsystem/throwing.dm +++ b/code/controllers/subsystem/throwing.dm @@ -1,8 +1,8 @@ #define MAX_THROWING_DIST 512 // 2 z-levels on default width #define MAX_TICKS_TO_MAKE_UP 3 //how many missed ticks will we attempt to make up for this run. -var/datum/subsystem/throwing/SSthrowing +var/datum/controller/subsystem/throwing/SSthrowing -/datum/subsystem/throwing +/datum/controller/subsystem/throwing name = "Throwing" priority = 25 wait = 1 @@ -11,16 +11,16 @@ var/datum/subsystem/throwing/SSthrowing var/list/currentrun var/list/processing -/datum/subsystem/throwing/New() +/datum/controller/subsystem/throwing/New() NEW_SS_GLOBAL(SSthrowing) processing = list() -/datum/subsystem/throwing/stat_entry() +/datum/controller/subsystem/throwing/stat_entry() ..("P:[processing.len]") -/datum/subsystem/throwing/fire(resumed = 0) +/datum/controller/subsystem/throwing/fire(resumed = 0) if (!resumed) src.currentrun = processing.Copy() diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 8c73027473..9ffebe0911 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -2,9 +2,9 @@ var/round_start_time = 0 -var/datum/subsystem/ticker/ticker +var/datum/controller/subsystem/ticker/ticker -/datum/subsystem/ticker +/datum/controller/subsystem/ticker name = "Ticker" init_order = 13 @@ -56,19 +56,17 @@ var/datum/subsystem/ticker/ticker var/news_report - var/modevoted = 0 //Have we sent a vote for the gamemode? + var/late_join_disabled -/datum/subsystem/ticker/New() + var/modevoted = FALSE //Have we sent a vote for the gamemode? + +/datum/controller/subsystem/ticker/New() NEW_SS_GLOBAL(ticker) - if(SSevent.holidays && SSevent.holidays[APRIL_FOOLS]) - login_music = 'sound/ambience/clown.ogg' - else - var/list/music = file2list(ROUND_START_MUSIC_LIST, "\n") - login_music = pick(music) -/datum/subsystem/ticker/Initialize(timeofday) +/datum/controller/subsystem/ticker/Initialize(timeofday) var/list/music = file2list(ROUND_START_MUSIC_LIST, "\n") login_music = pick(music) + if(!syndicate_code_phrase) syndicate_code_phrase = generate_code_phrase() if(!syndicate_code_response) @@ -76,14 +74,14 @@ var/datum/subsystem/ticker/ticker ..() start_at = world.time + (config.lobby_countdown * 10) -/datum/subsystem/ticker/fire() +/datum/controller/subsystem/ticker/fire() switch(current_state) if(GAME_STATE_STARTUP) if(Master.initializations_finished_with_no_players_logged_in) start_at = world.time + (config.lobby_countdown * 10) for(var/client/C in clients) window_flash(C, ignorepref = TRUE) //let them know lobby has opened up. - world << "Welcome to [station_name()]!" + to_chat(world, "Welcome to [station_name()]!") current_state = GAME_STATE_PREGAME if(!modevoted) send_gamemode_vote() @@ -95,7 +93,7 @@ var/datum/subsystem/ticker/ticker timeLeft = max(0,start_at - world.time) totalPlayers = 0 totalPlayersReady = 0 - for(var/mob/new_player/player in player_list) + for(var/mob/dead/new_player/player in player_list) ++totalPlayers if(player.ready) ++totalPlayersReady @@ -133,7 +131,9 @@ var/datum/subsystem/ticker/ticker toggle_ooc(1) // Turn it on declare_completion(force_ending) -/datum/subsystem/ticker/proc/setup() +/datum/controller/subsystem/ticker/proc/setup() + to_chat(world, "Starting game...") + var/init_start = world.timeofday //Create and announce mode var/list/datum/game_mode/runnable_modes if(master_mode == "random" || master_mode == "secret") @@ -150,71 +150,83 @@ var/datum/subsystem/ticker/ticker if(!mode) if(!runnable_modes.len) - world << "Unable to choose playable game mode. Reverting to pre-game lobby." + to_chat(world, "Unable to choose playable game mode. Reverting to pre-game lobby.") return 0 mode = pickweight(runnable_modes) else mode = config.pick_mode(master_mode) if(!mode.can_start()) - world << "Unable to start [mode.name]. Not enough players, [mode.required_players] players and [mode.required_enemies] eligible antagonists needed. Reverting to pre-game lobby." + to_chat(world, "Unable to start [mode.name]. Not enough players, [mode.required_players] players and [mode.required_enemies] eligible antagonists needed. Reverting to pre-game lobby.") qdel(mode) mode = null SSjob.ResetOccupations() return 0 + CHECK_TICK //Configure mode and assign player to special mode stuff var/can_continue = 0 can_continue = src.mode.pre_setup() //Choose antagonists + CHECK_TICK SSjob.DivideOccupations() //Distribute jobs + CHECK_TICK if(!Debug2) if(!can_continue) qdel(mode) mode = null - world << "Error setting up [master_mode]. Reverting to pre-game lobby." + to_chat(world, "Error setting up [master_mode]. Reverting to pre-game lobby.") SSjob.ResetOccupations() return 0 else message_admins("DEBUG: Bypassing prestart checks...") + CHECK_TICK if(hide_mode) var/list/modes = new for (var/datum/game_mode/M in runnable_modes) modes += M.name modes = sortList(modes) - world << "The gamemode is: secret!\n\ - Possibilities: [english_list(modes)]" + to_chat(world, "The gamemode is: secret!\nPossibilities: [english_list(modes)]") else mode.announce() - current_state = GAME_STATE_PLAYING if(!config.ooc_during_round) toggle_ooc(0) // Turn it off - round_start_time = world.time + CHECK_TICK start_landmarks_list = shuffle(start_landmarks_list) //Shuffle the order of spawn points so they dont always predictably spawn bottom-up and right-to-left - create_characters() //Create player characters and transfer them + create_characters() //Create player characters collect_minds() equip_characters() + + SSoverlays.Flush() //Flush the majority of the shit + data_core.manifest() - Master.RoundStart() + transfer_characters() //transfer keys to the new mobs - world << "Welcome to [station_name()], enjoy your stay!" + Master.RoundStart() //let the party begin... + + log_world("Game start took [(world.timeofday - init_start)/10]s") + round_start_time = world.time + + to_chat(world, "Welcome to [station_name()], enjoy your stay!") world << sound('sound/AI/welcome.ogg') + current_state = GAME_STATE_PLAYING + if(SSevent.holidays) - world << "and..." + to_chat(world, "and...") for(var/holidayname in SSevent.holidays) var/datum/holiday/holiday = SSevent.holidays[holidayname] - world << "

[holiday.greet()]

" + to_chat(world, "

[holiday.greet()]

") PostSetup() return 1 -/datum/subsystem/ticker/proc/PostSetup() +/datum/controller/subsystem/ticker/proc/PostSetup() set waitfor = 0 mode.post_setup() //Cleanup some stuff @@ -227,7 +239,7 @@ var/datum/subsystem/ticker/ticker var/list/allmins = adm["present"] send2irc("Server", "Round of [hide_mode ? "secret":"[mode.name]"] has started[allmins.len ? ".":" with no active admins online!"]") -/datum/subsystem/ticker/proc/station_explosion_detonation(atom/bomb) +/datum/controller/subsystem/ticker/proc/station_explosion_detonation(atom/bomb) if(bomb) //BOOM var/turf/epi = bomb.loc qdel(bomb) @@ -235,7 +247,7 @@ var/datum/subsystem/ticker/ticker explosion(epi, 0, 256, 512, 0, TRUE, TRUE, 0, TRUE) //Plus it provides an easy way to make cinematics for other events. Just use this as a template -/datum/subsystem/ticker/proc/station_explosion_cinematic(station_missed=0, override = null, atom/bomb = null) +/datum/controller/subsystem/ticker/proc/station_explosion_cinematic(station_missed=0, override = null, atom/bomb = null) if( cinematic ) return //already a cinematic in progress! @@ -344,12 +356,12 @@ var/datum/subsystem/ticker/ticker if(mode) mode.explosion_in_progress = 0 - world << "The station was destoyed by the nuclear blast!" + to_chat(world, "The station was destoyed by the nuclear blast!") mode.station_was_nuked = (station_missed<2) //station_missed==1 is a draw. the station becomes irradiated and needs to be evacuated. addtimer(CALLBACK(src, .proc/finish_cinematic, bombloc, actually_blew_up), 300) -/datum/subsystem/ticker/proc/finish_cinematic(killz, actually_blew_up) +/datum/controller/subsystem/ticker/proc/finish_cinematic(killz, actually_blew_up) if(cinematic) qdel(cinematic) //end the cinematic cinematic = null @@ -358,49 +370,65 @@ var/datum/subsystem/ticker/ticker if(actually_blew_up && !isnull(killz) && M.stat != DEAD && M.z == killz) M.gib() -/datum/subsystem/ticker/proc/create_characters() - for(var/mob/new_player/player in player_list) +/datum/controller/subsystem/ticker/proc/create_characters() + for(var/mob/dead/new_player/player in player_list) if(player.ready && player.mind) joined_player_list += player.ckey - if(player.mind.assigned_role=="AI") - player.close_spawn_windows() - player.AIize() - else - player.create_character() - qdel(player) + player.create_character(FALSE) else player.new_player_panel() + CHECK_TICK + +/datum/controller/subsystem/ticker/proc/collect_minds() + for(var/mob/dead/new_player/P in player_list) + if(P.new_character && P.new_character.mind) + ticker.minds += P.new_character.mind + CHECK_TICK -/datum/subsystem/ticker/proc/collect_minds() - for(var/mob/living/player in player_list) - if(player.mind) - ticker.minds += player.mind - - -/datum/subsystem/ticker/proc/equip_characters() +/datum/controller/subsystem/ticker/proc/equip_characters() var/captainless=1 - for(var/mob/living/carbon/human/player in player_list) - if(player && player.mind && player.mind.assigned_role) + for(var/mob/dead/new_player/N in player_list) + var/mob/living/carbon/human/player = N.new_character + if(istype(player) && player.mind && player.mind.assigned_role) if(player.mind.assigned_role == "Captain") captainless=0 if(player.mind.assigned_role != player.mind.special_role) - SSjob.EquipRank(player, player.mind.assigned_role, 0) + SSjob.EquipRank(N, player.mind.assigned_role, 0) + CHECK_TICK if(captainless) - for(var/mob/M in player_list) - if(!isnewplayer(M)) - M << "Captainship not forced on anyone." + for(var/mob/dead/new_player/N in player_list) + if(N.new_character) + to_chat(N, "Captainship not forced on anyone.") + CHECK_TICK +/datum/controller/subsystem/ticker/proc/transfer_characters() + var/list/livings = list() + for(var/mob/dead/new_player/player in player_list) + var/mob/living = player.transfer_character() + if(living) + qdel(player) + living.notransform = TRUE + if(living.client) + var/obj/screen/splash/S = new(living.client, TRUE) + S.Fade(TRUE) + livings += living + if(livings.len) + addtimer(CALLBACK(src, .proc/release_characters, livings), 30, TIMER_CLIENT_TIME) +/datum/controller/subsystem/ticker/proc/release_characters(list/livings) + for(var/I in livings) + var/mob/living/L = I + L.notransform = FALSE -/datum/subsystem/ticker/proc/declare_completion() +/datum/controller/subsystem/ticker/proc/declare_completion() set waitfor = FALSE var/station_evacuated = EMERGENCY_ESCAPED_OR_ENDGAMED var/num_survivors = 0 var/num_escapees = 0 var/num_shuttle_escapees = 0 - world << "


The round has ended." + to_chat(world, "


The round has ended.") //Player status report for(var/mob/Player in mob_list) @@ -412,16 +440,16 @@ var/datum/subsystem/ticker/ticker if(SSshuttle && SSshuttle.emergency) shuttle_area = SSshuttle.emergency.areaInstance if(!Player.onCentcom() && !Player.onSyndieBase()) - Player << "You managed to survive, but were marooned on [station_name()]..." + to_chat(Player, "You managed to survive, but were marooned on [station_name()]...") else num_escapees++ - Player << "You managed to survive the events on [station_name()] as [Player.real_name]." + to_chat(Player, "You managed to survive the events on [station_name()] as [Player.real_name].") if(get_area(Player) == shuttle_area) num_shuttle_escapees++ else - Player << "You managed to survive the events on [station_name()] as [Player.real_name]." + to_chat(Player, "You managed to survive the events on [station_name()] as [Player.real_name].") else - Player << "You did not survive the events on [station_name()]..." + to_chat(Player, "You did not survive the events on [station_name()]...") CHECK_TICK @@ -430,50 +458,50 @@ var/datum/subsystem/ticker/ticker end_state.count() var/station_integrity = min(PERCENT(start_state.score(end_state)), 100) - world << "
[TAB]Shift Duration: [round(world.time / 36000)]:[add_zero("[world.time / 600 % 60]", 2)]:[world.time / 100 % 6][world.time / 100 % 10]" - world << "
[TAB]Station Integrity: [mode.station_was_nuked ? "Destroyed" : "[station_integrity]%"]" + to_chat(world, "
[TAB]Shift Duration: [round(world.time / 36000)]:[add_zero("[world.time / 600 % 60]", 2)]:[world.time / 100 % 6][world.time / 100 % 10]") + to_chat(world, "
[TAB]Station Integrity: [mode.station_was_nuked ? "Destroyed" : "[station_integrity]%"]") if(mode.station_was_nuked) ticker.news_report = STATION_DESTROYED_NUKE var/total_players = joined_player_list.len if(joined_player_list.len) - world << "
[TAB]Total Population: [total_players]" + to_chat(world, "
[TAB]Total Population: [total_players]") if(station_evacuated) - world << "
[TAB]Evacuation Rate: [num_escapees] ([PERCENT(num_escapees/total_players)]%)" - world << "
[TAB](on emergency shuttle): [num_shuttle_escapees] ([PERCENT(num_shuttle_escapees/total_players)]%)" + to_chat(world, "
[TAB]Evacuation Rate: [num_escapees] ([PERCENT(num_escapees/total_players)]%)") + to_chat(world, "
[TAB](on emergency shuttle): [num_shuttle_escapees] ([PERCENT(num_shuttle_escapees/total_players)]%)") news_report = STATION_EVACUATED if(SSshuttle.emergency.is_hijacked()) news_report = SHUTTLE_HIJACK - world << "
[TAB]Survival Rate: [num_survivors] ([PERCENT(num_survivors/total_players)]%)" - world << "
" + to_chat(world, "
[TAB]Survival Rate: [num_survivors] ([PERCENT(num_survivors/total_players)]%)") + to_chat(world, "
") CHECK_TICK //Silicon laws report for (var/mob/living/silicon/ai/aiPlayer in mob_list) if (aiPlayer.stat != 2 && aiPlayer.mind) - world << "[aiPlayer.name] (Played by: [aiPlayer.mind.key])'s laws at the end of the round were:" + to_chat(world, "[aiPlayer.name] (Played by: [aiPlayer.mind.key])'s laws at the end of the round were:") aiPlayer.show_laws(1) else if (aiPlayer.mind) //if the dead ai has a mind, use its key instead - world << "[aiPlayer.name] (Played by: [aiPlayer.mind.key])'s laws when it was deactivated were:" + to_chat(world, "[aiPlayer.name] (Played by: [aiPlayer.mind.key])'s laws when it was deactivated were:") aiPlayer.show_laws(1) - world << "Total law changes: [aiPlayer.law_change_counter]" + to_chat(world, "Total law changes: [aiPlayer.law_change_counter]") if (aiPlayer.connected_robots.len) var/robolist = "[aiPlayer.real_name]'s minions were: " for(var/mob/living/silicon/robot/robo in aiPlayer.connected_robots) if(robo.mind) robolist += "[robo.name][robo.stat?" (Deactivated) (Played by: [robo.mind.key]), ":" (Played by: [robo.mind.key]), "]" - world << "[robolist]" + to_chat(world, "[robolist]") CHECK_TICK for (var/mob/living/silicon/robot/robo in mob_list) if (!robo.connected_ai && robo.mind) if (robo.stat != 2) - world << "[robo.name] (Played by: [robo.mind.key]) survived as an AI-less borg! Its laws were:" + to_chat(world, "[robo.name] (Played by: [robo.mind.key]) survived as an AI-less borg! Its laws were:") else - world << "[robo.name] (Played by: [robo.mind.key]) was unable to survive the rigors of being a cyborg without an AI. Its laws were:" + to_chat(world, "[robo.name] (Played by: [robo.mind.key]) was unable to survive the rigors of being a cyborg without an AI. Its laws were:") if(robo) //How the hell do we lose robo between here and the world messages directly above this? robo.laws.show_laws(world) @@ -491,7 +519,7 @@ var/datum/subsystem/ticker/ticker CHECK_TICK - if(cross_allowed) + if(config.cross_allowed) send_news_report() CHECK_TICK @@ -530,7 +558,7 @@ var/datum/subsystem/ticker/ticker else borertext += "failed" borertext += ")" - world << borertext + to_chat(world, borertext) var/total_borers = 0 for(var/mob/living/simple_animal/borer/B in borers) @@ -545,12 +573,12 @@ var/datum/subsystem/ticker/ticker total_borer_hosts++ if(total_borer_hosts_needed <= total_borer_hosts) borerwin = TRUE - world << "There were [total_borers] borers alive at round end!" - world << "A total of [total_borer_hosts] borers with hosts escaped on the shuttle alive. The borers needed [total_borer_hosts_needed] hosts to escape." + to_chat(world, "There were [total_borers] borers alive at round end!") + to_chat(world, "A total of [total_borer_hosts] borers with hosts escaped on the shuttle alive. The borers needed [total_borer_hosts_needed] hosts to escape.") if(borerwin) - world << "The borers were successful!" + to_chat(world, "The borers were successful!") else - world << "The borers have failed!" + to_chat(world, "The borers have failed!") CHECK_TICK @@ -583,7 +611,7 @@ var/datum/subsystem/ticker/ticker else world.Reboot("Round ended.", "end_proper", "proper completion") -/datum/subsystem/ticker/proc/send_tip_of_the_round() +/datum/controller/subsystem/ticker/proc/send_tip_of_the_round() var/m if(selected_tip) m = selected_tip @@ -596,35 +624,34 @@ var/datum/subsystem/ticker/ticker m = pick(memetips) if(m) - world << "Tip of the round: \ - [html_encode(m)]" + to_chat(world, "Tip of the round: [html_encode(m)]") -/datum/subsystem/ticker/proc/check_queue() +/datum/controller/subsystem/ticker/proc/check_queue() if(!queued_players.len || !config.hard_popcap) return queue_delay++ - var/mob/new_player/next_in_line = queued_players[1] + var/mob/dead/new_player/next_in_line = queued_players[1] switch(queue_delay) if(5) //every 5 ticks check if there is a slot available if(living_player_count() < config.hard_popcap) if(next_in_line && next_in_line.client) - next_in_line << "A slot has opened! You have approximately 20 seconds to join. \>\>Join Game\<\<" + to_chat(next_in_line, "A slot has opened! You have approximately 20 seconds to join. \>\>Join Game\<\<") next_in_line << sound('sound/misc/notice1.ogg') next_in_line.LateChoices() return queued_players -= next_in_line //Client disconnected, remove he queue_delay = 0 //No vacancy: restart timer if(25 to INFINITY) //No response from the next in line when a vacancy exists, remove he - next_in_line << "No response recieved. You have been removed from the line." + to_chat(next_in_line, "No response recieved. You have been removed from the line.") queued_players -= next_in_line queue_delay = 0 -/datum/subsystem/ticker/proc/check_maprotate() - if (!config.maprotation || !SERVERTOOLS) +/datum/controller/subsystem/ticker/proc/check_maprotate() + if (!config.maprotation) return - if (SSshuttle.emergency.mode != SHUTTLE_ESCAPE || SSshuttle.canRecall()) + if (SSshuttle.emergency && SSshuttle.emergency.mode != SHUTTLE_ESCAPE || SSshuttle.canRecall()) return if (maprotatechecked) return @@ -634,9 +661,9 @@ var/datum/subsystem/ticker/ticker //map rotate chance defaults to 75% of the length of the round (in minutes) if (!prob((world.time/600)*config.maprotatechancedelta)) return - INVOKE_ASYNC(GLOBAL_PROC, /.proc/maprotate) + INVOKE_ASYNC(SSmapping, /datum/controller/subsystem/mapping/.proc/maprotate) -/datum/subsystem/ticker/proc/send_gamemode_vote(var/) +/datum/controller/subsystem/ticker/proc/send_gamemode_vote(var/) SSvote.initiate_vote("roundtype","server") /world/proc/has_round_started() @@ -644,7 +671,7 @@ var/datum/subsystem/ticker/ticker return TRUE return FALSE -/datum/subsystem/ticker/Recover() +/datum/controller/subsystem/ticker/Recover() current_state = ticker.current_state force_ending = ticker.force_ending hide_mode = ticker.hide_mode @@ -676,10 +703,9 @@ var/datum/subsystem/ticker/ticker queued_players = ticker.queued_players cinematic = ticker.cinematic maprotatechecked = ticker.maprotatechecked - modevoted = ticker.modevoted -/datum/subsystem/ticker/proc/send_news_report() +/datum/controller/subsystem/ticker/proc/send_news_report() var/news_message var/news_source = "Nanotrasen News Network" switch(news_report) @@ -706,19 +732,19 @@ var/datum/subsystem/ticker/ticker if(CULT_SUMMON) news_message = "Company officials would like to clarify that [station_name()] was scheduled to be decommissioned following meteor damage earlier this year. Earlier reports of an unknowable eldritch horror were made in error." if(NUKE_MISS) - news_message = "The Syndicate have bungled a terrorist attack [station_name()], detonating a nuclear weapon in empty space near by." + news_message = "The Syndicate have bungled a terrorist attack [station_name()], detonating a nuclear weapon in empty space nearby." if(OPERATIVES_KILLED) news_message = "Repairs to [station_name()] are underway after an elite Syndicate death squad was wiped out by the crew." if(OPERATIVE_SKIRMISH) news_message = "A skirmish between security forces and Syndicate agents aboard [station_name()] ended with both sides bloodied but intact." if(REVS_WIN) - news_message = "Company officials have reassured investors that despite a union led revolt aboard [station_name()] that there will be no wage increases for workers." + news_message = "Company officials have reassured investors that despite a union led revolt aboard [station_name()] there will be no wage increases for workers." if(REVS_LOSE) news_message = "[station_name()] quickly put down a misguided attempt at mutiny. Remember, unionizing is illegal!" if(WIZARD_KILLED) - news_message = "Tensions have flared with the Wizard's Federation following the death of one of their members aboard [station_name()]." + news_message = "Tensions have flared with the Space Wizard Federation following the death of one of their members aboard [station_name()]." if(STATION_NUKED) - news_message = "[station_name()] activated its self destruct device for unknown reasons. Attempts to clone the Captain so he can be arrested and executed are under way." + news_message = "[station_name()] activated its self destruct device for unknown reasons. Attempts to clone the Captain so he can be arrested and executed are underway." if(CLOCK_SUMMON) news_message = "The garbled messages about hailing a mouse and strange energy readings from [station_name()] have been discovered to be an ill-advised, if thorough, prank by a clown." if(CLOCK_SILICONS) @@ -731,12 +757,12 @@ var/datum/subsystem/ticker/ticker if(news_message) send2otherserver(news_source, news_message,"News_Report") -/datum/subsystem/ticker/proc/GetTimeLeft() +/datum/controller/subsystem/ticker/proc/GetTimeLeft() if(isnull(ticker.timeLeft)) return max(0, start_at - world.time) return timeLeft -/datum/subsystem/ticker/proc/SetTimeLeft(newtime) +/datum/controller/subsystem/ticker/proc/SetTimeLeft(newtime) if(newtime >= 0 && isnull(timeLeft)) //remember, negative means delayed start_at = world.time + newtime else diff --git a/code/controllers/subsystem/time_tracking.dm b/code/controllers/subsystem/time_tracking.dm index df87d9d125..a24b803cf6 100644 --- a/code/controllers/subsystem/time_tracking.dm +++ b/code/controllers/subsystem/time_tracking.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/time_track/SStime_track +var/datum/controller/subsystem/time_track/SStime_track -/datum/subsystem/time_track +/datum/controller/subsystem/time_track name = "Time Tracking" wait = 600 flags = SS_NO_INIT|SS_FIRE_IN_LOBBY @@ -17,10 +17,10 @@ var/datum/subsystem/time_track/SStime_track var/last_tick_byond_time = 0 var/last_tick_tickcount = 0 -/datum/subsystem/time_track/New() +/datum/controller/subsystem/time_track/New() NEW_SS_GLOBAL(SStime_track) -/datum/subsystem/time_track/fire() +/datum/controller/subsystem/time_track/fire() var/current_realtime = REALTIMEOFDAY var/current_byondtime = world.time diff --git a/code/controllers/subsystem/timer.dm b/code/controllers/subsystem/timer.dm index c33d8e6c56..34c9f35d59 100644 --- a/code/controllers/subsystem/timer.dm +++ b/code/controllers/subsystem/timer.dm @@ -1,12 +1,11 @@ #define BUCKET_LEN (world.fps*1*60) //how many ticks should we keep in the bucket. (1 minutes worth) #define BUCKET_POS(timer) (round((timer.timeToRun - SStimer.head_offset) / world.tick_lag) + 1) -var/datum/subsystem/timer/SStimer +var/datum/controller/subsystem/timer/SStimer -/datum/subsystem/timer +/datum/controller/subsystem/timer name = "Timer" wait = 1 //SS_TICKER subsystem, so wait is in ticks init_order = 1 - display_order = 3 flags = SS_FIRE_IN_LOBBY|SS_TICKER|SS_NO_INIT @@ -25,7 +24,7 @@ var/datum/subsystem/timer/SStimer var/list/clienttime_timers //special snowflake timers that run on fancy pansy "client time" -/datum/subsystem/timer/New() +/datum/controller/subsystem/timer/New() processing = list() hashes = list() bucket_list = list() @@ -36,10 +35,10 @@ var/datum/subsystem/timer/SStimer NEW_SS_GLOBAL(SStimer) -/datum/subsystem/timer/stat_entry(msg) +/datum/controller/subsystem/timer/stat_entry(msg) ..("B:[bucket_count] P:[length(processing)] H:[length(hashes)] C:[length(clienttime_timers)]") -/datum/subsystem/timer/fire(resumed = FALSE) +/datum/controller/subsystem/timer/fire(resumed = FALSE) while(length(clienttime_timers)) var/datum/timedevent/ctime_timer = clienttime_timers[clienttime_timers.len] if (ctime_timer.timeToRun <= REALTIMEOFDAY) @@ -107,7 +106,7 @@ var/datum/subsystem/timer/SStimer spent.len = 0 -/datum/subsystem/timer/proc/shift_buckets() +/datum/controller/subsystem/timer/proc/shift_buckets() var/list/bucket_list = src.bucket_list var/list/alltimers = list() //collect the timers currently in the bucket @@ -172,7 +171,7 @@ var/datum/subsystem/timer/SStimer processing = (alltimers - timers_to_remove) -/datum/subsystem/timer/Recover() +/datum/controller/subsystem/timer/Recover() processing |= SStimer.processing hashes |= SStimer.hashes timer_id_dict |= SStimer.timer_id_dict diff --git a/code/controllers/subsystem/title_screen.dm b/code/controllers/subsystem/title_screen.dm new file mode 100644 index 0000000000..1b4bd16053 --- /dev/null +++ b/code/controllers/subsystem/title_screen.dm @@ -0,0 +1,39 @@ +var/datum/controller/subsystem/title/SStitle + +/datum/controller/subsystem/title + name = "Title Screen" + init_order = 15 + flags = SS_NO_FIRE + var/turf/closed/indestructible/splashscreen/title_screen + +/datum/controller/subsystem/title/New() + NEW_SS_GLOBAL(SStitle) + +/datum/controller/subsystem/title/Initialize() + var/list/provisional_title_screens = flist("config/title_screens/images/") + var/list/title_screens = list() + var/use_rare_screens = FALSE + + if(title_screen) + if(prob(1)) + use_rare_screens = TRUE + + 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))))) + title_screens += S + + if(!isemptylist(title_screens)) + if(length(title_screens) > 1) + for(var/S in title_screens) + var/list/L = splittext(S,".") + if(L.len != 2 || L[1] != "default") + continue + title_screens -= S + break + + var/path_string = "config/title_screens/images/[pick(title_screens)]" + var/icon/screen_to_use = new(path_string) + + title_screen.icon = screen_to_use + ..() \ No newline at end of file diff --git a/code/controllers/subsystem/voting.dm b/code/controllers/subsystem/voting.dm index 518fe362b7..39e1471dc5 100644 --- a/code/controllers/subsystem/voting.dm +++ b/code/controllers/subsystem/voting.dm @@ -1,6 +1,6 @@ -var/datum/subsystem/vote/SSvote +var/datum/controller/subsystem/vote/SSvote -/datum/subsystem/vote +/datum/controller/subsystem/vote name = "Vote" wait = 10 @@ -16,10 +16,10 @@ var/datum/subsystem/vote/SSvote var/list/voting = list() var/list/generated_actions = list() -/datum/subsystem/vote/New() +/datum/controller/subsystem/vote/New() NEW_SS_GLOBAL(SSvote) -/datum/subsystem/vote/fire() //called by master_controller +/datum/controller/subsystem/vote/fire() //called by master_controller if(mode) time_remaining = round((started_time + config.vote_period - world.time)/10) @@ -37,7 +37,7 @@ var/datum/subsystem/vote/SSvote client_popup.open(0) -/datum/subsystem/vote/proc/reset() +/datum/controller/subsystem/vote/proc/reset() initiator = null time_remaining = 0 mode = null @@ -47,7 +47,7 @@ var/datum/subsystem/vote/SSvote voting.Cut() remove_action_buttons() -/datum/subsystem/vote/proc/get_result() +/datum/controller/subsystem/vote/proc/get_result() //get the highest number of votes var/greatest_votes = 0 var/total_votes = 0 @@ -82,7 +82,7 @@ var/datum/subsystem/vote/SSvote . += option return . -/datum/subsystem/vote/proc/announce_result() +/datum/controller/subsystem/vote/proc/announce_result() var/list/winners = get_result() var/text if(winners.len > 0) @@ -108,10 +108,10 @@ var/datum/subsystem/vote/SSvote text += "Vote Result: Inconclusive - No Votes!" log_vote(text) remove_action_buttons() - world << "\n[text]" + to_chat(world, "\n[text]") return . -/datum/subsystem/vote/proc/result() +/datum/controller/subsystem/vote/proc/result() . = announce_result() var/restart = 0 if(.) @@ -133,7 +133,7 @@ var/datum/subsystem/vote/SSvote else if(master_mode != .) world.save_mode(.) master_mode = . - world << "The mode is now: [master_mode]" + to_chat(world,"The mode is now: [master_mode]") if(restart) var/active_admins = 0 @@ -144,12 +144,12 @@ var/datum/subsystem/vote/SSvote if(!active_admins) world.Reboot("Restart vote successful.", "end_error", "restart vote") else - world << "Notice:Restart vote will not restart the server automatically because there are active admins on." + to_chat(world, "Notice:Restart vote will not restart the server automatically because there are active admins on.") message_admins("A restart vote has passed, but there are active admins on with +server, so it has been canceled. If you wish, you may restart the server.") return . -/datum/subsystem/vote/proc/submit_vote(vote) +/datum/controller/subsystem/vote/proc/submit_vote(vote) if(mode) if(config.vote_no_dead && usr.stat == DEAD && !usr.client.holder) return 0 @@ -160,12 +160,12 @@ var/datum/subsystem/vote/SSvote return vote return 0 -/datum/subsystem/vote/proc/initiate_vote(vote_type, initiator_key) +/datum/controller/subsystem/vote/proc/initiate_vote(vote_type, initiator_key) if(!mode) if(started_time) var/next_allowed_time = (started_time + config.vote_delay) if(mode) - usr << "There is already a vote in progress! please wait for it to finish." + to_chat(usr, "There is already a vote in progress! please wait for it to finish.") return 0 var/admin = FALSE @@ -174,7 +174,7 @@ var/datum/subsystem/vote/SSvote admin = TRUE if(next_allowed_time > world.time && !admin) - usr << "A vote was initiated recently, you must wait roughly [(next_allowed_time-world.time)/10] seconds before a new vote can be started!" + to_chat(usr, "A vote was initiated recently, you must wait roughly [(next_allowed_time-world.time)/10] seconds before a new vote can be started!") return 0 reset() @@ -184,8 +184,7 @@ var/datum/subsystem/vote/SSvote if("gamemode") choices.Add(config.votable_modes) if("roundtype") - choices.Add("secret") - choices.Add("extended") + choices.Add("secret","extended") if("custom") question = stripped_input(usr,"What is the vote for?") if(!question) @@ -204,7 +203,7 @@ var/datum/subsystem/vote/SSvote if(mode == "custom") text += "\n[question]" log_vote(text) - world << "\n[text]\nType vote or click here to place your votes.\nYou have [config.vote_period/10] seconds to vote." + to_chat(world, "\n[text]\nType vote or click here to place your votes.\nYou have [config.vote_period/10] seconds to vote.") time_remaining = round(config.vote_period/10) for(var/c in clients) var/client/C = c @@ -216,7 +215,7 @@ var/datum/subsystem/vote/SSvote return 1 return 0 -/datum/subsystem/vote/proc/interface(client/C) +/datum/controller/subsystem/vote/proc/interface(client/C) if(!C) return var/admin = 0 @@ -268,7 +267,7 @@ var/datum/subsystem/vote/SSvote return . -/datum/subsystem/vote/Topic(href,href_list[],hsrc) +/datum/controller/subsystem/vote/Topic(href,href_list[],hsrc) if(!usr || !usr.client) return //not necessary but meh...just in-case somebody does something stupid switch(href_list["vote"]) @@ -298,7 +297,7 @@ var/datum/subsystem/vote/SSvote submit_vote(round(text2num(href_list["vote"]))) usr.vote() -/datum/subsystem/vote/proc/remove_action_buttons() +/datum/controller/subsystem/vote/proc/remove_action_buttons() for(var/v in generated_actions) var/datum/action/vote/V = v if(!QDELETED(V)) diff --git a/code/controllers/subsystem/weather.dm b/code/controllers/subsystem/weather.dm index 3f6acab8cd..824ea9ad7e 100644 --- a/code/controllers/subsystem/weather.dm +++ b/code/controllers/subsystem/weather.dm @@ -1,7 +1,7 @@ //Used for all kinds of weather, ex. lavaland ash storms. -var/datum/subsystem/weather/SSweather -/datum/subsystem/weather +var/datum/controller/subsystem/weather/SSweather +/datum/controller/subsystem/weather name = "Weather" flags = SS_BACKGROUND wait = 10 @@ -9,10 +9,10 @@ var/datum/subsystem/weather/SSweather var/list/existing_weather = list() var/list/eligible_zlevels = list(ZLEVEL_LAVALAND) -/datum/subsystem/weather/New() +/datum/controller/subsystem/weather/New() NEW_SS_GLOBAL(SSweather) -/datum/subsystem/weather/fire() +/datum/controller/subsystem/weather/fire() for(var/V in processing) var/datum/weather/W = V if(W.aesthetic) @@ -31,13 +31,13 @@ var/datum/subsystem/weather/SSweather eligible_zlevels -= Z addtimer(CALLBACK(src, .proc/make_z_eligible, Z), rand(3000, 6000) + W.weather_duration_upper, TIMER_UNIQUE) //Around 5-10 minutes between weathers -/datum/subsystem/weather/Initialize(start_timeofday) +/datum/controller/subsystem/weather/Initialize(start_timeofday) ..() for(var/V in subtypesof(/datum/weather)) var/datum/weather/W = V new W //weather->New will handle adding itself to the list -/datum/subsystem/weather/proc/run_weather(weather_name, Z) +/datum/controller/subsystem/weather/proc/run_weather(weather_name, Z) if(!weather_name) return for(var/V in existing_weather) @@ -45,5 +45,5 @@ var/datum/subsystem/weather/SSweather if(W.name == weather_name && W.target_z == Z) W.telegraph() -/datum/subsystem/weather/proc/make_z_eligible(zlevel) +/datum/controller/subsystem/weather/proc/make_z_eligible(zlevel) eligible_zlevels |= zlevel diff --git a/code/datums/action.dm b/code/datums/action.dm index 78807e22d9..57ef56d873 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -345,7 +345,7 @@ owner.research_scanner++ else owner.research_scanner-- - owner << "[target] research scanner has been [active ? "activated" : "deactivated"]." + to_chat(owner, "[target] research scanner has been [active ? "activated" : "deactivated"].") return 1 /datum/action/item_action/toggle_research_scanner/Remove(mob/M) diff --git a/code/datums/ai_laws.dm b/code/datums/ai_laws.dm index d62d2a63cb..9abd4df45e 100644 --- a/code/datums/ai_laws.dm +++ b/code/datums/ai_laws.dm @@ -382,28 +382,28 @@ if (devillaws && devillaws.len) //Yes, devil laws go in FRONT of zeroth laws, as the devil must still obey it's ban/obligation. for(var/i in devillaws) - who << "666. [i]" + to_chat(who, "666. [i]") if (zeroth) - who << "0. [zeroth]" + to_chat(who, "0. [zeroth]") for (var/index = 1, index <= ion.len, index++) var/law = ion[index] var/num = ionnum() - who << "[num]. [law]" + to_chat(who, "[num]. [law]") var/number = 1 for (var/index = 1, index <= inherent.len, index++) var/law = inherent[index] if (length(law) > 0) - who << "[number]. [law]" + to_chat(who, "[number]. [law]") number++ for (var/index = 1, index <= supplied.len, index++) var/law = supplied[index] if (length(law) > 0) - who << "[number]. [law]" + to_chat(who, "[number]. [law]") number++ /datum/ai_laws/proc/clear_zeroth_law(force) //only removes zeroth from antag ai if force is 1 diff --git a/code/datums/antagonists/antag_datum.dm b/code/datums/antagonists/antag_datum.dm index 07109d242d..cdad092087 100644 --- a/code/datums/antagonists/antag_datum.dm +++ b/code/datums/antagonists/antag_datum.dm @@ -29,7 +29,7 @@ /datum/antagonist/proc/on_gain() //on initial gain of antag datum, do this. should only be called once per datum apply_innate_effects() if(!silent_update && some_flufftext) - owner << some_flufftext + to_chat(owner, some_flufftext) /datum/antagonist/proc/apply_innate_effects() //applies innate effects to the owner, may be called multiple times due to mind transferral, but should only be called once per mob //antag huds would go here if antag huds were less completely unworkable as-is diff --git a/code/datums/antagonists/datum_clockcult.dm b/code/datums/antagonists/datum_clockcult.dm index b66a8cbc11..9680a8602e 100644 --- a/code/datums/antagonists/datum_clockcult.dm +++ b/code/datums/antagonists/datum_clockcult.dm @@ -20,20 +20,20 @@ /datum/antagonist/clockcultist/give_to_body(mob/living/new_body) if(!silent_update) if(issilicon(new_body)) - new_body << "You are unable to compute this truth. Your vision glows a brilliant yellow, and all at once it comes to you. Ratvar, the Clockwork Justiciar, \ - lies in exile, derelict and forgotten in an unseen realm." + to_chat(new_body, "You are unable to compute this truth. Your vision glows a brilliant yellow, and all at once it comes to you. Ratvar, the Clockwork Justiciar, \ + lies in exile, derelict and forgotten in an unseen realm.") else - new_body << "[iscarbon(new_body) ? "Your mind is racing! Your body feels incredibly light! ":""]Your world glows a brilliant yellow! All at once it comes to you. \ - Ratvar, the Clockwork Justiciar, lies in exile, derelict and forgotten in an unseen realm." + to_chat(new_body, "[iscarbon(new_body) ? "Your mind is racing! Your body feels incredibly light! ":""]Your world glows a brilliant yellow! All at once it comes to you. \ + Ratvar, the Clockwork Justiciar, lies in exile, derelict and forgotten in an unseen realm.") . = ..() if(!silent_update && new_body) if(.) new_body.visible_message("[new_body]'s eyes glow a blazing yellow!") - new_body << "Assist your new companions in their righteous efforts. Your goal is theirs, and theirs yours. You serve the Clockwork Justiciar above all else. \ - Perform his every whim without hesitation." + to_chat(new_body, "Assist your new companions in their righteous efforts. Your goal is theirs, and theirs yours. You serve the Clockwork Justiciar above all else. \ + Perform his every whim without hesitation.") else new_body.visible_message("[new_body] seems to resist an unseen force!") - new_body << "And yet, you somehow push it all away." + to_chat(new_body, "And yet, you somehow push it all away.") /datum/antagonist/clockcultist/on_gain() if(ticker && ticker.mode && owner.mind) @@ -43,17 +43,17 @@ INVOKE_ASYNC(ticker.mode, /datum/game_mode.proc/replace_jobbaned_player, owner, ROLE_SERVANT_OF_RATVAR, ROLE_SERVANT_OF_RATVAR) if(owner.mind) owner.mind.special_role = "Servant of Ratvar" - owner.attack_log += "\[[time_stamp()]\] Has been converted to the cult of Ratvar!" + owner.log_message("Has been converted to the cult of Ratvar!", INDIVIDUAL_ATTACK_LOG) if(issilicon(owner)) var/mob/living/silicon/S = owner if(iscyborg(S) && !silent_update) - S << "You have been desynced from your master AI.\n\ - In addition, your onboard camera is no longer active and you have gained additional equipment, including a limited clockwork slab." + to_chat(S, "You have been desynced from your master AI.\n\ + In addition, your onboard camera is no longer active and you have gained additional equipment, including a limited clockwork slab.") if(isAI(S)) - S << "You are able to use your cameras to listen in on conversations." - S << "You can communicate with other servants by using the Hierophant Network action button in the upper left." + to_chat(S, "You are able to use your cameras to listen in on conversations.") + to_chat(S, "You can communicate with other servants by using the Hierophant Network action button in the upper left.") else if(isbrain(owner) || isclockmob(owner)) - owner << "You can communicate with other servants by using the Hierophant Network action button in the upper left." + to_chat(owner, "You can communicate with other servants by using the Hierophant Network action button in the upper left.") ..() if(istype(ticker.mode, /datum/game_mode/clockwork_cult)) var/datum/game_mode/clockwork_cult/C = ticker.mode @@ -89,7 +89,7 @@ R.visible_message("[R]'s eyes glow a blazing yellow!", \ "Assist your new companions in their righteous efforts. Your goal is theirs, and theirs yours. You serve the Clockwork Justiciar above all else. Perform his every \ whim without hesitation.") - R << "Your onboard camera is no longer active and you have gained additional equipment, including a limited clockwork slab." + to_chat(R, "Your onboard camera is no longer active and you have gained additional equipment, including a limited clockwork slab.") add_servant_of_ratvar(R, TRUE) S.laws = new/datum/ai_laws/ratvar S.laws.associate(S) @@ -154,7 +154,7 @@ if(owner.mind) owner.mind.wipe_memory() owner.mind.special_role = null - owner.attack_log += "\[[time_stamp()]\] Has renounced the cult of Ratvar!" + owner.log_message("Has renounced the cult of Ratvar!", INDIVIDUAL_ATTACK_LOG) if(iscyborg(owner)) - owner << "Despite your freedom from Ratvar's influence, you are still irreparably damaged and no longer possess certain functions such as AI linking." + to_chat(owner, "Despite your freedom from Ratvar's influence, you are still irreparably damaged and no longer possess certain functions such as AI linking.") ..() diff --git a/code/datums/antagonists/datum_cult.dm b/code/datums/antagonists/datum_cult.dm index b49cb41c78..031de6776b 100644 --- a/code/datums/antagonists/datum_cult.dm +++ b/code/datums/antagonists/datum_cult.dm @@ -23,7 +23,7 @@ INVOKE_ASYNC(ticker.mode, /datum/game_mode.proc/replace_jobbaned_player, owner, ROLE_CULTIST, ROLE_CULTIST) if(owner.mind) owner.mind.special_role = "Cultist" - owner.attack_log += "\[[time_stamp()]\] Has been converted to the cult of Nar'Sie!" + owner.log_message("Has been converted to the cult of Nar'Sie!", INDIVIDUAL_ATTACK_LOG) ..() /datum/antagonist/cultist/apply_innate_effects() @@ -43,8 +43,8 @@ if(ticker && ticker.mode) ticker.mode.cult -= owner.mind ticker.mode.update_cult_icons_removed(owner.mind) - owner << "An unfamiliar white light flashes through your mind, cleansing the taint of the Dark One and all your memories as its servant." - owner.attack_log += "\[[time_stamp()]\] Has renounced the cult of Nar'Sie!" + to_chat(owner, "An unfamiliar white light flashes through your mind, cleansing the taint of the Dark One and all your memories as its servant.") + owner.log_message("Has renounced the cult of Nar'Sie!", INDIVIDUAL_ATTACK_LOG) if(!silent_update) owner.visible_message("[owner] looks like [owner.p_they()] just reverted to their old faith!") ..() diff --git a/code/datums/browser.dm b/code/datums/browser.dm index f56ff05038..6b44109c9c 100644 --- a/code/datums/browser.dm +++ b/code/datums/browser.dm @@ -249,7 +249,7 @@ winset(user, windowid, "on-close=\".windowclose [param]\"") - //world << "OnClose [user]: [windowid] : ["on-close=\".windowclose [param]\""]" + //to_chat(world, "OnClose [user]: [windowid] : ["on-close=\".windowclose [param]\""]") // the on-close client verb @@ -261,12 +261,12 @@ set hidden = 1 // hide this verb from the user's panel set name = ".windowclose" // no autocomplete on cmd line - //world << "windowclose: [atomref]" + //to_chat(world, "windowclose: [atomref]") if(atomref!="null") // if passed a real atomref var/hsrc = locate(atomref) // find the reffed atom var/href = "close=1" if(hsrc) - //world << "[src] Topic [href] [hsrc]" + //to_chat(world, "[src] Topic [href] [hsrc]") usr = src.mob src.Topic(href, params2list(href), hsrc) // this will direct to the atom's return // Topic() proc via client.Topic() @@ -274,6 +274,6 @@ // no atomref specified (or not found) // so just reset the user mob's machine var if(src && src.mob) - //world << "[src] was [src.mob.machine], setting to null" + //to_chat(world, "[src] was [src.mob.machine], setting to null") src.mob.unset_machine() return diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 6b498658ae..86da867db3 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -16,6 +16,17 @@ name = "record" var/list/fields = list() +/datum/data/record/Destroy() + if(src in data_core.medical) + data_core.medical -= src + if(src in data_core.security) + data_core.security -= src + if(src in data_core.general) + data_core.general -= src + if(src in data_core.locked) + data_core.locked -= src + . = ..() + /datum/data/crime name = "crime" var/crimeName = "" @@ -66,8 +77,10 @@ return /datum/datacore/proc/manifest() - for(var/mob/living/carbon/human/H in player_list) - manifest_inject(H) + for(var/mob/dead/new_player/N in player_list) + if(ishuman(N.new_character)) + manifest_inject(N.new_character, N.client) + CHECK_TICK /datum/datacore/proc/manifest_modify(name, assignment) var/datum/data/record/foundrecord = find_record("name", name, data_core.general) @@ -183,7 +196,7 @@ var/record_id_num = 1001 -/datum/datacore/proc/manifest_inject(mob/living/carbon/human/H) +/datum/datacore/proc/manifest_inject(mob/living/carbon/human/H, client/C) if(H.mind && (H.mind.assigned_role != H.mind.special_role)) var/assignment if(H.mind.assigned_role) @@ -194,7 +207,9 @@ var/record_id_num = 1001 assignment = "Unassigned" var/id = num2hex(record_id_num++,6) - var/image = get_id_photo(H) + if(!C) + C = H.client + var/image = get_id_photo(H, C) var/obj/item/weapon/photo/photo_front = new() var/obj/item/weapon/photo/photo_side = new() photo_front.photocreate(null, icon(image, dir = SOUTH)) @@ -262,7 +277,11 @@ var/record_id_num = 1001 locked += L return -/datum/datacore/proc/get_id_photo(mob/living/carbon/human/H) +/datum/datacore/proc/get_id_photo(mob/living/carbon/human/H, client/C) var/datum/job/J = SSjob.GetJob(H.mind.assigned_role) - var/datum/preferences/P = H.client.prefs + var/datum/preferences/P + if(!C) + C = H.client + if(C) + P = C.prefs return get_flat_human_icon(null,J.outfit,P) diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm index eba591ac50..a4c5c46ef1 100644 --- a/code/datums/datumvars.dm +++ b/code/datums/datumvars.dm @@ -37,7 +37,7 @@ var/static/cookieoffset = rand(1, 9999) //to force cookies to reset after the round. if(!usr.client || !usr.client.holder) - usr << "You need to be an administrator to access this." + to_chat(usr, "You need to be an administrator to access this.") return if(!D) @@ -80,7 +80,7 @@ if(A.dir) atomsnowflake += "
<< [dir2text(A.dir)] >>" var/mob/living/M = A - //citadel code + //citadel arousal code atomsnowflake += {"
[M.ckey ? M.ckey : "No ckey"] / [M.real_name ? M.real_name : "No real name"]
@@ -484,7 +484,7 @@ var/mob/M = locate(href_list["mob_player_panel"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return src.holder.show_player_panel(M) @@ -496,7 +496,7 @@ var/mob/M = locate(href_list["godmode"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return src.cmd_admin_godmode(M) @@ -508,7 +508,7 @@ var/datum/D = locate(href_list["mark_object"]) if(!istype(D)) - usr << "This can only be done to instances of type /datum" + to_chat(usr, "This can only be done to instances of type /datum") return src.holder.marked_datum = D @@ -529,7 +529,7 @@ var/mob/M = locate(href_list["regenerateicons"]) if(!ismob(M)) - usr << "This can only be done to instances of type /mob" + to_chat(usr, "This can only be done to instances of type /mob") return M.regenerate_icons() @@ -546,7 +546,7 @@ var/mob/M = locate(href_list["rename"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return var/new_name = stripped_input(usr,"What would you like to name this mob?","Input a name",M.real_name,MAX_NAME_LEN) @@ -563,7 +563,7 @@ var/D = locate(href_list["datumedit"]) if(!istype(D,/datum)) - usr << "This can only be used on datums" + to_chat(usr, "This can only be used on datums") return modify_variables(D, href_list["varnameedit"], 1) @@ -574,7 +574,7 @@ var/D = locate(href_list["datumchange"]) if(!istype(D,/datum)) - usr << "This can only be used on datums" + to_chat(usr, "This can only be used on datums") return modify_variables(D, href_list["varnamechange"], 0) @@ -585,7 +585,7 @@ var/datum/D = locate(href_list["datummass"]) if(!istype(D)) - usr << "This can only be used on instances of type /datum" + to_chat(usr, "This can only be used on instances of type /datum") return cmd_mass_modify_object_variables(D, href_list["varnamemass"]) @@ -597,7 +597,7 @@ var/list/L = locate(href_list["listedit"]) if (!istype(L)) - usr << "This can only be used on instances of type /list" + to_chat(usr, "This can only be used on instances of type /list") return mod_list(L, null, "list", "contents", index, autodetect_class = TRUE) @@ -609,7 +609,7 @@ var/list/L = locate(href_list["listchange"]) if (!istype(L)) - usr << "This can only be used on instances of type /list" + to_chat(usr, "This can only be used on instances of type /list") return mod_list(L, null, "list", "contents", index, autodetect_class = FALSE) @@ -621,7 +621,7 @@ var/list/L = locate(href_list["listremove"]) if (!istype(L)) - usr << "This can only be used on instances of type /list" + to_chat(usr, "This can only be used on instances of type /list") return var/variable = L[index] @@ -636,7 +636,7 @@ else if(href_list["listadd"]) var/list/L = locate(href_list["listadd"]) if (!istype(L)) - usr << "This can only be used on instances of type /list" + to_chat(usr, "This can only be used on instances of type /list") return mod_list_add(L, null, "list", "contents") @@ -644,7 +644,7 @@ else if(href_list["listdupes"]) var/list/L = locate(href_list["listdupes"]) if (!istype(L)) - usr << "This can only be used on instances of type /list" + to_chat(usr, "This can only be used on instances of type /list") return uniqueList_inplace(L) @@ -655,7 +655,7 @@ else if(href_list["listnulls"]) var/list/L = locate(href_list["listnulls"]) if (!istype(L)) - usr << "This can only be used on instances of type /list" + to_chat(usr, "This can only be used on instances of type /list") return listclearnulls(L) @@ -666,7 +666,7 @@ else if(href_list["listlen"]) var/list/L = locate(href_list["listlen"]) if (!istype(L)) - usr << "This can only be used on instances of type /list" + to_chat(usr, "This can only be used on instances of type /list") return var/value = vv_get_value(VV_NUM) if (value["class"] != VV_NUM) @@ -680,7 +680,7 @@ else if(href_list["listshuffle"]) var/list/L = locate(href_list["listshuffle"]) if (!istype(L)) - usr << "This can only be used on instances of type /list" + to_chat(usr, "This can only be used on instances of type /list") return shuffle_inplace(L) @@ -694,7 +694,7 @@ var/mob/M = locate(href_list["give_spell"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return src.give_spell(M) @@ -706,7 +706,7 @@ var/mob/M = locate(href_list["remove_spell"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return remove_spell(M) @@ -718,7 +718,7 @@ var/mob/M = locate(href_list["give_disease"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return src.give_disease(M) @@ -730,7 +730,7 @@ var/mob/M = locate(href_list["ninja"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return src.cmd_admin_ninjafy(M) @@ -742,7 +742,7 @@ var/mob/M = locate(href_list["gib"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return src.cmd_admin_gib(M) @@ -753,7 +753,7 @@ var/mob/M = locate(href_list["build_mode"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return togglebuildmode(M) @@ -765,7 +765,7 @@ var/mob/M = locate(href_list["drop_everything"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return if(usr.client) @@ -777,7 +777,7 @@ var/mob/M = locate(href_list["direct_control"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return if(usr.client) @@ -789,7 +789,7 @@ var/mob/M = locate(href_list["offer_control"]) if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return offer_control(M) @@ -799,7 +799,7 @@ var/obj/O = locate(href_list["delall"]) if(!isobj(O)) - usr << "This can only be used on instances of type /obj" + to_chat(usr, "This can only be used on instances of type /obj") return var/action_type = alert("Strict type ([O.type]) or type and all subtypes?",,"Strict type","Type and subtypes","Cancel") @@ -822,7 +822,7 @@ qdel(Obj) CHECK_TICK if(!i) - usr << "No objects of this type exist" + to_chat(usr, "No objects of this type exist") return log_admin("[key_name(usr)] deleted all objects of type [O_type] ([i] objects deleted) ") message_admins("[key_name(usr)] deleted all objects of type [O_type] ([i] objects deleted) ") @@ -834,7 +834,7 @@ qdel(Obj) CHECK_TICK if(!i) - usr << "No objects of this type exist" + to_chat(usr, "No objects of this type exist") return log_admin("[key_name(usr)] deleted all objects of type or subtype of [O_type] ([i] objects deleted) ") message_admins("[key_name(usr)] deleted all objects of type or subtype of [O_type] ([i] objects deleted) ") @@ -864,7 +864,7 @@ if(ID == chosen_id) valid_id = 1 if(!valid_id) - usr << "A reagent with that ID doesn't exist!" + to_chat(usr, "A reagent with that ID doesn't exist!") if("Choose ID") chosen_id = input(usr, "Choose a reagent to add.", "Choose a reagent.") as null|anything in reagent_options if(chosen_id) @@ -882,7 +882,7 @@ var/atom/A = locate(href_list["explode"]) if(!isobj(A) && !ismob(A) && !isturf(A)) - usr << "This can only be done to instances of type /obj, /mob and /turf" + to_chat(usr, "This can only be done to instances of type /obj, /mob and /turf") return src.cmd_admin_explosion(A) @@ -894,7 +894,7 @@ var/atom/A = locate(href_list["emp"]) if(!isobj(A) && !ismob(A) && !isturf(A)) - usr << "This can only be done to instances of type /obj, /mob and /turf" + to_chat(usr, "This can only be done to instances of type /obj, /mob and /turf") return src.cmd_admin_emp(A) @@ -906,7 +906,7 @@ var/atom/A = locate(href_list["rotatedatum"]) if(!istype(A)) - usr << "This can only be done to instances of type /atom" + to_chat(usr, "This can only be done to instances of type /atom") return switch(href_list["rotatedir"]) @@ -922,7 +922,7 @@ var/mob/living/carbon/C = locate(href_list["editorgans"]) if(!istype(C)) - usr << "This can only be done to instances of type /mob/living/carbon" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon") return manipulate_organs(C) @@ -934,13 +934,13 @@ var/mob/living/carbon/monkey/Mo = locate(href_list["makehuman"]) if(!istype(Mo)) - usr << "This can only be done to instances of type /mob/living/carbon/monkey" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon/monkey") return if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return if(!Mo) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return holder.Topic(href, list("humanone"=href_list["makehuman"])) @@ -950,13 +950,13 @@ var/mob/living/carbon/human/H = locate(href_list["makemonkey"]) if(!istype(H)) - usr << "This can only be done to instances of type /mob/living/carbon/human" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human") return if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return if(!H) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return holder.Topic(href, list("monkeyone"=href_list["makemonkey"])) @@ -966,13 +966,13 @@ var/mob/living/carbon/human/H = locate(href_list["makerobot"]) if(!istype(H)) - usr << "This can only be done to instances of type /mob/living/carbon/human" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human") return if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return if(!H) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return holder.Topic(href, list("makerobot"=href_list["makerobot"])) @@ -982,13 +982,13 @@ var/mob/living/carbon/human/H = locate(href_list["makealien"]) if(!istype(H)) - usr << "This can only be done to instances of type /mob/living/carbon/human" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human") return if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return if(!H) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return holder.Topic(href, list("makealien"=href_list["makealien"])) @@ -998,13 +998,13 @@ var/mob/living/carbon/human/H = locate(href_list["makeslime"]) if(!istype(H)) - usr << "This can only be done to instances of type /mob/living/carbon/human" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human") return if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return if(!H) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return holder.Topic(href, list("makeslime"=href_list["makeslime"])) @@ -1014,13 +1014,13 @@ var/mob/living/carbon/H = locate(href_list["makeai"]) if(!istype(H)) - usr << "This can only be done to instances of type /mob/living/carbon" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon") return if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return if(!H) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return holder.Topic(href, list("makeai"=href_list["makeai"])) @@ -1030,13 +1030,13 @@ var/mob/living/carbon/human/H = locate(href_list["setspecies"]) if(!istype(H)) - usr << "This can only be done to instances of type /mob/living/carbon/human" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human") return var/result = input(usr, "Please choose a new species","Species") as null|anything in species_list if(!H) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return if(result) @@ -1049,7 +1049,7 @@ var/mob/living/carbon/C = locate(href_list["editbodypart"]) if(!istype(C)) - usr << "This can only be done to instances of type /mob/living/carbon" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon") return var/edit_action = input(usr, "What would you like to do?","Modify Body Part") as null|anything in list("add","remove", "augment") @@ -1061,7 +1061,7 @@ 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) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return if(result) @@ -1071,21 +1071,21 @@ if(BP) BP.drop_limb() else - usr << "[C] doesn't have such bodypart." + to_chat(usr, "[C] doesn't have such bodypart.") if("add") if(BP) - usr << "[C] already has such bodypart." + to_chat(usr, "[C] already has such bodypart.") else if(!C.regenerate_limb(result)) - usr << "[C] cannot have such bodypart." + to_chat(usr, "[C] cannot have such bodypart.") if("augment") if(ishuman(C)) if(BP) BP.change_bodypart_status(BODYPART_ROBOTIC, 1) else - usr << "[C] doesn't have such bodypart." + to_chat(usr, "[C] doesn't have such bodypart.") else - usr << "Only humans can be augmented." + to_chat(usr, "Only humans can be augmented.") @@ -1095,25 +1095,24 @@ var/mob/living/carbon/human/H = locate(href_list["purrbation"]) if(!istype(H)) - usr << "This can only be done to instances of type /mob/living/carbon/human" + to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human") return if(!ishumanbasic(H)) - usr << "This can only be done to the basic human species \ - at the moment." + to_chat(usr, "This can only be done to the basic human species at the moment.") return if(!H) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return var/success = purrbation_toggle(H) if(success) - usr << "Put [H] on purrbation." + to_chat(usr, "Put [H] on purrbation.") log_admin("[key_name(usr)] has put [key_name(H)] on purrbation.") message_admins("[key_name(usr)] has put [key_name(H)] on purrbation.") else - usr << "Removed [H] from purrbation." + to_chat(usr, "Removed [H] from purrbation.") log_admin("[key_name(usr)] has removed [key_name(H)] from purrbation.") message_admins("[key_name(usr)] has removed [key_name(H)] from purrbation.") @@ -1130,7 +1129,7 @@ var/amount = input("Deal how much damage to mob? (Negative values here heal)","Adjust [Text]loss",0) as num if(!L) - usr << "Mob doesn't exist anymore" + to_chat(usr, "Mob doesn't exist anymore") return switch(Text) @@ -1151,7 +1150,7 @@ if("arousal") L.adjustArousalLoss(amount) else - usr << "You caused an error. DEBUG: Text:[Text] Mob:[L]" + to_chat(usr, "You caused an error. DEBUG: Text:[Text] Mob:[L]") return if(amount != 0) diff --git a/code/datums/diseases/advance/advance.dm b/code/datums/diseases/advance/advance.dm index 15111805cc..4da26d62e6 100644 --- a/code/datums/diseases/advance/advance.dm +++ b/code/datums/diseases/advance/advance.dm @@ -163,7 +163,7 @@ var/list/advance_cures = list( return generated /datum/disease/advance/proc/Refresh(new_name = 0) - //world << "[src.name] \ref[src] - REFRESH!" + //to_chat(world, "[src.name] \ref[src] - REFRESH!") GenerateProperties() AssignProperties() id = null @@ -255,7 +255,7 @@ var/list/advance_cures = list( /datum/disease/advance/proc/GenerateCure() if(properties && properties.len) var/res = Clamp(properties["resistance"] - (symptoms.len / 2), 1, advance_cures.len) - //world << "Res = [res]" + //to_chat(world, "Res = [res]") cures = list(advance_cures[res]) // Get the cure name from the cure_id @@ -327,7 +327,7 @@ var/list/advance_cures = list( // Mix a list of advance diseases and return the mixed result. /proc/Advance_Mix(var/list/D_list) - //world << "Mixing!!!!" + //to_chat(world, "Mixing!!!!") var/list/diseases = list() @@ -352,7 +352,7 @@ var/list/advance_cures = list( D2.Mix(D1) // Should be only 1 entry left, but if not let's only return a single entry - //world << "END MIXING!!!!!" + //to_chat(world, "END MIXING!!!!!") var/datum/disease/advance/to_return = pick(diseases) to_return.Refresh(1) return to_return @@ -421,7 +421,7 @@ var/list/advance_cures = list( /mob/verb/test() for(var/datum/disease/D in SSdisease.processing) - src << "[D.name] - [D.holder]" + to_chat(src, "[D.name] - [D.holder]") */ diff --git a/code/datums/diseases/advance/symptoms/beard.dm b/code/datums/diseases/advance/symptoms/beard.dm index a0dfa993d4..8698787dd5 100644 --- a/code/datums/diseases/advance/symptoms/beard.dm +++ b/code/datums/diseases/advance/symptoms/beard.dm @@ -32,17 +32,17 @@ BONUS var/mob/living/carbon/human/H = M switch(A.stage) if(1, 2) - H << "Your chin itches." + to_chat(H, "Your chin itches.") if(H.facial_hair_style == "Shaved") H.facial_hair_style = "Jensen Beard" H.update_hair() if(3, 4) - H << "You feel tough." + 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 - H << "You feel manly!" + 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() diff --git a/code/datums/diseases/advance/symptoms/choking.dm b/code/datums/diseases/advance/symptoms/choking.dm index d22dc68cf9..492657f97c 100644 --- a/code/datums/diseases/advance/symptoms/choking.dm +++ b/code/datums/diseases/advance/symptoms/choking.dm @@ -31,13 +31,13 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(1, 2) - M << "[pick("You're having difficulty breathing.", "Your breathing becomes heavy.")]" + to_chat(M, "[pick("You're having difficulty breathing.", "Your breathing becomes heavy.")]") if(3, 4) - M << "[pick("Your windpipe feels like a straw.", "Your breathing becomes tremendously difficult.")]" + to_chat(M, "[pick("Your windpipe feels like a straw.", "Your breathing becomes tremendously difficult.")]") Choke_stage_3_4(M, A) M.emote("gasp") else - M << "[pick("You're choking!", "You can't breathe!")]" + to_chat(M, "[pick("You're choking!", "You can't breathe!")]") Choke(M, A) M.emote("gasp") return @@ -85,11 +85,11 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(3, 4) - M << "[pick("Your windpipe feels thin.", "Your lungs feel small.")]" + to_chat(M, "[pick("Your windpipe feels thin.", "Your lungs feel small.")]") Asphyxiate_stage_3_4(M, A) M.emote("gasp") else - M << "[pick("Your lungs hurt!", "It hurts to breathe!")]" + to_chat(M, "[pick("Your lungs hurt!", "It hurts to breathe!")]") Asphyxiate(M, A) M.emote("gasp") if(M.getOxyLoss() >= 120) diff --git a/code/datums/diseases/advance/symptoms/confusion.dm b/code/datums/diseases/advance/symptoms/confusion.dm index c9de75d877..8f388c45ed 100644 --- a/code/datums/diseases/advance/symptoms/confusion.dm +++ b/code/datums/diseases/advance/symptoms/confusion.dm @@ -32,9 +32,9 @@ Bonus var/mob/living/carbon/M = A.affected_mob switch(A.stage) if(1, 2, 3, 4) - M << "[pick("Your head hurts.", "Your mind blanks for a moment.")]" + to_chat(M, "[pick("Your head hurts.", "Your mind blanks for a moment.")]") else - M << "You can't think straight!" + to_chat(M, "You can't think straight!") M.confused = min(100, M.confused + 8) return diff --git a/code/datums/diseases/advance/symptoms/cough.dm b/code/datums/diseases/advance/symptoms/cough.dm index 9675e23ba7..13fdb5ea1b 100644 --- a/code/datums/diseases/advance/symptoms/cough.dm +++ b/code/datums/diseases/advance/symptoms/cough.dm @@ -31,7 +31,7 @@ BONUS var/mob/living/M = A.affected_mob switch(A.stage) if(1, 2, 3) - M << "[pick("You swallow excess mucus.", "You lightly cough.")]" + to_chat(M, "[pick("You swallow excess mucus.", "You lightly cough.")]") else M.emote("cough") var/obj/item/I = M.get_active_held_item() diff --git a/code/datums/diseases/advance/symptoms/deafness.dm b/code/datums/diseases/advance/symptoms/deafness.dm index 83c730cd47..f970ebe04c 100644 --- a/code/datums/diseases/advance/symptoms/deafness.dm +++ b/code/datums/diseases/advance/symptoms/deafness.dm @@ -31,14 +31,14 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(3, 4) - M << "[pick("You hear a ringing in your ear.", "Your ears pop.")]" + to_chat(M, "[pick("You hear a ringing in your ear.", "Your ears pop.")]") if(5) if(!(M.ear_deaf)) - M << "Your ears pop and begin ringing loudly!" + to_chat(M, "Your ears pop and begin ringing loudly!") M.setEarDamage(-1,INFINITY) //Shall be enough addtimer(CALLBACK(src, .proc/Undeafen, M), 200) /datum/symptom/deafness/proc/Undeafen(mob/living/M) if(M) - M << "The ringing in your ears fades..." + to_chat(M, "The ringing in your ears fades...") M.setEarDamage(-1,0) \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/dizzy.dm b/code/datums/diseases/advance/symptoms/dizzy.dm index b81b9b8a4e..c594298b11 100644 --- a/code/datums/diseases/advance/symptoms/dizzy.dm +++ b/code/datums/diseases/advance/symptoms/dizzy.dm @@ -31,8 +31,8 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(1, 2, 3, 4) - M << "[pick("You feel dizzy.", "Your head spins.")]" + to_chat(M, "[pick("You feel dizzy.", "Your head spins.")]") else - M << "A wave of dizziness washes over you!" + to_chat(M, "A wave of dizziness washes over you!") M.Dizzy(5) return \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/fever.dm b/code/datums/diseases/advance/symptoms/fever.dm index 47136845ef..53cc3b6c0d 100644 --- a/code/datums/diseases/advance/symptoms/fever.dm +++ b/code/datums/diseases/advance/symptoms/fever.dm @@ -29,7 +29,7 @@ Bonus ..() if(prob(SYMPTOM_ACTIVATION_PROB)) var/mob/living/carbon/M = A.affected_mob - M << "[pick("You feel hot.", "You feel like you're burning.")]" + to_chat(M, "[pick("You feel hot.", "You feel like you're burning.")]") if(M.bodytemperature < BODYTEMP_HEAT_DAMAGE_LIMIT) Heat(M, A) diff --git a/code/datums/diseases/advance/symptoms/fire.dm b/code/datums/diseases/advance/symptoms/fire.dm index 54078fd256..949d2f5f0f 100644 --- a/code/datums/diseases/advance/symptoms/fire.dm +++ b/code/datums/diseases/advance/symptoms/fire.dm @@ -31,16 +31,16 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(3) - M << "[pick("You feel hot.", "You hear a crackling noise.", "You smell smoke.")]" + to_chat(M, "[pick("You feel hot.", "You hear a crackling noise.", "You smell smoke.")]") if(4) Firestacks_stage_4(M, A) M.IgniteMob() - M << "Your skin bursts into flames!" + to_chat(M, "Your skin bursts into flames!") M.emote("scream") if(5) Firestacks_stage_5(M, A) M.IgniteMob() - M << "Your skin erupts into an inferno!" + to_chat(M, "Your skin erupts into an inferno!") M.emote("scream") return @@ -90,16 +90,16 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(3) - M << "[pick("Your veins boil.", "You feel hot.", "You smell meat cooking.")]" + to_chat(M, "[pick("Your veins boil.", "You feel hot.", "You smell meat cooking.")]") if(4) Alkali_fire_stage_4(M, A) M.IgniteMob() - M << "Your sweat bursts into flames!" + to_chat(M, "Your sweat bursts into flames!") M.emote("scream") if(5) Alkali_fire_stage_5(M, A) M.IgniteMob() - M << "Your skin erupts into an inferno!" + to_chat(M, "Your skin erupts into an inferno!") M.emote("scream") if(M.fire_stacks < 0) M.visible_message("[M]'s sweat sizzles and pops on contact with water!") diff --git a/code/datums/diseases/advance/symptoms/flesh_eating.dm b/code/datums/diseases/advance/symptoms/flesh_eating.dm index 835d2f2e3a..a819560ee1 100644 --- a/code/datums/diseases/advance/symptoms/flesh_eating.dm +++ b/code/datums/diseases/advance/symptoms/flesh_eating.dm @@ -31,9 +31,9 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(2,3) - M << "[pick("You feel a sudden pain across your body.", "Drops of blood appear suddenly on your skin.")]" + to_chat(M, "[pick("You feel a sudden pain across your body.", "Drops of blood appear suddenly on your skin.")]") if(4,5) - M << "[pick("You cringe as a violent pain takes over your body.", "It feels like your body is eating itself inside out.", "IT HURTS.")]" + to_chat(M, "[pick("You cringe as a violent pain takes over your body.", "It feels like your body is eating itself inside out.", "IT HURTS.")]") Flesheat(M, A) return @@ -75,9 +75,9 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(2,3) - M << "[pick("You feel your body break apart.", "Your skin rubs off like dust.")]" + to_chat(M, "[pick("You feel your body break apart.", "Your skin rubs off like dust.")]") if(4,5) - M << "[pick("You feel your muscles weakening.", "Your skin begins detaching itself.", "You feel sandy.")]" + to_chat(M, "[pick("You feel your muscles weakening.", "Your skin begins detaching itself.", "You feel sandy.")]") Flesh_death(M, A) return diff --git a/code/datums/diseases/advance/symptoms/genetics.dm b/code/datums/diseases/advance/symptoms/genetics.dm index 2d0b613db5..ddabefa9cf 100644 --- a/code/datums/diseases/advance/symptoms/genetics.dm +++ b/code/datums/diseases/advance/symptoms/genetics.dm @@ -35,7 +35,7 @@ Bonus return switch(A.stage) if(4, 5) - C << "[pick("Your skin feels itchy.", "You feel light headed.")]" + to_chat(C, "[pick("Your skin feels itchy.", "You feel light headed.")]") C.dna.remove_mutation_group(possible_mutations) C.randmut(possible_mutations) return diff --git a/code/datums/diseases/advance/symptoms/hallucigen.dm b/code/datums/diseases/advance/symptoms/hallucigen.dm index 40850f871d..0c42101ea1 100644 --- a/code/datums/diseases/advance/symptoms/hallucigen.dm +++ b/code/datums/diseases/advance/symptoms/hallucigen.dm @@ -31,11 +31,11 @@ Bonus var/mob/living/carbon/M = A.affected_mob switch(A.stage) if(1, 2) - M << "[pick("Something appears in your peripheral vision, then winks out.", "You hear a faint whispher with no source.", "Your head aches.")]" + to_chat(M, "[pick("Something appears in your peripheral vision, then winks out.", "You hear a faint whispher with no source.", "Your head aches.")]") if(3, 4) - M << "[pick("Something is following you.", "You are being watched.", "You hear a whisper in your ear.", "Thumping footsteps slam toward you from nowhere.")]" + to_chat(M, "[pick("Something is following you.", "You are being watched.", "You hear a whisper in your ear.", "Thumping footsteps slam toward you from nowhere.")]") else - M << "[pick("Oh, your head...", "Your head pounds.", "They're everywhere! Run!", "Something in the shadows...")]" + to_chat(M, "[pick("Oh, your head...", "Your head pounds.", "They're everywhere! Run!", "Something in the shadows...")]") M.hallucination += 25 return diff --git a/code/datums/diseases/advance/symptoms/headache.dm b/code/datums/diseases/advance/symptoms/headache.dm index 38ac066fa0..526ab93836 100644 --- a/code/datums/diseases/advance/symptoms/headache.dm +++ b/code/datums/diseases/advance/symptoms/headache.dm @@ -30,5 +30,5 @@ BONUS ..() if(prob(SYMPTOM_ACTIVATION_PROB)) var/mob/living/M = A.affected_mob - M << "[pick("Your head hurts.", "Your head starts pounding.")]" + to_chat(M, "[pick("Your head hurts.", "Your head starts pounding.")]") return \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/itching.dm b/code/datums/diseases/advance/symptoms/itching.dm index e6f08f0882..8563520b09 100644 --- a/code/datums/diseases/advance/symptoms/itching.dm +++ b/code/datums/diseases/advance/symptoms/itching.dm @@ -30,5 +30,5 @@ BONUS ..() if(prob(SYMPTOM_ACTIVATION_PROB)) var/mob/living/M = A.affected_mob - M << "Your [pick("back", "arm", "leg", "elbow", "head")] itches." + to_chat(M, "Your [pick("back", "arm", "leg", "elbow", "head")] itches.") return \ No newline at end of file diff --git a/code/datums/diseases/advance/symptoms/oxygen.dm b/code/datums/diseases/advance/symptoms/oxygen.dm index ce17524130..99866a3544 100644 --- a/code/datums/diseases/advance/symptoms/oxygen.dm +++ b/code/datums/diseases/advance/symptoms/oxygen.dm @@ -34,5 +34,5 @@ Bonus M.losebreath -= 2 else if(prob(SYMPTOM_ACTIVATION_PROB * 3)) - M << "[pick("Your lungs feel great.", "You realize you haven't been breathing.", "You don't feel the need to breathe.")]" + to_chat(M, "[pick("Your lungs feel great.", "You realize you haven't been breathing.", "You don't feel the need to breathe.")]") return diff --git a/code/datums/diseases/advance/symptoms/sensory.dm b/code/datums/diseases/advance/symptoms/sensory.dm index 7536b11ca8..536184c766 100644 --- a/code/datums/diseases/advance/symptoms/sensory.dm +++ b/code/datums/diseases/advance/symptoms/sensory.dm @@ -87,19 +87,19 @@ Bonus if(prob(SYMPTOM_ACTIVATION_PROB)) switch(A.stage) if(1) - M << "You can't feel anything." + to_chat(M, "You can't feel anything.") if(2) - M << "You feel absolutely hammered." + to_chat(M, "You feel absolutely hammered.") if(prob(10)) sleepy_ticks += rand(10,14) if(3) M.reagents.add_reagent("ethanol",rand(5,7)) - M << "You try to focus on not dying." + to_chat(M, "You try to focus on not dying.") if(prob(15)) sleepy_ticks += rand(10,14) if(4) M.reagents.add_reagent("ethanol",rand(6,10)) - M << "u can count 2 potato!" + to_chat(M, "u can count 2 potato!") if(prob(20)) sleepy_ticks += rand(10,14) if(5) @@ -122,7 +122,7 @@ Bonus switch(sleepy) //Works like morphine if(11) - M << "You start to feel tired..." + to_chat(M, "You start to feel tired...") if(12 to 24) M.drowsyness += 1 if(24 to INFINITY) diff --git a/code/datums/diseases/advance/symptoms/shedding.dm b/code/datums/diseases/advance/symptoms/shedding.dm index 10df40853b..44c241a25f 100644 --- a/code/datums/diseases/advance/symptoms/shedding.dm +++ b/code/datums/diseases/advance/symptoms/shedding.dm @@ -28,17 +28,17 @@ BONUS ..() if(prob(SYMPTOM_ACTIVATION_PROB)) var/mob/living/M = A.affected_mob - M << "[pick("Your scalp itches.", "Your skin feels flakey.")]" + to_chat(M, "[pick("Your scalp itches.", "Your skin feels flakey.")]") if(ishuman(M)) var/mob/living/carbon/human/H = M switch(A.stage) if(3, 4) if(!(H.hair_style == "Bald") && !(H.hair_style == "Balding Hair")) - H << "Your hair starts to fall out in clumps..." + to_chat(H, "Your hair starts to fall out in clumps...") addtimer(CALLBACK(src, .proc/Shed, H, FALSE), 50) if(5) if(!(H.facial_hair_style == "Shaved") || !(H.hair_style == "Bald")) - H << "Your hair starts to fall out in clumps..." + to_chat(H, "Your hair starts to fall out in clumps...") addtimer(CALLBACK(src, .proc/Shed, H, TRUE), 50) /datum/symptom/shedding/proc/Shed(mob/living/carbon/human/H, fullbald) diff --git a/code/datums/diseases/advance/symptoms/shivering.dm b/code/datums/diseases/advance/symptoms/shivering.dm index 6925b1fb5b..a26a19de04 100644 --- a/code/datums/diseases/advance/symptoms/shivering.dm +++ b/code/datums/diseases/advance/symptoms/shivering.dm @@ -29,7 +29,7 @@ Bonus ..() if(prob(SYMPTOM_ACTIVATION_PROB)) var/mob/living/carbon/M = A.affected_mob - M << "[pick("You feel cold.", "You start shivering.")]" + to_chat(M, "[pick("You feel cold.", "You start shivering.")]") if(M.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT) Chill(M, A) return diff --git a/code/datums/diseases/advance/symptoms/viral.dm b/code/datums/diseases/advance/symptoms/viral.dm index 7c409f00d1..3f75ad5196 100644 --- a/code/datums/diseases/advance/symptoms/viral.dm +++ b/code/datums/diseases/advance/symptoms/viral.dm @@ -27,9 +27,9 @@ BONUS var/mob/living/M = A.affected_mob switch(A.stage) if(1) - M << "You feel off, but no different from before." + to_chat(M, "You feel off, but no different from before.") if(5) - M << "You feel better, but nothing interesting happens." + to_chat(M, "You feel better, but nothing interesting happens.") /* ////////////////////////////////////// @@ -60,9 +60,9 @@ BONUS var/mob/living/M = A.affected_mob switch(A.stage) if(1) - M << "You feel better, but no different from before." + to_chat(M, "You feel better, but no different from before.") if(5) - M << "You feel off, but nothing interesting happens." + to_chat(M, "You feel off, but nothing interesting happens.") /* ////////////////////////////////////// diff --git a/code/datums/diseases/advance/symptoms/vision.dm b/code/datums/diseases/advance/symptoms/vision.dm index d2f1dab5c7..2ef37efe0e 100644 --- a/code/datums/diseases/advance/symptoms/vision.dm +++ b/code/datums/diseases/advance/symptoms/vision.dm @@ -31,20 +31,20 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(1, 2) - M << "Your eyes itch." + to_chat(M, "Your eyes itch.") if(3, 4) - M << "Your eyes burn!" + to_chat(M, "Your eyes burn!") M.blur_eyes(10) M.adjust_eye_damage(1) else - M << "Your eyes burn horrificly!" + to_chat(M, "Your eyes burn horrificly!") M.blur_eyes(20) M.adjust_eye_damage(5) if(M.eye_damage >= 10) M.become_nearsighted() if(prob(M.eye_damage - 10 + 1)) if(M.become_blind()) - M << "You go blind!" + to_chat(M, "You go blind!") /* @@ -80,13 +80,13 @@ Bonus if(4, 5) //basically oculine if(M.disabilities & BLIND) if(prob(20)) - M << "Your vision slowly returns..." + to_chat(M, "Your vision slowly returns...") M.cure_blind() M.cure_nearsighted() M.blur_eyes(35) else if(M.disabilities & NEARSIGHT) - M << "The blackness in your peripheral vision fades." + to_chat(M, "The blackness in your peripheral vision fades.") M.cure_nearsighted() M.blur_eyes(10) @@ -97,5 +97,5 @@ Bonus M.adjust_eye_damage(-1) else if(prob(SYMPTOM_ACTIVATION_PROB * 3)) - M << "[pick("Your eyes feel great.", "You are now blinking manually.", "You don't feel the need to blink.")]" + to_chat(M, "[pick("Your eyes feel great.", "You are now blinking manually.", "You don't feel the need to blink.")]") return diff --git a/code/datums/diseases/advance/symptoms/voice_change.dm b/code/datums/diseases/advance/symptoms/voice_change.dm index 47299e9d35..2731612322 100644 --- a/code/datums/diseases/advance/symptoms/voice_change.dm +++ b/code/datums/diseases/advance/symptoms/voice_change.dm @@ -32,7 +32,7 @@ Bonus var/mob/living/carbon/M = A.affected_mob switch(A.stage) if(1, 2, 3, 4) - M << "[pick("Your throat hurts.", "You clear your throat.")]" + to_chat(M, "[pick("Your throat hurts.", "You clear your throat.")]") else if(ishuman(M)) var/mob/living/carbon/human/H = M diff --git a/code/datums/diseases/advance/symptoms/vomit.dm b/code/datums/diseases/advance/symptoms/vomit.dm index abd5df571a..f214c0755a 100644 --- a/code/datums/diseases/advance/symptoms/vomit.dm +++ b/code/datums/diseases/advance/symptoms/vomit.dm @@ -35,7 +35,7 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(1, 2, 3, 4) - M << "[pick("You feel nauseous.", "You feel like you're going to throw up!")]" + to_chat(M, "[pick("You feel nauseous.", "You feel like you're going to throw up!")]") else Vomit(M) diff --git a/code/datums/diseases/advance/symptoms/weakness.dm b/code/datums/diseases/advance/symptoms/weakness.dm index b0769680dc..91b18c1eab 100644 --- a/code/datums/diseases/advance/symptoms/weakness.dm +++ b/code/datums/diseases/advance/symptoms/weakness.dm @@ -31,12 +31,12 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(1, 2) - M << "[pick("You feel weak.", "You feel lazy.")]" + to_chat(M, "[pick("You feel weak.", "You feel lazy.")]") if(3, 4) - M << "[pick("You feel very frail.", "You think you might faint.")]" + to_chat(M, "[pick("You feel very frail.", "You think you might faint.")]") M.adjustStaminaLoss(15) else - M << "[pick("You feel tremendously weak!", "Your body trembles as exhaustion creeps over you.")]" + to_chat(M, "[pick("You feel tremendously weak!", "Your body trembles as exhaustion creeps over you.")]") M.adjustStaminaLoss(30) if(M.getStaminaLoss() > 60 && !M.stat) M.visible_message("[M] faints!", "You swoon and faint...") diff --git a/code/datums/diseases/advance/symptoms/weight.dm b/code/datums/diseases/advance/symptoms/weight.dm index 8a5e3b2dd7..399a67675e 100644 --- a/code/datums/diseases/advance/symptoms/weight.dm +++ b/code/datums/diseases/advance/symptoms/weight.dm @@ -31,7 +31,7 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(1, 2, 3, 4) - M << "[pick("You feel blubbery.", "Your stomach hurts.")]" + to_chat(M, "[pick("You feel blubbery.", "Your stomach hurts.")]") else M.overeatduration = min(M.overeatduration + 100, 600) M.nutrition = min(M.nutrition + 100, NUTRITION_LEVEL_FULL) @@ -73,9 +73,9 @@ Bonus var/mob/living/M = A.affected_mob switch(A.stage) if(1, 2, 3, 4) - M << "[pick("You feel hungry.", "You crave for food.")]" + to_chat(M, "[pick("You feel hungry.", "You crave for food.")]") else - M << "[pick("So hungry...", "You'd kill someone for a bite of food...", "Hunger cramps seize you...")]" + to_chat(M, "[pick("So hungry...", "You'd kill someone for a bite of food...", "Hunger cramps seize you...")]") M.overeatduration = max(M.overeatduration - 100, 0) M.nutrition = max(M.nutrition - 100, 0) diff --git a/code/datums/diseases/advance/symptoms/youth.dm b/code/datums/diseases/advance/symptoms/youth.dm index 731350de1f..794b15bb91 100644 --- a/code/datums/diseases/advance/symptoms/youth.dm +++ b/code/datums/diseases/advance/symptoms/youth.dm @@ -34,22 +34,22 @@ BONUS if(1) if(H.age > 41) H.age = 41 - H << "You haven't had this much energy in years!" + to_chat(H, "You haven't had this much energy in years!") if(2) if(H.age > 36) H.age = 36 - H << "You're suddenly in a good mood." + to_chat(H, "You're suddenly in a good mood.") if(3) if(H.age > 31) H.age = 31 - H << "You begin to feel more lithe." + to_chat(H, "You begin to feel more lithe.") if(4) if(H.age > 26) H.age = 26 - H << "You feel reinvigorated." + to_chat(H, "You feel reinvigorated.") if(5) if(H.age > 21) H.age = 21 - H << "You feel like you can take on the world!" + to_chat(H, "You feel like you can take on the world!") return \ No newline at end of file diff --git a/code/datums/diseases/anxiety.dm b/code/datums/diseases/anxiety.dm index 315a01aa5d..2db4d1082e 100644 --- a/code/datums/diseases/anxiety.dm +++ b/code/datums/diseases/anxiety.dm @@ -16,18 +16,18 @@ switch(stage) if(2) //also changes say, see say.dm if(prob(5)) - affected_mob << "You feel anxious." + to_chat(affected_mob, "You feel anxious.") if(3) if(prob(10)) - affected_mob << "Your stomach flutters." + to_chat(affected_mob, "Your stomach flutters.") if(prob(5)) - affected_mob << "You feel panicky." + to_chat(affected_mob, "You feel panicky.") if(prob(2)) - affected_mob << "You're overtaken with panic!" + to_chat(affected_mob, "You're overtaken with panic!") affected_mob.confused += (rand(2,3)) if(4) if(prob(10)) - affected_mob << "You feel butterflies in your stomach." + to_chat(affected_mob, "You feel butterflies in your stomach.") if(prob(5)) affected_mob.visible_message("[affected_mob] stumbles around in a panic.", \ "You have a panic attack!") diff --git a/code/datums/diseases/appendicitis.dm b/code/datums/diseases/appendicitis.dm index fde4a57fbc..051adfc3de 100644 --- a/code/datums/diseases/appendicitis.dm +++ b/code/datums/diseases/appendicitis.dm @@ -26,7 +26,7 @@ A.inflamed = 1 A.update_icon() if(prob(3)) - affected_mob << "You feel a stabbing pain in your abdomen!" + to_chat(affected_mob, "You feel a stabbing pain in your abdomen!") affected_mob.Stun(rand(2,3)) affected_mob.adjustToxLoss(1) if(3) diff --git a/code/datums/diseases/beesease.dm b/code/datums/diseases/beesease.dm index 4ca69a909e..7a12049fec 100644 --- a/code/datums/diseases/beesease.dm +++ b/code/datums/diseases/beesease.dm @@ -16,12 +16,12 @@ switch(stage) if(2) //also changes say, see say.dm if(prob(2)) - affected_mob << "You taste honey in your mouth." + to_chat(affected_mob, "You taste honey in your mouth.") if(3) if(prob(10)) - affected_mob << "Your stomach rumbles." + to_chat(affected_mob, "Your stomach rumbles.") if(prob(2)) - affected_mob << "Your stomach stings painfully." + to_chat(affected_mob, "Your stomach stings painfully.") if(prob(20)) affected_mob.adjustToxLoss(2) affected_mob.updatehealth() @@ -30,7 +30,7 @@ affected_mob.visible_message("[affected_mob] buzzes.", \ "Your stomach buzzes violently!") if(prob(5)) - affected_mob << "You feel something moving in your throat." + to_chat(affected_mob, "You feel something moving in your throat.") if(prob(1)) affected_mob.visible_message("[affected_mob] coughs up a swarm of bees!", \ "You cough up a swarm of bees!") diff --git a/code/datums/diseases/brainrot.dm b/code/datums/diseases/brainrot.dm index c8f9b0ed5b..cc1d70cad2 100644 --- a/code/datums/diseases/brainrot.dm +++ b/code/datums/diseases/brainrot.dm @@ -22,7 +22,7 @@ if(prob(2)) affected_mob.emote("yawn") if(prob(2)) - affected_mob << "You don't feel like yourself." + to_chat(affected_mob, "You don't feel like yourself.") if(prob(5)) affected_mob.adjustBrainLoss(1) affected_mob.updatehealth() @@ -35,7 +35,7 @@ affected_mob.adjustBrainLoss(2) affected_mob.updatehealth() if(prob(2)) - affected_mob << "Your try to remember something important...but can't." + to_chat(affected_mob, "Your try to remember something important...but can't.") if(4) if(prob(2)) @@ -46,9 +46,9 @@ affected_mob.adjustBrainLoss(3) affected_mob.updatehealth() if(prob(2)) - affected_mob << "Strange buzzing fills your head, removing all thoughts." + to_chat(affected_mob, "Strange buzzing fills your head, removing all thoughts.") if(prob(3)) - affected_mob << "You lose consciousness..." + to_chat(affected_mob, "You lose consciousness...") affected_mob.visible_message("[affected_mob] suddenly collapses") affected_mob.Paralyse(rand(5,10)) if(prob(1)) diff --git a/code/datums/diseases/cold.dm b/code/datums/diseases/cold.dm index 87f01cf0fd..468c9f2373 100644 --- a/code/datums/diseases/cold.dm +++ b/code/datums/diseases/cold.dm @@ -16,16 +16,16 @@ if(2) /* if(affected_mob.sleeping && prob(40)) //removed until sleeping is fixed - affected_mob << "\blue You feel better." + to_chat(affected_mob, "\blue You feel better.") cure() return */ if(affected_mob.lying && prob(40)) //changed FROM prob(10) until sleeping is fixed - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") cure() return if(prob(1) && prob(5)) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") cure() return if(prob(1)) @@ -33,22 +33,22 @@ if(prob(1)) affected_mob.emote("cough") if(prob(1)) - affected_mob << "Your throat feels sore." + to_chat(affected_mob, "Your throat feels sore.") if(prob(1)) - affected_mob << "Mucous runs down the back of your throat." + to_chat(affected_mob, "Mucous runs down the back of your throat.") if(3) /* if(affected_mob.sleeping && prob(25)) //removed until sleeping is fixed - affected_mob << "\blue You feel better." + to_chat(affected_mob, "\blue You feel better.") cure() return */ if(affected_mob.lying && prob(25)) //changed FROM prob(5) until sleeping is fixed - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") cure() return if(prob(1) && prob(1)) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") cure() return if(prob(1)) @@ -56,9 +56,9 @@ if(prob(1)) affected_mob.emote("cough") if(prob(1)) - affected_mob << "Your throat feels sore." + to_chat(affected_mob, "Your throat feels sore.") if(prob(1)) - affected_mob << "Mucous runs down the back of your throat." + to_chat(affected_mob, "Mucous runs down the back of your throat.") if(prob(1) && prob(50)) if(!affected_mob.resistances.Find(/datum/disease/flu)) var/datum/disease/Flu = new /datum/disease/flu(0) diff --git a/code/datums/diseases/cold9.dm b/code/datums/diseases/cold9.dm index f77065a5ed..a875130709 100644 --- a/code/datums/diseases/cold9.dm +++ b/code/datums/diseases/cold9.dm @@ -16,7 +16,7 @@ if(2) affected_mob.bodytemperature -= 10 if(prob(1) && prob(10)) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") cure() return if(prob(1)) @@ -24,9 +24,9 @@ if(prob(1)) affected_mob.emote("cough") if(prob(1)) - affected_mob << "Your throat feels sore." + to_chat(affected_mob, "Your throat feels sore.") if(prob(5)) - affected_mob << "You feel stiff." + to_chat(affected_mob, "You feel stiff.") if(3) affected_mob.bodytemperature -= 20 if(prob(1)) @@ -34,6 +34,6 @@ if(prob(1)) affected_mob.emote("cough") if(prob(1)) - affected_mob << "Your throat feels sore." + to_chat(affected_mob, "Your throat feels sore.") if(prob(10)) - affected_mob << "You feel stiff." \ No newline at end of file + to_chat(affected_mob, "You feel stiff.") \ No newline at end of file diff --git a/code/datums/diseases/dna_spread.dm b/code/datums/diseases/dna_spread.dm index e3836e7442..69b30589ac 100644 --- a/code/datums/diseases/dna_spread.dm +++ b/code/datums/diseases/dna_spread.dm @@ -36,11 +36,11 @@ if(prob(8)) affected_mob.emote("cough") if(prob(1)) - affected_mob << "Your muscles ache." + to_chat(affected_mob, "Your muscles ache.") if(prob(20)) affected_mob.take_bodypart_damage(1) if(prob(1)) - affected_mob << "Your stomach hurts." + to_chat(affected_mob, "Your stomach hurts.") if(prob(20)) affected_mob.adjustToxLoss(2) affected_mob.updatehealth() @@ -50,7 +50,7 @@ original_dna = new affected_mob.dna.type affected_mob.dna.copy_dna(original_dna) - affected_mob << "You don't feel like yourself.." + to_chat(affected_mob, "You don't feel like yourself..") var/datum/dna/transform_dna = strain_data["dna"] transform_dna.transfer_identity(affected_mob, transfer_SE = 1) @@ -70,5 +70,5 @@ affected_mob.updateappearance(mutcolor_update=1) affected_mob.domutcheck() - affected_mob << "You feel more like yourself." + to_chat(affected_mob, "You feel more like yourself.") return ..() \ No newline at end of file diff --git a/code/datums/diseases/fake_gbs.dm b/code/datums/diseases/fake_gbs.dm index ac308e95bb..9c88626406 100644 --- a/code/datums/diseases/fake_gbs.dm +++ b/code/datums/diseases/fake_gbs.dm @@ -22,7 +22,7 @@ else if(prob(5)) affected_mob.emote("gasp") if(prob(10)) - affected_mob << "You're starting to feel very weak..." + to_chat(affected_mob, "You're starting to feel very weak...") if(4) if(prob(10)) affected_mob.emote("cough") diff --git a/code/datums/diseases/flu.dm b/code/datums/diseases/flu.dm index fa157ff81e..8ee4c59b9f 100644 --- a/code/datums/diseases/flu.dm +++ b/code/datums/diseases/flu.dm @@ -16,7 +16,7 @@ switch(stage) if(2) if(affected_mob.lying && prob(20)) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") stage-- return if(prob(1)) @@ -24,18 +24,18 @@ if(prob(1)) affected_mob.emote("cough") if(prob(1)) - affected_mob << "Your muscles ache." + to_chat(affected_mob, "Your muscles ache.") if(prob(20)) affected_mob.take_bodypart_damage(1) if(prob(1)) - affected_mob << "Your stomach hurts." + to_chat(affected_mob, "Your stomach hurts.") if(prob(20)) affected_mob.adjustToxLoss(1) affected_mob.updatehealth() if(3) if(affected_mob.lying && prob(15)) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") stage-- return if(prob(1)) @@ -43,11 +43,11 @@ if(prob(1)) affected_mob.emote("cough") if(prob(1)) - affected_mob << "Your muscles ache." + to_chat(affected_mob, "Your muscles ache.") if(prob(20)) affected_mob.take_bodypart_damage(1) if(prob(1)) - affected_mob << "Your stomach hurts." + to_chat(affected_mob, "Your stomach hurts.") if(prob(20)) affected_mob.adjustToxLoss(1) affected_mob.updatehealth() diff --git a/code/datums/diseases/fluspanish.dm b/code/datums/diseases/fluspanish.dm index 4c09ec188f..99b6eb99e3 100644 --- a/code/datums/diseases/fluspanish.dm +++ b/code/datums/diseases/fluspanish.dm @@ -21,7 +21,7 @@ if(prob(5)) affected_mob.emote("cough") if(prob(1)) - affected_mob << "You're burning in your own skin!" + to_chat(affected_mob, "You're burning in your own skin!") affected_mob.take_bodypart_damage(0,5) if(3) @@ -31,6 +31,6 @@ if(prob(5)) affected_mob.emote("cough") if(prob(5)) - affected_mob << "You're burning in your own skin!" + to_chat(affected_mob, "You're burning in your own skin!") affected_mob.take_bodypart_damage(0,5) return diff --git a/code/datums/diseases/gbs.dm b/code/datums/diseases/gbs.dm index 9dbdb82a0e..20776d5f96 100644 --- a/code/datums/diseases/gbs.dm +++ b/code/datums/diseases/gbs.dm @@ -27,14 +27,14 @@ else if(prob(5)) affected_mob.emote("gasp") if(prob(10)) - affected_mob << "You're starting to feel very weak..." + to_chat(affected_mob, "You're starting to feel very weak...") if(4) if(prob(10)) affected_mob.emote("cough") affected_mob.adjustToxLoss(5) affected_mob.updatehealth() if(5) - affected_mob << "Your body feels as if it's trying to rip itself open..." + to_chat(affected_mob, "Your body feels as if it's trying to rip itself open...") if(prob(50)) affected_mob.gib() else diff --git a/code/datums/diseases/magnitis.dm b/code/datums/diseases/magnitis.dm index 0cec97af40..a6eb01f7b6 100644 --- a/code/datums/diseases/magnitis.dm +++ b/code/datums/diseases/magnitis.dm @@ -16,7 +16,7 @@ switch(stage) if(2) if(prob(2)) - affected_mob << "You feel a slight shock course through your body." + to_chat(affected_mob, "You feel a slight shock course through your body.") if(prob(2)) for(var/obj/M in orange(2,affected_mob)) if(!M.anchored && (M.flags & CONDUCT)) @@ -27,9 +27,9 @@ step_towards(S,affected_mob) if(3) if(prob(2)) - affected_mob << "You feel a strong shock course through your body." + to_chat(affected_mob, "You feel a strong shock course through your body.") if(prob(2)) - affected_mob << "You feel like clowning around." + to_chat(affected_mob, "You feel like clowning around.") if(prob(4)) for(var/obj/M in orange(4,affected_mob)) if(!M.anchored && (M.flags & CONDUCT)) @@ -46,9 +46,9 @@ step_towards(S,affected_mob) if(4) if(prob(2)) - affected_mob << "You feel a powerful shock course through your body." + to_chat(affected_mob, "You feel a powerful shock course through your body.") if(prob(2)) - affected_mob << "You query upon the nature of miracles." + to_chat(affected_mob, "You query upon the nature of miracles.") if(prob(8)) for(var/obj/M in orange(6,affected_mob)) if(!M.anchored && (M.flags & CONDUCT)) diff --git a/code/datums/diseases/pierrot_throat.dm b/code/datums/diseases/pierrot_throat.dm index 7d328ad029..b2195a9527 100644 --- a/code/datums/diseases/pierrot_throat.dm +++ b/code/datums/diseases/pierrot_throat.dm @@ -16,10 +16,10 @@ ..() switch(stage) if(1) - if(prob(10)) affected_mob << "You feel a little silly." + if(prob(10)) to_chat(affected_mob, "You feel a little silly.") if(2) - if(prob(10)) affected_mob << "You start seeing rainbows." + if(prob(10)) to_chat(affected_mob, "You start seeing rainbows.") if(3) - if(prob(10)) affected_mob << "Your thoughts are interrupted by a loud HONK!" + if(prob(10)) to_chat(affected_mob, "Your thoughts are interrupted by a loud HONK!") if(4) if(prob(5)) affected_mob.say( pick( list("HONK!", "Honk!", "Honk.", "Honk?", "Honk!!", "Honk?!", "Honk...") ) ) diff --git a/code/datums/diseases/retrovirus.dm b/code/datums/diseases/retrovirus.dm index 519c9b6658..926b59408a 100644 --- a/code/datums/diseases/retrovirus.dm +++ b/code/datums/diseases/retrovirus.dm @@ -31,38 +31,38 @@ if(1) if(restcure) if(affected_mob.lying && prob(30)) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") cure() return if (prob(8)) - affected_mob << "Your head hurts." + to_chat(affected_mob, "Your head hurts.") if (prob(9)) - affected_mob << "You feel a tingling sensation in your chest." + to_chat(affected_mob, "You feel a tingling sensation in your chest.") if (prob(9)) - affected_mob << "You feel angry." + to_chat(affected_mob, "You feel angry.") if(2) if(restcure) if(affected_mob.lying && prob(20)) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") cure() return if (prob(8)) - affected_mob << "Your skin feels loose." + to_chat(affected_mob, "Your skin feels loose.") if (prob(10)) - affected_mob << "You feel very strange." + to_chat(affected_mob, "You feel very strange.") if (prob(4)) - affected_mob << "You feel a stabbing pain in your head!" + to_chat(affected_mob, "You feel a stabbing pain in your head!") affected_mob.Paralyse(2) if (prob(4)) - affected_mob << "Your stomach churns." + to_chat(affected_mob, "Your stomach churns.") if(3) if(restcure) if(affected_mob.lying && prob(20)) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") cure() return if (prob(10)) - affected_mob << "Your entire body vibrates." + to_chat(affected_mob, "Your entire body vibrates.") if (prob(35)) if(prob(50)) @@ -73,7 +73,7 @@ if(4) if(restcure) if(affected_mob.lying && prob(5)) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") cure() return if (prob(60)) diff --git a/code/datums/diseases/rhumba_beat.dm b/code/datums/diseases/rhumba_beat.dm index 52be54ca0f..d33446cadf 100644 --- a/code/datums/diseases/rhumba_beat.dm +++ b/code/datums/diseases/rhumba_beat.dm @@ -21,23 +21,23 @@ affected_mob.adjustToxLoss(5) affected_mob.updatehealth() if(prob(1)) - affected_mob << "You feel strange..." + to_chat(affected_mob, "You feel strange...") if(3) if(prob(5)) - affected_mob << "You feel the urge to dance..." + to_chat(affected_mob, "You feel the urge to dance...") else if(prob(5)) affected_mob.emote("gasp") else if(prob(10)) - affected_mob << "You feel the need to chick chicky boom..." + to_chat(affected_mob, "You feel the need to chick chicky boom...") if(4) if(prob(10)) affected_mob.emote("gasp") - affected_mob << "You feel a burning beat inside..." + to_chat(affected_mob, "You feel a burning beat inside...") if(prob(20)) affected_mob.adjustToxLoss(5) affected_mob.updatehealth() if(5) - affected_mob << "Your body is unable to contain the Rhumba Beat..." + to_chat(affected_mob, "Your body is unable to contain the Rhumba Beat...") if(prob(50)) affected_mob.gib() else diff --git a/code/datums/diseases/transformation.dm b/code/datums/diseases/transformation.dm index d50e901042..3bde2e2b7e 100644 --- a/code/datums/diseases/transformation.dm +++ b/code/datums/diseases/transformation.dm @@ -22,23 +22,23 @@ switch(stage) if(1) if (prob(stage_prob) && stage1) - affected_mob << pick(stage1) + to_chat(affected_mob, pick(stage1)) if(2) if (prob(stage_prob) && stage2) - affected_mob << pick(stage2) + to_chat(affected_mob, pick(stage2)) if(3) if (prob(stage_prob*2) && stage3) - affected_mob << pick(stage3) + to_chat(affected_mob, pick(stage3)) if(4) if (prob(stage_prob*2) && stage4) - affected_mob << pick(stage4) + to_chat(affected_mob, pick(stage4)) if(5) do_disease_transformation(affected_mob) /datum/disease/transformation/proc/do_disease_transformation(mob/living/affected_mob) if(istype(affected_mob, /mob/living/carbon) && affected_mob.stat != DEAD) if(stage5) - affected_mob << pick(stage5) + to_chat(affected_mob, pick(stage5)) if(jobban_isbanned(affected_mob, new_form)) affected_mob.death(1) return @@ -98,10 +98,10 @@ switch(stage) if(2) if(prob(2)) - affected_mob << "Your [pick("back", "arm", "leg", "elbow", "head")] itches." + to_chat(affected_mob, "Your [pick("back", "arm", "leg", "elbow", "head")] itches.") if(3) if(prob(4)) - affected_mob << "You feel a stabbing pain in your head." + to_chat(affected_mob, "You feel a stabbing pain in your head.") affected_mob.confused += 10 if(4) if(prob(3)) @@ -137,7 +137,7 @@ if (prob(8)) affected_mob.say(pick("Beep, boop", "beep, beep!", "Boop...bop")) if (prob(4)) - affected_mob << "You feel a stabbing pain in your head." + to_chat(affected_mob, "You feel a stabbing pain in your head.") affected_mob.Paralyse(2) if(4) if (prob(20)) @@ -166,7 +166,7 @@ switch(stage) if(3) if (prob(4)) - affected_mob << "You feel a stabbing pain in your head." + to_chat(affected_mob, "You feel a stabbing pain in your head.") affected_mob.Paralyse(2) if(4) if (prob(20)) diff --git a/code/datums/diseases/tuberculosis.dm b/code/datums/diseases/tuberculosis.dm index b2d4fb9065..b16a0a2193 100644 --- a/code/datums/diseases/tuberculosis.dm +++ b/code/datums/diseases/tuberculosis.dm @@ -17,42 +17,42 @@ if(2) if(prob(2)) affected_mob.emote("cough") - affected_mob << "Your chest hurts." + to_chat(affected_mob, "Your chest hurts.") if(prob(2)) - affected_mob << "Your stomach violently rumbles!" + to_chat(affected_mob, "Your stomach violently rumbles!") if(prob(5)) - affected_mob << "You feel a cold sweat form." + to_chat(affected_mob, "You feel a cold sweat form.") if(4) if(prob(2)) - affected_mob << "You see four of everything" + to_chat(affected_mob, "You see four of everything") affected_mob.Dizzy(5) if(prob(2)) - affected_mob << "You feel a sharp pain from your lower chest!" + to_chat(affected_mob, "You feel a sharp pain from your lower chest!") affected_mob.adjustOxyLoss(5) affected_mob.emote("gasp") if(prob(10)) - affected_mob << "You feel air escape from your lungs painfully." + to_chat(affected_mob, "You feel air escape from your lungs painfully.") affected_mob.adjustOxyLoss(25) affected_mob.emote("gasp") if(5) if(prob(2)) - affected_mob << "[pick("You feel your heart slowing...", "You relax and slow your heartbeat.")]" + to_chat(affected_mob, "[pick("You feel your heart slowing...", "You relax and slow your heartbeat.")]") affected_mob.adjustStaminaLoss(70) if(prob(10)) affected_mob.adjustStaminaLoss(100) affected_mob.visible_message("[affected_mob] faints!", "You surrender yourself and feel at peace...") affected_mob.AdjustSleeping(5) if(prob(2)) - affected_mob << "You feel your mind relax and your thoughts drift!" + to_chat(affected_mob, "You feel your mind relax and your thoughts drift!") affected_mob.confused = min(100, affected_mob.confused + 8) if(prob(10)) affected_mob.vomit(20) if(prob(3)) - affected_mob << "[pick("Your stomach silently rumbles...", "Your stomach seizes up and falls limp, muscles dead and lifeless.", "You could eat a crayon")]" + to_chat(affected_mob, "[pick("Your stomach silently rumbles...", "Your stomach seizes up and falls limp, muscles dead and lifeless.", "You could eat a crayon")]") affected_mob.overeatduration = max(affected_mob.overeatduration - 100, 0) affected_mob.nutrition = max(affected_mob.nutrition - 100, 0) if(prob(15)) - affected_mob << "[pick("You feel uncomfortably hot...", "You feel like unzipping your jumpsuit", "You feel like taking off some clothes...")]" + to_chat(affected_mob, "[pick("You feel uncomfortably hot...", "You feel like unzipping your jumpsuit", "You feel like taking off some clothes...")]") affected_mob.bodytemperature += 40 return diff --git a/code/datums/diseases/wizarditis.dm b/code/datums/diseases/wizarditis.dm index 6cf6d4822b..4f1e731cfe 100644 --- a/code/datums/diseases/wizarditis.dm +++ b/code/datums/diseases/wizarditis.dm @@ -31,14 +31,14 @@ STI KALY - blind if(prob(1)&&prob(50)) affected_mob.say(pick("You shall not pass!", "Expeliarmus!", "By Merlins beard!", "Feel the power of the Dark Side!")) if(prob(1)&&prob(50)) - affected_mob << "You feel [pick("that you don't have enough mana", "that the winds of magic are gone", "an urge to summon familiar")]." + to_chat(affected_mob, "You feel [pick("that you don't have enough mana", "that the winds of magic are gone", "an urge to summon familiar")].") if(3) if(prob(1)&&prob(50)) affected_mob.say(pick("NEC CANTIO!","AULIE OXIN FIERA!", "STI KALY!", "TARCOL MINTI ZHERI!")) if(prob(1)&&prob(50)) - affected_mob << "You feel [pick("the magic bubbling in your veins","that this location gives you a +1 to INT","an urge to summon familiar")]." + to_chat(affected_mob, "You feel [pick("the magic bubbling in your veins","that this location gives you a +1 to INT","an urge to summon familiar")].") if(4) @@ -46,7 +46,7 @@ STI KALY - blind affected_mob.say(pick("NEC CANTIO!","AULIE OXIN FIERA!","STI KALY!","EI NATH!")) return if(prob(1)&&prob(50)) - affected_mob << "You feel [pick("the tidal wave of raw power building inside","that this location gives you a +2 to INT and +1 to WIS","an urge to teleport")]." + to_chat(affected_mob, "You feel [pick("the tidal wave of raw power building inside","that this location gives you a +2 to INT and +1 to WIS","an urge to teleport")].") spawn_wizard_clothes(50) if(prob(1)&&prob(1)) teleport() diff --git a/code/datums/emotes.dm b/code/datums/emotes.dm index 57065c01fb..7039bf2c48 100644 --- a/code/datums/emotes.dm +++ b/code/datums/emotes.dm @@ -36,11 +36,10 @@ var/global/list/emote_list = list() var/msg = select_message_type(user) if(params && message_param) msg = select_param(user, params) - /* if(findtext(msg, "their")) msg = replacetext(msg, "their", user.p_their()) if(findtext(msg, "them")) - msg = replacetext(msg, "them", user.p_them())*/ + msg = replacetext(msg, "them", user.p_them()) if(findtext(msg, "%s")) msg = replacetext(msg, "%s", user.p_s()) @@ -51,6 +50,7 @@ var/global/list/emote_list = list() if(!msg) return FALSE + user.log_message(msg, INDIVIDUAL_EMOTE_LOG) msg = "[user] " + msg for(var/mob/M in dead_mob_list) @@ -99,6 +99,8 @@ var/global/list/emote_list = list() return FALSE if(restraint_check && user.restrained()) return FALSE + if(user.reagents && user.reagents.has_reagent("mimesbane")) + return FALSE /datum/emote/sound @@ -109,4 +111,4 @@ var/global/list/emote_list = list() /datum/emote/sound/run_emote(mob/user, params) . = ..() if(.) - playsound(user.loc, sound, 50, vary) \ No newline at end of file + playsound(user.loc, sound, 50, vary) diff --git a/code/datums/helper_datums/getrev.dm b/code/datums/helper_datums/getrev.dm index 1865c497f7..f1f994becf 100644 --- a/code/datums/helper_datums/getrev.dm +++ b/code/datums/helper_datums/getrev.dm @@ -27,10 +27,10 @@ var/global/datum/getrev/revdata = new() for(var/line in testmerge) if(line) log_world("Test merge active of PR #[line]") + feedback_add_details("testmerged_prs","[line]") log_world("Based off master commit [parentcommit]") else log_world(parentcommit) - log_world("Current map - [MAP_NAME]") //can't think of anywhere better to put it /datum/getrev/proc/DownloadPRDetails() if(!config.githubrepoid) @@ -76,20 +76,20 @@ var/global/datum/getrev/revdata = new() set desc = "Check the current server code revision" if(revdata.parentcommit) - src << "Server revision compiled on: [revdata.date]" + to_chat(src, "Server revision compiled on: [revdata.date]") if(revdata.testmerge.len) - src << revdata.GetTestMergeInfo() - src << "Based off master commit:" - src << "[revdata.parentcommit]" + to_chat(src, revdata.GetTestMergeInfo()) + to_chat(src, "Based off master commit:") + to_chat(src, "[revdata.parentcommit]") else - src << "Revision unknown" - src << "Current Infomational Settings:" - src << "Protect Authority Roles From Traitor: [config.protect_roles_from_antagonist]" - src << "Protect Assistant Role From Traitor: [config.protect_assistant_from_antagonist]" - src << "Enforce Human Authority: [config.enforce_human_authority]" - src << "Allow Latejoin Antagonists: [config.allow_latejoin_antagonists]" - src << "Enforce Continuous Rounds: [config.continuous.len] of [config.modes.len] roundtypes" - src << "Allow Midround Antagonists: [config.midround_antag.len] of [config.modes.len] roundtypes" + to_chat(src, "Revision unknown") + to_chat(src, "Current Infomational Settings:") + to_chat(src, "Protect Authority Roles From Traitor: [config.protect_roles_from_antagonist]") + to_chat(src, "Protect Assistant Role From Traitor: [config.protect_assistant_from_antagonist]") + to_chat(src, "Enforce Human Authority: [config.enforce_human_authority]") + to_chat(src, "Allow Latejoin Antagonists: [config.allow_latejoin_antagonists]") + to_chat(src, "Enforce Continuous Rounds: [config.continuous.len] of [config.modes.len] roundtypes") + to_chat(src, "Allow Midround Antagonists: [config.midround_antag.len] of [config.modes.len] roundtypes") if(config.show_game_type_odds) if(ticker.current_state == GAME_STATE_PLAYING) var/prob_sum = 0 @@ -111,8 +111,8 @@ var/global/datum/getrev/revdata = new() for(var/ctag in probs) if(config.probabilities[ctag] > 0) var/percentage = round(config.probabilities[ctag] / prob_sum * 100, 0.1) - src << "[ctag] [percentage]%" - + to_chat(src, "[ctag] [percentage]%") + src <<"All Game Mode Odds:" var/sum = 0 for(var/ctag in config.probabilities) @@ -120,4 +120,4 @@ var/global/datum/getrev/revdata = new() for(var/ctag in config.probabilities) if(config.probabilities[ctag] > 0) var/percentage = round(config.probabilities[ctag] / sum * 100, 0.1) - src << "[ctag] [percentage]%" + to_chat(src, "[ctag] [percentage]%") diff --git a/code/datums/helper_datums/teleport.dm b/code/datums/helper_datums/teleport.dm index 74805c3b6b..5ab718da3a 100644 --- a/code/datums/helper_datums/teleport.dm +++ b/code/datums/helper_datums/teleport.dm @@ -169,7 +169,7 @@ precision = max(rand(1,100)*bagholding.len,100) if(isliving(teleatom)) var/mob/living/MM = teleatom - MM << "The bluespace interface on your bag of holding interferes with the teleport!" + to_chat(MM, "The bluespace interface on your bag of holding interferes with the teleport!") return 1 // Safe location finder diff --git a/code/datums/hud.dm b/code/datums/hud.dm index d406a0300f..39487d1078 100644 --- a/code/datums/hud.dm +++ b/code/datums/hud.dm @@ -81,11 +81,11 @@ var/datum/atom_hud/huds = list( \ if(src in hud.hudusers) hud.add_hud_to(src) -/mob/new_player/reload_huds() +/mob/dead/new_player/reload_huds() return /mob/proc/add_click_catcher() client.screen += client.void -/mob/new_player/add_click_catcher() +/mob/dead/new_player/add_click_catcher() return diff --git a/code/datums/map_config.dm b/code/datums/map_config.dm new file mode 100644 index 0000000000..da8a9a5c4d --- /dev/null +++ b/code/datums/map_config.dm @@ -0,0 +1,146 @@ +//used for holding information about unique properties of maps +//feed it json files that match the datum layout +//defaults to box +// -Cyberboss + +/datum/map_config + var/config_filename = "_maps/tgstation2.json" + var/map_name = "Box Station" + var/map_path = "map_files/TgStation" + var/map_file = "tgstation.2.1.3.dmm" + + var/minetype = "lavaland" + + var/list/transition_config = list(MAIN_STATION = CROSSLINKED, + CENTCOMM = SELFLOOPING, + EMPTY_AREA_1 = CROSSLINKED, + EMPTY_AREA_2 = CROSSLINKED, + MINING = SELFLOOPING, + EMPTY_AREA_3 = CROSSLINKED, + EMPTY_AREA_4 = CROSSLINKED, + EMPTY_AREA_5 = CROSSLINKED, + EMPTY_AREA_6 = CROSSLINKED, + EMPTY_AREA_7 = CROSSLINKED, + EMPTY_AREA_8 = CROSSLINKED) + var/defaulted = TRUE //if New failed + + var/config_max_users = 0 + var/config_min_users = 0 + var/voteweight = 1 + +/datum/map_config/New(filename = "data/next_map.json", default_to_box, delete_after) + if(default_to_box) + return + LoadConfig(filename) + if(delete_after) + fdel(filename) + +/datum/map_config/proc/LoadConfig(filename) + if(!fexists(filename)) + log_world("map_config not found: [filename]") + return + + var/json = file(filename) + if(!json) + log_world("Could not open map_config: [filename]") + return + + json = file2text(json) + if(!json) + log_world("map_config is not text: [filename]") + return + + json = json_decode(json) + if(!json) + log_world("map_config is not json: [filename]") + return + + if(!ValidateJSON(json)) + log_world("map_config failed to validate for above reason: [filename]") + return + + config_filename = filename + + map_name = json["map_name"] + map_path = json["map_path"] + map_file = json["map_file"] + + minetype = json["minetype"] + + var/list/jtcl = json["transition_config"] + + if(jtcl != "default") + transition_config.Cut() + + for(var/I in jtcl) + transition_config[TransitionStringToEnum(I)] = TransitionStringToEnum(jtcl[I]) + + defaulted = FALSE + +#define CHECK_EXISTS(X) if(!istext(json[X])) log_world(X + "missing from json!") +/datum/map_config/proc/ValidateJSON(list/json) + CHECK_EXISTS("map_name") + CHECK_EXISTS("map_path") + CHECK_EXISTS("map_file") + CHECK_EXISTS("minetype") + CHECK_EXISTS("transition_config") + + var/path = GetFullMapPath(json["map_path"], json["map_file"]) + if(!fexists(path)) + log_world("Map file ([path]) does not exist!") + return + + if(json["transition_config"] != "default") + if(!islist(json["transition_config"])) + log_world("transition_config is not a list!") + return + + var/list/jtcl = json["transition_config"] + for(var/I in jtcl) + if(isnull(TransitionStringToEnum(I))) + log_world("Invalid transition_config option: [I]!") + if(isnull(TransitionStringToEnum(jtcl[I]))) + log_world("Invalid transition_config option: [I]!") + + return TRUE +#undef CHECK_EXISTS + +/datum/map_config/proc/TransitionStringToEnum(string) + switch(string) + if("CROSSLINKED") + return CROSSLINKED + if("SELFLOOPING") + return SELFLOOPING + if("UNAFFECTED") + return UNAFFECTED + if("MAIN_STATION") + return MAIN_STATION + if("CENTCOMM") + return CENTCOMM + if("MINING") + return MINING + if("EMPTY_AREA_1") + return EMPTY_AREA_1 + if("EMPTY_AREA_2") + return EMPTY_AREA_2 + if("EMPTY_AREA_3") + return EMPTY_AREA_3 + if("EMPTY_AREA_4") + return EMPTY_AREA_4 + if("EMPTY_AREA_5") + return EMPTY_AREA_5 + if("EMPTY_AREA_6") + return EMPTY_AREA_6 + if("EMPTY_AREA_7") + return EMPTY_AREA_7 + if("EMPTY_AREA_8") + return EMPTY_AREA_8 + +/datum/map_config/proc/GetFullMapPath(mp = map_path, mf = map_file) + return "_maps/[mp]/[mf]" + +/datum/map_config/proc/MakeNextMap() + return config_filename == "data/next_map.json" || fcopy(config_filename, "data/next_map.json") + +/datum/map_config/proc/MakePreviousMap() + return config_filename == "data/previous_map.json" || fcopy(config_filename, "data/previous_map.json") \ No newline at end of file diff --git a/code/datums/martial.dm b/code/datums/martial.dm index 20add1032c..803faabba6 100644 --- a/code/datums/martial.dm +++ b/code/datums/martial.dm @@ -98,11 +98,11 @@ name = "Boxing" /datum/martial_art/boxing/disarm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) - A << "Can't disarm while boxing!" + to_chat(A, "Can't disarm while boxing!") return 1 /datum/martial_art/boxing/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D) - A << "Can't grab while boxing!" + to_chat(A, "Can't grab while boxing!") return 1 /datum/martial_art/boxing/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -148,10 +148,10 @@ set desc = "Remember how to wrestle." set category = "Wrestling" - usr << "You flex your muscles and have a revelation..." - usr << "Clinch: Grab. Passively gives you a chance to immediately aggressively grab someone. Not always successful." - usr << "Suplex: Disarm someone you are grabbing. Suplexes your target to the floor. Greatly injures them and leaves both you and your target on the floor." - usr << "Advanced grab: Grab. Passively causes stamina damage when grabbing someone." + to_chat(usr, "You flex your muscles and have a revelation...") + to_chat(usr, "Clinch: Grab. Passively gives you a chance to immediately aggressively grab someone. Not always successful.") + to_chat(usr, "Suplex: Disarm someone you are grabbing. Suplexes your target to the floor. Greatly injures them and leaves both you and your target on the floor.") + to_chat(usr, "Advanced grab: Grab. Passively causes stamina damage when grabbing someone.") #define TORNADO_COMBO "HHD" #define THROWBACK_COMBO "DHD" @@ -177,13 +177,18 @@ return 1 return 0 +/datum/martial_art/plasma_fist/proc/TornadoAnimate(mob/living/carbon/human/A) + set waitfor = FALSE + for(var/i in list(NORTH,SOUTH,EAST,WEST,EAST,SOUTH,NORTH,SOUTH,EAST,WEST,EAST,SOUTH)) + if(!A) + break + A.setDir(i) + playsound(A.loc, 'sound/weapons/punch1.ogg', 15, 1, -1) + sleep(1) + /datum/martial_art/plasma_fist/proc/Tornado(mob/living/carbon/human/A, mob/living/carbon/human/D) A.say("TORNADO SWEEP!") - spawn(0) - for(var/i in list(NORTH,SOUTH,EAST,WEST,EAST,SOUTH,NORTH,SOUTH,EAST,WEST,EAST,SOUTH)) - A.setDir(i) - playsound(A.loc, 'sound/weapons/punch1.ogg', 15, 1, -1) - sleep(1) + TornadoAnimate(A) var/obj/effect/proc_holder/spell/aoe_turf/repulse/R = new(null) var/list/turfs = list() for(var/turf/T in range(1,A)) @@ -238,10 +243,10 @@ set desc = "Remember the martial techniques of the Plasma Fist." set category = "Plasma Fist" - usr << "You clench your fists and have a flashback of knowledge..." - usr << "Tornado Sweep: Harm Harm Disarm. Repulses target and everyone back." - usr << "Throwback: Disarm Harm Disarm. Throws the target and an item at them." - usr << "The Plasma Fist: Harm Disarm Disarm Disarm Harm. Knocks the brain out of the opponent and gibs their body." + to_chat(usr, "You clench your fists and have a flashback of knowledge...") + to_chat(usr, "Tornado Sweep: Harm Harm Disarm. Repulses target and everyone back.") + to_chat(usr, "Throwback: Disarm Harm Disarm. Throws the target and an item at them.") + to_chat(usr, "The Plasma Fist: Harm Disarm Disarm Disarm Harm. Knocks the brain out of the opponent and gibs their body.") //Used by the gang of the same name. Uses combos. Basic attacks bypass armor and never miss #define WRIST_WRENCH_COMBO "DD" @@ -391,13 +396,13 @@ set desc = "Remember the martial techniques of the Sleeping Carp clan." set category = "Sleeping Carp" - usr << "You retreat inward and recall the teachings of the Sleeping Carp..." + to_chat(usr, "You retreat inward and recall the teachings of the Sleeping Carp...") - usr << "Wrist Wrench: Disarm Disarm. Forces opponent to drop item in hand." - usr << "Back Kick: Harm Grab. Opponent must be facing away. Knocks down." - usr << "Stomach Knee: Grab Harm. Knocks the wind out of opponent and stuns." - usr << "Head Kick: Disarm Harm Harm. Decent damage, forces opponent to drop item in hand." - usr << "Elbow Drop: Harm Disarm Harm Disarm Harm. Opponent must be on the ground. Deals huge damage, instantly kills anyone in critical condition." + to_chat(usr, "Wrist Wrench: Disarm Disarm. Forces opponent to drop item in hand.") + to_chat(usr, "Back Kick: Harm Grab. Opponent must be facing away. Knocks down.") + to_chat(usr, "Stomach Knee: Grab Harm. Knocks the wind out of opponent and stuns.") + to_chat(usr, "Head Kick: Disarm Harm Harm. Decent damage, forces opponent to drop item in hand.") + to_chat(usr, "Elbow Drop: Harm Disarm Harm Disarm Harm. Opponent must be on the ground. Deals huge damage, instantly kills anyone in critical condition.") //CQC #define SLAM_COMBO "GH" @@ -573,15 +578,15 @@ set desc = "You try to remember some of the basics of CQC." set category = "CQC" - usr << "You try to remember some of the basics of CQC." + to_chat(usr, "You try to remember some of the basics of CQC.") - usr << "Slam: Grab Harm. Slam opponent into the ground, weakens and knocks down." - usr << "CQC Kick: Harm Disarm Harm. Knocks opponent away. Knocks out stunned or weakened opponents." - usr << "Restrain: Grab Grab. Locks opponents into a restraining position, disarm to knock them out with a choke hold." - usr << "Pressure: Disarm Grab. Decent stamina damage." - usr << "Consecutive CQC: Harm Harm Disarm. Mainly offensive move, huge damage and decent stamina damage." + to_chat(usr, "Slam: Grab Harm. Slam opponent into the ground, weakens and knocks down.") + to_chat(usr, "CQC Kick: Harm Disarm Harm. Knocks opponent away. Knocks out stunned or weakened 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, "Pressure: Disarm Grab. Decent stamina damage.") + to_chat(usr, "Consecutive CQC: Harm Harm Disarm. Mainly offensive move, huge damage and decent stamina damage.") - usr << "In addition, by having your throw mode on when being attacked, you enter an active defense mode where you have a chance to block and sometimes even counter attacks done to you." + to_chat(usr, "In addition, by having your throw mode on when being attacked, you enter an active defense mode where you have a chance to block and sometimes even counter attacks done to you.") //ITEMS @@ -638,7 +643,7 @@ var/mob/living/carbon/human/H = user var/datum/martial_art/plasma_fist/F = new/datum/martial_art/plasma_fist(null) F.teach(H) - H << "You have learned the ancient martial art of Plasma Fist." + to_chat(H, "You have learned the ancient martial art of Plasma Fist.") used = 1 desc = "It's completely blank." name = "empty scroll" @@ -670,8 +675,9 @@ /obj/item/weapon/sleeping_carp_scroll/attack_self(mob/living/carbon/human/user) if(!istype(user) || !user) return - user << "You have learned the ancient martial art of the Sleeping Carp! Your hand-to-hand combat has become much more effective, and you are now able to deflect any projectiles \ + var/message = "You have learned the ancient martial art of the Sleeping Carp! Your hand-to-hand combat has become much more effective, and you are now able to deflect any projectiles \ directed toward you. However, you are also unable to use any ranged weaponry. You can learn more about your newfound art by using the Recall Teachings verb in the Sleeping Carp tab." + to_chat(user, message) var/datum/martial_art/the_sleeping_carp/theSleepingCarp = new(null) theSleepingCarp.teach(user) user.drop_item() @@ -701,7 +707,7 @@ /obj/item/weapon/twohanded/bostaff/attack(mob/target, mob/living/user) add_fingerprint(user) if((CLUMSY in user.disabilities) && prob(50)) - user << "You club yourself over the head with [src]." + to_chat(user, "You club yourself over the head with [src].") user.Weaken(3) if(ishuman(user)) var/mob/living/carbon/human/H = user @@ -715,7 +721,7 @@ return ..() var/mob/living/carbon/C = target if(C.stat) - user << "It would be dishonorable to attack a foe while they cannot retaliate." + to_chat(user, "It would be dishonorable to attack a foe while they cannot retaliate.") return if(user.a_intent == INTENT_DISARM) if(!wielded) diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/krav_maga.dm index f71cc3b97f..5542aa2b27 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/krav_maga.dm @@ -10,7 +10,7 @@ /datum/action/neck_chop/Trigger() if(owner.incapacitated()) - owner << "You can't use Krav Maga while you're incapacitated." + to_chat(owner, "You can't use Krav Maga while you're incapacitated.") return owner.visible_message("[owner] assumes the Neck Chop stance!", "Your next attack will be a Neck Chop.") var/mob/living/carbon/human/H = owner @@ -22,7 +22,7 @@ /datum/action/leg_sweep/Trigger() if(owner.incapacitated()) - owner << "You can't use Krav Maga while you're incapacitated." + to_chat(owner, "You can't use Krav Maga while you're incapacitated.") return owner.visible_message("[owner] assumes the Leg Sweep stance!", "Your next attack will be a Leg Sweep.") var/mob/living/carbon/human/H = owner @@ -34,7 +34,7 @@ /datum/action/lung_punch/Trigger() if(owner.incapacitated()) - owner << "You can't use Krav Maga while you're incapacitated." + to_chat(owner, "You can't use Krav Maga while you're incapacitated.") return owner.visible_message("[owner] assumes the Lung Punch stance!", "Your next attack will be a Lung Punch.") var/mob/living/carbon/human/H = owner @@ -42,15 +42,15 @@ /datum/martial_art/krav_maga/teach(var/mob/living/carbon/human/H,var/make_temporary=0) ..() - H << "You know the arts of Krav Maga!" - H << "Place your cursor over a move at the top of the screen to see what it does." + to_chat(H, "You know the arts of Krav Maga!") + to_chat(H, "Place your cursor over a move at the top of the screen to see what it does.") neckchop.Grant(H) legsweep.Grant(H) lungpunch.Grant(H) /datum/martial_art/krav_maga/remove(var/mob/living/carbon/human/H) ..() - H << "You suddenly forget the arts of Krav Maga..." + to_chat(H, "You suddenly forget the arts of Krav Maga...") neckchop.Remove(H) legsweep.Remove(H) lungpunch.Remove(H) diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm index 9b99a2c75d..8402fe647b 100644 --- a/code/datums/martial/wrestling.dm +++ b/code/datums/martial/wrestling.dm @@ -36,7 +36,7 @@ /datum/action/slam/Trigger() if(owner.incapacitated()) - owner << "You can't WRESTLE while you're OUT FOR THE COUNT." + to_chat(owner, "You can't WRESTLE while you're OUT FOR THE COUNT.") return owner.visible_message("[owner] prepares to BODY SLAM!", "Your next attack will be a BODY SLAM.") var/mob/living/carbon/human/H = owner @@ -48,7 +48,7 @@ /datum/action/throw_wrassle/Trigger() if(owner.incapacitated()) - owner << "You can't WRESTLE while you're OUT FOR THE COUNT." + to_chat(owner, "You can't WRESTLE while you're OUT FOR THE COUNT.") return owner.visible_message("[owner] prepares to THROW!", "Your next attack will be a THROW.") var/mob/living/carbon/human/H = owner @@ -60,7 +60,7 @@ /datum/action/kick/Trigger() if(owner.incapacitated()) - owner << "You can't WRESTLE while you're OUT FOR THE COUNT." + to_chat(owner, "You can't WRESTLE while you're OUT FOR THE COUNT.") return owner.visible_message("[owner] prepares to KICK!", "Your next attack will be a KICK.") var/mob/living/carbon/human/H = owner @@ -72,7 +72,7 @@ /datum/action/strike/Trigger() if(owner.incapacitated()) - owner << "You can't WRESTLE while you're OUT FOR THE COUNT." + to_chat(owner, "You can't WRESTLE while you're OUT FOR THE COUNT.") return owner.visible_message("[owner] prepares to STRIKE!", "Your next attack will be a STRIKE.") var/mob/living/carbon/human/H = owner @@ -84,7 +84,7 @@ /datum/action/drop/Trigger() if(owner.incapacitated()) - owner << "You can't WRESTLE while you're OUT FOR THE COUNT." + to_chat(owner, "You can't WRESTLE while you're OUT FOR THE COUNT.") return owner.visible_message("[owner] prepares to LEG DROP!", "Your next attack will be a LEG DROP.") var/mob/living/carbon/human/H = owner @@ -92,8 +92,8 @@ /datum/martial_art/wrestling/teach(var/mob/living/carbon/human/H,var/make_temporary=0) ..() - H << "SNAP INTO A THIN TIM!" - H << "Place your cursor over a move at the top of the screen to see what it does." + to_chat(H, "SNAP INTO A THIN TIM!") + to_chat(H, "Place your cursor over a move at the top of the screen to see what it does.") drop.Grant(H) kick.Grant(H) slam.Grant(H) @@ -102,7 +102,7 @@ /datum/martial_art/wrestling/remove(var/mob/living/carbon/human/H) ..() - H << "You no longer feel that the tower of power is too sweet to be sour..." + to_chat(H, "You no longer feel that the tower of power is too sweet to be sour...") drop.Remove(H) kick.Remove(H) slam.Remove(H) @@ -119,7 +119,7 @@ if(!D) return if(!A.pulling || A.pulling != D) - A << "You need to have [D] in a cinch!" + to_chat(A, "You need to have [D] in a cinch!") return D.forceMove(A.loc) D.setDir(get_dir(D, A)) @@ -145,11 +145,11 @@ if (A && D) if (get_dist(A, D) > 1) - A << "[D] is too far away!" + to_chat(A, "[D] is too far away!") return 0 if (!isturf(A.loc) || !isturf(D.loc)) - A << "You can't throw [D] from here!" + to_chat(A, "You can't throw [D] from here!") return 0 A.setDir(turn(A.dir, 90)) @@ -167,11 +167,11 @@ // These are necessary because of the sleep call. if (get_dist(A, D) > 1) - A << "[D] is too far away!" + to_chat(A, "[D] is too far away!") return 0 if (!isturf(A.loc) || !isturf(D.loc)) - A << "You can't throw [D] from here!" + to_chat(A, "You can't throw [D] from here!") return 0 D.forceMove(A.loc) // Maybe this will help with the wallthrowing bug. @@ -190,7 +190,7 @@ if(!D) return if(!A.pulling || A.pulling != D) - A << "You need to have [D] in a cinch!" + to_chat(A, "You need to have [D] in a cinch!") return D.forceMove(A.loc) A.setDir(get_dir(A, D)) @@ -223,7 +223,7 @@ D.pixel_x = A.pixel_x + 8 if (get_dist(A, D) > 1) - A << "[D] is too far away!" + to_chat(A, "[D] is too far away!") A.pixel_x = 0 A.pixel_y = 0 D.pixel_x = 0 @@ -231,7 +231,7 @@ return 0 if (!isturf(A.loc) || !isturf(D.loc)) - A << "You can't slam [D] here!" + to_chat(A, "You can't slam [D] here!") A.pixel_x = 0 A.pixel_y = 0 D.pixel_x = 0 @@ -255,11 +255,11 @@ D.pixel_y = 0 if (get_dist(A, D) > 1) - A << "[D] is too far away!" + to_chat(A, "[D] is too far away!") return 0 if (!isturf(A.loc) || !isturf(D.loc)) - A << "You can't slam [D] here!" + to_chat(A, "You can't slam [D] here!") return 0 D.forceMove(A.loc) @@ -369,12 +369,12 @@ A.visible_message("...and dives head-first into the ground, ouch!") A.adjustBruteLoss(rand(10,20)) A.Weaken(3) - A << "[D] is too far away!" + to_chat(A, "[D] is too far away!") return 0 if (!isturf(A.loc) || !isturf(D.loc)) A.pixel_y = 0 - A << "You can't drop onto [D] from here!" + to_chat(A, "You can't drop onto [D] from here!") return 0 if(A) diff --git a/code/datums/mind.dm b/code/datums/mind.dm index e49fae36b6..2ee1b88b8d 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -36,7 +36,6 @@ var/active = 0 var/memory - var/attack_log var/assigned_role var/special_role @@ -69,6 +68,9 @@ src.key = key soulOwner = src +/datum/mind/Destroy() + ticker.minds -= src + return ..() /datum/mind/proc/transfer_to(mob/new_character, var/force_key_move = 0) if(current) // remove ourself from our old body's mind variable @@ -228,11 +230,12 @@ enslaved_to = creator - current.faction = creator.faction.Copy() + current.faction |= creator.faction + creator.faction |= current.faction if(creator.mind.special_role) message_admins("[key_name_admin(current)](?) has been created by [key_name_admin(creator)](?), an antagonist.") - current << "Despite your creators current allegiances, your true master remains [creator.real_name]. If their loyalities change, so do yours. This will never change unless your creator's body is destroyed." + to_chat(current, "Despite your creators current allegiances, your true master remains [creator.real_name]. If their loyalities change, so do yours. This will never change unless your creator's body is destroyed.") /datum/mind/proc/show_memory(mob/recipient, window=1) if(!recipient) @@ -248,8 +251,8 @@ if(window) recipient << browse(output,"window=memory") - else - recipient << "[output]" + else if(objectives.len || memory) + to_chat(recipient, "[output]") /datum/mind/proc/edit_memory() if(!ticker || !ticker.mode) @@ -542,11 +545,14 @@ text = uppertext(text) text = "[text]: " if(src in ticker.mode.devils) - text += "DEVIL|sintouched|human" + if(devilinfo && !devilinfo.ascendable) + text += "DEVIL|Ascendable Devil|sintouched|human" + else + text += "DEVIL|ASCENDABLE DEVIL|sintouched|human" else if(src in ticker.mode.sintouched) - text += "devil|SINTOUCHED|human" + text += "devil|Ascendable Devil|SINTOUCHED|human" else - text += "devil|sintouched|HUMAN" + text += "devil|Ascendable Devil|sintouched|HUMAN" if(current && current.client && (ROLE_DEVIL in current.client.prefs.be_special)) text += "|Enabled in Prefs" @@ -695,7 +701,7 @@ new_objective.owner = src new_objective.update_explanation_text() else - usr << "No active AIs with minds" + to_chat(usr, "No active AIs with minds") if ("prevent") new_objective = new /datum/objective/block @@ -793,16 +799,16 @@ switch(href_list["revolution"]) if("clear") remove_rev() - current << "You have been brainwashed! You are no longer a revolutionary!" + to_chat(current, "You have been brainwashed! You are no longer a revolutionary!") message_admins("[key_name_admin(usr)] has de-rev'ed [current].") log_admin("[key_name(usr)] has de-rev'ed [current].") if("rev") if(src in ticker.mode.head_revolutionaries) ticker.mode.head_revolutionaries -= src ticker.mode.update_rev_icons_removed(src) - current << "Revolution has been disappointed of your leader traits! You are a regular revolutionary now!" + to_chat(current, "Revolution has been disappointed of your leader traits! You are a regular revolutionary now!") else if(!(src in ticker.mode.revolutionaries)) - current << " You are now a revolutionary! Help your cause. Do not harm your fellow freedom fighters. You can identify your comrades by the red \"R\" icons, and your leaders by the blue \"R\" icons. Help them kill the heads to win the revolution!" + to_chat(current, " You are now a revolutionary! Help your cause. Do not harm your fellow freedom fighters. You can identify your comrades by the red \"R\" icons, and your leaders by the blue \"R\" icons. Help them kill the heads to win the revolution!") else return ticker.mode.revolutionaries += src @@ -815,9 +821,9 @@ if(src in ticker.mode.revolutionaries) ticker.mode.revolutionaries -= src ticker.mode.update_rev_icons_removed(src) - current << "You have proved your devotion to revoltion! Yea are a head revolutionary now!" + to_chat(current, "You have proved your devotion to revoltion! Yea are a head revolutionary now!") else if(!(src in ticker.mode.head_revolutionaries)) - current << "You are a member of the revolutionaries' leadership now!" + to_chat(current, "You are a member of the revolutionaries' leadership now!") else return if (ticker.mode.head_revolutionaries.len>0) @@ -840,24 +846,24 @@ if("autoobjectives") ticker.mode.forge_revolutionary_objectives(src) ticker.mode.greet_revolutionary(src,0) - usr << "The objectives for revolution have been generated and shown to [key]" + to_chat(usr, "The objectives for revolution have been generated and shown to [key]") if("flash") if (!ticker.mode.equip_revolutionary(current)) - usr << "Spawning flash failed!" + to_chat(usr, "Spawning flash failed!") if("takeflash") var/list/L = current.get_contents() var/obj/item/device/assembly/flash/flash = locate() in L if (!flash) - usr << "Deleting flash failed!" + to_chat(usr, "Deleting flash failed!") qdel(flash) if("repairflash") var/list/L = current.get_contents() var/obj/item/device/assembly/flash/flash = locate() in L if (!flash) - usr << "Repairing flash failed!" + to_chat(usr, "Repairing flash failed!") else flash.crit_fail = 0 flash.update_icon() @@ -876,11 +882,11 @@ if("equip") switch(ticker.mode.equip_gang(current,gang_datum)) if(1) - usr << "Unable to equip territory spraycan!" + to_chat(usr, "Unable to equip territory spraycan!") if(2) - usr << "Unable to equip recruitment pen and spraycan!" + to_chat(usr, "Unable to equip recruitment pen and spraycan!") if(3) - usr << "Unable to equip gangtool, pen, and spraycan!" + to_chat(usr, "Unable to equip gangtool, pen, and spraycan!") if("takeequip") var/list/L = current.get_contents() @@ -912,7 +918,7 @@ gang_datum = G special_role = "[G.name] Gang Boss" G.add_gang_hud(src) - current << "You are a [G.name] Gang Boss!" + to_chat(current, "You are a [G.name] Gang Boss!") message_admins("[key_name_admin(usr)] has added [current] to the [G.name] Gang leadership.") log_admin("[key_name(usr)] has added [current] to the [G.name] Gang leadership.") ticker.mode.forge_gang_objectives(src) @@ -944,11 +950,11 @@ log_admin("[key_name(usr)] has cult'ed [current].") if("tome") if (!ticker.mode.equip_cultist(current,1)) - usr << "Spawning tome failed!" + to_chat(usr, "Spawning tome failed!") if("amulet") if (!ticker.mode.equip_cultist(current)) - usr << "Spawning amulet failed!" + to_chat(usr, "Spawning amulet failed!") else if(href_list["clockcult"]) switch(href_list["clockcult"]) @@ -963,15 +969,15 @@ log_admin("[key_name(usr)] has made [current] into a servant of Ratvar.") if("slab") if(!ticker.mode.equip_servant(current)) - usr << "Failed to outfit [current] with a slab!" + to_chat(usr, "Failed to outfit [current] with a slab!") else - usr << "Successfully gave [current] a clockwork slab!" + to_chat(usr, "Successfully gave [current] a clockwork slab!") else if (href_list["wizard"]) switch(href_list["wizard"]) if("clear") remove_wizard() - current << "You have been brainwashed! You are no longer a wizard!" + to_chat(current, "You have been brainwashed! You are no longer a wizard!") log_admin("[key_name(usr)] has de-wizard'ed [current].") ticker.mode.update_wiz_icons_removed(src) if("wizard") @@ -979,7 +985,7 @@ ticker.mode.wizards += src special_role = "Wizard" //ticker.mode.learn_basic_spells(current) - current << "You are the Space Wizard!" + to_chat(current, "You are the Space Wizard!") message_admins("[key_name_admin(usr)] has wizard'ed [current].") log_admin("[key_name(usr)] has wizard'ed [current].") ticker.mode.update_wiz_icons_added(src) @@ -991,13 +997,13 @@ ticker.mode.name_wizard(current) if("autoobjectives") ticker.mode.forge_wizard_objectives(src) - usr << "The objectives for wizard [key] have been generated. You can edit them and anounce manually." + to_chat(usr, "The objectives for wizard [key] have been generated. You can edit them and anounce manually.") else if (href_list["changeling"]) switch(href_list["changeling"]) if("clear") remove_changeling() - current << "You grow weak and lose your powers! You are no longer a changeling and are stuck in your current form!" + to_chat(current, "You grow weak and lose your powers! You are no longer a changeling and are stuck in your current form!") message_admins("[key_name_admin(usr)] has de-changeling'ed [current].") log_admin("[key_name(usr)] has de-changeling'ed [current].") if("changeling") @@ -1005,17 +1011,17 @@ ticker.mode.changelings += src current.make_changeling() special_role = "Changeling" - current << "Your powers are awoken. A flash of memory returns to us...we are [changeling.changelingID], a changeling!" + to_chat(current, "Your powers are awoken. A flash of memory returns to us...we are [changeling.changelingID], a changeling!") message_admins("[key_name_admin(usr)] has changeling'ed [current].") log_admin("[key_name(usr)] has changeling'ed [current].") ticker.mode.update_changeling_icons_added(src) if("autoobjectives") ticker.mode.forge_changeling_objectives(src) - usr << "The objectives for changeling [key] have been generated. You can edit them and anounce manually." + to_chat(usr, "The objectives for changeling [key] have been generated. You can edit them and anounce manually.") if("initialdna") if( !changeling || !changeling.stored_profiles.len || !istype(current, /mob/living/carbon)) - usr << "Resetting DNA failed!" + to_chat(usr, "Resetting DNA failed!") else var/mob/living/carbon/C = current changeling.first_prof.dna.transfer_identity(C, transfer_SE=1) @@ -1027,7 +1033,7 @@ switch(href_list["nuclear"]) if("clear") remove_nukeop() - current << "You have been brainwashed! You are no longer a syndicate operative!" + to_chat(current, "You have been brainwashed! You are no longer a syndicate operative!") message_admins("[key_name_admin(usr)] has de-nuke op'ed [current].") log_admin("[key_name(usr)] has de-nuke op'ed [current].") if("nuclear") @@ -1040,7 +1046,7 @@ current.real_name = "[syndicate_name()] Operative #[ticker.mode.syndicates.len-1]" special_role = "Syndicate" assigned_role = "Syndicate" - current << "You are a [syndicate_name()] agent!" + to_chat(current, "You are a [syndicate_name()] agent!") ticker.mode.forge_syndicate_objectives(src) ticker.mode.greet_syndicate(src) message_admins("[key_name_admin(usr)] has nuke op'ed [current].") @@ -1060,7 +1066,7 @@ qdel(H.w_uniform) if (!ticker.mode.equip_syndicate(current)) - usr << "Equipping a syndicate failed!" + to_chat(usr, "Equipping a syndicate failed!") if("tellcode") var/code for (var/obj/machinery/nuclearbomb/bombue in machines) @@ -1069,15 +1075,15 @@ break if (code) store_memory("Syndicate Nuclear Bomb Code: [code]", 0, 0) - current << "The nuclear authorization code is: [code]" + to_chat(current, "The nuclear authorization code is: [code]") else - usr << "No valid nuke found!" + to_chat(usr, "No valid nuke found!") else if (href_list["traitor"]) switch(href_list["traitor"]) if("clear") remove_traitor() - current << "You have been brainwashed! You are no longer a traitor!" + to_chat(current, "You have been brainwashed! You are no longer a traitor!") message_admins("[key_name_admin(usr)] has de-traitor'ed [current].") log_admin("[key_name(usr)] has de-traitor'ed [current].") ticker.mode.update_traitor_icons_removed(src) @@ -1086,7 +1092,7 @@ if(!(src in ticker.mode.traitors)) ticker.mode.traitors += src special_role = "traitor" - current << "You are a traitor!" + to_chat(current, "You are a traitor!") message_admins("[key_name_admin(usr)] has traitor'ed [current].") log_admin("[key_name(usr)] has traitor'ed [current].") if(isAI(current)) @@ -1096,7 +1102,7 @@ if("autoobjectives") ticker.mode.forge_traitor_objectives(src) - usr << "The objectives for traitor [key] have been generated. You can edit them and anounce manually." + to_chat(usr, "The objectives for traitor [key] have been generated. You can edit them and anounce manually.") else if(href_list["devil"]) switch(href_list["devil"]) @@ -1106,15 +1112,20 @@ if(devilinfo) devilinfo.regress_blood_lizard() else - usr << "Something went wrong with removing the devil, we were unable to find an attached devilinfo.." + to_chat(usr, "Something went wrong with removing the devil, we were unable to find an attached devilinfo..") ticker.mode.devils -= src special_role = null - current << "Your infernal link has been severed! You are no longer a devil!" + to_chat(current, "Your infernal link has been severed! You are no longer a devil!") RemoveSpell(/obj/effect/proc_holder/spell/targeted/infernal_jaunt) RemoveSpell(/obj/effect/proc_holder/spell/aimed/fireball/hellish) RemoveSpell(/obj/effect/proc_holder/spell/targeted/summon_contract) RemoveSpell(/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork) RemoveSpell(/obj/effect/proc_holder/spell/targeted/conjure_item/violin) + RemoveSpell(/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/greater) + RemoveSpell(/obj/effect/proc_holder/spell/targeted/conjure_item/summon_pitchfork/ascended) + RemoveSpell(/obj/effect/proc_holder/spell/targeted/summon_dancefloor) + RemoveSpell(/obj/effect/proc_holder/spell/targeted/sintouch) + RemoveSpell(/obj/effect/proc_holder/spell/targeted/sintouch/ascended) message_admins("[key_name_admin(usr)] has de-devil'ed [current].") devilinfo = null if(issilicon(current)) @@ -1126,15 +1137,39 @@ message_admins("[key_name_admin(usr)] has de-sintouch'ed [current].") log_admin("[key_name(usr)] has de-sintouch'ed [current].") if("devil") + if(devilinfo) + devilinfo.ascendable = FALSE + message_admins("[key_name_admin(usr)] has made [current] unable to ascend as a devil.") + log_admin("[key_name_admin(usr)] has made [current] unable to ascend as a devil.") + return if(!ishuman(current) && !iscyborg(current)) usr << "This only works on humans and cyborgs!" return ticker.mode.devils += src special_role = "devil" - ticker.mode.finalize_devil(src) + ticker.mode.finalize_devil(src, FALSE) ticker.mode.add_devil_objectives(src, 2) announceDevilLaws() announce_objectives() + message_admins("[key_name_admin(usr)] has devil'ed [current].") + log_admin("[key_name(usr)] has devil'ed [current].") + if("ascendable_devil") + if(devilinfo) + devilinfo.ascendable = TRUE + message_admins("[key_name_admin(usr)] has made [current] able to ascend as a devil.") + log_admin("[key_name_admin(usr)] has made [current] able to ascend as a devil.") + return + if(!ishuman(current) && !iscyborg(current)) + to_chat(usr, "This only works on humans and cyborgs!") + return + ticker.mode.devils += src + special_role = "devil" + ticker.mode.finalize_devil(src, TRUE) + ticker.mode.add_devil_objectives(src, 2) + announceDevilLaws() + announce_objectives() + message_admins("[key_name_admin(usr)] has devil'ed [current]. The devil has been marked as ascendable.") + log_admin("[key_name(usr)] has devil'ed [current]. The devil has been marked as ascendable.") if("sintouched") if(ishuman(current)) ticker.mode.sintouched += src @@ -1142,17 +1177,17 @@ H.influenceSin() message_admins("[key_name_admin(usr)] has sintouch'ed [current].") else - usr << "This only works on humans!" + to_chat(usr, "This only works on humans!") return else if(href_list["abductor"]) switch(href_list["abductor"]) if("clear") - usr << "Not implemented yet. Sorry!" + to_chat(usr, "Not implemented yet. Sorry!") //ticker.mode.update_abductor_icons_removed(src) if("abductor") if(!ishuman(current)) - usr << "This only works on humans!" + to_chat(usr, "This only works on humans!") return make_Abductor() log_admin("[key_name(usr)] turned [current] into abductor.") @@ -1182,7 +1217,7 @@ src = null M = H.monkeyize() src = M.mind - //world << "DEBUG: \"healthy\": M=[M], M.mind=[M.mind], src=[src]!" + //to_chat(world, "DEBUG: \"healthy\": M=[M], M.mind=[M.mind], src=[src]!") else if (istype(M) && length(M.viruses)) for(var/datum/disease/D in M.viruses) D.cure(0) @@ -1252,7 +1287,7 @@ log_admin("[key_name(usr)] changed [current]'s telecrystal count to [crystals].") if("uplink") if(!ticker.mode.equip_traitor(current, !(src in ticker.mode.traitors))) - usr << "Equipping a syndicate failed!" + to_chat(usr, "Equipping a syndicate failed!") log_admin("[key_name(usr)] attempted to give [current] an uplink.") else if (href_list["obj_announce"]) @@ -1262,10 +1297,10 @@ /datum/mind/proc/announce_objectives() var/obj_count = 1 - current << "Your current objectives:" + to_chat(current, "Your current objectives:") for(var/objective in objectives) var/datum/objective/O = objective - current << "Objective #[obj_count]: [O.explanation_text]" + to_chat(current, "Objective #[obj_count]: [O.explanation_text]") obj_count++ /datum/mind/proc/find_syndicate_uplink() @@ -1316,14 +1351,14 @@ if (nuke_code) store_memory("Syndicate Nuclear Bomb Code: [nuke_code]", 0, 0) - current << "The nuclear authorization code is: [nuke_code]" + to_chat(current, "The nuclear authorization code is: [nuke_code]") else var/obj/machinery/nuclearbomb/nuke = locate("syndienuke") in nuke_list if(nuke) store_memory("Syndicate Nuclear Bomb Code: [nuke.r_code]", 0, 0) - current << "The nuclear authorization code is: nuke.r_code" + to_chat(current, "The nuclear authorization code is: nuke.r_code") else - current << "You were not provided with a nuclear code. Trying asking your team leader or contacting syndicate command." + to_chat(current, "You were not provided with a nuclear code. Trying asking your team leader or contacting syndicate command.") if (leader) ticker.mode.prepare_syndicate_leader(src,nuke_code) @@ -1346,7 +1381,7 @@ assigned_role = "Wizard" if(!wizardstart.len) current.loc = pick(latejoin) - current << "HOT INSERTION, GO GO GO" + to_chat(current, "HOT INSERTION, GO GO GO") else current.loc = pick(wizardstart) @@ -1360,20 +1395,20 @@ if(!(src in ticker.mode.cult)) ticker.mode.add_cultist(src,FALSE) special_role = "Cultist" - current << "You catch a glimpse of the Realm of Nar-Sie, The Geometer of Blood. You now see how flimsy the world is, you see that it should be open to the knowledge of Nar-Sie." - current << "Assist your new compatriots in their dark dealings. Their goal is yours, and yours is theirs. You serve the Dark One above all else. Bring It back." + to_chat(current, "You catch a glimpse of the Realm of Nar-Sie, The Geometer of Blood. You now see how flimsy the world is, you see that it should be open to the knowledge of Nar-Sie.") + to_chat(current, "Assist your new compatriots in their dark dealings. Their goal is yours, and yours is theirs. You serve the Dark One above all else. Bring It back.") var/datum/game_mode/cult/cult = ticker.mode if (istype(cult)) cult.memorize_cult_objectives(src) else var/explanation = "Summon Nar-Sie via the use of the appropriate rune (Hell join self). It will only work if nine cultists stand on and around it." - current << "Objective #1: [explanation]" + to_chat(current, "Objective #1: [explanation]") memory += "Objective #1: [explanation]
" var/mob/living/carbon/human/H = current if (!ticker.mode.equip_cultist(current)) - H << "Spawning an amulet from your Master failed." + to_chat(H, "Spawning an amulet from your Master failed.") /datum/mind/proc/make_Rev() if (ticker.mode.head_revolutionaries.len>0) @@ -1468,13 +1503,14 @@ S.action.Grant(current) //To remove a specific spell from a mind -/datum/mind/proc/RemoveSpell(var/obj/effect/proc_holder/spell/spell) - if(!spell) return +/datum/mind/proc/RemoveSpell(obj/effect/proc_holder/spell/spell) + if(!spell) + return for(var/X in spell_list) var/obj/effect/proc_holder/spell/S = X if(istype(S, spell)) - qdel(S) spell_list -= S + qdel(S) /datum/mind/proc/transfer_actions(mob/living/new_character) if(current && current.actions) @@ -1513,7 +1549,7 @@ mind_initialize() //updates the mind (or creates and initializes one if one doesn't exist) mind.active = 1 //indicates that the mind is currently synced with a client -/mob/new_player/sync_mind() +/mob/dead/new_player/sync_mind() return /mob/dead/observer/sync_mind() @@ -1529,8 +1565,7 @@ if(ticker) ticker.minds += mind else - spawn(0) - throw EXCEPTION("mind_initialize(): No ticker ready") + stack_trace("mind_initialize(): No ticker ready") if(!mind.name) mind.name = real_name mind.current = src diff --git a/code/datums/mutations.dm b/code/datums/mutations.dm index 2053f58b0f..9477e328cc 100644 --- a/code/datums/mutations.dm +++ b/code/datums/mutations.dm @@ -66,7 +66,7 @@ return 1 owner.dna.mutations.Add(src) if(text_gain_indication) - owner << text_gain_indication + to_chat(owner, text_gain_indication) if(visual_indicators.len) var/list/mut_overlay = list(get_visual_indicator(owner)) if(owner.overlays_standing[layer_used]) @@ -94,7 +94,7 @@ /datum/mutation/human/proc/on_losing(mob/living/carbon/human/owner) if(owner && istype(owner) && (owner.dna.mutations.Remove(src))) if(text_lose_indication && owner.stat != DEAD) - owner << text_lose_indication + to_chat(owner, text_lose_indication) if(visual_indicators.len) var/list/mut_overlay = list() if(owner.overlays_standing[layer_used]) @@ -137,7 +137,7 @@ /datum/mutation/human/hulk/on_life(mob/living/carbon/human/owner) if(owner.health < 0) on_losing(owner) - owner << "You suddenly feel very weak." + to_chat(owner, "You suddenly feel very weak.") /datum/mutation/human/hulk/on_losing(mob/living/carbon/human/owner) if(..()) @@ -249,7 +249,7 @@ text_gain_indication = "You feel strange." /datum/mutation/human/bad_dna/on_acquiring(mob/living/carbon/human/owner) - owner << text_gain_indication + to_chat(owner, text_gain_indication) var/mob/new_mob if(prob(95)) if(prob(50)) @@ -378,7 +378,7 @@ /datum/mutation/human/race/on_acquiring(mob/living/carbon/human/owner) if(owner.has_brain_worms()) - owner << "You feel something strongly clinging to your humanity!" + to_chat(owner, "You feel something strongly clinging to your humanity!") return if(..()) return diff --git a/code/datums/outfit.dm b/code/datums/outfit.dm index 647e7d4595..5d8ead6d4e 100644 --- a/code/datums/outfit.dm +++ b/code/datums/outfit.dm @@ -3,6 +3,7 @@ var/uniform = null var/suit = null + var/toggle_helmet = TRUE var/back = null var/belt = null var/gloves = null @@ -76,7 +77,7 @@ for(var/i=0,iYou'll need the keys in one of your hands to drive \the [ridden.name].
" + to_chat(user, "You'll need the keys in one of your hands to drive \the [ridden.name].") + +/datum/riding/proc/Unbuckle(atom/movable/M) + addtimer(CALLBACK(ridden, /atom/movable/.proc/unbuckle_mob, M), 0, TIMER_UNIQUE) /datum/riding/proc/Process_Spacemove(direction) if(ridden.has_gravity()) @@ -209,6 +212,13 @@ generic_pixel_x = 0 generic_pixel_y = 4 +//i want to ride my +/datum/riding/bicycle + keytype = null + generic_pixel_x = 0 + generic_pixel_y = 4 + vehicle_move_delay = 0 + //speedbike /datum/riding/space/speedbike keytype = null @@ -244,24 +254,32 @@ //SPEEDUWAGON -/datum/riding/space/speedbike/speedwagon/handle_vehicle_offsets() +/datum/riding/space/speedwagon + vehicle_move_delay = 0 + +/datum/riding/space/speedwagon/handle_vehicle_offsets() if(ridden.has_buckled_mobs()) for(var/m in ridden.buckled_mobs) var/mob/living/buckled_mob = m buckled_mob.setDir(ridden.dir) + ridden.pixel_x = -48 + ridden.pixel_y = -48 switch(ridden.dir) if(NORTH) - buckled_mob.pixel_x = -5 - buckled_mob.pixel_y = -5 + buckled_mob.pixel_x = -10 + buckled_mob.pixel_y = -3 if(SOUTH) - buckled_mob.pixel_x = 5 + buckled_mob.pixel_x = 16 buckled_mob.pixel_y = 3 if(EAST) - buckled_mob.pixel_x = -8 - buckled_mob.pixel_y = 5 + buckled_mob.pixel_x = -4 + buckled_mob.pixel_y = 30 if(WEST) - buckled_mob.pixel_x = 8 - buckled_mob.pixel_y = 5 + buckled_mob.pixel_x = 4 + buckled_mob.pixel_y = -1 + +/datum/riding/space/speedwagon/handle_vehicle_layer() + ridden.layer = BELOW_MOB_LAYER ///////////////BOATS//////////// /datum/riding/boat @@ -274,7 +292,7 @@ if(istype(next, /turf/open/floor/plating/lava) || istype(current, /turf/open/floor/plating/lava)) //We can move from land to lava, or lava to land, but not from land to land ..() else - user << "Boats don't go on land!" + to_chat(user, "Boats don't go on land!") return 0 /datum/riding/boat/dragon @@ -293,7 +311,7 @@ /datum/riding/animal/handle_ride(mob/user, direction) if(user.incapacitated()) - ridden.unbuckle_mob(user) + Unbuckle(user) return if(world.time < next_vehicle_move) @@ -308,7 +326,7 @@ handle_vehicle_layer() handle_vehicle_offsets() else - user << "You'll need something to guide the [ridden.name]." + to_chat(user, "You'll need something to guide the [ridden.name].") ///////Humans. Yes, I said humans. No, this won't end well...////////// /datum/riding/human @@ -318,11 +336,11 @@ var/mob/living/carbon/human/H = ridden //IF this runtimes I'm blaming the admins. if(M.incapacitated(FALSE, TRUE) || H.incapacitated(FALSE, TRUE)) M.visible_message("[M] falls off of [ridden]!") - ridden.unbuckle_mob(M) + Unbuckle(M) return FALSE if(M.restrained(TRUE)) M.visible_message("[M] can't hang onto [ridden] with their hands cuffed!") //Honestly this should put the ridden mob in a chokehold. - ridden.unbuckle_mob(M) + Unbuckle(M) return FALSE if(H.pulling == M) H.stop_pulling() @@ -370,14 +388,14 @@ if(R.module && R.module.ride_allow_incapacitated) kick = FALSE if(kick) - user << "You fall off of [ridden]!" - ridden.unbuckle_mob(user) + to_chat(user, "You fall off of [ridden]!") + Unbuckle(user) return if(istype(user, /mob/living/carbon)) var/mob/living/carbon/carbonuser = user if(!carbonuser.get_num_arms()) - ridden.unbuckle_mob(user) - user << "You can't grab onto [ridden] with no hands!" + Unbuckle(user) + to_chat(user, "You can't grab onto [ridden] with no hands!") return /datum/riding/cyborg/handle_vehicle_layer() @@ -474,4 +492,4 @@ if(selfdeleting) if(rider in ridden.buckled_mobs) ridden.unbuckle_mob(rider) - . = ..() \ No newline at end of file + . = ..() diff --git a/code/datums/ruins/space.dm b/code/datums/ruins/space.dm index fe17bf5256..ab55919a03 100644 --- a/code/datums/ruins/space.dm +++ b/code/datums/ruins/space.dm @@ -136,13 +136,6 @@ description = "Based on the trace elements we've detected on the gutted asteroids, we suspect that a mining ship using a restricted engine is somewhere in the area. \ We'd like to request a patrol vessel to investigate." -/datum/map_template/ruin/space/spacebar - id = "spacebar" - suffix = "spacebar.dmm" - name = "The Rampant Golem and Yellow Hound" - description = "No questions asked. No shoes/foot protection, no service. No tabs. No violence in the inside areas. That's it. Welcome to the Rampant Golem and Yellow Hound. \ - Can I take your order?" - /datum/map_template/ruin/space/spacehotel id = "spacehotel" suffix = "spacehotel.dmm" diff --git a/code/datums/shuttles.dm b/code/datums/shuttles.dm index 1a1d98cf2e..72b22e01c3 100644 --- a/code/datums/shuttles.dm +++ b/code/datums/shuttles.dm @@ -244,3 +244,10 @@ description = "A large shuttle for a large station, this shuttle can comfortably fit all your overpopulation and crowding needs. Complete with all facilities plus additional equipment." admin_notes = "Go big or go home." credit_cost = 7500 + +/datum/map_template/shuttle/emergency/raven + suffix = "raven" + name = "Centcomm Raven Battlecruiser" + description = "The Centcomm Raven Battlecruiser is currently docked at the Centcomm ship bay awaiting a mission, this Battlecruiser has been reassigned as an emergency escape shuttle for currently unknown reasons. The Centcomm Raven Battlecruiser should comfortably fit a medium to large crew size crew and is complete with all required facitlities including a top of the range Centcomm Medical Bay." + admin_notes = "The long way home" + credit_cost = 12500 diff --git a/code/datums/status_effects/buffs.dm b/code/datums/status_effects/buffs.dm index 465219efd1..1078dbfaeb 100644 --- a/code/datums/status_effects/buffs.dm +++ b/code/datums/status_effects/buffs.dm @@ -201,3 +201,21 @@ if(islist(owner.stun_absorption) && owner.stun_absorption["hisgrace"]) owner.stun_absorption -= "hisgrace" + +/datum/status_effect/wish_granters_gift //Fully revives after ten seconds. + id = "wish_granters_gift" + duration = 50 + alert_type = /obj/screen/alert/status_effect/wish_granters_gift + +/datum/status_effect/wish_granters_gift/on_apply() + to_chat(owner, "Death is not your end! The Wish Granter's energy suffuses you, and you begin to rise...") + +/datum/status_effect/wish_granters_gift/on_remove() + owner.revive(full_heal = 1, admin_revive = 1) + owner.visible_message("[owner] appears to wake from the dead, having healed all wounds!", "You have regenerated.") + owner.update_canmove() + +/obj/screen/alert/status_effect/wish_granters_gift + name = "Wish Granter's Immortality" + desc = "You are being resurrected!" + icon_state = "wish_granter" diff --git a/code/datums/status_effects/gas.dm b/code/datums/status_effects/gas.dm index 1ed1848f1b..7ab9022848 100644 --- a/code/datums/status_effects/gas.dm +++ b/code/datums/status_effects/gas.dm @@ -12,7 +12,7 @@ /datum/status_effect/freon/on_apply() if(!owner.stat) - owner << "You become frozen in a cube!" + to_chat(owner, "You become frozen in a cube!") cube = icon('icons/effects/freeze.dmi', "ice_cube") owner.add_overlay(cube) owner.update_canmove() @@ -24,7 +24,7 @@ /datum/status_effect/freon/on_remove() if(!owner.stat) - owner << "The cube melts!" + to_chat(owner, "The cube melts!") owner.cut_overlay(cube) owner.bodytemperature += 100 owner.update_canmove() diff --git a/code/datums/weather/weather.dm b/code/datums/weather/weather.dm index 8f139bd265..f7852d4856 100644 --- a/code/datums/weather/weather.dm +++ b/code/datums/weather/weather.dm @@ -67,7 +67,7 @@ var/mob/M = V if(M.z == target_z) if(telegraph_message) - M << telegraph_message + to_chat(M, telegraph_message) if(telegraph_sound) M << sound(telegraph_sound) addtimer(CALLBACK(src, .proc/start), telegraph_duration) @@ -81,7 +81,7 @@ var/mob/M = V if(M.z == target_z) if(weather_message) - M << weather_message + to_chat(M, weather_message) if(weather_sound) M << sound(weather_sound) START_PROCESSING(SSweather, src) @@ -96,7 +96,7 @@ var/mob/M = V if(M.z == target_z) if(end_message) - M << end_message + to_chat(M, end_message) if(end_sound) M << sound(end_sound) STOP_PROCESSING(SSweather, src) @@ -141,4 +141,4 @@ N.icon = 'icons/turf/areas.dmi' N.layer = AREA_LAYER //Just default back to normal area stuff since I assume setting a var is faster than initial N.invisibility = INVISIBILITY_MAXIMUM - N.opacity = 0 + N.set_opacity(FALSE) diff --git a/code/datums/weather/weather_types.dm b/code/datums/weather/weather_types.dm index 5938bfebde..005702f357 100644 --- a/code/datums/weather/weather_types.dm +++ b/code/datums/weather/weather_types.dm @@ -55,13 +55,13 @@ var/area/A = V if(stage == MAIN_STAGE) A.invisibility = 0 - A.opacity = 1 + A.set_opacity(TRUE) A.layer = overlay_layer A.icon = 'icons/effects/weather_effects.dmi' A.icon_state = "darkness" else A.invisibility = INVISIBILITY_MAXIMUM - A.opacity = 0 + A.set_opacity(FALSE) /datum/weather/ash_storm //Ash Storms: Common happenings on lavaland. Heavily obscures vision and deals heavy fire damage to anyone caught outside. @@ -165,7 +165,8 @@ return priority_announce("The radiation threat has passed. Please return to your workplaces.", "Anomaly Alert") status_alarm() - spawn(300) revoke_maint_all_access() + sleep(300) + revoke_maint_all_access() // Need to make this a timer at some point. /datum/weather/rad_storm/proc/status_alarm(command) //Makes the status displays show the radiation warning for those who missed the announcement. var/datum/radio_frequency/frequency = SSradio.return_frequency(1435) diff --git a/code/datums/wires/airlock.dm b/code/datums/wires/airlock.dm index 092863f6ed..e1965dbb49 100644 --- a/code/datums/wires/airlock.dm +++ b/code/datums/wires/airlock.dm @@ -36,6 +36,7 @@ return status /datum/wires/airlock/on_pulse(wire) + set waitfor = FALSE var/obj/machinery/door/airlock/A = holder switch(wire) if(WIRE_POWER1, WIRE_POWER2) // Pulse to loose power. @@ -70,25 +71,25 @@ A.aiControlDisabled = 1 else if(A.aiControlDisabled == -1) A.aiControlDisabled = 2 - spawn(10) - if(A) - if(A.aiControlDisabled == 1) - A.aiControlDisabled = 0 - else if(A.aiControlDisabled == 2) - A.aiControlDisabled = -1 + sleep(10) + if(A) + if(A.aiControlDisabled == 1) + A.aiControlDisabled = 0 + else if(A.aiControlDisabled == 2) + A.aiControlDisabled = -1 if(WIRE_SHOCK) // Pulse to shock the door for 10 ticks. if(!A.secondsElectrified) - A.secondsElectrified = 30 + A.set_electrified(30) if(usr) A.shockedby += text("\[[time_stamp()]\][usr](ckey:[usr.ckey])") add_logs(usr, A, "electrified") - spawn(10) - if(A) - while (A.secondsElectrified > 0) - A.secondsElectrified -= 1 - if(A.secondsElectrified < 0) - A.secondsElectrified = 0 - sleep(10) + sleep(10) + if(A) + while (A.secondsElectrified > 0) + A.secondsElectrified -= 1 + if(A.secondsElectrified < 0) + A.set_electrified(0) + sleep(10) if(WIRE_SAFETY) A.safe = !A.safe if(!A.density) @@ -137,10 +138,10 @@ if(WIRE_SHOCK) // Cut to shock the door, mend to unshock. if(mend) if(A.secondsElectrified) - A.secondsElectrified = 0 + A.set_electrified(0) else if(A.secondsElectrified != -1) - A.secondsElectrified = -1 + A.set_electrified(-1) if(usr) A.shockedby += text("\[[time_stamp()]\][usr](ckey:[usr.ckey])") add_logs(usr, A, "electrified") diff --git a/code/datums/wires/r_n_d.dm b/code/datums/wires/r_n_d.dm index bae26beaed..0308788d25 100644 --- a/code/datums/wires/r_n_d.dm +++ b/code/datums/wires/r_n_d.dm @@ -24,6 +24,7 @@ return status /datum/wires/r_n_d/on_pulse(wire) + set waitfor = FALSE var/obj/machinery/r_n_d/R = holder switch(wire) if(WIRE_HACK) @@ -32,9 +33,9 @@ R.disabled = !R.disabled if(WIRE_SHOCK) R.shocked = TRUE - spawn(100) - if(R) - R.shocked = FALSE + sleep(100) + if(R) + R.shocked = FALSE /datum/wires/r_n_d/on_cut(wire, mend) var/obj/machinery/r_n_d/R = holder diff --git a/code/datums/wires/suit_storage_unit.dm b/code/datums/wires/suit_storage_unit.dm index 01512b7ff7..eb7781203b 100644 --- a/code/datums/wires/suit_storage_unit.dm +++ b/code/datums/wires/suit_storage_unit.dm @@ -42,4 +42,4 @@ SSU.safeties = mend if(WIRE_ZAP) if(usr) - SSU.shock(usr) \ No newline at end of file + SSU.shock(usr) diff --git a/code/datums/wires/wires.dm b/code/datums/wires/wires.dm index d491c4f678..c6985af3e1 100644 --- a/code/datums/wires/wires.dm +++ b/code/datums/wires/wires.dm @@ -234,14 +234,14 @@ var/list/wire_name_directory = list() cut_color(target_wire) . = TRUE else - L << "You need wirecutters!" + to_chat(L, "You need wirecutters!") if("pulse") if(istype(I, /obj/item/device/multitool) || IsAdminGhost(usr)) playsound(holder, 'sound/weapons/empty.ogg', 20, 1) pulse_color(target_wire) . = TRUE else - L << "You need a multitool!" + to_chat(L, "You need a multitool!") if("attach") if(is_attached(target_wire)) var/obj/item/O = detach_assembly(target_wire) @@ -257,6 +257,6 @@ var/list/wire_name_directory = list() attach_assembly(target_wire, A) . = TRUE else - L << "You need an attachable assembly!" + to_chat(L, "You need an attachable assembly!") #undef MAXIMUM_EMP_WIRES diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index 4d2bebf4b7..92d2785d89 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -37,7 +37,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station icon_state = "space" requires_power = 1 always_unpowered = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED power_light = 0 power_equip = 0 power_environ = 0 @@ -48,14 +48,13 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/space/nearstation icon_state = "space_near" - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT /area/start name = "start area" icon_state = "start" requires_power = 0 - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED has_gravity = 1 @@ -81,7 +80,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/asteroid/artifactroom/New() ..() - SetDynamicLighting() + set_dynamic_lighting() /area/planet/clown name = "Clown Planet" @@ -108,10 +107,6 @@ NOTE: there are two lists of areas in the end of this file: centcom and station 'sound/ambience/ambimaint3.ogg', 'sound/ambience/ambimaint4.ogg', 'sound/ambience/ambimaint5.ogg', - 'sound/ambience/ambimaint6.ogg', - 'sound/ambience/ambimaint7.ogg', - 'sound/ambience/ambimaint8.ogg', - 'sound/ambience/ambimaint9.ogg', 'sound/voice/lowHiss2.ogg', //Xeno Breathing Hisses, Hahahaha I'm not even sorry. 'sound/voice/lowHiss3.ogg', 'sound/voice/lowHiss4.ogg') @@ -422,8 +417,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/solar requires_power = 0 - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT + dynamic_lighting = DYNAMIC_LIGHTING_IFSTARLIGHT valid_territory = 0 blob_allowed = FALSE flags = NONE @@ -927,26 +921,18 @@ NOTE: there are two lists of areas in the end of this file: centcom and station /area/ai_monitored/turret_protected/AIsatextFP name = "AI Sat Ext" icon_state = "storage" - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT /area/ai_monitored/turret_protected/AIsatextFS name = "AI Sat Ext" icon_state = "storage" - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT /area/ai_monitored/turret_protected/AIsatextAS name = "AI Sat Ext" icon_state = "storage" - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT /area/ai_monitored/turret_protected/AIsatextAP name = "AI Sat Ext" icon_state = "storage" - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT /area/ai_monitored/turret_protected/NewAIMain name = "AI Main New" @@ -999,7 +985,13 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Telecommunications Satellite Lounge" icon_state = "tcomsatlounge" +/area/chapel/asteroid + name = "Chapel Asteroid" + icon_state = "explored" +/area/chapel/dock + name = "Chapel Dock" + icon_state = "construction" ///////////////////////////////////////////////////////////////////// /* diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index 2858c09e36..c2652709a1 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -111,8 +111,11 @@ var/list/teleportlocs = list() power_equip = 1 power_environ = 1 - if (lighting_use_dynamic != DYNAMIC_LIGHTING_IFSTARLIGHT) - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED + if(dynamic_lighting == DYNAMIC_LIGHTING_FORCED) + dynamic_lighting = DYNAMIC_LIGHTING_ENABLED + luminosity = 0 + else if(dynamic_lighting != DYNAMIC_LIGHTING_IFSTARLIGHT) + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED ..() @@ -120,6 +123,9 @@ var/list/teleportlocs = list() blend_mode = BLEND_MULTIPLY // Putting this in the constructor so that it stops the icons being screwed up in the map editor. + if(!IS_DYNAMIC_LIGHTING(src)) + add_overlay(/obj/effect/fullbright) + /area/Destroy() STOP_PROCESSING(SSobj, src) return ..() @@ -255,6 +261,12 @@ var/list/teleportlocs = list() for(var/area/RA in related) RA.ModifyFiredoors(FALSE) +/area/proc/close_and_lock_door(obj/machinery/door/DOOR) + set waitfor = FALSE + DOOR.close() + if(DOOR.density) + DOOR.lock() + /area/proc/burglaralert(obj/trigger) if(always_unpowered == 1) //no burglar alarms in space/asteroid return @@ -266,10 +278,7 @@ var/list/teleportlocs = list() RA.set_fire_alarm_effect() //Lockdown airlocks for(var/obj/machinery/door/DOOR in RA) - spawn(0) - DOOR.close() - if(DOOR.density) - DOOR.lock() + close_and_lock_door(DOOR) for (var/obj/machinery/camera/C in RA) cameras += C @@ -325,15 +334,11 @@ var/list/teleportlocs = list() icon_state = "party" else icon_state = "blue-red" - invisibility = INVISIBILITY_LIGHTING else - // new lighting behaviour with obj lights icon_state = null - invisibility = INVISIBILITY_MAXIMUM /area/space/updateicon() icon_state = null - invisibility = INVISIBILITY_MAXIMUM /* #define EQUIP 1 @@ -413,6 +418,7 @@ var/list/teleportlocs = list() /area/Entered(A) + set waitfor = FALSE if(!isliving(A)) return @@ -434,9 +440,9 @@ var/list/teleportlocs = list() if(!L.client.played) L << sound(sound, repeat = 0, wait = 0, volume = 25, channel = 1) L.client.played = 1 - spawn(600) //ewww - this is very very bad - if(L.&& L.client) - L.client.played = 0 + sleep(600) //ewww - this is very very bad + if(L.&& L.client) + L.client.played = 0 /atom/proc/has_gravity(turf/T) if(!T || !isturf(T)) diff --git a/code/game/area/areas/away_content.dm b/code/game/area/areas/away_content.dm index abe44af5fe..993994cb35 100644 --- a/code/game/area/areas/away_content.dm +++ b/code/game/area/areas/away_content.dm @@ -21,16 +21,14 @@ /area/awaymission/beach name = "Beach" icon_state = "away" - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED requires_power = 0 has_gravity = 1 ambientsounds = list('sound/ambience/shore.ogg', 'sound/ambience/seag1.ogg','sound/ambience/seag2.ogg','sound/ambience/seag2.ogg') /area/awaymission/errorroom name = "Super Secret Room" - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED has_gravity = 1 @@ -39,8 +37,7 @@ /area/awaymission/research name = "Research Outpost" icon_state = "away" - luminosity = 0 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED + dynamic_lighting = DYNAMIC_LIGHTING_ENABLED /area/awaymission/research/interior name = "Research Inside" @@ -159,15 +156,13 @@ name = "Snow Forest" icon_state = "away" requires_power = 0 - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED + dynamic_lighting = DYNAMIC_LIGHTING_ENABLED /area/awaymission/cabin name = "Cabin" icon_state = "away2" requires_power = 1 - luminosity = 0 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED + dynamic_lighting = DYNAMIC_LIGHTING_ENABLED /area/awaymission/snowforest/lumbermill name = "Lumbermill" @@ -178,7 +173,6 @@ /area/awaymission/BMPship name = "BMP Asteroids" icon_state = "away" - luminosity = 0 /area/awaymission/BMPship/Aft @@ -234,31 +228,26 @@ /area/awaymission/wwmines name = "Wild West Mines" icon_state = "away1" - luminosity = 1 requires_power = 0 /area/awaymission/wwgov name = "Wild West Mansion" icon_state = "away2" - luminosity = 1 requires_power = 0 /area/awaymission/wwrefine name = "Wild West Refinery" icon_state = "away3" - luminosity = 1 requires_power = 0 /area/awaymission/wwvault name = "Wild West Vault" icon_state = "away3" - luminosity = 0 /area/awaymission/wwvaultdoors name = "Wild West Vault Doors" // this is to keep the vault area being entirely lit because of requires_power icon_state = "away2" requires_power = 0 - luminosity = 0 /* @@ -327,8 +316,7 @@ name = "Snowdin Tundra Plains" icon_state = "away" requires_power = 0 - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED + dynamic_lighting = DYNAMIC_LIGHTING_ENABLED /area/awaymission/snowdin/post name = "Snowdin Outpost" @@ -341,7 +329,6 @@ /area/awaymission/snowdin/cave name = "Snowdin Caves" icon_state = "away2" - luminosity = 0 /area/awaymission/snowdin/base name = "Snowdin Main Base" @@ -351,7 +338,6 @@ /area/awaymission/snowdin/dungeon1 name = "Snowdin Depths" icon_state = "away2" - luminosity = 0 /area/awaymission/snowdin/sekret name = "Snowdin Operations" @@ -454,4 +440,4 @@ icon_state = "awaycontent29" /area/awaycontent/a30 - icon_state = "awaycontent30" \ No newline at end of file + icon_state = "awaycontent30" diff --git a/code/game/area/areas/centcom.dm b/code/game/area/areas/centcom.dm index 4fdd70e196..b19ef5a997 100644 --- a/code/game/area/areas/centcom.dm +++ b/code/game/area/areas/centcom.dm @@ -4,6 +4,7 @@ /area/centcom name = "Centcom" icon_state = "centcom" + dynamic_lighting = DYNAMIC_LIGHTING_FORCED requires_power = 0 has_gravity = 1 noteleport = 1 @@ -33,16 +34,19 @@ /area/tdome name = "Thunderdome" icon_state = "yellow" + dynamic_lighting = DYNAMIC_LIGHTING_FORCED requires_power = 0 has_gravity = 1 /area/tdome/arena name = "Thunderdome Arena" icon_state = "thunder" + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED /area/tdome/arena_source name = "Thunderdome Arena Template" icon_state = "thunder" + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED /area/tdome/tdome1 name = "Thunderdome (Team 1)" @@ -67,6 +71,7 @@ /area/wizard_station name = "Wizard's Den" icon_state = "yellow" + dynamic_lighting = DYNAMIC_LIGHTING_FORCED requires_power = 0 has_gravity = 1 noteleport = 1 @@ -91,6 +96,7 @@ /area/syndicate_mothership/control name = "Syndicate Control Room" icon_state = "syndie-control" + dynamic_lighting = DYNAMIC_LIGHTING_FORCED /area/syndicate_mothership/elite_squad name = "Syndicate Elite Squad" diff --git a/code/game/area/areas/holodeck.dm b/code/game/area/areas/holodeck.dm index 9fec25892e..21999a74a1 100644 --- a/code/game/area/areas/holodeck.dm +++ b/code/game/area/areas/holodeck.dm @@ -1,8 +1,7 @@ /area/holodeck name = "Holodeck" icon_state = "Holodeck" - luminosity = 1 - lighting_use_dynamic = 0 + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED flags = 0 var/obj/machinery/computer/holodeck/linked @@ -125,4 +124,3 @@ /area/holodeck/rec_center/thunderdome1218 name = "Holodeck - 1218 AD" restricted = 1 - diff --git a/code/game/area/areas/ruins.dm b/code/game/area/areas/ruins.dm index 86373fcfaf..d697c8436f 100644 --- a/code/game/area/areas/ruins.dm +++ b/code/game/area/areas/ruins.dm @@ -113,7 +113,7 @@ icon_state = "space" requires_power = 1 always_unpowered = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_DISABLED + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED has_gravity = 0 power_light = 0 power_equip = 0 diff --git a/code/game/area/areas/shuttles.dm b/code/game/area/areas/shuttles.dm index f44f8ac769..4a261c2d20 100644 --- a/code/game/area/areas/shuttles.dm +++ b/code/game/area/areas/shuttles.dm @@ -4,8 +4,7 @@ /area/shuttle name = "Shuttle" requires_power = 0 - luminosity = 1 - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED + dynamic_lighting = DYNAMIC_LIGHTING_FORCED has_gravity = 1 always_unpowered = 0 valid_territory = 0 diff --git a/code/game/asteroid.dm b/code/game/asteroid.dm deleted file mode 100644 index 2898af93e2..0000000000 --- a/code/game/asteroid.dm +++ /dev/null @@ -1,198 +0,0 @@ -var/global/list/possiblethemes = list("organharvest","cult","wizden","cavein","xenoden","hitech","speakeasy","plantlab") - -var/global/max_secret_rooms = 6 - -/proc/spawn_room(atom/start_loc, x_size, y_size, list/walltypes, floor, name, oldarea) - var/list/room_turfs = list("walls"=list(),"floors"=list()) - - var/area/asteroid/artifactroom/A = new - if(name) - A.name = name - else - A.name = "Artifact Room #[start_loc.x]-[start_loc.y]-[start_loc.z]" - - for(var/x = 0, x < x_size, x++) //sets the size of the room on the x axis - for(var/y = 0, y < y_size, y++) //sets it on y axis. - var/turf/T - var/cur_loc = locate(start_loc.x + x, start_loc.y + y, start_loc.z) - - - if(x == 0 || x == x_size-1 || y == 0 || y == y_size-1) - var/wall = pickweight(walltypes)//totally-solid walls are pretty boring. - T = cur_loc - T.ChangeTurf(wall) - room_turfs["walls"] += T - - - else - T = cur_loc - T.ChangeTurf(floor) - room_turfs["floors"] += T - - if(!oldarea) - A.contents += T - - return room_turfs - -////////////// - -/proc/make_mining_asteroid_secrets() - for(var/i in 1 to max_secret_rooms) - make_mining_asteroid_secret() - -/proc/make_mining_asteroid_secret() - var/valid = 0 - var/turf/T = null - var/sanity = 0 - var/list/room = null - var/list/turfs = null - var/x_size = 5 - var/y_size = 5 - - var/areapoints = 0 - var/theme = "organharvest" - var/list/walltypes = list(/turf/closed/wall=3, /turf/closed/mineral/random=1) - var/list/floortypes = list(/turf/open/floor/plasteel) - var/list/treasureitems = list()//good stuff. only 1 is created per room. - var/list/fluffitems = list()//lesser items, to help fill out the room and enhance the theme. - - x_size = rand(3,7) - y_size = rand(3,7) - areapoints = x_size * y_size - - switch(pick(possiblethemes))//what kind of room is this gonna be? - if("organharvest") - walltypes = list(/turf/closed/wall/r_wall=2,/turf/closed/wall=2,/turf/closed/mineral/random/high_chance=1) - floortypes = list(/turf/open/floor/plasteel,/turf/open/floor/engine) - treasureitems = list(/mob/living/simple_animal/bot/medbot/mysterious=1, /obj/item/weapon/circular_saw=1, /obj/structure/closet/crate/critter=2, /mob/living/simple_animal/pet/cat/space=1) - fluffitems = list(/obj/effect/decal/cleanable/blood=5,/obj/item/organ/appendix=2,/obj/structure/closet/crate/freezer=2, - /obj/structure/table/optable=1,/obj/item/weapon/scalpel=1,/obj/item/weapon/storage/firstaid/regular=3, - /obj/item/weapon/tank/internals/anesthetic=1, /obj/item/weapon/surgical_drapes=2, /obj/item/device/mass_spectrometer/adv=1,/obj/item/clothing/glasses/hud/health=1) - - if("cult") - theme = "cult" - walltypes = list(/turf/closed/wall/mineral/cult=3,/turf/closed/mineral/random/high_chance=1) - floortypes = list(/turf/open/floor/plasteel/cult) - treasureitems = list(/obj/item/device/soulstone/anybody=1, /obj/item/clothing/suit/space/hardsuit/cult=1, /obj/item/weapon/bedsheet/cult=2, - /obj/item/clothing/suit/cultrobes=2, /mob/living/simple_animal/hostile/creature=3) - fluffitems = list(/obj/effect/gateway=1,/obj/effect/gibspawner=1,/obj/structure/destructible/cult/talisman=1,/obj/item/toy/crayon/red=2, - /obj/item/organ/heart=2, /obj/effect/decal/cleanable/blood=4,/obj/structure/table/wood=2,/obj/item/weapon/ectoplasm=3, - /obj/item/clothing/shoes/cult=1) - - if("wizden") - theme = "wizden" - walltypes = list(/turf/closed/wall/mineral/plasma=3,/turf/closed/mineral/random/high_chance=1) - floortypes = list(/turf/open/floor/wood) - treasureitems = list(/obj/item/weapon/veilrender/vealrender=2, /obj/item/weapon/spellbook/oneuse/blind=1,/obj/item/clothing/head/wizard/red=2, - /obj/item/weapon/spellbook/oneuse/forcewall=1, /obj/item/weapon/spellbook/oneuse/smoke=1, /obj/structure/constructshell = 1, /obj/item/toy/katana=3,/obj/item/voodoo=3) - fluffitems = list(/obj/structure/safe/floor=1,/obj/structure/dresser=1,/obj/item/weapon/storage/belt/soulstone=1,/obj/item/trash/candle=3, - /obj/item/weapon/dice=3,/obj/item/weapon/staff=2,/obj/effect/decal/cleanable/dirt=3,/obj/item/weapon/coin/mythril=3) - - if("cavein") - theme = "cavein" - walltypes = list(/turf/closed/mineral/random/high_chance=1) - floortypes = list(/turf/open/floor/plating/asteroid/basalt, /turf/open/floor/plating/beach/sand) - treasureitems = list(/obj/mecha/working/ripley/mining=1, /obj/item/weapon/pickaxe/drill/diamonddrill=2, - /obj/item/weapon/resonator/upgraded=1, /obj/item/weapon/pickaxe/drill/jackhammer=5) - fluffitems = list(/obj/effect/decal/cleanable/blood=3,/obj/effect/decal/remains/human=1,/obj/item/clothing/under/overalls=1, - /obj/item/weapon/reagent_containers/food/snacks/grown/chili=1,/obj/item/weapon/tank/internals/oxygen/red=2) - - if("xenoden") - theme = "xenoden" - walltypes = list(/turf/closed/mineral/random/high_chance=1) - floortypes = list(/turf/open/floor/plating/asteroid/basalt, /turf/open/floor/plating/beach/sand) - treasureitems = list(/obj/item/clothing/mask/facehugger=1) - fluffitems = list(/obj/effect/decal/remains/human=1,/obj/effect/decal/cleanable/xenoblood/xsplatter=5) - - if("hitech") - theme = "hitech" - walltypes = list(/turf/closed/wall/r_wall=5,/turf/closed/mineral/random=1) - floortypes = list(/turf/open/floor/greengrid,/turf/open/floor/bluegrid) - treasureitems = list(/obj/item/weapon/stock_parts/cell/hyper=1, /obj/machinery/chem_dispenser/constructable=1,/obj/machinery/computer/telescience=1, /obj/machinery/r_n_d/protolathe=1, - /obj/machinery/biogenerator=1) - fluffitems = list(/obj/structure/table/reinforced=2,/obj/item/weapon/stock_parts/scanning_module/phasic=3, - /obj/item/weapon/stock_parts/matter_bin/super=3,/obj/item/weapon/stock_parts/manipulator/pico=3, - /obj/item/weapon/stock_parts/capacitor/super=3,/obj/item/device/pda/clear=1, /obj/structure/mecha_wreckage/phazon=1) - - if("speakeasy") - theme = "speakeasy" - floortypes = list(/turf/open/floor/plasteel,/turf/open/floor/wood) - treasureitems = list(/obj/item/weapon/melee/energy/sword/pirate=1,/obj/item/weapon/gun/ballistic/revolver/doublebarrel=1,/obj/item/weapon/storage/backpack/satchel/flat=1, - /obj/machinery/reagentgrinder=2, /obj/machinery/computer/security/wooden_tv=4, /obj/machinery/vending/coffee=3) - fluffitems = list(/obj/structure/table/wood=2,/obj/structure/reagent_dispensers/beerkeg=1,/obj/item/stack/spacecash/c500=4, - /obj/item/weapon/reagent_containers/food/drinks/shaker=1,/obj/item/weapon/reagent_containers/food/drinks/bottle/wine=3, - /obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey=3,/obj/item/clothing/shoes/laceup=2) - - if("plantlab") - theme = "plantlab" - treasureitems = list(/obj/item/weapon/gun/energy/floragun=1,/obj/item/seeds/sunflower/novaflower=2,/obj/item/seeds/tomato/blue/bluespace=2,/obj/item/seeds/tomato/blue=2, - /obj/item/seeds/coffee/robusta=2, /obj/item/seeds/firelemon=2) - fluffitems = list(/obj/item/weapon/twohanded/required/kirbyplants=1,/obj/structure/table/reinforced=2,/obj/machinery/hydroponics/constructable=1, - /obj/structure/glowshroom/single=2,/obj/item/weapon/reagent_containers/syringe/charcoal=2, - /obj/item/weapon/reagent_containers/glass/bottle/diethylamine=3,/obj/item/weapon/reagent_containers/glass/bottle/ammonia=3) - - /*if("poly") - theme = "poly" - x_size = 5 - y_size = 5 - walltypes = list(/turf/closed/wall/mineral/clown) - floortypes= list(/turf/open/floor/engine) - treasureitems = list(/obj/item/weapon/spellbook=1,/obj/mecha/combat/marauder=1,/obj/machinery/wish_granter=1) - fluffitems = list(/obj/item/weapon/melee/energy/axe)*/ - - possiblethemes -= theme //once a theme is selected, it's out of the running! - var/floor = pick(floortypes) - - turfs = get_area_turfs(/area/lavaland/surface/outdoors) - - if(!turfs.len) - return 0 - - while(!valid)//Finds some spots to place these rooms at, where they won't be spotted immediately. - valid = 1 - sanity++ - if(sanity > 100) - return 0 - - T=pick(turfs) - if(!T) - return 0 - - var/list/surroundings = list() - - surroundings += range(7, locate(T.x,T.y,T.z)) - surroundings += range(7, locate(T.x+x_size,T.y,T.z)) - surroundings += range(7, locate(T.x,T.y+y_size,T.z)) - surroundings += range(7, locate(T.x+x_size,T.y+y_size,T.z)) - - for(var/turf/check in surroundings) - var/area/new_area = get_area(check) - if(!(istype(new_area, /area/lavaland/surface/outdoors))) - valid = FALSE - break - - if(!T) - return 0 - - room = spawn_room(T,x_size,y_size,walltypes,floor) //WE'RE FINALLY CREATING THE ROOM - - if(room)//time to fill it with stuff - var/list/emptyturfs = room["floors"] - T = pick(emptyturfs) - if(T) - new /obj/structure/glowshroom/single(T) //Just to make it a little more visible - var/surprise = null - surprise = pickweight(treasureitems) - new surprise(T)//here's the prize - emptyturfs -= T - - while(areapoints >= 10)//lets throw in the fluff items - T = pick(emptyturfs) - var/garbage = null - garbage = pickweight(fluffitems) - new garbage(T) - areapoints -= 5 - emptyturfs -= T - //world.log << "The [theme] themed [T.loc] has been created!" - - return 1 diff --git a/code/game/atoms.dm b/code/game/atoms.dm index ca5e4b0f33..be7e48071a 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -2,7 +2,10 @@ layer = TURF_LAYER plane = GAME_PLANE var/level = 2 + var/flags = 0 + var/list/secondary_flags + var/list/fingerprints var/list/fingerprintshidden var/list/blood_DNA @@ -29,22 +32,15 @@ //atom creation method that preloads variables at creation if(use_preloader && (src.type == _preloader.target_path))//in case the instanciated atom is creating other atoms in New() _preloader.load(src) - //atom color stuff - if(color) - add_atom_colour(color, FIXED_COLOUR_PRIORITY) - //lighting stuff - if(opacity && isturf(src.loc)) - src.loc.UpdateAffectingLights() - - if(luminosity) - light = new(src) + //. = ..() //uncomment if you are dumb enough to add a /datum/New() proc var/do_initialize = SSatoms.initialized if(do_initialize > INITIALIZATION_INSSATOMS) + if(QDELETED(src)) + CRASH("Found new qdeletion in type [type]!") args[1] = do_initialize == INITIALIZATION_INNEW_MAPLOAD Initialize(arglist(args)) - //. = ..() //uncomment if you are dumb enough to add a /datum/New() proc //Called after New if the map is being loaded. mapload = TRUE //Called from base of New if the map is being loaded. mapload = FALSE @@ -57,11 +53,26 @@ //Note: the following functions don't call the base for optimization and must copypasta: // /turf/Initialize // /turf/open/space/Initialize +// /mob/dead/new_player/Initialize + +//Do also note that this proc always runs in New for /mob/dead /atom/proc/Initialize(mapload, ...) if(initialized) stack_trace("Warning: [src]([type]) initialized multiple times!") initialized = TRUE + //atom color stuff + if(color) + add_atom_colour(color, FIXED_COLOUR_PRIORITY) + + if (light_power && light_range) + update_light() + + 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. + + /atom/Destroy() if(alternate_appearances) for(var/aakey in alternate_appearances) @@ -165,16 +176,6 @@ /atom/proc/is_transparent() return container_type & TRANSPARENT -/*//Convenience proc to see whether a container can be accessed in a certain way. - -/atom/proc/can_subract_container() - return flags & EXTRACT_CONTAINER - -/atom/proc/can_add_container() - return flags & INSERT_CONTAINER -*/ - - /atom/proc/allow_drop() return 1 @@ -185,7 +186,7 @@ return /atom/proc/emp_act(severity) - if(istype(wires)) + if(istype(wires) && !HAS_SECONDARY_FLAG(src, NO_EMP_WIRES)) wires.emp_pulse() /atom/proc/bullet_act(obj/item/projectile/P, def_zone) @@ -234,26 +235,26 @@ f_name = "a " f_name += "blood-stained [name]!" - user << "\icon[src] That's [f_name]" + to_chat(user, "\icon[src] That's [f_name]") if(desc) - user << desc + to_chat(user, desc) // *****RM - //user << "[name]: Dn:[density] dir:[dir] cont:[contents] icon:[icon] is:[icon_state] loc:[loc]" + //to_chat(user, "[name]: Dn:[density] dir:[dir] cont:[contents] icon:[icon] is:[icon_state] loc:[loc]") if(reagents && (is_open_container() || is_transparent())) //is_open_container() isn't really the right proc for this, but w/e - user << "It contains:" + to_chat(user, "It contains:") if(reagents.reagent_list.len) if(user.can_see_reagents()) //Show each individual reagent for(var/datum/reagent/R in reagents.reagent_list) - user << "[R.volume] units of [R.name]" + to_chat(user, "[R.volume] units of [R.name]") else //Otherwise, just show the total volume var/total_volume = 0 for(var/datum/reagent/R in reagents.reagent_list) total_volume += R.volume - user << "[total_volume] units of various reagents" + to_chat(user, "[total_volume] units of various reagents") else - user << "Nothing." + to_chat(user, "Nothing.") /atom/proc/relaymove() return @@ -406,7 +407,7 @@ var/list/blood_splatter_icons = list() cur_y = y_arr.Find(src.z) if(cur_y) break -// world << "X = [cur_x]; Y = [cur_y]" +// to_chat(world, "X = [cur_x]; Y = [cur_y]") if(cur_x && cur_y) return list("x"=cur_x,"y"=cur_y) else @@ -423,6 +424,7 @@ var/list/blood_splatter_icons = list() /atom/proc/handle_slip() return + /atom/proc/singularity_act() return @@ -441,6 +443,12 @@ var/list/blood_splatter_icons = list() /atom/proc/ratvar_act() return +/atom/proc/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + return FALSE + +/atom/proc/rcd_act(mob/user, obj/item/weapon/rcd/the_rcd, passed_mode) + return FALSE + /atom/proc/storage_contents_dump_act(obj/item/weapon/storage/src_object, mob/user) return 0 @@ -551,10 +559,6 @@ var/list/blood_splatter_icons = list() /atom/vv_edit_var(var_name, var_value) if(!Debug2) admin_spawned = TRUE - switch(var_name) - if("luminosity") - src.SetLuminosity(var_value) - return//prevent normal setting of this value . = ..() switch(var_name) if("color") @@ -569,4 +573,3 @@ var/list/blood_splatter_icons = list() .["Add reagent"] = "?_src_=vars;addreagent=\ref[src]" .["Trigger EM pulse"] = "?_src_=vars;emp=\ref[src]" .["Trigger explosion"] = "?_src_=vars;explode=\ref[src]" - diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index f30d610dd9..feb726c27b 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -26,10 +26,14 @@ var/datum/forced_movement/force_moving = null //handled soley by forced_movement.dm var/floating = FALSE -/atom/movable/SDQL_update(const/var_name, new_value) - if(var_name == "step_x" || var_name == "step_y" || var_name == "step_size" || var_name == "bound_x" || var_name == "bound_y" || var_name == "bound_width" || var_name == "bound_height") +/atom/movable/vv_edit_var(var_name, var_value) + var/static/list/banned_edits = list("step_x", "step_y", "step_size") + var/static/list/careful_edits = list("bound_x", "bound_y", "bound_width", "bound_height") + if(var_name in banned_edits) return FALSE //PLEASE no. - . = ..() + if((var_name in careful_edits) && (var_value % world.icon_size) != 0) + return FALSE + return ..() /atom/movable/Move(atom/newloc, direct = 0) if(!loc || !newloc) return 0 @@ -87,16 +91,6 @@ //Called after a successful Move(). By this point, we've already moved /atom/movable/proc/Moved(atom/OldLoc, Dir) - //Objects with opacity will trigger nearby lights of the old location to update at next SSlighting fire - if(opacity) - if (isturf(OldLoc)) - OldLoc.UpdateAffectingLights() - if (isturf(loc)) - loc.UpdateAffectingLights() - else - if(light) - light.changed() - if (!inertia_moving) inertia_next_move = world.time + inertia_move_delay newtonian_move(Dir) @@ -111,7 +105,26 @@ orbiting.Check() return 1 -/atom/movable/Destroy() +/atom/movable/Destroy(force) + var/inform_admins = HAS_SECONDARY_FLAG(src, INFORM_ADMINS_ON_RELOCATE) + var/stationloving = HAS_SECONDARY_FLAG(src, STATIONLOVING) + + if(inform_admins && force) + var/turf/T = get_turf(src) + message_admins("[src] has been !!force deleted!! in [ADMIN_COORDJMP(T)].") + log_game("[src] has been !!force deleted!! in [COORD(T)].") + + if(stationloving && !force) + var/turf/currentturf = get_turf(src) + var/turf/targetturf = relocate() + log_game("[src] has been destroyed in [COORD(currentturf)]. Moving it to [COORD(targetturf)].") + if(inform_admins) + message_admins("[src] has been destroyed in [ADMIN_COORDJMP(currentturf)]. Moving it to [ADMIN_COORDJMP(targetturf)].") + return QDEL_HINT_LETMELIVE + + if(stationloving && force) + STOP_PROCESSING(SSinbounds, src) + . = ..() if(loc) loc.handle_atom_del(src) @@ -430,3 +443,78 @@ else if (!on && floating) animate(src, pixel_y = initial(pixel_y), time = 10) floating = FALSE + +/* Stationloving +* +* A stationloving atom will always teleport back to the station +* if it ever leaves the station z-levels or Centcom. It will also, +* when Destroy() is called, will teleport to a random turf on the +* station. +* +* The turf is guaranteed to be "safe" for normal humans, probably. +* If the station is SUPER SMASHED UP, it might not work. +* +* Here are some important procs: +* relocate() +* moves the atom to a safe turf on the station +* +* check_in_bounds() +* regularly called and checks if `in_bounds()` returns true. If false, it +* triggers a `relocate()`. +* +* in_bounds() +* By default, checks that the atom's z is the station z or centcom. +*/ + +/atom/movable/proc/set_stationloving(state, inform_admins=FALSE) + var/currently = HAS_SECONDARY_FLAG(src, STATIONLOVING) + + if(inform_admins) + SET_SECONDARY_FLAG(src, INFORM_ADMINS_ON_RELOCATE) + else + CLEAR_SECONDARY_FLAG(src, INFORM_ADMINS_ON_RELOCATE) + + if(state == currently) + return + else if(!state) + STOP_PROCESSING(SSinbounds, src) + CLEAR_SECONDARY_FLAG(src, STATIONLOVING) + else + START_PROCESSING(SSinbounds, src) + SET_SECONDARY_FLAG(src, STATIONLOVING) + +/atom/movable/proc/relocate() + var/targetturf = find_safe_turf(ZLEVEL_STATION) + if(!targetturf) + if(blobstart.len > 0) + targetturf = get_turf(pick(blobstart)) + else + throw EXCEPTION("Unable to find a blobstart landmark") + + if(ismob(loc)) + var/mob/M = loc + M.transferItemToLoc(src, targetturf, TRUE) //nodrops disks when? + else if(istype(loc, /obj/item/weapon/storage)) + var/obj/item/weapon/storage/S = loc + S.remove_from_storage(src, targetturf) + else + forceMove(targetturf) + // move the disc, so ghosts remain orbiting it even if it's "destroyed" + return targetturf + +/atom/movable/proc/check_in_bounds() + if(in_bounds()) + return + else + var/turf/currentturf = get_turf(src) + get(src, /mob) << "You can't help but feel that you just lost something back there..." + var/turf/targetturf = relocate() + log_game("[src] has been moved out of bounds in [COORD(currentturf)]. Moving it to [COORD(targetturf)].") + if(HAS_SECONDARY_FLAG(src, INFORM_ADMINS_ON_RELOCATE)) + message_admins("[src] has been moved out of bounds in [ADMIN_COORDJMP(currentturf)]. Moving it to [ADMIN_COORDJMP(targetturf)].") + +/atom/movable/proc/in_bounds() + . = FALSE + var/turf/currentturf = get_turf(src) + if(currentturf && (currentturf.z == ZLEVEL_CENTCOM || currentturf.z == ZLEVEL_STATION)) + . = TRUE diff --git a/code/game/communications.dm b/code/game/communications.dm index 2d816cfd8a..387ae605b6 100644 --- a/code/game/communications.dm +++ b/code/game/communications.dm @@ -245,12 +245,12 @@ var/list/pointers = list() if(!holder) return - src << "There are [pointers.len] pointers:" + to_chat(src, "There are [pointers.len] pointers:") for(var/p in pointers) - src << p + to_chat(src, p) var/datum/signal/S = locate(p) if(istype(S)) - src << S.debug_print() + to_chat(src, S.debug_print()) /obj/proc/receive_signal(datum/signal/signal, receive_method, receive_param) return diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index 935b8502b9..bb1371a853 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -45,7 +45,7 @@ hud_icons = list(ID_HUD, IMPTRACK_HUD, IMPLOYAL_HUD, IMPCHEM_HUD, WANTED_HUD) /datum/atom_hud/data/diagnostic - hud_icons = list (DIAG_HUD, DIAG_STAT_HUD, DIAG_BATT_HUD, DIAG_MECH_HUD, DIAG_BOT_HUD, DIAG_TRACK_HUD) + hud_icons = list (DIAG_HUD, DIAG_STAT_HUD, DIAG_BATT_HUD, DIAG_MECH_HUD, DIAG_BOT_HUD, DIAG_TRACK_HUD, DIAG_AIRLOCK_HUD) /* MED/SEC/DIAG HUD HOOKS */ @@ -380,3 +380,13 @@ holder.icon_state = "hudmove" else holder.icon_state = "" + +/*~~~~~~~~~~~~ + Airlocks! +~~~~~~~~~~~~~*/ +/obj/machinery/door/airlock/proc/diag_hud_set_electrified() + var/image/holder = hud_list[DIAG_AIRLOCK_HUD] + if(secondsElectrified != 0) + holder.icon_state = "electrified" + else + holder.icon_state = "" diff --git a/code/game/gamemodes/antag_spawner.dm b/code/game/gamemodes/antag_spawner.dm index 0065a08f7d..d1a357e5a7 100644 --- a/code/game/gamemodes/antag_spawner.dm +++ b/code/game/gamemodes/antag_spawner.dm @@ -54,12 +54,12 @@ H.set_machine(src) if(href_list["school"]) if(used) - H << "You already used this contract!" + to_chat(H, "You already used this contract!") return var/list/candidates = pollCandidatesForMob("Do you want to play as a wizard's [href_list["school"]] apprentice?", ROLE_WIZARD, null, ROLE_WIZARD, 150, src) if(candidates.len) if(used) - H << "You already used this contract!" + to_chat(H, "You already used this contract!") return used = 1 var/mob/dead/observer/theghost = pick(candidates) @@ -67,7 +67,7 @@ if(H && H.mind) ticker.mode.update_wiz_icons_added(H.mind) else - H << "Unable to reach your apprentice! You can either attack the spellbook with the contract to refund your points, or wait and try again later." + to_chat(H, "Unable to reach your apprentice! You can either attack the spellbook with the contract to refund your points, or wait and try again later.") /obj/item/weapon/antag_spawner/contract/spawn_antag(client/C, turf/T, type = "") new /obj/effect/particle_effect/smoke(T) @@ -77,25 +77,25 @@ var/wizard_name = "the wizard" if(usr) wizard_name = usr.real_name - M << "You are [wizard_name]'s apprentice! You are bound by magic contract to follow their orders and help them in accomplishing their goals." + to_chat(M, "You are [wizard_name]'s apprentice! You are bound by magic contract to follow their orders and help them in accomplishing their goals.") switch(type) if("destruction") M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/projectile/magic_missile(null)) M.mind.AddSpell(new /obj/effect/proc_holder/spell/aimed/fireball(null)) - M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned powerful, destructive spells. You are able to cast magic missile and fireball." + to_chat(M, "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned powerful, destructive spells. You are able to cast magic missile and fireball.") if("bluespace") M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/area_teleport/teleport(null)) M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/ethereal_jaunt(null)) - M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned reality bending mobility spells. You are able to cast teleport and ethereal jaunt." + to_chat(M, "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned reality bending mobility spells. You are able to cast teleport and ethereal jaunt.") if("healing") M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/charge(null)) M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/forcewall(null)) M.put_in_hands_or_del(new /obj/item/weapon/gun/magic/staff/healing(M)) - M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned livesaving survival spells. You are able to cast charge and forcewall." + to_chat(M, "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned livesaving survival spells. You are able to cast charge and forcewall.") if("robeless") M.mind.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/knock(null)) M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/mind_transfer(null)) - M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned stealthy, robeless spells. You are able to cast knock and mindswap." + to_chat(M, "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned stealthy, robeless spells. You are able to cast knock and mindswap.") equip_antag(M) var/wizard_name_first = pick(wizard_first) @@ -140,13 +140,13 @@ /obj/item/weapon/antag_spawner/nuke_ops/proc/check_usability(mob/user) if(used) - user << "[src] is out of power!" + to_chat(user, "[src] is out of power!") return 0 if(!(user.mind in ticker.mode.syndicates)) - user << "AUTHENTICATION FAILURE. ACCESS DENIED." + to_chat(user, "AUTHENTICATION FAILURE. ACCESS DENIED.") return 0 if(user.z != ZLEVEL_CENTCOM) - user << "[src] is out of range! It can only be used at your base!" + to_chat(user, "[src] is out of range! It can only be used at your base!") return 0 return 1 @@ -167,7 +167,7 @@ S.start() qdel(src) else - user << "Unable to connect to Syndicate command. Please wait and try again later or use the teleporter on your uplink to get your points refunded." + to_chat(user, "Unable to connect to Syndicate command. Please wait and try again later or use the teleporter on your uplink to get your points refunded.") /obj/item/weapon/antag_spawner/nuke_ops/spawn_antag(client/C, turf/T) var/mob/living/carbon/human/M = new/mob/living/carbon/human(T) @@ -236,7 +236,7 @@ /obj/item/weapon/antag_spawner/slaughter_demon/attack_self(mob/user) if(user.z != 1) - user << "You should probably wait until you reach the station." + to_chat(user, "You should probably wait until you reach the station.") return if(used) return @@ -247,12 +247,12 @@ used = 1 var/mob/dead/observer/theghost = pick(demon_candidates) spawn_antag(theghost.client, get_turf(src), initial(demon_type.name)) - user << shatter_msg - user << veil_msg + to_chat(user, shatter_msg) + to_chat(user, veil_msg) playsound(user.loc, 'sound/effects/Glassbr1.ogg', 100, 1) qdel(src) else - user << "You can't seem to work up the nerve to shatter the bottle. Perhaps you should try again later." + to_chat(user, "You can't seem to work up the nerve to shatter the bottle. Perhaps you should try again later.") /obj/item/weapon/antag_spawner/slaughter_demon/spawn_antag(client/C, turf/T, type = "") @@ -275,12 +275,12 @@ new_objective2.owner = S.mind new_objective2.explanation_text = "[objective_verb] everyone[usr ? " else while you're at it":""]." S.mind.objectives += new_objective2 - S << S.playstyle_string - S << "You are currently not currently in the same plane of existence as the station. \ - Ctrl+Click a blood pool to manifest." + to_chat(S, S.playstyle_string) + to_chat(S, "You are currently not currently in the same plane of existence as the station. \ + Ctrl+Click a blood pool to manifest.") if(new_objective) - S << "Objective #[1]: [new_objective.explanation_text]" - S << "Objective #[new_objective ? "[2]":"[1]"]: [new_objective2.explanation_text]" + to_chat(S, "Objective #[1]: [new_objective.explanation_text]") + to_chat(S, "Objective #[new_objective ? "[2]":"[1]"]: [new_objective2.explanation_text]") /obj/item/weapon/antag_spawner/slaughter_demon/laughter name = "vial of tickles" diff --git a/code/game/gamemodes/blob/blob.dm b/code/game/gamemodes/blob/blob.dm index 7e45ff04d8..5a585ef6e9 100644 --- a/code/game/gamemodes/blob/blob.dm +++ b/code/game/gamemodes/blob/blob.dm @@ -70,9 +70,10 @@ var/list/blobs_legit = list() //used for win-score calculations, contains only b /datum/game_mode/blob/proc/show_message(message) for(var/datum/mind/blob in blob_overminds) - blob.current << message + to_chat(blob.current, message) /datum/game_mode/blob/post_setup() + set waitfor = FALSE for(var/datum/mind/blob in blob_overminds) var/mob/camera/blob/B = blob.current.become_overmind(TRUE, round(blob_base_starting_points/blob_overminds.len)) @@ -88,16 +89,15 @@ var/list/blobs_legit = list() //used for win-score calculations, contains only b if(B) B.max_occurrences = 0 // disable the event - spawn(0) - var/message_delay = rand(messagedelay_low, messagedelay_high) //between 4 and 6 minutes with 2400 low and 3600 high. + . = ..() - sleep(message_delay) + var/message_delay = rand(messagedelay_low, messagedelay_high) //between 4 and 6 minutes with 2400 low and 3600 high. - send_intercept(1) - message_sent = TRUE + sleep(message_delay) - sleep(24000) //40 minutes, plus burst_delay*3(minimum of 6 minutes, maximum of 8) - if(!replacementmode) - send_intercept(2) //if the blob has been alive this long, it's time to bomb it + send_intercept(1) + message_sent = TRUE - return ..() + sleep(24000) //40 minutes, plus burst_delay*3(minimum of 6 minutes, maximum of 8) + if(!replacementmode) + send_intercept(2) //if the blob has been alive this long, it's time to bomb it \ No newline at end of file diff --git a/code/game/gamemodes/blob/blob_finish.dm b/code/game/gamemodes/blob/blob_finish.dm index 5efacb312f..0c9838daaa 100644 --- a/code/game/gamemodes/blob/blob_finish.dm +++ b/code/game/gamemodes/blob/blob_finish.dm @@ -21,24 +21,24 @@ ..() if(blobwincount <= blobs_legit.len) feedback_set_details("round_end_result","win - blob took over") - world << "The blob has taken over the station!" - world << "The entire station was eaten by the Blob!" + to_chat(world, "The blob has taken over the station!") + to_chat(world, "The entire station was eaten by the Blob!") log_game("Blob mode completed with a blob victory.") ticker.news_report = BLOB_WIN else if(station_was_nuked) feedback_set_details("round_end_result","halfwin - nuke") - world << "Partial Win: The station has been destroyed!" - world << "Directive 7-12 has been successfully carried out, preventing the Blob from spreading." + to_chat(world, "Partial Win: The station has been destroyed!") + to_chat(world, "Directive 7-12 has been successfully carried out, preventing the Blob from spreading.") log_game("Blob mode completed with a tie (station destroyed).") ticker.news_report = BLOB_NUKE else if(!blob_cores.len) feedback_set_details("round_end_result","loss - blob eliminated") - world << "The staff has won!" - world << "The alien organism has been eradicated from the station!" + to_chat(world, "The staff has won!") + to_chat(world, "The alien organism has been eradicated from the station!") log_game("Blob mode completed with a crew victory.") ticker.news_report = BLOB_DESTROYED @@ -68,5 +68,5 @@ var/text = "The blob[(blob_mode.blob_overminds.len > 1 ? "s were" : " was")]:" for(var/datum/mind/blob in blob_mode.blob_overminds) text += printplayer(blob) - world << text + to_chat(world, text) return 1 diff --git a/code/game/gamemodes/blob/blob_report.dm b/code/game/gamemodes/blob/blob_report.dm index cf61a3f278..0f9b37c7be 100644 --- a/code/game/gamemodes/blob/blob_report.dm +++ b/code/game/gamemodes/blob/blob_report.dm @@ -13,7 +13,7 @@ intercepttext += " 2. If found, use any neccesary means to contain and destroy the organism.
" intercepttext += " 3. Avoid damage to the capital infrastructure of the station.
" intercepttext += "
Note in the event of a quarantine breach or uncontrolled spread of the biohazard, Biohazard Response Procedure 5-12 may be issued.
" - print_command_report(intercepttext,"Level 5-6 Biohazard Response Procedures") + print_command_report(text=intercepttext,title="Level 5-6 Biohazard Response Procedures",announce=FALSE) priority_announce("Confirmed outbreak of level 5 biohazard aboard [station_name()]. All personnel must contain the outbreak.", "Biohazard Alert", 'sound/AI/outbreak5.ogg') if(2) var/nukecode = random_nukecode() @@ -29,8 +29,7 @@ intercepttext += "1. Secure the Nuclear Authentication Disk.
" intercepttext += "2. Detonate the Nuke located in the vault.
" intercepttext += "Nuclear Authentication Code: [nukecode]
" - print_command_report(intercepttext,"Classified [command_name()] Update") - priority_announce("A report has been downloaded and printed out at all communications consoles.", "Incoming Classified Message", 'sound/AI/commandreport.ogg') + print_command_report(text=intercepttext,announce=TRUE) for(var/mob/living/silicon/ai/aiPlayer in player_list) if (aiPlayer.client) @@ -38,7 +37,6 @@ aiPlayer.set_zeroth_law(law) else ..() - return @@ -99,7 +97,7 @@ if(valid_territories.len) num_territories = valid_territories.len //Add them all up to make the total number of area types else - world << "ERROR: NO VALID TERRITORIES" + to_chat(world, "ERROR: NO VALID TERRITORIES") /datum/station_state/proc/score(datum/station_state/result) if(!result) diff --git a/code/game/gamemodes/blob/blobs/blob_mobs.dm b/code/game/gamemodes/blob/blobs/blob_mobs.dm index 6b2ad84146..2249642bfc 100644 --- a/code/game/gamemodes/blob/blobs/blob_mobs.dm +++ b/code/game/gamemodes/blob/blobs/blob_mobs.dm @@ -68,10 +68,10 @@ var/rendered = "\[Blob Telepathy\] [real_name] [spanned_message]" for(var/M in mob_list) if(isovermind(M) || istype(M, /mob/living/simple_animal/hostile/blob)) - M << rendered + to_chat(M, rendered) if(isobserver(M)) var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" + to_chat(M, "[link] [rendered]") //////////////// // BLOB SPORE // @@ -102,7 +102,7 @@ var/is_zombie = 0 gold_core_spawnable = 1 -/mob/living/simple_animal/hostile/blob/blobspore/New(loc, var/obj/structure/blob/factory/linked_node) +/mob/living/simple_animal/hostile/blob/blobspore/Initialize(mapload, var/obj/structure/blob/factory/linked_node) if(istype(linked_node)) factory = linked_node factory.spores += src @@ -222,7 +222,7 @@ see_in_dark = 8 var/independent = FALSE -/mob/living/simple_animal/hostile/blob/blobbernaut/New() +/mob/living/simple_animal/hostile/blob/blobbernaut/Initialize() ..() if(!independent) //no pulling people deep into the blob verbs -= /mob/living/verb/pulled diff --git a/code/game/gamemodes/blob/blobs/factory.dm b/code/game/gamemodes/blob/blobs/factory.dm index cc0749d0c6..47f1ca3ff3 100644 --- a/code/game/gamemodes/blob/blobs/factory.dm +++ b/code/game/gamemodes/blob/blobs/factory.dm @@ -25,7 +25,7 @@ spore.factory = null if(naut) naut.factory = null - naut << "Your factory was destroyed! You feel yourself dying!" + to_chat(naut, "Your factory was destroyed! You feel yourself dying!") naut.throw_alert("nofactory", /obj/screen/alert/nofactory) spores = null return ..() diff --git a/code/game/gamemodes/blob/overmind.dm b/code/game/gamemodes/blob/overmind.dm index 5fb0187ccd..13f868472a 100644 --- a/code/game/gamemodes/blob/overmind.dm +++ b/code/game/gamemodes/blob/overmind.dm @@ -29,7 +29,7 @@ var/manualplace_min_time = 600 //in deciseconds //a minute, to get bearings var/autoplace_max_time = 3600 //six minutes, as long as should be needed -/mob/camera/blob/New(loc, pre_placed = 0, mode_made = 0, starting_points = 60) +/mob/camera/blob/Initialize(mapload, pre_placed = 0, mode_made = 0, starting_points = 60) blob_points = starting_points if(pre_placed) //we already have a core! manualplace_min_time = 0 @@ -61,8 +61,8 @@ if(!blob_core) if(!placed) if(manualplace_min_time && world.time >= manualplace_min_time) - src << "You may now place your blob core." - src << "You will automatically place your blob core in [round((autoplace_max_time - world.time)/600, 0.5)] minutes." + to_chat(src, "You may now place your blob core.") + to_chat(src, "You will automatically place your blob core in [round((autoplace_max_time - world.time)/600, 0.5)] minutes.") manualplace_min_time = 0 if(autoplace_max_time && world.time >= autoplace_max_time) place_blob_core(base_point_rate, 1) @@ -92,7 +92,7 @@ /mob/camera/blob/Login() ..() sync_mind() - src << "You are the overmind!" + to_chat(src, "You are the overmind!") blob_help() update_health_hud() add_points(0) @@ -100,7 +100,7 @@ /mob/camera/blob/examine(mob/user) ..() if(blob_reagent_datum) - user << "Its chemical is [blob_reagent_datum.name]." + to_chat(user, "Its chemical is [blob_reagent_datum.name].") /mob/camera/blob/update_health_hud() if(blob_core) @@ -119,7 +119,7 @@ if (src.client) if(client.prefs.muted & MUTE_IC) - src << "You cannot send IC messages (muted)." + to_chat(src, "You cannot send IC messages (muted).") return if (src.client.handle_spam_prevention(message,MUTE_IC)) return @@ -142,10 +142,10 @@ for(var/mob/M in mob_list) if(isovermind(M) || istype(M, /mob/living/simple_animal/hostile/blob)) - M << rendered + to_chat(M, rendered) if(isobserver(M)) var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" + to_chat(M, "[link] [rendered]") /mob/camera/blob/emote(act,m_type=1,message = null) return diff --git a/code/game/gamemodes/blob/powers.dm b/code/game/gamemodes/blob/powers.dm index 1dc8df2ceb..3a4610f66b 100644 --- a/code/game/gamemodes/blob/powers.dm +++ b/code/game/gamemodes/blob/powers.dm @@ -1,6 +1,6 @@ /mob/camera/blob/proc/can_buy(cost = 15) if(blob_points < cost) - src << "You cannot afford this, you need at least [cost] resources!" + to_chat(src, "You cannot afford this, you need at least [cost] resources!") return 0 add_points(-cost) return 1 @@ -15,30 +15,30 @@ if("blob" in M.faction) continue if(M.client) - src << "There is someone too close to place your blob core!" + to_chat(src, "There is someone too close to place your blob core!") return 0 for(var/mob/living/M in view(13, src)) if("blob" in M.faction) continue if(M.client) - src << "Someone could see your blob core from here!" + to_chat(src, "Someone could see your blob core from here!") return 0 var/turf/T = get_turf(src) if(T.density) - src << "This spot is too dense to place a blob core on!" + to_chat(src, "This spot is too dense to place a blob core on!") return 0 for(var/obj/O in T) if(istype(O, /obj/structure/blob)) if(istype(O, /obj/structure/blob/normal)) qdel(O) else - src << "There is already a blob here!" + to_chat(src, "There is already a blob here!") return 0 else if(O.density) - src << "This spot is too dense to place a blob core on!" + to_chat(src, "This spot is too dense to place a blob core on!") return 0 if(world.time <= manualplace_min_time && world.time <= autoplace_max_time) - src << "It is too early to place your blob core!" + to_chat(src, "It is too early to place your blob core!") return 0 else if(placement_override == 1) var/turf/T = pick(blobstart) @@ -80,19 +80,19 @@ T = get_turf(src) var/obj/structure/blob/B = (locate(/obj/structure/blob) in T) if(!B) - src << "There is no blob here!" + to_chat(src, "There is no blob here!") return if(!istype(B, /obj/structure/blob/normal)) - src << "Unable to use this blob, find a normal one." + to_chat(src, "Unable to use this blob, find a normal one.") return if(needsNode && nodes_required) if(!(locate(/obj/structure/blob/node) in orange(3, T)) && !(locate(/obj/structure/blob/core) in orange(4, T))) - src << "You need to place this blob closer to a node or core!" + to_chat(src, "You need to place this blob closer to a node or core!") return //handholdotron 2000 if(nearEquals) for(var/obj/structure/blob/L in orange(nearEquals, T)) if(L.type == blobType) - src << "There is a similar blob nearby, move more than [nearEquals] tiles away from it!" + to_chat(src, "There is a similar blob nearby, move more than [nearEquals] tiles away from it!") return if(!can_buy(price)) return @@ -105,9 +105,9 @@ set desc = "Toggle requiring nodes to place resource and factory blobs." nodes_required = !nodes_required if(nodes_required) - src << "You now require a nearby node or core to place factory and resource blobs." + to_chat(src, "You now require a nearby node or core to place factory and resource blobs.") else - src << "You no longer require a nearby node or core to place factory and resource blobs." + to_chat(src, "You no longer require a nearby node or core to place factory and resource blobs.") /mob/camera/blob/verb/create_shield_power() set category = "Blob" @@ -143,13 +143,13 @@ var/turf/T = get_turf(src) var/obj/structure/blob/factory/B = locate(/obj/structure/blob/factory) in T if(!B) - src << "You must be on a factory blob!" + to_chat(src, "You must be on a factory blob!") return if(B.naut) //if it already made a blobbernaut, it can't do it again - src << "This factory blob is already sustaining a blobbernaut." + to_chat(src, "This factory blob is already sustaining a blobbernaut.") return if(B.obj_integrity < B.max_integrity * 0.5) - src << "This factory blob is too damaged to sustain a blobbernaut." + to_chat(src, "This factory blob is too damaged to sustain a blobbernaut.") return if(!can_buy(40)) return @@ -173,11 +173,11 @@ blobber.key = C.key blobber << 'sound/effects/blobattack.ogg' blobber << 'sound/effects/attackblob.ogg' - blobber << "You are a blobbernaut!" - blobber << "You are powerful, hard to kill, and slowly regenerate near nodes and cores, but will slowly die if not near the blob or if the factory that made you is killed." - blobber << "You can communicate with other blobbernauts and overminds via :b" - blobber << "Your overmind's blob reagent is: [blob_reagent_datum.name]!" - blobber << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.shortdesc ? "[blob_reagent_datum.shortdesc]" : "[blob_reagent_datum.description]"]" + to_chat(blobber, "You are a blobbernaut!") + to_chat(blobber, "You are powerful, hard to kill, and slowly regenerate near nodes and cores, but will slowly die if not near the blob or if the factory that made you is killed.") + to_chat(blobber, "You can communicate with other blobbernauts and overminds via :b") + to_chat(blobber, "Your overmind's blob reagent is: [blob_reagent_datum.name]!") + to_chat(blobber, "The [blob_reagent_datum.name] reagent [blob_reagent_datum.shortdesc ? "[blob_reagent_datum.shortdesc]" : "[blob_reagent_datum.description]"]") if(blobber) blobber.notransform = 0 @@ -188,14 +188,14 @@ var/turf/T = get_turf(src) var/obj/structure/blob/node/B = locate(/obj/structure/blob/node) in T if(!B) - src << "You must be on a blob node!" + to_chat(src, "You must be on a blob node!") return if(!blob_core) - src << "You have no core and are about to die! May you rest in peace." + to_chat(src, "You have no core and are about to die! May you rest in peace.") return var/area/A = get_area(T) if(isspaceturf(T) || A && !A.blob_allowed) - src << "You cannot relocate your core here!" + to_chat(src, "You cannot relocate your core here!") return if(!can_buy(80)) return @@ -216,17 +216,17 @@ /mob/camera/blob/proc/remove_blob(turf/T) var/obj/structure/blob/B = locate() in T if(!B) - src << "There is no blob there!" + to_chat(src, "There is no blob there!") return if(B.point_return < 0) - src << "Unable to remove this blob." + to_chat(src, "Unable to remove this blob.") return if(max_blob_points < B.point_return + blob_points) - src << "You have too many resources to remove this blob!" + to_chat(src, "You have too many resources to remove this blob!") return if(B.point_return) add_points(B.point_return) - src << "Gained [B.point_return] resources from removing \the [B]." + to_chat(src, "Gained [B.point_return] resources from removing \the [B].") qdel(B) /mob/camera/blob/verb/expand_blob_power() @@ -243,7 +243,7 @@ for(var/obj/structure/blob/AB in range(T, 1)) possibleblobs += AB if(!possibleblobs.len) - src << "There is no blob adjacent to the target tile!" + to_chat(src, "There is no blob adjacent to the target tile!") return if(can_buy(4)) var/attacksuccess = FALSE @@ -260,7 +260,7 @@ if(attacksuccess) //if we successfully attacked a turf with a blob on it, don't refund shit B.blob_attack_animation(T, src) else - src << "There is a blob there!" + to_chat(src, "There is a blob there!") add_points(4) //otherwise, refund all of the cost else var/list/cardinalblobs = list() @@ -295,7 +295,7 @@ rally_spores(T) /mob/camera/blob/proc/rally_spores(turf/T) - src << "You rally your spores." + to_chat(src, "You rally your spores.") var/list/surrounding_turfs = block(locate(T.x - 1, T.y - 1, T.z), locate(T.x + 1, T.y + 1, T.z)) if(!surrounding_turfs.len) return @@ -312,7 +312,7 @@ if(!speak_text) return else - src << "You broadcast with your minions, [speak_text]" + to_chat(src, "You broadcast with your minions, [speak_text]") for(var/BLO in blob_mobs) var/mob/living/simple_animal/hostile/blob/BM = BLO if(BM.stat == CONSCIOUS) @@ -337,33 +337,33 @@ for(var/BLO in blob_mobs) var/mob/living/simple_animal/hostile/blob/BM = BLO BM.update_icons() //If it's getting a new chemical, tell it what it does! - BM << "Your overmind's blob reagent is now: [blob_reagent_datum.name]!" - BM << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.shortdesc ? "[blob_reagent_datum.shortdesc]" : "[blob_reagent_datum.description]"]" - src << "Your reagent is now: [blob_reagent_datum.name]!" - src << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.description]" + to_chat(BM, "Your overmind's blob reagent is now: [blob_reagent_datum.name]!") + to_chat(BM, "The [blob_reagent_datum.name] reagent [blob_reagent_datum.shortdesc ? "[blob_reagent_datum.shortdesc]" : "[blob_reagent_datum.description]"]") + to_chat(src, "Your reagent is now: [blob_reagent_datum.name]!") + to_chat(src, "The [blob_reagent_datum.name] reagent [blob_reagent_datum.description]") if(blob_reagent_datum.effectdesc) - src << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.effectdesc]" + to_chat(src, "The [blob_reagent_datum.name] reagent [blob_reagent_datum.effectdesc]") /mob/camera/blob/verb/blob_help() set category = "Blob" set name = "*Blob Help*" set desc = "Help on how to blob." - src << "As the overmind, you can control the blob!" - src << "Your blob reagent is: [blob_reagent_datum.name]!" - src << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.description]" + to_chat(src, "As the overmind, you can control the blob!") + to_chat(src, "Your blob reagent is: [blob_reagent_datum.name]!") + to_chat(src, "The [blob_reagent_datum.name] reagent [blob_reagent_datum.description]") if(blob_reagent_datum.effectdesc) - src << "The [blob_reagent_datum.name] reagent [blob_reagent_datum.effectdesc]" - src << "You can expand, which will attack people, damage objects, or place a Normal Blob if the tile is clear." - src << "Normal Blobs will expand your reach and can be upgraded into special blobs that perform certain functions." - src << "You can upgrade normal blobs into the following types of blob:" - src << "Shield Blobs are strong and expensive blobs which take more damage. In additon, they are fireproof and can block air, use these to protect yourself from station fires." - src << "Resource Blobs are blobs which produce more resources for you, build as many of these as possible to consume the station. This type of blob must be placed near node blobs or your core to work." - src << "Factory Blobs are blobs that spawn blob spores which will attack nearby enemies. This type of blob must be placed near node blobs or your core to work." - src << "Blobbernauts can be produced from factories for a cost, and are hard to kill, powerful, and moderately smart. The factory used to create one will become fragile and briefly unable to produce spores." - src << "Node Blobs are blobs which grow, like the core. Like the core it can activate resource and factory blobs." - src << "In addition to the buttons on your HUD, there are a few click shortcuts to speed up expansion and defense." - src << "Shortcuts: Click = Expand Blob | Middle Mouse Click = Rally Spores | Ctrl Click = Create Shield Blob | Alt Click = Remove Blob" - src << "Attempting to talk will send a message to all other overminds, allowing you to coordinate with them." + to_chat(src, "The [blob_reagent_datum.name] reagent [blob_reagent_datum.effectdesc]") + to_chat(src, "You can expand, which will attack people, damage objects, or place a Normal Blob if the tile is clear.") + to_chat(src, "Normal Blobs will expand your reach and can be upgraded into special blobs that perform certain functions.") + to_chat(src, "You can upgrade normal blobs into the following types of blob:") + to_chat(src, "Shield Blobs are strong and expensive blobs which take more damage. In additon, they are fireproof and can block air, use these to protect yourself from station fires.") + to_chat(src, "Resource Blobs are blobs which produce more resources for you, build as many of these as possible to consume the station. This type of blob must be placed near node blobs or your core to work.") + to_chat(src, "Factory Blobs are blobs that spawn blob spores which will attack nearby enemies. This type of blob must be placed near node blobs or your core to work.") + to_chat(src, "Blobbernauts can be produced from factories for a cost, and are hard to kill, powerful, and moderately smart. The factory used to create one will become fragile and briefly unable to produce spores.") + to_chat(src, "Node Blobs are blobs which grow, like the core. Like the core it can activate resource and factory blobs.") + to_chat(src, "In addition to the buttons on your HUD, there are a few click shortcuts to speed up expansion and defense.") + to_chat(src, "Shortcuts: Click = Expand Blob | Middle Mouse Click = Rally Spores | Ctrl Click = Create Shield Blob | Alt Click = Remove Blob") + to_chat(src, "Attempting to talk will send a message to all other overminds, allowing you to coordinate with them.") if(!placed && autoplace_max_time <= world.time) - src << "You will automatically place your blob core in [round((autoplace_max_time - world.time)/600, 0.5)] minutes." - src << "You [manualplace_min_time ? "will be able to":"can"] manually place your blob core by pressing the Place Blob Core button in the bottom right corner of the screen." + to_chat(src, "You will automatically place your blob core in [round((autoplace_max_time - world.time)/600, 0.5)] minutes.") + to_chat(src, "You [manualplace_min_time ? "will be able to":"can"] manually place your blob core by pressing the Place Blob Core button in the bottom right corner of the screen.") diff --git a/code/game/gamemodes/blob/theblob.dm b/code/game/gamemodes/blob/theblob.dm index 209d8ca130..4924b06ed5 100644 --- a/code/game/gamemodes/blob/theblob.dm +++ b/code/game/gamemodes/blob/theblob.dm @@ -2,7 +2,7 @@ /obj/structure/blob name = "blob" icon = 'icons/mob/blob.dmi' - luminosity = 1 + light_range = 2 desc = "A thick wall of writhing tendrils." density = 0 //this being 0 causes two bugs, being able to attack blob tiles behind other blobs and being unable to move on blob tiles in no gravity, but turning it to 1 causes the blob mobs to be unable to path through blobs, which is probably worse. opacity = 0 @@ -229,7 +229,7 @@ /obj/structure/blob/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/device/analyzer)) user.changeNext_move(CLICK_CD_MELEE) - user << "The analyzer beeps once, then reports:
" + to_chat(user, "The analyzer beeps once, then reports:
") user << 'sound/machines/ping.ogg' chemeffectreport(user) typereport(user) @@ -238,16 +238,16 @@ /obj/structure/blob/proc/chemeffectreport(mob/user) if(overmind) - user << "Material: [overmind.blob_reagent_datum.name]." - user << "Material Effects: [overmind.blob_reagent_datum.analyzerdescdamage]" - user << "Material Properties: [overmind.blob_reagent_datum.analyzerdesceffect]
" + to_chat(user, "Material: [overmind.blob_reagent_datum.name].") + to_chat(user, "Material Effects: [overmind.blob_reagent_datum.analyzerdescdamage]") + to_chat(user, "Material Properties: [overmind.blob_reagent_datum.analyzerdesceffect]
") else - user << "No Material Detected!
" + to_chat(user, "No Material Detected!
") /obj/structure/blob/proc/typereport(mob/user) - user << "Blob Type: [uppertext(initial(name))]" - user << "Health: [obj_integrity]/[max_integrity]" - user << "Effects: [scannerreport()]" + to_chat(user, "Blob Type: [uppertext(initial(name))]") + to_chat(user, "Health: [obj_integrity]/[max_integrity]") + to_chat(user, "Effects: [scannerreport()]") /obj/structure/blob/attack_animal(mob/living/simple_animal/M) if("blob" in M.faction) //sorry, but you can't kill the blob as a blobbernaut @@ -308,11 +308,11 @@ ..() var/datum/atom_hud/hud_to_check = huds[DATA_HUD_MEDICAL_ADVANCED] if(user.research_scanner || (user in hud_to_check.hudusers)) - user << "Your HUD displays an extensive report...
" + to_chat(user, "Your HUD displays an extensive report...
") chemeffectreport(user) typereport(user) else - user << "It seems to be made of [get_chem_name()]." + to_chat(user, "It seems to be made of [get_chem_name()].") /obj/structure/blob/proc/scannerreport() return "A generic blob. Looks like someone forgot to override this proc, adminhelp this." @@ -325,7 +325,7 @@ /obj/structure/blob/normal name = "normal blob" icon_state = "blob" - luminosity = 0 + light_range = 0 obj_integrity = 21 max_integrity = 25 health_regen = 1 diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index 9bb07be53b..d822681e24 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -18,7 +18,7 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas antag_flag = ROLE_CHANGELING restricted_jobs = list("AI", "Cyborg") protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain") - required_players = 10 + required_players = 15 required_enemies = 1 recommended_enemies = 4 reroll_friendly = 1 @@ -197,19 +197,19 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas /datum/game_mode/proc/greet_changeling(datum/mind/changeling, you_are=1) if (you_are) - changeling.current << "You are [changeling.changeling.changelingID], a changeling! You have absorbed and taken the form of a human." - changeling.current << "Use say \":g message\" to communicate with your fellow changelings." - changeling.current << "You must complete the following tasks:" + to_chat(changeling.current, "You are [changeling.changeling.changelingID], a changeling! You have absorbed and taken the form of a human.") + to_chat(changeling.current, "Use say \":g message\" to communicate with your fellow changelings.") + to_chat(changeling.current, "You must complete the following tasks:") if (changeling.current.mind) var/mob/living/carbon/human/H = changeling.current if(H.mind.assigned_role == "Clown") - H << "You have evolved beyond your clownish nature, allowing you to wield weapons without harming yourself." + to_chat(H, "You have evolved beyond your clownish nature, allowing you to wield weapons without harming yourself.") H.dna.remove_mutation(CLOWNMUT) var/obj_count = 1 for(var/datum/objective/objective in changeling.objectives) - changeling.current << "Objective #[obj_count]: [objective.explanation_text]" + to_chat(changeling.current, "Objective #[obj_count]: [objective.explanation_text]") obj_count++ return @@ -269,7 +269,7 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas feedback_add_details("changeling_success","FAIL") text += "
" - world << text + to_chat(world, text) return 1 @@ -351,25 +351,25 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas var/datum/changelingprofile/prof = stored_profiles[1] if(prof.dna == user.dna && stored_profiles.len >= dna_max)//If our current DNA is the stalest, we gotta ditch it. if(verbose) - user << "We have reached our capacity to store genetic information! We must transform before absorbing more." + to_chat(user, "We have reached our capacity to store genetic information! We must transform before absorbing more.") return if(!target) return if((target.disabilities & NOCLONE) || (target.disabilities & HUSK)) if(verbose) - user << "DNA of [target] is ruined beyond usability!" + to_chat(user, "DNA of [target] is ruined beyond usability!") return if(!ishuman(target))//Absorbing monkeys is entirely possible, but it can cause issues with transforming. That's what lesser form is for anyway! if(verbose) - user << "We could gain no benefit from absorbing a lesser creature." + to_chat(user, "We could gain no benefit from absorbing a lesser creature.") return if(has_dna(target.dna)) if(verbose) - user << "We already have this DNA in storage!" + to_chat(user, "We already have this DNA in storage!") return if(!target.has_dna()) if(verbose) - user << "[target] is not compatible with our biology." + to_chat(user, "[target] is not compatible with our biology.") return return 1 diff --git a/code/game/gamemodes/changeling/changeling_power.dm b/code/game/gamemodes/changeling/changeling_power.dm index bc8424ceb9..985d1cc8a5 100644 --- a/code/game/gamemodes/changeling/changeling_power.dm +++ b/code/game/gamemodes/changeling/changeling_power.dm @@ -54,23 +54,23 @@ if(!ishuman(user) && !ismonkey(user)) //typecast everything from mob to carbon from this point onwards return 0 if(req_human && !ishuman(user)) - user << "We cannot do that in this form!" + to_chat(user, "We cannot do that in this form!") return 0 var/datum/changeling/c = user.mind.changeling if(c.chem_charges < chemical_cost) - user << "We require at least [chemical_cost] unit\s of chemicals to do that!" + to_chat(user, "We require at least [chemical_cost] unit\s of chemicals to do that!") return 0 if(c.absorbedcount < req_dna) - user << "We require at least [req_dna] sample\s of compatible DNA." + to_chat(user, "We require at least [req_dna] sample\s of compatible DNA.") return 0 if(req_stat < user.stat) - user << "We are incapacitated." + to_chat(user, "We are incapacitated.") return 0 if((user.status_flags & FAKEDEATH) && (!ignores_fakedeath)) - user << "We are incapacitated." + to_chat(user, "We are incapacitated.") return 0 if(c.geneticdamage > max_genetic_damage) - user << "Our genomes are still reassembling. We need time to recover first." + to_chat(user, "Our genomes are still reassembling. We need time to recover first.") return 0 return 1 diff --git a/code/game/gamemodes/changeling/evolution_menu.dm b/code/game/gamemodes/changeling/evolution_menu.dm index 0038a5dba2..66735271ef 100644 --- a/code/game/gamemodes/changeling/evolution_menu.dm +++ b/code/game/gamemodes/changeling/evolution_menu.dm @@ -8,27 +8,27 @@ thepower = S if(thepower == null) - user << "This is awkward. Changeling power purchase failed, please report this bug to a coder!" + to_chat(user, "This is awkward. Changeling power purchase failed, please report this bug to a coder!") return if(absorbedcount < thepower.req_dna) - user << "We lack the energy to evolve this ability!" + to_chat(user, "We lack the energy to evolve this ability!") return if(has_sting(thepower)) - user << "We have already evolved this ability!" + to_chat(user, "We have already evolved this ability!") return if(thepower.dna_cost < 0) - user << "We cannot evolve this ability." + to_chat(user, "We cannot evolve this ability.") return if(geneticpoints < thepower.dna_cost) - user << "We have reached our capacity for abilities." + to_chat(user, "We have reached our capacity for abilities.") return if(user.status_flags & FAKEDEATH)//To avoid potential exploits by buying new powers while in stasis, which clears your verblist. - user << "We lack the energy to evolve new abilities right now." + to_chat(user, "We lack the energy to evolve new abilities right now.") return geneticpoints -= thepower.dna_cost @@ -38,16 +38,16 @@ //Reselect powers /datum/changeling/proc/lingRespec(mob/user) if(!ishuman(user)) - user << "We can't remove our evolutions in this form!" + to_chat(user, "We can't remove our evolutions in this form!") return if(canrespec) - user << "We have removed our evolutions from this form, and are now ready to readapt." + to_chat(user, "We have removed our evolutions from this form, and are now ready to readapt.") user.remove_changeling_powers(1) canrespec = 0 user.make_changeling() return 1 else - user << "You lack the power to readapt your evolutions!" + to_chat(user, "You lack the power to readapt your evolutions!") return 0 /mob/proc/make_changeling() diff --git a/code/game/gamemodes/changeling/powers/absorb.dm b/code/game/gamemodes/changeling/powers/absorb.dm index 204b187d01..6ffb31477f 100644 --- a/code/game/gamemodes/changeling/powers/absorb.dm +++ b/code/game/gamemodes/changeling/powers/absorb.dm @@ -12,14 +12,14 @@ var/datum/changeling/changeling = user.mind.changeling if(changeling.isabsorbing) - user << "We are already absorbing!" + to_chat(user, "We are already absorbing!") return if(!user.pulling || !iscarbon(user.pulling)) - user << "We must be grabbing a creature to absorb them!" + to_chat(user, "We must be grabbing a creature to absorb them!") return if(user.grab_state <= GRAB_NECK) - user << "We must have a tighter grip to absorb this creature!" + to_chat(user, "We must have a tighter grip to absorb this creature!") return var/mob/living/carbon/target = user.pulling @@ -34,22 +34,22 @@ for(var/stage = 1, stage<=3, stage++) switch(stage) if(1) - user << "This creature is compatible. We must hold still..." + to_chat(user, "This creature is compatible. We must hold still...") if(2) user.visible_message("[user] extends a proboscis!", "We extend a proboscis.") if(3) user.visible_message("[user] stabs [target] with the proboscis!", "We stab [target] with the proboscis.") - target << "You feel a sharp stabbing pain!" + to_chat(target, "You feel a sharp stabbing pain!") target.take_overall_damage(40) feedback_add_details("changeling_powers","A[stage]") if(!do_mob(user, target, 150)) - user << "Our absorption of [target] has been interrupted!" + to_chat(user, "Our absorption of [target] has been interrupted!") changeling.isabsorbing = 0 return user.visible_message("[user] sucks the fluids from [target]!", "We have absorbed [target].") - target << "You are absorbed by the changeling!" + to_chat(target, "You are absorbed by the changeling!") if(!changeling.has_dna(target.dna)) changeling.add_new_profile(target, user) @@ -65,22 +65,24 @@ //Recent as opposed to all because rounds tend to have a LOT of text. var/list/recent_speech = list() - if(target.say_log.len > LING_ABSORB_RECENT_SPEECH) - recent_speech = target.say_log.Copy(target.say_log.len-LING_ABSORB_RECENT_SPEECH+1,0) //0 so len-LING_ARS+1 to end of list + var/list/say_log = target.logging[INDIVIDUAL_SAY_LOG] + + if(LAZYLEN(say_log) > LING_ABSORB_RECENT_SPEECH) + recent_speech = say_log.Copy(say_log.len-LING_ABSORB_RECENT_SPEECH+1,0) //0 so len-LING_ARS+1 to end of list else - for(var/spoken_memory in target.say_log) + for(var/spoken_memory in say_log) if(recent_speech.len >= LING_ABSORB_RECENT_SPEECH) break - recent_speech[spoken_memory] = target.say_log[spoken_memory] + recent_speech[spoken_memory] = say_log[spoken_memory] if(recent_speech.len) user.mind.store_memory("Some of [target]'s speech patterns, we should study these to better impersonate them!") - user << "Some of [target]'s speech patterns, we should study these to better impersonate them!" + to_chat(user, "Some of [target]'s speech patterns, we should study these to better impersonate them!") for(var/spoken_memory in recent_speech) user.mind.store_memory("\"[recent_speech[spoken_memory]]\"") - user << "\"[recent_speech[spoken_memory]]\"" + to_chat(user, "\"[recent_speech[spoken_memory]]\"") user.mind.store_memory("We have no more knowledge of [target]'s speech patterns.") - user << "We have no more knowledge of [target]'s speech patterns." + to_chat(user, "We have no more knowledge of [target]'s speech patterns.") if(target.mind.changeling)//If the target was a changeling, suck out their extra juice and objective points! changeling.chem_charges += min(target.mind.changeling.chem_charges, changeling.chem_storage) diff --git a/code/game/gamemodes/changeling/powers/adrenaline.dm b/code/game/gamemodes/changeling/powers/adrenaline.dm index b0d3bd841d..962297a00b 100644 --- a/code/game/gamemodes/changeling/powers/adrenaline.dm +++ b/code/game/gamemodes/changeling/powers/adrenaline.dm @@ -9,7 +9,7 @@ //Recover from stuns. /obj/effect/proc_holder/changeling/adrenaline/sting_action(mob/living/user) - user << "Energy rushes through us.[user.lying ? " We arise." : ""]" + to_chat(user, "Energy rushes through us.[user.lying ? " We arise." : ""]") user.SetSleeping(0) user.SetParalysis(0) user.SetStunned(0) diff --git a/code/game/gamemodes/changeling/powers/augmented_eyesight.dm b/code/game/gamemodes/changeling/powers/augmented_eyesight.dm index b361e47d64..6cf5d55d2d 100644 --- a/code/game/gamemodes/changeling/powers/augmented_eyesight.dm +++ b/code/game/gamemodes/changeling/powers/augmented_eyesight.dm @@ -17,14 +17,14 @@ if(E.flash_protect) E.sight_flags |= SEE_MOBS E.flash_protect = -1 - user << "We adjust our eyes to sense prey through walls." + to_chat(user, "We adjust our eyes to sense prey through walls.") else E.sight_flags -= SEE_MOBS E.flash_protect = 2 - user << "We adjust our eyes to protect them from bright lights." + to_chat(user, "We adjust our eyes to protect them from bright lights.") user.update_sight() else - user << "We can't adjust our eyes if we don't have any!" + to_chat(user, "We can't adjust our eyes if we don't have any!") diff --git a/code/game/gamemodes/changeling/powers/biodegrade.dm b/code/game/gamemodes/changeling/powers/biodegrade.dm index 68b05b839d..dd953ba180 100644 --- a/code/game/gamemodes/changeling/powers/biodegrade.dm +++ b/code/game/gamemodes/changeling/powers/biodegrade.dm @@ -12,7 +12,7 @@ /obj/effect/proc_holder/changeling/biodegrade/sting_action(mob/living/carbon/human/user) var/used = FALSE // only one form of shackles removed per use if(!user.restrained() && istype(user.loc, /turf/open)) - user << "We are already free!" + to_chat(user, "We are already free!") return 0 if(user.handcuffed) @@ -40,7 +40,7 @@ if(!istype(C)) return 0 C.visible_message("[C]'s hinges suddenly begin to melt and run!") - user << "We vomit acidic goop onto the interior of [C]!" + to_chat(user, "We vomit acidic goop onto the interior of [C]!") addtimer(CALLBACK(src, .proc/open_closet, user, C), 70) used = TRUE @@ -49,7 +49,7 @@ if(!istype(C)) return 0 C.visible_message("[src] shifts and starts to fall apart!") - user << "We secrete acidic enzymes from our skin and begin melting our cocoon..." + to_chat(user, "We secrete acidic enzymes from our skin and begin melting our cocoon...") addtimer(CALLBACK(src, .proc/dissolve_cocoon, user, C), 25) //Very short because it's just webs used = TRUE @@ -74,9 +74,9 @@ C.locked = FALSE C.broken = TRUE C.open() - user << "We open the container restraining us!" + to_chat(user, "We open the container restraining us!") /obj/effect/proc_holder/changeling/biodegrade/proc/dissolve_cocoon(mob/living/carbon/human/user, obj/structure/spider/cocoon/C) if(C && user.loc == C) qdel(C) //The cocoon's destroy will move the changeling outside of it without interference - user << "We dissolve the cocoon!" + to_chat(user, "We dissolve the cocoon!") diff --git a/code/game/gamemodes/changeling/powers/digitalcamo.dm b/code/game/gamemodes/changeling/powers/digitalcamo.dm index fb70a70b26..13ea947266 100644 --- a/code/game/gamemodes/changeling/powers/digitalcamo.dm +++ b/code/game/gamemodes/changeling/powers/digitalcamo.dm @@ -8,11 +8,11 @@ /obj/effect/proc_holder/changeling/digitalcamo/sting_action(mob/user) if(user.digitalcamo) - user << "We return to normal." + to_chat(user, "We return to normal.") user.digitalinvis = 0 user.digitalcamo = 0 else - user << "We distort our form to hide from the AI" + to_chat(user, "We distort our form to hide from the AI") user.digitalcamo = 1 user.digitalinvis = 1 diff --git a/code/game/gamemodes/changeling/powers/fakedeath.dm b/code/game/gamemodes/changeling/powers/fakedeath.dm index b7648e53ef..bdcca566c3 100644 --- a/code/game/gamemodes/changeling/powers/fakedeath.dm +++ b/code/game/gamemodes/changeling/powers/fakedeath.dm @@ -10,7 +10,7 @@ //Fake our own death and fully heal. You will appear to be dead but regenerate fully after a short delay. /obj/effect/proc_holder/changeling/fakedeath/sting_action(mob/living/user) - user << "We begin our stasis, preparing energy to arise once more." + to_chat(user, "We begin our stasis, preparing energy to arise once more.") if(user.stat != DEAD) user.emote("deathgasp") user.tod = worldtime2text() @@ -25,12 +25,12 @@ /obj/effect/proc_holder/changeling/fakedeath/proc/ready_to_regenerate(mob/user) if(user && user.mind && user.mind.changeling && user.mind.changeling.purchasedpowers) - user << "We are ready to revive." + to_chat(user, "We are ready to revive.") user.mind.changeling.purchasedpowers += new /obj/effect/proc_holder/changeling/revive(null) /obj/effect/proc_holder/changeling/fakedeath/can_sting(mob/user) if(user.status_flags & FAKEDEATH) - user << "We are already reviving." + to_chat(user, "We are already reviving.") return if(!user.stat) //Confirmation for living changelings if they want to fake their death switch(alert("Are we sure we wish to fake our own death?",,"Yes", "No")) diff --git a/code/game/gamemodes/changeling/powers/fleshmend.dm b/code/game/gamemodes/changeling/powers/fleshmend.dm index 0d3f6a0f45..bdf1c94bd2 100644 --- a/code/game/gamemodes/changeling/powers/fleshmend.dm +++ b/code/game/gamemodes/changeling/powers/fleshmend.dm @@ -21,7 +21,7 @@ /obj/effect/proc_holder/changeling/fleshmend/Destroy() STOP_PROCESSING(SSobj, src) - ..() + return ..() /obj/effect/proc_holder/changeling/fleshmend/process() if(recent_uses > 1) @@ -30,10 +30,10 @@ //Starts healing you every second for 10 seconds. //Can be used whilst unconscious. /obj/effect/proc_holder/changeling/fleshmend/sting_action(mob/living/user) - user << "We begin to heal rapidly." + to_chat(user, "We begin to heal rapidly.") if(recent_uses > 1) - user << "Our healing's effectiveness is reduced \ - by quick repeated use!" + to_chat(user, "Our healing's effectiveness is reduced \ + by quick repeated use!") recent_uses++ INVOKE_ASYNC(src, .proc/fleshmend, user) diff --git a/code/game/gamemodes/changeling/powers/headcrab.dm b/code/game/gamemodes/changeling/powers/headcrab.dm index 78a0e5f9fe..5d1bd787ef 100644 --- a/code/game/gamemodes/changeling/powers/headcrab.dm +++ b/code/game/gamemodes/changeling/powers/headcrab.dm @@ -7,6 +7,7 @@ req_human = 1 /obj/effect/proc_holder/changeling/headcrab/sting_action(mob/user) + set waitfor = FALSE var/datum/mind/M = user.mind var/list/organs = user.getorganszone("head", 1) @@ -15,24 +16,24 @@ explosion(get_turf(user),0,0,2,0,silent=1) for(var/mob/living/carbon/human/H in range(2,user)) - H << "You are blinded by a shower of blood!" + to_chat(H, "You are blinded by a shower of blood!") H.Stun(1) H.blur_eyes(20) H.adjust_eye_damage(5) H.confused += 3 for(var/mob/living/silicon/S in range(2,user)) - S << "Your sensors are disabled by a shower of blood!" + to_chat(S, "Your sensors are disabled by a shower of blood!") S.Weaken(3) var/turf = get_turf(user) - spawn(5) // So it's not killed in explosion - var/mob/living/simple_animal/hostile/headcrab/crab = new(turf) - for(var/obj/item/organ/I in organs) - I.loc = crab - crab.origin = M - if(crab.origin) - crab.origin.active = 1 - crab.origin.transfer_to(crab) - crab << "You burst out of the remains of your former body in a shower of gore!" user.gib() feedback_add_details("changeling_powers","LR") - return 1 \ No newline at end of file + . = TRUE + sleep(5) // So it's not killed in explosion + var/mob/living/simple_animal/hostile/headcrab/crab = new(turf) + for(var/obj/item/organ/I in organs) + I.loc = crab + crab.origin = M + if(crab.origin) + crab.origin.active = 1 + crab.origin.transfer_to(crab) + to_chat(crab, "You burst out of the remains of your former body in a shower of gore!") \ No newline at end of file diff --git a/code/game/gamemodes/changeling/powers/hivemind.dm b/code/game/gamemodes/changeling/powers/hivemind.dm index faf683d906..8c42629441 100644 --- a/code/game/gamemodes/changeling/powers/hivemind.dm +++ b/code/game/gamemodes/changeling/powers/hivemind.dm @@ -10,7 +10,7 @@ ..() var/datum/changeling/changeling=user.mind.changeling changeling.changeling_speak = 1 - user << "Use say \":g message\" to communicate with the other changelings." + to_chat(user, "Use say \":g message\" to communicate with the other changelings.") var/obj/effect/proc_holder/changeling/hivemind_upload/S1 = new if(!changeling.has_sting(S1)) changeling.purchasedpowers+=S1 @@ -36,7 +36,7 @@ var/list/datum/dna/hivemind_bank = list() names += prof.name if(names.len <= 0) - user << "The airwaves already have all of our DNA." + to_chat(user, "The airwaves already have all of our DNA.") return var/chosen_name = input("Select a DNA to channel: ", "Channel DNA", null) as null|anything in names @@ -50,7 +50,7 @@ var/list/datum/dna/hivemind_bank = list() var/datum/changelingprofile/uploaded_dna = new chosen_dna.type chosen_dna.copy_profile(uploaded_dna) hivemind_bank += uploaded_dna - user << "We channel the DNA of [chosen_name] to the air." + to_chat(user, "We channel the DNA of [chosen_name] to the air.") feedback_add_details("changeling_powers","HU") return 1 @@ -66,7 +66,7 @@ var/list/datum/dna/hivemind_bank = list() var/datum/changeling/changeling = user.mind.changeling var/datum/changelingprofile/first_prof = changeling.stored_profiles[1] if(first_prof.name == user.real_name)//If our current DNA is the stalest, we gotta ditch it. - user << "We have reached our capacity to store genetic information! We must transform before absorbing more." + to_chat(user, "We have reached our capacity to store genetic information! We must transform before absorbing more.") return return 1 @@ -78,7 +78,7 @@ var/list/datum/dna/hivemind_bank = list() names[prof.name] = prof if(names.len <= 0) - user << "There's no new DNA to absorb from the air." + to_chat(user, "There's no new DNA to absorb from the air.") return var/S = input("Select a DNA absorb from the air: ", "Absorb DNA", null) as null|anything in names @@ -91,6 +91,6 @@ var/list/datum/dna/hivemind_bank = list() var/datum/changelingprofile/downloaded_prof = new chosen_prof.type chosen_prof.copy_profile(downloaded_prof) changeling.add_profile(downloaded_prof) - user << "We absorb the DNA of [S] from the air." + to_chat(user, "We absorb the DNA of [S] from the air.") feedback_add_details("changeling_powers","HD") return 1 diff --git a/code/game/gamemodes/changeling/powers/humanform.dm b/code/game/gamemodes/changeling/powers/humanform.dm index fef474a00b..44126fa577 100644 --- a/code/game/gamemodes/changeling/powers/humanform.dm +++ b/code/game/gamemodes/changeling/powers/humanform.dm @@ -23,7 +23,7 @@ return if(!user || user.notransform) return 0 - user << "We transform our appearance." + to_chat(user, "We transform our appearance.") changeling.purchasedpowers -= src diff --git a/code/game/gamemodes/changeling/powers/lesserform.dm b/code/game/gamemodes/changeling/powers/lesserform.dm index 9959a68949..2d2ae78f26 100644 --- a/code/game/gamemodes/changeling/powers/lesserform.dm +++ b/code/game/gamemodes/changeling/powers/lesserform.dm @@ -10,7 +10,7 @@ /obj/effect/proc_holder/changeling/lesserform/sting_action(mob/living/carbon/human/user) if(!user || user.notransform) return 0 - user << "Our genes cry out!" + to_chat(user, "Our genes cry out!") user.monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPORGANS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSE) diff --git a/code/game/gamemodes/changeling/powers/linglink.dm b/code/game/gamemodes/changeling/powers/linglink.dm index 104458b85c..816f853d45 100644 --- a/code/game/gamemodes/changeling/powers/linglink.dm +++ b/code/game/gamemodes/changeling/powers/linglink.dm @@ -11,26 +11,26 @@ return var/datum/changeling/changeling = user.mind.changeling if(changeling.islinking) - user << "We have already formed a link with the victim!" + to_chat(user, "We have already formed a link with the victim!") return if(!user.pulling) - user << "We must be tightly grabbing a creature to link with them!" + to_chat(user, "We must be tightly grabbing a creature to link with them!") return if(!iscarbon(user.pulling)) - user << "We cannot link with this creature!" + to_chat(user, "We cannot link with this creature!") return var/mob/living/carbon/target = user.pulling if(!target.mind) - user << "The victim has no mind to link to!" + to_chat(user, "The victim has no mind to link to!") return if(target.stat == DEAD) - user << "The victim is dead, you cannot link to a dead mind!" + to_chat(user, "The victim is dead, you cannot link to a dead mind!") return if(target.mind.changeling) - user << "The victim is already a part of the hivemind!" + to_chat(user, "The victim is already a part of the hivemind!") return if(user.grab_state <= GRAB_AGGRESSIVE) - user << "We must have a tighter grip to link with this creature!" + to_chat(user, "We must have a tighter grip to link with this creature!") return return changeling.can_absorb_dna(user,target) @@ -41,29 +41,29 @@ for(var/i in 1 to 3) switch(i) if(1) - user << "This creature is compatible. We must hold still..." + to_chat(user, "This creature is compatible. We must hold still...") if(2) - user << "We stealthily stab [target] with a minor proboscis..." - target << "You experience a stabbing sensation and your ears begin to ring..." + to_chat(user, "We stealthily stab [target] with a minor proboscis...") + to_chat(target, "You experience a stabbing sensation and your ears begin to ring...") if(3) - user << "We mold the [target]'s mind like clay, granting [target.p_them()] the ability to speak in the hivemind!" - target << "A migraine throbs behind your eyes, you hear yourself screaming - but your mouth has not opened!" + to_chat(user, "We mold the [target]'s mind like clay, granting [target.p_them()] the ability to speak in the hivemind!") + to_chat(target, "A migraine throbs behind your eyes, you hear yourself screaming - but your mouth has not opened!") for(var/mob/M in mob_list) if(M.lingcheck() == 2) - M << "We can sense a foreign presence in the hivemind..." + to_chat(M, "We can sense a foreign presence in the hivemind...") target.mind.linglink = 1 target.say(":g AAAAARRRRGGGGGHHHHH!!") - target << "You can now communicate in the changeling hivemind, say \":g message\" to communicate!" + to_chat(target, "You can now communicate in the changeling hivemind, say \":g message\" to communicate!") target.reagents.add_reagent("salbutamol", 40) // So they don't choke to death while you interrogate them sleep(1800) feedback_add_details("changeling_powers","A [i]") if(!do_mob(user, target, 20)) - user << "Our link with [target] has ended!" + to_chat(user, "Our link with [target] has ended!") changeling.islinking = 0 target.mind.linglink = 0 return changeling.islinking = 0 target.mind.linglink = 0 - user << "You cannot sustain the connection any longer, your victim fades from the hivemind" - target << "The link cannot be sustained any longer, your connection to the hivemind has faded!" + to_chat(user, "You cannot sustain the connection any longer, your victim fades from the hivemind") + to_chat(target, "The link cannot be sustained any longer, your connection to the hivemind has faded!") diff --git a/code/game/gamemodes/changeling/powers/mimic_voice.dm b/code/game/gamemodes/changeling/powers/mimic_voice.dm index 3fdda9c7fa..f296fb1375 100644 --- a/code/game/gamemodes/changeling/powers/mimic_voice.dm +++ b/code/game/gamemodes/changeling/powers/mimic_voice.dm @@ -13,7 +13,7 @@ if(changeling.mimicing) changeling.mimicing = "" changeling.chem_recharge_slowdown -= 0.5 - user << "We return our vocal glands to their original position." + to_chat(user, "We return our vocal glands to their original position.") return var/mimic_voice = stripped_input(user, "Enter a name to mimic.", "Mimic Voice", null, MAX_NAME_LEN) @@ -22,7 +22,7 @@ changeling.mimicing = mimic_voice changeling.chem_recharge_slowdown += 0.5 - user << "We shape our glands to take the voice of [mimic_voice], this will slow down regenerating chemicals while active." - user << "Use this power again to return to our original voice and return chemical production to normal levels." + to_chat(user, "We shape our glands to take the voice of [mimic_voice], this will slow down regenerating chemicals while active.") + to_chat(user, "Use this power again to return to our original voice and return chemical production to normal levels.") feedback_add_details("changeling_powers","MV") diff --git a/code/game/gamemodes/changeling/powers/mutations.dm b/code/game/gamemodes/changeling/powers/mutations.dm index e470a4eca9..f1d9abc845 100644 --- a/code/game/gamemodes/changeling/powers/mutations.dm +++ b/code/game/gamemodes/changeling/powers/mutations.dm @@ -38,7 +38,7 @@ /obj/effect/proc_holder/changeling/weapon/sting_action(mob/living/user) if(!user.drop_item()) - user << "The [user.get_active_held_item()] is stuck to your hand, you cannot grow a [weapon_name_simple] over it!" + to_chat(user, "The [user.get_active_held_item()] is stuck to your hand, you cannot grow a [weapon_name_simple] over it!") return var/limb_regen = 0 if(user.active_hand_index % 2 == 0) //we regen the arm before changing it into the weapon @@ -111,10 +111,10 @@ /obj/effect/proc_holder/changeling/suit/sting_action(mob/living/carbon/human/user) if(!user.canUnEquip(user.wear_suit)) - user << "\the [user.wear_suit] is stuck to your body, you cannot grow a [suit_name_simple] over it!" + to_chat(user, "\the [user.wear_suit] is stuck to your body, you cannot grow a [suit_name_simple] over it!") return if(!user.canUnEquip(user.head)) - user << "\the [user.head] is stuck on your head, you cannot grow a [helmet_name_simple] over it!" + to_chat(user, "\the [user.head] is stuck on your head, you cannot grow a [helmet_name_simple] over it!") return user.dropItemToGround(user.head) @@ -185,7 +185,7 @@ if(!A.requiresID() || A.allowed(user)) //This is to prevent stupid shit like hitting a door with an arm blade, the door opening because you have acces and still getting a "the airlocks motors resist our efforts to force it" message. return if(A.locked) - user << "The airlock's bolts prevent it from being forced!" + to_chat(user, "The airlock's bolts prevent it from being forced!") return if(A.hasPower()) @@ -245,11 +245,11 @@ if(!silent) loc.visible_message("[loc.name]\'s arm starts stretching inhumanly!", "Our arm twists and mutates, transforming it into a tentacle.", "You hear organic matter ripping and tearing!") else - loc << "You prepare to extend a tentacle." + to_chat(loc, "You prepare to extend a tentacle.") /obj/item/weapon/gun/magic/tentacle/shoot_with_empty_chamber(mob/living/user as mob|obj) - user << "The [name] is not ready yet." + to_chat(user, "The [name] is not ready yet.") /obj/item/ammo_casing/magic/tentacle name = "tentacle" @@ -264,9 +264,9 @@ gun = tentacle_gun ..() -/obj/item/ammo_casing/magic/tentacle/Destroy(obj/item/weapon/gun/magic/tentacle/tentacle_gun) +/obj/item/ammo_casing/magic/tentacle/Destroy() gun = null - ..() + return ..() /obj/item/projectile/tentacle name = "tentacle" @@ -316,7 +316,7 @@ if(istype(target, /obj/item)) var/obj/item/I = target if(!I.anchored) - firer << "You pull [I] towards yourself." + to_chat(firer, "You pull [I] towards yourself.") H.throw_mode_on() I.throw_at(H, 10, 2) . = 1 @@ -340,10 +340,10 @@ on_hit(I) //grab the item as if you had hit it directly with the tentacle return 1 else - firer << "You can't seem to pry [I] off of [C]'s hands!" + to_chat(firer, "You can't seem to pry [I] off of [C]'s hands!") return 0 else - firer << "[C] has nothing in hand to disarm!" + to_chat(firer, "[C] has nothing in hand to disarm!") return 0 if(INTENT_GRAB) diff --git a/code/game/gamemodes/changeling/powers/panacea.dm b/code/game/gamemodes/changeling/powers/panacea.dm index a700c868c1..479c1a6cd5 100644 --- a/code/game/gamemodes/changeling/powers/panacea.dm +++ b/code/game/gamemodes/changeling/powers/panacea.dm @@ -8,7 +8,7 @@ //Heals the things that the other regenerative abilities don't. /obj/effect/proc_holder/changeling/panacea/sting_action(mob/user) - user << "We cleanse impurities from our form." + to_chat(user, "We cleanse impurities from our form.") var/mob/living/simple_animal/borer/B = user.has_brain_worms() if(B) @@ -18,7 +18,7 @@ if(iscarbon(user)) var/mob/living/carbon/C = user C.vomit(0) - user << "A parasite exits our form." + to_chat(user, "A parasite exits our form.") var/list/bad_organs = list( user.getorgan(/obj/item/organ/body_egg), user.getorgan(/obj/item/organ/zombie_infection)) diff --git a/code/game/gamemodes/changeling/powers/regenerate.dm b/code/game/gamemodes/changeling/powers/regenerate.dm index c7e79c6c14..aaa21de7db 100644 --- a/code/game/gamemodes/changeling/powers/regenerate.dm +++ b/code/game/gamemodes/changeling/powers/regenerate.dm @@ -11,8 +11,8 @@ always_keep = TRUE /obj/effect/proc_holder/changeling/regenerate/sting_action(mob/living/user) - user << "You feel an itching, both inside and \ - outside as your tissues knit and reknit." + to_chat(user, "You feel an itching, both inside and \ + outside as your tissues knit and reknit.") if(iscarbon(user)) var/mob/living/carbon/C = user var/list/missing = C.get_missing_limbs() @@ -26,7 +26,7 @@ and tearing!") C.emote("scream") C.regenerate_limbs(1) - C.regenerate_organs() + C.regenerate_organs() if(ishuman(user)) var/mob/living/carbon/human/H = user H.restore_blood() diff --git a/code/game/gamemodes/changeling/powers/revive.dm b/code/game/gamemodes/changeling/powers/revive.dm index 2c7352de4d..5dfb52c41a 100644 --- a/code/game/gamemodes/changeling/powers/revive.dm +++ b/code/game/gamemodes/changeling/powers/revive.dm @@ -24,7 +24,7 @@ user.emote("scream") user.regenerate_limbs(0, list("head")) user.regenerate_organs() - user << "We have revived ourselves." + to_chat(user, "We have revived ourselves.") user.mind.changeling.purchasedpowers -= src feedback_add_details("changeling_powers","CR") return 1 diff --git a/code/game/gamemodes/changeling/powers/strained_muscles.dm b/code/game/gamemodes/changeling/powers/strained_muscles.dm index 79c707bff0..67cce8ff89 100644 --- a/code/game/gamemodes/changeling/powers/strained_muscles.dm +++ b/code/game/gamemodes/changeling/powers/strained_muscles.dm @@ -14,12 +14,12 @@ /obj/effect/proc_holder/changeling/strained_muscles/sting_action(mob/living/carbon/user) active = !active if(active) - user << "Our muscles tense and strengthen." + to_chat(user, "Our muscles tense and strengthen.") else user.status_flags &= ~GOTTAGOFAST - user << "Our muscles relax." + to_chat(user, "Our muscles relax.") if(stacks >= 10) - user << "We collapse in exhaustion." + to_chat(user, "We collapse in exhaustion.") user.Weaken(3) user.emote("gasp") @@ -27,7 +27,7 @@ user.status_flags |= GOTTAGOFAST if(user.stat != CONSCIOUS || user.staminaloss >= 90) active = !active - user << "Our muscles relax without the energy to strengthen them." + to_chat(user, "Our muscles relax without the energy to strengthen them.") user.Weaken(2) user.status_flags &= ~GOTTAGOFAST break @@ -37,7 +37,7 @@ user.staminaloss += stacks * 1.3 //At first the changeling may regenerate stamina fast enough to nullify fatigue, but it will stack if(stacks == 11) //Warning message that the stacks are getting too high - user << "Our legs are really starting to hurt..." + to_chat(user, "Our legs are really starting to hurt...") sleep(40) diff --git a/code/game/gamemodes/changeling/powers/tiny_prick.dm b/code/game/gamemodes/changeling/powers/tiny_prick.dm index b4607d772a..661550a659 100644 --- a/code/game/gamemodes/changeling/powers/tiny_prick.dm +++ b/code/game/gamemodes/changeling/powers/tiny_prick.dm @@ -14,13 +14,13 @@ return /obj/effect/proc_holder/changeling/sting/proc/set_sting(mob/user) - user << "We prepare our sting, use alt+click or middle mouse button on target to sting them." + to_chat(user, "We prepare our sting, use alt+click or middle mouse button on target to sting them.") user.mind.changeling.chosen_sting = src user.hud_used.lingstingdisplay.icon_state = sting_icon user.hud_used.lingstingdisplay.invisibility = 0 /obj/effect/proc_holder/changeling/sting/proc/unset_sting(mob/user) - user << "We retract our sting, we can't sting anyone for now." + to_chat(user, "We retract our sting, we can't sting anyone for now.") user.mind.changeling.chosen_sting = null user.hud_used.lingstingdisplay.icon_state = null user.hud_used.lingstingdisplay.invisibility = INVISIBILITY_ABSTRACT @@ -33,7 +33,7 @@ if(!..()) return if(!user.mind.changeling.chosen_sting) - user << "We haven't prepared our sting yet!" + to_chat(user, "We haven't prepared our sting yet!") if(!iscarbon(target)) return if(!isturf(user.loc)) @@ -49,9 +49,9 @@ /obj/effect/proc_holder/changeling/sting/sting_feedback(mob/user, mob/target) if(!target) return - user << "We stealthily sting [target.name]." + to_chat(user, "We stealthily sting [target.name].") if(target.mind && target.mind.changeling) - target << "You feel a tiny prick." + to_chat(target, "You feel a tiny prick.") return 1 @@ -75,7 +75,7 @@ if(!selected_dna) return if(NOTRANSSTING in selected_dna.dna.species.species_traits) - user << "That DNA is not compatible with changeling retrovirus!" + to_chat(user, "That DNA is not compatible with changeling retrovirus!") return ..() @@ -83,30 +83,32 @@ if(!..()) return if((target.disabilities & HUSK) || !target.has_dna()) - user << "Our sting appears ineffective against its DNA." + to_chat(user, "Our sting appears ineffective against its DNA.") return 0 return 1 /obj/effect/proc_holder/changeling/sting/transformation/sting_action(mob/user, mob/target) + set waitfor = FALSE add_logs(user, target, "stung", "transformation sting", " new identity is [selected_dna.dna.real_name]") var/datum/dna/NewDNA = selected_dna.dna if(ismonkey(target)) - user << "Our genes cry out as we sting [target.name]!" + to_chat(user, "Our genes cry out as we sting [target.name]!") - if(iscarbon(target)) - var/mob/living/carbon/C = target + var/mob/living/carbon/C = target + if(istype(C)) if(C.status_flags & CANWEAKEN) C.do_jitter_animation(500) C.take_bodypart_damage(20, 0) //The process is extremely painful target.visible_message("[target] begins to violenty convulse!","You feel a tiny prick and a begin to uncontrollably convulse!") - spawn(10) - C.real_name = NewDNA.real_name - NewDNA.transfer_identity(C, transfer_SE=1) - C.updateappearance(mutcolor_update=1) - C.domutcheck() feedback_add_details("changeling_powers","TS") - return 1 + . = TRUE + if(istype(C)) + sleep(10) + C.real_name = NewDNA.real_name + NewDNA.transfer_identity(C, transfer_SE=1) + C.updateappearance(mutcolor_update=1) + C.domutcheck() /obj/effect/proc_holder/changeling/sting/false_armblade @@ -130,7 +132,7 @@ if(!..()) return if((target.disabilities & HUSK) || !target.has_dna()) - user << "Our sting appears ineffective against its DNA." + to_chat(user, "Our sting appears ineffective against its DNA.") return 0 return 1 @@ -138,11 +140,11 @@ add_logs(user, target, "stung", object="falso armblade sting") if(!target.drop_item()) - user << "The [target.get_active_held_item()] is stuck to their hand, you cannot grow a false armblade over it!" + to_chat(user, "The [target.get_active_held_item()] is stuck to their hand, you cannot grow a false armblade over it!") return if(ismonkey(target)) - user << "Our genes cry out as we sting [target.name]!" + to_chat(user, "Our genes cry out as we sting [target.name]!") var/obj/item/weapon/melee/arm_blade/false/blade = new(target,1) target.put_in_hands(blade) @@ -207,7 +209,7 @@ /obj/effect/proc_holder/changeling/sting/blind/sting_action(mob/user, mob/living/carbon/target) add_logs(user, target, "stung", "blind sting") - target << "Your eyes burn horrifically!" + to_chat(target, "Your eyes burn horrifically!") target.become_nearsighted() target.blind_eyes(20) target.blur_eyes(40) diff --git a/code/game/gamemodes/changeling/powers/transform.dm b/code/game/gamemodes/changeling/powers/transform.dm index 5741df45a3..9ca698e7e3 100644 --- a/code/game/gamemodes/changeling/powers/transform.dm +++ b/code/game/gamemodes/changeling/powers/transform.dm @@ -11,36 +11,93 @@ name = "flesh" flags = NODROP +/obj/item/clothing/glasses/changeling/attack_hand(mob/user) + if(loc == user && user.mind && user.mind.changeling) + to_chat(user, "You reabsorb [src] into your body.") + qdel(src) + return + ..() + /obj/item/clothing/under/changeling name = "flesh" flags = NODROP +/obj/item/clothing/under/changeling/attack_hand(mob/user) + if(loc == user && user.mind && user.mind.changeling) + to_chat(user, "You reabsorb [src] into your body.") + qdel(src) + return + ..() + /obj/item/clothing/suit/changeling name = "flesh" flags = NODROP allowed = list(/obj/item/changeling) +/obj/item/clothing/suit/changeling/attack_hand(mob/user) + if(loc == user && user.mind && user.mind.changeling) + to_chat(user, "You reabsorb [src] into your body.") + qdel(src) + return + ..() + /obj/item/clothing/head/changeling name = "flesh" flags = NODROP + +/obj/item/clothing/head/changeling/attack_hand(mob/user) + if(loc == user && user.mind && user.mind.changeling) + to_chat(user, "You reabsorb [src] into your body.") + qdel(src) + return + ..() + /obj/item/clothing/shoes/changeling name = "flesh" flags = NODROP +/obj/item/clothing/shoes/changeling/attack_hand(mob/user) + if(loc == user && user.mind && user.mind.changeling) + to_chat(user, "You reabsorb [src] into your body.") + qdel(src) + return + ..() + /obj/item/clothing/gloves/changeling name = "flesh" flags = NODROP +/obj/item/clothing/gloves/changeling/attack_hand(mob/user) + if(loc == user && user.mind && user.mind.changeling) + to_chat(user, "You reabsorb [src] into your body.") + qdel(src) + return + ..() + /obj/item/clothing/mask/changeling name = "flesh" flags = NODROP +/obj/item/clothing/mask/changeling/attack_hand(mob/user) + if(loc == user && user.mind && user.mind.changeling) + to_chat(user, "You reabsorb [src] into your body.") + qdel(src) + return + ..() + /obj/item/changeling name = "flesh" flags = NODROP slot_flags = ALL allowed = list(/obj/item/changeling) +/obj/item/changeling/attack_hand(mob/user) + if(loc == user && user.mind && user.mind.changeling) + to_chat(user, "You reabsorb [src] into your body.") + qdel(src) + return + ..() + //Change our DNA to that of somebody we've absorbed. /obj/effect/proc_holder/changeling/transform/sting_action(mob/living/carbon/human/user) var/datum/changeling/changeling = user.mind.changeling @@ -62,7 +119,7 @@ var/chosen_name = input(prompt, title, null) as null|anything in names if(!chosen_name) return - + if(chosen_name == "Drop Flesh Disguise") for(var/slot in slots) if(istype(user.vars[slot], slot2type[slot])) diff --git a/code/game/gamemodes/changeling/traitor_chan.dm b/code/game/gamemodes/changeling/traitor_chan.dm index b2fc151a1b..a03f50a7a6 100644 --- a/code/game/gamemodes/changeling/traitor_chan.dm +++ b/code/game/gamemodes/changeling/traitor_chan.dm @@ -12,8 +12,8 @@ var/const/changeling_amount = 1 //hard limit on changelings if scaling is turned off /datum/game_mode/traitor/changeling/announce() - world << "The current game mode is - Traitor+Changeling!" - 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!" + 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(!..()) diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 5e70ce0a6f..78e940d7b8 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -91,7 +91,7 @@ Credit where due: name = "clockwork cult" config_tag = "clockwork_cult" antag_flag = ROLE_SERVANT_OF_RATVAR - required_players = 10 + required_players = 24 required_enemies = 3 recommended_enemies = 3 enemy_minimum_age = 14 @@ -153,7 +153,7 @@ Credit where due: var/greeting_text = "
You are a servant of Ratvar, the Clockwork Justiciar.\n\ Rusting eternally in the Celestial Derelict, Ratvar has formed a covenant of mortals, with you as one of its members. As one of the Justiciar's servants, you are to work to the best of your \ ability to assist in completion of His agenda. You may not know the specifics of how to do so, but luckily you have a vessel to help you learn." - M << greeting_text + to_chat(M, greeting_text) return 1 /datum/game_mode/proc/equip_servant(mob/living/L) //Grants a clockwork slab to the mob, with one of each component @@ -171,10 +171,10 @@ Credit where due: if(!S.forceMove(get_turf(L))) qdel(S) if(S && !QDELETED(S)) - L << "[slot] is a link to the halls of Reebe and your master. You may use it to perform many tasks, but also become oriented with the workings of Ratvar and how to best complete your \ + to_chat(L, "[slot] is a link to the halls of Reebe and your master. You may use it to perform many tasks, but also become oriented with the workings of Ratvar and how to best complete your \ tasks. This clockwork slab will be instrumental in your triumph. Remember: you can speak discreetly with your fellow servants by using the Hierophant Network action button, \ - and you can find a concise tutorial by using the slab in-hand and selecting Recollection." - L << "Alternatively, check out the wiki page at https://tgstation13.org/wiki/Clockwork_Cult, which contains additional information." + and you can find a concise tutorial by using the slab in-hand and selecting Recollection.") + to_chat(L, "Alternatively, check out the wiki page at https://tgstation13.org/wiki/Clockwork_Cult, which contains additional information.") return TRUE return FALSE @@ -182,7 +182,7 @@ Credit where due: if(!L || !istype(L) || !L.mind) return 0 var/datum/mind/M = L.mind - M.current << "This is Ratvar's will: [clockwork_explanation]" + to_chat(M.current, "This is Ratvar's will: [clockwork_explanation]") M.memory += "Ratvar's will: [clockwork_explanation]
" return 1 @@ -218,7 +218,7 @@ Credit where due: if(half_victory) text += "The crew escaped before [clockwork_objective == CLOCKCULT_GATEWAY ? "Ratvar could rise":"the station could be proselytized"], but the gateway \ was successfully constructed!" - feedback_set_details("round_end_result", "halfwin - round ended before the gateway finished") + feedback_set_details("round_end_result", "halfwin - servants constructed the gateway but their objective was not completed ([clockwork_objective])") else text += "Ratvar's servants have failed!" feedback_set_details("round_end_result", "loss - servants failed their objective ([clockwork_objective])") @@ -233,7 +233,7 @@ Credit where due: text += "
Ratvar's servants were:" for(var/datum/mind/M in servants_of_ratvar) text += printplayer(M) - world << text + to_chat(world, text) /datum/game_mode/proc/update_servant_icons_added(datum/mind/M) var/datum/atom_hud/antag/A = huds[ANTAG_HUD_CLOCKWORK] diff --git a/code/game/gamemodes/clock_cult/clock_effects/clock_sigils.dm b/code/game/gamemodes/clock_cult/clock_effects/clock_sigils.dm index 4add155d62..081ca1f6cb 100644 --- a/code/game/gamemodes/clock_cult/clock_effects/clock_sigils.dm +++ b/code/game/gamemodes/clock_cult/clock_effects/clock_sigils.dm @@ -64,7 +64,7 @@ if(!is_servant_of_ratvar(M) && M != L) M.flash_act() if(iscultist(L)) - L << "\"Watch your step, wretch.\"" + to_chat(L, "\"Watch your step, wretch.\"") L.adjustBruteLoss(10) L.Weaken(7) L.visible_message("[src] appears around [L] in a burst of light!", \ @@ -83,18 +83,19 @@ layer = LOW_SIGIL_LAYER alpha = 125 color = "#FAE48C" + light_range = 2 //soft light + light_power = 0.9 + light_color = "#FAE48C" stat_affected = UNCONSCIOUS resist_string = "glows faintly yellow" var/convert_time = 70 - var/glow_light = 2 //soft light - var/glow_falloff = 1 var/delete_on_finish = TRUE sigil_name = "Sigil of Submission" var/glow_type /obj/effect/clockwork/sigil/submission/New() ..() - SetLuminosity(glow_light,glow_falloff) + update_light() /obj/effect/clockwork/sigil/submission/proc/post_channel(mob/living/L) @@ -119,7 +120,7 @@ return post_channel(L) if(is_eligible_servant(L)) - L << "\"You belong to me now.\"" + to_chat(L, "\"You belong to me now.\"") add_servant_of_ratvar(L) L.Weaken(3) //Completely defenseless for about five seconds - mainly to give them time to read over the information they've just been presented with L.Stun(3) @@ -130,12 +131,12 @@ for(var/M in mob_list) if(isobserver(M)) var/link = FOLLOW_LINK(M, L) - M << "[link] [message] [L.real_name]!" + to_chat(M, "[link] [message] [L.real_name]!") else if(is_servant_of_ratvar(M)) if(M == L) - M << "[message] you!" + to_chat(M, "[message] you!") else - M << "[message] [L.real_name]!" + to_chat(M, "[message] [L.real_name]!") if(delete_on_finish) qdel(src) else @@ -153,8 +154,9 @@ icon_state = "sigiltransgression" alpha = 200 color = "#A97F1B" - glow_light = 4 //bright light - glow_falloff = 3 + light_range = 3 //bright light + light_power = 1 + light_color = "#A97F1B" delete_on_finish = FALSE sigil_name = "Sigil of Accession" glow_type = /obj/effect/overlay/temp/ratvar/sigil/accession @@ -177,6 +179,7 @@ icon_state = "sigiltransmission" alpha = 50 color = "#EC8A2D" + light_color = "#EC8A2D" resist_string = "glows faintly" sigil_name = "Sigil of Transmission" affects_servants = TRUE @@ -195,22 +198,22 @@ var/structure_number = 0 for(var/obj/structure/destructible/clockwork/powered/P in range(SIGIL_ACCESS_RANGE, src)) structure_number++ - user << "It is storing [ratvar_awakens ? "INFINITY":"[power_charge]"]W of power, \ - and [structure_number] Clockwork Structure[structure_number == 1 ? "":"s"] [structure_number == 1 ? "is":"are"] in range." + to_chat(user, "It is storing [ratvar_awakens ? "INFINITY":"[power_charge]"]W of power, \ + and [structure_number] Clockwork Structure[structure_number == 1 ? "":"s"] [structure_number == 1 ? "is":"are"] in range.") if(iscyborg(user)) - user << "You can recharge from the [sigil_name] by crossing it." + to_chat(user, "You can recharge from the [sigil_name] by crossing it.") /obj/effect/clockwork/sigil/transmission/sigil_effects(mob/living/L) if(is_servant_of_ratvar(L)) if(iscyborg(L)) charge_cyborg(L) else if(power_charge) - L << "You feel a slight, static shock." + to_chat(L, "You feel a slight, static shock.") /obj/effect/clockwork/sigil/transmission/proc/charge_cyborg(mob/living/silicon/robot/cyborg) if(!cyborg_checks(cyborg)) return - cyborg << "You start to charge from the [sigil_name]..." + to_chat(cyborg, "You start to charge from the [sigil_name]...") if(!do_after(cyborg, 50, target = src)) return if(!cyborg_checks(cyborg)) @@ -227,16 +230,16 @@ /obj/effect/clockwork/sigil/transmission/proc/cyborg_checks(mob/living/silicon/robot/cyborg) if(!cyborg.cell) - cyborg << "You have no cell!" + to_chat(cyborg, "You have no cell!") return FALSE if(!power_charge) - cyborg << "The [sigil_name] has no stored power!" + to_chat(cyborg, "The [sigil_name] has no stored power!") return FALSE if(cyborg.cell.charge > cyborg.cell.maxcharge - MIN_CLOCKCULT_POWER) - cyborg << "You are already at maximum charge!" + to_chat(cyborg, "You are already at maximum charge!") return FALSE if(cyborg.has_status_effect(STATUS_EFFECT_POWERREGEN)) - cyborg << "You are already regenerating power!" + to_chat(cyborg, "You are already regenerating power!") return FALSE return TRUE @@ -260,10 +263,9 @@ else alpha = min(initial(alpha) + power_charge*0.02, 255) if(!power_charge) - SetLuminosity(0) + set_light(0) else - SetLuminosity(round(alpha*0.03, 1), round(alpha*0.02, 1)) - + set_light(round(alpha*0.02, 1), round(alpha*0.005, 1)) //Vitality Matrix: Drains health from non-servants to heal or even revive servants. /obj/effect/clockwork/sigil/vitality @@ -287,11 +289,11 @@ /obj/effect/clockwork/sigil/vitality/examine(mob/user) ..() if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It has access to [ratvar_awakens ? "INFINITE":"[vitality]"] units of vitality." + to_chat(user, "It has access to [ratvar_awakens ? "INFINITE":"[vitality]"] units of vitality.") if(ratvar_awakens) - user << "It can revive Servants at no cost!" + to_chat(user, "It can revive Servants at no cost!") else - user << "It can revive Servants at a cost of [base_revive_cost] vitality plus vitality equal to the non-oxygen damage they have, in addition to being destroyed in the process." + to_chat(user, "It can revive Servants at a cost of [base_revive_cost] vitality plus vitality equal to the non-oxygen damage they have, in addition to being destroyed in the process.") /obj/effect/clockwork/sigil/vitality/sigil_effects(mob/living/L) if((is_servant_of_ratvar(L) && L.suiciding) || sigil_active) @@ -315,7 +317,7 @@ animate(V, alpha = 0, transform = matrix()*2, time = 8) playsound(L, 'sound/magic/WandODeath.ogg', 50, 1) L.visible_message("[L] collapses in on [L.p_them()]self as [src] flares bright blue!") - L << "\"[text2ratvar("Your life will not be wasted.")]\"" + to_chat(L, "\"[text2ratvar("Your life will not be wasted.")]\"") for(var/obj/item/W in L) if(!L.dropItemToGround(W)) qdel(W) diff --git a/code/game/gamemodes/clock_cult/clock_effects/spatial_gateway.dm b/code/game/gamemodes/clock_cult/clock_effects/spatial_gateway.dm index 51f308c9f0..26575d881e 100644 --- a/code/game/gamemodes/clock_cult/clock_effects/spatial_gateway.dm +++ b/code/game/gamemodes/clock_cult/clock_effects/spatial_gateway.dm @@ -5,7 +5,9 @@ clockwork_desc = "A gateway in reality." icon_state = "spatial_gateway" density = 1 - luminosity = 2 + light_range = 2 + light_power = 3 + light_color = "#6A4D2F" var/sender = TRUE //If this gateway is made for sending, not receiving var/both_ways = FALSE var/lifetime = 25 //How many deciseconds this portal will last @@ -15,6 +17,7 @@ /obj/effect/clockwork/spatial_gateway/New() ..() + update_light() addtimer(CALLBACK(src, .proc/check_setup), 1) /obj/effect/clockwork/spatial_gateway/Destroy() @@ -53,7 +56,7 @@ /obj/effect/clockwork/spatial_gateway/examine(mob/user) ..() if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It has [uses] uses remaining." + to_chat(user, "It has [uses] uses remaining.") /obj/effect/clockwork/spatial_gateway/attack_ghost(mob/user) if(linked_gateway) @@ -84,7 +87,7 @@ qdel(src) return TRUE if(istype(I, /obj/item/clockwork/slab)) - user << "\"I don't think you want to drop your slab into that.\"\n\"If you really want to, try throwing it.\"" + to_chat(user, "\"I don't think you want to drop your slab into that.\"\n\"If you really want to, try throwing it.\"") return TRUE if(user.drop_item() && uses) user.visible_message("[user] drops [I] into [src]!", "You drop [I] into [src]!") @@ -123,7 +126,7 @@ return FALSE if(isliving(A)) var/mob/living/user = A - user << "You pass through [src] and appear elsewhere!" + to_chat(user, "You pass through [src] and appear elsewhere!") linked_gateway.visible_message("A shape appears in [linked_gateway] before emerging!") playsound(src, 'sound/effects/EMPulse.ogg', 50, 1) playsound(linked_gateway, 'sound/effects/EMPulse.ogg', 50, 1) @@ -159,31 +162,31 @@ possible_targets[avoid_assoc_duplicate_keys("[L.name] ([L.real_name])", teleportnames)] = L if(!possible_targets.len) - invoker << "There are no other eligible targets for a Spatial Gateway!" + to_chat(invoker, "There are no other eligible targets for a Spatial Gateway!") return FALSE var/input_target_key = input(invoker, "Choose a target to form a rift to.", "Spatial Gateway") as null|anything in possible_targets var/atom/movable/target = possible_targets[input_target_key] if(!src || !input_target_key || !invoker || !invoker.canUseTopic(src, !issilicon(invoker)) || !is_servant_of_ratvar(invoker) || (istype(src, /obj/item) && invoker.get_active_held_item() != src) || !invoker.can_speak_vocal()) return FALSE //if any of the involved things no longer exist, the invoker is stunned, too far away to use the object, or does not serve ratvar, or if the object is an item and not in the mob's active hand, fail if(!target) //if we have no target, but did have a key, let them retry - invoker << "That target no longer exists!" + to_chat(invoker, "That target no longer exists!") return procure_gateway(invoker, time_duration, gateway_uses, two_way) if(isliving(target)) var/mob/living/L = target if(!is_servant_of_ratvar(L)) - invoker << "That target is no longer a Servant!" + to_chat(invoker, "That target is no longer a Servant!") return procure_gateway(invoker, time_duration, gateway_uses, two_way) if(L.stat != CONSCIOUS) - invoker << "That Servant is no longer conscious!" + to_chat(invoker, "That Servant is no longer conscious!") return procure_gateway(invoker, time_duration, gateway_uses, two_way) var/istargetobelisk = istype(target, /obj/structure/destructible/clockwork/powered/clockwork_obelisk) var/issrcobelisk = istype(src, /obj/structure/destructible/clockwork/powered/clockwork_obelisk) if(issrcobelisk && !anchored) - invoker << "[src] is no longer secured!" + to_chat(invoker, "[src] is no longer secured!") return FALSE if(istargetobelisk) if(!target.anchored) - invoker << "That [target.name] is no longer secured!" + to_chat(invoker, "That [target.name] is no longer secured!") return procure_gateway(invoker, time_duration, gateway_uses, two_way) var/obj/structure/destructible/clockwork/powered/clockwork_obelisk/CO = target var/efficiency = CO.get_efficiency_mod() diff --git a/code/game/gamemodes/clock_cult/clock_helpers/clock_powerdrain.dm b/code/game/gamemodes/clock_cult/clock_helpers/clock_powerdrain.dm index 1452eaa13c..2691036cf1 100644 --- a/code/game/gamemodes/clock_cult/clock_helpers/clock_powerdrain.dm +++ b/code/game/gamemodes/clock_cult/clock_helpers/clock_powerdrain.dm @@ -45,7 +45,7 @@ . = min(cell.charge, 250) cell.use(.) if(prob(20)) - src << "ERROR: Power loss detected!" + to_chat(src, "ERROR: Power loss detected!") spark_system.start() /obj/mecha/power_drain(clockcult_user) diff --git a/code/game/gamemodes/clock_cult/clock_helpers/hierophant_network.dm b/code/game/gamemodes/clock_cult/clock_helpers/hierophant_network.dm index 4e4697fadc..47b8178dff 100644 --- a/code/game/gamemodes/clock_cult/clock_helpers/hierophant_network.dm +++ b/code/game/gamemodes/clock_cult/clock_helpers/hierophant_network.dm @@ -6,11 +6,11 @@ if(!servantsonly && isobserver(M)) if(target) var/link = FOLLOW_LINK(M, target) - M << "[link] [message]" + to_chat(M, "[link] [message]") else - M << message + to_chat(M, message) else if(is_servant_of_ratvar(M)) - M << message + to_chat(M, message) return TRUE //Sends a titled message from a mob to all servants of ratvar and ghosts. diff --git a/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm b/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm index 6338f759a9..c6954bb67e 100644 --- a/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm +++ b/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm @@ -50,9 +50,12 @@ if(locate(/obj/structure/table) in src) return FALSE if(is_blocked_turf(src, TRUE)) - user << "Something is in the way, preventing you from proselytizing [src] into a clockwork wall." + to_chat(user, "Something is in the way, preventing you from proselytizing [src] into a clockwork wall.") return TRUE - return list("operation_time" = 100, "new_obj_type" = /turf/closed/wall/clockwork, "power_cost" = POWER_WALL_MINUS_FLOOR, "spawn_dir" = SOUTH) + var/operation_time = 100 + if(proselytizer.speed_multiplier > 0) + operation_time /= proselytizer.speed_multiplier + return list("operation_time" = operation_time, "new_obj_type" = /turf/closed/wall/clockwork, "power_cost" = POWER_WALL_MINUS_FLOOR, "spawn_dir" = SOUTH) //False wall conversion /obj/structure/falsewall/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) @@ -80,7 +83,7 @@ if(proselytizer.metal_to_power) var/no_delete = FALSE if(amount_temp < 2) - user << "You need at least 2 floor tiles to convert into power." + to_chat(user, "You need at least 2 floor tiles to convert into power.") return TRUE if(IsOdd(amount_temp)) amount_temp-- @@ -98,7 +101,7 @@ new /obj/item/stack/tile/brass(get_turf(src), sheets_to_make) use(used) else - user << "You need at least 20 floor tiles to convert into brass." + to_chat(user, "You need at least 20 floor tiles to convert into brass.") return TRUE /obj/item/stack/rods/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) @@ -116,7 +119,7 @@ new /obj/item/stack/tile/brass(get_turf(src), sheets_to_make) use(used) else - user << "You need at least 10 rods to convert into brass." + to_chat(user, "You need at least 10 rods to convert into brass.") return TRUE /obj/item/stack/sheet/metal/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) @@ -134,7 +137,7 @@ new /obj/item/stack/tile/brass(get_turf(src), sheets_to_make) use(used) else - user << "You need at least 5 sheets of metal to convert into brass." + to_chat(user, "You need at least 5 sheets of metal to convert into brass.") return TRUE /obj/item/stack/sheet/plasteel/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) @@ -152,7 +155,7 @@ new /obj/item/stack/tile/brass(get_turf(src), sheets_to_make) use(used) else - user << "You need at least 2 sheets of plasteel to convert into brass." + to_chat(user, "You need at least 2 sheets of plasteel to convert into brass.") return TRUE //Brass directly to power @@ -314,14 +317,18 @@ //Hitting a ratvar'd silicon will also try to repair it. /mob/living/silicon/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) . = TRUE - if(proselytizer_heal(user, proselytizer) && user) + if(health == maxHealth) //if we're at maximum health, prosel the turf under us + return FALSE + else if(proselytizer_heal(user, proselytizer) && user) user.visible_message("[user]'s [proselytizer.name] stops coverin[src == user ? "g [user.p_them()]" : "g [src]"] with glowing orange energy.", \ "You finish repairin[src == user ? "g yourself. You are":"g [src]. [p_they(TRUE)] [p_are()]"] now at [abs(HEALTH_THRESHOLD_DEAD - health)]/[abs(HEALTH_THRESHOLD_DEAD - maxHealth)] health.") //Same with clockwork mobs. /mob/living/simple_animal/hostile/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) . = TRUE - if(proselytizer_heal(user, proselytizer) && user) + if(health == maxHealth) //if we're at maximum health, prosel the turf under us + return FALSE + else if(proselytizer_heal(user, proselytizer) && user) user.visible_message("[user]'s [proselytizer.name] stops coverin[src == user ? "g [user.p_them()]" : "g [src]"] with glowing orange energy.", \ "You finish repairin[src == user ? "g yourself. You are":"g [src]. [p_they(TRUE)] [p_are()]"] now at [health]/[maxHealth] health.") @@ -329,20 +336,20 @@ /mob/living/simple_animal/drone/cogscarab/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) . = TRUE if(stat == DEAD) - try_reactivate(user) + try_reactivate(user) //if we're at maximum health, prosel the turf under us return - if(health < maxHealth && !(flags & GODMODE)) + if(health == maxHealth) + return FALSE + else if(!(flags & GODMODE)) user.visible_message("[user]'s [proselytizer.name] starts coverin[src == user ? "g [user.p_them()]" : "g [src]"] in glowing orange energy...", \ "You start repairin[src == user ? "g yourself" : "g [src]"]...") proselytizer.repairing = src - if(do_after(user,80*proselytizer.speed_multiplier, target=src)) + if(do_after(user, (maxHealth - health)*2, target=src)) adjustHealth(-maxHealth) user.visible_message("[user]'s [proselytizer.name] stops coverin[src == user ? "g [user.p_them()]" : "g [src]"] with glowing orange energy.", \ "You finish repairin[src == user ? "g yourself" : "g [src]"].") if(proselytizer) proselytizer.repairing = null - else - user << "[src == user ? "You" : "[src]"] [src == user ? "are" : "is"] at maximum health!" //Convert shards and gear bits directly to power /obj/item/clockwork/alloy_shards/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) diff --git a/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm b/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm index d0f4ddc988..fd18393898 100644 --- a/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm +++ b/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm @@ -46,14 +46,14 @@ else var/mob/living/L = target if(L.null_rod_check()) - ranged_ability_user << "\"A void weapon? Really, you expect me to be able to do anything?\"" + to_chat(ranged_ability_user, "\"A void weapon? Really, you expect me to be able to do anything?\"") return TRUE if(is_servant_of_ratvar(L)) if(L != ranged_ability_user) - ranged_ability_user << "\"[L.p_they(TRUE)] already serve[L.p_s()] Ratvar. [text2ratvar("Perhaps [ranged_ability_user.p_theyre()] into bondage?")]\"" + to_chat(ranged_ability_user, "\"[L.p_they(TRUE)] already serve[L.p_s()] Ratvar. [text2ratvar("Perhaps [ranged_ability_user.p_theyre()] into bondage?")]\"") return TRUE if(L.stat == DEAD) - ranged_ability_user << "\"[L.p_theyre(TRUE)] dead, idiot.\"" + to_chat(ranged_ability_user, "\"[L.p_theyre(TRUE)] dead, idiot.\"") return TRUE if(istype(L.buckled, /obj/structure/destructible/clockwork/geis_binding)) //if they're already bound, just stun them @@ -100,10 +100,10 @@ if(isliving(target) && (target in view(7, get_turf(ranged_ability_user)))) var/mob/living/L = target if(!is_servant_of_ratvar(L)) - ranged_ability_user << "\"[L] does not yet serve Ratvar.\"" + to_chat(ranged_ability_user, "\"[L] does not yet serve Ratvar.\"") return TRUE if(L.stat == DEAD) - ranged_ability_user << "\"[L.p_they(TRUE)] [L.p_are()] dead. [text2ratvar("Oh, child. To have your life cut short...")]\"" + to_chat(ranged_ability_user, "\"[L.p_they(TRUE)] [L.p_are()] dead. [text2ratvar("Oh, child. To have your life cut short...")]\"") return TRUE var/brutedamage = L.getBruteLoss() @@ -111,7 +111,7 @@ var/oxydamage = L.getOxyLoss() var/totaldamage = brutedamage + burndamage + oxydamage if(!totaldamage && (!L.reagents || !L.reagents.has_reagent("holywater"))) - ranged_ability_user << "\"[L] is unhurt and untainted.\"" + to_chat(ranged_ability_user, "\"[L] is unhurt and untainted.\"") return TRUE successful = TRUE @@ -130,14 +130,14 @@ else clockwork_say(ranged_ability_user, text2ratvar("Purge foul darkness!")) add_logs(ranged_ability_user, L, "purged of holy water with Sentinel's Compromise") - ranged_ability_user << "You bathe [L == ranged_ability_user ? "yourself":"[L]"] in Inath-neq's power!" + to_chat(ranged_ability_user, "You bathe [L == ranged_ability_user ? "yourself":"[L]"] in Inath-neq's power!") L.visible_message("A blue light washes over [L], mending [L.p_their()] bruises and burns!", \ "You feel Inath-neq's power healing your wounds, but a deep nausea overcomes you!") playsound(targetturf, 'sound/magic/Staff_Healing.ogg', 50, 1) if(L.reagents && L.reagents.has_reagent("holywater")) L.reagents.remove_reagent("holywater", 1000) - L << "Ratvar's light flares, banishing the darkness. Your devotion remains intact!" + to_chat(L, "Ratvar's light flares, banishing the darkness. Your devotion remains intact!") remove_ranged_ability() @@ -194,13 +194,13 @@ if(isliving(target) && (target in view(7, get_turf(ranged_ability_user)))) var/mob/living/L = target if(!is_servant_of_ratvar(L)) - ranged_ability_user << "\"[L] does not yet serve Ratvar.\"" + to_chat(ranged_ability_user, "\"[L] does not yet serve Ratvar.\"") return TRUE if(L.stat == DEAD) - ranged_ability_user << "\"[L.p_they(TRUE)] [L.p_are()] dead. [text2ratvar("Oh, child. To have your life cut short...")]\"" + to_chat(ranged_ability_user, "\"[L.p_they(TRUE)] [L.p_are()] dead. [text2ratvar("Oh, child. To have your life cut short...")]\"") return TRUE if(islist(L.stun_absorption) && L.stun_absorption["vanguard"] && L.stun_absorption["vanguard"]["end_time"] > world.time) - ranged_ability_user << "\"[L.p_they(TRUE)] [L.p_are()] already shielded by a Vanguard.\"" + to_chat(ranged_ability_user, "\"[L.p_they(TRUE)] [L.p_are()] already shielded by a Vanguard.\"") return TRUE successful = TRUE diff --git a/code/game/gamemodes/clock_cult/clock_items/clock_components.dm b/code/game/gamemodes/clock_cult/clock_items/clock_components.dm index 39d4bec78c..439f670ae9 100644 --- a/code/game/gamemodes/clock_cult/clock_items/clock_components.dm +++ b/code/game/gamemodes/clock_cult/clock_items/clock_components.dm @@ -12,20 +12,20 @@ /obj/item/clockwork/component/pickup(mob/living/user) ..() if(iscultist(user) || (user.mind && user.mind.isholy)) - user << "[cultist_message]" + to_chat(user, "[cultist_message]") if(user.mind && user.mind.isholy) - user << "The power of your faith melts away the [src]!" + to_chat(user, "The power of your faith melts away the [src]!") var/obj/item/weapon/ore/slag/wrath = new /obj/item/weapon/ore/slag qdel(src) user.put_in_active_hand(wrath) if(is_servant_of_ratvar(user) && prob(20)) var/pickedmessage = pick(servant_of_ratvar_messages) - user << "[servant_of_ratvar_messages[pickedmessage] ? "[text2ratvar(pickedmessage)]" : pickedmessage]" + to_chat(user, "[servant_of_ratvar_messages[pickedmessage] ? "[text2ratvar(pickedmessage)]" : pickedmessage]") /obj/item/clockwork/component/examine(mob/user) ..() if(is_servant_of_ratvar(user)) - user << "You should put this in a slab or cache immediately." + to_chat(user, "You should put this in a slab or cache immediately.") /obj/item/clockwork/component/belligerent_eye name = "belligerent eye" @@ -53,6 +53,13 @@ cultist_message = "The gem turns black and cold for a moment before its normal glow returns." servant_of_ratvar_messages = list("\"Disgusting failure.\"" = TRUE, "You feel scrutinized." = FALSE, "\"Weaklings.\"" = TRUE, "\"Pathetic defenses.\"" = TRUE) w_class = WEIGHT_CLASS_TINY + light_range = 1.4 + light_power = 0.4 + light_color = "#F42B9D" + +/obj/item/clockwork/component/belligerent_eye/lens_gem/New() + ..() + update_light() /obj/item/clockwork/component/vanguard_cogwheel name = "vanguard cogwheel" diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm b/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm index fbf792c997..ba9e86864c 100644 --- a/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm +++ b/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm @@ -33,14 +33,14 @@ ..() if(slot == slot_head && !is_servant_of_ratvar(user)) if(!iscultist(user)) - user << "\"Now now, this is for my servants, not you.\"" + to_chat(user, "\"Now now, this is for my servants, not you.\"") user.visible_message("As [user] puts [src] on, it flickers off their head!", "The helmet flickers off your head, leaving only nausea!") if(iscarbon(user)) var/mob/living/carbon/C = user C.vomit(20, 1, 1, 0, 1) else - user << "\"Do you have a hole in your head? You're about to.\"" - user << "The helmet tries to drive a spike through your head as you scramble to remove it!" + to_chat(user, "\"Do you have a hole in your head? You're about to.\"") + to_chat(user, "The helmet tries to drive a spike through your head as you scramble to remove it!") user.emote("scream") user.apply_damage(30, BRUTE, "head") user.adjustBrainLoss(30) @@ -94,14 +94,14 @@ ..() if(slot == slot_wear_suit && !is_servant_of_ratvar(user)) if(!iscultist(user)) - user << "\"Now now, this is for my servants, not you.\"" + to_chat(user, "\"Now now, this is for my servants, not you.\"") user.visible_message("As [user] puts [src] on, it flickers off their body!", "The curiass flickers off your body, leaving only nausea!") if(iscarbon(user)) var/mob/living/carbon/C = user C.vomit(20, 1, 1, 0, 1) else - user << "\"I think this armor is too hot for you to handle.\"" - user << "The curiass emits a burst of flame as you scramble to get it off!" + to_chat(user, "\"I think this armor is too hot for you to handle.\"") + to_chat(user, "The curiass emits a burst of flame as you scramble to get it off!") user.emote("scream") user.apply_damage(15, BURN, "chest") user.adjust_fire_stacks(2) @@ -155,14 +155,14 @@ ..() if(slot == slot_gloves && !is_servant_of_ratvar(user)) if(!iscultist(user)) - user << "\"Now now, this is for my servants, not you.\"" + to_chat(user, "\"Now now, this is for my servants, not you.\"") user.visible_message("As [user] puts [src] on, it flickers off their arms!", "The gauntlets flicker off your arms, leaving only nausea!") if(iscarbon(user)) var/mob/living/carbon/C = user C.vomit(10, 1, 1, 0, 1) else - user << "\"Did you like having arms?\"" - user << "The gauntlets suddenly squeeze tight, crushing your arms before you manage to get them off!" + to_chat(user, "\"Did you like having arms?\"") + to_chat(user, "The gauntlets suddenly squeeze tight, crushing your arms before you manage to get them off!") user.emote("scream") user.apply_damage(7, BRUTE, "l_arm") user.apply_damage(7, BRUTE, "r_arm") @@ -205,14 +205,14 @@ ..() if(slot == slot_shoes && !is_servant_of_ratvar(user)) if(!iscultist(user)) - user << "\"Now now, this is for my servants, not you.\"" + to_chat(user, "\"Now now, this is for my servants, not you.\"") user.visible_message("As [user] puts [src] on, it flickers off their feet!", "The treads flicker off your feet, leaving only nausea!") if(iscarbon(user)) var/mob/living/carbon/C = user C.vomit(10, 1, 1, 0, 1) else - user << "\"Let's see if you can dance with these.\"" - user << "The treads turn searing hot as you scramble to get them off!" + to_chat(user, "\"Let's see if you can dance with these.\"") + to_chat(user, "The treads turn searing hot as you scramble to get them off!") user.emote("scream") user.apply_damage(7, BURN, "l_leg") user.apply_damage(7, BURN, "r_leg") diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_proselytizer.dm b/code/game/gamemodes/clock_cult/clock_items/clockwork_proselytizer.dm index a4a9995cd0..d988c68ba7 100644 --- a/code/game/gamemodes/clock_cult/clock_items/clockwork_proselytizer.dm +++ b/code/game/gamemodes/clock_cult/clock_items/clockwork_proselytizer.dm @@ -127,26 +127,26 @@ /obj/item/clockwork/clockwork_proselytizer/examine(mob/living/user) ..() if(is_servant_of_ratvar(user) || isobserver(user)) - user << "Can be used to convert walls, floors, windows, airlocks, and a variety of other objects to clockwork variants." - user << "Can also form some objects into Brass sheets, as well as reform Clockwork Walls into Clockwork Floors, and vice versa." + to_chat(user, "Can be used to convert walls, floors, windows, airlocks, and a variety of other objects to clockwork variants.") + to_chat(user, "Can also form some objects into Brass sheets, as well as reform Clockwork Walls into Clockwork Floors, and vice versa.") if(uses_power) if(metal_to_power) - user << "It can convert rods, metal, plasteel, and brass to power at rates of 1:[POWER_ROD]W, 1:[POWER_METAL]W, \ - 1:[POWER_PLASTEEL]W, and 1:[POWER_FLOOR]W, respectively." + to_chat(user, "It can convert rods, metal, plasteel, and brass to power at rates of 1:[POWER_ROD]W, 1:[POWER_METAL]W, \ + 1:[POWER_PLASTEEL]W, and 1:[POWER_FLOOR]W, respectively.") else - user << "It can convert brass to power at a rate of 1:[POWER_FLOOR]W." - user << "It is storing [get_power()]W/[get_max_power()]W of power, and is gaining [charge_rate*0.5]W of power per second." - user << "Use it in-hand to produce brass sheets." + to_chat(user, "It can convert brass to power at a rate of 1:[POWER_FLOOR]W.") + to_chat(user, "It is storing [get_power()]W/[get_max_power()]W of power, and is gaining [charge_rate*0.5]W of power per second.") + to_chat(user, "Use it in-hand to produce 5 brass sheets at a cost of [POWER_WALL_TOTAL]W power.") /obj/item/clockwork/clockwork_proselytizer/attack_self(mob/living/user) if(is_servant_of_ratvar(user)) if(!can_use_power(POWER_WALL_TOTAL)) - user << "[src] requires [POWER_WALL_TOTAL]W of power to produce brass sheets!" + to_chat(user, "[src] requires [POWER_WALL_TOTAL]W of power to produce brass sheets!") return modify_stored_power(-POWER_WALL_TOTAL) playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) new/obj/item/stack/tile/brass(user.loc, 5) - user << "You user [stored_power ? "some":"all"] of [src]'s power to produce some brass sheets. It now stores [get_power()]W/[get_max_power()]W of power." + to_chat(user, "You user [stored_power ? "some":"all"] of [src]'s power to produce some brass sheets. It now stores [get_power()]W/[get_max_power()]W of power.") /obj/item/clockwork/clockwork_proselytizer/pre_attackby(atom/target, mob/living/user, params) if(!target || !user || !is_servant_of_ratvar(user) || istype(target, /obj/item/weapon/storage)) @@ -180,14 +180,14 @@ if(!target || !user) return FALSE if(repairing) - user << "You are currently repairing [repairing] with [src]!" + to_chat(user, "You are currently repairing [repairing] with [src]!") return FALSE var/list/proselytize_values = target.proselytize_vals(user, src) //relevant values for proselytizing stuff, given as an associated list if(!islist(proselytize_values)) if(proselytize_values != TRUE) //if we get true, fail, but don't send a message for whatever reason if(!isturf(target)) //otherwise, if we didn't get TRUE and the original target wasn't a turf, try to proselytize the turf return proselytize(get_turf(target), user, no_table_check) - user << "[target] cannot be proselytized!" + to_chat(user, "[target] cannot be proselytized!") if(!no_table_check) return TRUE return FALSE @@ -218,16 +218,16 @@ playsound(target, 'sound/items/Deconstruct.ogg', 50, 1) var/new_thing_type = proselytize_values["new_obj_type"] - if(isturf(target)) + if(isturf(target)) //if our target is a turf, we're just going to ChangeTurf it and assume it'll work out. var/turf/T = target T.ChangeTurf(new_thing_type) else if(proselytize_values["dir_in_new"]) - new new_thing_type(get_turf(target), proselytize_values["spawn_dir"]) + new new_thing_type(get_turf(target), proselytize_values["spawn_dir"]) //please verify that your new object actually wants to get a dir in New() else var/atom/A = new new_thing_type(get_turf(target)) A.setDir(proselytize_values["spawn_dir"]) - if(!proselytize_values["no_target_deletion"]) + if(!proselytize_values["no_target_deletion"]) //for some cases where proselytize_vals() modifies the object but doesn't want it deleted qdel(target) modify_stored_power(-proselytize_values["power_cost"]) if(no_table_check) @@ -246,27 +246,29 @@ if(!can_use_power(proselytize_values["power_cost"])) if(stored_power - proselytize_values["power_cost"] < 0) if(!silent) - user << "You need [proselytize_values["power_cost"]]W power to proselytize [target]!" + to_chat(user, "You need [proselytize_values["power_cost"]]W power to proselytize [target]!") else if(stored_power - proselytize_values["power_cost"] > max_power) if(!silent) - user << "Your [name] contains too much power to proselytize [target]!" + to_chat(user, "Your [name] contains too much power to proselytize [target]!") return FALSE return TRUE //The repair check proc. //Is dark magic. Can probably kill you. +//What this proc does is it takes an existing list of values, which it modifies. +//This(modifying an existing object) is the only way to get information OUT of a do_after callback, which this is used as. /obj/item/clockwork/clockwork_proselytizer/proc/proselytizer_repair_checks(list/repair_values, atom/target, mob/user, silent) //Exists entirely to avoid an otherwise unreadable series of checks. if(!islist(repair_values) || !target || QDELETED(target) || !user) return FALSE - if(isliving(target)) + if(isliving(target)) //standard checks for if we can affect the target var/mob/living/L = target if(!is_servant_of_ratvar(L)) if(!silent) - user << "[L] does not serve Ratvar!" + to_chat(user, "[L] does not serve Ratvar!") return FALSE if(L.health >= L.maxHealth || (L.flags & GODMODE)) if(!silent) - user << "[L == user ? "You are" : "[L] is"] at maximum health!" + to_chat(user, "[L == user ? "You are" : "[L] is"] at maximum health!") return FALSE repair_values["amount_to_heal"] = L.maxHealth - L.health else if(isobj(target)) @@ -274,23 +276,23 @@ var/obj/structure/destructible/clockwork/C = target if(!C.can_be_repaired) if(!silent) - user << "[C] cannot be repaired!" + to_chat(user, "[C] cannot be repaired!") return FALSE var/obj/O = target if(O.obj_integrity >= O.max_integrity) if(!silent) - user << "[O] is at maximum integrity!" + to_chat(user, "[O] is at maximum integrity!") return FALSE repair_values["amount_to_heal"] = O.max_integrity - O.obj_integrity else return FALSE - if(repair_values["amount_to_heal"] <= 0) + if(repair_values["amount_to_heal"] <= 0) //nothing to heal! return FALSE - repair_values["healing_for_cycle"] = min(repair_values["amount_to_heal"], PROSELYTIZER_REPAIR_PER_TICK) - repair_values["power_required"] = round(repair_values["healing_for_cycle"]*MIN_CLOCKCULT_POWER, MIN_CLOCKCULT_POWER) + repair_values["healing_for_cycle"] = min(repair_values["amount_to_heal"], PROSELYTIZER_REPAIR_PER_TICK) //modify the healing for this cycle + repair_values["power_required"] = round(repair_values["healing_for_cycle"]*MIN_CLOCKCULT_POWER, MIN_CLOCKCULT_POWER) //and get the power cost from that if(!can_use_power(RATVAR_POWER_CHECK) && !can_use_power(repair_values["power_required"])) if(!silent) - user << "You need at least [repair_values["power_required"]]W power to start repairin[target == user ? "g yourself" : "g [target]"], and at least \ - [round(repair_values["amount_to_heal"]*MIN_CLOCKCULT_POWER, MIN_CLOCKCULT_POWER)]W to fully repair [target == user ? "yourself" : "[target.p_them()]"]!" + to_chat(user, "You need at least [repair_values["power_required"]]W power to start repairin[target == user ? "g yourself" : "g [target]"], and at least \ + [round(repair_values["amount_to_heal"]*MIN_CLOCKCULT_POWER, MIN_CLOCKCULT_POWER)]W to fully repair [target == user ? "yourself" : "[target.p_them()]"]!") return FALSE return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm b/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm index 2e1c8f3195..3d0925a000 100644 --- a/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm +++ b/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm @@ -81,7 +81,7 @@ quickbound = list(/datum/clockwork_scripture/ranged_ability/linked_vanguard, /datum/clockwork_scripture/spatial_gateway, /datum/clockwork_scripture/channeled/volt_void/cyborg) /obj/item/clockwork/slab/cyborg/access_display(mob/living/user) - user << "Use the action buttons to recite your limited set of scripture!" + to_chat(user, "Use the action buttons to recite your limited set of scripture!") /obj/item/clockwork/slab/New() ..() @@ -138,7 +138,7 @@ if(S == src) continue S.production_time = production_time + 50 //set it to our next production plus five seconds, so that if you hold the same slabs, the same one will always generate - L << "Your slab cl[pick("ank", "ink", "unk", "ang")]s as it produces a component." + to_chat(L, "Your slab cl[pick("ank", "ink", "unk", "ang")]s as it produces a component.") /obj/item/clockwork/slab/examine(mob/user) ..() @@ -148,16 +148,16 @@ if(!quickbound[i]) continue var/datum/clockwork_scripture/quickbind_slot = quickbound[i] - user << "Quickbind button: [initial(quickbind_slot.name)]." - if(clockwork_caches) - user << "Stored components (with global cache):" + to_chat(user, "Quickbind button: [initial(quickbind_slot.name)].") + if(clockwork_caches) //show components on examine + to_chat(user, "Stored components (with global cache):") for(var/i in stored_components) - user << "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: [stored_components[i]] \ - ([stored_components[i] + clockwork_component_cache[i]])" + to_chat(user, "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: [stored_components[i]] \ + ([stored_components[i] + clockwork_component_cache[i]])") else - user << "Stored components:" + to_chat(user, "Stored components:") for(var/i in stored_components) - user << "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: [stored_components[i]]" + to_chat(user, "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: [stored_components[i]]") //Component Transferal /obj/item/clockwork/slab/attack(mob/living/target, mob/living/carbon/human/user) @@ -174,7 +174,7 @@ targetslab = S if(targetslab) if(targetslab == src) - user << "\"You can't transfer components into your own slab, idiot.\"" + to_chat(user, "\"You can't transfer components into your own slab, idiot.\"") else for(var/i in stored_components) targetslab.stored_components[i] += stored_components[i] @@ -184,7 +184,7 @@ user.visible_message("[user] empties [src] into [target]'s [targetslab.name].", \ "You transfer your slab's components into [target]'s [targetslab.name].") else - user << "[target] has no slabs to transfer components to." + to_chat(user, "[target] has no slabs to transfer components to.") else return ..() @@ -226,7 +226,7 @@ /obj/item/clockwork/slab/proc/show_hierophant(mob/living/user) if(!user.can_speak_vocal()) - user << "You cannot speak into the slab!" + to_chat(user, "You cannot speak into the slab!") return FALSE var/message = stripped_input(user, "Enter a message to send to your fellow servants.", "Hierophant") if(!message || !user || !user.canUseTopic(src) || !user.can_speak_vocal()) @@ -238,7 +238,7 @@ //Scripture Recital /obj/item/clockwork/slab/attack_self(mob/living/user) if(iscultist(user)) - user << "\"You reek of blood. You've got a lot of nerve to even look at that slab.\"" + to_chat(user, "\"You reek of blood. You've got a lot of nerve to even look at that slab.\"") user.visible_message("A sizzling sound comes from [user]'s hands!", "[src] suddenly grows extremely hot in your hands!") playsound(get_turf(user), 'sound/weapons/sear.ogg', 50, 1) user.drop_item() @@ -247,15 +247,15 @@ user.apply_damage(5, BURN, "r_arm") return 0 if(!is_servant_of_ratvar(user)) - user << "The information on [src]'s display shifts rapidly. After a moment, your head begins to pound, and you tear your eyes away." + to_chat(user, "The information on [src]'s display shifts rapidly. After a moment, your head begins to pound, and you tear your eyes away.") user.confused += 5 user.dizziness += 5 return 0 if(busy) - user << "[src] refuses to work, displaying the message: \"[busy]!\"" + to_chat(user, "[src] refuses to work, displaying the message: \"[busy]!\"") return 0 if(!nonhuman_usable && !ishuman(user)) - user << "[src] hums fitfully in your hands, but doesn't seem to do anything..." + to_chat(user, "[src] hums fitfully in your hands, but doesn't seem to do anything...") return 0 access_display(user) @@ -277,13 +277,13 @@ if(!scripture || !user || !user.canUseTopic(src) || (!nonhuman_usable && !ishuman(user))) return FALSE if(user.get_active_held_item() != src) - user << "You need to hold the slab in your active hand to recite scripture!" + to_chat(user, "You need to hold the slab in your active hand to recite scripture!") return FALSE var/initial_tier = initial(scripture.tier) if(initial_tier != SCRIPTURE_PERIPHERAL) var/list/tiers_of_scripture = scripture_unlock_check() if(!ratvar_awakens && !no_cost && !tiers_of_scripture[initial_tier]) - user << "That scripture is not unlocked, and cannot be recited!" + to_chat(user, "That scripture is not unlocked, and cannot be recited!") return FALSE var/datum/clockwork_scripture/scripture_to_recite = new scripture scripture_to_recite.slab = src @@ -369,17 +369,17 @@
Purge all untruths and honor Ratvar.
" return textlist.Join() -/obj/item/clockwork/slab/ui_data(mob/user) +/obj/item/clockwork/slab/ui_data(mob/user) //we display a lot of data via TGUI var/list/data = list() data["components"] = stored_components.Copy() var/list/temp_data = list("") - for(var/i in data["components"]) + for(var/i in data["components"]) //display the slab's components temp_data += "[get_component_acronym(i)] [data["components"][i]]" if(i != HIEROPHANT_ANSIBLE) temp_data += " " else temp_data += " (" - if(clockwork_caches) + if(clockwork_caches) //if we have caches, display what's in the global cache for(var/i in clockwork_component_cache) temp_data += "[get_component_acronym(i)] [data["components"][i] + clockwork_component_cache[i]]" if(i != HIEROPHANT_ANSIBLE) @@ -390,7 +390,7 @@ temp_data = temp_data.Join() data["components"] = temp_data - switch(selected_scripture) + switch(selected_scripture) //display info based on selected scripture tier if(SCRIPTURE_DRIVER) data["tier_info"] = "These scriptures are always unlocked." if(SCRIPTURE_SCRIPT) @@ -405,7 +405,7 @@ data["selected"] = selected_scripture data["target_comp"] = "NONE" - if(target_component_id) + if(target_component_id) //if we have a component to make, display that, too data["target_comp"] = "[get_component_acronym(target_component_id)]" generate_all_scripture() @@ -413,7 +413,7 @@ data["scripture"] = list() for(var/s in all_scripture) var/datum/clockwork_scripture/S = all_scripture[s] - if(S.tier == selected_scripture) + if(S.tier == selected_scripture) //display only scriptures of the selected tier var/scripture_color = get_component_color_bright(S.primary_component) var/list/temp_info = list("name" = "[S.name]", "descname" = "([S.descname])", @@ -493,7 +493,7 @@ /obj/item/clockwork/slab/proc/update_quickbind() for(var/datum/action/item_action/clock/quickbind/Q in actions) - qdel(Q) + qdel(Q) //regenerate all our quickbound scriptures if(LAZYLEN(quickbound)) for(var/i in 1 to quickbound.len) if(!quickbound[i]) @@ -503,7 +503,7 @@ var/datum/clockwork_scripture/quickbind_slot = all_scripture[quickbound[i]] Q.name = "[quickbind_slot.name] ([Q.scripture_index])" var/list/temp_desc = list() - for(var/c in quickbind_slot.consumed_components) + for(var/c in quickbind_slot.consumed_components) //show how much the bound scripture costs if(quickbind_slot.consumed_components[c]) temp_desc += "[get_component_acronym(c)] [quickbind_slot.consumed_components[c]] " if(LAZYLEN(temp_desc)) diff --git a/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm b/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm index beed0778b9..0353984a68 100644 --- a/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm +++ b/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm @@ -44,8 +44,8 @@ else update_status(FALSE) if(iscultist(user)) //Cultists spontaneously combust - user << "\"Consider yourself judged, whelp.\"" - user << "You suddenly catch fire!" + to_chat(user, "\"Consider yourself judged, whelp.\"") + to_chat(user, "You suddenly catch fire!") user.adjust_fire_stacks(5) user.IgniteMob() return 1 @@ -79,10 +79,10 @@ return 0 switch(active) if(TRUE) - L << "As you put on [src], its lens begins to glow, information flashing before your eyes.\n\ - Judicial visor active. Use the action button to gain the ability to smite the unworthy." + to_chat(L, "As you put on [src], its lens begins to glow, information flashing before your eyes.\n\ + Judicial visor active. Use the action button to gain the ability to smite the unworthy.") if(FALSE) - L << "As you take off [src], its lens darkens once more." + to_chat(L, "As you take off [src], its lens darkens once more.") return 1 /obj/item/clothing/glasses/judicial_visor/proc/recharge_visor(mob/living/user) @@ -90,7 +90,7 @@ return 0 recharging = FALSE if(user && src == user.get_item_by_slot(slot_glasses)) - user << "Your [name] hums. It is ready." + to_chat(user, "Your [name] hums. It is ready.") else active = FALSE icon_state = "judicial_visor_[active]" @@ -158,7 +158,7 @@ /obj/effect/clockwork/judicial_marker/New(loc, caster) ..() - SetLuminosity(4, 3) + set_light(1.4, 2, "#FE9C11") user = caster INVOKE_ASYNC(src, .proc/judicialblast) @@ -168,10 +168,11 @@ sleep(16) layer = ABOVE_ALL_MOB_LAYER flick("judicial_explosion", src) + set_light(1.4, 2, "#B451A1") sleep(13) var/targetsjudged = 0 playsound(src, 'sound/effects/explosionfar.ogg', 100, 1, 1, 1) - SetLuminosity(0) + set_light(0) for(var/mob/living/L in range(1, src)) if(is_servant_of_ratvar(L)) continue @@ -183,20 +184,20 @@ if(!iscultist(L)) L.visible_message("[L] is struck by a judicial explosion!", \ "[!issilicon(L) ? "An unseen force slams you into the ground!" : "ERROR: Motor servos disabled by external source!"]") - L.Weaken(8) + L.Weaken(8) //stun targets for 14-16 seconds else L.visible_message("[L] is struck by a judicial explosion!", \ "\"Keep an eye out, filth.\"\nA burst of heat crushes you against the ground!") - L.Weaken(4) //half the stun, but sets cultists on fire + L.Weaken(4) //stun for 6-8 seconds, but set cultist targets on fire L.adjust_fire_stacks(2) L.IgniteMob() if(iscarbon(L)) var/mob/living/carbon/C = L C.silent += 6 targetsjudged++ - L.adjustBruteLoss(10) + L.adjustBruteLoss(10) //do a small amount of damage add_logs(user, L, "struck with a judicial blast") - user << "[targetsjudged ? "Successfully judged [targetsjudged]":"Judged no"] heretic[targetsjudged == 1 ? "":"s"]." + to_chat(user, "[targetsjudged ? "Successfully judged [targetsjudged]":"Judged no"] heretic[targetsjudged == 1 ? "":"s"].") sleep(3) //so the animation completes properly qdel(src) diff --git a/code/game/gamemodes/clock_cult/clock_items/ratvarian_spear.dm b/code/game/gamemodes/clock_cult/clock_items/ratvarian_spear.dm index 280593234c..37c6922b9e 100644 --- a/code/game/gamemodes/clock_cult/clock_items/ratvarian_spear.dm +++ b/code/game/gamemodes/clock_cult/clock_items/ratvarian_spear.dm @@ -52,22 +52,22 @@ /obj/item/clockwork/ratvarian_spear/examine(mob/user) ..() if(is_servant_of_ratvar(user) || isobserver(user)) - user << "Stabbing a human you are pulling or have grabbed with the spear will impale them, doing massive damage and stunning." + to_chat(user, "Stabbing a human you are pulling or have grabbed with the spear will impale them, doing massive damage and stunning.") if(!iscyborg(user)) - user << "Throwing the spear will do massive damage, break the spear, and stun the target." + to_chat(user, "Throwing the spear will do massive damage, break the spear, and stun the target.") /obj/item/clockwork/ratvarian_spear/attack(mob/living/target, mob/living/carbon/human/user) var/impaling = FALSE if(attack_cooldown > world.time) - user << "You can't attack right now, wait [max(round((attack_cooldown - world.time)*0.1, 0.1), 0)] seconds!" + to_chat(user, "You can't attack right now, wait [max(round((attack_cooldown - world.time)*0.1, 0.1), 0)] seconds!") return if(user.pulling && ishuman(user.pulling) && user.pulling == target) if(impale_cooldown > world.time) - user << "You can't impale [target] yet, wait [max(round((impale_cooldown - world.time)*0.1, 0.1), 0)] seconds!" + to_chat(user, "You can't impale [target] yet, wait [max(round((impale_cooldown - world.time)*0.1, 0.1), 0)] seconds!") else impaling = TRUE attack_verb = list("impaled") - force += 22 //40 damage if ratvar isn't alive, 50 if he is + force += 22 //total 40 damage if ratvar isn't alive, 50 if he is armour_penetration += 10 //if you're impaling someone, armor sure isn't that useful user.stop_pulling() @@ -78,19 +78,19 @@ user.do_attack_animation(target) if(!target.attacked_by(src, user)) //TODO MAKE ATTACK() USE PROPER RETURN VALUES impaling = FALSE //if we got blocked, stop impaling - else if(!target.null_rod_check()) + else if(!target.null_rod_check()) //if they don't have a null rod, we do bonus damage on a successful attack if(issilicon(target)) var/mob/living/silicon/S = target if(S.stat != DEAD) S.visible_message("[S] shudders violently at [src]'s touch!", "ERROR: Temperature rising!") - S.adjustFireLoss(22) - else if(iscultist(target) || isconstruct(target)) //Cultists take extra fire damage + S.adjustFireLoss(22) //total 37 damage on borgs + else if(iscultist(target) || isconstruct(target)) var/mob/living/M = target if(M.stat != DEAD) - M << "Your body flares with agony at [src]'s presence!" - M.adjustFireLoss(15) + to_chat(M, "Your body flares with agony at [src]'s presence!") + M.adjustFireLoss(15) //total 30 damage on cultists else - target.adjustFireLoss(3) + target.adjustFireLoss(3) //anything else takes a total of 18 add_logs(user, target, "attacked", src.name, "(INTENT: [uppertext(user.a_intent)]) (DAMTYPE: [uppertext(damtype)])") add_fingerprint(user) @@ -98,11 +98,11 @@ ratvar_act() if(impaling) impale_cooldown = world.time + initial(impale_cooldown) - attack_cooldown = world.time + initial(attack_cooldown) + attack_cooldown = world.time + initial(attack_cooldown) //can't attack until we're done impaling if(target) new /obj/effect/overlay/temp/dir_setting/bloodsplatter(get_turf(target), get_dir(user, target)) - target.Stun(2) - user << "You prepare to remove your ratvarian spear from [target]..." + target.Stun(2) //brief stun + to_chat(user, "You prepare to remove your ratvarian spear from [target]...") var/remove_verb = pick("pull", "yank", "drag") if(do_after(user, 10, 1, target)) var/turf/T = get_turf(target) @@ -113,18 +113,18 @@ user.visible_message("[user] [remove_verb]s [src] out of [target]!", "You [remove_verb] your spear from [target]!") else user.visible_message("[user] kicks [target] off of [src]!", "You kick [target] off of [src]!") - target << "You scream in pain as you're kicked off of [src]!" + to_chat(target, "You scream in pain as you're kicked off of [src]!") target.emote("scream") step(target, get_dir(user, target)) T = get_turf(target) B.forceMove(T) - target.Weaken(2) + target.Weaken(2) //then weaken if we stayed next to them playsound(T, 'sound/weapons/thudswoosh.ogg', 50, 1) flash_color(target, flash_color="#911414", flash_time=8) else if(target) //it's a do_after, we gotta check again to make sure they didn't get deleted user.visible_message("[user] [remove_verb]s [src] out of [target]!", "You [remove_verb] your spear from [target]!") if(target.stat == CONSCIOUS) - target << "You scream in pain as [src] is suddenly [remove_verb]ed out of you!" + to_chat(target, "You scream in pain as [src] is suddenly [remove_verb]ed out of you!") target.emote("scream") flash_color(target, flash_color="#911414", flash_time=4) diff --git a/code/game/gamemodes/clock_cult/clock_items/soul_vessel.dm b/code/game/gamemodes/clock_cult/clock_items/soul_vessel.dm index 70a1d28038..1c5a2dd5f8 100644 --- a/code/game/gamemodes/clock_cult/clock_items/soul_vessel.dm +++ b/code/game/gamemodes/clock_cult/clock_items/soul_vessel.dm @@ -48,7 +48,7 @@ /obj/item/device/mmi/posibrain/soul_vessel/attack_self(mob/living/user) if(!is_servant_of_ratvar(user)) - user << "You fiddle around with [src], to no avail." + to_chat(user, "You fiddle around with [src], to no avail.") return 0 ..() @@ -57,35 +57,35 @@ ..() return if(used || (brainmob && brainmob.key)) - user << "\"This vessel is filled, friend. Provide it with a body.\"" + to_chat(user, "\"This vessel is filled, friend. Provide it with a body.\"") return if(is_servant_of_ratvar(target)) - user << "\"It would be more wise to revive your allies, friend.\"" + to_chat(user, "\"It would be more wise to revive your allies, friend.\"") return var/mob/living/carbon/human/H = target - var/obj/item/bodypart/head/HE = H.get_bodypart("head") - var/obj/item/organ/brain/B = H.getorgan(/obj/item/organ/brain) - if(!HE) - user << "[H] has no head, and thus no mind!" - return if(H.stat == CONSCIOUS) - user << "[H] must be dead or unconscious for you to claim [H.p_their()] mind!" + to_chat(user, "[H] must be dead or unconscious for you to claim [H.p_their()] mind!") return if(H.head) var/obj/item/I = H.head - if(I.flags_inv & HIDEHAIR) - user << "[H]'s head is covered, remove [H.head] first!" + if(I.flags_inv & HIDEHAIR) //they're wearing a hat that covers their skull + to_chat(user, "[H]'s head is covered, remove [H.head] first!") return if(H.wear_mask) var/obj/item/I = H.wear_mask - if(I.flags_inv & HIDEHAIR) - user << "[H]'s head is covered, remove [H.wear_mask] first!" + if(I.flags_inv & HIDEHAIR) //they're wearing a mask that covers their skull + to_chat(user, "[H]'s head is covered, remove [H.wear_mask] first!") return - if(!B) - user << "[H] has no brain, and thus no mind to claim!" + var/obj/item/bodypart/head/HE = H.get_bodypart("head") + if(!HE) //literally headless + to_chat(user, "[H] has no head, and thus no mind to claim!") return - if(!H.key) - user << "[H] has no mind to claim!" + var/obj/item/organ/brain/B = H.getorgan(/obj/item/organ/brain) + if(!B) //either somebody already got to them or robotics did + to_chat(user, "[H] has no brain, and thus no mind to claim!") + return + if(!H.key) //nobody's home + to_chat(user, "[H] has no mind to claim!") return playsound(H, 'sound/misc/splort.ogg', 60, 1, -1) playsound(H, 'sound/magic/clockwork/anima_fragment_attack.ogg', 40, 1, -1) diff --git a/code/game/gamemodes/clock_cult/clock_items/wraith_spectacles.dm b/code/game/gamemodes/clock_cult/clock_items/wraith_spectacles.dm index 362fc95eae..9c30c1cbfd 100644 --- a/code/game/gamemodes/clock_cult/clock_items/wraith_spectacles.dm +++ b/code/game/gamemodes/clock_cult/clock_items/wraith_spectacles.dm @@ -33,23 +33,23 @@ var/mob/living/carbon/human/H = loc if(src == H.glasses && !up) if(H.disabilities & BLIND) - H << "\"You're blind, idiot. Stop embarrassing yourself.\"" + to_chat(H, "\"You're blind, idiot. Stop embarrassing yourself.\"") return if(blind_cultist(H)) return if(is_servant_of_ratvar(H)) - H << "You push the spectacles down, and all is revealed to you.[ratvar_awakens ? "" : " Your eyes begin to itch - you cannot do this for long."]" + to_chat(H, "You push the spectacles down, and all is revealed to you.[ratvar_awakens ? "" : " Your eyes begin to itch - you cannot do this for long."]") var/datum/status_effect/wraith_spectacles/WS = H.has_status_effect(STATUS_EFFECT_WRAITHSPECS) if(WS) WS.apply_eye_damage(H) H.apply_status_effect(STATUS_EFFECT_WRAITHSPECS) else - H << "You push the spectacles down, but you can't see through the glass." + to_chat(H, "You push the spectacles down, but you can't see through the glass.") /obj/item/clothing/glasses/wraith_spectacles/proc/blind_cultist(mob/living/victim) if(iscultist(victim)) - victim << "\"It looks like Nar-Sie's dogs really don't value their eyes.\"" - victim << "Your eyes explode with horrific pain!" + to_chat(victim, "\"It looks like Nar-Sie's dogs really don't value their eyes.\"") + to_chat(victim, "Your eyes explode with horrific pain!") victim.emote("scream") victim.become_blind() victim.adjust_blurriness(30) @@ -77,25 +77,25 @@ if(slot != slot_glasses || up) return if(user.disabilities & BLIND) - user << "\"You're blind, idiot. Stop embarrassing yourself.\"" //Ratvar with the sick burns yo + to_chat(user, "\"You're blind, idiot. Stop embarrassing yourself.\"" ) return if(blind_cultist(user)) //Cultists instantly go blind return set_vision_vars(TRUE) if(is_servant_of_ratvar(user)) - user << "As you put on the spectacles, all is revealed to you.[ratvar_awakens ? "" : " Your eyes begin to itch - you cannot do this for long."]" + to_chat(user, "As you put on the spectacles, all is revealed to you.[ratvar_awakens ? "" : " Your eyes begin to itch - you cannot do this for long."]") var/datum/status_effect/wraith_spectacles/WS = user.has_status_effect(STATUS_EFFECT_WRAITHSPECS) if(WS) WS.apply_eye_damage(user) user.apply_status_effect(STATUS_EFFECT_WRAITHSPECS) else - user << "You put on the spectacles, but you can't see through the glass." + to_chat(user, "You put on the spectacles, but you can't see through the glass.") //The effect that causes/repairs the damage the spectacles cause. /datum/status_effect/wraith_spectacles id = "wraith_spectacles" duration = -1 //remains until eye damage done reaches 0 while the glasses are not worn - tick_interval = 2 + tick_interval = 20 alert_type = /obj/screen/alert/status_effect/wraith_spectacles var/eye_damage_done = 0 var/nearsight_breakpoint = 30 @@ -160,9 +160,9 @@ H.adjust_blurriness(2) if(eye_damage_done >= nearsight_breakpoint) if(H.become_nearsighted()) - H << "Your vision doubles, then trebles. Darkness begins to close in. You can't keep this up!" + to_chat(H, "Your vision doubles, then trebles. Darkness begins to close in. You can't keep this up!") if(eye_damage_done >= blind_breakpoint) if(H.become_blind()) - H << "A piercing white light floods your vision. Suddenly, all goes dark!" + to_chat(H, "A piercing white light floods your vision. Suddenly, all goes dark!") if(prob(min(20, 5 + eye_damage_done))) - H << "Your eyes continue to burn." + to_chat(H, "Your eyes continue to burn.") diff --git a/code/game/gamemodes/clock_cult/clock_mobs.dm b/code/game/gamemodes/clock_cult/clock_mobs.dm index 2ed0c67349..3538a8a557 100644 --- a/code/game/gamemodes/clock_cult/clock_mobs.dm +++ b/code/game/gamemodes/clock_cult/clock_mobs.dm @@ -17,6 +17,7 @@ verb_exclaim = "proclaims" verb_yell = "harangues" bubble_icon = "clock" + light_color = "#E42742" death_sound = 'sound/magic/clockwork/anima_fragment_death.ogg' var/playstyle_string = "You are a bug, yell at whoever spawned you!" @@ -26,7 +27,7 @@ /mob/living/simple_animal/hostile/clockwork/Login() ..() add_servant_of_ratvar(src, TRUE) - src << playstyle_string + to_chat(src, playstyle_string) /mob/living/simple_animal/hostile/clockwork/ratvar_act() fully_heal(TRUE) @@ -48,4 +49,4 @@ msg += "
" msg += "*---------*
" - user << msg + to_chat(user, msg) diff --git a/code/game/gamemodes/clock_cult/clock_mobs/anima_fragment.dm b/code/game/gamemodes/clock_cult/clock_mobs/anima_fragment.dm index f598722db4..a327211d01 100644 --- a/code/game/gamemodes/clock_cult/clock_mobs/anima_fragment.dm +++ b/code/game/gamemodes/clock_cult/clock_mobs/anima_fragment.dm @@ -14,21 +14,23 @@ weather_immunities = list("lava") movement_type = FLYING playstyle_string = "You are an anima fragment, a clockwork creation of Ratvar. As a fragment, you have decent health that very gradually regenerates, do \ - decent damage, and move at extreme speed in addition to being immune to extreme temperatures and pressures. Taking damage will temporarily slow you down, however.\n\ + decent damage, and move at extreme speed in addition to being immune to extreme temperatures and pressures. Taking damage, and slamming into non-Servants, will temporarily slow you down, however.\n\ Your goal is to serve the Justiciar and his servants in any way you can. You yourself are one of these servants, and will be able to utilize anything they can, assuming it doesn't require \ opposable thumbs." var/movement_delay_time //how long the fragment is slowed after being hit -/mob/living/simple_animal/hostile/clockwork/fragment/New() +/mob/living/simple_animal/hostile/clockwork/fragment/Initialize() ..() - SetLuminosity(2,1) + set_light(2, 0.8) if(prob(1)) name = "anime fragment" desc = "I-it's not like I want to show you the light of the Justiciar or anything, B-BAKA!" /mob/living/simple_animal/hostile/clockwork/fragment/Life() ..() - if(movement_delay_time > world.time) + if(ratvar_awakens) + adjustHealth(-5) + else if(movement_delay_time > world.time) adjustHealth(-0.2) else adjustHealth(-1) @@ -46,11 +48,23 @@ /mob/living/simple_animal/hostile/clockwork/fragment/Process_Spacemove(movement_dir = 0) return 1 +/mob/living/simple_animal/hostile/clockwork/fragment/Bump(atom/movable/AM) + . = ..() + if(movement_delay_time <= world.time && next_move <= world.time && isliving(AM) && !is_servant_of_ratvar(AM)) + var/mob/living/L = AM + if(L.stat) //we don't want to attack them if they're unconscious or dead because that feels REALLY BAD for the player + return + var/previousattacktext = attacktext + attacktext = "slams into" + UnarmedAttack(L) + attacktext = previousattacktext + changeNext_move(CLICK_CD_MELEE) + if(!ratvar_awakens) + adjustHealth(4) + adjust_movement_delay(10) //with the above damage, total of 20 movement delay plus speed = 0 due to damage + /mob/living/simple_animal/hostile/clockwork/fragment/emp_act(severity) - if(movement_delay_time > world.time) - movement_delay_time = movement_delay_time + (50/severity) - else - movement_delay_time = world.time + (50/severity) + adjust_movement_delay(50/severity) /mob/living/simple_animal/hostile/clockwork/fragment/movement_delay() . = ..() @@ -59,11 +73,16 @@ /mob/living/simple_animal/hostile/clockwork/fragment/adjustHealth(amount) . = ..() - if(!ratvar_awakens && amount > 0) //if ratvar is up we ignore movement delay - if(movement_delay_time > world.time) - movement_delay_time = movement_delay_time + amount*2.5 - else - movement_delay_time = world.time + amount*2.5 + if(amount > 0) + adjust_movement_delay(amount*2.5) + +/mob/living/simple_animal/hostile/clockwork/fragment/proc/adjust_movement_delay(amount) + if(ratvar_awakens) //if ratvar is up we ignore movement delay + movement_delay_time = 0 + else if(movement_delay_time > world.time) + movement_delay_time = movement_delay_time + amount + else + movement_delay_time = world.time + amount /mob/living/simple_animal/hostile/clockwork/fragment/updatehealth() ..() diff --git a/code/game/gamemodes/clock_cult/clock_mobs/clockwork_marauder.dm b/code/game/gamemodes/clock_cult/clock_mobs/clockwork_marauder.dm index cc9b4f1417..203060d263 100644 --- a/code/game/gamemodes/clock_cult/clock_mobs/clockwork_marauder.dm +++ b/code/game/gamemodes/clock_cult/clock_mobs/clockwork_marauder.dm @@ -29,10 +29,10 @@ Stay near your host to protect and heal them; being too far from your host will rapidly cause you massive damage. Recall to your host if you are too weak and believe you cannot continue \ fighting safely. As a final note, you should probably avoid harming any fellow servants of Ratvar.
" -/mob/living/simple_animal/hostile/clockwork/marauder/New() +/mob/living/simple_animal/hostile/clockwork/marauder/Initialize() ..() true_name = pick(possible_true_names) - SetLuminosity(2,1) + set_light(2, 1.1) /mob/living/simple_animal/hostile/clockwork/marauder/Life() ..() @@ -51,8 +51,8 @@ if(!recovering) heal_host() //also heal our host if inside of them and we aren't recovering else if(health == maxHealth) - src << "Your strength has returned. You can once again come forward!" - host << "Your marauder is now strong enough to come forward again!" + to_chat(src, "Your strength has returned. You can once again come forward!") + to_chat(host, "Your marauder is now strong enough to come forward again!") recovering = FALSE else if(ratvar_awakens) //If Ratvar is alive, marauders don't need a host and are downright impossible to kill @@ -64,7 +64,7 @@ return if(host.stat == DEAD) adjustHealth(50) - src << "Your host is dead!" + to_chat(src, "Your host is dead!") return if(z && host.z && z == host.z) switch(get_dist(get_turf(src), get_turf(host))) @@ -82,13 +82,13 @@ adjustHealth(9) if(8 to INFINITY) adjustHealth(15) - src << "You're too far from your host and rapidly taking damage!" + to_chat(src, "You're too far from your host and rapidly taking damage!") else //right next to or on top of host adjustHealth(-2) heal_host() //gradually heal host if nearby and host is very weak else //well then, you're not even in the same zlevel adjustHealth(15) - src << "You're too far from your host and rapidly taking damage!" + to_chat(src, "You're too far from your host and rapidly taking damage!") /mob/living/simple_animal/hostile/clockwork/marauder/death(gibbed) emerge_from_host(FALSE, TRUE) @@ -156,7 +156,7 @@ if(amount > 0) for(var/mob/living/L in view(2, src)) if(L.is_holding_item_of_type(/obj/item/weapon/nullrod)) - src << "The presence of a brandished holy artifact weakens your armor!" + to_chat(src, "The presence of a brandished holy artifact weakens your armor!") amount *= 4 //if a wielded null rod is nearby, it takes four times the health damage break . = ..() @@ -237,7 +237,7 @@ return ..() /mob/living/simple_animal/hostile/clockwork/marauder/attack_animal(mob/living/simple_animal/M) - if(istype(M, /mob/living/simple_animal/hostile/clockwork/marauder) || !blockOrCounter(M, M)) + if(istype(M, /mob/living/simple_animal/hostile/clockwork/marauder) || !blockOrCounter(M, M)) //we don't want infinite blockcounter loops if fighting another marauder return ..() /mob/living/simple_animal/hostile/clockwork/marauder/attack_paw(mob/living/carbon/monkey/M) @@ -278,7 +278,7 @@ counterchance = initial(counterchance) var/previousattacktext = attacktext attacktext = "counters" - target.attack_animal(src) + UnarmedAttack(target) attacktext = previousattacktext else counterchance = min(counterchance + initial(counterchance), 100) @@ -299,19 +299,19 @@ /mob/living/simple_animal/hostile/clockwork/marauder/proc/marauder_comms(message) var/name_part = "[src] ([true_name])" message = "\"[message]\"" //Processed output - src << "[name_part]: [message]" - host << "[name_part]: [message]" + to_chat(src, "[name_part]: [message]") + to_chat(host, "[name_part]: [message]") for(var/M in mob_list) if(isobserver(M)) var/link = FOLLOW_LINK(M, src) - M << "[link] [name_part] (to [findtextEx(host.name, host.real_name) ? "[host.name]" : "[host.real_name] (as [host.name])"]): [message] " + to_chat(M, "[link] [name_part] (to [findtextEx(host.name, host.real_name) ? "[host.name]" : "[host.real_name] (as [host.name])"]): [message] ") return TRUE /mob/living/simple_animal/hostile/clockwork/marauder/proc/return_to_host() if(is_in_host()) return FALSE if(!host) - src << "You don't have a host!" + to_chat(src, "You don't have a host!") return FALSE var/resulthealth = round((host.health / host.maxHealth) * 100, 0.5) if(iscarbon(host)) @@ -321,20 +321,20 @@ forceMove(host) if(resulthealth > MARAUDER_EMERGE_THRESHOLD && health != maxHealth) recovering = TRUE - src << "You have weakened and will need to recover before manifesting again!" - host << "[true_name] has weakened and will need to recover before manifesting again!" + to_chat(src, "You have weakened and will need to recover before manifesting again!") + to_chat(host, "[true_name] has weakened and will need to recover before manifesting again!") return TRUE /mob/living/simple_animal/hostile/clockwork/marauder/proc/try_emerge() if(!host) - src << "You don't have a host!" + to_chat(src, "You don't have a host!") return FALSE if(!ratvar_awakens) var/resulthealth = round((host.health / host.maxHealth) * 100, 0.5) if(iscarbon(host)) resulthealth = round((abs(HEALTH_THRESHOLD_DEAD - host.health) / abs(HEALTH_THRESHOLD_DEAD - host.maxHealth)) * 100) if(host.stat != DEAD && resulthealth > MARAUDER_EMERGE_THRESHOLD) //if above 20 health, fails - src << "Your host must be at [MARAUDER_EMERGE_THRESHOLD]% or less health to emerge like this!" + to_chat(src, "Your host must be at [MARAUDER_EMERGE_THRESHOLD]% or less health to emerge like this!") return FALSE return emerge_from_host(FALSE) @@ -343,16 +343,16 @@ return FALSE if(!force && recovering) if(hostchosen) - host << "[true_name] is too weak to come forth!" + to_chat(host, "[true_name] is too weak to come forth!") else - host << "[true_name] tries to emerge to protect you, but it's too weak!" - src << "You try to come forth, but you're too weak!" + to_chat(host, "[true_name] tries to emerge to protect you, but it's too weak!") + to_chat(src, "You try to come forth, but you're too weak!") return FALSE if(!force) if(hostchosen) //marauder approved - host << "Your words echo with power as [true_name] emerges from your body!" + to_chat(host, "Your words echo with power as [true_name] emerges from your body!") else - host << "[true_name] emerges from your body to protect you!" + to_chat(host, "[true_name] emerges from your body to protect you!") forceMove(host.loc) visible_message("[host]'s skin glows red as [name] emerges from their body!", "You exit the safety of [host]'s body!") return TRUE @@ -415,14 +415,14 @@ if(!owner || !message) return FALSE if(!linked_marauder) - owner << "Your marauder seems to have been destroyed!" + to_chat(owner, "Your marauder seems to have been destroyed!") return FALSE var/name_part = "Servant [findtextEx(owner.name, owner.real_name) ? "[owner.name]" : "[owner.real_name] (as [owner.name])"]" message = "\"[message]\"" //Processed output - owner << "[name_part]: [message]" - linked_marauder << "[name_part]: [message]" + to_chat(owner, "[name_part]: [message]") + to_chat(linked_marauder, "[name_part]: [message]") for(var/M in mob_list) if(isobserver(M)) var/link = FOLLOW_LINK(M, src) - M << "[link] [name_part] (to [linked_marauder] ([linked_marauder.true_name])): [message]" + to_chat(M, "[link] [name_part] (to [linked_marauder] ([linked_marauder.true_name])): [message]") return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_scripture.dm b/code/game/gamemodes/clock_cult/clock_scripture.dm index e943823a56..41621bcf69 100644 --- a/code/game/gamemodes/clock_cult/clock_scripture.dm +++ b/code/game/gamemodes/clock_cult/clock_scripture.dm @@ -55,7 +55,7 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or var/successful = FALSE if(can_recite() && has_requirements()) if(slab.busy) - invoker << "[slab] refuses to work, displaying the message: \"[slab.busy]!\"" + to_chat(invoker, "[slab] refuses to work, displaying the message: \"[slab.busy]!\"") return FALSE slab.busy = "Invocation ([name]) in progress" if(ratvar_awakens) @@ -96,7 +96,7 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or if(!invoker || !slab || invoker.get_active_held_item() != slab) return FALSE if(!invoker.can_speak_vocal()) - invoker << "You are unable to speak the words of the scripture!" + to_chat(invoker, "You are unable to speak the words of the scripture!") return FALSE return TRUE @@ -115,7 +115,7 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or failed = TRUE if(failed) component_printout += "
" - invoker << component_printout + to_chat(invoker, component_printout) return FALSE if(multiple_invokers_used && !multiple_invokers_optional && !ratvar_awakens && !slab.no_cost) var/nearby_servants = 0 @@ -123,7 +123,7 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or if(is_servant_of_ratvar(L) && L.stat == CONSCIOUS && L.can_speak_vocal()) nearby_servants++ if(nearby_servants < invokers_required) - invoker << "There aren't enough non-mute servants nearby ([nearby_servants]/[invokers_required])!" + to_chat(invoker, "There aren't enough non-mute servants nearby ([nearby_servants]/[invokers_required])!") return FALSE if(!check_special_requirements()) return FALSE @@ -149,7 +149,7 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or if(message) if(prob(ratvarian_prob)) message = text2ratvar(message) - invoker << "\"[message]\"" + to_chat(invoker, "\"[message]\"") invoker << 'sound/magic/clockwork/invoke_general.ogg' return TRUE @@ -176,7 +176,7 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or else for(var/invocation in invocations) clockwork_say(invoker, text2ratvar(invocation), whispered) - invoker << "You [channel_time <= 0 ? "recite" : "begin reciting"] a piece of scripture entitled \"[name]\"." + to_chat(invoker, "You [channel_time <= 0 ? "recite" : "begin reciting"] a piece of scripture entitled \"[name]\".") if(!channel_time) return TRUE for(var/invocation in invocations) @@ -219,7 +219,7 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or /datum/clockwork_scripture/channeled/proc/chant_effects(chant_number) //The chant's periodic effects /datum/clockwork_scripture/channeled/proc/chant_end_effects() //The chant's effect upon ending - invoker << "You cease your chant." + to_chat(invoker, "You cease your chant.") //Creates an object at the invoker's feet @@ -239,10 +239,10 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or /datum/clockwork_scripture/create_object/check_special_requirements() var/turf/T = get_turf(invoker) if(!space_allowed && isspaceturf(T)) - invoker << "You need solid ground to place this object!" + to_chat(invoker, "You need solid ground to place this object!") return FALSE if(one_per_tile && (locate(prevent_path) in T)) - invoker << "You can only place one of this object on each tile!" + to_chat(invoker, "You can only place one of this object on each tile!") return FALSE return TRUE @@ -250,7 +250,7 @@ Judgement: 12 servants, 5 caches, 300 CV, and any existing AIs are converted or if(creator_message && observer_message) invoker.visible_message(observer_message, creator_message) else if(creator_message) - invoker << creator_message + to_chat(invoker, creator_message) var/obj/O = new object_path (get_turf(invoker)) O.ratvar_act() //update the new object so it gets buffed if ratvar is alive if(istype(O, /obj/item)) diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_applications.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_applications.dm index ccfc4a1e6f..b409b7eb5b 100644 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_applications.dm +++ b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_applications.dm @@ -108,7 +108,7 @@ /datum/clockwork_scripture/memory_allocation/check_special_requirements() for(var/mob/living/simple_animal/hostile/clockwork/marauder/M in all_clockwork_mobs) if(M.host == invoker) - invoker << "You can only house one marauder at a time!" + to_chat(invoker, "You can only house one marauder at a time!") return FALSE return TRUE @@ -134,7 +134,7 @@ slab.busy = "Marauder Selection in progress" if(!check_special_requirements()) return FALSE - invoker << "The tendril shivers slightly as it selects a marauder..." + to_chat(invoker, "The tendril shivers slightly as it selects a marauder...") var/list/marauder_candidates = pollCandidates("Do you want to play as the clockwork marauder of [invoker.real_name]?", ROLE_SERVANT_OF_RATVAR, null, FALSE, 50) if(!check_special_requirements()) return FALSE @@ -214,7 +214,7 @@ quickbind_desc = "Creates an Interdiction Lens, which drains power into nearby Sigils of Transmission." -//Mending Motor: Creates a prism that will quickly heal mechanical servants/clockwork structures and consume power or replicant alloy. +//Mending Motor: Creates a prism that will quickly heal mechanical servants/clockwork structures at a power cost /datum/clockwork_scripture/create_object/mending_motor descname = "Powered Structure, Repairs Other Structures" name = "Mending Motor" @@ -285,10 +285,10 @@ if(is_servant_of_ratvar(L)) servants++ if(servants * 0.2 < clockwork_daemons) - invoker << "\"Daemons are already disabled, making more of them would be a waste.\"" + to_chat(invoker, "\"Daemons are already disabled, making more of them would be a waste.\"") return FALSE if(servants * 0.2 < clockwork_daemons+1) - invoker << "\"This daemon would be useless, friend.\"" + to_chat(invoker, "\"This daemon would be useless, friend.\"") return FALSE return ..() diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_cyborg.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_cyborg.dm index 3c52900a47..c5de8550e9 100644 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_cyborg.dm +++ b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_cyborg.dm @@ -18,7 +18,7 @@ /datum/clockwork_scripture/ranged_ability/linked_vanguard/check_special_requirements() if(islist(invoker.stun_absorption) && invoker.stun_absorption["vanguard"] && invoker.stun_absorption["vanguard"]["end_time"] > world.time) - invoker << "You are already shielded by a Vanguard!" + to_chat(invoker, "You are already shielded by a Vanguard!") return FALSE return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm index 414566c6a5..1cbf36755e 100644 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm +++ b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_drivers.dm @@ -28,9 +28,9 @@ C.apply_damage(noncultist_damage * 0.5, BURN, "r_leg") if(C.m_intent != MOVE_INTENT_WALK) if(!iscultist(C)) - C << "Your leg[number_legs > 1 ? "s shiver":" shivers"] with pain!" + to_chat(C, "Your leg[number_legs > 1 ? "s shiver":" shivers"] with pain!") else //Cultists take extra burn damage - C << "Your leg[number_legs > 1 ? "s burn":" burns"] with pain!" + to_chat(C, "Your leg[number_legs > 1 ? "s burn":" burns"] with pain!") C.apply_damage(cultist_damage * 0.5, BURN, "l_leg") C.apply_damage(cultist_damage * 0.5, BURN, "r_leg") C.toggle_move_intent() @@ -75,7 +75,7 @@ /datum/clockwork_scripture/vanguard/check_special_requirements() if(islist(invoker.stun_absorption) && invoker.stun_absorption["vanguard"] && invoker.stun_absorption["vanguard"]["end_time"] > world.time) - invoker << "You are already shielded by a Vanguard!" + to_chat(invoker, "You are already shielded by a Vanguard!") return FALSE return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_judgement.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_judgement.dm index 5a61f7ab21..1df9996de6 100644 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_judgement.dm +++ b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_judgement.dm @@ -32,21 +32,21 @@ /datum/clockwork_scripture/create_object/ark_of_the_clockwork_justiciar/check_special_requirements() if(!slab.no_cost) if(ratvar_awakens) - invoker << "\"I am already here, idiot.\"" + to_chat(invoker, "\"I am already here, idiot.\"") return FALSE for(var/obj/structure/destructible/clockwork/massive/celestial_gateway/G in all_clockwork_objects) var/area/gate_area = get_area(G) - invoker << "There is already a gateway at [gate_area.map_name]!" + to_chat(invoker, "There is already a gateway at [gate_area.map_name]!") return FALSE var/area/A = get_area(invoker) var/turf/T = get_turf(invoker) if(!T || T.z != ZLEVEL_STATION || istype(A, /area/shuttle) || !A.blob_allowed) - invoker << "You must be on the station to activate the Ark!" + to_chat(invoker, "You must be on the station to activate the Ark!") return FALSE if(clockwork_gateway_activated) if(ticker && ticker.mode && ticker.mode.clockwork_objective != CLOCKCULT_GATEWAY) - invoker << "\"Look upon his works. Is it not glorious?\"" + to_chat(invoker, "\"Look upon his works. Is it not glorious?\"") else - invoker << "Ratvar's recent banishment renders him too weak to be wrung forth from Reebe!" + to_chat(invoker, "Ratvar's recent banishment renders him too weak to be wrung forth from Reebe!") return FALSE return ..() diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_revenant.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_revenant.dm index d93cd8085d..86d51a97dc 100644 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_revenant.dm +++ b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_revenant.dm @@ -17,8 +17,8 @@ /datum/clockwork_scripture/invoke_inathneq/check_special_requirements() if(!slab.no_cost && clockwork_generals_invoked["inath-neq"] > world.time) - invoker << "\"[text2ratvar("I cannot lend you my aid yet, champion. Please be careful.")]\"\n\ - Inath-neq has already been invoked recently! You must wait several minutes before calling upon the Resonant Cogwheel." + to_chat(invoker, "\"[text2ratvar("I cannot lend you my aid yet, champion. Please be careful.")]\"\n\ + Inath-neq has already been invoked recently! You must wait several minutes before calling upon the Resonant Cogwheel.") return FALSE return TRUE @@ -57,12 +57,12 @@ /datum/clockwork_scripture/invoke_sevtug/check_special_requirements() if(!slab.no_cost && clockwork_generals_invoked["sevtug"] > world.time) - invoker << "\"[text2ratvar("Is it really so hard - even for a simpleton like you - to grasp the concept of waiting?")]\"\n\ - Sevtug has already been invoked recently! You must wait several minutes before calling upon the Formless Pariah." + to_chat(invoker, "\"[text2ratvar("Is it really so hard - even for a simpleton like you - to grasp the concept of waiting?")]\"\n\ + Sevtug has already been invoked recently! You must wait several minutes before calling upon the Formless Pariah.") return FALSE if(!slab.no_cost && ratvar_awakens) - invoker << "\"[text2ratvar("Do you really think anything I can do right now will compare to Engine's power?")]\"\n\ - Sevtug will not grant his power while Ratvar's dwarfs his own!" + to_chat(invoker, "\"[text2ratvar("Do you really think anything I can do right now will compare to Engine's power?")]\"\n\ + Sevtug will not grant his power while Ratvar's dwarfs his own!") return FALSE return TRUE @@ -81,16 +81,16 @@ var/minordistance = max(200 - distance*2, 5) var/majordistance = max(150 - distance*3, 5) if(H.null_rod_check()) - H << "[text2ratvar("Oh, a void weapon. How annoying, I may as well not bother.")]\n\ - Your holy weapon glows a faint orange, defending your mind!" + to_chat(H, "[text2ratvar("Oh, a void weapon. How annoying, I may as well not bother.")]\n\ + Your holy weapon glows a faint orange, defending your mind!") continue else if(H.isloyal()) visualsdistance = round(visualsdistance * 0.5) //half effect for shielded targets minordistance = round(minordistance * 0.5) majordistance = round(majordistance * 0.5) - H << "[text2ratvar("Oh, look, a mindshield. Cute, I suppose I'll humor it.")]" + to_chat(H, "[text2ratvar("Oh, look, a mindshield. Cute, I suppose I'll humor it.")]") else if(prob(visualsdistance)) - H << "[text2ratvar(pick(mindbreaksayings))]" + to_chat(H, "[text2ratvar(pick(mindbreaksayings))]") H.playsound_local(T, hum, visualsdistance, 1) flash_color(H, flash_color="#AF0AAF", flash_time=visualsdistance*10) H.dizziness = minordistance + H.dizziness @@ -119,12 +119,12 @@ /datum/clockwork_scripture/invoke_nezbere/check_special_requirements() if(!slab.no_cost && clockwork_generals_invoked["nezbere"] > world.time) - invoker << "\"[text2ratvar("Not just yet, friend. Patience is a virtue.")]\"\n\ - Nezbere has already been invoked recently! You must wait several minutes before calling upon the Brass Eidolon." + to_chat(invoker, "\"[text2ratvar("Not just yet, friend. Patience is a virtue.")]\"\n\ + Nezbere has already been invoked recently! You must wait several minutes before calling upon the Brass Eidolon.") return FALSE if(!slab.no_cost && ratvar_awakens) - invoker << "\"[text2ratvar("Our master is here already. You do not require my help, friend.")]\"\n\ - There is no need for Nezbere's assistance while Ratvar is risen!" + to_chat(invoker, "\"[text2ratvar("Our master is here already. You do not require my help, friend.")]\"\n\ + There is no need for Nezbere's assistance while Ratvar is risen!") return FALSE return TRUE @@ -159,8 +159,8 @@ /datum/clockwork_scripture/invoke_nzcrentr/check_special_requirements() if(!slab.no_cost && clockwork_generals_invoked["nzcrentr"] > world.time) - invoker << "\"[text2ratvar("The boss says you have to wait. Hey, do you think he would mind if I killed you? ...He would? Ok.")]\"\n\ - Nzcrentr has already been invoked recently! You must wait several minutes before calling upon the Eternal Thunderbolt." + to_chat(invoker, "\"[text2ratvar("The boss says you have to wait. Hey, do you think he would mind if I killed you? ...He would? Ok.")]\"\n\ + Nzcrentr has already been invoked recently! You must wait several minutes before calling upon the Eternal Thunderbolt.") return FALSE return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm index b6298ca1d5..9c098d6d8d 100644 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm +++ b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm @@ -24,7 +24,7 @@ /datum/clockwork_scripture/create_object/ocular_warden/check_special_requirements() for(var/obj/structure/destructible/clockwork/ocular_warden/W in range(OCULAR_WARDEN_EXCLUSION_RANGE, invoker)) - invoker << "You sense another ocular warden too near this location. Placing another this close would cause them to fight." //fluff message + to_chat(invoker, "You sense another ocular warden too near this location. Placing another this close would cause them to fight." ) return FALSE return ..() @@ -146,7 +146,7 @@ /datum/clockwork_scripture/function_call/check_special_requirements() for(var/datum/action/innate/function_call/F in invoker.actions) - invoker << "You have already bound a Ratvarian spear to yourself!" + to_chat(invoker, "You have already bound a Ratvarian spear to yourself!") return FALSE return invoker.can_hold_items() @@ -175,13 +175,13 @@ /datum/action/innate/function_call/Activate() if(!owner.get_empty_held_indexes()) - usr << "You need an empty hand to call forth your spear!" + to_chat(usr, "You need an empty hand to call forth your spear!") return FALSE owner.visible_message("A strange spear materializes in [owner]'s hands!", "You call forth your spear!") var/obj/item/clockwork/ratvarian_spear/R = new(get_turf(usr)) owner.put_in_hands(R) if(!ratvar_awakens) - owner << "Your spear begins to break down in this plane of existence. You can't use it for long!" + to_chat(owner, "Your spear begins to break down in this plane of existence. You can't use it for long!") cooldown = base_cooldown + world.time owner.update_action_buttons_icon() addtimer(CALLBACK(src, .proc/update_actions), base_cooldown) @@ -212,7 +212,7 @@ /datum/clockwork_scripture/spatial_gateway/check_special_requirements() if(!isturf(invoker.loc)) - invoker << "You must not be inside an object to use this scripture!" + to_chat(invoker, "You must not be inside an object to use this scripture!") return FALSE var/other_servants = 0 for(var/mob/living/L in living_mob_list) @@ -221,7 +221,7 @@ for(var/obj/structure/destructible/clockwork/powered/clockwork_obelisk/O in all_clockwork_objects) other_servants++ if(!other_servants) - invoker << "There are no other servants or clockwork obelisks!" + to_chat(invoker, "There are no other servants or clockwork obelisks!") return FALSE return TRUE @@ -284,7 +284,7 @@ invoker.visible_message("[invoker] is struck by [invoker.p_their()] own [VH.name]!", "You're struck by your own [VH.name]!") invoker.adjustFireLoss(VH.damage) //you have to fail all five blasts to die to this playsound(invoker, 'sound/machines/defib_zap.ogg', VH.damage, 1, -1) - invoker << "\"[text2ratvar(pick(nzcrentr_insults))]\"" + to_chat(invoker, "\"[text2ratvar(pick(nzcrentr_insults))]\"") else return FALSE return TRUE diff --git a/code/game/gamemodes/clock_cult/clock_structure.dm b/code/game/gamemodes/clock_cult/clock_structure.dm index 90e43623a6..5eda70a8f7 100644 --- a/code/game/gamemodes/clock_cult/clock_structure.dm +++ b/code/game/gamemodes/clock_cult/clock_structure.dm @@ -46,7 +46,7 @@ ..() desc = initial(desc) if(unanchored_icon) - user << "[src] is [anchored ? "":"not "]secured to the floor." + to_chat(user, "[src] is [anchored ? "":"not "]secured to the floor.") /obj/structure/destructible/clockwork/examine_status(mob/user) if(is_servant_of_ratvar(user) || isobserver(user)) @@ -90,7 +90,7 @@ /obj/structure/destructible/clockwork/can_be_unfasten_wrench(mob/user, silent) if(anchored && obj_integrity <= round(max_integrity * 0.25, 1)) if(!silent) - user << "[src] is too damaged to unsecure!" + to_chat(user, "[src] is too damaged to unsecure!") return FAILED_UNFASTEN return ..() @@ -125,7 +125,7 @@ if(do_damage) playsound(src, break_sound, 10 * get_efficiency_mod(TRUE), 1) take_damage(round(max_integrity * 0.25, 1), BRUTE) - user << "As you unsecure [src] from the floor, you see cracks appear in its surface!" + to_chat(user, "As you unsecure [src] from the floor, you see cracks appear in its surface!") /obj/structure/destructible/clockwork/emp_act(severity) if(anchored && unanchored_icon) @@ -167,8 +167,8 @@ if(is_servant_of_ratvar(user) || isobserver(user)) var/powered = total_accessable_power() var/sigil_number = LAZYLEN(check_apc_and_sigils()) - user << "It has access to [powered == INFINITY ? "INFINITY":"[powered]"]W of power, \ - and [sigil_number] Sigil[sigil_number == 1 ? "":"s"] of Transmission [sigil_number == 1 ? "is":"are"] in range." + to_chat(user, "It has access to [powered == INFINITY ? "INFINITY":"[powered]"]W of power, \ + and [sigil_number] Sigil[sigil_number == 1 ? "":"s"] of Transmission [sigil_number == 1 ? "is":"are"] in range.") /obj/structure/destructible/clockwork/powered/Destroy() SSfastprocess.processing -= src @@ -189,7 +189,7 @@ /obj/structure/destructible/clockwork/powered/can_be_unfasten_wrench(mob/user, silent) if(active) if(!silent) - user << "[src] needs to be disabled before it can be unsecured!" + to_chat(user, "[src] needs to be disabled before it can be unsecured!") return FAILED_UNFASTEN return ..() @@ -198,7 +198,7 @@ if(!is_servant_of_ratvar(user)) return FALSE if(!anchored && !active) - user << "[src] needs to be secured to the floor before it can be activated!" + to_chat(user, "[src] needs to be secured to the floor before it can be activated!") return FALSE visible_message("[user] [active ? "dis" : "en"]ables [src].", "You [active ? "dis" : "en"]able [src].") active = !active diff --git a/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm b/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm index c9cb135209..584145b88f 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm @@ -128,11 +128,11 @@ var/obj/item/clockwork/component/C = I if(required_components[C.component_id]) required_components[C.component_id]-- - user << "You add [C] to [src]." + to_chat(user, "You add [C] to [src].") user.drop_item() qdel(C) else - user << "[src] has enough [get_component_name(C.component_id)][C.component_id != REPLICANT_ALLOY ? "s":""]." + to_chat(user, "[src] has enough [get_component_name(C.component_id)][C.component_id != REPLICANT_ALLOY ? "s":""].") return 1 else if(istype(I, /obj/item/clockwork/slab)) var/obj/item/clockwork/slab/S = I @@ -173,34 +173,34 @@ icon_state = initial(icon_state) if(is_servant_of_ratvar(user) || isobserver(user)) if(still_needs_components()) - user << "Components required until activation:" + to_chat(user, "Components required until activation:") for(var/i in required_components) if(required_components[i]) - user << "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: \ - [required_components[i]]" + to_chat(user, "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: \ + [required_components[i]]") else - user << "Seconds until [ratvar_portal ? "Ratvar's arrival":"Proselytization"]: [get_arrival_text(TRUE)]" + to_chat(user, "Seconds until [ratvar_portal ? "Ratvar's arrival":"Proselytization"]: [get_arrival_text(TRUE)]") switch(progress_in_seconds) if(-INFINITY to GATEWAY_REEBE_FOUND) - user << "It's still opening." + to_chat(user, "It's still opening.") if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) - user << "It's reached the Celestial Derelict and is drawing power from it." + to_chat(user, "It's reached the Celestial Derelict and is drawing power from it.") if(GATEWAY_RATVAR_COMING to INFINITY) - user << "[ratvar_portal ? "Ratvar is coming through the gateway":"The gateway is glowing with massed power"]!" + to_chat(user, "[ratvar_portal ? "Ratvar is coming through the gateway":"The gateway is glowing with massed power"]!") else switch(progress_in_seconds) if(-INFINITY to GATEWAY_REEBE_FOUND) - user << "It's a swirling mass of blackness." + to_chat(user, "It's a swirling mass of blackness.") if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) - user << "It seems to be leading somewhere." + to_chat(user, "It seems to be leading somewhere.") if(GATEWAY_RATVAR_COMING to INFINITY) - user << "[ratvar_portal ? "Something is coming through":"It's glowing brightly"]!" + to_chat(user, "[ratvar_portal ? "Something is coming through":"It's glowing brightly"]!") /obj/structure/destructible/clockwork/massive/celestial_gateway/process() if(!first_sound_played || prob(7)) for(var/M in player_list) if(M && !isnewplayer(M)) - M << "You hear otherworldly sounds from the [dir2text(get_dir(get_turf(M), get_turf(src)))]..." + to_chat(M, "You hear otherworldly sounds from the [dir2text(get_dir(get_turf(M), get_turf(src)))]...") if(!obj_integrity) return 0 var/convert_dist = 1 + (round(Floor(progress_in_seconds, 15) * 0.067)) @@ -315,3 +315,10 @@ pixel_x = -32 pixel_y = -32 layer = BELOW_OPEN_DOOR_LAYER + light_range = 2 + light_power = 4 + light_color = "#6A4D2F" + +/obj/effect/clockwork/overlay/gateway_glow/New() + ..() + update_light() diff --git a/code/game/gamemodes/clock_cult/clock_structures/clock_shells.dm b/code/game/gamemodes/clock_cult/clock_structures/clock_shells.dm index 46adc6d46f..cfcac3b515 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/clock_shells.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/clock_shells.dm @@ -14,10 +14,10 @@ return 0 var/obj/item/device/mmi/posibrain/soul_vessel/S = I if(!S.brainmob) - user << "[S] is inactive! Turn it on or capture a mind first." + to_chat(user, "[S] is inactive! Turn it on or capture a mind first.") return 0 if(S.brainmob && (!S.brainmob.client || !S.brainmob.mind)) - user << "[S]'s trapped consciousness appears inactive!" + to_chat(user, "[S]'s trapped consciousness appears inactive!") return 0 user.visible_message("[user] places [S] in [src], where it fuses to the shell.", "You place [S] in [src], fusing it to the shell.") var/mob/living/simple_animal/A = new mobtype(get_turf(src)) diff --git a/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm b/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm index 9c809a14bf..e4400fcbb9 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/clockwork_obelisk.dm @@ -24,12 +24,12 @@ /obj/structure/destructible/clockwork/powered/clockwork_obelisk/examine(mob/user) ..() if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It requires [hierophant_cost]W to broadcast over the Hierophant Network, and [gateway_cost]W to open a Spatial Gateway." + to_chat(user, "It requires [hierophant_cost]W to broadcast over the Hierophant Network, and [gateway_cost]W to open a Spatial Gateway.") /obj/structure/destructible/clockwork/powered/clockwork_obelisk/can_be_unfasten_wrench(mob/user, silent) if(active) if(!silent) - user << "[src] is currently sustaining a gateway!" + to_chat(user, "[src] is currently sustaining a gateway!") return FAILED_UNFASTEN return ..() @@ -44,40 +44,40 @@ /obj/structure/destructible/clockwork/powered/clockwork_obelisk/attack_hand(mob/living/user) if(!is_servant_of_ratvar(user) || total_accessable_power() < hierophant_cost || !anchored) - user << "You place your hand on the obelisk, but it doesn't react." + to_chat(user, "You place your hand on the obelisk, but it doesn't react.") return var/choice = alert(user,"You place your hand on the obelisk...",,"Hierophant Broadcast","Spatial Gateway","Cancel") switch(choice) if("Hierophant Broadcast") if(active) - user << "The obelisk is sustaining a gateway and cannot broadcast!" + to_chat(user, "The obelisk is sustaining a gateway and cannot broadcast!") return if(!user.can_speak_vocal()) - user << "You cannot speak through the obelisk!" + to_chat(user, "You cannot speak through the obelisk!") return var/input = stripped_input(usr, "Please choose a message to send over the Hierophant Network.", "Hierophant Broadcast", "") if(!is_servant_of_ratvar(user) || !input || !user.canUseTopic(src, !issilicon(user))) return if(active) - user << "The obelisk is sustaining a gateway and cannot broadcast!" + to_chat(user, "The obelisk is sustaining a gateway and cannot broadcast!") return if(!try_use_power(hierophant_cost)) - user << "The obelisk lacks the power to broadcast!" + to_chat(user, "The obelisk lacks the power to broadcast!") return if(!user.can_speak_vocal()) - user << "You cannot speak through the obelisk!" + to_chat(user, "You cannot speak through the obelisk!") return clockwork_say(user, text2ratvar("Hierophant Broadcast, activate! [html_decode(input)]")) titled_hierophant_message(user, input, "big_brass", "large_brass") if("Spatial Gateway") if(active) - user << "The obelisk is already sustaining a gateway!" + to_chat(user, "The obelisk is already sustaining a gateway!") return if(!try_use_power(gateway_cost)) - user << "The obelisk lacks the power to open a gateway!" + to_chat(user, "The obelisk lacks the power to open a gateway!") return if(!user.can_speak_vocal()) - user << "You need to be able to speak to open a gateway!" + to_chat(user, "You need to be able to speak to open a gateway!") return if(procure_gateway(user, round(100 * get_efficiency_mod(), 1), round(5 * get_efficiency_mod(), 1), 1) && !active) clockwork_say(user, text2ratvar("Spatial Gateway, activate!")) diff --git a/code/game/gamemodes/clock_cult/clock_structures/geis_binding.dm b/code/game/gamemodes/clock_cult/clock_structures/geis_binding.dm index e00d15319c..7023619608 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/geis_binding.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/geis_binding.dm @@ -5,6 +5,7 @@ clockwork_desc = "A binding ring around a target, preventing them from taking action while they're being converted." max_integrity = 25 obj_integrity = 25 + light_color = "#AF0AAF" density = FALSE immune_to_servant_attacks = TRUE icon = 'icons/effects/clockwork_effects.dmi' @@ -19,6 +20,10 @@ var/can_resist = FALSE var/mob_layer = MOB_LAYER +/obj/structure/destructible/clockwork/geis_binding/New() + ..() + set_light(2, 0.5) + /obj/structure/destructible/clockwork/geis_binding/examine(mob/user) icon_state = "geisbinding_full" ..() diff --git a/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm b/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm index f4e4ffb82d..56e2736cd4 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/interdiction_lens.dm @@ -19,24 +19,28 @@ var/interdiction_range = 14 //how large an area it drains and disables in var/static/list/rage_messages = list("...", "Disgusting.", "Die.", "Foul.", "Worthless.", "Mortal.", "Unfit.", "Weak.", "Fragile.", "Useless.", "Leave my sight!") +/obj/structure/destructible/clockwork/powered/interdiction_lens/New() + ..() + set_light(1.4, 0.8, "#F42B9D") + /obj/structure/destructible/clockwork/powered/interdiction_lens/examine(mob/user) ..() - user << "Its gemstone [recharging > world.time ? "has been breached by writhing tendrils of blackness that cover the totem" \ - : "vibrates in place and thrums with power"]." + to_chat(user, "Its gemstone [recharging > world.time ? "has been breached by writhing tendrils of blackness that cover the totem" \ + : "vibrates in place and thrums with power"].") if(is_servant_of_ratvar(user) || isobserver(user)) - user << "If it fails to drain any electronics or has nothing to return power to, it will disable itself for [round(recharge_time/600, 1)] minutes." + to_chat(user, "If it fails to drain any electronics or has nothing to return power to, it will disable itself for [round(recharge_time/600, 1)] minutes.") /obj/structure/destructible/clockwork/powered/interdiction_lens/toggle(fast_process, mob/living/user) . = ..() if(active) - SetLuminosity(4, 2) + set_light(2, 1.6, "#EE54EE") else - SetLuminosity(0) + set_light(1.4, 0.8, "#F42B9D") /obj/structure/destructible/clockwork/powered/interdiction_lens/attack_hand(mob/living/user) if(user.canUseTopic(src, !issilicon(user), NO_DEXTERY)) if(disabled) - user << "As you place your hand on the gemstone, cold tendrils of black matter crawl up your arm. You quickly pull back." + to_chat(user, "As you place your hand on the gemstone, cold tendrils of black matter crawl up your arm. You quickly pull back.") return 0 toggle(0, user) @@ -49,7 +53,7 @@ recharging = world.time + recharge_time flick("interdiction_lens_discharged", src) icon_state = "interdiction_lens_inactive" - SetLuminosity(2,1) + set_light(2, 1.6, "#151200") disabled = TRUE return TRUE @@ -92,7 +96,7 @@ power_drained += Floor(A.power_drain(TRUE) * efficiency, MIN_CLOCKCULT_POWER) if(prob(1 * rage_modifier)) - A << "\"[text2ratvar(pick(rage_messages))]\"" + to_chat(A, "\"[text2ratvar(pick(rage_messages))]\"") if(prob(100 * (efficiency * efficiency))) if(istype(A, /obj/machinery/camera) && unconverted_ai) diff --git a/code/game/gamemodes/clock_cult/clock_structures/mania_motor.dm b/code/game/gamemodes/clock_cult/clock_structures/mania_motor.dm index b483d5a043..09372044a9 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/mania_motor.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/mania_motor.dm @@ -8,9 +8,10 @@ inactive_icon = "mania_motor_inactive" unanchored_icon = "mania_motor_unwrenched" construction_value = 20 + break_message = "The antenna break off, leaving a pile of shards!" max_integrity = 100 obj_integrity = 100 - break_message = "The antenna break off, leaving a pile of shards!" + light_color = "#AF0AAF" debris = list(/obj/item/clockwork/alloy_shards/large = 2, \ /obj/item/clockwork/alloy_shards/small = 2, \ /obj/item/clockwork/component/geis_capacitor/antennae = 1) @@ -30,7 +31,7 @@ /obj/structure/destructible/clockwork/powered/mania_motor/examine(mob/user) ..() if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It requires [mania_cost]W to run, and at least [convert_cost]W to attempt to convert humans adjacent to it." + to_chat(user, "It requires [mania_cost]W to run, and at least [convert_cost]W to attempt to convert humans adjacent to it.") /obj/structure/destructible/clockwork/powered/mania_motor/forced_disable(bad_effects) if(active) @@ -44,16 +45,16 @@ /obj/structure/destructible/clockwork/powered/mania_motor/attack_hand(mob/living/user) if(user.canUseTopic(src, !issilicon(user), NO_DEXTERY) && is_servant_of_ratvar(user)) if(!total_accessable_power() >= mania_cost) - user << "[src] needs more power to function!" + to_chat(user, "[src] needs more power to function!") return 0 toggle(0, user) /obj/structure/destructible/clockwork/powered/mania_motor/toggle(fast_process, mob/living/user) . = ..() if(active) - SetLuminosity(2, 1) + set_light(2, 0.9) else - SetLuminosity(0) + set_light(0) /obj/structure/destructible/clockwork/powered/mania_motor/process() if(!try_use_power(mania_cost)) @@ -81,10 +82,10 @@ var/sound_distance = falloff_distance * 0.5 var/targetbrainloss = H.getBrainLoss() if(distance > 3 && prob(falloff_distance * 0.5)) - H << "\"[text2ratvar(pick(mania_messages))]\"" + to_chat(H, "\"[text2ratvar(pick(mania_messages))]\"") if(distance <= 1) if(!H.Adjacent(src)) - H << "\"[text2ratvar(pick(close_messages))]\"" + to_chat(H, "\"[text2ratvar(pick(close_messages))]\"") H.playsound_local(T, hum, sound_distance, 1) else if(!try_use_power(convert_cost)) visible_message("[src]'s antennae fizzle quietly.") @@ -98,7 +99,7 @@ else H.Paralyse(3) else if(is_eligible_servant(H)) - H << "\"[text2ratvar("You are mine and his, now.")]\"" + to_chat(H, "\"[text2ratvar("You are mine and his, now.")]\"") add_servant_of_ratvar(H) H.Paralyse(5) else @@ -107,9 +108,9 @@ if(0 to 3) if(prob(falloff_distance * 0.5)) if(prob(falloff_distance)) - H << "\"[text2ratvar(pick(mania_messages))]\"" + to_chat(H, "\"[text2ratvar(pick(mania_messages))]\"") else - H << "\"[text2ratvar(pick(compel_messages))]\"" + to_chat(H, "\"[text2ratvar(pick(compel_messages))]\"") if(targetbrainloss <= 40) H.adjustBrainLoss(3 * efficiency) H.adjust_drugginess(Clamp(7 * efficiency, 0, 50 - H.druggy)) diff --git a/code/game/gamemodes/clock_cult/clock_structures/mending_motor.dm b/code/game/gamemodes/clock_cult/clock_structures/mending_motor.dm index 740e523944..6bd0f46e9d 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/mending_motor.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/mending_motor.dm @@ -32,7 +32,7 @@ /obj/structure/destructible/clockwork/powered/mending_motor/examine(mob/user) ..() if(is_servant_of_ratvar(user) || isobserver(user)) - user << "It requires at least [heal_cost]W to attempt to repair clockwork mobs, structures, or converted silicons." + to_chat(user, "It requires at least [heal_cost]W to attempt to repair clockwork mobs, structures, or converted silicons.") /obj/structure/destructible/clockwork/powered/mending_motor/forced_disable(bad_effects) if(active) @@ -45,7 +45,7 @@ /obj/structure/destructible/clockwork/powered/mending_motor/attack_hand(mob/living/user) if(user.canUseTopic(src, !issilicon(user), NO_DEXTERY) && is_servant_of_ratvar(user)) if(total_accessable_power() < MIN_CLOCKCULT_POWER) - user << "[src] needs more power to function!" + to_chat(user, "[src] needs more power to function!") return 0 toggle(0, user) @@ -64,10 +64,10 @@ S.adjustHealth(-(8 * efficiency)) new /obj/effect/overlay/temp/heal(T, "#1E8CE1") else - S << "\"[text2ratvar(pick(heal_failure_messages))]\"" + to_chat(S, "\"[text2ratvar(pick(heal_failure_messages))]\"") break else - S << "\"[text2ratvar(pick(heal_finish_messages))]\"" + to_chat(S, "\"[text2ratvar(pick(heal_finish_messages))]\"") break else if(is_type_in_typecache(M, mending_motor_typecache)) T = get_turf(M) @@ -97,10 +97,10 @@ S.heal_ordered_damage(8 * efficiency, damage_heal_order) new /obj/effect/overlay/temp/heal(T, "#1E8CE1") else - S << "\"[text2ratvar(pick(heal_failure_messages))]\"" + to_chat(S, "\"[text2ratvar(pick(heal_failure_messages))]\"") break else - S << "\"[text2ratvar(pick(heal_finish_messages))]\"" + to_chat(S, "\"[text2ratvar(pick(heal_finish_messages))]\"") break . = ..() if(. < heal_cost) diff --git a/code/game/gamemodes/clock_cult/clock_structures/ocular_warden.dm b/code/game/gamemodes/clock_cult/clock_structures/ocular_warden.dm index fd7be73f91..da2483883e 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/ocular_warden.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/ocular_warden.dm @@ -27,7 +27,7 @@ /obj/structure/destructible/clockwork/ocular_warden/examine(mob/user) ..() - user << "[target ? "It's fixated on [target]!" : "Its gaze is wandering aimlessly."]" + to_chat(user, "[target ? "It's fixated on [target]!" : "Its gaze is wandering aimlessly."]") /obj/structure/destructible/clockwork/ocular_warden/hulk_damage() return 25 @@ -36,12 +36,12 @@ if(anchored) if(obj_integrity <= max_integrity * 0.25) if(!silent) - user << "[src] is too damaged to unsecure!" + to_chat(user, "[src] is too damaged to unsecure!") return FAILED_UNFASTEN else for(var/obj/structure/destructible/clockwork/ocular_warden/W in orange(OCULAR_WARDEN_EXCLUSION_RANGE, src)) if(!silent) - user << "You sense another ocular warden too near this location. Activating this one this close would cause them to fight." + to_chat(user, "You sense another ocular warden too near this location. Activating this one this close would cause them to fight.") return FAILED_UNFASTEN return SUCCESSFUL_UNFASTEN @@ -97,10 +97,10 @@ visible_message("[src] swivels to face [target]!") if(isliving(target)) var/mob/living/L = target - L << "\"I SEE YOU!\"\n[src]'s gaze [ratvar_awakens ? "melts you alive" : "burns you"]!" + to_chat(L, "\"I SEE YOU!\"\n[src]'s gaze [ratvar_awakens ? "melts you alive" : "burns you"]!") else if(istype(target,/obj/mecha)) var/obj/mecha/M = target - M.occupant << "\"I SEE YOU!\"" //heeeellooooooo, person in mech. + to_chat(M.occupant, "\"I SEE YOU!\"" ) else if(prob(0.5)) //Extremely low chance because of how fast the subsystem it uses processes if(prob(50)) visible_message("[src][pick(idle_messages)]") @@ -113,7 +113,7 @@ var/obj/item/weapon/storage/book/bible/B = L.bible_check() if(B) if(!(B.resistance_flags & ON_FIRE)) - L << "Your [B.name] bursts into flames!" + to_chat(L, "Your [B.name] bursts into flames!") for(var/obj/item/weapon/storage/book/bible/BI in L.GetAllContents()) if(!(BI.resistance_flags & ON_FIRE)) BI.fire_act() diff --git a/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm b/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm index 6f446616b4..969e3e23e4 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm @@ -9,6 +9,9 @@ pixel_y = -248 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF appearance_flags = 0 + light_power = 0.7 + light_range = 15 + light_color = rgb(190, 135, 0) var/atom/prey //Whatever Ratvar is chasing var/clashing = FALSE //If Ratvar is FUCKING FIGHTING WITH NAR-SIE var/proselytize_range = 10 @@ -73,13 +76,13 @@ meals += L if(meals.len) prey = pick(meals) - prey << "\"You will do.\"\n\ - Something very large and very malevolent begins lumbering its way towards you..." + to_chat(prey, "\"You will do.\"\n\ + Something very large and very malevolent begins lumbering its way towards you...") prey << 'sound/effects/ratvar_reveal.ogg' else if((!istype(prey, /obj/singularity/narsie) && prob(10)) || is_servant_of_ratvar(prey) || prey.z != z) - prey << "\"How dull. Leave me.\"\n\ - You feel tremendous relief as a set of horrible eyes loses sight of you..." + to_chat(prey, "\"How dull. Leave me.\"\n\ + You feel tremendous relief as a set of horrible eyes loses sight of you...") prey = null else dir_to_step_in = get_dir(src, prey) //Unlike Nar-Sie, Ratvar ruthlessly chases down his target @@ -89,8 +92,8 @@ if(clashing) return FALSE clashing = TRUE - world << "\"[pick("BLOOD GOD!!!", "NAR-SIE!!!", "AT LAST, YOUR TIME HAS COME!")]\"" - world << "\"Ratvar?! How?!\"" + to_chat(world, "\"[pick("BLOOD GOD!!!", "NAR-SIE!!!", "AT LAST, YOUR TIME HAS COME!")]\"") + to_chat(world, "\"Ratvar?! How?!\"") for(var/obj/singularity/narsie/N in range(15, src)) if(N.clashing) continue diff --git a/code/game/gamemodes/clock_cult/clock_structures/tinkerers_cache.dm b/code/game/gamemodes/clock_cult/clock_structures/tinkerers_cache.dm index a4534b8fb3..ad1f0a91df 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/tinkerers_cache.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/tinkerers_cache.dm @@ -10,6 +10,7 @@ break_message = "The cache's fire winks out before it falls in on itself!" max_integrity = 80 obj_integrity = 80 + light_color = "#C2852F" var/wall_generation_cooldown var/turf/closed/wall/clockwork/linkedwall //if we've got a linked wall and are producing @@ -18,7 +19,7 @@ START_PROCESSING(SSobj, src) clockwork_caches++ update_slab_info() - SetLuminosity(2,1) + set_light(2, 0.7) /obj/structure/destructible/clockwork/cache/Destroy() clockwork_caches-- @@ -54,18 +55,18 @@ if(istype(I, /obj/item/clockwork/component)) var/obj/item/clockwork/component/C = I if(!anchored) - user << "[src] needs to be secured to place [C] into it!" + to_chat(user, "[src] needs to be secured to place [C] into it!") else clockwork_component_cache[C.component_id]++ update_slab_info() - user << "You add [C] to [src]." + to_chat(user, "You add [C] to [src].") user.drop_item() qdel(C) return 1 else if(istype(I, /obj/item/clockwork/slab)) var/obj/item/clockwork/slab/S = I if(!anchored) - user << "[src] needs to be secured to offload your slab's components into it!" + to_chat(user, "[src] needs to be secured to offload your slab's components into it!") else for(var/i in S.stored_components) clockwork_component_cache[i] += S.stored_components[i] @@ -76,27 +77,34 @@ else return ..() +/obj/structure/destructible/clockwork/cache/update_anchored(mob/user, do_damage) + ..() + if(anchored) + set_light(2, 0.7) + else + set_light(0) + /obj/structure/destructible/clockwork/cache/attack_hand(mob/living/user) ..() if(is_servant_of_ratvar(user)) if(linkedwall) if(wall_generation_cooldown > world.time) var/temp_time = (wall_generation_cooldown - world.time) * 0.1 - user << "[src] will produce a component in [temp_time] second[temp_time == 1 ? "":"s"]." + to_chat(user, "[src] will produce a component in [temp_time] second[temp_time == 1 ? "":"s"].") else - user << "[src] is about to produce a component!" + to_chat(user, "[src] is about to produce a component!") else if(anchored) - user << "[src] is unlinked! Construct a Clockwork Wall nearby to generate components!" + to_chat(user, "[src] is unlinked! Construct a Clockwork Wall nearby to generate components!") else - user << "[src] needs to be secured to generate components!" + to_chat(user, "[src] needs to be secured to generate components!") /obj/structure/destructible/clockwork/cache/examine(mob/user) ..() if(is_servant_of_ratvar(user) || isobserver(user)) if(linkedwall) - user << "It is linked to a Clockwork Wall and will generate a component every [round((CACHE_PRODUCTION_TIME * 0.1) * get_efficiency_mod(TRUE), 0.1)] seconds!" + to_chat(user, "It is linked to a Clockwork Wall and will generate a component every [round((CACHE_PRODUCTION_TIME * 0.1) * get_efficiency_mod(TRUE), 0.1)] seconds!") else - user << "It is unlinked! Construct a Clockwork Wall nearby to generate components!" - user << "Stored components:" + to_chat(user, "It is unlinked! Construct a Clockwork Wall nearby to generate components!") + to_chat(user, "Stored components:") for(var/i in clockwork_component_cache) - user << "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: [clockwork_component_cache[i]]" + to_chat(user, "[get_component_name(i)][i != REPLICANT_ALLOY ? "s":""]: [clockwork_component_cache[i]]") diff --git a/code/game/gamemodes/clock_cult/clock_structures/tinkerers_daemon.dm b/code/game/gamemodes/clock_cult/clock_structures/tinkerers_daemon.dm index 97e7876455..ab557dd36a 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/tinkerers_daemon.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/tinkerers_daemon.dm @@ -43,12 +43,12 @@ if(is_servant_of_ratvar(user) || isobserver(user)) if(active) if(component_id_to_produce) - user << "It is currently producing [get_component_name(component_id_to_produce)][component_id_to_produce != REPLICANT_ALLOY ? "s":""]." + to_chat(user, "It is currently producing [get_component_name(component_id_to_produce)][component_id_to_produce != REPLICANT_ALLOY ? "s":""].") else - user << "It is currently producing random components." - user << "It will produce a component every [round((production_cooldown*0.1) * get_efficiency_mod(TRUE), 0.1)] seconds and requires at least the following power for each component type:" + to_chat(user, "It is currently producing random components.") + to_chat(user, "It will produce a component every [round((production_cooldown*0.1) * get_efficiency_mod(TRUE), 0.1)] seconds and requires at least the following power for each component type:") for(var/i in clockwork_component_cache) - user << "[get_component_name(i)]: [get_component_cost(i)]W ([clockwork_component_cache[i]] exist[clockwork_component_cache[i] == 1 ? "s" : ""])" + to_chat(user, "[get_component_name(i)]: [get_component_cost(i)]W ([clockwork_component_cache[i]] exist[clockwork_component_cache[i] == 1 ? "s" : ""])") /obj/structure/destructible/clockwork/powered/tinkerers_daemon/forced_disable(bad_effects) if(active) @@ -63,23 +63,23 @@ /obj/structure/destructible/clockwork/powered/tinkerers_daemon/attack_hand(mob/living/user) if(!is_servant_of_ratvar(user)) - user << "You place your hand on the daemon, but nothing happens." + to_chat(user, "You place your hand on the daemon, but nothing happens.") return if(active) toggle(0, user) else if(!anchored) - user << "[src] needs to be secured to the floor before it can be activated!" + to_chat(user, "[src] needs to be secured to the floor before it can be activated!") return FALSE var/servants = 0 for(var/mob/living/L in living_mob_list) if(is_servant_of_ratvar(L)) servants++ if(servants * 0.2 < clockwork_daemons) - user << "\"There are too few servants for this daemon to work.\"" + to_chat(user, "\"There are too few servants for this daemon to work.\"") return if(!clockwork_caches) - user << "\"You require a cache for this daemon to operate. Get to it.\"" + to_chat(user, "\"You require a cache for this daemon to operate. Get to it.\"") return var/min_power_usable = 0 for(var/i in clockwork_component_cache) @@ -88,7 +88,7 @@ else min_power_usable = min(min_power_usable, get_component_cost(i)) if(total_accessable_power() < min_power_usable) - user << "\"You need more power to activate this daemon, friend.\"" + to_chat(user, "\"You need more power to activate this daemon, friend.\"") return var/choice = alert(user,"Activate Daemon...",,"Specific Component","Random Component","Cancel") switch(choice) @@ -105,10 +105,10 @@ if(!is_servant_of_ratvar(user) || !user.canUseTopic(src, !issilicon(user), NO_DEXTERY) || active || !clockwork_caches || servants * 0.2 < clockwork_daemons) return if(!component_id_to_produce) - user << "You decide not to select a component and activate the daemon." + to_chat(user, "You decide not to select a component and activate the daemon.") return if(total_accessable_power() < get_component_cost(component_id_to_produce)) - user << "There is too little power to produce this type of component!" + to_chat(user, "There is too little power to produce this type of component!") return toggle(0, user) if("Random Component") @@ -130,10 +130,10 @@ component_glow.color = component_color add_overlay(component_glow) production_time = world.time + production_cooldown //don't immediately produce when turned on after being off - SetLuminosity(2, 1) + set_light(2, 0.9, get_component_color_bright(component_id_to_produce)) else cut_overlays() - SetLuminosity(0) + set_light(0) /obj/structure/destructible/clockwork/powered/tinkerers_daemon/proc/get_component_cost(id) return max(MIN_CLOCKCULT_POWER*2, (MIN_CLOCKCULT_POWER*2) * (1 + round(clockwork_component_cache[id] * 0.2))) diff --git a/code/game/gamemodes/clock_cult/clock_structures/wall_gear.dm b/code/game/gamemodes/clock_cult/clock_structures/wall_gear.dm index a45b6e1d89..de80930b8a 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/wall_gear.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/wall_gear.dm @@ -30,30 +30,30 @@ return 1 else if(istype(I, /obj/item/weapon/screwdriver)) if(anchored) - user << "[src] needs to be unsecured to disassemble it!" + to_chat(user, "[src] needs to be unsecured to disassemble it!") else playsound(src, I.usesound, 100, 1) user.visible_message("[user] starts to disassemble [src].", "You start to disassemble [src]...") if(do_after(user, 30*I.toolspeed, target = src) && !anchored) - user << "You disassemble [src]." + to_chat(user, "You disassemble [src].") deconstruct(TRUE) return 1 else if(istype(I, /obj/item/stack/tile/brass)) var/obj/item/stack/tile/brass/W = I if(W.get_amount() < 1) - user << "You need one brass sheet to do this!" + to_chat(user, "You need one brass sheet to do this!") return var/turf/T = get_turf(src) if(iswallturf(T)) - user << "There is already a wall present!" + to_chat(user, "There is already a wall present!") return if(!isfloorturf(T)) - user << "A floor must be present to build a [anchored ? "false ":""]wall!" + to_chat(user, "A floor must be present to build a [anchored ? "false ":""]wall!") return if(locate(/obj/structure/falsewall) in T.contents) - user << "There is already a false wall present!" + to_chat(user, "There is already a false wall present!") return - user << "You start adding [W] to [src]..." + to_chat(user, "You start adding [W] to [src]...") if(do_after(user, 20, target = src)) var/brass_floor = FALSE if(istype(T, /turf/open/floor/clockwork)) //if the floor is already brass, costs less to make(conservation of masssssss) @@ -66,7 +66,7 @@ new /obj/structure/falsewall/brass(T) qdel(src) else - user << "You need more brass to make a [anchored ? "false ":""]wall!" + to_chat(user, "You need more brass to make a [anchored ? "false ":""]wall!") return 1 return ..() diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index b95ba9a9ba..cbfa2e42e7 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -36,9 +36,9 @@ antag_flag = ROLE_CULTIST restricted_jobs = list("Chaplain","AI", "Cyborg", "Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel") protected_jobs = list() - required_players = 10 - required_enemies = 2 - recommended_enemies = 2 + required_players = 24 + required_enemies = 4 + recommended_enemies = 4 enemy_minimum_age = 14 announce_span = "cult" @@ -49,7 +49,7 @@ var/finished = 0 var/eldergod = 1 //for the summon god objective - var/acolytes_needed = 5 //for the survive objective + var/acolytes_needed = 10 //for the survive objective var/acolytes_survived = 0 var/datum/mind/sacrifice_target = null//The target to be sacrificed @@ -95,7 +95,7 @@ explanation = "Free objective." if("eldergod") explanation = "Summon Nar-Sie by invoking the rune 'Summon Nar-Sie' with nine acolytes on it. You must do this after sacrificing your target." - cult_mind.current << "Objective #[obj_count]: [explanation]" + to_chat(cult_mind.current, "Objective #[obj_count]: [explanation]") cult_mind.memory += "Objective #[obj_count]: [explanation]
" /datum/game_mode/cult/post_setup() @@ -116,7 +116,7 @@ for(var/datum/mind/cult_mind in cultists_to_cult) equip_cultist(cult_mind.current) update_cult_icons_added(cult_mind) - cult_mind.current << "You are a member of the cult!" + to_chat(cult_mind.current, "You are a member of the cult!") add_cultist(cult_mind, 0) ..() @@ -125,14 +125,14 @@ return if (mob.mind) if (mob.mind.assigned_role == "Clown") - mob << "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself." + to_chat(mob, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.") mob.dna.remove_mutation(CLOWNMUT) if(tome) . += cult_give_item(/obj/item/weapon/tome, mob) else . += cult_give_item(/obj/item/weapon/paper/talisman/supply, mob) - mob << "These will help you start the cult on this station. Use them well, and remember - you are not the only one.
" + to_chat(mob, "These will help you start the cult on this station. Use them well, and remember - you are not the only one.
") /datum/game_mode/proc/cult_give_item(obj/item/item_path, mob/living/carbon/human/mob) var/list/slots = list( @@ -145,10 +145,10 @@ var/item_name = initial(item_path.name) var/where = mob.equip_in_one_of_slots(T, slots) if(!where) - mob << "Unfortunately, you weren't able to get a [item_name]. This is very bad and you should adminhelp immediately (press F1)." + to_chat(mob, "Unfortunately, you weren't able to get a [item_name]. This is very bad and you should adminhelp immediately (press F1).") return 0 else - mob << "You have a [item_name] in your [where]." + to_chat(mob, "You have a [item_name] in your [where].") if(where == "backpack") var/obj/item/weapon/storage/B = mob.back B.orient2hud(mob) @@ -220,11 +220,11 @@ if(!check_cult_victory()) feedback_set_details("round_end_result","win - cult win") feedback_set("round_end_result",acolytes_survived) - world << "The cult has succeeded! Nar-sie has snuffed out another torch in the void!" + to_chat(world, "The cult has succeeded! Nar-sie has snuffed out another torch in the void!") else feedback_set_details("round_end_result","loss - staff stopped the cult") feedback_set("round_end_result",acolytes_survived) - world << "The staff managed to stop the cult! Dark words and heresy are no match for Nanotrasen's finest!" + to_chat(world, "The staff managed to stop the cult! Dark words and heresy are no match for Nanotrasen's finest!") var/text = "" @@ -264,7 +264,7 @@ ticker.news_report = CULT_FAILURE text += "
Objective #[obj_count]: [explanation]" - world << text + to_chat(world, text) ..() return 1 @@ -277,4 +277,4 @@ text += "
" - world << text + to_chat(world, text) diff --git a/code/game/gamemodes/cult/cult_comms.dm b/code/game/gamemodes/cult/cult_comms.dm index 2f5cd44f5b..3a70735e1e 100644 --- a/code/game/gamemodes/cult/cult_comms.dm +++ b/code/game/gamemodes/cult/cult_comms.dm @@ -24,22 +24,17 @@ return if(!ishuman(user)) user.say("O bidai nabora se[pick("'","`")]sma!") - else - user.whisper("O bidai nabora se[pick("'","`")]sma!") - sleep(10) - if(!user) - return - if(!ishuman(user)) user.say(html_decode(message)) else + user.whisper("O bidai nabora se[pick("'","`")]sma!") user.whisper(html_decode(message)) var/my_message = "[(ishuman(user) ? "Acolyte" : "Construct")] [findtextEx(user.name, user.real_name) ? user.name : "[user.real_name] (as [user.name])"]: [message]" for(var/mob/M in mob_list) if(iscultist(M)) - M << my_message + to_chat(M, my_message) else if(M in dead_mob_list) var/link = FOLLOW_LINK(M, user) - M << "[link] [my_message]" + to_chat(M, "[link] [my_message]") log_say("[user.real_name]/[user.key] : [message]") diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm index 04a0d618c1..6914ad760c 100644 --- a/code/game/gamemodes/cult/cult_items.dm +++ b/code/game/gamemodes/cult/cult_items.dm @@ -30,12 +30,12 @@ ..() if(!iscultist(user)) if(!is_servant_of_ratvar(user)) - user << "\"I wouldn't advise that.\"" - user << "An overwhelming sense of nausea overpowers you!" + to_chat(user, "\"I wouldn't advise that.\"") + to_chat(user, "An overwhelming sense of nausea overpowers you!") user.Dizzy(120) else - user << "\"One of Ratvar's toys is trying to play with things [user.p_they()] shouldn't. Cute.\"" - user << "A horrible force yanks at your arm!" + to_chat(user, "\"One of Ratvar's toys is trying to play with things [user.p_they()] shouldn't. Cute.\"") + to_chat(user, "A horrible force yanks at your arm!") user.emote("scream") user.apply_damage(30, BRUTE, pick("l_arm", "r_arm")) user.dropItemToGround(src) @@ -177,14 +177,14 @@ ..() if(!iscultist(user)) if(!is_servant_of_ratvar(user)) - user << "\"I wouldn't advise that.\"" - user << "An overwhelming sense of nausea overpowers you!" + to_chat(user, "\"I wouldn't advise that.\"") + to_chat(user, "An overwhelming sense of nausea overpowers you!") user.dropItemToGround(src, TRUE) user.Dizzy(30) user.Weaken(5) else - user << "\"Trying to use things you don't own is bad, you know.\"" - user << "The armor squeezes at your body!" + to_chat(user, "\"Trying to use things you don't own is bad, you know.\"") + to_chat(user, "The armor squeezes at your body!") user.emote("scream") user.adjustBruteLoss(25) user.dropItemToGround(src, TRUE) @@ -229,14 +229,14 @@ ..() if(!iscultist(user)) if(!is_servant_of_ratvar(user)) - user << "\"I wouldn't advise that.\"" - user << "An overwhelming sense of nausea overpowers you!" + to_chat(user, "\"I wouldn't advise that.\"") + to_chat(user, "An overwhelming sense of nausea overpowers you!") user.dropItemToGround(src, TRUE) user.Dizzy(30) user.Weaken(5) else - user << "\"Trying to use things you don't own is bad, you know.\"" - user << "The robes squeeze at your body!" + to_chat(user, "\"Trying to use things you don't own is bad, you know.\"") + to_chat(user, "The robes squeeze at your body!") user.emote("scream") user.adjustBruteLoss(25) user.dropItemToGround(src, TRUE) @@ -252,7 +252,7 @@ /obj/item/clothing/glasses/night/cultblind/equipped(mob/user, slot) ..() if(!iscultist(user)) - user << "\"You want to be blind, do you?\"" + to_chat(user, "\"You want to be blind, do you?\"") user.dropItemToGround(src, TRUE) user.Dizzy(30) user.Weaken(5) @@ -276,16 +276,16 @@ if(!iscultist(user)) user.dropItemToGround(src, TRUE) user.Weaken(5) - user << "A powerful force shoves you away from [src]!" + to_chat(user, "A powerful force shoves you away from [src]!") return if(curselimit > 1) - user << "We have exhausted our ability to curse the shuttle." + to_chat(user, "We have exhausted our ability to curse the shuttle.") return if(SSshuttle.emergency.mode == SHUTTLE_CALL) var/cursetime = 1800 var/timer = SSshuttle.emergency.timeLeft(1) + cursetime SSshuttle.emergency.setTimer(timer) - user << "You shatter the orb! A dark essence spirals into the air, then disappears." + to_chat(user, "You shatter the orb! A dark essence spirals into the air, then disappears.") playsound(user.loc, 'sound/effects/Glassbr1.ogg', 50, 1) qdel(src) sleep(20) @@ -311,9 +311,9 @@ /obj/item/device/cult_shift/examine(mob/user) ..() if(uses) - user << "It has [uses] uses remaining." + to_chat(user, "It has [uses] uses remaining.") else - user << "It seems drained." + to_chat(user, "It seems drained.") /obj/item/device/cult_shift/proc/handle_teleport_grab(turf/T, mob/user) var/mob/living/carbon/C = user @@ -324,12 +324,12 @@ /obj/item/device/cult_shift/attack_self(mob/user) if(!uses || !iscarbon(user)) - user << "\The [src] is dull and unmoving in your hands." + to_chat(user, "\The [src] is dull and unmoving in your hands.") return if(!iscultist(user)) user.dropItemToGround(src, TRUE) step(src, pick(alldirs)) - user << "\The [src] flickers out of your hands, your connection to this dimension is too strong!" + to_chat(user, "\The [src] flickers out of your hands, your connection to this dimension is too strong!") return var/mob/living/carbon/C = user @@ -353,7 +353,7 @@ playsound(destination, "sparks", 50, 1) else - C << "The veil cannot be torn here!" + to_chat(C, "The veil cannot be torn here!") /obj/item/device/flashlight/flare/culttorch name = "void torch" @@ -382,26 +382,26 @@ if(!Adjacent(user) || !src || QDELETED(src) || user.incapacitated()) return if(!cultist_to_receive) - user << "You require a destination!" + to_chat(user, "You require a destination!") log_game("Void torch failed - no target") return if(cultist_to_receive.stat == DEAD) - user << "[cultist_to_receive] has died!" + to_chat(user, "[cultist_to_receive] has died!") log_game("Void torch failed - target died") return if(!iscultist(cultist_to_receive)) - user << "[cultist_to_receive] is not a follower of the Geometer!" + to_chat(user, "[cultist_to_receive] is not a follower of the Geometer!") log_game("Void torch failed - target was deconverted") return - user << "You ignite [A] with \the [src], turning it to ash, but through the torch's flames you see that [A] has reached [cultist_to_receive]!" + to_chat(user, "You ignite [A] with \the [src], turning it to ash, but through the torch's flames you see that [A] has reached [cultist_to_receive]!") cultist_to_receive.put_in_hands(A) charges-- - user << "\The [src] now has [charges] charge\s." + to_chat(user, "\The [src] now has [charges] charge\s.") if(charges == 0) qdel(src) else ..() - user << "\The [src] can only transport items!" + to_chat(user, "\The [src] can only transport items!") return diff --git a/code/game/gamemodes/cult/cult_structures.dm b/code/game/gamemodes/cult/cult_structures.dm index 8d4a484d99..d88d0e9e05 100644 --- a/code/game/gamemodes/cult/cult_structures.dm +++ b/code/game/gamemodes/cult/cult_structures.dm @@ -8,9 +8,9 @@ /obj/structure/destructible/cult/examine(mob/user) ..() - user << "\The [src] is [anchored ? "":"not "]secured to the floor." + to_chat(user, "\The [src] is [anchored ? "":"not "]secured to the floor.") if((iscultist(user) || isobserver(user)) && cooldowntime > world.time) - user << "The magic in [src] is too weak, [p_they()] will be ready to use again in [getETA()]." + to_chat(user, "The magic in [src] is too weak, [p_they()] will be ready to use again in [getETA()].") /obj/structure/destructible/cult/examine_status(mob/user) if(iscultist(user) || isobserver(user)) @@ -28,14 +28,14 @@ M.visible_message("[M] repairs \the [src].", \ "You repair [src], leaving [p_they()] at [round(obj_integrity * 100 / max_integrity)]% stability.") else - M << "You cannot repair [src], as [p_they()] [p_are()] undamaged!" + to_chat(M, "You cannot repair [src], as [p_they()] [p_are()] undamaged!") else ..() /obj/structure/destructible/cult/attackby(obj/I, mob/user, params) if(istype(I, /obj/item/weapon/tome) && iscultist(user)) anchored = !anchored - user << "You [anchored ? "":"un"]secure \the [src] [anchored ? "to":"from"] the floor." + to_chat(user, "You [anchored ? "":"un"]secure \the [src] [anchored ? "to":"from"] the floor.") if(!anchored) icon_state = "[initial(icon_state)]_off" else @@ -66,13 +66,13 @@ /obj/structure/destructible/cult/talisman/attack_hand(mob/living/user) if(!iscultist(user)) - user << "You're pretty sure you know exactly what this is used for and you can't seem to touch it." + to_chat(user, "You're pretty sure you know exactly what this is used for and you can't seem to touch it.") return if(!anchored) - user << "You need to anchor [src] to the floor with a tome first." + to_chat(user, "You need to anchor [src] to the floor with a tome first.") return if(cooldowntime > world.time) - user << "The magic in [src] is weak, it will be ready to use again in [getETA()]." + to_chat(user, "The magic in [src] is weak, it will be ready to use again in [getETA()].") return var/choice = alert(user,"You study the schematics etched into the forge...",,"Eldritch Whetstone","Zealot's Blindfold","Flask of Unholy Water") var/pickedtype @@ -86,25 +86,26 @@ if(src && !QDELETED(src) && anchored && pickedtype && Adjacent(user) && !user.incapacitated() && iscultist(user) && cooldowntime <= world.time) cooldowntime = world.time + 2400 var/obj/item/N = new pickedtype(get_turf(src)) - user << "You kneel before the altar and your faith is rewarded with an [N]!" + to_chat(user, "You kneel before the altar and your faith is rewarded with an [N]!") /obj/structure/destructible/cult/forge name = "daemon forge" desc = "A forge used in crafting the unholy weapons used by the armies of Nar-Sie." icon_state = "forge" - luminosity = 3 + light_range = 3 + light_color = LIGHT_COLOR_LAVA break_message = "The force breaks apart into shards with a howling scream!" /obj/structure/destructible/cult/forge/attack_hand(mob/living/user) if(!iscultist(user)) - user << "The heat radiating from [src] pushes you back." + to_chat(user, "The heat radiating from [src] pushes you back.") return if(!anchored) - user << "You need to anchor [src] to the floor with a tome first." + to_chat(user, "You need to anchor [src] to the floor with a tome first.") return if(cooldowntime > world.time) - user << "The magic in [src] is weak, it will be ready to use again in [getETA()]." + to_chat(user, "The magic in [src] is weak, it will be ready to use again in [getETA()].") return var/choice = alert(user,"You study the schematics etched into the forge...",,"Shielded Robe","Flagellant's Robe","Nar-Sien Hardsuit") var/pickedtype @@ -118,7 +119,7 @@ if(src && !QDELETED(src) && anchored && pickedtype && Adjacent(user) && !user.incapacitated() && iscultist(user) && cooldowntime <= world.time) cooldowntime = world.time + 2400 var/obj/item/N = new pickedtype(get_turf(src)) - user << "You work the forge as dark knowledge guides your hands, creating [N]!" + to_chat(user, "You work the forge as dark knowledge guides your hands, creating [N]!") var/list/blacklisted_pylon_turfs = typecacheof(list( @@ -132,7 +133,8 @@ var/list/blacklisted_pylon_turfs = typecacheof(list( name = "pylon" desc = "A floating crystal that slowly heals those faithful to Nar'Sie." icon_state = "pylon" - luminosity = 5 + light_range = 5 + light_color = LIGHT_COLOR_RED break_sound = 'sound/effects/Glassbr2.ogg' break_message = "The blood-red crystal falls to the floor and shatters!" var/heal_delay = 25 @@ -198,18 +200,19 @@ var/list/blacklisted_pylon_turfs = typecacheof(list( name = "archives" desc = "A desk covered in arcane manuscripts and tomes in unknown languages. Looking at the text makes your skin crawl." icon_state = "tomealtar" - luminosity = 1 + light_range = 1.4 + light_color = LIGHT_COLOR_FIRE break_message = "The books and tomes of the archives burn into ash as the desk shatters!" /obj/structure/destructible/cult/tome/attack_hand(mob/living/user) if(!iscultist(user)) - user << "All of these books seem to be gibberish." + to_chat(user, "All of these books seem to be gibberish.") return if(!anchored) - user << "You need to anchor [src] to the floor with a tome first." + to_chat(user, "You need to anchor [src] to the floor with a tome first.") return if(cooldowntime > world.time) - user << "The magic in [src] is weak, it will be ready to use again in [getETA()]." + to_chat(user, "The magic in [src] is weak, it will be ready to use again in [getETA()].") return var/choice = alert(user,"You flip through the black pages of the archives...",,"Supply Talisman","Shuttle Curse","Veil Walker Set") var/list/pickedtype = list() @@ -225,7 +228,7 @@ var/list/blacklisted_pylon_turfs = typecacheof(list( cooldowntime = world.time + 2400 for(var/N in pickedtype) var/obj/item/D = new N(get_turf(src)) - user << "You summon [D] from the archives!" + to_chat(user, "You summon [D] from the archives!") /obj/effect/gateway name = "gateway" diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm index 69a252a48b..e933f951ec 100644 --- a/code/game/gamemodes/cult/ritual.dm +++ b/code/game/gamemodes/cult/ritual.dm @@ -24,10 +24,10 @@ This file contains the arcane tome files. /obj/item/weapon/tome/examine(mob/user) ..() if(iscultist(user) || isobserver(user)) - user << "The scriptures of the Geometer. Allows the scribing of runes and access to the knowledge archives of the cult of Nar-Sie." - user << "Striking a cult structure will unanchor or reanchor it." - user << "Striking another cultist with it will purge holy water from them." - user << "Striking a noncultist, however, will sear their flesh." + to_chat(user, "The scriptures of the Geometer. Allows the scribing of runes and access to the knowledge archives of the cult of Nar-Sie.") + to_chat(user, "Striking a cult structure will unanchor or reanchor it.") + to_chat(user, "Striking another cultist with it will purge holy water from them.") + to_chat(user, "Striking a noncultist, however, will sear their flesh.") /obj/item/weapon/tome/attack(mob/living/M, mob/living/user) if(!istype(M)) @@ -36,7 +36,7 @@ This file contains the arcane tome files. return ..() if(iscultist(M)) if(M.reagents && M.reagents.has_reagent("holywater")) //allows cultists to be rescued from the clutches of ordained religion - user << "You remove the taint from [M]." // fucking ow + to_chat(user, "You remove the taint from [M]." ) var/holy2unholy = M.reagents.get_reagent_amount("holywater") M.reagents.del_reagent("holywater") M.reagents.add_reagent("unholywater",holy2unholy) @@ -52,7 +52,7 @@ This file contains the arcane tome files. /obj/item/weapon/tome/attack_self(mob/user) if(!iscultist(user)) - user << "[src] seems full of unintelligible shapes, scribbles, and notes. Is this some sort of joke?" + to_chat(user, "[src] seems full of unintelligible shapes, scribbles, and notes. Is this some sort of joke?") return open_tome(user) @@ -199,20 +199,20 @@ This file contains the arcane tome files. if(ticker.mode.name == "cult") var/datum/game_mode/cult/cult_mode = ticker.mode if(!("eldergod" in cult_mode.cult_objectives)) - user << "Nar-Sie does not wish to be summoned!" + to_chat(user, "Nar-Sie does not wish to be summoned!") return if(cult_mode.sacrifice_target && !(cult_mode.sacrifice_target in sacrificed)) - user << "The sacrifice is not complete. The portal would lack the power to open if you tried!" + to_chat(user, "The sacrifice is not complete. The portal would lack the power to open if you tried!") return if(!cult_mode.eldergod) - user << "\"I am already here. There is no need to try to summon me now.\"" + to_chat(user, "\"I am already here. There is no need to try to summon me now.\"") return if((loc.z && loc.z != ZLEVEL_STATION) || !A.blob_allowed) - user << "The Geometer is not interested in lesser locations; the station is the prize!" + to_chat(user, "The Geometer is not interested in lesser locations; the station is the prize!") return var/confirm_final = alert(user, "This is the FINAL step to summon Nar-Sie, it is a long, painful ritual and the crew will be alerted to your presence", "Are you prepared for the final battle?", "My life for Nar-Sie!", "No") if(confirm_final == "No") - user << "You decide to prepare further before scribing the rune." + to_chat(user, "You decide to prepare further before scribing the rune.") return Turf = get_turf(user) A = get_area(src) @@ -223,7 +223,7 @@ This file contains the arcane tome files. var/obj/structure/emergency_shield/sanguine/N = new(B) shields += N else - user << "Nar-Sie does not wish to be summoned!" + to_chat(user, "Nar-Sie does not wish to be summoned!") return user.visible_message("[user] [user.blood_volume ? "cuts open their arm and begins writing in their own blood":"begins sketching out a strange design"]!", \ "You [user.blood_volume ? "slice open your arm and ":""]begin drawing a sigil of the Geometer.") @@ -244,26 +244,26 @@ This file contains the arcane tome files. if(S && !QDELETED(S)) qdel(S) var/obj/effect/rune/R = new rune_to_scribe(Turf, chosen_keyword) - user << "The [lowertext(R.cultist_name)] rune [R.cultist_desc]" + to_chat(user, "The [lowertext(R.cultist_name)] rune [R.cultist_desc]") feedback_add_details("cult_runes_scribed", R.cultist_name) /obj/item/weapon/tome/proc/check_rune_turf(turf/T, mob/user) var/area/A = get_area(T) if(isspaceturf(T)) - user << "You cannot scribe runes in space!" + to_chat(user, "You cannot scribe runes in space!") return FALSE if(locate(/obj/effect/rune) in T) - user << "There is already a rune here." + to_chat(user, "There is already a rune here.") return FALSE if(T.z != ZLEVEL_STATION && T.z != ZLEVEL_MINING) - user << "The veil is not weak enough here." + to_chat(user, "The veil is not weak enough here.") return FALSE if(istype(A, /area/shuttle)) - user << "Interference from hyperspace engines disrupts the Geometer's power on shuttles." + to_chat(user, "Interference from hyperspace engines disrupts the Geometer's power on shuttles.") return FALSE return TRUE diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index 4c064873b8..c612f10a5c 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -48,27 +48,27 @@ To draw a rune, use an arcane tome. /obj/effect/rune/examine(mob/user) ..() if(iscultist(user) || user.stat == DEAD) //If they're a cultist or a ghost, tell them the effects - user << "Name: [cultist_name]" - user << "Effects: [capitalize(cultist_desc)]" - user << "Required Acolytes: [req_cultists_text ? "[req_cultists_text]":"[req_cultists]"]" + to_chat(user, "Name: [cultist_name]") + to_chat(user, "Effects: [capitalize(cultist_desc)]") + to_chat(user, "Required Acolytes: [req_cultists_text ? "[req_cultists_text]":"[req_cultists]"]") if(req_keyword && keyword) - user << "Keyword: [keyword]" + to_chat(user, "Keyword: [keyword]") /obj/effect/rune/attackby(obj/I, mob/user, params) if(istype(I, /obj/item/weapon/tome) && iscultist(user)) - user << "You carefully erase the [lowertext(cultist_name)] rune." + to_chat(user, "You carefully erase the [lowertext(cultist_name)] rune.") qdel(src) return else if(istype(I, /obj/item/weapon/nullrod)) user.say("BEGONE FOUL MAGIKS!!") - user << "You disrupt the magic of [src] with [I]." + to_chat(user, "You disrupt the magic of [src] with [I].") qdel(src) return return /obj/effect/rune/attack_hand(mob/living/user) if(!iscultist(user)) - user << "You aren't able to understand the words of [src]." + to_chat(user, "You aren't able to understand the words of [src].") return var/list/invokers = can_invoke(user) if(invokers.len >= req_cultists) @@ -81,7 +81,7 @@ To draw a rune, use an arcane tome. if(construct_invoke || !iscultist(M)) //if you're not a cult construct we want the normal fail message attack_hand(M) else - M << "You are unable to invoke the rune!" + to_chat(M, "You are unable to invoke the rune!") /obj/effect/rune/proc/talismanhide() //for talisman of revealing/hiding visible_message("[src] fades away.") @@ -173,7 +173,7 @@ structure_check() searches for nearby cultist structures required for the invoca ..() for(var/M in invokers) var/mob/living/L = M - L << "You feel your life force draining. The Geometer is displeased." + to_chat(L, "You feel your life force draining. The Geometer is displeased.") L.apply_damage(30, BRUTE) qdel(src) @@ -204,12 +204,12 @@ structure_check() searches for nearby cultist structures required for the invoca var/obj/item/weapon/paper/talisman/talisman_type var/list/possible_talismans = list() if(!papers_on_rune.len) - user << "There must be a blank paper on top of [src]!" + to_chat(user, "There must be a blank paper on top of [src]!") fail_invoke() log_game("Talisman Creation rune failed - no blank papers on rune") return if(rune_in_use) - user << "[src] can only support one ritual at a time!" + to_chat(user, "[src] can only support one ritual at a time!") fail_invoke() log_game("Talisman Creation rune failed - already in use") return @@ -225,7 +225,7 @@ structure_check() searches for nearby cultist structures required for the invoca return papers_on_rune = checkpapers() if(!papers_on_rune.len) - user << "There must be a blank paper on top of [src]!" + to_chat(user, "There must be a blank paper on top of [src]!") fail_invoke() log_game("Talisman Creation rune failed - no blank papers on rune") return @@ -233,7 +233,7 @@ structure_check() searches for nearby cultist structures required for the invoca ..() visible_message("Dark power begins to channel into the paper!") rune_in_use = 1 - if(!do_after(user, 100, target = paper_to_imbue)) + if(!do_after(user, initial(talisman_type.creation_time), target = paper_to_imbue)) rune_in_use = 0 return new talisman_type(get_turf(src)) @@ -278,13 +278,13 @@ var/list/teleport_runes = list() potential_runes[avoid_assoc_duplicate_keys(T.listkey, teleportnames)] = T if(!potential_runes.len) - user << "There are no valid runes to teleport to!" + to_chat(user, "There are no valid runes to teleport to!") log_game("Teleport rune failed - no other teleport runes") fail_invoke() return if(user.z > ZLEVEL_SPACEMAX) - user << "You are not in the right dimension!" + to_chat(user, "You are not in the right dimension!") log_game("Teleport rune failed - user in away mission") fail_invoke() return @@ -298,7 +298,7 @@ var/list/teleport_runes = list() var/turf/T = get_turf(src) var/turf/target = get_turf(actual_selected_rune) if(is_blocked_turf(target, TRUE)) - user << "The target rune is blocked. Attempting to teleport to it would be massively unwise." + to_chat(user, "The target rune is blocked. Attempting to teleport to it would be massively unwise.") fail_invoke() return var/movedsomething = 0 @@ -314,7 +314,7 @@ var/list/teleport_runes = list() if(movedsomething) ..() visible_message("There is a sharp crack of inrushing air, and everything above the rune disappears!") - user << "You[moveuserlater ? "r vision blurs, and you suddenly appear somewhere else":" send everything above the rune away"]." + to_chat(user, "You[moveuserlater ? "r vision blurs, and you suddenly appear somewhere else":" send everything above the rune away"].") if(moveuserlater) user.forceMove(target) else @@ -376,12 +376,12 @@ var/list/teleport_runes = list() /obj/effect/rune/convert/proc/do_convert(mob/living/convertee, list/invokers) if(invokers.len < 2) for(var/M in invokers) - M << "You need more invokers to convert [convertee]!" + to_chat(M, "You need more invokers to convert [convertee]!") log_game("Offer rune failed - tried conversion with one invoker") return 0 if(convertee.null_rod_check()) for(var/M in invokers) - M << "Something is shielding [convertee]'s mind!" + to_chat(M, "Something is shielding [convertee]'s mind!") log_game("Offer rune failed - convertee had null rod") return 0 var/brutedamage = convertee.getBruteLoss() @@ -395,16 +395,16 @@ var/list/teleport_runes = list() ticker.mode.add_cultist(convertee.mind, 1) new /obj/item/weapon/tome(get_turf(src)) convertee.mind.special_role = "Cultist" - convertee << "Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible, truth. The veil of reality has been ripped away \ - and something evil takes root." - convertee << "Assist your new compatriots in their dark dealings. Your goal is theirs, and theirs is yours. You serve the Geometer above all else. Bring it back.\ - " + to_chat(convertee, "Your blood pulses. Your head throbs. The world goes red. All at once you are aware of a horrible, horrible, truth. The veil of reality has been ripped away \ + and something evil takes root.") + to_chat(convertee, "Assist your new compatriots in their dark dealings. Your goal is theirs, and theirs is yours. You serve the Geometer above all else. Bring it back.\ + ") return 1 /obj/effect/rune/convert/proc/do_sacrifice(mob/living/sacrificial, list/invokers) if((((ishuman(sacrificial) || iscyborg(sacrificial)) && sacrificial.stat != DEAD) || is_sacrifice_target(sacrificial.mind)) && invokers.len < 3) for(var/M in invokers) - M << "[sacrificial] is too greatly linked to the world! You need three acolytes!" + to_chat(M, "[sacrificial] is too greatly linked to the world! You need three acolytes!") log_game("Offer rune failed - not enough acolytes and target is living or sac target") return FALSE var/sacrifice_fulfilled = FALSE @@ -419,12 +419,12 @@ var/list/teleport_runes = list() new /obj/effect/overlay/temp/cult/sac(get_turf(src)) for(var/M in invokers) if(sacrifice_fulfilled) - M << "\"Yes! This is the one I desire! You have done well.\"" + to_chat(M, "\"Yes! This is the one I desire! You have done well.\"") else if(ishuman(sacrificial) || iscyborg(sacrificial)) - M << "\"I accept this sacrifice.\"" + to_chat(M, "\"I accept this sacrifice.\"") else - M << "\"I accept this meager sacrifice.\"" + to_chat(M, "\"I accept this meager sacrifice.\"") var/obj/item/device/soulstone/stone = new /obj/item/device/soulstone(get_turf(src)) if(sacrificial.mind) @@ -481,14 +481,14 @@ var/list/teleport_runes = list() if(!cult_mode && !ignore_gamemode) for(var/M in invokers) - M << "Nar-Sie does not respond!" + to_chat(M, "Nar-Sie does not respond!") fail_invoke() log_game("Summon Nar-Sie rune failed - gametype is not cult") return if(locate(/obj/singularity/narsie) in poi_list) for(var/M in invokers) - M << "Nar-Sie is already on this plane!" + to_chat(M, "Nar-Sie is already on this plane!") log_game("Summon Nar-Sie rune failed - already summoned") return //BEGIN THE SUMMONING @@ -533,7 +533,7 @@ var/list/teleport_runes = list() var/revive_number = 0 if(sacrificed.len) revive_number = sacrificed.len - revives_used - user << "Revives Remaining: [revive_number]" + to_chat(user, "Revives Remaining: [revive_number]") /obj/effect/rune/raise_dead/invoke(var/list/invokers) var/turf/T = get_turf(src) @@ -546,12 +546,12 @@ var/list/teleport_runes = list() if(iscultist(M) && M.stat == DEAD) potential_revive_mobs |= M if(!potential_revive_mobs.len) - user << "There are no dead cultists on the rune!" + to_chat(user, "There are no dead cultists on the rune!") log_game("Raise Dead rune failed - no corpses to revive") fail_invoke() return if(!sacrificed.len || sacrificed.len <= revives_used) - user << "You have sacrificed too few people to revive a cultist!" + to_chat(user, "You have sacrificed too few people to revive a cultist!") fail_invoke() return if(potential_revive_mobs.len > 1) @@ -569,7 +569,7 @@ var/list/teleport_runes = list() revives_used++ mob_to_revive.revive(1, 1) //This does remove disabilities and such, but the rune might actually see some use because of it! mob_to_revive.grab_ghost() - mob_to_revive << "\"PASNAR SAVRAE YAM'TOTH. Arise.\"" + to_chat(mob_to_revive, "\"PASNAR SAVRAE YAM'TOTH. Arise.\"") mob_to_revive.visible_message("[mob_to_revive] draws in a huge breath, red light shining from [mob_to_revive.p_their()] eyes.", \ "You awaken suddenly from the void. You're alive!") rune_in_use = 0 @@ -584,18 +584,18 @@ var/list/teleport_runes = list() fail_invoke() return 0 if(!(target_mob in T.contents)) - user << "The cultist to revive has been moved!" + to_chat(user, "The cultist to revive has been moved!") fail_invoke() log_game("Raise Dead rune failed - revival target moved") return 0 var/mob/dead/observer/ghost = target_mob.get_ghost(TRUE) if(!ghost && (!target_mob.mind || !target_mob.mind.active)) - user << "The corpse to revive has no spirit!" + to_chat(user, "The corpse to revive has no spirit!") fail_invoke() log_game("Raise Dead rune failed - revival target has no ghost") return 0 if(!sacrificed.len || sacrificed.len <= revives_used) - user << "You have sacrificed too few people to revive a cultist!" + to_chat(user, "You have sacrificed too few people to revive a cultist!") fail_invoke() log_game("Raise Dead rune failed - too few sacrificed") return 0 @@ -625,16 +625,16 @@ var/list/teleport_runes = list() if(1 to 2) playsound(E, 'sound/items/Welder2.ogg', 25, 1) for(var/M in invokers) - M << "You feel a minute vibration pass through you..." + to_chat(M, "You feel a minute vibration pass through you...") if(3 to 6) playsound(E, 'sound/magic/Disable_Tech.ogg', 50, 1) for(var/M in invokers) - M << "Your hair stands on end as a shockwave eminates from the rune!" + to_chat(M, "Your hair stands on end as a shockwave eminates from the rune!") if(7 to INFINITY) playsound(E, 'sound/magic/Disable_Tech.ogg', 100, 1) for(var/M in invokers) var/mob/living/L = M - L << "You chant in unison and a colossal burst of energy knocks you backward!" + to_chat(L, "You chant in unison and a colossal burst of energy knocks you backward!") L.Weaken(2) qdel(src) //delete before pulsing because it's a delay reee empulse(E, 9*invokers.len, 12*invokers.len) // Scales now, from a single room to most of the station depending on # of chanters @@ -653,16 +653,16 @@ var/list/teleport_runes = list() /obj/effect/rune/astral/examine(mob/user) ..() if(affecting) - user << "A translucent field encases [user] above the rune!" + to_chat(user, "A translucent field encases [user] above the rune!") /obj/effect/rune/astral/can_invoke(mob/living/user) if(rune_in_use) - user << "[src] cannot support more than one body!" + to_chat(user, "[src] cannot support more than one body!") log_game("Astral Communion rune failed - more than one user") return list() var/turf/T = get_turf(src) if(!(user in T)) - user << "You must be standing on top of [src]!" + to_chat(user, "You must be standing on top of [src]!") log_game("Astral Communion rune failed - user not standing on rune") return list() return ..() @@ -699,13 +699,13 @@ var/list/teleport_runes = list() if(user.stat == UNCONSCIOUS) if(prob(1)) var/mob/dead/observer/G = user.get_ghost() - G << "You feel the link between you and your body weakening... you must hurry!" + to_chat(G, "You feel the link between you and your body weakening... you must hurry!") if(user.stat == DEAD) user.color = initial(user.color) rune_in_use = 0 affecting = null var/mob/dead/observer/G = user.get_ghost() - G << "You suddenly feel your physical form pass on. [src]'s exertion has killed you!" + to_chat(G, "You suddenly feel your physical form pass on. [src]'s exertion has killed you!") return sleep(1) rune_in_use = 0 @@ -730,7 +730,7 @@ var/list/wall_runes = list() /obj/effect/rune/wall/examine(mob/user) ..() if(density) - user << "There is a barely perceptible shimmering of the air above [src]." + to_chat(user, "There is a barely perceptible shimmering of the air above [src].") /obj/effect/rune/wall/Destroy() density = 0 @@ -813,22 +813,22 @@ var/list/wall_runes = list() if(!Adjacent(user) || !src || QDELETED(src) || user.incapacitated()) return if(!cultist_to_summon) - user << "You require a summoning target!" + to_chat(user, "You require a summoning target!") fail_invoke() log_game("Summon Cultist rune failed - no target") return if(cultist_to_summon.stat == DEAD) - user << "[cultist_to_summon] has died!" + to_chat(user, "[cultist_to_summon] has died!") fail_invoke() log_game("Summon Cultist rune failed - target died") return if(!iscultist(cultist_to_summon)) - user << "[cultist_to_summon] is not a follower of the Geometer!" + to_chat(user, "[cultist_to_summon] is not a follower of the Geometer!") fail_invoke() log_game("Summon Cultist rune failed - target was deconverted") return if(cultist_to_summon.z > ZLEVEL_SPACEMAX) - user << "[cultist_to_summon] is not in our dimension!" + to_chat(user, "[cultist_to_summon] is not in our dimension!") fail_invoke() log_game("Summon Cultist rune failed - target in away mission") return @@ -847,6 +847,7 @@ var/list/wall_runes = list() invocation = "Dedo ol'btoh!" icon_state = "4" color = "#C80000" + light_color = LIGHT_COLOR_LAVA req_cultists = 3 construct_invoke = 0 var/tick_damage = 25 @@ -862,21 +863,21 @@ var/list/wall_runes = list() rune_in_use = TRUE var/turf/T = get_turf(src) visible_message("[src] turns a bright, glowing orange!") - SetLuminosity(6) + set_light(6) color = "#FC9B54" for(var/M in invokers) var/mob/living/L = M L.apply_damage(10, BRUTE, pick("l_arm", "r_arm")) - L << "[src] saps your strength!" + to_chat(L, "[src] saps your strength!") for(var/mob/living/L in viewers(T)) if(!iscultist(L) && L.blood_volume) var/obj/item/weapon/nullrod/N = L.null_rod_check() if(N) - L << "\The [N] suddenly burns hotly before returning to normal!" + to_chat(L, "\The [N] suddenly burns hotly before returning to normal!") continue - L << "Your blood boils in your veins!" + to_chat(L, "Your blood boils in your veins!") if(is_servant_of_ratvar(L)) - L << "You feel an unholy darkness dimming the Justiciar's light!" + to_chat(L, "You feel an unholy darkness dimming the Justiciar's light!") animate(src, color = "#FCB56D", time = 4) sleep(4) if(!src) @@ -923,7 +924,7 @@ var/list/wall_runes = list() if(M.stat != DEAD) potential_targets += M if(!potential_targets.len) - user << "There must be at least one valid target on the rune!" + to_chat(user, "There must be at least one valid target on the rune!") log_game("Leeching rune failed - no valid targets") return list() return ..() @@ -938,7 +939,7 @@ var/list/wall_runes = list() var/drained_amount = rand(10,20) M.apply_damage(drained_amount, BRUTE, "chest") user.adjustBruteLoss(-drained_amount) - M << "You feel extremely weak." + to_chat(M, "You feel extremely weak.") user.Beam(T,icon_state="drainbeam",time=5) user.visible_message("Blood flows from the rune into [user]!", \ "Blood flows into you, healing your wounds and revitalizing your spirit.") @@ -959,7 +960,7 @@ var/list/wall_runes = list() /obj/effect/rune/manifest/can_invoke(mob/living/user) if(!(user in get_turf(src))) - user << "You must be standing on [src]!" + to_chat(user, "You must be standing on [src]!") fail_invoke() log_game("Manifest rune failed - user not standing on rune") return list() @@ -968,7 +969,7 @@ var/list/wall_runes = list() if(O.client && !jobban_isbanned(O, ROLE_CULTIST)) ghosts_on_rune |= O if(!ghosts_on_rune.len) - user << "There are no spirits near [src]!" + to_chat(user, "There are no spirits near [src]!") fail_invoke() log_game("Manifest rune failed - no nearby ghosts") return list() @@ -986,13 +987,13 @@ var/list/wall_runes = list() new_human.alpha = 150 //Makes them translucent ..() visible_message("A cloud of red mist forms above [src], and from within steps... a man.") - user << "Your blood begins flowing into [src]. You must remain in place and conscious to maintain the forms of those summoned. This will hurt you slowly but surely..." + to_chat(user, "Your blood begins flowing into [src]. You must remain in place and conscious to maintain the forms of those summoned. This will hurt you slowly but surely...") var/turf/T = get_turf(src) var/obj/structure/emergency_shield/invoker/N = new(T) new_human.key = ghost_to_spawn.key ticker.mode.add_cultist(new_human.mind, 0) - new_human << "You are a servant of the Geometer. You have been made semi-corporeal by the cult of Nar-Sie, and you are to serve them at all costs." + to_chat(new_human, "You are a servant of the Geometer. You have been made semi-corporeal by the cult of Nar-Sie, and you are to serve them at all costs.") while(user in T) if(user.stat) diff --git a/code/game/gamemodes/cult/talisman.dm b/code/game/gamemodes/cult/talisman.dm index 9a47e91561..d8722acb73 100644 --- a/code/game/gamemodes/cult/talisman.dm +++ b/code/game/gamemodes/cult/talisman.dm @@ -4,18 +4,19 @@ var/invocation = "Naise meam!" var/uses = 1 var/health_cost = 0 //The amount of health taken from the user when invoking the talisman + var/creation_time = 100 //how long it takes an imbue rune to make this type of talisman /obj/item/weapon/paper/talisman/examine(mob/user) if(iscultist(user) || user.stat == DEAD) - user << "Name: [cultist_name]" - user << "Effect: [cultist_desc]" - user << "Uses Remaining: [uses]" + to_chat(user, "Name: [cultist_name]") + to_chat(user, "Effect: [cultist_desc]") + to_chat(user, "Uses Remaining: [uses]") else - user << "There are indecipherable images scrawled on the paper in what looks to be... blood?" + to_chat(user, "There are indecipherable images scrawled on the paper in what looks to be... blood?") /obj/item/weapon/paper/talisman/attack_self(mob/living/user) if(!iscultist(user)) - user << "There are indecipherable images scrawled on the paper in what looks to be... blood?" + to_chat(user, "There are indecipherable images scrawled on the paper in what looks to be... blood?") return if(invoke(user)) uses-- @@ -39,7 +40,7 @@ invocation = "Ra'sha yoka!" /obj/item/weapon/paper/talisman/malformed/invoke(mob/living/user, successfuluse = 1) - user << "You feel a pain in your head. The Geometer is displeased." + to_chat(user, "You feel a pain in your head. The Geometer is displeased.") if(iscarbon(user)) var/mob/living/carbon/C = user C.apply_damage(10, BRUTE, "head") @@ -119,6 +120,7 @@ color = "#551A8B" // purple invocation = "Sas'so c'arta forbici!" health_cost = 5 + creation_time = 80 /obj/item/weapon/paper/talisman/teleport/invoke(mob/living/user, successfuluse = 1) var/list/potential_runes = list() @@ -128,12 +130,12 @@ potential_runes[avoid_assoc_duplicate_keys(T.listkey, teleportnames)] = T if(!potential_runes.len) - user << "There are no valid runes to teleport to!" + to_chat(user, "There are no valid runes to teleport to!") log_game("Teleport talisman failed - no other teleport runes") return ..(user, 0) if(user.z > ZLEVEL_SPACEMAX) - user << "You are not in the right dimension!" + to_chat(user, "You are not in the right dimension!") log_game("Teleport talisman failed - user in away mission") return ..(user, 0) @@ -143,7 +145,7 @@ return ..(user, 0) var/turf/target = get_turf(actual_selected_rune) if(is_blocked_turf(target, TRUE)) - user << "The target rune is blocked. Attempting to teleport to it would be massively unwise." + to_chat(user, "The target rune is blocked. Attempting to teleport to it would be massively unwise.") return ..(user, 0) user.visible_message("Dust flows from [user]'s hand, and [user.p_they()] disappear in a flash of red light!", \ "You speak the words of the talisman and find yourself somewhere else!") @@ -157,6 +159,7 @@ color = "#512727" // red-black invocation = "N'ath reth sh'yro eth d'raggathnor!" health_cost = 1 + creation_time = 30 /obj/item/weapon/paper/talisman/summon_tome/invoke(mob/living/user, successfuluse = 1) . = ..() @@ -172,6 +175,7 @@ color = "#9c9c9c" // grey invocation = "Kla'atu barada nikt'o!" health_cost = 1 + creation_time = 30 uses = 2 var/revealing = FALSE //if it reveals or not @@ -196,6 +200,7 @@ cultist_desc = "A talisman that will make nearby runes appear fake." color = "#ff80d5" // honk invocation = "By'o nar'nar!" + creation_time = 20 /obj/item/weapon/paper/talisman/make_runes_fake/invoke(mob/living/user, successfuluse = 1) . = ..() @@ -232,9 +237,9 @@ if(successfuluse) //if we're forced to be successful(we normally aren't) then do the normal stuff return ..() if(iscultist(user)) - user << "To use this talisman, attack the target directly." + to_chat(user, "To use this talisman, attack the target directly.") else - user << "There are indecipherable images scrawled on the paper in what looks to be... blood?" + to_chat(user, "There are indecipherable images scrawled on the paper in what looks to be... blood?") return 0 /obj/item/weapon/paper/talisman/stun/attack(mob/living/target, mob/living/user, successfuluse = 1) @@ -273,6 +278,7 @@ cultist_desc = "A talisman that will equip the invoker with cultist equipment if there is a slot to equip it to." color = "#33cc33" // green invocation = "N'ath reth sh'yro eth draggathnor!" + creation_time = 80 /obj/item/weapon/paper/talisman/armor/invoke(mob/living/user, successfuluse = 1) . = ..() @@ -301,15 +307,16 @@ cultist_desc = "A talisman that will break the mind of the victim with nightmarish hallucinations." color = "#ffb366" // light orange invocation = "Lo'Nab Na'Dm!" + creation_time = 80 /obj/item/weapon/paper/talisman/horror/attack(mob/living/target, mob/living/user) if(iscultist(user)) - user << "You disturb [target] with visons of the end!" + to_chat(user, "You disturb [target] with visons of the end!") if(iscarbon(target)) var/mob/living/carbon/H = target H.reagents.add_reagent("mindbreaker", 25) if(is_servant_of_ratvar(target)) - target << "You see a brief but horrible vision of Ratvar, rusted and scrapped, being torn apart." + to_chat(target, "You see a brief but horrible vision of Ratvar, rusted and scrapped, being torn apart.") target.emote("scream") target.confused = max(0, target.confused + 3) target.flash_act() @@ -323,17 +330,18 @@ invocation = "Ethra p'ni dedol!" color = "#000000" // black uses = 25 + creation_time = 80 /obj/item/weapon/paper/talisman/construction/attack_self(mob/living/user) if(iscultist(user)) - user << "To use this talisman, place it upon a stack of metal sheets." + to_chat(user, "To use this talisman, place it upon a stack of metal sheets.") else - user << "There are indecipherable images scrawled on the paper in what looks to be... blood?" + to_chat(user, "There are indecipherable images scrawled on the paper in what looks to be... blood?") /obj/item/weapon/paper/talisman/construction/attack(obj/M,mob/living/user) if(iscultist(user)) - user << "This talisman will only work on a stack of metal or plasteel sheets!" + to_chat(user, "This talisman will only work on a stack of metal or plasteel sheets!") log_game("Construct talisman failed - not a valid target") else ..() @@ -345,24 +353,24 @@ if(istype(target, /obj/item/stack/sheet/metal)) if(target.use(25)) new /obj/structure/constructshell(T) - user << "The talisman clings to the metal and twists it into a construct shell!" + to_chat(user, "The talisman clings to the metal and twists it into a construct shell!") user << sound('sound/effects/magic.ogg',0,1,25) invoke(user, 1) qdel(src) else - user << "You need more metal to produce a construct shell!" + to_chat(user, "You need more metal to produce a construct shell!") else if(istype(target, /obj/item/stack/sheet/plasteel)) var/quantity = min(target.amount, uses) uses -= quantity new /obj/item/stack/sheet/runed_metal(T,quantity) target.use(quantity) - user << "The talisman clings to the plasteel, transforming it into runed metal!" + to_chat(user, "The talisman clings to the plasteel, transforming it into runed metal!") user << sound('sound/effects/magic.ogg',0,1,25) invoke(user, 1) if(uses <= 0) qdel(src) else - user << "The talisman must be used on metal or plasteel!" + to_chat(user, "The talisman must be used on metal or plasteel!") //Talisman of Shackling: Applies special cuffs directly from the talisman @@ -377,9 +385,9 @@ if(successfuluse) //if we're forced to be successful(we normally aren't) then do the normal stuff return ..() if(iscultist(user)) - user << "To use this talisman, attack the target directly." + to_chat(user, "To use this talisman, attack the target directly.") else - user << "There are indecipherable images scrawled on the paper in what looks to be... blood?" + to_chat(user, "There are indecipherable images scrawled on the paper in what looks to be... blood?") return 0 /obj/item/weapon/paper/talisman/shackle/attack(mob/living/carbon/target, mob/living/user) @@ -401,15 +409,15 @@ if(!C.handcuffed) C.handcuffed = new /obj/item/weapon/restraints/handcuffs/energy/cult/used(C) C.update_handcuffed() - user << "You shackle [C]." + to_chat(user, "You shackle [C].") add_logs(user, C, "handcuffed") uses-- else - user << "[C] is already bound." + to_chat(user, "[C] is already bound.") else - user << "You fail to shackle [C]." + to_chat(user, "You fail to shackle [C].") else - user << "[C] is already bound." + to_chat(user, "[C] is already bound.") if(uses <= 0) user.drop_item() qdel(src) diff --git a/code/game/gamemodes/devil/devil_game_mode.dm b/code/game/gamemodes/devil/devil_game_mode.dm index c64653a986..70775dfe9d 100644 --- a/code/game/gamemodes/devil/devil_game_mode.dm +++ b/code/game/gamemodes/devil/devil_game_mode.dm @@ -51,7 +51,7 @@ /datum/game_mode/devil/post_setup() for(var/datum/mind/devil in devils) spawn(rand(10,100)) - finalize_devil(devil, objective_count) + finalize_devil(devil, TRUE) spawn(100) add_devil_objectives(devil, objective_count) //This has to be in a separate loop, as we need devil names to be generated before we give objectives in devil agent. devil.announceDevilLaws() diff --git a/code/game/gamemodes/devil/devilinfo.dm b/code/game/gamemodes/devil/devilinfo.dm index 68fbe4d790..82fead15ca 100644 --- a/code/game/gamemodes/devil/devilinfo.dm +++ b/code/game/gamemodes/devil/devilinfo.dm @@ -94,6 +94,7 @@ var/global/list/lawlorify = list ( /obj/effect/proc_holder/spell/targeted/summon_contract, /obj/effect/proc_holder/spell/targeted/conjure_item/violin, /obj/effect/proc_holder/spell/targeted/summon_dancefloor) + var/ascendable = FALSE /datum/devilinfo/New() @@ -156,11 +157,11 @@ var/global/list/lawlorify = list ( return soulsOwned += soul owner.current.nutrition = NUTRITION_LEVEL_FULL - owner.current << "You feel satiated as you received a new soul." + to_chat(owner.current, "You feel satiated as you received a new soul.") update_hud() switch(SOULVALUE) if(0) - owner.current << "Your hellish powers have been restored." + to_chat(owner.current, "Your hellish powers have been restored.") give_base_spells() if(BLOOD_THRESHOLD) increase_blood_lizard() @@ -172,7 +173,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/remove_soul(datum/mind/soul) if(soulsOwned.Remove(soul)) check_regression() - owner.current << "You feel as though a soul has slipped from your grasp." + to_chat(owner.current, "You feel as though a soul has slipped from your grasp.") update_hud() /datum/devilinfo/proc/check_regression() @@ -185,19 +186,10 @@ var/global/list/lawlorify = list ( regress_humanoid() if(SOULVALUE < 0) remove_spells() - owner.current << "As punishment for your failures, all of your powers except contract creation have been revoked." - -/datum/devilinfo/proc/increase_form() - switch(form) - if(BASIC_DEVIL) - increase_blood_lizard() - if(BLOOD_LIZARD) - increase_true_devil() - if(TRUE_DEVIL) - increase_arch_devil() + to_chat(owner.current, "As punishment for your failures, all of your powers except contract creation have been revoked.") /datum/devilinfo/proc/regress_humanoid() - owner.current << "Your powers weaken, have more contracts be signed to regain power." + to_chat(owner.current, "Your powers weaken, have more contracts be signed to regain power.") if(ishuman(owner.current)) var/mob/living/carbon/human/H = owner.current H.set_species(/datum/species/human, 1) @@ -209,7 +201,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/regress_blood_lizard() var/mob/living/carbon/true_devil/D = owner.current - D << "Your powers weaken, have more contracts be signed to regain power." + to_chat(D, "Your powers weaken, have more contracts be signed to regain power.") D.oldform.loc = D.loc owner.transfer_to(D.oldform) give_lizard_spells() @@ -219,7 +211,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/increase_blood_lizard() - owner.current << "You feel as though your humanoid form is about to shed. You will soon turn into a blood lizard." + to_chat(owner.current, "You feel as though your humanoid form is about to shed. You will soon turn into a blood lizard.") sleep(50) if(ishuman(owner.current)) var/mob/living/carbon/human/H = owner.current @@ -237,7 +229,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/increase_true_devil() - owner.current << "You feel as though your current form is about to shed. You will soon turn into a true devil." + to_chat(owner.current, "You feel as though your current form is about to shed. You will soon turn into a true devil.") sleep(50) var/mob/living/carbon/true_devil/A = new /mob/living/carbon/true_devil(owner.current.loc) A.faction |= "hell" @@ -251,8 +243,10 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/increase_arch_devil() + if(!ascendable) + return var/mob/living/carbon/true_devil/D = owner.current - D << "You feel as though your form is about to ascend." + to_chat(D, "You feel as though your form is about to ascend.") sleep(50) if(!D) return @@ -271,19 +265,19 @@ var/global/list/lawlorify = list ( sleep(40) if(!D) return - D << "Yes!" + to_chat(D, "Yes!") sleep(10) if(!D) return - D << "YES!!" + to_chat(D, "YES!!") sleep(10) if(!D) return - D << "YE--" + to_chat(D, "YE--") sleep(1) if(!D) return - world << "\"SLOTH, WRATH, GLUTTONY, ACEDIA, ENVY, GREED, PRIDE! FIRES OF HELL AWAKEN!!\"" + to_chat(world, "\"SLOTH, WRATH, GLUTTONY, ACEDIA, ENVY, GREED, PRIDE! FIRES OF HELL AWAKEN!!\"") world << 'sound/hallucinations/veryfar_noise.ogg' give_arch_spells() D.convert_to_archdevil() @@ -339,23 +333,23 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/beginResurrectionCheck(mob/living/body) if(SOULVALUE>0) - owner.current<< "Your body has been damaged to the point that you may no longer use it. At the cost of some of your power, you will return to life soon. Remain in your body." + to_chat(owner.current, "Your body has been damaged to the point that you may no longer use it. At the cost of some of your power, you will return to life soon. Remain in your body.") sleep(DEVILRESURRECTTIME) if (!body || body.stat == DEAD) if(SOULVALUE>0) if(check_banishment(body)) - owner.current<< "Unfortunately, the mortals have finished a ritual that prevents your resurrection." + to_chat(owner.current, "Unfortunately, the mortals have finished a ritual that prevents your resurrection.") return -1 else - owner.current<< "WE LIVE AGAIN!" + to_chat(owner.current, "WE LIVE AGAIN!") return hellish_resurrection(body) else - owner.current<< "Unfortunately, the power that stemmed from your contracts has been extinguished. You no longer have enough power to resurrect." + to_chat(owner.current, "Unfortunately, the power that stemmed from your contracts has been extinguished. You no longer have enough power to resurrect.") return -1 else - owner.current << " You seem to have resurrected without your hellish powers." + to_chat(owner.current, " You seem to have resurrected without your hellish powers.") else - owner.current << "Your hellish powers are too weak to resurrect yourself." + to_chat(owner.current, "Your hellish powers are too weak to resurrect yourself.") /datum/devilinfo/proc/check_banishment(mob/living/body) switch(banish) @@ -403,7 +397,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/hellish_resurrection(mob/living/body) message_admins("[owner.name] (true name is: [truename]) is resurrecting using hellish energy.") - if(SOULVALUE <= ARCH_THRESHOLD) // once ascended, arch devils do not go down in power by any means. + if(SOULVALUE < ARCH_THRESHOLD && ascendable) // once ascended, arch devils do not go down in power by any means. reviveNumber += LOSS_PER_DEATH update_hud() if(body) @@ -414,41 +408,50 @@ var/global/list/lawlorify = list ( var/mob/living/carbon/true_devil/D = body if(D.oldform) D.oldform.revive(1,0) // Heal the old body too, so the devil doesn't resurrect, then immediately regress into a dead body. + if(body.stat == DEAD) + create_new_body() else - if(blobstart.len > 0) - var/turf/targetturf = get_turf(pick(blobstart)) - var/mob/currentMob = owner.current - if(!currentMob) - currentMob = owner.get_ghost() - if(!currentMob) - message_admins("[owner.name]'s devil resurrection failed due to client logoff. Aborting.") - return -1 // - if(currentMob.mind != owner) - message_admins("[owner.name]'s devil resurrection failed due to becoming a new mob. Aborting.") - return -1 - currentMob.change_mob_type( /mob/living/carbon/human , targetturf, null, 1) - var/mob/living/carbon/human/H = owner.current - give_summon_contract() - if(SOULVALUE >= BLOOD_THRESHOLD) - H.set_species(/datum/species/lizard, 1) - H.underwear = "Nude" - H.undershirt = "Nude" - H.socks = "Nude" - H.dna.features["mcolor"] = "511" - H.regenerate_icons() - if(SOULVALUE >= TRUE_THRESHOLD) //Yes, BOTH this and the above if statement are to run if soulpower is high enough. - var/mob/living/carbon/true_devil/A = new /mob/living/carbon/true_devil(targetturf) - A.faction |= "hell" - H.forceMove(A) - A.oldform = H - A.set_name() - owner.transfer_to(A) - if(SOULVALUE >= ARCH_THRESHOLD) - A.convert_to_archdevil() - else - throw EXCEPTION("Unable to find a blobstart landmark for hellish resurrection") + create_new_body() check_regression() +/datum/devilinfo/proc/create_new_body() + if(blobstart.len > 0) + var/turf/targetturf = get_turf(pick(blobstart)) + var/mob/currentMob = owner.current + if(!currentMob) + currentMob = owner.get_ghost() + if(!currentMob) + message_admins("[owner.name]'s devil resurrection failed due to client logoff. Aborting.") + return -1 + if(currentMob.mind != owner) + message_admins("[owner.name]'s devil resurrection failed due to becoming a new mob. Aborting.") + return -1 + currentMob.change_mob_type( /mob/living/carbon/human, targetturf, null, 1) + var/mob/living/carbon/human/H = owner.current + H.equip_to_slot_or_del(new /obj/item/clothing/under/lawyer/black(H), slot_w_uniform) + H.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(H), slot_shoes) + H.equip_to_slot_or_del(new /obj/item/weapon/storage/briefcase(H), slot_hands) + H.equip_to_slot_or_del(new /obj/item/weapon/pen(H), slot_l_store) + if(SOULVALUE >= BLOOD_THRESHOLD) + H.set_species(/datum/species/lizard, 1) + H.underwear = "Nude" + H.undershirt = "Nude" + H.socks = "Nude" + H.dna.features["mcolor"] = "511" + H.regenerate_icons() + if(SOULVALUE >= TRUE_THRESHOLD) //Yes, BOTH this and the above if statement are to run if soulpower is high enough. + var/mob/living/carbon/true_devil/A = new /mob/living/carbon/true_devil(targetturf) + A.faction |= "hell" + H.forceMove(A) + A.oldform = H + A.set_name() + owner.transfer_to(A) + if(SOULVALUE >= ARCH_THRESHOLD && ascendable) + A.convert_to_archdevil() + else + throw EXCEPTION("Unable to find a blobstart landmark for hellish resurrection") + + /datum/devilinfo/proc/update_hud() if(istype(owner.current, /mob/living/carbon)) var/mob/living/C = owner.current diff --git a/code/game/gamemodes/devil/game_mode.dm b/code/game/gamemodes/devil/game_mode.dm index be5b22c206..a99e6abd83 100644 --- a/code/game/gamemodes/devil/game_mode.dm +++ b/code/game/gamemodes/devil/game_mode.dm @@ -14,7 +14,7 @@ text += printobjectives(sintouched_mind) text += "
" text += "
" - world << text + to_chat(world, text) /datum/game_mode/proc/auto_declare_completion_devils() /var/text = "" @@ -27,14 +27,15 @@ text += printobjectives(devil) text += "
" text += "
" - world << text + to_chat(world, text) -/datum/game_mode/proc/finalize_devil(datum/mind/devil_mind) +/datum/game_mode/proc/finalize_devil(datum/mind/devil_mind, ascendable = FALSE) var/trueName= randomDevilName() devil_mind.devilinfo = devilInfo(trueName, 1) + devil_mind.devilinfo.ascendable = ascendable devil_mind.store_memory("Your devilic true name is [devil_mind.devilinfo.truename]
[lawlorify[LAW][devil_mind.devilinfo.ban]]
You may not use violence to coerce someone into selling their soul.
You may not directly and knowingly physically harm a devil, other than yourself.
[lawlorify[LAW][devil_mind.devilinfo.bane]]
[lawlorify[LAW][devil_mind.devilinfo.obligation]]
[lawlorify[LAW][devil_mind.devilinfo.banish]]
") devil_mind.devilinfo.owner = devil_mind devil_mind.devilinfo.give_base_spells(1) @@ -42,7 +43,7 @@ devil_mind.devilinfo.update_hud() if(devil_mind.assigned_role == "Clown" && ishuman(devil_mind.current)) var/mob/living/carbon/human/S = devil_mind.current - S << "Your infernal nature has allowed you to overcome your clownishness." + to_chat(S, "Your infernal nature has allowed you to overcome your clownishness.") S.dna.remove_mutation(CLOWNMUT) if(issilicon(devil_mind.current)) add_law_sixsixsix(devil_mind.current) @@ -62,15 +63,15 @@ /datum/mind/proc/announceDevilLaws() if(!devilinfo) return - current << "You remember your link to the infernal. You are [src.devilinfo.truename], an agent of hell, a devil. And you were sent to the plane of creation for a reason. A greater purpose. Convince the crew to sin, and embroiden Hell's grasp." - current << "However, your infernal form is not without weaknesses." - current << "You may not use violence to coerce someone into selling their soul." - current << "You may not directly and knowingly physically harm a devil, other than yourself." - current << lawlorify[LAW][src.devilinfo.bane] - current << lawlorify[LAW][src.devilinfo.ban] - current << lawlorify[LAW][src.devilinfo.obligation] - current << lawlorify[LAW][src.devilinfo.banish] - current << "

Remember, the crew can research your weaknesses if they find out your devil name.
" + to_chat(current, "You remember your link to the infernal. You are [src.devilinfo.truename], an agent of hell, a devil. And you were sent to the plane of creation for a reason. A greater purpose. Convince the crew to sin, and embroiden Hell's grasp.") + to_chat(current, "However, your infernal form is not without weaknesses.") + to_chat(current, "You may not use violence to coerce someone into selling their soul.") + to_chat(current, "You may not directly and knowingly physically harm a devil, other than yourself.") + to_chat(current, lawlorify[LAW][src.devilinfo.bane]) + to_chat(current, lawlorify[LAW][src.devilinfo.ban]) + to_chat(current, lawlorify[LAW][src.devilinfo.obligation]) + to_chat(current, lawlorify[LAW][src.devilinfo.banish]) + to_chat(current, "

Remember, the crew can research your weaknesses if they find out your devil name.
") /datum/game_mode/proc/printdevilinfo(datum/mind/ply) if(!ply.devilinfo) diff --git a/code/game/gamemodes/devil/imp/imp.dm b/code/game/gamemodes/devil/imp/imp.dm index 211a343b52..3698a391e1 100644 --- a/code/game/gamemodes/devil/imp/imp.dm +++ b/code/game/gamemodes/devil/imp/imp.dm @@ -38,7 +38,7 @@ Though you are not obligated to help, perhaps by aiding a higher ranking devil, you might just get a promotion. However, you are incapable \ of intentionally harming a fellow devil.
" -/mob/living/simple_animal/imp/New() +/mob/living/simple_animal/imp/Initialize() ..() boost = world.time + 30 diff --git a/code/game/gamemodes/devil/true_devil/_true_devil.dm b/code/game/gamemodes/devil/true_devil/_true_devil.dm index 1de71b46d3..c7af40414b 100644 --- a/code/game/gamemodes/devil/true_devil/_true_devil.dm +++ b/code/game/gamemodes/devil/true_devil/_true_devil.dm @@ -27,7 +27,7 @@ -/mob/living/carbon/true_devil/New() +/mob/living/carbon/true_devil/Initialize() create_bodyparts() //initialize bodyparts create_internal_organs() @@ -87,7 +87,7 @@ else if(health < (maxHealth/2)) msg += "You can see hellfire inside its wounds.\n" msg += "*---------*
" - user << msg + to_chat(user, msg) /mob/living/carbon/true_devil/IsAdvancedToolUser() @@ -151,8 +151,8 @@ var/datum/objective/newobjective = new newobjective.explanation_text = "Try to get a promotion to a higher devilic rank." S.mind.objectives += newobjective - S << S.playstyle_string - S << "Objective #[1]: [newobjective.explanation_text]" + to_chat(S, S.playstyle_string) + to_chat(S, "Objective #[1]: [newobjective.explanation_text]") return else return ..() diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index bbe8709c56..65a5529f2a 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -46,14 +46,14 @@ /datum/game_mode/proc/announce() //Shows the gamemode's name and a fast description. - world << "The gamemode is: [name]!" - world << "[announce_text]" + to_chat(world, "The gamemode is: [name]!") + to_chat(world, "[announce_text]") ///Checks to see if the game can be setup and ran with the current number of players or whatnot. /datum/game_mode/proc/can_start() var/playerC = 0 - for(var/mob/new_player/player in player_list) + for(var/mob/dead/new_player/player in player_list) if((player.client)&&(player.ready)) playerC++ if(!Debug2) @@ -103,7 +103,7 @@ return -///Allows rounds to basically be "rerolled" should the initial premise fall through +///Allows rounds to basically be "rerolled" should the initial premise fall through. Also known as mulligan antags. /datum/game_mode/proc/convert_roundtype() var/list/living_crew = list() @@ -156,9 +156,9 @@ if(config.protect_assistant_from_antagonist) replacementmode.restricted_jobs += "Assistant" - message_admins("The roundtype will be converted. If you have other plans for the station or think the round should end stop the creation of antags or end the round now.") + message_admins("The roundtype will be converted. If you have other plans for the station or feel the station is too messed up to inhabit stop the creation of antags or end the round now.") - spawn(rand(1200,3000)) //somewhere between 2 and 5 minutes from now + spawn(rand(600,1800)) //somewhere between 1 and 3 minutes from now if(!config.midround_antag[ticker.mode.config_tag]) round_converted = 0 return 1 @@ -289,7 +289,7 @@ G.on_report() intercepttext += G.get_report() - print_command_report(intercepttext, "Central Command Status Summary") + print_command_report(intercepttext, "Central Command Status Summary", announce=FALSE) priority_announce("A summary has been copied and printed to all communications consoles.", "Enemy communication intercepted. Security level elevated.", 'sound/AI/intercept.ogg') if(security_level < SEC_LEVEL_BLUE) set_security_level(SEC_LEVEL_BLUE) @@ -302,7 +302,7 @@ var/datum/mind/applicant = null // Ultimate randomizing code right here - for(var/mob/new_player/player in player_list) + for(var/mob/dead/new_player/player in player_list) if(player.client && player.ready) players += player @@ -310,7 +310,7 @@ // Goodbye antag dante players = shuffle(players) - for(var/mob/new_player/player in players) + for(var/mob/dead/new_player/player in players) if(player.client && player.ready) if(role in player.client.prefs.be_special) if(!jobban_isbanned(player, "Syndicate") && !jobban_isbanned(player, role)) //Nodrak/Carn: Antag Job-bans @@ -324,7 +324,7 @@ candidates -= player if(candidates.len < recommended_enemies) - for(var/mob/new_player/player in players) + for(var/mob/dead/new_player/player in players) if(player.client && player.ready) if(!(role in player.client.prefs.be_special)) // We don't have enough people who want to be antagonist, make a seperate list of people who don't want to be one if(!jobban_isbanned(player, "Syndicate") && !jobban_isbanned(player, role)) //Nodrak/Carn: Antag Job-bans @@ -349,7 +349,7 @@ break /* if(candidates.len < recommended_enemies && override_jobbans) //If we still don't have enough people, we're going to start drafting banned people. - for(var/mob/new_player/player in players) + for(var/mob/dead/new_player/player in players) if (player.client && player.ready) if(jobban_isbanned(player, "Syndicate") || jobban_isbanned(player, roletext)) //Nodrak/Carn: Antag Job-bans drafted += player.mind @@ -377,7 +377,7 @@ // Less if there are not enough valid players in the game entirely to make recommended_enemies. /* -/datum/game_mode/proc/check_player_role_pref(var/role, var/mob/new_player/player) +/datum/game_mode/proc/check_player_role_pref(var/role, var/mob/dead/new_player/player) if(player.preferences.be_special & role) return 1 return 0 @@ -385,7 +385,7 @@ /datum/game_mode/proc/num_players() . = 0 - for(var/mob/new_player/P in player_list) + for(var/mob/dead/new_player/P in player_list) if(P.client && P.ready) . ++ @@ -479,7 +479,7 @@ for(var/mob/M in mob_list) if(M.client && M.client.holder) - M << msg + to_chat(M, msg) /datum/game_mode/proc/printplayer(datum/mind/ply, fleecheck) var/text = "
[ply.key] was [ply.name] the [ply.assigned_role] and" @@ -531,7 +531,7 @@ var/mob/dead/observer/theghost = null if(candidates.len) theghost = pick(candidates) - M << "Your mob has been taken over by a ghost! Appeal your job ban if you want to avoid this in the future!" + to_chat(M, "Your mob has been taken over by a ghost! Appeal your job ban if you want to avoid this in the future!") message_admins("[key_name_admin(theghost)] has taken control of ([key_name_admin(M)]) to replace a jobbaned player.") M.ghostize(0) M.key = theghost.key diff --git a/code/game/gamemodes/gang/dominator.dm b/code/game/gamemodes/gang/dominator.dm index fe46cb60a8..388404118f 100644 --- a/code/game/gamemodes/gang/dominator.dm +++ b/code/game/gamemodes/gang/dominator.dm @@ -21,7 +21,7 @@ /obj/machinery/dominator/New() ..() - SetLuminosity(2) + set_light(2) poi_list |= src spark_system = new spark_system.set_up(5, 1, src) @@ -36,12 +36,12 @@ if(gang && gang.is_dominating) time = gang.domination_time_remaining() if(time > 0) - user << "Hostile Takeover in progress. Estimated [time] seconds remain." + to_chat(user, "Hostile Takeover in progress. Estimated [time] seconds remain.") else - user << "Hostile Takeover of [station_name()] successful. Have a great day." + to_chat(user, "Hostile Takeover of [station_name()] successful. Have a great day.") else - user << "System on standby." - user << "System Integrity: [round((obj_integrity/max_integrity)*100,1)]%" + to_chat(user, "System on standby.") + to_chat(user, "System Integrity: [round((obj_integrity/max_integrity)*100,1)]%") /obj/machinery/dominator/process() ..() @@ -117,7 +117,7 @@ gang.message_gangtools("Hostile takeover cancelled: Dominator is no longer operational.[gang.dom_attempts ? " You have [gang.dom_attempts] attempt remaining." : " The station network will have likely blocked any more attempts by us."]",1,1) - SetLuminosity(0) + set_light(0) icon_state = "dominator-broken" cut_overlays() operating = 0 @@ -153,11 +153,11 @@ return if(tempgang.is_dominating) - user << "Error: Hostile Takeover is already in progress." + to_chat(user, "Error: Hostile Takeover is already in progress.") return if(!tempgang.dom_attempts) - user << "Error: Unable to breach station network. Firewall has logged our signature and is blocking all further attempts." + to_chat(user, "Error: Unable to breach station network. Firewall has logged our signature and is blocking all further attempts.") return var/time = round(determine_domination_time(tempgang)/60,0.1) @@ -180,14 +180,10 @@ countdown.color = gang.color_hex countdown.start() - SetLuminosity(3) + set_light(3) START_PROCESSING(SSmachine, src) gang.message_gangtools("Hostile takeover in progress: Estimated [time] minutes until victory.[gang.dom_attempts ? "" : " This is your final attempt."]") for(var/datum/gang/G in ticker.mode.gangs) if(G != gang) G.message_gangtools("Enemy takeover attempt detected in [locname]: Estimated [time] minutes until our defeat.",1,1) - - - - diff --git a/code/game/gamemodes/gang/gang.dm b/code/game/gamemodes/gang/gang.dm index 8d6709b1e2..b6a5d64e7a 100644 --- a/code/game/gamemodes/gang/gang.dm +++ b/code/game/gamemodes/gang/gang.dm @@ -92,7 +92,7 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" /datum/game_mode/proc/greet_gang(datum/mind/boss_mind, you_are=1) if (you_are) - boss_mind.current << "You are the Boss of the [boss_mind.gang_datum.name] Gang!" + to_chat(boss_mind.current, "You are the Boss of the [boss_mind.gang_datum.name] Gang!") boss_mind.announce_objectives() /////////////////////////////////////////////////////////////////////////// @@ -104,7 +104,7 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" if (mob.mind) if (mob.mind.assigned_role == "Clown") - mob << "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself." + to_chat(mob, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.") mob.dna.remove_mutation(CLOWNMUT) var/obj/item/device/gangtool/gangtool = new(mob) @@ -122,33 +122,33 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" var/where = mob.equip_in_one_of_slots(gangtool, slots) if (!where) - mob << "Your Syndicate benefactors were unfortunately unable to get you a Gangtool." + to_chat(mob, "Your Syndicate benefactors were unfortunately unable to get you a Gangtool.") . += 1 else gangtool.register_device(mob) - mob << "The Gangtool in your [where] will allow you to purchase weapons and equipment, send messages to your gang, and recall the emergency shuttle from anywhere on the station." - mob << "As the gang boss, you can also promote your gang members to lieutenant. Unlike regular gangsters, Lieutenants cannot be deconverted and are able to use recruitment pens and gangtools." + to_chat(mob, "The Gangtool in your [where] will allow you to purchase weapons and equipment, send messages to your gang, and recall the emergency shuttle from anywhere on the station.") + to_chat(mob, "As the gang boss, you can also promote your gang members to lieutenant. Unlike regular gangsters, Lieutenants cannot be deconverted and are able to use recruitment pens and gangtools.") var/where2 = mob.equip_in_one_of_slots(T, slots) if (!where2) - mob << "Your Syndicate benefactors were unfortunately unable to get you a recruitment pen to start." + to_chat(mob, "Your Syndicate benefactors were unfortunately unable to get you a recruitment pen to start.") . += 1 else - mob << "The recruitment pen in your [where2] will help you get your gang started. Stab unsuspecting crew members with it to recruit them." + to_chat(mob, "The recruitment pen in your [where2] will help you get your gang started. Stab unsuspecting crew members with it to recruit them.") var/where3 = mob.equip_in_one_of_slots(SC, slots) if (!where3) - mob << "Your Syndicate benefactors were unfortunately unable to get you a territory spraycan to start." + to_chat(mob, "Your Syndicate benefactors were unfortunately unable to get you a territory spraycan to start.") . += 1 else - mob << "The territory spraycan in your [where3] can be used to claim areas of the station for your gang. The more territory your gang controls, the more influence you get. All gangsters can use these, so distribute them to grow your influence faster." + to_chat(mob, "The territory spraycan in your [where3] can be used to claim areas of the station for your gang. The more territory your gang controls, the more influence you get. All gangsters can use these, so distribute them to grow your influence faster.") var/where4 = mob.equip_in_one_of_slots(C, slots) if (!where4) - mob << "Your Syndicate benefactors were unfortunately unable to get you a chameleon security HUD." + to_chat(mob, "Your Syndicate benefactors were unfortunately unable to get you a chameleon security HUD.") . += 1 else - mob << "The chameleon security HUD in your [where4] will help you keep track of who is mindshield-implanted, and unable to be recruited." + to_chat(mob, "The chameleon security HUD in your [where4] will help you keep track of who is mindshield-implanted, and unable to be recruited.") return . @@ -169,12 +169,12 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" carbon_mob.flash_act(1, 1) gangster_mind.current.Stun(5) if(G.is_deconvertible) - gangster_mind.current << "You are now a member of the [G.name] Gang!" - gangster_mind.current << "Help your bosses take over the station by claiming territory with special spraycans only they can provide. Simply spray on any unclaimed area of the station." - gangster_mind.current << "Their ultimate objective is to take over the station with a Dominator machine." - gangster_mind.current << "You can identify your bosses by their large, bright [G.color] \[G\] icon." + to_chat(gangster_mind.current, "You are now a member of the [G.name] Gang!") + to_chat(gangster_mind.current, "Help your bosses take over the station by claiming territory with special spraycans only they can provide. Simply spray on any unclaimed area of the station.") + to_chat(gangster_mind.current, "Their ultimate objective is to take over the station with a Dominator machine.") + to_chat(gangster_mind.current, "You can identify your bosses by their large, bright [G.color] \[G\] icon.") gangster_mind.store_memory("You are a member of the [G.name] Gang!") - gangster_mind.current.attack_log += "\[[time_stamp()]\] Has been converted to the [G.name] Gang!" + gangster_mind.current.log_message("Has been converted to the [G.name] Gang!", INDIVIDUAL_ATTACK_LOG) gangster_mind.special_role = "[G.name] Gangster" G.add_gang_hud(gangster_mind) @@ -208,18 +208,18 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" gangster_mind.gang_datum = null if(silent < 2) - gangster_mind.current.attack_log += "\[[time_stamp()]\] Has reformed and defected from the [gang.name] Gang!" + gangster_mind.current.log_message("Has reformed and defected from the [gang.name] Gang!", INDIVIDUAL_ATTACK_LOG) if(beingborged) if(!silent) gangster_mind.current.visible_message("The frame beeps contentedly from the MMI before initalizing it.") - gangster_mind.current << "The frame's firmware detects and deletes your criminal behavior! You are no longer a gangster!" + to_chat(gangster_mind.current, "The frame's firmware detects and deletes your criminal behavior! You are no longer a gangster!") message_admins("[ADMIN_LOOKUPFLW(gangster_mind.current)] has been borged while being a member of the [gang.name] Gang. They are no longer a gangster.") else if(!silent) gangster_mind.current.Paralyse(5) gangster_mind.current.visible_message("[gangster_mind.current] looks like they've given up the life of crime!") - gangster_mind.current << "You have been reformed! You are no longer a gangster!
You try as hard as you can, but you can't seem to recall any of the identities of your former gangsters...
" + to_chat(gangster_mind.current, "You have been reformed! You are no longer a gangster!
You try as hard as you can, but you can't seem to recall any of the identities of your former gangsters...
") gangster_mind.memory = "" gang.remove_gang_hud(gangster_mind) @@ -258,12 +258,12 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" if(!gangs.len) return if(!winner) - world << "The station was [station_was_nuked ? "destroyed!" : "evacuated before a gang could claim it! The station wins!"]
" + to_chat(world, "The station was [station_was_nuked ? "destroyed!" : "evacuated before a gang could claim it! The station wins!"]
") feedback_set_details("round_end_result","loss - gangs failed takeover") ticker.news_report = GANG_LOSS else - world << "The [winner.name] Gang successfully performed a hostile takeover of the station!
" + to_chat(world, "The [winner.name] Gang successfully performed a hostile takeover of the station!
") feedback_set_details("round_end_result","win - gang domination complete") ticker.news_report = GANG_TAKEOVER @@ -277,7 +277,7 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" for(var/datum/mind/gangster in G.gangsters) text += printplayer(gangster, 1) text += "
" - world << text + to_chat(world, text) ////////////////////////////////////////////////////////// //Handles influence, territories, and the victory checks// diff --git a/code/game/gamemodes/gang/gang_datum.dm b/code/game/gamemodes/gang/gang_datum.dm index 935b1820e2..78d75c957f 100644 --- a/code/game/gamemodes/gang/gang_datum.dm +++ b/code/game/gamemodes/gang/gang_datum.dm @@ -159,7 +159,7 @@ var/mob/living/mob = get(tool.loc,/mob/living) if(mob && mob.mind && mob.stat == CONSCIOUS) if(mob.mind.gang_datum == src) - mob << "\icon[tool] [message]" + to_chat(mob, "\icon[tool] [message]") return @@ -206,7 +206,7 @@ gang_outfit = outfit if(gang_outfit) - gangster << "The [src] Gang's influence grows as you wear [gang_outfit]." + to_chat(gangster, "The [src] Gang's influence grows as you wear [gang_outfit].") uniformed ++ //Calculate and report influence growth diff --git a/code/game/gamemodes/gang/gang_items.dm b/code/game/gamemodes/gang/gang_items.dm index ab1a91f4e3..a8732c1046 100644 --- a/code/game/gamemodes/gang/gang_items.dm +++ b/code/game/gamemodes/gang/gang_items.dm @@ -22,7 +22,7 @@ var/obj/item/O = new item_path(user.loc) user.put_in_hands(O) if(spawn_msg) - user << spawn_msg + to_chat(user, spawn_msg) /datum/gang_item/proc/can_buy(mob/living/carbon/user, datum/gang/gang, obj/item/device/gangtool/gangtool) return gang && (gang.points >= get_cost(user, gang, gangtool)) && can_see(user, gang, gangtool) @@ -92,7 +92,7 @@ /datum/gang_item/function/outfit/spawn_item(mob/living/carbon/user, datum/gang/gang, obj/item/device/gangtool/gangtool) if(gang && gang.gang_outfit(user, gangtool)) - user << "Gang Outfits can act as armor with moderate protection against ballistic and melee attacks. Every gangster wearing one will also help grow your gang's influence." + to_chat(user, "Gang Outfits can act as armor with moderate protection against ballistic and melee attacks. Every gangster wearing one will also help grow your gang's influence.") if(gangtool) gangtool.outfits -= 1 @@ -200,7 +200,7 @@ var/obj/item/O = new item_path(user.loc, gang) //we need to override this whole proc for this one argument user.put_in_hands(O) if(spawn_msg) - user << spawn_msg + to_chat(user, spawn_msg) /datum/gang_item/equipment/pen name = "Recruitment Pen" @@ -235,7 +235,7 @@ if(gang && isboss(user, gang)) item_type = /obj/item/device/gangtool/spare/lt if(gang.bosses.len < 3) - user << "Gangtools allow you to promote a gangster to be your Lieutenant, enabling them to recruit and purchase items like you. Simply have them register the gangtool. You may promote up to [3-gang.bosses.len] more Lieutenants" + to_chat(user, "Gangtools allow you to promote a gangster to be your Lieutenant, enabling them to recruit and purchase items like you. Simply have them register the gangtool. You may promote up to [3-gang.bosses.len] more Lieutenants") else item_type = /obj/item/device/gangtool/spare var/obj/item/device/gangtool/spare/tool = new item_type(user.loc) @@ -277,16 +277,16 @@ var/area/usrarea = get_area(user.loc) var/usrturf = get_turf(user.loc) if(initial(usrarea.name) == "Space" || isspaceturf(usrturf) || usr.z != 1) - user << "You can only use this on the station!" + to_chat(user, "You can only use this on the station!") return FALSE for(var/obj/obj in usrturf) if(obj.density) - user << "There's not enough room here!" + to_chat(user, "There's not enough room here!") return FALSE if(!(usrarea.type in gang.territory|gang.territory_new)) - user << "The dominator can be spawned only on territory controlled by your gang!" + to_chat(user, "The dominator can be spawned only on territory controlled by your gang!") return FALSE return ..() diff --git a/code/game/gamemodes/gang/gang_pen.dm b/code/game/gamemodes/gang/gang_pen.dm index 65209cc966..fb7dbf5258 100644 --- a/code/game/gamemodes/gang/gang_pen.dm +++ b/code/game/gamemodes/gang/gang_pen.dm @@ -18,7 +18,7 @@ if(user.mind && (user.mind in ticker.mode.get_gang_bosses())) if(..(M,user,1)) if(cooldown) - user << "[src] needs more time to recharge before it can be used." + to_chat(user, "[src] needs more time to recharge before it can be used.") return if(M.client) M.mind_initialize() //give them a mind datum if they don't have one. @@ -29,9 +29,9 @@ M.Paralyse(5) cooldown(G) if(1) - user << "This mind is resistant to recruitment!" + to_chat(user, "This mind is resistant to recruitment!") else - user << "This mind has already been recruited into a gang!" + to_chat(user, "This mind has already been recruited into a gang!") return ..() @@ -56,4 +56,4 @@ cooldown = 0 icon_state = "pen" var/mob/M = get(src, /mob) - M << "\icon[src] [src][(src.loc == M)?(""):(" in your [src.loc]")] vibrates softly. It is ready to be used again." + to_chat(M, "\icon[src] [src][(src.loc == M)?(""):(" in your [src.loc]")] vibrates softly. It is ready to be used again.") diff --git a/code/game/gamemodes/gang/recaller.dm b/code/game/gamemodes/gang/recaller.dm index 5e99870658..423380c809 100644 --- a/code/game/gamemodes/gang/recaller.dm +++ b/code/game/gamemodes/gang/recaller.dm @@ -108,7 +108,7 @@ if(!message || !can_use(user)) return if(user.z > 2) - user << "\icon[src]Error: Station out of range." + to_chat(user, "\icon[src]Error: Station out of range.") return var/list/members = list() members += gang.gangsters @@ -129,10 +129,10 @@ var/ping = "[gang.name] [gang_rank]: [message]" for(var/datum/mind/ganger in members) if(ganger.current && (ganger.current.z <= 2) && (ganger.current.stat == CONSCIOUS)) - ganger.current << ping + to_chat(ganger.current, ping) for(var/mob/M in dead_mob_list) var/link = FOLLOW_LINK(M, user) - M << "[link] [ping]" + to_chat(M, "[link] [ping]") log_game("[key_name(user)] Messaged [gang.name] Gang: [message].") @@ -152,53 +152,53 @@ log_game("[key_name(user)] has been promoted to Lieutenant in the [gang.name] Gang") free_pen = 1 gang.message_gangtools("[user] has been promoted to Lieutenant.") - user << "You have been promoted to Lieutenant!" + to_chat(user, "You have been promoted to Lieutenant!") ticker.mode.forge_gang_objectives(user.mind) ticker.mode.greet_gang(user.mind,0) - user << "The Gangtool you registered will allow you to purchase weapons and equipment, and send messages to your gang." - user << "Unlike regular gangsters, you may use recruitment pens to add recruits to your gang. Use them on unsuspecting crew members to recruit them. Don't forget to get your one free pen from the gangtool." + to_chat(user, "The Gangtool you registered will allow you to purchase weapons and equipment, and send messages to your gang.") + to_chat(user, "Unlike regular gangsters, you may use recruitment pens to add recruits to your gang. Use them on unsuspecting crew members to recruit them. Don't forget to get your one free pen from the gangtool.") else - usr << "ACCESS DENIED: Unauthorized user." + to_chat(usr, "ACCESS DENIED: Unauthorized user.") /obj/item/device/gangtool/proc/recall(mob/user) if(!can_use(user)) return 0 if(recalling) - usr << "Error: Recall already in progress." + to_chat(usr, "Error: Recall already in progress.") return 0 gang.message_gangtools("[usr] is attempting to recall the emergency shuttle.") recalling = 1 - loc << "\icon[src]Generating shuttle recall order with codes retrieved from last call signal..." + to_chat(loc, "\icon[src]Generating shuttle recall order with codes retrieved from last call signal...") sleep(rand(100,300)) if(SSshuttle.emergency.mode != SHUTTLE_CALL) //Shuttle can only be recalled when it's moving to the station - user << "\icon[src]Emergency shuttle cannot be recalled at this time." + to_chat(user, "\icon[src]Emergency shuttle cannot be recalled at this time.") recalling = 0 return 0 - loc << "\icon[src]Shuttle recall order generated. Accessing station long-range communication arrays..." + to_chat(loc, "\icon[src]Shuttle recall order generated. Accessing station long-range communication arrays...") sleep(rand(100,300)) if(!gang.dom_attempts) - user << "\icon[src]Error: Unable to access communication arrays. Firewall has logged our signature and is blocking all further attempts." + to_chat(user, "\icon[src]Error: Unable to access communication arrays. Firewall has logged our signature and is blocking all further attempts.") recalling = 0 return 0 var/turf/userturf = get_turf(user) if(userturf.z != 1) //Shuttle can only be recalled while on station - user << "\icon[src]Error: Device out of range of station communication arrays." + to_chat(user, "\icon[src]Error: Device out of range of station communication arrays.") recalling = 0 return 0 var/datum/station_state/end_state = new /datum/station_state() end_state.count() if((100 * start_state.score(end_state)) < 80) //Shuttle cannot be recalled if the station is too damaged - user << "\icon[src]Error: Station communication systems compromised. Unable to establish connection." + to_chat(user, "\icon[src]Error: Station communication systems compromised. Unable to establish connection.") recalling = 0 return 0 - loc << "\icon[src]Comm arrays accessed. Broadcasting recall signal..." + to_chat(loc, "\icon[src]Comm arrays accessed. Broadcasting recall signal...") sleep(rand(100,300)) @@ -210,7 +210,7 @@ if(SSshuttle.cancelEvac(user)) return 1 - loc << "\icon[src]No response recieved. Emergency shuttle cannot be recalled at this time." + to_chat(loc, "\icon[src]No response recieved. Emergency shuttle cannot be recalled at this time.") return 0 /obj/item/device/gangtool/proc/can_use(mob/living/carbon/human/user) diff --git a/code/game/gamemodes/malfunction/Malf_Modules.dm b/code/game/gamemodes/malfunction/Malf_Modules.dm index dd505013ec..a63901a80e 100644 --- a/code/game/gamemodes/malfunction/Malf_Modules.dm +++ b/code/game/gamemodes/malfunction/Malf_Modules.dm @@ -31,10 +31,10 @@ var/turf/T = get_turf(src) if(!istype(T) || T.z != ZLEVEL_STATION) - src << "You cannot activate the doomsday device while off-station!" + to_chat(src, "You cannot activate the doomsday device while off-station!") return - src << "Doomsday device armed." + to_chat(src, "Doomsday device armed.") priority_announce("Hostile runtimes detected in all station systems, please deactivate your AI to prevent possible damage to its morality core.", "Anomaly Alert", 'sound/AI/aimalf.ogg') set_security_level("delta") nuking = 1 @@ -117,9 +117,9 @@ continue if(issilicon(L)) continue - L << "The blast wave from [src] tears you atom from atom!" + to_chat(L, "The blast wave from [src] tears you atom from atom!") L.dust() - world << "The AI cleansed the station of life with the doomsday device!" + to_chat(world, "The AI cleansed the station of life with the doomsday device!") ticker.force_ending = 1 /datum/AI_Module/large/upgrade_turrets @@ -144,7 +144,7 @@ turret.obj_integrity += 30 turret.lethal_projectile = /obj/item/projectile/beam/laser/heavylaser //Once you see it, you will know what it means to FEAR. turret.lethal_projectile_sound = 'sound/weapons/lasercannonfire.ogg' - src << "Turrets upgraded." + to_chat(src, "Turrets upgraded.") /datum/AI_Module/large/lockdown module_name = "Hostile Station Lockdown" @@ -174,7 +174,7 @@ verbs -= /mob/living/silicon/ai/proc/lockdown minor_announce("Hostile runtime detected in door controllers. Isolation Lockdown protocols are now in effect. Please remain calm.","Network Alert:", 1) - src << "Lockdown Initiated. Network reset in 90 seconds." + to_chat(src, "Lockdown Initiated. Network reset in 90 seconds.") addtimer(CALLBACK(GLOBAL_PROC, .proc/minor_announce, "Automatic system reboot complete. Have a secure day.", "Network reset:"), 900) @@ -201,7 +201,7 @@ var/obj/item/weapon/rcd/RCD = I RCD.detonate_pulse() - src << "RCD detonation pulse emitted." + to_chat(src, "RCD detonation pulse emitted.") malf_cooldown = 1 spawn(100) malf_cooldown = 0 @@ -223,7 +223,7 @@ if(stat) return can_dominate_mechs = 1 //Yep. This is all it does. Honk! - src << "Virus package compiled. Select a target mech at any time. You must remain on the station at all times. Loss of signal will result in total system lockout." + to_chat(src, "Virus package compiled. Select a target mech at any time. You must remain on the station at all times. Loss of signal will result in total system lockout.") verbs -= /mob/living/silicon/ai/proc/mech_takeover /datum/AI_Module/large/break_fire_alarms @@ -247,7 +247,7 @@ if(F.z != ZLEVEL_STATION) continue F.emagged = 1 - src << "All thermal sensors on the station have been disabled. Fire alerts will no longer be recognized." + to_chat(src, "All thermal sensors on the station have been disabled. Fire alerts will no longer be recognized.") src.verbs -= /mob/living/silicon/ai/proc/break_fire_alarms /datum/AI_Module/large/break_air_alarms @@ -271,7 +271,7 @@ if(AA.z != ZLEVEL_STATION) continue AA.emagged = 1 - src << "All air alarm safeties on the station have been overriden. Air alarms may now use the Flood environmental mode." + to_chat(src, "All air alarm safeties on the station have been overriden. Air alarms may now use the Flood environmental mode.") src.verbs -= /mob/living/silicon/ai/proc/break_air_alarms /datum/AI_Module/small/overload_machine @@ -295,13 +295,13 @@ if(overload.uses > 0) overload.uses -- M.audible_message("You hear a loud electrical buzzing sound coming from [M]!") - src << "Overloading machine circuitry..." + to_chat(src, "Overloading machine circuitry...") spawn(50) if(M) explosion(get_turf(M), 0,2,3,0) qdel(M) - else src << "Out of uses." - else src << "That's not a machine." + else to_chat(src, "Out of uses.") + else to_chat(src, "That's not a machine.") /datum/AI_Module/small/override_machine module_name = "Machine Override" @@ -322,17 +322,17 @@ if (istype(M, /obj/machinery)) if(!M.can_be_overridden()) - src << "Can't override this device." + to_chat(src, "Can't override this device.") for(var/datum/AI_Module/small/override_machine/override in current_modules) if(override.uses > 0) override.uses -- M.audible_message("You hear a loud electrical buzzing sound!") - src << "Reprogramming machine behaviour..." + to_chat(src, "Reprogramming machine behaviour...") spawn(50) if(M && !QDELETED(M)) new /mob/living/simple_animal/hostile/mimic/copy/machine(get_turf(M), M, src, 1) - else src << "Out of uses." - else src << "That's not a machine." + else to_chat(src, "Out of uses.") + else to_chat(src, "That's not a machine.") /datum/AI_Module/large/place_cyborg_transformer module_name = "Robotic Factory (Removes Shunting)" @@ -363,7 +363,7 @@ var/datum/AI_Module/large/place_cyborg_transformer/PCT = locate() in current_modules PCT.uses -- can_shunt = 0 - src << "You cannot shunt anymore." + to_chat(src, "You cannot shunt anymore.") /mob/living/silicon/ai/proc/canPlaceTransformer() if(!eyeobj || !isturf(src.loc) || !canUseTopic()) @@ -427,8 +427,8 @@ if(prob(30*apc.overload)) apc.overload_lighting() else apc.overload++ - src << "Overcurrent applied to the powernet." - else src << "Out of uses." + to_chat(src, "Overcurrent applied to the powernet.") + else to_chat(src, "Out of uses.") /datum/AI_Module/small/reactivate_cameras module_name = "Reactivate Camera Network" @@ -462,10 +462,10 @@ fixedcams++ //If a camera is both deactivated and has bad focus, it will cost two uses to fully fix! else - src << "Out of uses." + to_chat(src, "Out of uses.") verbs -= /mob/living/silicon/ai/proc/reactivate_cameras //It is useless now, clean it up. break - src << "Diagnostic complete! Operations completed: [fixedcams]." + to_chat(src, "Diagnostic complete! Operations completed: [fixedcams].") malf_cooldown = 1 spawn(30) //Lag protection @@ -509,7 +509,7 @@ if(upgraded) upgradedcams++ - src << "OTA firmware distribution complete! Cameras upgraded: [upgradedcams]. Light amplification system online." + to_chat(src, "OTA firmware distribution complete! Cameras upgraded: [upgradedcams]. Light amplification system online.") verbs -= /mob/living/silicon/ai/proc/upgrade_cameras /datum/module_picker @@ -604,5 +604,5 @@ if(eyeobj) eyeobj.relay_speech = TRUE - src << "OTA firmware distribution complete! Cameras upgraded: Enhanced surveillance package online." + to_chat(src, "OTA firmware distribution complete! Cameras upgraded: Enhanced surveillance package online.") verbs -= /mob/living/silicon/ai/proc/surveillance diff --git a/code/game/gamemodes/meteor/meteor.dm b/code/game/gamemodes/meteor/meteor.dm index 9fd121a7ba..2e54b3c1e9 100644 --- a/code/game/gamemodes/meteor/meteor.dm +++ b/code/game/gamemodes/meteor/meteor.dm @@ -46,9 +46,9 @@ if(survivors) - world << "The following survived the meteor storm:[text]" + to_chat(world, "The following survived the meteor storm:[text]") else - world << "Nobody survived the meteor storm!" + to_chat(world, "Nobody survived the meteor storm!") feedback_set_details("round_end_result","end - evacuation") feedback_set("round_end_result",survivors) diff --git a/code/game/gamemodes/miniantags/abduction/abduction.dm b/code/game/gamemodes/miniantags/abduction/abduction.dm index c54eaf8e30..c1b0998a59 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction.dm @@ -19,10 +19,10 @@ var/finished = 0 /datum/game_mode/abduction/announce() - world << "The current game mode is - Abduction!" - world << "There are alien abductors sent to [station_name()] to perform nefarious experiments!" - world << "Abductors - kidnap the crew and replace their organs with experimental ones." - world << "Crew - don't get abducted and stop the abductors." + to_chat(world, "The current game mode is - Abduction!") + to_chat(world, "There are alien abductors sent to [station_name()] to perform nefarious experiments!") + to_chat(world, "Abductors - kidnap the crew and replace their organs with experimental ones.") + to_chat(world, "Crew - don't get abducted and stop the abductors.") /datum/game_mode/abduction/pre_setup() abductor_teams = max(1, min(max_teams,round(num_players()/config.abductor_scaling_coeff))) @@ -184,9 +184,9 @@ abductor.objectives += team_objectives[team_number] var/team_name = team_names[team_number] - abductor.current << "You are an agent of [team_name]!" - abductor.current << "With the help of your teammate, kidnap and experiment on station crew members!" - abductor.current << "Use your stealth technology and equipment to incapacitate humans for your scientist to retrieve." + to_chat(abductor.current, "You are an agent of [team_name]!") + to_chat(abductor.current, "With the help of your teammate, kidnap and experiment on station crew members!") + to_chat(abductor.current, "Use your stealth technology and equipment to incapacitate humans for your scientist to retrieve.") abductor.announce_objectives() @@ -194,9 +194,9 @@ abductor.objectives += team_objectives[team_number] var/team_name = team_names[team_number] - abductor.current << "You are a scientist of [team_name]!" - abductor.current << "With the help of your teammate, kidnap and experiment on station crew members!" - abductor.current << "Use your tool and ship consoles to support the agent and retrieve human specimens." + to_chat(abductor.current, "You are a scientist of [team_name]!") + to_chat(abductor.current, "With the help of your teammate, kidnap and experiment on station crew members!") + to_chat(abductor.current, "Use your tool and ship consoles to support the agent and retrieve human specimens.") abductor.announce_objectives() @@ -269,9 +269,9 @@ var/datum/objective/objective = team_objectives[team_number] var/team_name = team_names[team_number] if(console.experiment.points >= objective.target_amount) - world << "[team_name] team fulfilled its mission!" + to_chat(world, "[team_name] team fulfilled its mission!") else - world << "[team_name] team failed its mission." + to_chat(world, "[team_name] team failed its mission.") ..() return 1 @@ -289,22 +289,13 @@ text += printplayer(abductee_mind) text += printobjectives(abductee_mind) text += "
" - world << text + to_chat(world, text) //Landmarks // TODO: Split into seperate landmarks for prettier ships /obj/effect/landmark/abductor var/team = 1 -/obj/effect/landmark/abductor/console/New() - var/obj/machinery/abductor/console/c = new /obj/machinery/abductor/console(src.loc) - c.team = team - - spawn(5) // I'd do this properly when i got some time, temporary hack for mappers - c.Setup() - qdel(src) - - /obj/effect/landmark/abductor/agent /obj/effect/landmark/abductor/scientist diff --git a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm index e45c459448..b5f946b18c 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm @@ -56,7 +56,8 @@ M.name_override = disguise.name M.icon = disguise.icon M.icon_state = disguise.icon_state - M.copy_overlays(disguise, TRUE) + M.cut_overlays() + M.add_overlay(disguise.overlays) M.update_inv_hands() /obj/item/clothing/suit/armor/abductor/vest/proc/DeactivateStealth() @@ -91,7 +92,7 @@ /obj/item/clothing/suit/armor/abductor/vest/proc/Adrenaline() if(ishuman(loc)) if(combat_cooldown != initial(combat_cooldown)) - loc << "Combat injection is still recharging." + to_chat(loc, "Combat injection is still recharging.") return var/mob/living/carbon/human/M = loc M.adjustStaminaLoss(-75) @@ -109,7 +110,7 @@ /obj/item/device/abductor/proc/AbductorCheck(user) if(isabductor(user)) return TRUE - user << "You can't figure how this works!" + to_chat(user, "You can't figure how this works!") return FALSE /obj/item/device/abductor/proc/ScientistCheck(user) @@ -132,7 +133,7 @@ if(!AbductorCheck(user)) return if(!ScientistCheck(user)) - user << "You're not trained to use this!" + to_chat(user, "You're not trained to use this!") return if(mode == GIZMO_SCAN) mode = GIZMO_MARK @@ -140,13 +141,13 @@ else mode = GIZMO_SCAN icon_state = "gizmo_scan" - user << "You switch the device to [mode==GIZMO_SCAN? "SCAN": "MARK"] MODE" + to_chat(user, "You switch the device to [mode==GIZMO_SCAN? "SCAN": "MARK"] MODE") /obj/item/device/abductor/gizmo/attack(mob/living/M, mob/user) if(!AbductorCheck(user)) return if(!ScientistCheck(user)) - user << "You're not trained to use this" + to_chat(user, "You're not trained to use this") return switch(mode) if(GIZMO_SCAN) @@ -161,7 +162,7 @@ if(!AbductorCheck(user)) return if(!ScientistCheck(user)) - user << "You're not trained to use this" + to_chat(user, "You're not trained to use this") return switch(mode) if(GIZMO_SCAN) @@ -173,16 +174,16 @@ if(ishuman(target)) if(console!=null) console.AddSnapshot(target) - user << "You scan [target] and add them to the database." + to_chat(user, "You scan [target] and add them to the database.") /obj/item/device/abductor/gizmo/proc/mark(atom/target, mob/living/user) if(marked == target) - user << "This specimen is already marked!" + to_chat(user, "This specimen is already marked!") return if(ishuman(target)) if(isabductor(target)) marked = target - user << "You mark [target] for future retrieval." + to_chat(user, "You mark [target] for future retrieval.") else prepare(target,user) else @@ -190,12 +191,12 @@ /obj/item/device/abductor/gizmo/proc/prepare(atom/target, mob/living/user) if(get_dist(target,user)>1) - user << "You need to be next to the specimen to prepare it for transport!" + to_chat(user, "You need to be next to the specimen to prepare it for transport!") return - user << "You begin preparing [target] for transport..." + to_chat(user, "You begin preparing [target] for transport...") if(do_after(user, 100, target = target)) marked = target - user << "You finish preparing [target] for transport." + to_chat(user, "You finish preparing [target] for transport.") /obj/item/device/abductor/silencer @@ -228,7 +229,7 @@ for(M in view(2,targloc)) if(M == user) continue - user << "You silence [M]'s radio devices." + to_chat(user, "You silence [M]'s radio devices.") radio_off_mob(M) /obj/item/device/abductor/silencer/proc/radio_off_mob(mob/living/carbon/human/M) @@ -322,7 +323,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} if(BATON_PROBE) txt = "probing" - usr << "You switch the baton to [txt] mode." + to_chat(usr, "You switch the baton to [txt] mode.") update_icon() /obj/item/weapon/abductor_baton/update_icon() @@ -401,7 +402,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} add_logs(user, L, "put to sleep") else L.drowsyness += 1 - user << "Sleep inducement works fully only on stunned specimens! " + to_chat(user, "Sleep inducement works fully only on stunned specimens! ") L.visible_message("[user] tried to induce sleep in [L] with [src]!", \ "You suddenly feel drowsy!") @@ -418,12 +419,12 @@ Congratulations! You are now trained for invasive xenobiology research!"} if(!C.handcuffed) C.handcuffed = new /obj/item/weapon/restraints/handcuffs/energy/used(C) C.update_handcuffed() - user << "You handcuff [C]." + to_chat(user, "You handcuff [C].") add_logs(user, C, "handcuffed") else - user << "You fail to handcuff [C]." + to_chat(user, "You fail to handcuff [C].") else - user << "[C] doesn't have two hands..." + to_chat(user, "[C] doesn't have two hands...") /obj/item/weapon/abductor_baton/proc/ProbeAttack(mob/living/L,mob/living/user) L.visible_message("[user] probes [L] with [src]!", \ @@ -443,8 +444,8 @@ Congratulations! You are now trained for invasive xenobiology research!"} else helptext = "Subject suitable for experiments." - user << "Probing result:[species]" - user << "[helptext]" + to_chat(user, "Probing result:[species]") + to_chat(user, "[helptext]") /obj/item/weapon/restraints/handcuffs/energy name = "hard-light energy field" @@ -476,7 +477,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} if(BATON_CUFF) user <<"The baton is in restraining mode." if(BATON_PROBE) - user << "The baton is in probing mode." + to_chat(user, "The baton is in probing mode.") /obj/item/weapon/scalpel/alien @@ -550,7 +551,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} /obj/structure/table_frame/abductor/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wrench)) - user << "You start disassembling [src]..." + to_chat(user, "You start disassembling [src]...") playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 30*I.toolspeed, target = src)) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) @@ -561,9 +562,9 @@ Congratulations! You are now trained for invasive xenobiology research!"} if(istype(I, /obj/item/stack/sheet/mineral/abductor)) var/obj/item/stack/sheet/P = I if(P.get_amount() < 1) - user << "You need one alien alloy sheet to do this!" + to_chat(user, "You need one alien alloy sheet to do this!") return - user << "You start adding [P] to [src]..." + to_chat(user, "You start adding [P] to [src]...") if(do_after(user, 50, target = src)) P.use(1) new /obj/structure/table/abductor(src.loc) @@ -572,10 +573,9 @@ Congratulations! You are now trained for invasive xenobiology research!"} if(istype(I, /obj/item/stack/sheet/mineral/silver)) var/obj/item/stack/sheet/P = I if(P.get_amount() < 1) - user << "You need one sheet of silver to do \ - this!" + to_chat(user, "You need one sheet of silver to do this!") return - user << "You start adding [P] to [src]..." + to_chat(user, "You start adding [P] to [src]...") if(do_after(user, 50, target = src)) P.use(1) new /obj/structure/table/optable/abductor(src.loc) @@ -612,7 +612,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} . = ..() if(iscarbon(AM)) START_PROCESSING(SSobj, src) - AM << "You feel a series of tiny pricks!" + to_chat(AM, "You feel a series of tiny pricks!") /obj/structure/table/optable/abductor/process() . = PROCESS_KILL @@ -654,7 +654,7 @@ Congratulations! You are now trained for invasive xenobiology research!"} if(do_after(user, 40*W.toolspeed, target = src)) if( !WT.isOn() ) return - user << "You disassemble the airlock assembly." + to_chat(user, "You disassemble the airlock assembly.") new /obj/item/stack/sheet/mineral/abductor(get_turf(src), 4) qdel(src) else diff --git a/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm b/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm index e888e2884c..4ca4e47a5b 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction_surgery.dm @@ -36,7 +36,7 @@ IC.Remove(target) return 1 else - user << "You don't find anything in [target]'s [target_zone]!" + to_chat(user, "You don't find anything in [target]'s [target_zone]!") return 1 /datum/surgery_step/gland_insert diff --git a/code/game/gamemodes/miniantags/abduction/gland.dm b/code/game/gamemodes/miniantags/abduction/gland.dm index 925f071f46..0a5b471f1c 100644 --- a/code/game/gamemodes/miniantags/abduction/gland.dm +++ b/code/game/gamemodes/miniantags/abduction/gland.dm @@ -62,7 +62,7 @@ icon_state = "health" /obj/item/organ/heart/gland/heals/activate() - owner << "You feel curiously revitalized." + to_chat(owner, "You feel curiously revitalized.") owner.adjustBruteLoss(-20) owner.adjustOxyLoss(-20) owner.adjustFireLoss(-20) @@ -74,7 +74,7 @@ icon_state = "slime" /obj/item/organ/heart/gland/slime/activate() - owner << "You feel nauseous!" + to_chat(owner, "You feel nauseous!") owner.vomit(20) var/mob/living/simple_animal/slime/Slime @@ -90,13 +90,13 @@ icon_state = "mindshock" /obj/item/organ/heart/gland/mindshock/activate() - owner << "You get a headache." + to_chat(owner, "You get a headache.") var/turf/T = get_turf(owner) for(var/mob/living/carbon/H in orange(4,T)) if(H == owner) continue - H << "You hear a buzz in your head." + to_chat(H, "You hear a buzz in your head.") H.confused += 20 /obj/item/organ/heart/gland/pop @@ -107,7 +107,7 @@ icon_state = "species" /obj/item/organ/heart/gland/pop/activate() - owner << "You feel unlike yourself." + to_chat(owner, "You feel unlike yourself.") var/species = pick(list(/datum/species/lizard,/datum/species/jelly/slime,/datum/species/pod,/datum/species/fly,/datum/species/jelly)) owner.set_species(species) @@ -119,7 +119,7 @@ icon_state = "vent" /obj/item/organ/heart/gland/ventcrawling/activate() - owner << "You feel very stretchy." + to_chat(owner, "You feel very stretchy.") owner.ventcrawler = VENTCRAWLER_ALWAYS @@ -130,7 +130,7 @@ icon_state = "viral" /obj/item/organ/heart/gland/viral/activate() - owner << "You feel sick." + to_chat(owner, "You feel sick.") var/virus_type = pick(/datum/disease/beesease, /datum/disease/brainrot, /datum/disease/magnitis) var/datum/disease/D = new virus_type() D.carrier = 1 @@ -148,7 +148,7 @@ icon_state = "emp" /obj/item/organ/heart/gland/emp/activate() - owner << "You feel a spike of pain in your head." + to_chat(owner, "You feel a spike of pain in your head.") empulse(get_turf(owner), 2, 5, 1) /obj/item/organ/heart/gland/spiderman @@ -158,7 +158,7 @@ icon_state = "spider" /obj/item/organ/heart/gland/spiderman/activate() - owner << "You feel something crawling in your skin." + to_chat(owner, "You feel something crawling in your skin.") owner.faction |= "spiders" new /obj/structure/spider/spiderling(owner.loc) @@ -169,7 +169,7 @@ icon_state = "egg" /obj/item/organ/heart/gland/egg/activate() - owner << "You lay an egg!" + to_chat(owner, "You lay an egg!") var/obj/item/weapon/reagent_containers/food/snacks/egg/egg = new(owner.loc) egg.reagents.add_reagent("sacid",20) egg.desc += " It smells bad." @@ -197,7 +197,7 @@ uses = 1 /obj/item/organ/heart/gland/bodysnatch/activate() - owner << "You feel something moving around inside you..." + to_chat(owner, "You feel something moving around inside you...") //spawn cocoon with clone greytide snpc inside if(ishuman(owner)) var/obj/structure/spider/cocoon/abductor/C = new (get_turf(owner)) @@ -239,10 +239,10 @@ uses = -1 /obj/item/organ/heart/gland/plasma/activate() - owner << "You feel bloated." + to_chat(owner, "You feel bloated.") sleep(150) if(!owner) return - owner << "A massive stomachache overcomes you." + to_chat(owner, "A massive stomachache overcomes you.") sleep(50) if(!owner) return owner.visible_message("[owner] vomits a cloud of plasma!") diff --git a/code/game/gamemodes/miniantags/abduction/machinery/console.dm b/code/game/gamemodes/miniantags/abduction/machinery/console.dm index c4ee16d36f..8c4f390f77 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/console.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/console.dm @@ -4,18 +4,6 @@ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF var/team = 0 -/obj/machinery/abductor/proc/IsAgent(mob/living/carbon/human/H) - if(H.dna.species.id == "abductor") - var/datum/species/abductor/S = H.dna.species - return S.agent - return 0 - -/obj/machinery/abductor/proc/IsScientist(mob/living/carbon/human/H) - if(H.dna.species.id == "abductor") - var/datum/species/abductor/S = H.dna.species - return S.scientist - return 0 - //Console /obj/machinery/abductor/console @@ -23,8 +11,8 @@ desc = "Ship command center." icon = 'icons/obj/abductor.dmi' icon_state = "console" - density = 1 - anchored = 1 + density = TRUE + anchored = TRUE var/obj/item/device/abductor/gizmo/gizmo var/obj/item/clothing/suit/armor/abductor/vest/vest var/obj/machinery/abductor/experiment/experiment @@ -36,7 +24,7 @@ if(..()) return if(!isabductor(user)) - user << "You start mashing alien buttons at random!" + to_chat(user, "You start mashing alien buttons at random!") if(do_after(user,100, target = src)) TeleporterSend() return @@ -86,7 +74,6 @@ dat += "NO AGENT VEST DETECTED" var/datum/browser/popup = new(user, "computer", "Abductor Console", 400, 500) popup.set_content(dat) - popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) popup.open() /obj/machinery/abductor/console/Topic(href, href_list) @@ -116,7 +103,7 @@ Dispense(/obj/item/device/abductor/gizmo) if("vest") Dispense(/obj/item/clothing/suit/armor/abductor/vest) - src.updateUsrDialog() + updateUsrDialog() /obj/machinery/abductor/console/proc/TeleporterRetrieve() @@ -131,30 +118,29 @@ if(vest!=null) vest.flip_mode() -/obj/machinery/abductor/console/proc/SelectDisguise(remote=0) - var/list/entries = list() - var/tempname - var/datum/icon_snapshot/temp - for(var/i = 1; i <= disguises.len; i++) - temp = disguises[i] - tempname = temp.name - entries["[tempname]"] = disguises[i] - var/entry_name = input( "Choose Disguise", "Disguise") in entries - var/datum/icon_snapshot/chosen = entries[entry_name] +/obj/machinery/abductor/console/proc/SelectDisguise(remote = 0) + var/entry_name = input( "Choose Disguise", "Disguise") as null|anything in disguises + var/datum/icon_snapshot/chosen = disguises[entry_name] if(chosen && (remote || in_range(usr,src))) vest.SetDisguise(chosen) /obj/machinery/abductor/console/proc/SetDroppoint(turf/open/location,user) if(!istype(location)) - user << "That place is not safe for the specimen." + to_chat(user, "That place is not safe for the specimen.") return if(pad) pad.teleport_target = location - user << "Location marked as test subject release point." + to_chat(user, "Location marked as test subject release point.") -/obj/machinery/abductor/console/proc/Setup() +/obj/machinery/abductor/console/Initialize(mapload) + if(mapload) + return TRUE //wait for machines list + ..() + + if(!team) + return for(var/obj/machinery/abductor/pad/p in machines) if(p.team == team) @@ -177,22 +163,21 @@ entry.icon = target.icon entry.icon_state = target.icon_state entry.overlays = target.get_overlays_copy(list(HANDS_LAYER)) //ugh - for(var/i=1,i<=disguises.len,i++) - var/datum/icon_snapshot/temp = disguises[i] - if(temp.name == entry.name) - disguises[i] = entry - return - disguises.Add(entry) + //Update old disguise instead of adding new one + if(disguises[entry.name]) + disguises[entry.name] = entry + return + disguises[entry.name] = entry /obj/machinery/abductor/console/attackby(obj/O, mob/user, params) if(istype(O, /obj/item/device/abductor/gizmo)) var/obj/item/device/abductor/gizmo/G = O - user << "You link the tool to the console." + to_chat(user, "You link the tool to the console.") gizmo = G G.console = src else if(istype(O, /obj/item/clothing/suit/armor/abductor/vest)) var/obj/item/clothing/suit/armor/abductor/vest/V = O - user << "You link the vest to the console." + to_chat(user, "You link the vest to the console.") if(istype(vest)) if(vest.flags & NODROP) toggle_vest() @@ -208,7 +193,7 @@ flick("alien-pad", pad) new item(pad.loc) else - new item(src.loc) + new item(loc) else say("Insufficent data!") @@ -216,5 +201,4 @@ vest.flags ^= NODROP var/mob/M = vest.loc if(istype(M)) - M << "[src] is now \ - [vest.flags & NODROP ? "locked" : "unlocked"]." + to_chat(M, "[src] is now [vest.flags & NODROP ? "locked" : "unlocked"].") diff --git a/code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm b/code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm index 5894c4d98b..d006ba0f68 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/dispenser.dm @@ -55,7 +55,6 @@ var/datum/browser/popup = new(user, "glands", "Gland Dispenser", 200, 200) popup.add_head_content(box_css) popup.set_content(dat) - popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) popup.open() return @@ -77,7 +76,7 @@ if(href_list["dispense"]) Dispense(text2num(href_list["dispense"])) - src.updateUsrDialog() + updateUsrDialog() /obj/machinery/abductor/gland_dispenser/proc/Dispense(count) if(amounts[count]>0) diff --git a/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm b/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm index c82a72631e..e4392b507d 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/experiment.dm @@ -46,7 +46,7 @@ var/breakout_time = 600 user.changeNext_move(CLICK_CD_BREAKOUT) user.last_special = world.time + CLICK_CD_BREAKOUT - user << "You lean on the back of [src] and start pushing the door open... (this will take about a minute.)" + to_chat(user, "You lean on the back of [src] and start pushing the door open... (this will take about a minute.)") user.visible_message("You hear a metallic creaking from [src]!") if(do_after(user,(breakout_time), target = src)) @@ -54,7 +54,7 @@ return visible_message("[user] successfully broke out of [src]!") - user << "You successfully break out of [src]!" + to_chat(user, "You successfully break out of [src]!") open_machine() @@ -171,13 +171,13 @@ sleep(5) switch(text2num(type)) if(1) - H << "You feel violated." + to_chat(H, "You feel violated.") if(2) - H << "You feel yourself being sliced apart and put back together." + to_chat(H, "You feel yourself being sliced apart and put back together.") if(3) - H << "You feel intensely watched." + to_chat(H, "You feel intensely watched.") sleep(5) - H << "Your mind snaps!" + to_chat(H, "Your mind snaps!") var/objtype = pick(subtypesof(/datum/objective/abductee/)) var/datum/objective/abductee/O = new objtype() ticker.mode.abductees += H.mind diff --git a/code/game/gamemodes/miniantags/abduction/machinery/pad.dm b/code/game/gamemodes/miniantags/abduction/machinery/pad.dm index 10d22d43c1..57301ee319 100644 --- a/code/game/gamemodes/miniantags/abduction/machinery/pad.dm +++ b/code/game/gamemodes/miniantags/abduction/machinery/pad.dm @@ -17,6 +17,8 @@ for(var/mob/living/target in loc) target.forceMove(teleport_target) new /obj/effect/overlay/temp/dir_setting/ninja(get_turf(target), target.dir) + to_chat(target, "The instability of the warp leaves you disoriented!") + target.Stun(3) /obj/machinery/abductor/pad/proc/Retrieve(mob/living/target) flick("alien-pad", src) diff --git a/code/game/gamemodes/miniantags/borer/borer.dm b/code/game/gamemodes/miniantags/borer/borer.dm index 409ab597b9..a4dda8145f 100644 --- a/code/game/gamemodes/miniantags/borer/borer.dm +++ b/code/game/gamemodes/miniantags/borer/borer.dm @@ -6,7 +6,7 @@ if(client) if(client.prefs.muted & MUTE_IC) - src << "You cannot speak in IC (muted)." + to_chat(src, "You cannot speak in IC (muted).") return if(client.handle_spam_prevention(message,MUTE_IC)) return @@ -21,14 +21,14 @@ return say_dead(message) var/mob/living/simple_animal/borer/B = loc - src << "You whisper silently, \"[message]\"" - B.victim << "The captive mind of [src] whispers, \"[message]\"" + to_chat(src, "You whisper silently, \"[message]\"") + to_chat(B.victim, "The captive mind of [src] whispers, \"[message]\"") for (var/mob/M in player_list) if(isnewplayer(M)) continue else if(M.stat == 2 && M.client.prefs.toggles & CHAT_GHOSTEARS) - M << "Thought-speech, [src] -> [B.truename]: [message]" + to_chat(M, "Thought-speech, [src] -> [B.truename]: [message]") /mob/living/captive_brain/emote(var/message) return @@ -37,8 +37,8 @@ var/mob/living/simple_animal/borer/B = loc - src << "You begin doggedly resisting the parasite's control (this will take approximately 40 seconds)." - B.victim << "You feel the captive mind of [src] begin to resist your control." + to_chat(src, "You begin doggedly resisting the parasite's control (this will take approximately 40 seconds).") + to_chat(B.victim, "You feel the captive mind of [src] begin to resist your control.") var/delay = rand(150,250) + B.victim.brainloss addtimer(CALLBACK(src, .proc/return_control, src.loc), delay) @@ -48,8 +48,8 @@ return B.victim.adjustBrainLoss(rand(5,10)) - src << "With an immense exertion of will, you regain control of your body!" - B.victim << "You feel control of the host brain ripped from your grasp, and retract your probosci before the wild neural impulses can damage you." + to_chat(src, "With an immense exertion of will, you regain control of your body!") + to_chat(B.victim, "You feel control of the host brain ripped from your grasp, and retract your probosci before the wild neural impulses can damage you.") B.detatch() var/list/mob/living/simple_animal/borer/borers = list() @@ -110,8 +110,8 @@ var/total_borer_hosts_needed = 10 var/datum/action/innate/borer/punish_victim/punish_victim_action = new var/datum/action/innate/borer/jumpstart_host/jumpstart_host_action = new -/mob/living/simple_animal/borer/New(atom/newloc, var/gen=1) - ..(newloc) +/mob/living/simple_animal/borer/Initialize(mapload, gen=1) + ..() generation = gen notify_ghosts("A cortical borer has been created in [get_area(src)]!", enter_link = "(Click to enter)", source = src, action = NOTIFY_ATTACK) real_name = "Cortical Borer [rand(1000,9999)]" @@ -128,8 +128,6 @@ var/total_borer_hosts_needed = 10 //borer_chems += /datum/borer_chem/creagent borer_chems += /datum/borer_chem/ethanol borer_chems += /datum/borer_chem/rezadone - borer_chems += /datum/borer_chem/aphrodisiac - borer_chems += /datum/borer_chem/anaphrodisiac borers += src @@ -169,11 +167,11 @@ var/total_borer_hosts_needed = 10 set desc = "Send a silent message to your host." if(!victim) - src << "You do not have a host to communicate with!" + to_chat(src, "You do not have a host to communicate with!") return if(stat) - src << "You cannot do that in your current state." + to_chat(src, "You cannot do that in your current state.") return var/input = stripped_input(src, "Please enter a message to tell your host.", "Borer", null) @@ -183,14 +181,14 @@ var/total_borer_hosts_needed = 10 if(src && !QDELETED(src) && !QDELETED(victim)) var/say_string = (docile) ? "slurs" :"states" if(victim) - victim << "[truename] [say_string]: [input]" + to_chat(victim, "[truename] [say_string]: [input]") log_say("Borer Communication: [key_name(src)] -> [key_name(victim)] : [input]") for(var/M in dead_mob_list) if(isobserver(M)) var/rendered = "Borer Communication from [truename] : [input]" var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" - src << "[truename] [say_string]: [input]" + to_chat(M, "[link] [rendered]") + to_chat(src, "[truename] [say_string]: [input]") victim.verbs += /mob/living/proc/borer_comm talk_to_borer_action.Grant(victim) @@ -208,15 +206,15 @@ var/total_borer_hosts_needed = 10 if(!input) return - B << "[src] says: [input]" + to_chat(B, "[src] says: [input]") log_say("Borer Communication: [key_name(src)] -> [key_name(B)] : [input]") for(var/M in dead_mob_list) if(isobserver(M)) var/rendered = "Borer Communication from [src] : [input]" var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" - src << "[src] says: [input]" + to_chat(M, "[link] [rendered]") + to_chat(src, "[src] says: [input]") /mob/living/proc/trapped_mind_comm() set name = "Converse with Trapped Mind" @@ -232,15 +230,15 @@ var/total_borer_hosts_needed = 10 if(!input) return - CB << "[B.truename] says: [input]" + to_chat(CB, "[B.truename] says: [input]") log_say("Borer Communication: [key_name(B)] -> [key_name(CB)] : [input]") for(var/M in dead_mob_list) if(isobserver(M)) var/rendered = "Borer Communication from [B] : [input]" var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" - src << "[B.truename] says: [input]" + to_chat(M, "[link] [rendered]") + to_chat(src, "[B.truename] says: [input]") /mob/living/simple_animal/borer/Life() @@ -260,9 +258,9 @@ var/total_borer_hosts_needed = 10 if(victim.reagents.has_reagent("sugar")) if(!docile || waketimerid) if(controlling) - victim << "You feel the soporific flow of sugar in your host's blood, lulling you into docility." + to_chat(victim, "You feel the soporific flow of sugar in your host's blood, lulling you into docility.") else - src << "You feel the soporific flow of sugar in your host's blood, lulling you into docility." + to_chat(src, "You feel the soporific flow of sugar in your host's blood, lulling you into docility.") if(waketimerid) deltimer(waketimerid) waketimerid = null @@ -270,15 +268,15 @@ var/total_borer_hosts_needed = 10 else if(docile && !waketimerid) if(controlling) - victim << "You start shaking off your lethargy as the sugar leaves your host's blood. This will take about 10 seconds..." + to_chat(victim, "You start shaking off your lethargy as the sugar leaves your host's blood. This will take about 10 seconds...") else - src << "You start shaking off your lethargy as the sugar leaves your host's blood. This will take about 10 seconds..." + to_chat(src, "You start shaking off your lethargy as the sugar leaves your host's blood. This will take about 10 seconds...") waketimerid = addtimer(CALLBACK(src, "wakeup"), 10, TIMER_STOPPABLE) if(controlling) if(docile) - victim << "You are feeling far too docile to continue controlling your host..." + to_chat(victim, "You are feeling far too docile to continue controlling your host...") victim.release_control() return @@ -290,9 +288,9 @@ var/total_borer_hosts_needed = 10 /mob/living/simple_animal/borer/proc/wakeup() if(controlling) - victim << "You finish shaking off your lethargy." + to_chat(victim, "You finish shaking off your lethargy.") else - src << "You finish shaking off your lethargy." + to_chat(src, "You finish shaking off your lethargy.") docile = FALSE if(waketimerid) waketimerid = null @@ -301,12 +299,12 @@ var/total_borer_hosts_needed = 10 if(dd_hasprefix(message, ";")) message = copytext(message,2) for(var/borer in borers) - borer << "Cortical Link: [truename] sings, \"[message]\"" - for(var/mob/dead in dead_mob_list) - dead << "Cortical Link: [truename] sings, \"[message]\"" + to_chat(borer, "Cortical Link: [truename] sings, \"[message]\"") + for(var/mob/D in dead_mob_list) + to_chat(D, "Cortical Link: [truename] sings, \"[message]\"") return if(!victim) - src << "You cannot speak without a host!" + to_chat(src, "You cannot speak without a host!") return if(message == "") return @@ -328,7 +326,7 @@ var/total_borer_hosts_needed = 10 set desc = "Infest a suitable humanoid host." if(victim) - src << "You are already within a host." + to_chat(src, "You are already within a host.") if(stat == DEAD) return @@ -346,16 +344,16 @@ var/total_borer_hosts_needed = 10 return FALSE if(stat != CONSCIOUS) - src << "You cannot do that in your current state." + to_chat(src, "You cannot do that in your current state.") return FALSE if(H.has_brain_worms()) - src << "[victim] is already infested!" + to_chat(src, "[victim] is already infested!") return - src << "You slither up [H] and begin probing at their ear canal..." + to_chat(src, "You slither up [H] and begin probing at their ear canal...") if(!do_mob(src, H, 30)) - src << "As [H] moves away, you are dislodged and fall to the ground." + to_chat(src, "As [H] moves away, you are dislodged and fall to the ground.") return if(!H || !src) @@ -369,15 +367,15 @@ var/total_borer_hosts_needed = 10 return if(C.has_brain_worms()) - src << "[C] is already infested!" + to_chat(src, "[C] is already infested!") return if(!C.key || !C.mind) - src << "[C]'s mind seems unresponsive. Try someone else!" + to_chat(src, "[C]'s mind seems unresponsive. Try someone else!") return if(C && C.dna && istype(C.dna.species, /datum/species/skeleton)) - src << "[C] does not possess the vital systems needed to support us." + to_chat(src, "[C] does not possess the vital systems needed to support us.") return victim = C @@ -394,14 +392,14 @@ var/total_borer_hosts_needed = 10 set desc = "Push some chemicals into your host's bloodstream." if(!victim) - src << "You are not inside a host body." + to_chat(src, "You are not inside a host body.") return if(stat != CONSCIOUS) - src << "You cannot secrete chemicals in your current state." + to_chat(src, "You cannot secrete chemicals in your current state.") if(docile) - src << "You are feeling far too docile to do that." + to_chat(src, "You are feeling far too docile to do that.") return var content = "" @@ -429,7 +427,7 @@ var/total_borer_hosts_needed = 10 set desc = "Become invisible to the common eye." if(victim) - src << "You cannot do this while you're inside a host." + to_chat(src, "You cannot do this while you're inside a host.") if(stat != CONSCIOUS) return @@ -451,15 +449,15 @@ var/total_borer_hosts_needed = 10 set desc = "Freeze the limbs of a potential host with supernatural fear." if(world.time - used_dominate < 150) - src << "You cannot use that ability again so soon." + to_chat(src, "You cannot use that ability again so soon.") return if(victim) - src << "You cannot do that from within a host body." + to_chat(src, "You cannot do that from within a host body.") return if(stat != CONSCIOUS) - src << "You cannot do that in your current state." + to_chat(src, "You cannot do that in your current state.") return var/list/choices = list() @@ -476,13 +474,13 @@ var/total_borer_hosts_needed = 10 return if(M.has_brain_worms()) - src << "You cannot paralyze someone who is already infested!" + to_chat(src, "You cannot paralyze someone who is already infested!") return layer = MOB_LAYER - src << "You focus your psychic lance on [M] and freeze their limbs with a wave of terrible dread." - M << "You feel a creeping, horrible sense of dread come over you, freezing your limbs and setting your heart racing." + to_chat(src, "You focus your psychic lance on [M] and freeze their limbs with a wave of terrible dread.") + to_chat(M, "You feel a creeping, horrible sense of dread come over you, freezing your limbs and setting your heart racing.") M.Stun(3) used_dominate = world.time @@ -493,21 +491,21 @@ var/total_borer_hosts_needed = 10 set desc = "Slither out of your host." if(!victim) - src << "You are not inside a host body." + to_chat(src, "You are not inside a host body.") return if(stat != CONSCIOUS) - src << "You cannot leave your host in your current state." + to_chat(src, "You cannot leave your host in your current state.") if(leaving) leaving = FALSE - src << "You decide against leaving your host." + to_chat(src, "You decide against leaving your host.") return - src << "You begin disconnecting from [victim]'s synapses and prodding at their internal ear canal." + to_chat(src, "You begin disconnecting from [victim]'s synapses and prodding at their internal ear canal.") if(victim.stat != DEAD) - victim << "An odd, uncomfortable pressure begins to build inside your skull, behind your ear..." + to_chat(victim, "An odd, uncomfortable pressure begins to build inside your skull, behind your ear...") leaving = TRUE @@ -522,13 +520,13 @@ var/total_borer_hosts_needed = 10 return if(stat != CONSCIOUS) - src << "You cannot release your host in your current state." + to_chat(src, "You cannot release your host in your current state.") return - src << "You wiggle out of [victim]'s ear and plop to the ground." + to_chat(src, "You wiggle out of [victim]'s ear and plop to the ground.") if(victim.mind) - victim << "Something slimy wiggles out of your ear and plops to the ground!" - victim << "As though waking from a dream, you shake off the insidious mind control of the brain worm. Your thoughts are your own again." + to_chat(victim, "Something slimy wiggles out of your ear and plops to the ground!") + to_chat(victim, "As though waking from a dream, you shake off the insidious mind control of the brain worm. Your thoughts are your own again.") leaving = FALSE @@ -564,19 +562,19 @@ var/total_borer_hosts_needed = 10 set desc = "Bring your host back to life." if(!victim) - src << "You need a host to be able to use this." + to_chat(src, "You need a host to be able to use this.") return if(docile) - src << "You are feeling too docile to use this!" + to_chat(src, "You are feeling too docile to use this!") return if(victim.stat != DEAD) - src << "Your host is already alive!" + to_chat(src, "Your host is already alive!") return if(chemicals < 250) - src << "You need 250 chemicals to use this!" + to_chat(src, "You need 250 chemicals to use this!") return if(victim.stat == DEAD) @@ -597,7 +595,7 @@ var/total_borer_hosts_needed = 10 victim.revive() log_game("[src]/([src.ckey]) has revived [victim]/([victim.ckey]") chemicals -= 250 - src << "You send a jolt of energy to your host, reviving them!" + to_chat(src, "You send a jolt of energy to your host, reviving them!") victim.grab_ghost(force = TRUE) //brings the host back, no eggscape victim <<"You bolt upright, gasping for breath!" @@ -607,27 +605,27 @@ var/total_borer_hosts_needed = 10 set desc = "Fully connect to the brain of your host." if(!victim) - src << "You are not inside a host body." + to_chat(src, "You are not inside a host body.") return if(stat != CONSCIOUS) - src << "You cannot do that in your current state." + to_chat(src, "You cannot do that in your current state.") return if(docile) - src << "You are feeling far too docile to do that." + to_chat(src, "You are feeling far too docile to do that.") return if(victim.stat == DEAD) - src << "This host lacks enough brain function to control." + to_chat(src, "This host lacks enough brain function to control.") return if(bonding) bonding = FALSE - src << "You stop attempting to take control of your host." + to_chat(src, "You stop attempting to take control of your host.") return - src << "You begin delicately adjusting your connection to the host brain..." + to_chat(src, "You begin delicately adjusting your connection to the host brain...") if(QDELETED(src) || QDELETED(victim)) return @@ -646,14 +644,14 @@ var/total_borer_hosts_needed = 10 src <<"You are feeling far too docile to do that." return if(is_servant_of_ratvar(victim) || iscultist(victim) || victim.isloyal()) - src << "[victim]'s mind seems to be blocked by some unknown force!" + to_chat(src, "[victim]'s mind seems to be blocked by some unknown force!") return else log_game("[src]/([src.ckey]) assumed control of [victim]/([victim.ckey] with borer powers.") - src << "You plunge your probosci deep into the cortex of the host brain, interfacing directly with their nervous system." - victim << "You feel a strange shifting sensation behind your eyes as an alien consciousness displaces yours." + to_chat(src, "You plunge your probosci deep into the cortex of the host brain, interfacing directly with their nervous system.") + to_chat(victim, "You feel a strange shifting sensation behind your eyes as an alien consciousness displaces yours.") // host -> brain var/h2b_id = victim.computer_id @@ -677,7 +675,7 @@ var/total_borer_hosts_needed = 10 if(!host_brain.lastKnownIP) host_brain.lastKnownIP = h2b_ip - host_brain << "You are trapped in your own mind. You feel that there must be a way to resist!" + to_chat(host_brain, "You are trapped in your own mind. You feel that there must be a way to resist!") // self -> host var/s2h_id = src.computer_id @@ -712,19 +710,19 @@ var/total_borer_hosts_needed = 10 set desc = "Punish your victim." if(!victim) - src << "You are not inside a host body." + to_chat(src, "You are not inside a host body.") return if(stat != CONSCIOUS) - src << "You cannot do that in your current state." + to_chat(src, "You cannot do that in your current state.") return if(docile) - src << "You are feeling far too docile to do that." + to_chat(src, "You are feeling far too docile to do that.") return if(chemicals < 75) - src << "You need 75 chems to punish your host." + to_chat(src, "You need 75 chems to punish your host.") return var/punishment = input("Select a punishment:.", "Punish") as null|anything in list("Blindness","Deafness","Stun") @@ -733,7 +731,7 @@ var/total_borer_hosts_needed = 10 return if(chemicals < 75) - src << "You need 75 chems to punish your host." + to_chat(src, "You need 75 chems to punish your host.") return switch(punishment) //Hardcoding this stuff. @@ -757,7 +755,7 @@ var/total_borer_hosts_needed = 10 var/mob/living/simple_animal/borer/B = has_brain_worms() if(B && B.host_brain) - src << "You withdraw your probosci, releasing control of [B.host_brain]" + to_chat(src, "You withdraw your probosci, releasing control of [B.host_brain]") B.detatch() @@ -778,7 +776,7 @@ var/total_borer_hosts_needed = 10 var/mob/living/simple_animal/borer/B = has_brain_worms() if(isbrain(src)) - src << "You need a mouth to be able to do this." + to_chat(src, "You need a mouth to be able to do this.") return if(!B) return @@ -792,7 +790,7 @@ var/total_borer_hosts_needed = 10 new /mob/living/simple_animal/borer(get_turf(src), B.generation + 1) log_game("[src]/([src.ckey]) has spawned a new borer via reproducing.") else - src << "You need 200 chemicals stored to reproduce." + to_chat(src, "You need 200 chemicals stored to reproduce.") return @@ -810,11 +808,11 @@ var/total_borer_hosts_needed = 10 if(mind) mind.store_memory("You must escape with at least [total_borer_hosts_needed] borers with hosts on the shuttle.") - src << "You are a cortical borer!" - src << "You are a brain slug that worms its way into the head of its victim. Use stealth, persuasion and your powers of mind control to keep you, your host and your eventual spawn safe and warm." - src << "Sugar nullifies your abilities, avoid it at all costs!" - src << "You can speak to your fellow borers by prefixing your messages with ';'. Check out your Borer tab to see your abilities." - src << "You must escape with at least [total_borer_hosts_needed] borers with hosts on the shuttle. To reproduce you must have 100 chemicals and be controlling a host." + to_chat(src, "You are a cortical borer!") + to_chat(src, "You are a brain slug that worms its way into the head of its victim. Use stealth, persuasion and your powers of mind control to keep you, your host and your eventual spawn safe and warm.") + to_chat(src, "Sugar nullifies your abilities, avoid it at all costs!") + to_chat(src, "You can speak to your fellow borers by prefixing your messages with ';'. Check out your Borer tab to see your abilities.") + to_chat(src, "You must escape with at least [total_borer_hosts_needed] borers with hosts on the shuttle. To reproduce you must have 100 chemicals and be controlling a host.") /mob/living/simple_animal/borer/proc/detatch() if(!victim || !controlling) diff --git a/code/game/gamemodes/miniantags/borer/borer_chemicals.dm b/code/game/gamemodes/miniantags/borer/borer_chemicals.dm index 7525873888..c45de46524 100644 --- a/code/game/gamemodes/miniantags/borer/borer_chemicals.dm +++ b/code/game/gamemodes/miniantags/borer/borer_chemicals.dm @@ -4,14 +4,6 @@ var/chemuse = 30 var/quantity = 10 -/datum/borer_chem/aphrodisiac - chemname = "aphro" - chem_desc = "Increases arousal in host, if they're not in the mood yet." - -/datum/borer_chem/anaphrodisiac - chemname = "anaphro" - chem_desc = "Decreases arousal in host, if they're getting a bit too frisky." - /datum/borer_chem/epinephrine chemname = "epinephrine" chem_desc = "Stabilizes critical condition and slowly restores oxygen damage. If overdosed, it will deal toxin and oxyloss damage." diff --git a/code/game/gamemodes/miniantags/borer/borer_topic.dm b/code/game/gamemodes/miniantags/borer/borer_topic.dm index c9c3c055a7..b373a1c025 100644 --- a/code/game/gamemodes/miniantags/borer/borer_topic.dm +++ b/code/game/gamemodes/miniantags/borer/borer_topic.dm @@ -24,10 +24,10 @@ return if(chemicals < C.chemuse) - src << "You need [C.chemuse] chemicals stored to use this chemical!" + to_chat(src, "You need [C.chemuse] chemicals stored to use this chemical!") return - src << "You squirt a measure of [C.chemname] from your reservoirs into [victim]'s bloodstream." + to_chat(src, "You squirt a measure of [C.chemname] from your reservoirs into [victim]'s bloodstream.") victim.reagents.add_reagent(C.chemname, C.quantity) chemicals -= C.chemuse log_game("[src]/([src.ckey]) has injected [C.chemname] into their host [victim]/([victim.ckey])") diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm index 2a86b4766f..36c9fe01ea 100644 --- a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm +++ b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm @@ -8,7 +8,7 @@ materials = list(MAT_METAL=10000, MAT_GLASS=4000) -/obj/item/device/unactivated_swarmer/New() +/obj/item/device/unactivated_swarmer/Initialize() if(!crit_fail) notify_ghosts("An unactivated swarmer has been created in [get_area(src)]!", enter_link = "(Click to enter)", source = src, action = NOTIFY_ATTACK) ..() @@ -31,17 +31,17 @@ /obj/item/device/unactivated_swarmer/attack_ghost(mob/user) if(crit_fail) - user << "This swarmer shell is completely depowered. You cannot activate it." + to_chat(user, "This swarmer shell is completely depowered. You cannot activate it.") return var/be_swarmer = alert("Become a swarmer? (Warning, You can no longer be cloned!)",,"Yes","No") if(be_swarmer == "No") return if(crit_fail) - user << "Swarmer has been depowered." + to_chat(user, "Swarmer has been depowered.") return if(QDELETED(src)) - user << "Swarmer has been occupied by someone else." + to_chat(user, "Swarmer has been occupied by someone else.") return var/mob/living/simple_animal/hostile/swarmer/S = new /mob/living/simple_animal/hostile/swarmer(get_turf(loc)) S.key = user.key @@ -88,7 +88,7 @@ attacktext = "shocks" attack_sound = 'sound/effects/EMPulse.ogg' friendly = "pinches" - speed = 0 + speed = 1 faction = list("swarmer") AIStatus = AI_OFF pass_flags = PASSTABLE @@ -101,6 +101,7 @@ loot = list(/obj/effect/decal/cleanable/robot_debris, /obj/item/weapon/ore/bluespace_crystal) del_on_death = 1 deathmessage = "explodes with a sharp pop!" + light_color = LIGHT_COLOR_CYAN var/resources = 0 //Resource points, generated by consuming metal/glass var/max_resources = 100 var/login_text_dump = {" @@ -115,9 +116,9 @@ /mob/living/simple_animal/hostile/swarmer/Login() ..() - src << login_text_dump + to_chat(src, login_text_dump) -/mob/living/simple_animal/hostile/swarmer/New() +/mob/living/simple_animal/hostile/swarmer/Initialize() ..() verbs -= /mob/living/verb/pulled var/datum/atom_hud/data/diagnostic/diag_hud = huds[DATA_HUD_DIAGNOSTIC] @@ -268,7 +269,7 @@ var/isonshuttle = istype(get_area(src), /area/shuttle) for(var/turf/T in range(1, src)) if(isspaceturf(T) || (!isonshuttle && (istype(T.loc, /area/shuttle) || istype(T.loc, /area/space))) || (isonshuttle && !istype(T.loc, /area/shuttle))) - S << "Destroying this object has the potential to cause a hull breach. Aborting." + to_chat(S, "Destroying this object has the potential to cause a hull breach. Aborting.") S.target = null return FALSE S.DisIntegrate(src) @@ -300,62 +301,62 @@ return TRUE /obj/machinery/chem_dispenser/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "The volatile chemicals in this machine would destroy us. Aborting." + to_chat(S, "The volatile chemicals in this machine would destroy us. Aborting.") return FALSE /obj/machinery/nuclearbomb/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This device's destruction would result in the extermination of everything in the area. Aborting." + to_chat(S, "This device's destruction would result in the extermination of everything in the area. Aborting.") return FALSE /obj/machinery/dominator/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This device is attempting to corrupt our entire network; attempting to interact with it is too risky. Aborting." + to_chat(S, "This device is attempting to corrupt our entire network; attempting to interact with it is too risky. Aborting.") return FALSE /obj/effect/decal/cleanable/crayon/gang/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "Searching... sensor malfunction! Target lost. Aborting." + to_chat(S, "Searching... sensor malfunction! Target lost. Aborting.") return FALSE /obj/effect/rune/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "Searching... sensor malfunction! Target lost. Aborting." + to_chat(S, "Searching... sensor malfunction! Target lost. Aborting.") return FALSE /obj/structure/reagent_dispensers/fueltank/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "Destroying this object would cause a chain reaction. Aborting." + to_chat(S, "Destroying this object would cause a chain reaction. Aborting.") return FALSE /obj/structure/cable/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "Disrupting the power grid would bring no benefit to us. Aborting." + to_chat(S, "Disrupting the power grid would bring no benefit to us. Aborting.") return FALSE /obj/machinery/portable_atmospherics/canister/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "An inhospitable area may be created as a result of destroying this object. Aborting." + to_chat(S, "An inhospitable area may be created as a result of destroying this object. Aborting.") return FALSE /obj/machinery/telecomms/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This communications relay should be preserved, it will be a useful resource to our masters in the future. Aborting." + to_chat(S, "This communications relay should be preserved, it will be a useful resource to our masters in the future. Aborting.") return FALSE /obj/machinery/message_server/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This communications relay should be preserved, it will be a useful resource to our masters in the future. Aborting." + to_chat(S, "This communications relay should be preserved, it will be a useful resource to our masters in the future. Aborting.") return FALSE /obj/machinery/deepfryer/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This kitchen appliance should be preserved, it will make delicious unhealthy snacks for our masters in the future. Aborting." + to_chat(S, "This kitchen appliance should be preserved, it will make delicious unhealthy snacks for our masters in the future. Aborting.") return FALSE /obj/machinery/power/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "Disrupting the power grid would bring no benefit to us. Aborting." + to_chat(S, "Disrupting the power grid would bring no benefit to us. Aborting.") return FALSE /obj/machinery/gateway/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This bluespace source will be important to us later. Aborting." + to_chat(S, "This bluespace source will be important to us later. Aborting.") return FALSE /turf/closed/wall/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) var/isonshuttle = istype(loc, /area/shuttle) for(var/turf/T in range(1, src)) if(isspaceturf(T) || (!isonshuttle && (istype(T.loc, /area/shuttle) || istype(T.loc, /area/space))) || (isonshuttle && !istype(T.loc, /area/shuttle))) - S << "Destroying this object has the potential to cause a hull breach. Aborting." + to_chat(S, "Destroying this object has the potential to cause a hull breach. Aborting.") S.target = null return TRUE return ..() @@ -364,17 +365,17 @@ var/isonshuttle = istype(get_area(src), /area/shuttle) for(var/turf/T in range(1, src)) if(isspaceturf(T) || (!isonshuttle && (istype(T.loc, /area/shuttle) || istype(T.loc, /area/space))) || (isonshuttle && !istype(T.loc, /area/shuttle))) - S << "Destroying this object has the potential to cause a hull breach. Aborting." + to_chat(S, "Destroying this object has the potential to cause a hull breach. Aborting.") S.target = null return TRUE return ..() /obj/item/stack/cable_coil/swarmer_act(mob/living/simple_animal/hostile/swarmer/S)//Wiring would be too effective as a resource - S << "This object does not contain enough materials to work with." + to_chat(S, "This object does not contain enough materials to work with.") return FALSE /obj/machinery/porta_turret/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "Attempting to dismantle this machine would result in an immediate counterattack. Aborting." + to_chat(S, "Attempting to dismantle this machine would result in an immediate counterattack. Aborting.") return FALSE /mob/living/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) @@ -382,15 +383,15 @@ return TRUE /mob/living/simple_animal/slime/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This biological resource is somehow resisting our bluespace transceiver. Aborting." + to_chat(S, "This biological resource is somehow resisting our bluespace transceiver. Aborting.") return FALSE /obj/machinery/droneDispenser/swarmer/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This object is receiving unactivated swarmer shells to help us. Aborting." + to_chat(S, "This object is receiving unactivated swarmer shells to help us. Aborting.") return FALSE /obj/structure/destructible/clockwork/massive/celestial_gateway/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This object is multiplying existing resources. Aborting." + to_chat(S, "This object is multiplying existing resources. Aborting.") return FALSE /obj/structure/lattice/catwalk/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) @@ -399,7 +400,7 @@ for(var/A in here.contents) var/obj/structure/cable/C = A if(istype(C)) - S << "Disrupting the power grid would bring no benefit to us. Aborting." + to_chat(S, "Disrupting the power grid would bring no benefit to us. Aborting.") return FALSE @@ -411,25 +412,25 @@ return 50 /obj/machinery/hydroponics/soil/swarmer_act(mob/living/simple_animal/hostile/swarmer/S) - S << "This object does not contain enough materials to work with." + to_chat(S, "This object does not contain enough materials to work with.") return FALSE ////END CTRL CLICK FOR SWARMERS//// /mob/living/simple_animal/hostile/swarmer/proc/Fabricate(atom/fabrication_object,fabrication_cost = 0) if(!isturf(loc)) - src << "This is not a suitable location for fabrication. We need more space." + to_chat(src, "This is not a suitable location for fabrication. We need more space.") if(resources >= fabrication_cost) resources -= fabrication_cost else - src << "You do not have the necessary resources to fabricate this object." + to_chat(src, "You do not have the necessary resources to fabricate this object.") return 0 return new fabrication_object(loc) /mob/living/simple_animal/hostile/swarmer/proc/Integrate(obj/item/target) var/resource_gain = target.IntegrateAmount() if(resources + resource_gain > max_resources) - src << "We cannot hold more materials!" + to_chat(src, "We cannot hold more materials!") return TRUE if(resource_gain) resources += resource_gain @@ -447,7 +448,7 @@ qdel(target) return TRUE else - src << "\the [target] is incompatible with our internal matter recycler." + to_chat(src, "\the [target] is incompatible with our internal matter recycler.") return FALSE @@ -463,13 +464,10 @@ return if(z != ZLEVEL_STATION && z != ZLEVEL_LAVALAND) - src << "Our bluespace transceiver cannot \ - locate a viable bluespace link, our teleportation abilities \ - are useless in this area." + to_chat(src, "Our bluespace transceiver cannot locate a viable bluespace link, our teleportation abilities are useless in this area.") return - src << "Attempting to remove this being from \ - our presence." + to_chat(src, "Attempting to remove this being from our presence.") if(!do_mob(src, target, 30)) return @@ -499,13 +497,13 @@ /mob/living/simple_animal/hostile/swarmer/proc/DismantleMachine(obj/machinery/target) do_attack_animation(target) - src << "We begin to dismantle this machine. We will need to be uninterrupted." + to_chat(src, "We begin to dismantle this machine. We will need to be uninterrupted.") var/obj/effect/overlay/temp/swarmer/dismantle/D = new /obj/effect/overlay/temp/swarmer/dismantle(get_turf(target)) D.pixel_x = target.pixel_x D.pixel_y = target.pixel_y D.pixel_z = target.pixel_z if(do_mob(src, target, 100)) - src << "Dismantling complete." + to_chat(src, "Dismantling complete.") var/obj/item/stack/sheet/metal/M = new /obj/item/stack/sheet/metal(target.loc) M.amount = 5 for(var/obj/item/I in target.component_parts) @@ -550,11 +548,16 @@ icon_state = "ui_light" layer = MOB_LAYER resistance_flags = FIRE_PROOF | UNACIDABLE | ACID_PROOF - luminosity = 1 + var/lon_range = 1 + light_color = LIGHT_COLOR_CYAN obj_integrity = 30 max_integrity = 30 anchored = 1 +/obj/structure/swarmer/Initialize(mapload) + ..() + set_light(lon_range) + /obj/structure/swarmer/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) switch(damage_type) if(BRUTE) @@ -589,7 +592,7 @@ set category = "Swarmer" set desc = "Creates a simple trap that will non-lethally electrocute anything that steps on it. Costs 5 resources" if(locate(/obj/structure/swarmer/trap) in loc) - src << "There is already a trap here. Aborting." + to_chat(src, "There is already a trap here. Aborting.") return Fabricate(/obj/structure/swarmer/trap, 5) @@ -599,10 +602,10 @@ set category = "Swarmer" set desc = "Creates a barricade that will stop anything but swarmers and disabler beams from passing through." if(locate(/obj/structure/swarmer/blockade) in loc) - src << "There is already a blockade here. Aborting." + to_chat(src, "There is already a blockade here. Aborting.") return if(resources < 5) - src << "We do not have the resources for this!" + to_chat(src, "We do not have the resources for this!") return if(do_mob(src, src, 10)) Fabricate(/obj/structure/swarmer/blockade, 5) @@ -612,7 +615,7 @@ name = "swarmer blockade" desc = "A quickly assembled energy blockade. Will not retain its form if damaged enough, but disabler beams and swarmers pass right through." icon_state = "barricade" - luminosity = 1 + light_range = 1 obj_integrity = 50 max_integrity = 50 @@ -626,12 +629,12 @@ set name = "Replicate" set category = "Swarmer" set desc = "Creates a shell for a new swarmer. Swarmers will self activate." - src << "We are attempting to replicate ourselves. We will need to stand still until the process is complete." + to_chat(src, "We are attempting to replicate ourselves. We will need to stand still until the process is complete.") if(resources < 50) - src << "We do not have the resources for this!" + to_chat(src, "We do not have the resources for this!") return if(!isturf(loc)) - src << "This is not a suitable location for replicating ourselves. We need more room." + to_chat(src, "This is not a suitable location for replicating ourselves. We need more room.") return if(do_mob(src, src, 100)) var/createtype = SwarmerTypeToCreate() @@ -649,25 +652,25 @@ set desc = "Attempts to repair damage to our body. You will have to remain motionless until repairs are complete." if(!isturf(loc)) return - src << "Attempting to repair damage to our body, stand by..." + to_chat(src, "Attempting to repair damage to our body, stand by...") if(do_mob(src, src, 100)) adjustHealth(-100) - src << "We successfully repaired ourselves." + to_chat(src, "We successfully repaired ourselves.") /mob/living/simple_animal/hostile/swarmer/proc/ToggleLight() - if(!luminosity) - SetLuminosity(3) + if(!light_range) + set_light(3) else - SetLuminosity(0) + set_light(0) /mob/living/simple_animal/hostile/swarmer/proc/swarmer_chat(msg) var/rendered = "Swarm communication - [src] [say_quote(msg, get_spans())]" for(var/mob/M in mob_list) if(isswarmer(M)) - M << rendered + to_chat(M, rendered) if(isobserver(M)) var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" + to_chat(M, "[link] [rendered]") /mob/living/simple_animal/hostile/swarmer/proc/ContactSwarmers() var/message = input(src, "Announce to other swarmers", "Swarmer contact") diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm b/code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm index 364a74aeb0..fbf0e1676b 100644 --- a/code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm +++ b/code/game/gamemodes/miniantags/bot_swarm/swarmer_event.dm @@ -18,10 +18,8 @@ new /obj/item/device/unactivated_swarmer(get_turf(the_gateway)) if(prob(25)) //25% chance to announce it to the crew var/swarmer_report = "[command_name()] High-Priority Update" - swarmer_report += "

Our long-range sensors have detected an odd signal emanating from your station's gateway. We recommend immediate investigation of your gateway, as something may have come \ - through." - print_command_report(swarmer_report,"Classified [command_name()] Update") - priority_announce("A report has been downloaded and printed out at all communications consoles.", "Incoming Classified Message", 'sound/AI/commandreport.ogg') + swarmer_report += "

Our long-range sensors have detected an odd signal emanating from your station's gateway. We recommend immediate investigation of your gateway, as something may have come through." + print_command_report(swarmer_report, announce=TRUE) /datum/round_event/spawn_swarmer/proc/find_swarmer() diff --git a/code/game/gamemodes/miniantags/monkey/monkey.dm b/code/game/gamemodes/miniantags/monkey/monkey.dm index 4ef4d2950a..a9c75fa76b 100644 --- a/code/game/gamemodes/miniantags/monkey/monkey.dm +++ b/code/game/gamemodes/miniantags/monkey/monkey.dm @@ -40,17 +40,17 @@ /datum/game_mode/monkey/announce() - world << "The current game mode is - Monkey!" - 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!" + 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/proc/greet_carrier(datum/mind/carrier) - carrier.current << "You are the Jungle Fever patient zero!!" - carrier.current << "You have been planted onto this station by the Animal Rights Consortium." - carrier.current << "Soon the disease will transform you into an ape. Afterwards, you will be able spread the infection to others with a bite." - carrier.current << "While your infection strain is undetectable by scanners, any other infectees will show up on medical equipment." - carrier.current << "Your mission will be deemed a success if any of the live infected monkeys reach Centcom." + to_chat(carrier.current, "You are the Jungle Fever patient zero!!") + to_chat(carrier.current, "You have been planted onto this station by the Animal Rights Consortium.") + to_chat(carrier.current, "Soon the disease will transform you into an ape. Afterwards, you will be able spread the infection to others with a bite.") + to_chat(carrier.current, "While your infection strain is undetectable by scanners, any other infectees will show up on medical equipment.") + to_chat(carrier.current, "Your mission will be deemed a success if any of the live infected monkeys reach Centcom.") return /datum/game_mode/monkey/post_setup() @@ -109,8 +109,8 @@ if(check_monkey_victory()) feedback_set_details("round_end_result","win - monkey win") feedback_set("round_end_result",escaped_monkeys) - world << "The monkeys have overthrown their captors! Eeek eeeek!!" + to_chat(world, "The monkeys have overthrown their captors! Eeek eeeek!!") else feedback_set_details("round_end_result","loss - staff stopped the monkeys") feedback_set("round_end_result",escaped_monkeys) - world << "The staff managed to contain the monkey infestation!" + to_chat(world, "The staff managed to contain the monkey infestation!") diff --git a/code/game/gamemodes/miniantags/morph/morph.dm b/code/game/gamemodes/miniantags/morph/morph.dm index b7b2292d8a..42bab67d65 100644 --- a/code/game/gamemodes/miniantags/morph/morph.dm +++ b/code/game/gamemodes/miniantags/morph/morph.dm @@ -47,7 +47,7 @@ if(morphed) form.examine(user) // Refactor examine to return desc so it's static? Not sure if worth it if(get_dist(user,src)<=3) - user << "It doesn't look quite right..." + to_chat(user, "It doesn't look quite right...") else ..() return @@ -90,7 +90,7 @@ if(istype(A) && allowed(A)) assume(A) else - src << "Your chameleon skin is still repairing itself!" + to_chat(src, "Your chameleon skin is still repairing itself!") ..() /mob/living/simple_animal/hostile/morph/proc/assume(atom/movable/target) @@ -223,7 +223,7 @@ player_mind.assigned_role = "Morph" player_mind.special_role = "Morph" ticker.mode.traitors |= player_mind - S << S.playstyle_string + to_chat(S, S.playstyle_string) S << 'sound/magic/Mutate.ogg' message_admins("[key_name_admin(S)] has been made into a morph by an event.") log_game("[key_name(S)] was spawned as a morph by an event.") diff --git a/code/game/gamemodes/miniantags/revenant/revenant.dm b/code/game/gamemodes/miniantags/revenant/revenant.dm index 0ccc8e7094..3c597e7f32 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant.dm @@ -62,7 +62,7 @@ var/image/ghostimage = null //Visible to ghost with darkness off var/generated_objectives_and_spells = FALSE -/mob/living/simple_animal/revenant/New() +/mob/living/simple_animal/revenant/Initialize() ..() ghostimage = image(src.icon,src,src.icon_state) @@ -71,13 +71,13 @@ /mob/living/simple_animal/revenant/Login() ..() - src << "You are a revenant." - src << "Your formerly mundane spirit has been infused with alien energies and empowered into a revenant." - src << "You are not dead, not alive, but somewhere in between. You are capable of limited interaction with both worlds." - src << "You are invincible and invisible to everyone but other ghosts. Most abilities will reveal you, rendering you vulnerable." - src << "To function, you are to drain the life essence from humans. This essence is a resource, as well as your health, and will power all of your abilities." - src << "You do not remember anything of your past lives, nor will you remember anything about this one after your death." - src << "Be sure to read the wiki page at https://tgstation13.org/wiki/Revenant to learn more." + to_chat(src, "You are a revenant.") + to_chat(src, "Your formerly mundane spirit has been infused with alien energies and empowered into a revenant.") + to_chat(src, "You are not dead, not alive, but somewhere in between. You are capable of limited interaction with both worlds.") + to_chat(src, "You are invincible and invisible to everyone but other ghosts. Most abilities will reveal you, rendering you vulnerable.") + to_chat(src, "To function, you are to drain the life essence from humans. This essence is a resource, as well as your health, and will power all of your abilities.") + to_chat(src, "You do not remember anything of your past lives, nor will you remember anything about this one after your death.") + to_chat(src, "Be sure to read the wiki page at https://tgstation13.org/wiki/Revenant to learn more.") if(!generated_objectives_and_spells) generated_objectives_and_spells = TRUE mind.remove_all_antag() @@ -86,11 +86,11 @@ var/datum/objective/revenant/objective = new objective.owner = mind mind.objectives += objective - src << "Objective #1: [objective.explanation_text]" + to_chat(src, "Objective #1: [objective.explanation_text]") var/datum/objective/revenantFluff/objective2 = new objective2.owner = mind mind.objectives += objective2 - src << "Objective #2: [objective2.explanation_text]" + to_chat(src, "Objective #2: [objective2.explanation_text]") mind.assigned_role = "revenant" mind.special_role = "Revenant" ticker.mode.traitors |= mind //Necessary for announcing @@ -110,11 +110,11 @@ revealed = 0 incorporeal_move = 3 invisibility = INVISIBILITY_REVENANT - src << "You are once more concealed." + to_chat(src, "You are once more concealed.") if(unstun_time && world.time >= unstun_time) unstun_time = 0 notransform = 0 - src << "You can move again!" + to_chat(src, "You can move again!") if(essence_regenerating && !inhibited && essence < essence_regen_cap) //While inhibited, essence will not regenerate essence = min(essence_regen_cap, essence+essence_regen_amount) update_action_buttons_icon() //because we update something required by our spells in life, we need to update our buttons @@ -151,10 +151,10 @@ var/rendered = "[src] says, \"[message]\"" for(var/mob/M in mob_list) if(isrevenant(M)) - M << rendered + to_chat(M, rendered) else if(isobserver(M)) var/link = FOLLOW_LINK(M, src) - M << "[link] [rendered]" + to_chat(M, "[link] [rendered]") return @@ -215,7 +215,7 @@ ..(1) ghost_darkness_images -= ghostimage updateallghostimages() - src << "NO! No... it's too late, you can feel your essence [pick("breaking apart", "drifting away")]..." + to_chat(src, "NO! No... it's too late, you can feel your essence [pick("breaking apart", "drifting away")]...") notransform = 1 revealed = 1 invisibility = 0 @@ -245,10 +245,10 @@ invisibility = 0 incorporeal_move = 0 if(!unreveal_time) - src << "You have been revealed!" + to_chat(src, "You have been revealed!") unreveal_time = world.time + time else - src << "You have been revealed!" + to_chat(src, "You have been revealed!") unreveal_time = unreveal_time + time update_spooky_icon() @@ -259,10 +259,10 @@ return notransform = 1 if(!unstun_time) - src << "You cannot move!" + to_chat(src, "You cannot move!") unstun_time = world.time + time else - src << "You cannot move!" + to_chat(src, "You cannot move!") unstun_time = unstun_time + time update_spooky_icon() @@ -286,17 +286,17 @@ return var/turf/T = get_turf(src) if(isclosedturf(T)) - src << "You cannot use abilities from inside of a wall." + to_chat(src, "You cannot use abilities from inside of a wall.") return 0 for(var/obj/O in T) if(O.density && !O.CanPass(src, T, 5)) - src << "You cannot use abilities inside of a dense object." + to_chat(src, "You cannot use abilities inside of a dense object.") return 0 if(inhibited) - src << "Your powers have been suppressed by nulling energy!" + to_chat(src, "Your powers have been suppressed by nulling energy!") return 0 if(!change_essence_amount(essence_cost, 1)) - src << "You lack the essence to use that ability." + to_chat(src, "You lack the essence to use that ability.") return 0 return 1 @@ -312,9 +312,9 @@ essence_accumulated = max(0, essence_accumulated+essence_amt) if(!silent) if(essence_amt > 0) - src << "Gained [essence_amt]E from [source]." + to_chat(src, "Gained [essence_amt]E from [source].") else - src << "Lost [essence_amt]E from [source]." + to_chat(src, "Lost [essence_amt]E from [source].") return 1 @@ -361,9 +361,9 @@ /obj/item/weapon/ectoplasm/revenant/examine(mob/user) ..() if(inert) - user << "It seems inert." + to_chat(user, "It seems inert.") else if(reforming) - user << "It is shifting and distorted. It would be wise to destroy this." + to_chat(user, "It is shifting and distorted. It would be wise to destroy this.") /obj/item/weapon/ectoplasm/revenant/proc/reform() if(!src || QDELETED(src) || inert) diff --git a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm index 4ff1d23f59..ce549c509d 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm @@ -4,7 +4,7 @@ A.examine(src) if(ishuman(A)) if(A in drained_mobs) - src << "[A]'s soul is dead and empty." //feedback at any range + to_chat(src, "[A]'s soul is dead and empty." ) else if(in_range(src, A)) Harvest(A) @@ -12,45 +12,45 @@ if(!castcheck(0)) return if(draining) - src << "You are already siphoning the essence of a soul!" + to_chat(src, "You are already siphoning the essence of a soul!") return if(!target.stat) - src << "[target.p_their(TRUE)] soul is too strong to harvest." + to_chat(src, "[target.p_their(TRUE)] soul is too strong to harvest.") if(prob(10)) - target << "You feel as if you are being watched." + to_chat(target, "You feel as if you are being watched.") return draining = 1 essence_drained += rand(15, 20) - src << "You search for the soul of [target]." + to_chat(src, "You search for the soul of [target].") if(do_after(src, rand(10, 20), 0, target)) //did they get deleted in that second? if(target.ckey) - src << "[target.p_their(TRUE)] soul burns with intelligence." + to_chat(src, "[target.p_their(TRUE)] soul burns with intelligence.") essence_drained += rand(20, 30) if(target.stat != DEAD) - src << "[target.p_their(TRUE)] soul blazes with life!" + to_chat(src, "[target.p_their(TRUE)] soul blazes with life!") essence_drained += rand(40, 50) else - src << "[target.p_their(TRUE)] soul is weak and faltering." + to_chat(src, "[target.p_their(TRUE)] soul is weak and faltering.") if(do_after(src, rand(15, 20), 0, target)) //did they get deleted NOW? switch(essence_drained) if(1 to 30) - src << "[target] will not yield much essence. Still, every bit counts." + to_chat(src, "[target] will not yield much essence. Still, every bit counts.") if(30 to 70) - src << "[target] will yield an average amount of essence." + to_chat(src, "[target] will yield an average amount of essence.") if(70 to 90) - src << "Such a feast! [target] will yield much essence to you." + to_chat(src, "Such a feast! [target] will yield much essence to you.") if(90 to INFINITY) - src << "Ah, the perfect soul. [target] will yield massive amounts of essence to you." + to_chat(src, "Ah, the perfect soul. [target] will yield massive amounts of essence to you.") if(do_after(src, rand(15, 25), 0, target)) //how about now if(!target.stat) - src << "[target.p_they(TRUE)] [target.p_are()] now powerful enough to fight off your draining." - target << "You feel something tugging across your body before subsiding." + to_chat(src, "[target.p_they(TRUE)] [target.p_are()] now powerful enough to fight off your draining.") + to_chat(target, "You feel something tugging across your body before subsiding.") draining = 0 essence_drained = 0 return //hey, wait a minute... - src << "You begin siphoning essence from [target]'s soul." + to_chat(src, "You begin siphoning essence from [target]'s soul.") if(target.stat != DEAD) - target << "You feel a horribly unpleasant draining sensation as your grip on life weakens..." + to_chat(target, "You feel a horribly unpleasant draining sensation as your grip on life weakens...") reveal(46) stun(46) target.visible_message("[target] suddenly rises slightly into the air, [target.p_their()] skin turning an ashy gray.") @@ -59,24 +59,24 @@ change_essence_amount(essence_drained, 0, target) if(essence_drained <= 90 && target.stat != DEAD) essence_regen_cap += 5 - src << "The absorption of [target]'s living soul has increased your maximum essence level. Your new maximum essence is [essence_regen_cap]." + to_chat(src, "The absorption of [target]'s living soul has increased your maximum essence level. Your new maximum essence is [essence_regen_cap].") if(essence_drained > 90) essence_regen_cap += 15 perfectsouls += 1 - src << "The perfection of [target]'s soul has increased your maximum essence level. Your new maximum essence is [essence_regen_cap]." - src << "[target]'s soul has been considerably weakened and will yield no more essence for the time being." + to_chat(src, "The perfection of [target]'s soul has increased your maximum essence level. Your new maximum essence is [essence_regen_cap].") + to_chat(src, "[target]'s soul has been considerably weakened and will yield no more essence for the time being.") target.visible_message("[target] slumps onto the ground.", \ "Violets lights, dancing in your vision, getting clo--") drained_mobs.Add(target) target.death(0) else - src << "[target ? "[target] has":"They have"] been drawn out of your grasp. The link has been broken." + to_chat(src, "[target ? "[target] has":"They have"] been drawn out of your grasp. The link has been broken.") if(target) //Wait, target is WHERE NOW? target.visible_message("[target] slumps onto the ground.", \ "Violets lights, dancing in your vision, receding--") qdel(B) else - src << "You are not close enough to siphon [target ? "[target]'s":"their"] soul. The link has been broken." + to_chat(src, "You are not close enough to siphon [target ? "[target]'s":"their"] soul. The link has been broken.") draining = 0 essence_drained = 0 @@ -107,14 +107,14 @@ charge_counter = charge_max return log_say("RevenantTransmit: [key_name(user)]->[key_name(M)] : [msg]") - user << "You transmit to [M]: [msg]" - M << "You hear something behind you talking... [msg]" + to_chat(user, "You transmit to [M]: [msg]") + to_chat(M, "You hear something behind you talking... [msg]") for(var/ded in dead_mob_list) if(!isobserver(ded)) continue var/follow_rev = FOLLOW_LINK(ded, user) var/follow_whispee = FOLLOW_LINK(ded, M) - ded << "[follow_rev] [user] Revenant Transmit: \"[msg]\" to [follow_whispee] [M]" + to_chat(ded, "[follow_rev] [user] Revenant Transmit: \"[msg]\" to [follow_whispee] [M]") @@ -164,7 +164,7 @@ charge_counter = charge_max return 0 name = "[initial(name)] ([cast_amount]E)" - user << "You have unlocked [initial(name)]!" + to_chat(user, "You have unlocked [initial(name)]!") panel = "Revenant Abilities" locked = 0 charge_counter = charge_max @@ -293,7 +293,7 @@ for(var/mob/living/carbon/human/human in T) if(human == user) continue - human << "You feel [pick("your sense of direction flicker out", "a stabbing pain in your head", "your mind fill with static")]." + to_chat(human, "You feel [pick("your sense of direction flicker out", "a stabbing pain in your head", "your mind fill with static")].") new /obj/effect/overlay/temp/revenant(human.loc) human.emp_act(1) for(var/obj/thing in T) @@ -344,7 +344,7 @@ blight.stage++ if(!blightfound) H.AddDisease(new /datum/disease/revblight) - H << "You feel [pick("suddenly sick", "a surge of nausea", "like your skin is wrong")]." + to_chat(H, "You feel [pick("suddenly sick", "a surge of nausea", "like your skin is wrong")].") else if(mob.reagents) mob.reagents.add_reagent("plasma", 5) diff --git a/code/game/gamemodes/miniantags/revenant/revenant_blight.dm b/code/game/gamemodes/miniantags/revenant/revenant_blight.dm index 7122451c65..0ac4bdc994 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant_blight.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant_blight.dm @@ -21,7 +21,7 @@ if(affected_mob.dna && affected_mob.dna.species) affected_mob.dna.species.handle_mutant_bodyparts(affected_mob) affected_mob.dna.species.handle_hair(affected_mob) - affected_mob << "You feel better." + to_chat(affected_mob, "You feel better.") ..() /datum/disease/revblight/stage_act() @@ -30,7 +30,7 @@ cure() return if(prob(stage*3)) - affected_mob << "You suddenly feel [pick("sick and tired", "disoriented", "tired and confused", "nauseated", "faint", "dizzy")]..." + to_chat(affected_mob, "You suddenly feel [pick("sick and tired", "disoriented", "tired and confused", "nauseated", "faint", "dizzy")]...") affected_mob.confused += 8 affected_mob.adjustStaminaLoss(8) new /obj/effect/overlay/temp/revenant(affected_mob.loc) @@ -54,7 +54,7 @@ if(5) if(!finalstage) finalstage = 1 - affected_mob << "You feel like [pick("nothing's worth it anymore", "nobody ever needed your help", "nothing you did mattered", "everything you tried to do was worthless")]." + to_chat(affected_mob, "You feel like [pick("nothing's worth it anymore", "nobody ever needed your help", "nothing you did mattered", "everything you tried to do was worthless")].") affected_mob.adjustStaminaLoss(45) new /obj/effect/overlay/temp/revenant(affected_mob.loc) if(affected_mob.dna && affected_mob.dna.species) diff --git a/code/game/gamemodes/miniantags/slaughter/slaughter.dm b/code/game/gamemodes/miniantags/slaughter/slaughter.dm index 6c78c22ac8..355936d922 100644 --- a/code/game/gamemodes/miniantags/slaughter/slaughter.dm +++ b/code/game/gamemodes/miniantags/slaughter/slaughter.dm @@ -46,7 +46,7 @@ del_on_death = 1 deathmessage = "screams in anger as it collapses into a puddle of viscera!" -/mob/living/simple_animal/slaughter/New() +/mob/living/simple_animal/slaughter/Initialize() ..() var/obj/effect/proc_holder/spell/bloodcrawl/bloodspell = new AddSpell(bloodspell) @@ -178,8 +178,7 @@ if(M.revive(full_heal = TRUE, admin_revive = TRUE)) M.grab_ghost(force = TRUE) playsound(T, feast_sound, 50, 1, -1) - M << "You leave [src]'s warm embrace, \ - and feel ready to take on the world." + to_chat(M, "You leave [src]'s warm embrace, and feel ready to take on the world.") /mob/living/simple_animal/slaughter/laughter/bloodcrawl_swallow(var/mob/living/victim) if(consumed_mobs) diff --git a/code/game/gamemodes/miniantags/slaughter/slaughterevent.dm b/code/game/gamemodes/miniantags/slaughter/slaughterevent.dm index d41b9edab1..40c9a0e494 100644 --- a/code/game/gamemodes/miniantags/slaughter/slaughterevent.dm +++ b/code/game/gamemodes/miniantags/slaughter/slaughterevent.dm @@ -40,8 +40,8 @@ player_mind.assigned_role = "Slaughter Demon" player_mind.special_role = "Slaughter Demon" ticker.mode.traitors |= player_mind - S << S.playstyle_string - S << "You are currently not currently in the same plane of existence as the station. Blood Crawl near a blood pool to manifest." + to_chat(S, S.playstyle_string) + to_chat(S, "You are currently not currently in the same plane of existence as the station. Blood Crawl near a blood pool to manifest.") S << 'sound/magic/demon_dies.ogg' message_admins("[key_name_admin(S)] has been made into a slaughter demon by an event.") log_game("[key_name(S)] was spawned as a slaughter demon by an event.") diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index 5c9b3144db..b7a7234584 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -5,9 +5,9 @@ /datum/game_mode/nuclear name = "nuclear emergency" config_tag = "nuclear" - required_players = 15 // 30 players - 3 players to be the nuke ops = 27 players remaining + required_players = 30 // 30 players - 3 players to be the nuke ops = 27 players remaining required_enemies = 2 - recommended_enemies = 2 + recommended_enemies = 5 antag_flag = ROLE_OPERATIVE enemy_minimum_age = 14 @@ -83,7 +83,7 @@ if(nuke_code) synd_mind.store_memory("Syndicate Nuclear Bomb Code: [nuke_code]", 0, 0) - synd_mind.current << "The nuclear authorization code is: [nuke_code]" + to_chat(synd_mind.current, "The nuclear authorization code is: [nuke_code]") if(!leader_selected) prepare_syndicate_leader(synd_mind, nuke_code) @@ -105,9 +105,9 @@ nukeops_lastname = nukelastname(synd_mind.current) NukeNameAssign(nukeops_lastname,syndicates) //allows time for the rest of the syndies to be chosen synd_mind.current.real_name = "[syndicate_name()] [leader_title]" - synd_mind.current << "You are the Syndicate [leader_title] for this mission. You are responsible for the distribution of telecrystals and your ID is the only one who can open the launch bay doors." - synd_mind.current << "If you feel you are not up to this task, give your ID to another operative." - synd_mind.current << "In your hand you will find a special item capable of triggering a greater challenge for your team. Examine it carefully and consult with your fellow operatives before activating it." + to_chat(synd_mind.current, "You are the Syndicate [leader_title] for this mission. You are responsible for the distribution of telecrystals and your ID is the only one who can open the launch bay doors.") + to_chat(synd_mind.current, "If you feel you are not up to this task, give your ID to another operative.") + to_chat(synd_mind.current, "In your hand you will find a special item capable of triggering a greater challenge for your team. Examine it carefully and consult with your fellow operatives before activating it.") var/obj/item/device/nuclear_challenge/challenge = new /obj/item/device/nuclear_challenge synd_mind.current.put_in_hands_or_del(challenge) @@ -146,7 +146,7 @@ /datum/game_mode/proc/greet_syndicate(datum/mind/syndicate, you_are=1) if(you_are) - syndicate.current << "You are a [syndicate_name()] agent!" + to_chat(syndicate.current, "You are a [syndicate_name()] agent!") syndicate.announce_objectives() /datum/game_mode/proc/equip_syndicate(mob/living/carbon/human/synd_mob, telecrystals = TRUE) @@ -198,71 +198,71 @@ if(nuke_off_station == NUKE_SYNDICATE_BASE) feedback_set_details("round_end_result","loss - syndicate nuked - disk secured") - world << "Humiliating Syndicate Defeat" - world << "The crew of [station_name()] gave [syndicate_name()] operatives back their bomb! The syndicate base was destroyed! Next time, don't lose the nuke!" + to_chat(world, "Humiliating Syndicate Defeat") + to_chat(world, "The crew of [station_name()] gave [syndicate_name()] operatives back their bomb! The syndicate base was destroyed! Next time, don't lose the nuke!") ticker.news_report = NUKE_SYNDICATE_BASE else if(!disk_rescued && station_was_nuked && !syndies_didnt_escape) feedback_set_details("round_end_result","win - syndicate nuke") - world << "Syndicate Major Victory!" - world << "[syndicate_name()] operatives have destroyed [station_name()]!" + to_chat(world, "Syndicate Major Victory!") + to_chat(world, "[syndicate_name()] operatives have destroyed [station_name()]!") ticker.news_report = STATION_NUKED else if (!disk_rescued && station_was_nuked && syndies_didnt_escape) feedback_set_details("round_end_result","halfwin - syndicate nuke - did not evacuate in time") - world << "Total Annihilation" - world << "[syndicate_name()] operatives destroyed [station_name()] but did not leave the area in time and got caught in the explosion. Next time, don't lose the disk!" + to_chat(world, "Total Annihilation") + to_chat(world, "[syndicate_name()] operatives destroyed [station_name()] but did not leave the area in time and got caught in the explosion. Next time, don't lose the disk!") ticker.news_report = STATION_NUKED else if (!disk_rescued && !station_was_nuked && nuke_off_station && !syndies_didnt_escape) feedback_set_details("round_end_result","halfwin - blew wrong station") - world << "Crew Minor Victory" - world << "[syndicate_name()] operatives secured the authentication disk but blew up something that wasn't [station_name()]. Next time, don't do that!" + to_chat(world, "Crew Minor Victory") + to_chat(world, "[syndicate_name()] operatives secured the authentication disk but blew up something that wasn't [station_name()]. Next time, don't do that!") ticker.news_report = NUKE_MISS else if (!disk_rescued && !station_was_nuked && nuke_off_station && syndies_didnt_escape) feedback_set_details("round_end_result","halfwin - blew wrong station - did not evacuate in time") - world << "[syndicate_name()] operatives have earned Darwin Award!" - world << "[syndicate_name()] operatives blew up something that wasn't [station_name()] and got caught in the explosion. Next time, don't do that!" + to_chat(world, "[syndicate_name()] operatives have earned Darwin Award!") + to_chat(world, "[syndicate_name()] operatives blew up something that wasn't [station_name()] and got caught in the explosion. Next time, don't do that!") ticker.news_report = NUKE_MISS else if ((disk_rescued || SSshuttle.emergency.mode != SHUTTLE_ENDGAME) && are_operatives_dead()) feedback_set_details("round_end_result","loss - evacuation - disk secured - syndi team dead") - world << "Crew Major Victory!" - world << "The Research Staff has saved the disk and killed the [syndicate_name()] Operatives" + to_chat(world, "Crew Major Victory!") + to_chat(world, "The Research Staff has saved the disk and killed the [syndicate_name()] Operatives") ticker.news_report = OPERATIVES_KILLED else if (disk_rescued) feedback_set_details("round_end_result","loss - evacuation - disk secured") - world << "Crew Major Victory" - world << "The Research Staff has saved the disk and stopped the [syndicate_name()] Operatives!" + to_chat(world, "Crew Major Victory") + to_chat(world, "The Research Staff has saved the disk and stopped the [syndicate_name()] Operatives!") ticker.news_report = OPERATIVES_KILLED else if (!disk_rescued && are_operatives_dead()) feedback_set_details("round_end_result","halfwin - evacuation - disk not secured") - world << "Neutral Victory!" - world << "The Research Staff failed to secure the authentication disk but did manage to kill most of the [syndicate_name()] Operatives!" + to_chat(world, "Neutral Victory!") + to_chat(world, "The Research Staff failed to secure the authentication disk but did manage to kill most of the [syndicate_name()] Operatives!") ticker.news_report = OPERATIVE_SKIRMISH else if (!disk_rescued && crew_evacuated) feedback_set_details("round_end_result","halfwin - detonation averted") - world << "Syndicate Minor Victory!" - world << "[syndicate_name()] operatives survived the assault but did not achieve the destruction of [station_name()]. Next time, don't lose the disk!" + to_chat(world, "Syndicate Minor Victory!") + to_chat(world, "[syndicate_name()] operatives survived the assault but did not achieve the destruction of [station_name()]. Next time, don't lose the disk!") ticker.news_report = OPERATIVE_SKIRMISH else if (!disk_rescued && !crew_evacuated) feedback_set_details("round_end_result","halfwin - interrupted") - world << "Neutral Victory" - world << "Round was mysteriously interrupted!" + to_chat(world, "Neutral Victory") + to_chat(world, "Round was mysteriously interrupted!") ticker.news_report = OPERATIVE_SKIRMISH @@ -285,7 +285,7 @@ text += "(Syndicates used [TC_uses] TC) [purchases]" if(TC_uses == 0 && station_was_nuked && !are_operatives_dead()) text += "" - world << text + to_chat(world, text) return 1 @@ -298,7 +298,7 @@ else if (newname == "Unknown" || newname == "floor" || newname == "wall" || newname == "rwall" || newname == "_") - M << "That name is reserved." + to_chat(M, "That name is reserved.") return nukelastname(M) return capitalize(newname) diff --git a/code/game/gamemodes/nuclear/nuclear_challenge.dm b/code/game/gamemodes/nuclear/nuclear_challenge.dm index 941e469d28..54045c307f 100644 --- a/code/game/gamemodes/nuclear/nuclear_challenge.dm +++ b/code/game/gamemodes/nuclear/nuclear_challenge.dm @@ -24,7 +24,7 @@ return if(are_you_sure == "No") - user << "On second thought, the element of surprise isn't so bad after all." + to_chat(user, "On second thought, the element of surprise isn't so bad after all.") return var/war_declaration = "[user.real_name] has declared his intent to utterly destroy [station_name()] with a nuclear device, and dares the crew to try and stop them." @@ -46,7 +46,7 @@ priority_announce(war_declaration, title = "Declaration of War", sound = 'sound/machines/Alarm.ogg') - user << "You've attracted the attention of powerful forces within the syndicate. A bonus bundle of telecrystals has been granted to your team. Great things await you if you complete the mission." + to_chat(user, "You've attracted the attention of powerful forces within the syndicate. A bonus bundle of telecrystals has been granted to your team. Great things await you if you complete the mission.") for(var/V in syndicate_shuttle_boards) var/obj/item/weapon/circuitboard/computer/syndicate_shuttle/board = V @@ -62,21 +62,21 @@ /obj/item/device/nuclear_challenge/proc/check_allowed(mob/living/user) if(declaring_war) - user << "You are already in the process of declaring war! Make your mind up." + to_chat(user, "You are already in the process of declaring war! Make your mind up.") return 0 if(player_list.len < CHALLENGE_MIN_PLAYERS) - user << "The enemy crew is too small to be worth declaring war on." + to_chat(user, "The enemy crew is too small to be worth declaring war on.") return 0 if(user.z != ZLEVEL_CENTCOM) - user << "You have to be at your base to use this." + to_chat(user, "You have to be at your base to use this.") return 0 if(world.time-round_start_time > CHALLENGE_TIME_LIMIT) - user << "It's too late to declare hostilities. Your benefactors are already busy with other schemes. You'll have to make do with what you have on hand." + to_chat(user, "It's too late to declare hostilities. Your benefactors are already busy with other schemes. You'll have to make do with what you have on hand.") return 0 for(var/V in syndicate_shuttle_boards) var/obj/item/weapon/circuitboard/computer/syndicate_shuttle/board = V if(board.moved) - user << "The shuttle has already been moved! You have forfeit the right to declare war." + to_chat(user, "The shuttle has already been moved! You have forfeit the right to declare war.") return 0 return 1 diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm index 24b837c7f2..ff3c00cfc4 100644 --- a/code/game/gamemodes/nuclear/nuclearbomb.dm +++ b/code/game/gamemodes/nuclear/nuclearbomb.dm @@ -53,6 +53,10 @@ var/bomb_set previous_level = get_security_level() /obj/machinery/nuclearbomb/Destroy() + safety = FALSE + if(!exploding) + // If we're not exploding, set the alert level back to normal + set_safety() poi_list -= src nuke_list -= src if(countdown) @@ -63,11 +67,9 @@ var/bomb_set /obj/machinery/nuclearbomb/examine(mob/user) . = ..() if(exploding) - user << "It is in the process of exploding. Perhaps reviewing your \ - affairs is in order." + to_chat(user, "It is in the process of exploding. Perhaps reviewing your affairs is in order.") if(timing) - user << "There are [get_time_left()] seconds until \ - detonation." + to_chat(user, "There are [get_time_left()] seconds until detonation.") /obj/machinery/nuclearbomb/selfdestruct name = "station self-destruct terminal" @@ -101,18 +103,18 @@ var/bomb_set if(NUKESTATE_INTACT) if(istype(I, /obj/item/weapon/screwdriver/nuke)) playsound(loc, I.usesound, 100, 1) - user << "You start removing [src]'s front panel's screws..." + to_chat(user, "You start removing [src]'s front panel's screws...") if(do_after(user, 60*I.toolspeed,target=src)) deconstruction_state = NUKESTATE_UNSCREWED - user << "You remove the screws from [src]'s front panel." + to_chat(user, "You remove the screws from [src]'s front panel.") update_icon() return if(NUKESTATE_UNSCREWED) if(istype(I, /obj/item/weapon/crowbar)) - user << "You start removing [src]'s front panel..." + to_chat(user, "You start removing [src]'s front panel...") playsound(loc, I.usesound, 100, 1) if(do_after(user,30*I.toolspeed,target=src)) - user << "You remove [src]'s front panel." + to_chat(user, "You remove [src]'s front panel.") deconstruction_state = NUKESTATE_PANEL_REMOVED update_icon() return @@ -120,19 +122,19 @@ var/bomb_set if(istype(I, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/welder = I playsound(loc, I.usesound, 100, 1) - user << "You start cutting [src]'s inner plate..." + to_chat(user, "You start cutting [src]'s inner plate...") if(welder.remove_fuel(1,user)) if(do_after(user,80*I.toolspeed,target=src)) - user << "You cut [src]'s inner plate." + to_chat(user, "You cut [src]'s inner plate.") deconstruction_state = NUKESTATE_WELDED update_icon() return if(NUKESTATE_WELDED) if(istype(I, /obj/item/weapon/crowbar)) - user << "You start prying off [src]'s inner plate..." + to_chat(user, "You start prying off [src]'s inner plate...") playsound(loc, I.usesound, 100, 1) if(do_after(user,50*I.toolspeed,target=src)) - user << "You pry off [src]'s inner plate. You can see the core's green glow!" + to_chat(user, "You pry off [src]'s inner plate. You can see the core's green glow!") deconstruction_state = NUKESTATE_CORE_EXPOSED update_icon() START_PROCESSING(SSobj, core) @@ -140,30 +142,30 @@ var/bomb_set if(NUKESTATE_CORE_EXPOSED) if(istype(I, /obj/item/nuke_core_container)) var/obj/item/nuke_core_container/core_box = I - user << "You start loading the plutonium core into [core_box]..." + to_chat(user, "You start loading the plutonium core into [core_box]...") if(do_after(user,50,target=src)) if(core_box.load(core, user)) - user << "You load the plutonium core into [core_box]." + to_chat(user, "You load the plutonium core into [core_box].") deconstruction_state = NUKESTATE_CORE_REMOVED update_icon() core = null else - user << "You fail to load the plutonium core into [core_box]. [core_box] has already been used!" + to_chat(user, "You fail to load the plutonium core into [core_box]. [core_box] has already been used!") return if(istype(I, /obj/item/stack/sheet/metal)) var/obj/item/stack/sheet/metal/M = I if(M.amount >= 20) - user << "You begin repairing [src]'s inner metal plate..." + to_chat(user, "You begin repairing [src]'s inner metal plate...") if(do_after(user, 100, target=src)) if(M.use(20)) - user << "You repair [src]'s inner metal plate. The radiation is contained." + to_chat(user, "You repair [src]'s inner metal plate. The radiation is contained.") deconstruction_state = NUKESTATE_PANEL_REMOVED STOP_PROCESSING(SSobj, core) update_icon() else - user << "You need more metal to do that!" + to_chat(user, "You need more metal to do that!") else - user << "You need more metal to do that!" + to_chat(user, "You need more metal to do that!") return . = ..() @@ -352,7 +354,7 @@ var/bomb_set if(!isinspace()) anchored = !anchored else - usr << "There is nothing to anchor to!" + to_chat(usr, "There is nothing to anchor to!") /obj/machinery/nuclearbomb/proc/set_safety() safety = !safety @@ -370,7 +372,7 @@ var/bomb_set /obj/machinery/nuclearbomb/proc/set_active() if(safety && !bomb_set) - usr << "The safety is still on." + to_chat(usr, "The safety is still on.") return timing = !timing if(timing) @@ -500,13 +502,13 @@ This is here to make the tiles around the station mininuke change when it's arme /obj/item/weapon/disk/nuclear/New() ..() poi_list |= src - START_PROCESSING(SSobj, src) + set_stationloving(TRUE, inform_admins=TRUE) /obj/item/weapon/disk/nuclear/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/weapon/claymore/highlander)) var/obj/item/weapon/claymore/highlander/H = I if(H.nuke_disk) - user << "Wait... what?" + to_chat(user, "Wait... what?") qdel(H.nuke_disk) H.nuke_disk = null return @@ -516,6 +518,12 @@ This is here to make the tiles around the station mininuke change when it's arme return 1 return ..() +/obj/item/weapon/disk/nuclear/Destroy(force=FALSE) + // respawning is handled in /obj/Destroy() + if(force) + poi_list -= src + . = ..() + /obj/item/weapon/disk/nuclear/suicide_act(mob/user) user.visible_message("[user] is going delta! It looks like [user.p_theyre()] trying to commit suicide!") playsound(user.loc, 'sound/machines/Alarm.ogg', 50, -1, 1) @@ -534,56 +542,6 @@ This is here to make the tiles around the station mininuke change when it's arme user.visible_message("[user] was destroyed by the nuclear blast!") return OXYLOSS -/obj/item/weapon/disk/nuclear/process() - var/turf/diskturf = get_turf(src) - if(diskturf && (diskturf.z == ZLEVEL_CENTCOM || diskturf.z == ZLEVEL_STATION)) - return - else - get(src, /mob) << "You can't help but feel that you just lost something back there..." - var/turf/targetturf = relocate() - message_admins("[src] has been moved out of bounds in \ - [ADMIN_COORDJMP(diskturf)]. Moving it to \ - [ADMIN_COORDJMP(targetturf)].") - log_game("[src] has been moved out of bounds in [COORD(diskturf)]. \ - Moving it to [COORD(targetturf)].") - -/obj/item/weapon/disk/nuclear/proc/relocate() - var/targetturf = find_safe_turf(ZLEVEL_STATION) - if(!targetturf) - if(blobstart.len > 0) - targetturf = get_turf(pick(blobstart)) - else - throw EXCEPTION("Unable to find a blobstart landmark") - - if(ismob(loc)) - var/mob/M = loc - M.transferItemToLoc(src, targetturf, TRUE) //nodrops disks when? - else if(istype(loc, /obj/item/weapon/storage)) - var/obj/item/weapon/storage/S = loc - S.remove_from_storage(src, targetturf) - else - forceMove(targetturf) - // move the disc, so ghosts remain orbiting it even if it's "destroyed" - return targetturf - -/obj/item/weapon/disk/nuclear/Destroy(force) - var/turf/diskturf = get_turf(src) - - if(force) - message_admins("[src] has been !!force deleted!! in \ - [ADMIN_COORDJMP(diskturf)].") - log_game("[src] has been !!force deleted!! in [COORD(diskturf)].") - poi_list -= src - STOP_PROCESSING(SSobj, src) - return ..() - - var/turf/targetturf = relocate() - message_admins("[src] has been destroyed in [ADMIN_COORDJMP(diskturf)]. \ - Moving it to [ADMIN_COORDJMP(targetturf)].") - log_game("[src] has been destroyed in [COORD(diskturf)]. Moving it to \ - [COORD(targetturf)].") - return QDEL_HINT_LETMELIVE //Cancel destruction unless forced - /obj/item/weapon/disk/fakenucleardisk name = "cheap plastic imitation of the nuclear authentication disk" desc = "Broken dreams and a faint odor of cheese." diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/game/gamemodes/nuclear/pinpointer.dm index 63c8f3b92e..95128ad9cc 100644 --- a/code/game/gamemodes/nuclear/pinpointer.dm +++ b/code/game/gamemodes/nuclear/pinpointer.dm @@ -26,6 +26,7 @@ /obj/item/weapon/pinpointer/Destroy() STOP_PROCESSING(SSfastprocess, src) + pinpointer_list -= src return ..() /obj/item/weapon/pinpointer/attack_self(mob/living/user) @@ -64,10 +65,10 @@ msg += "\"([target_x], [target_y])\"." else msg = "Its tracking indicator is blank." - user << msg + to_chat(user, msg) for(var/obj/machinery/nuclearbomb/bomb in machines) if(bomb.timing) - user << "Extreme danger. Arming signal detected. Time remaining: [bomb.get_time_left()]" + to_chat(user, "Extreme danger. Arming signal detected. Time remaining: [bomb.get_time_left()]") /obj/item/weapon/pinpointer/process() if(!active) @@ -148,12 +149,12 @@ playsound(src, 'sound/items/Nuke_toy_lowpower.ogg', 50, 0) if(isliving(loc)) var/mob/living/L = loc - L << "Your [name] vibrates and lets out a tinny alarm. Uh oh." + to_chat(L, "Your [name] vibrates and lets out a tinny alarm. Uh oh.") /obj/item/weapon/pinpointer/proc/switch_mode_to(new_mode) //If we shouldn't be tracking what we are if(isliving(loc)) var/mob/living/L = loc - L << "Your [name] beeps as it reconfigures its tracking algorithms." + to_chat(L, "Your [name] beeps as it reconfigures its tracking algorithms.") playsound(L, 'sound/machines/triple_beep.ogg', 50, 1) mode = new_mode target = null //Switch modes so we can find the new target diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 6e6066ed2a..e4b44fa4aa 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -656,7 +656,7 @@ var/global/list/possible_items_special = list() if (ticker) var/n_p = 1 //autowin if (ticker.current_state == GAME_STATE_SETTING_UP) - for(var/mob/new_player/P in player_list) + for(var/mob/dead/new_player/P in player_list) if(P.client && P.ready && P.mind!=owner) n_p ++ else if (ticker.current_state == GAME_STATE_PLAYING) diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index be32c62fab..e85698196b 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -34,8 +34,8 @@ //Announces the game type// /////////////////////////// /datum/game_mode/revolution/announce() - world << "The current game mode is - Revolution!" - 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).
" + 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).
") /////////////////////////////////////////////////////////////////////////////// @@ -70,7 +70,7 @@ for(var/datum/mind/rev_mind in head_revolutionaries) //People with return to lobby may still be in the lobby. Let's pick someone else in that case. - if(istype(rev_mind.current,/mob/new_player)) + if(istype(rev_mind.current,/mob/dead/new_player)) head_revolutionaries -= rev_mind var/list/newcandidates = shuffle(antag_candidates) if(newcandidates.len == 0) @@ -79,7 +79,7 @@ var/datum/mind/lenin = M antag_candidates -= lenin newcandidates -= lenin - if(istype(lenin.current,/mob/new_player)) //We don't want to make the same mistake again + if(istype(lenin.current,/mob/dead/new_player)) //We don't want to make the same mistake again continue else var/mob/Nm = lenin.current @@ -135,7 +135,7 @@ /datum/game_mode/proc/greet_revolutionary(datum/mind/rev_mind, you_are=1) update_rev_icons_added(rev_mind) if (you_are) - rev_mind.current << "You are a member of the revolutionaries' leadership!" + to_chat(rev_mind.current, "You are a member of the revolutionaries' leadership!") rev_mind.special_role = "Head Revolutionary" rev_mind.announce_objectives() @@ -148,7 +148,7 @@ if (mob.mind) if (mob.mind.assigned_role == "Clown") - mob << "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself." + to_chat(mob, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.") mob.dna.remove_mutation(CLOWNMUT) @@ -166,14 +166,14 @@ mob.equip_in_one_of_slots(R,slots) if (!where2) - mob << "The Syndicate were unfortunately unable to get you a chameleon security HUD." + to_chat(mob, "The Syndicate were unfortunately unable to get you a chameleon security HUD.") else - mob << "The chameleon security HUD in your [where2] will help you keep track of who is mindshield-implanted, and unable to be recruited." + to_chat(mob, "The chameleon security HUD in your [where2] will help you keep track of who is mindshield-implanted, and unable to be recruited.") if (!where) - mob << "The Syndicate were unfortunately unable to get you a flash." + to_chat(mob, "The Syndicate were unfortunately unable to get you a flash.") else - mob << "The flash in your [where] will help you to persuade the crew to join your cause." + to_chat(mob, "The flash in your [where] will help you to persuade the crew to join your cause.") return 1 ///////////////////////////////// @@ -270,8 +270,8 @@ carbon_mob.silent = max(carbon_mob.silent, 5) carbon_mob.flash_act(1, 1) rev_mind.current.Stun(5) - rev_mind.current << " You are now a revolutionary! Help your cause. Do not harm your fellow freedom fighters. You can identify your comrades by the red \"R\" icons, and your leaders by the blue \"R\" icons. Help them kill the heads to win the revolution!" - rev_mind.current.attack_log += "\[[time_stamp()]\] Has been converted to the revolution!" + to_chat(rev_mind.current, " You are now a revolutionary! Help your cause. Do not harm your fellow freedom fighters. You can identify your comrades by the red \"R\" icons, and your leaders by the blue \"R\" icons. Help them kill the heads to win the revolution!") + rev_mind.current.log_message("Has been converted to the revolution!", INDIVIDUAL_ATTACK_LOG) rev_mind.special_role = "Revolutionary" update_rev_icons_added(rev_mind) if(jobban_isbanned(rev_mind.current, ROLE_REV)) @@ -289,23 +289,23 @@ if((rev_mind in revolutionaries) || remove_head) revolutionaries -= rev_mind rev_mind.special_role = null - rev_mind.current.attack_log += "\[[time_stamp()]\] Has renounced the revolution!" + rev_mind.current.log_message("Has renounced the revolution!", INDIVIDUAL_ATTACK_LOG) if(beingborged) - rev_mind.current << "The frame's firmware detects and deletes your neural reprogramming! You remember nothing[remove_head ? "." : " but the name of the one who flashed you."]" + to_chat(rev_mind.current, "The frame's firmware detects and deletes your neural reprogramming! You remember nothing[remove_head ? "." : " but the name of the one who flashed you."]") message_admins("[ADMIN_LOOKUPFLW(rev_mind.current)] has been borged while being a [remove_head ? "leader" : " member"] of the revolution.") else rev_mind.current.Paralyse(5) - rev_mind.current << "You have been brainwashed! You are no longer a revolutionary! Your memory is hazy from the time you were a rebel...the only thing you remember is the name of the one who brainwashed you..." + to_chat(rev_mind.current, "You have been brainwashed! You are no longer a revolutionary! Your memory is hazy from the time you were a rebel...the only thing you remember is the name of the one who brainwashed you...") update_rev_icons_removed(rev_mind) for(var/mob/living/M in view(rev_mind.current)) if(beingborged) - M << "The frame beeps contentedly, purging the hostile memory engram from the MMI before initalizing it." + to_chat(M, "The frame beeps contentedly, purging the hostile memory engram from the MMI before initalizing it.") else - M << "[rev_mind.current] looks like they just remembered their real allegiance!" + to_chat(M, "[rev_mind.current] looks like they just remembered their real allegiance!") ///////////////////////////////////// //Adds the rev hud to a new convert// @@ -351,13 +351,13 @@ /datum/game_mode/revolution/declare_completion() if(finished == 1) feedback_set_details("round_end_result","win - heads killed") - world << "The heads of staff were killed or exiled! The revolutionaries win!" + to_chat(world, "The heads of staff were killed or exiled! The revolutionaries win!") ticker.news_report = REVS_WIN else if(finished == 2) feedback_set_details("round_end_result","loss - rev heads killed") - world << "The heads of staff managed to stop the revolution!" + to_chat(world, "The heads of staff managed to stop the revolution!") ticker.news_report = REVS_LOSE ..() @@ -375,19 +375,19 @@ if((survivor.mind in head_revolutionaries) || (survivor.mind in revolutionaries)) num_revs++ if(num_survivors) - world << "[TAB]Command's Approval Rating: [100 - round((num_revs/num_survivors)*100, 0.1)]%" // % of loyal crew + to_chat(world, "[TAB]Command's Approval Rating: [100 - round((num_revs/num_survivors)*100, 0.1)]%" ) var/text = "
The head revolutionaries were:" for(var/datum/mind/headrev in head_revolutionaries) text += printplayer(headrev, 1) text += "
" - world << text + to_chat(world, text) if(revolutionaries.len || istype(ticker.mode,/datum/game_mode/revolution)) var/text = "
The revolutionaries were:" for(var/datum/mind/rev in revolutionaries) text += printplayer(rev, 1) text += "
" - world << text + to_chat(world, text) if( head_revolutionaries.len || revolutionaries.len || istype(ticker.mode,/datum/game_mode/revolution) ) var/text = "
The heads of staff were:" @@ -398,4 +398,4 @@ text += "Target" text += printplayer(head, 1) text += "
" - world << text + to_chat(world, text) diff --git a/code/game/gamemodes/sandbox/airlock_maker.dm b/code/game/gamemodes/sandbox/airlock_maker.dm index 0f80455886..f3753c17c0 100644 --- a/code/game/gamemodes/sandbox/airlock_maker.dm +++ b/code/game/gamemodes/sandbox/airlock_maker.dm @@ -115,7 +115,7 @@ var/final = target_type target_type = text2path(final) if(!target_type) - usr << "Didn't work, contact Sayu with this: [final]" + to_chat(usr, "Didn't work, contact Sayu with this: [final]") usr << browse(null,"window=airlockmaker") return diff --git a/code/game/gamemodes/sandbox/h_sandbox.dm b/code/game/gamemodes/sandbox/h_sandbox.dm index b1abbb1267..1c552abd51 100644 --- a/code/game/gamemodes/sandbox/h_sandbox.dm +++ b/code/game/gamemodes/sandbox/h_sandbox.dm @@ -114,11 +114,11 @@ var/hsboxspawn = 1 if("hsbtobj") if(!admin) return if(hsboxspawn) - world << "Sandbox: \black[usr.key] has disabled object spawning!" + to_chat(world, "Sandbox: \black[usr.key] has disabled object spawning!") hsboxspawn = 0 return else - world << "Sandbox: \black[usr.key] has enabled object spawning!" + to_chat(world, "Sandbox: \black[usr.key] has enabled object spawning!") hsboxspawn = 1 return // @@ -127,10 +127,10 @@ var/hsboxspawn = 1 if("hsbtac") if(!admin) return if(config.sandbox_autoclose) - world << "Sandbox: \black [usr.key] has removed the object spawn limiter." + to_chat(world, "Sandbox: \black [usr.key] has removed the object spawn limiter.") config.sandbox_autoclose = 0 else - world << "Sandbox: \black [usr.key] has added a limiter to object spawning. The window will now auto-close after use." + to_chat(world, "Sandbox: \black [usr.key] has added a limiter to object spawning. The window will now auto-close after use.") config.sandbox_autoclose = 1 return // @@ -283,7 +283,7 @@ var/hsboxspawn = 1 var/typepath = text2path(href_list["path"]) if(!typepath) - usr << "Bad path: \"[href_list["path"]]\"" + to_chat(usr, "Bad path: \"[href_list["path"]]\"") return new typepath(usr.loc) @@ -295,7 +295,7 @@ var/hsboxspawn = 1 if("hsbspawn") var/typepath = text2path(href_list["path"]) if(!typepath) - usr << "Bad path: \"[href_list["path"]]\"" + to_chat(usr, "Bad path: \"[href_list["path"]]\"") return new typepath(usr.loc) diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index 808512b134..c7c4f64a3a 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -195,7 +195,7 @@ /datum/game_mode/proc/greet_traitor(datum/mind/traitor) - traitor.current << "You are the [traitor_name]." + to_chat(traitor.current, "You are the [traitor_name].") traitor.announce_objectives() return @@ -214,14 +214,14 @@ return//Traitors will be checked as part of check_extra_completion. Leaving this here as a reminder. /proc/give_codewords(mob/living/traitor_mob) - traitor_mob << "The Syndicate provided you with the following information on how to identify their agents:" - traitor_mob << "Code Phrase: [syndicate_code_phrase]" - traitor_mob << "Code Response: [syndicate_code_response]" + to_chat(traitor_mob, "The Syndicate provided you with the following information on how to identify their agents:") + to_chat(traitor_mob, "Code Phrase: [syndicate_code_phrase]") + to_chat(traitor_mob, "Code Response: [syndicate_code_response]") traitor_mob.mind.store_memory("Code Phrase: [syndicate_code_phrase]") traitor_mob.mind.store_memory("Code Response: [syndicate_code_response]") - traitor_mob << "Use the code words in the order provided, during regular conversation, to identify other agents. Proceed with caution, however, as everyone is a potential foe." + to_chat(traitor_mob, "Use the code words in the order provided, during regular conversation, to identify other agents. Proceed with caution, however, as everyone is a potential foe.") /datum/game_mode/proc/add_law_zero(mob/living/silicon/ai/killer) @@ -230,7 +230,7 @@ killer.set_zeroth_law(law, law_borg) give_codewords(killer) killer.set_syndie_radio() - killer << "Your radio has been upgraded! Use :t to speak on an encrypted channel with Syndicate Agents!" + to_chat(killer, "Your radio has been upgraded! Use :t to speak on an encrypted channel with Syndicate Agents!") killer.add_malf_picker() /datum/game_mode/proc/add_law_sixsixsix(mob/living/silicon/devil) @@ -292,7 +292,7 @@ text += "
The code phrases were: [syndicate_code_phrase]
\ The code responses were: [syndicate_code_response]
" - world << text + to_chat(world, text) return 1 @@ -303,7 +303,7 @@ . = 1 if (traitor_mob.mind) if (traitor_mob.mind.assigned_role == "Clown") - traitor_mob << "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself." + to_chat(traitor_mob, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.") traitor_mob.dna.remove_mutation(CLOWNMUT) var/list/all_contents = traitor_mob.GetAllContents() @@ -335,7 +335,7 @@ uplink_loc = R if (!uplink_loc) - traitor_mob << "Unfortunately, the Syndicate wasn't able to get you an Uplink." + to_chat(traitor_mob, "Unfortunately, the Syndicate wasn't able to get you an Uplink.") . = 0 else var/obj/item/device/uplink/U = new(uplink_loc) @@ -345,19 +345,19 @@ if(uplink_loc == R) R.traitor_frequency = sanitize_frequency(rand(MIN_FREQ, MAX_FREQ)) - traitor_mob << "The Syndicate have cunningly disguised a Syndicate Uplink as your [R.name]. Simply dial the frequency [format_frequency(R.traitor_frequency)] to unlock its hidden features." + to_chat(traitor_mob, "The Syndicate have cunningly disguised a Syndicate Uplink as your [R.name]. Simply dial the frequency [format_frequency(R.traitor_frequency)] to unlock its hidden features.") traitor_mob.mind.store_memory("Radio Frequency: [format_frequency(R.traitor_frequency)] ([R.name]).") else if(uplink_loc == PDA) PDA.lock_code = "[rand(100,999)] [pick("Alpha","Bravo","Charlie","Delta","Echo","Foxtrot","Golf","Hotel","India","Juliet","Kilo","Lima","Mike","November","Oscar","Papa","Quebec","Romeo","Sierra","Tango","Uniform","Victor","Whiskey","X-ray","Yankee","Zulu")]" - traitor_mob << "The Syndicate have cunningly disguised a Syndicate Uplink as your [PDA.name]. Simply enter the code \"[PDA.lock_code]\" into the ringtone select to unlock its hidden features." + to_chat(traitor_mob, "The Syndicate have cunningly disguised a Syndicate Uplink as your [PDA.name]. Simply enter the code \"[PDA.lock_code]\" into the ringtone select to unlock its hidden features.") traitor_mob.mind.store_memory("Uplink Passcode: [PDA.lock_code] ([PDA.name]).") else if(uplink_loc == P) P.traitor_unlock_degrees = rand(1, 360) - traitor_mob << "The Syndicate have cunningly disguised a Syndicate Uplink as your [P.name]. Simply twist the top of the pen [P.traitor_unlock_degrees] from its starting position to unlock its hidden features." + to_chat(traitor_mob, "The Syndicate have cunningly disguised a Syndicate Uplink as your [P.name]. Simply twist the top of the pen [P.traitor_unlock_degrees] from its starting position to unlock its hidden features.") traitor_mob.mind.store_memory("Uplink Degrees: [P.traitor_unlock_degrees] ([P.name]).") if(!safety) // If they are not a rev. Can be added on to. @@ -400,7 +400,7 @@ var/equipped_slot = mob.equip_in_one_of_slots(folder, slots) if (equipped_slot) where = "In your [equipped_slot]" - mob << "

[where] is a folder containing secret documents that another Syndicate group wants. We have set up a meeting with one of their agents on station to make an exchange. Exercise extreme caution as they cannot be trusted and may be hostile.
" + to_chat(mob, "

[where] is a folder containing secret documents that another Syndicate group wants. We have set up a meeting with one of their agents on station to make an exchange. Exercise extreme caution as they cannot be trusted and may be hostile.
") /datum/game_mode/proc/update_traitor_icons_added(datum/mind/traitor_mind) var/datum/atom_hud/antag/traitorhud = huds[ANTAG_HUD_TRAITOR] diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/game/gamemodes/wizard/artefact.dm index 4a82f4ed65..e49a2b54aa 100644 --- a/code/game/gamemodes/wizard/artefact.dm +++ b/code/game/gamemodes/wizard/artefact.dm @@ -26,7 +26,7 @@ charges-- user.visible_message("[src] hums with power as [user] deals a blow to [activate_descriptor] itself!") else - user << "The unearthly energies that powered the blade are now dormant." + to_chat(user, "The unearthly energies that powered the blade are now dormant.") /obj/effect/rend name = "tear in the fabric of reality" @@ -114,7 +114,7 @@ hitsound = 'sound/items/welder2.ogg' /obj/item/weapon/scrying/attack_self(mob/user) - user << "You can see...everything!" + to_chat(user, "You can see...everything!") visible_message("[user] stares into [src], their eyes glazing over.") user.ghostize(1) return @@ -143,23 +143,23 @@ return if(M.stat != DEAD) - user << "This artifact can only affect the dead!" + to_chat(user, "This artifact can only affect the dead!") return if(!M.mind || !M.client) - user << "There is no soul connected to this body..." + to_chat(user, "There is no soul connected to this body...") return check_spooky()//clean out/refresh the list if(spooky_scaries.len >= 3 && !unlimited) - user << "This artifact can only affect three undead at a time!" + to_chat(user, "This artifact can only affect three undead at a time!") return M.set_species(/datum/species/skeleton, icon_update=0) M.revive(full_heal = 1, admin_revive = 1) spooky_scaries |= M - M << "You have been revived by [user.real_name]!" - M << "[user.p_they(TRUE)] [user.p_are()] your master now, assist them even if it costs you your new life!" + to_chat(M, "You have been revived by [user.real_name]!") + to_chat(M, "[user.p_they(TRUE)] [user.p_are()] your master now, assist them even if it costs you your new life!") equip_roman_skeleton(M) @@ -226,7 +226,7 @@ var/global/list/multiverse = list() /obj/item/weapon/multisword/attack_self(mob/user) if(user.mind.special_role == "apprentice") - user << "You know better than to touch your teacher's stuff." + to_chat(user, "You know better than to touch your teacher's stuff.") return if(cooldown < world.time) var/faction_check = 0 @@ -238,19 +238,19 @@ var/global/list/multiverse = list() faction = list("[user.real_name]") assigned = "[user.real_name]" user.faction = list("[user.real_name]") - user << "You bind the sword to yourself. You can now use it to summon help." + to_chat(user, "You bind the sword to yourself. You can now use it to summon help.") if(!is_gangster(user)) var/datum/gang/multiverse/G = new(src, "[user.real_name]") ticker.mode.gangs += G G.bosses += user.mind G.add_gang_hud(user.mind) user.mind.gang_datum = G - user << "With your new found power you could easily conquer the station!" + to_chat(user, "With your new found power you could easily conquer the station!") var/datum/objective/hijackclone/hijack_objective = new /datum/objective/hijackclone hijack_objective.owner = user.mind user.mind.objectives += hijack_objective hijack_objective.explanation_text = "Ensure only [user.real_name] and their copies are on the shuttle!" - user << "Objective #[1]: [hijack_objective.explanation_text]" + to_chat(user, "Objective #[1]: [hijack_objective.explanation_text]") ticker.mode.traitors += user.mind user.mind.special_role = "[user.real_name] Prime" else @@ -258,16 +258,16 @@ var/global/list/multiverse = list() if(candidates.len) var/client/C = pick(candidates) spawn_copy(C, get_turf(user.loc), user) - user << "The sword flashes, and you find yourself face to face with...you!" + to_chat(user, "The sword flashes, and you find yourself face to face with...you!") cooldown = world.time + 400 for(var/obj/item/weapon/multisword/M in multiverse) if(M.assigned == assigned) M.cooldown = cooldown else - user << "You fail to summon any copies of yourself. Perhaps you should try again in a bit." + to_chat(user, "You fail to summon any copies of yourself. Perhaps you should try again in a bit.") else - user << "[src] is recharging! Keep in mind it shares a cooldown with the swords wielded by your copies." + to_chat(user, "[src] is recharging! Keep in mind it shares a cooldown with the swords wielded by your copies.") /obj/item/weapon/multisword/proc/spawn_copy(var/client/C, var/turf/T, mob/user) @@ -275,7 +275,7 @@ var/global/list/multiverse = list() C.prefs.copy_to(M, icon_updates=0) M.key = C.key M.mind.name = user.real_name - M << "You are an alternate version of [user.real_name] from another universe! Help them accomplish their goals at all costs." + to_chat(M, "You are an alternate version of [user.real_name] from another universe! Help them accomplish their goals at all costs.") ticker.mode.add_gangster(M.mind, user.mind.gang_datum, FALSE) M.real_name = user.real_name M.name = user.real_name @@ -461,15 +461,15 @@ var/global/list/multiverse = list() /obj/item/voodoo/attackby(obj/item/I, mob/user, params) if(target && cooldown < world.time) if(I.is_hot()) - target << "You suddenly feel very hot" + to_chat(target, "You suddenly feel very hot") target.bodytemperature += 50 GiveHint(target) else if(is_pointed(I)) - target << "You feel a stabbing pain in [parse_zone(user.zone_selected)]!" + to_chat(target, "You feel a stabbing pain in [parse_zone(user.zone_selected)]!") target.Weaken(2) GiveHint(target) else if(istype(I,/obj/item/weapon/bikehorn)) - target << "HONK" + to_chat(target, "HONK") target << 'sound/items/AirHorn.ogg' target.adjustEarDamage(0,3) GiveHint(target) @@ -481,7 +481,7 @@ var/global/list/multiverse = list() user.drop_item() I.loc = src link = I - user << "You attach [I] to the doll." + to_chat(user, "You attach [I] to the doll.") update_targets() /obj/item/voodoo/check_eye(mob/user) @@ -498,7 +498,7 @@ var/global/list/multiverse = list() if(link) target = null link.loc = get_turf(src) - user << "You remove the [link] from the doll." + to_chat(user, "You remove the [link] from the doll.") link = null update_targets() return @@ -516,16 +516,16 @@ var/global/list/multiverse = list() user.reset_perspective(null) user.unset_machine() if("r_leg","l_leg") - user << "You move the doll's legs around." + to_chat(user, "You move the doll's legs around.") var/turf/T = get_step(target,pick(cardinal)) target.Move(T) if("r_arm","l_arm") target.click_random_mob() GiveHint(target) if("head") - user << "You smack the doll's head with your hand." + to_chat(user, "You smack the doll's head with your hand.") target.Dizzy(10) - target << "You suddenly feel as if your head was hit with a hammer!" + to_chat(target, "You suddenly feel as if your head was hit with a hammer!") GiveHint(target,user) cooldown = world.time + cooldown_time @@ -540,10 +540,10 @@ var/global/list/multiverse = list() /obj/item/voodoo/proc/GiveHint(mob/victim,force=0) if(prob(50) || force) var/way = dir2text(get_dir(victim,get_turf(src))) - victim << "You feel a dark presence from [way]" + to_chat(victim, "You feel a dark presence from [way]") if(prob(20) || force) var/area/A = get_area(src) - victim << "You feel a dark presence from [A.name]" + to_chat(victim, "You feel a dark presence from [A.name]") /obj/item/voodoo/fire_act(exposed_temperature, exposed_volume) if(target) diff --git a/code/game/gamemodes/wizard/raginmages.dm b/code/game/gamemodes/wizard/raginmages.dm index 4805c88492..d3253f2f95 100644 --- a/code/game/gamemodes/wizard/raginmages.dm +++ b/code/game/gamemodes/wizard/raginmages.dm @@ -32,13 +32,13 @@ max_mages = INFINITY /datum/game_mode/wizard/raginmages/greet_wizard(datum/mind/wizard, you_are=1) if (you_are) - wizard.current << "You are the Space Wizard!" - wizard.current << "The Space Wizards Federation has given you the following tasks:" + to_chat(wizard.current, "You are the Space Wizard!") + to_chat(wizard.current, "The Space Wizards Federation has given you the following tasks:") var/obj_count = 1 - wizard.current << "Objective Alpha: Make sure the station pays for its actions against our diplomats" + to_chat(wizard.current, "Objective Alpha: Make sure the station pays for its actions against our diplomats") for(var/datum/objective/objective in wizard.objectives) - wizard.current << "Objective #[obj_count]: [objective.explanation_text]" + to_chat(wizard.current, "Objective #[obj_count]: [objective.explanation_text]") obj_count++ return @@ -53,7 +53,7 @@ continue if(wizard.current.stat==UNCONSCIOUS) if(wizard.current.health < 0) - wizard.current << "The Space Wizard Federation is upset with your performance and have terminated your employment." + to_chat(wizard.current, "The Space Wizard Federation is upset with your performance and have terminated your employment.") wizard.current.death() continue wizards_alive++ @@ -133,7 +133,7 @@ /datum/game_mode/wizard/raginmages/declare_completion() if(finished) feedback_set_details("round_end_result","loss - wizard killed") - world << "The crew has managed to hold off the wizard attack! The Space Wizards Federation has been taught a lesson they will not soon forget!" + to_chat(world, "The crew has managed to hold off the wizard attack! The Space Wizards Federation has been taught a lesson they will not soon forget!") ..(1) /datum/game_mode/wizard/raginmages/proc/makeBody(mob/dead/observer/G_found) // Uses stripped down and bastardized code from respawn character diff --git a/code/game/gamemodes/wizard/soulstone.dm b/code/game/gamemodes/wizard/soulstone.dm index 45f00fa7fc..c12d542ae4 100644 --- a/code/game/gamemodes/wizard/soulstone.dm +++ b/code/game/gamemodes/wizard/soulstone.dm @@ -30,33 +30,31 @@ /obj/item/device/soulstone/pickup(mob/living/user) ..() if(!iscultist(user) && !iswizard(user) && !usability) - user << "An overwhelming feeling of dread comes over you as you pick up the soulstone. It would be wise to be rid of this quickly." + to_chat(user, "An overwhelming feeling of dread comes over you as you pick up the soulstone. It would be wise to be rid of this quickly.") user.Dizzy(120) /obj/item/device/soulstone/examine(mob/user) ..() if(usability || iscultist(user) || iswizard(user) || isobserver(user)) - user << "A soulstone, used to capture souls, either from unconscious or sleeping humans or from freed shades." - user << "The captured soul can be placed into a construct shell to produce a construct, or released from the stone as a shade." + to_chat(user, "A soulstone, used to capture souls, either from unconscious or sleeping humans or from freed shades.") + to_chat(user, "The captured soul can be placed into a construct shell to produce a construct, or released from the stone as a shade.") if(spent) - user << "This shard is spent; it is now just \ - a creepy rock." + to_chat(user, "This shard is spent; it is now just a creepy rock.") //////////////////////////////Capturing//////////////////////////////////////////////////////// /obj/item/device/soulstone/attack(mob/living/carbon/human/M, mob/user) if(!iscultist(user) && !iswizard(user) && !usability) user.Paralyse(5) - user << "Your body is wracked with debilitating pain!" + to_chat(user, "Your body is wracked with debilitating pain!") return if(spent) - user << "There is no power left in the shard.\ - " + to_chat(user, "There is no power left in the shard.") return if(!ishuman(M))//If target is not a human. return ..() if(iscultist(M)) - user << "\"Come now, do not capture your fellow's soul.\"" + to_chat(user, "\"Come now, do not capture your fellow's soul.\"") return add_logs(user, M, "captured [M.name]'s soul", src) @@ -69,7 +67,7 @@ return if(!iscultist(user) && !iswizard(user) && !usability) user.Paralyse(5) - user << "Your body is wracked with debilitating pain!" + to_chat(user, "Your body is wracked with debilitating pain!") return for(var/mob/living/simple_animal/shade/A in src) A.status_flags &= ~GODMODE @@ -79,9 +77,9 @@ icon_state = "soulstone" name = initial(name) if(iswizard(user) || usability) - A << "You have been released from your prison, but you are still bound to [user.real_name]'s will. Help them succeed in their goals at all costs." + to_chat(A, "You have been released from your prison, but you are still bound to [user.real_name]'s will. Help them succeed in their goals at all costs.") else if(iscultist(user)) - A << "You have been released from your prison, but you are still bound to the cult's will. Help them succeed in their goals at all costs." + to_chat(A, "You have been released from your prison, but you are still bound to the cult's will. Help them succeed in their goals at all costs.") was_used() ///////////////////////////Transferring to constructs///////////////////////////////////////////////////// @@ -94,17 +92,17 @@ /obj/structure/constructshell/examine(mob/user) ..() if(iscultist(user) || iswizard(user) || user.stat == DEAD) - user << "A construct shell, used to house bound souls from a soulstone." - user << "Placing a soulstone with a soul into this shell allows you to produce your choice of the following:" - user << "An Artificer, which can produce more shells and soulstones, as well as fortifications." - user << "A Wraith, which does high damage and can jaunt through walls, though it is quite fragile." - user << "A Juggernaut, which is very hard to kill and can produce temporary walls, but is slow." + to_chat(user, "A construct shell, used to house bound souls from a soulstone.") + to_chat(user, "Placing a soulstone with a soul into this shell allows you to produce your choice of the following:") + to_chat(user, "An Artificer, which can produce more shells and soulstones, as well as fortifications.") + to_chat(user, "A Wraith, which does high damage and can jaunt through walls, though it is quite fragile.") + to_chat(user, "A Juggernaut, which is very hard to kill and can produce temporary walls, but is slow.") /obj/structure/constructshell/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/device/soulstone)) var/obj/item/device/soulstone/SS = O if(!iscultist(user) && !iswizard(user) && !SS.usability) - user << "An overwhelming feeling of dread comes over you as you attempt to place the soulstone into the shell. It would be wise to be rid of this quickly." + to_chat(user, "An overwhelming feeling of dread comes over you as you attempt to place the soulstone into the shell. It would be wise to be rid of this quickly.") user.Dizzy(120) return SS.transfer_soul("CONSTRUCT",src,user) @@ -129,23 +127,23 @@ init_shade(T, user) return 1 else - user << "Capture failed!: The soul has already fled its mortal frame. You attempt to bring it back..." + to_chat(user, "Capture failed!: The soul has already fled its mortal frame. You attempt to bring it back...") return getCultGhost(T,user) if("VICTIM") var/mob/living/carbon/human/T = target if(ticker.mode.name == "cult" && T.mind == ticker.mode:sacrifice_target) if(iscultist(user)) - user << "\"This soul is mine. SACRIFICE THEM!\"" + to_chat(user, "\"This soul is mine. SACRIFICE THEM!\"") else - user << "The soulstone doesn't work for no apparent reason." + to_chat(user, "The soulstone doesn't work for no apparent reason.") return 0 if(contents.len) - user << "Capture failed!: The soulstone is full! Free an existing soul to make room." + to_chat(user, "Capture failed!: The soulstone is full! Free an existing soul to make room.") else if(T.stat != CONSCIOUS) if(T.client == null) - user << "Capture failed!: The soul has already fled its mortal frame. You attempt to bring it back..." + to_chat(user, "Capture failed!: The soul has already fled its mortal frame. You attempt to bring it back...") getCultGhost(T,user) else for(var/obj/item/W in T) @@ -153,12 +151,12 @@ init_shade(T, user, vic = 1) qdel(T) else - user << "Capture failed!: Kill or maim the victim first!" + to_chat(user, "Capture failed!: Kill or maim the victim first!") if("SHADE") var/mob/living/simple_animal/shade/T = target if(contents.len) - user << "Capture failed!: The soulstone is full! Free an existing soul to make room." + to_chat(user, "Capture failed!: The soulstone is full! Free an existing soul to make room.") else T.loc = src //put shade in stone T.status_flags |= GODMODE @@ -166,9 +164,9 @@ T.health = T.maxHealth icon_state = "soulstone2" name = "soulstone: Shade of [T.real_name]" - T << "Your soul has been captured by the soulstone. Its arcane energies are reknitting your ethereal form." + to_chat(T, "Your soul has been captured by the soulstone. Its arcane energies are reknitting your ethereal form.") if(user != T) - user << "Capture successful!: [T.real_name]'s soul has been captured and stored within the soulstone." + to_chat(user, "Capture successful!: [T.real_name]'s soul has been captured and stored within the soulstone.") if("CONSTRUCT") var/obj/structure/constructshell/T = target @@ -195,7 +193,7 @@ user.drop_item() qdel(src) else - user << "Creation failed!: The soul stone is empty! Go kill someone!" + to_chat(user, "Creation failed!: The soul stone is empty! Go kill someone!") /proc/makeNewConstruct(mob/living/simple_animal/hostile/construct/ctype, mob/target, mob/stoner = null, cultoverride = 0, loc_override = null) @@ -206,9 +204,9 @@ if(newstruct.mind && ((stoner && iscultist(stoner)) || cultoverride) && ticker && ticker.mode) ticker.mode.add_cultist(newstruct.mind, 0) if(iscultist(stoner) || cultoverride) - newstruct << "You are still bound to serve the cult[stoner ? " and [stoner]":""], follow their orders and help them complete their goals at all costs." + to_chat(newstruct, "You are still bound to serve the cult[stoner ? " and [stoner]":""], follow their orders and help them complete their goals at all costs.") else if(stoner) - newstruct << "You are still bound to serve your creator, [stoner], follow their orders and help them complete their goals at all costs." + to_chat(newstruct, "You are still bound to serve your creator, [stoner], follow their orders and help them complete their goals at all costs.") newstruct.cancel_camera() @@ -230,11 +228,11 @@ name = "soulstone: Shade of [T.real_name]" icon_state = "soulstone2" if(U && (iswizard(U) || usability)) - S << "Your soul has been captured! You are now bound to [U.real_name]'s will. Help them succeed in their goals at all costs." + to_chat(S, "Your soul has been captured! You are now bound to [U.real_name]'s will. Help them succeed in their goals at all costs.") else if(U && iscultist(U)) - S << "Your soul has been captured! You are now bound to the cult's will. Help them succeed in their goals at all costs." + to_chat(S, "Your soul has been captured! You are now bound to the cult's will. Help them succeed in their goals at all costs.") if(vic && U) - U << "Capture successful!: [T.real_name]'s soul has been ripped from their body and stored within the soul stone." + to_chat(U, "Capture successful!: [T.real_name]'s soul has been ripped from their body and stored within the soul stone.") /obj/item/device/soulstone/proc/getCultGhost(mob/living/carbon/human/T, mob/U) @@ -252,7 +250,7 @@ if(!T) return 0 if(!chosen_ghost) - U << "There were no spirits willing to become a shade." + to_chat(U, "There were no spirits willing to become a shade.") return 0 if(contents.len) //If they used the soulstone on someone else in the meantime return 0 diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm index c7d8fd171e..d5049d3b24 100644 --- a/code/game/gamemodes/wizard/spellbook.dm +++ b/code/game/gamemodes/wizard/spellbook.dm @@ -35,7 +35,7 @@ for(var/obj/effect/proc_holder/spell/aspell in user.mind.spell_list) if(initial(S.name) == initial(aspell.name)) // Not using directly in case it was learned from one spellbook then upgraded in another if(aspell.spell_level >= aspell.level_max) - user << "This spell cannot be improved further." + to_chat(user, "This spell cannot be improved further.") return 0 else aspell.name = initial(aspell.name) @@ -45,24 +45,24 @@ aspell.charge_counter = aspell.charge_max switch(aspell.spell_level) if(1) - user << "You have improved [aspell.name] into Efficient [aspell.name]." + to_chat(user, "You have improved [aspell.name] into Efficient [aspell.name].") aspell.name = "Efficient [aspell.name]" if(2) - user << "You have further improved [aspell.name] into Quickened [aspell.name]." + to_chat(user, "You have further improved [aspell.name] into Quickened [aspell.name].") aspell.name = "Quickened [aspell.name]" if(3) - user << "You have further improved [aspell.name] into Free [aspell.name]." + to_chat(user, "You have further improved [aspell.name] into Free [aspell.name].") aspell.name = "Free [aspell.name]" if(4) - user << "You have further improved [aspell.name] into Instant [aspell.name]." + to_chat(user, "You have further improved [aspell.name] into Instant [aspell.name].") aspell.name = "Instant [aspell.name]" if(aspell.spell_level >= aspell.level_max) - user << "This spell cannot be strengthened any further." + to_chat(user, "This spell cannot be strengthened any further.") return 1 //No same spell found - just learn it feedback_add_details("wizard_spell_learned",log_name) user.mind.AddSpell(S) - user << "You have learned [S.name]." + to_chat(user, "You have learned [S.name].") return 1 /datum/spellbook_entry/proc/CanRefund(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) @@ -78,7 +78,7 @@ /datum/spellbook_entry/proc/Refund(mob/living/carbon/human/user,obj/item/weapon/spellbook/book) //return point value or -1 for failure var/area/wizard_station/A = locate() if(!(user in A.contents)) - user << "You can only refund spells at the wizard lair" + to_chat(user, "You can only refund spells at the wizard lair") return -1 if(!S) S = new spell_type() @@ -277,6 +277,14 @@ category = "Defensive" cost = 1 +/datum/spellbook_entry/the_traps + name = "The Traps!" + spell_type = /obj/effect/proc_holder/spell/aoe_turf/conjure/the_traps + log_name = "TT" + category = "Offensive" + cost = 1 + + /datum/spellbook_entry/item name = "Buy Item" refundable = 0 @@ -493,6 +501,25 @@ dat += "Already cast!
" return dat +/datum/spellbook_entry/summon/ghosts + name = "Summon Ghosts" + desc = "Spook the crew out by making them see dead people. Be warned, ghosts are capricious and occasionally vindicative, and some will use their incredibly minor abilties to frustrate you." + log_name = "SGH" + +/datum/spellbook_entry/summon/ghosts/IsAvailible() + if(!ticker.mode) + return FALSE + else + return TRUE + +/datum/spellbook_entry/summon/ghosts/Buy(mob/living/carbon/human/user, obj/item/weapon/spellbook/book) + feedback_add_details("wizard_spell_learned", log_name) + new /datum/round_event/wizard/ghost() + active = TRUE + to_chat(user, "You have cast summon ghosts!") + playsound(get_turf(user), 'sound/effects/ghost2.ogg', 50, 1) + return TRUE + /datum/spellbook_entry/summon/guns name = "Summon Guns" desc = "Nothing could possibly go wrong with arming a crew of lunatics just itching for an excuse to kill you. Just be careful not to stand still too long!" @@ -508,7 +535,7 @@ rightandwrong(0, user, 25) active = 1 playsound(get_turf(user), 'sound/magic/CastSummon.ogg', 50, 1) - user << "You have cast summon guns!" + to_chat(user, "You have cast summon guns!") return 1 /datum/spellbook_entry/summon/magic @@ -526,7 +553,7 @@ rightandwrong(1, user, 25) active = 1 playsound(get_turf(user), 'sound/magic/CastSummon.ogg', 50, 1) - user << "You have cast summon magic!" + to_chat(user, "You have cast summon magic!") return 1 /datum/spellbook_entry/summon/events @@ -546,7 +573,7 @@ summonevents() times++ playsound(get_turf(user), 'sound/magic/CastSummon.ogg', 50, 1) - user << "You have cast summon events." + to_chat(user, "You have cast summon events.") return 1 /datum/spellbook_entry/summon/events/GetInfo() @@ -574,9 +601,9 @@ /obj/item/weapon/spellbook/examine(mob/user) ..() if(owner) - user << "There is a small signature on the front cover: \"[owner]\"." + to_chat(user, "There is a small signature on the front cover: \"[owner]\".") else - user << "It appears to have no author." + to_chat(user, "It appears to have no author.") /obj/item/weapon/spellbook/Initialize() ..() @@ -594,16 +621,16 @@ if(istype(O, /obj/item/weapon/antag_spawner/contract)) var/obj/item/weapon/antag_spawner/contract/contract = O if(contract.used) - user << "The contract has been used, you can't get your points back now!" + to_chat(user, "The contract has been used, you can't get your points back now!") else - user << "You feed the contract back into the spellbook, refunding your points." + to_chat(user, "You feed the contract back into the spellbook, refunding your points.") uses++ for(var/datum/spellbook_entry/item/contract/CT in entries) if(!isnull(CT.limit)) CT.limit++ qdel(O) else if(istype(O, /obj/item/weapon/antag_spawner/slaughter_demon)) - user << "On second thought, maybe summoning a demon is a bad idea. You refund your points." + to_chat(user, "On second thought, maybe summoning a demon is a bad idea. You refund your points.") uses++ for(var/datum/spellbook_entry/item/bloodbottle/BB in entries) if(!isnull(BB.limit)) @@ -662,11 +689,11 @@ /obj/item/weapon/spellbook/attack_self(mob/user) if(!owner) - user << "You bind the spellbook to yourself." + to_chat(user, "You bind the spellbook to yourself.") owner = user return if(user != owner) - user << "The [name] does not recognize you as its owner and refuses to open!" + to_chat(user, "The [name] does not recognize you as its owner and refuses to open!") return user.set_machine(src) var/dat = "" @@ -773,8 +800,8 @@ recoil(user) else user.mind.AddSpell(S) - user <<"you rapidly read through the arcane book. Suddenly you realize you understand [spellname]!" - user.attack_log += text("\[[time_stamp()]\] [user.real_name] ([user.ckey]) learned the spell [spellname] ([S]).") + user <<"You rapidly read through the arcane book. Suddenly you realize you understand [spellname]!" + user.log_message("learned the spell [spellname] ([S]).", INDIVIDUAL_ATTACK_LOG) onlearned(user) /obj/item/weapon/spellbook/oneuse/proc/recoil(mob/user) diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm index 7c3d3a3b0b..bd89a96e28 100644 --- a/code/game/gamemodes/wizard/wizard.dm +++ b/code/game/gamemodes/wizard/wizard.dm @@ -26,7 +26,7 @@ wizard.assigned_role = "Wizard" wizard.special_role = "Wizard" if(wizardstart.len == 0) - wizard.current << "A starting location for you could not be found, please report this bug!" + to_chat(wizard.current, "A starting location for you could not be found, please report this bug!") return 0 for(var/datum/mind/wiz in wizards) wiz.current.loc = pick(wizardstart) @@ -115,8 +115,8 @@ /datum/game_mode/proc/greet_wizard(datum/mind/wizard, you_are=1) if (you_are) - wizard.current << "You are the Space Wizard!" - wizard.current << "The Space Wizards Federation has given you the following tasks:" + to_chat(wizard.current, "You are the Space Wizard!") + to_chat(wizard.current, "The Space Wizards Federation has given you the following tasks:") wizard.announce_objectives() return @@ -155,9 +155,9 @@ spellbook.owner = wizard_mob wizard_mob.put_in_hands_or_del(spellbook) - wizard_mob << "You will find a list of available spells in your spell book. Choose your magic arsenal carefully." - wizard_mob << "The spellbook is bound to you, and others cannot use it." - wizard_mob << "In your pockets you will find a teleport scroll. Use it as needed." + to_chat(wizard_mob, "You will find a list of available spells in your spell book. Choose your magic arsenal carefully.") + to_chat(wizard_mob, "The spellbook is bound to you, and others cannot use it.") + to_chat(wizard_mob, "In your pockets you will find a teleport scroll. Use it as needed.") wizard_mob.mind.store_memory("Remember: do not forget to prepare your spells.") return 1 @@ -177,7 +177,7 @@ /datum/game_mode/wizard/declare_completion() if(finished) feedback_set_details("round_end_result","loss - wizard killed") - world << "The wizard[(wizards.len>1)?"s":""] has been killed by the crew! The Space Wizards Federation has been taught a lesson they will not soon forget!" + to_chat(world, "The wizard[(wizards.len>1)?"s":""] has been killed by the crew! The Space Wizards Federation has been taught a lesson they will not soon forget!") ticker.news_report = WIZARD_KILLED @@ -231,7 +231,7 @@ i++ text += "
" - world << text + to_chat(world, text) return 1 //OTHER PROCS diff --git a/code/game/machinery/PDApainter.dm b/code/game/machinery/PDApainter.dm index a0c92ca988..052eb2d037 100644 --- a/code/game/machinery/PDApainter.dm +++ b/code/game/machinery/PDApainter.dm @@ -68,7 +68,7 @@ else if(istype(O, /obj/item/device/pda)) if(storedpda) - user << "There is already a PDA inside!" + to_chat(user, "There is already a PDA inside!") return else var/obj/item/device/pda/P = user.get_active_held_item() @@ -91,13 +91,13 @@ if(do_after(user,40*WT.toolspeed, 1, target = src)) if(!WT.isOn() || !(stat & BROKEN)) return - user << "You repair [src]." + to_chat(user, "You repair [src].") playsound(loc, 'sound/items/Welder2.ogg', 50, 1) stat &= ~BROKEN obj_integrity = max_integrity update_icon() else - user << "[src] does not need repairs." + to_chat(user, "[src] does not need repairs.") else return ..() @@ -125,7 +125,7 @@ ejectpda() else - user << "\The [src] is empty." + to_chat(user, "\The [src] is empty.") /obj/machinery/pdapainter/verb/ejectpda() @@ -141,7 +141,7 @@ storedpda = null update_icon() else - usr << "The [src] is empty." + to_chat(usr, "The [src] is empty.") /obj/machinery/pdapainter/power_change() diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index e06cb3b333..f79cd7f666 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -80,7 +80,7 @@ if((isnull(user) || istype(user)) && state_open && !panel_open) ..(user) if(occupant && occupant.stat != DEAD) - occupant << "You feel cool air surround you. You go numb as your senses turn inward." + to_chat(occupant, "You feel cool air surround you. You go numb as your senses turn inward.") /obj/machinery/sleeper/emp_act(severity) if(is_operational() && occupant) @@ -165,11 +165,11 @@ if(inject_chem(chem)) . = TRUE if(scrambled_chems && prob(5)) - usr << "Chem System Re-route detected, results may not be as expected!" + to_chat(usr, "Chem System Re-route detected, results may not be as expected!") /obj/machinery/sleeper/emag_act(mob/user) scramble_chem_buttons() - user << "You scramble the sleepers user interface!" + to_chat(user, "You scramble the sleepers user interface!") /obj/machinery/sleeper/proc/inject_chem(chem) if((chem in available_chems) && chem_allowed(chem)) diff --git a/code/game/machinery/ai_slipper.dm b/code/game/machinery/ai_slipper.dm index 6be6cfb965..95b972489e 100644 --- a/code/game/machinery/ai_slipper.dm +++ b/code/game/machinery/ai_slipper.dm @@ -40,7 +40,7 @@ else // trying to unlock the interface if (src.allowed(user)) locked = !locked - user << "You [ locked ? "lock" : "unlock"] the device." + to_chat(user, "You [ locked ? "lock" : "unlock"] the device.") if (locked) if (user.machine==src) user.unset_machine() @@ -49,7 +49,7 @@ if (user.machine==src) src.attack_hand(user) else - user << "Access denied." + to_chat(user, "Access denied.") /obj/machinery/ai_slipper/attack_ai(mob/user) @@ -60,7 +60,7 @@ return if ( (get_dist(src, user) > 1 )) if (!(issilicon(user) || IsAdminGhost(user))) - user << text("Too far away.") + to_chat(user, text("Too far away.")) user.unset_machine() user << browse(null, "window=ai_slipper") return @@ -82,7 +82,7 @@ return if (src.locked) if(!(issilicon(usr)|| IsAdminGhost(usr))) - usr << "Control panel is locked!" + to_chat(usr, "Control panel is locked!") return if (href_list["toggleOn"]) src.disabled = !src.disabled diff --git a/code/game/machinery/announcement_system.dm b/code/game/machinery/announcement_system.dm index 3e8bfa1cc5..851b47f3a2 100644 --- a/code/game/machinery/announcement_system.dm +++ b/code/game/machinery/announcement_system.dm @@ -61,7 +61,7 @@ var/list/announcement_systems = list() add_overlay(errorlight) /obj/machinery/announcement_system/Destroy() - qdel(radio) + QDEL_NULL(radio) announcement_systems -= src //"OH GOD WHY ARE THERE 100,000 LISTED ANNOUNCEMENT SYSTEMS?!!" return ..() @@ -73,12 +73,12 @@ var/list/announcement_systems = list() if(istype(P, /obj/item/weapon/screwdriver)) playsound(src.loc, P.usesound, 50, 1) panel_open = !panel_open - user << "You [panel_open ? "open" : "close"] the maintenance hatch of [src]." + to_chat(user, "You [panel_open ? "open" : "close"] the maintenance hatch of [src].") update_icon() else if(default_deconstruction_crowbar(P)) return else if(istype(P, /obj/item/device/multitool) && panel_open && (stat & BROKEN)) - user << "You reset [src]'s firmware." + to_chat(user, "You reset [src]'s firmware.") stat &= ~BROKEN update_icon() else @@ -97,9 +97,10 @@ var/list/announcement_systems = list() if(message_type == "ARRIVAL" && arrivalToggle) message = CompileText(arrival, user, rank) - else if(message_type == "NEWHEAD" && newheadToggle) message = CompileText(newhead, user, rank) + else if(message_type == "ARRIVALS_BROKEN") + message = "The arrivals shuttle has been damaged. Docking for repairs..." if(channels.len == 0) radio.talk_into(src, message, null, list(SPAN_ROBOT)) @@ -159,7 +160,7 @@ var/list/announcement_systems = list() if(!issilicon(user)) return if(stat & BROKEN) - user << "[src]'s firmware appears to be malfunctioning!" + to_chat(user, "[src]'s firmware appears to be malfunctioning!") return interact(user) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 2bf0291e4d..5e6201cc04 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -97,7 +97,7 @@ /obj/machinery/autolathe/attackby(obj/item/O, mob/user, params) if (busy) - user << "The autolathe is busy. Please wait for completion of previous operation." + to_chat(user, "The autolathe is busy. Please wait for completion of previous operation.") return 1 if(default_deconstruction_screwdriver(user, "autolathe_t", "autolathe", O)) @@ -135,18 +135,18 @@ busy = 0 return 1 - if(O.flags & HOLOGRAM) + if(HAS_SECONDARY_FLAG(O, HOLOGRAM)) return 1 var/material_amount = materials.get_item_material_amount(O) if(!material_amount) - user << "This object does not contain sufficient amounts of metal or glass to be accepted by the autolathe." + to_chat(user, "This object does not contain sufficient amounts of metal or glass to be accepted by the autolathe.") return 1 if(!materials.has_space(material_amount)) - user << "The autolathe is full. Please remove metal or glass from the autolathe in order to insert more." + to_chat(user, "The autolathe is full. Please remove metal or glass from the autolathe in order to insert more.") return 1 if(!user.temporarilyRemoveItemFromInventory(O)) - user << "\The [O] is stuck to you and cannot be placed into the autolathe." + to_chat(user, "\The [O] is stuck to you and cannot be placed into the autolathe.") return 1 busy = 1 @@ -157,12 +157,12 @@ flick("autolathe_o",src)//plays metal insertion animation if (O.materials[MAT_GLASS]) flick("autolathe_r",src)//plays glass insertion animation - user << "You insert [inserted] sheet[inserted>1 ? "s" : ""] to the autolathe." + to_chat(user, "You insert [inserted] sheet[inserted>1 ? "s" : ""] to the autolathe.") use_power(inserted*100) if(!QDELETED(O)) user.put_in_active_hand(O) else - user << "You insert a material total of [inserted] to the autolathe." + to_chat(user, "You insert a material total of [inserted] to the autolathe.") use_power(max(500,inserted/10)) qdel(O) else @@ -248,7 +248,7 @@ matching_designs.Add(D) updateUsrDialog() else - usr << "The autolathe is busy. Please wait for completion of previous operation." + to_chat(usr, "The autolathe is busy. Please wait for completion of previous operation.") updateUsrDialog() diff --git a/code/game/machinery/bank_machine.dm b/code/game/machinery/bank_machine.dm index 16b94c1236..35f7babe1e 100644 --- a/code/game/machinery/bank_machine.dm +++ b/code/game/machinery/bank_machine.dm @@ -16,7 +16,7 @@ value = C.value if(value) SSshuttle.points += value - user << "You deposit [I]. The station now has [SSshuttle.points] credits." + to_chat(user, "You deposit [I]. The station now has [SSshuttle.points] credits.") qdel(I) return return ..() diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm index 0db41261e1..6fa2aeffc5 100644 --- a/code/game/machinery/buttons.dm +++ b/code/game/machinery/buttons.dm @@ -62,34 +62,34 @@ default_deconstruction_screwdriver(user, "button-open", "[skin]",W) update_icon() else - user << "Maintenance Access Denied" + to_chat(user, "Maintenance Access Denied") flick("[skin]-denied", src) return if(panel_open) if(!device && istype(W, /obj/item/device/assembly)) if(!user.transferItemToLoc(W, src)) - user << "\The [W] is stuck to you!" + to_chat(user, "\The [W] is stuck to you!") return device = W - user << "You add [W] to the button." + to_chat(user, "You add [W] to the button.") if(!board && istype(W, /obj/item/weapon/electronics/airlock)) if(!user.transferItemToLoc(W, src)) - user << "\The [W] is stuck to you!" + to_chat(user, "\The [W] is stuck to you!") return board = W if(board.one_access) req_one_access = board.accesses else req_access = board.accesses - user << "You add [W] to the button." + to_chat(user, "You add [W] to the button.") if(!device && !board && istype(W, /obj/item/weapon/wrench)) - user << "You start unsecuring the button frame..." + to_chat(user, "You start unsecuring the button frame...") playsound(loc, W.usesound, 50, 1) if(do_after(user, 40*W.toolspeed, target = src)) - user << "You unsecure the button frame." + to_chat(user, "You unsecure the button frame.") transfer_fingerprints_to(new /obj/item/wallframe/button(get_turf(src))) playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) qdel(src) @@ -132,14 +132,14 @@ req_one_access = list() board = null update_icon() - user << "You remove electronics from the button frame." + to_chat(user, "You remove electronics from the button frame.") else if(skin == "doorctrl") skin = "launcher" else skin = "doorctrl" - user << "You change the button frame's front panel." + to_chat(user, "You change the button frame's front panel.") return if((stat & (NOPOWER|BROKEN))) @@ -149,7 +149,7 @@ return if(!allowed(user)) - user << "Access Denied" + to_chat(user, "Access Denied") flick("[skin]-denied", src) return diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index 4550852341..02903a1133 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -89,7 +89,7 @@ network = list() cameranet.removeCamera(src) stat |= EMPED - SetLuminosity(0) + set_light(0) emped = emped+1 //Increase the number of consecutive EMP's update_icon() var/thisemp = emped //Take note of which EMP this proc is for @@ -108,7 +108,7 @@ if (O.client && O.client.eye == src) O.unset_machine() O.reset_perspective(null) - O << "The screen bursts into static." + to_chat(O, "The screen bursts into static.") ..() /obj/machinery/camera/tesla_act(var/power)//EMP proof upgrade also makes it tesla immune @@ -138,7 +138,7 @@ // DECONSTRUCTION if(istype(W, /obj/item/weapon/screwdriver)) panel_open = !panel_open - user << "You screw the camera's panel [panel_open ? "open" : "closed"]." + to_chat(user, "You screw the camera's panel [panel_open ? "open" : "closed"].") playsound(src.loc, W.usesound, 50, 1) return @@ -150,7 +150,7 @@ else if(istype(W, /obj/item/device/multitool)) //change focus setViewRange((view_range == initial(view_range)) ? short_range : initial(view_range)) - user << "You [(view_range == initial(view_range)) ? "restore" : "mess up"] the camera's focus." + to_chat(user, "You [(view_range == initial(view_range)) ? "restore" : "mess up"] the camera's focus.") return else if(istype(W, /obj/item/weapon/weldingtool)) @@ -165,27 +165,27 @@ return upgradeXRay() qdel(W) - user << "[msg]" + to_chat(user, "[msg]") else - user << "[msg2]" + to_chat(user, "[msg2]") return else if(istype(W, /obj/item/stack/sheet/mineral/plasma)) if(!isEmpProof()) upgradeEmpProof() - user << "[msg]" + to_chat(user, "[msg]") qdel(W) else - user << "[msg2]" + to_chat(user, "[msg2]") return else if(istype(W, /obj/item/device/assembly/prox_sensor)) if(!isMotion()) upgradeMotion() - user << "[msg]" + to_chat(user, "[msg]") qdel(W) else - user << "[msg2]" + to_chat(user, "[msg2]") return // OTHER @@ -204,7 +204,7 @@ P = W itemname = P.name info = P.notehtml - U << "You hold \the [itemname] up to the camera..." + to_chat(U, "You hold \the [itemname] up to the camera...") U.changeNext_move(CLICK_CD_MELEE) for(var/mob/O in player_list) if(isAI(O)) @@ -212,25 +212,25 @@ if(AI.control_disabled || (AI.stat == DEAD)) return if(U.name == "Unknown") - AI << "[U] holds \a [itemname] up to one of your cameras ..." + to_chat(AI, "[U] holds \a [itemname] up to one of your cameras ...") else - AI << "[U] holds \a [itemname] up to one of your cameras ..." + to_chat(AI, "[U] holds \a [itemname] up to one of your cameras ...") AI.last_paper_seen = "[itemname][info]" else if (O.client && O.client.eye == src) - O << "[U] holds \a [itemname] up to one of the cameras ..." + to_chat(O, "[U] holds \a [itemname] up to one of the cameras ...") O << browse(text("[][]", itemname, info), text("window=[]", itemname)) return else if(istype(W, /obj/item/device/camera_bug)) if(!can_use()) - user << "Camera non-functional." + to_chat(user, "Camera non-functional.") return if(bug) - user << "Camera bug removed." + to_chat(user, "Camera bug removed.") bug.bugged_cameras -= src.c_tag bug = null else - user << "Camera bugged." + to_chat(user, "Camera bugged.") bug = W bug.bugged_cameras[src.c_tag] = src return @@ -280,7 +280,7 @@ if(can_use()) cameranet.addCamera(src) else - SetLuminosity(0) + set_light(0) cameranet.removeCamera(src) cameranet.updateChunk(x, y, z) var/change_msg = "deactivates" @@ -305,7 +305,7 @@ if (O.client && O.client.eye == src) O.unset_machine() O.reset_perspective(null) - O << "The screen bursts into static." + to_chat(O, "The screen bursts into static.") /obj/machinery/camera/proc/triggerCameraAlarm() alarm_on = 1 @@ -374,7 +374,7 @@ if(!WT.remove_fuel(0, user)) return 0 - user << "You start to weld [src]..." + to_chat(user, "You start to weld [src]...") playsound(src.loc, WT.usesound, 50, 1) busy = 1 if(do_after(user, 100*WT.toolspeed, target = src)) @@ -391,9 +391,9 @@ if(cam == src) return if(on) - src.SetLuminosity(AI_CAMERA_LUMINOSITY) + set_light(AI_CAMERA_LUMINOSITY) else - src.SetLuminosity(0) + set_light(0) /obj/machinery/camera/portable //Cameras which are placed inside of things, such as helmets. var/turf/prev_turf diff --git a/code/game/machinery/camera/camera_assembly.dm b/code/game/machinery/camera/camera_assembly.dm index 95608f2f1a..4b22a6602d 100644 --- a/code/game/machinery/camera/camera_assembly.dm +++ b/code/game/machinery/camera/camera_assembly.dm @@ -43,14 +43,14 @@ // State 1 if(istype(W, /obj/item/weapon/weldingtool)) if(weld(W, user)) - user << "You weld the assembly securely into place." + to_chat(user, "You weld the assembly securely into place.") anchored = 1 state = 2 return else if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, W.usesound, 50, 1) - user << "You unattach the assembly from its place." + to_chat(user, "You unattach the assembly from its place.") new /obj/item/wallframe/camera(get_turf(src)) qdel(src) return @@ -60,17 +60,17 @@ if(istype(W, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/C = W if(C.use(2)) - user << "You add wires to the assembly." + to_chat(user, "You add wires to the assembly.") state = 3 else - user << "You need two lengths of cable to wire a camera!" + to_chat(user, "You need two lengths of cable to wire a camera!") return return else if(istype(W, /obj/item/weapon/weldingtool)) if(weld(W, user)) - user << "You unweld the assembly from its place." + to_chat(user, "You unweld the assembly from its place.") state = 1 anchored = 1 return @@ -83,12 +83,12 @@ var/input = stripped_input(user, "Which networks would you like to connect this camera to? Seperate networks with a comma. No Spaces!\nFor example: SS13,Security,Secret ", "Set Network", "SS13") if(!input) - user << "No input found, please hang up and try your call again!" + to_chat(user, "No input found, please hang up and try your call again!") return var/list/tempnetwork = splittext(input, ",") if(tempnetwork.len < 1) - user << "No network found, please hang up and try your call again!" + to_chat(user, "No network found, please hang up and try your call again!") return state = 4 @@ -105,7 +105,7 @@ else if(istype(W, /obj/item/weapon/wirecutters)) new/obj/item/stack/cable_coil(get_turf(src), 2) playsound(src.loc, W.usesound, 50, 1) - user << "You cut the wires from the circuits." + to_chat(user, "You cut the wires from the circuits.") state = 2 return @@ -113,7 +113,7 @@ if(is_type_in_list(W, possible_upgrades) && !is_type_in_list(W, upgrades)) // Is a possible upgrade and isn't in the camera already. if(!user.drop_item(W)) return - user << "You attach \the [W] into the assembly inner circuits." + to_chat(user, "You attach \the [W] into the assembly inner circuits.") upgrades += W W.forceMove(src) return @@ -122,7 +122,7 @@ else if(istype(W, /obj/item/weapon/crowbar) && upgrades.len) var/obj/U = locate(/obj) in upgrades if(U) - user << "You unattach an upgrade from the assembly." + to_chat(user, "You unattach an upgrade from the assembly.") playsound(src.loc, W.usesound, 50, 1) U.loc = get_turf(src) upgrades -= U @@ -133,7 +133,7 @@ /obj/structure/camera_assembly/proc/weld(obj/item/weapon/weldingtool/WT, mob/living/user) if(!WT.remove_fuel(0, user)) return 0 - user << "You start to weld \the [src]..." + to_chat(user, "You start to weld \the [src]...") playsound(src.loc, WT.usesound, 50, 1) if(do_after(user, 20*WT.toolspeed, target = src)) if(WT.isOn()) diff --git a/code/game/machinery/camera/tracking.dm b/code/game/machinery/camera/tracking.dm index 8ff0c52f44..a007aef101 100644 --- a/code/game/machinery/camera/tracking.dm +++ b/code/game/machinery/camera/tracking.dm @@ -93,11 +93,11 @@ U.tracking = 1 if(!target || !target.can_track(usr)) - U << "Target is not near any active cameras." + to_chat(U, "Target is not near any active cameras.") U.cameraFollow = null return - U << "Now tracking [target.get_visible_name()] on camera." + to_chat(U, "Now tracking [target.get_visible_name()] on camera.") var/cameraticks = 0 spawn(0) @@ -108,11 +108,11 @@ if(!target.can_track(usr)) U.tracking = 1 if(!cameraticks) - U << "Target is not near any active cameras. Attempting to reacquire..." + to_chat(U, "Target is not near any active cameras. Attempting to reacquire...") cameraticks++ if(cameraticks > 9) U.cameraFollow = null - U << "Unable to reacquire, cancelling track..." + to_chat(U, "Unable to reacquire, cancelling track...") tracking = 0 return else diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm index 4875b15a07..9f63391c86 100644 --- a/code/game/machinery/cell_charger.dm +++ b/code/game/machinery/cell_charger.dm @@ -28,27 +28,27 @@ /obj/machinery/cell_charger/examine(mob/user) ..() - user << "There's [charging ? "a" : "no"] cell in the charger." + to_chat(user, "There's [charging ? "a" : "no"] cell in the charger.") if(charging) - user << "Current charge: [round(charging.percent(), 1)]%" + to_chat(user, "Current charge: [round(charging.percent(), 1)]%") /obj/machinery/cell_charger/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/stock_parts/cell)) if(stat & BROKEN) - user << "[src] is broken!" + to_chat(user, "[src] is broken!") return if(!anchored) - user << "[src] isn't attached to the ground!" + to_chat(user, "[src] isn't attached to the ground!") return if(charging) - user << "There is already a cell in the charger!" + to_chat(user, "There is already a cell in the charger!") return else var/area/a = loc.loc // Gets our locations location, like a dream within a dream if(!isarea(a)) return if(a.power_equip == 0) // There's no APC in this area, don't try to cheat power! - user << "The [name] blinks red as you try to insert the cell!" + to_chat(user, "The [name] blinks red as you try to insert the cell!") return if(!user.drop_item()) return @@ -60,11 +60,11 @@ updateicon() else if(istype(W, /obj/item/weapon/wrench)) if(charging) - user << "Remove the cell first!" + to_chat(user, "Remove the cell first!") return anchored = !anchored - user << "You [anchored ? "attach" : "detach"] the cell charger [anchored ? "to" : "from"] the ground" + to_chat(user, "You [anchored ? "attach" : "detach"] the cell charger [anchored ? "to" : "from"] the ground") playsound(src.loc, W.usesound, 75, 1) else return ..() @@ -92,7 +92,7 @@ return charging.forceMove(loc) - user << "You telekinetically remove [charging] from [src]." + to_chat(user, "You telekinetically remove [charging] from [src].") removecell() diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 898d41ae47..d63e6dc4e0 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -38,7 +38,11 @@ // The "brine" is the reagents that are automatically added in small // amounts to the occupant. - var/static/list/brine_types = list("salbutamol", "bicaridine", "corazone") + var/static/list/brine_types = list( + "salbutamol", // anti-oxyloss + "bicaridine", // NOBREATHE species take brute in crit + "corazone", // prevents cardiac arrest damage + "mimesbane") // stops them gasping from lack of air. /obj/machinery/clonepod/New() ..() @@ -106,11 +110,11 @@ /obj/item/weapon/disk/data/attack_self(mob/user) read_only = !read_only - user << "You flip the write-protect tab to [read_only ? "protected" : "unprotected"]." + to_chat(user, "You flip the write-protect tab to [read_only ? "protected" : "unprotected"].") /obj/item/weapon/disk/data/examine(mob/user) ..() - user << "The write-protect tab is set to [read_only ? "protected" : "unprotected"]." + to_chat(user, "The write-protect tab is set to [read_only ? "protected" : "unprotected"].") //Clonepod @@ -118,9 +122,9 @@ /obj/machinery/clonepod/examine(mob/user) ..() if(mess) - user << "It's filled with blood and viscera. You swear you can see it moving..." + to_chat(user, "It's filled with blood and viscera. You swear you can see it moving...") if (is_operational() && (!isnull(occupant)) && (occupant.stat != DEAD)) - user << "Current clone cycle is [round(get_completion())]% complete." + to_chat(user, "Current clone cycle is [round(get_completion())]% complete.") /obj/machinery/clonepod/proc/get_completion() . = (100 * ((occupant.health + 100) / (heal_level + 100))) @@ -184,16 +188,13 @@ check_brine() // put in chemicals NOW to stop death via cardiac arrest H.Paralyse(4) - if(grab_ghost_when == CLONER_FRESH_CLONE) - clonemind.transfer_to(H) - H.ckey = ckey - H << "Consciousness slowly creeps over you \ - as your body regenerates.
So this is what cloning \ - feels like?
" - else if(grab_ghost_when == CLONER_MATURE_CLONE) - clonemind.current << "Your body is \ - beginning to regenerate in a cloning pod. You will \ - become conscious when it is complete." + clonemind.transfer_to(H) + + H.grab_ghost() + to_chat(H, "Consciousness slowly creeps over you as your body regenerates.
So this is what cloning feels like?
") + + if(grab_ghost_when == CLONER_MATURE_CLONE) + addtimer(CALLBACK(src, .proc/occupant_dreams), 100) if(H) H.faction |= factions @@ -204,6 +205,11 @@ attempting = FALSE return TRUE +/obj/machinery/clonepod/proc/occupant_dreams() + if(occupant) + to_chat(occupant, "While your body grows, you have the strangest dream, like you can see yourself from the outside.") + occupant.ghostize(TRUE) + //Grow clones to maturity then kick them out. FREELOADERS /obj/machinery/clonepod/process() @@ -275,30 +281,30 @@ if(istype(P.buffer, /obj/machinery/computer/cloning)) if(get_area(P.buffer) != get_area(src)) - user << "-% Cannot link machines across power zones. Buffer cleared %-" + to_chat(user, "-% Cannot link machines across power zones. Buffer cleared %-") P.buffer = null return - user << "-% Successfully linked [P.buffer] with [src] %-" + to_chat(user, "-% Successfully linked [P.buffer] with [src] %-") var/obj/machinery/computer/cloning/comp = P.buffer if(connected) connected.DetachCloner(src) comp.AttachCloner(src) else P.buffer = src - user << "-% Successfully stored \ref[P.buffer] [P.buffer.name] in buffer %-" + to_chat(user, "-% Successfully stored \ref[P.buffer] [P.buffer.name] in buffer %-") return if(W.GetID()) if(!check_access(W)) - user << "Access Denied." + to_chat(user, "Access Denied.") return if(!(occupant || mess)) - user << "Error: Pod has no occupant." + to_chat(user, "Error: Pod has no occupant.") return else connected_message("Authorized Ejection") SPEAK("An authorized ejection of [occupant.real_name] has occurred.") - user << "You force an emergency ejection. " + to_chat(user, "You force an emergency ejection. ") go_out() else return ..() @@ -306,7 +312,7 @@ /obj/machinery/clonepod/emag_act(mob/user) if(!occupant) return - user << "You corrupt the genetic compiler." + to_chat(user, "You corrupt the genetic compiler.") malfunction() //Put messages in the connected computer's temp var for display. @@ -334,10 +340,8 @@ return if(grab_ghost_when == CLONER_MATURE_CLONE) - clonemind.transfer_to(occupant) occupant.grab_ghost() - occupant << "There is a bright flash!
\ - You feel like a new being.
" + to_chat(occupant, "There is a bright flash!
You feel like a new being.
") occupant.flash_act() var/turf/T = get_turf(src) @@ -357,9 +361,7 @@ clonemind.transfer_to(occupant) occupant.grab_ghost() // We really just want to make you suffer. flash_color(occupant, flash_color="#960000", flash_time=100) - occupant << "Agony blazes across your \ - consciousness as your body is torn apart.
\ - Is this what dying is like? Yes it is.
" + to_chat(occupant, "Agony blazes across your consciousness as your body is torn apart.
Is this what dying is like? Yes it is.
") playsound(src.loc, 'sound/machines/warning-buzzer.ogg', 50, 0) occupant << sound('sound/hallucinations/veryfar_noise.ogg',0,1,50) QDEL_IN(occupant, 40) @@ -370,7 +372,9 @@ /obj/machinery/clonepod/emp_act(severity) if(prob(100/(severity*efficiency))) - malfunction() + connected_message(Gibberish("EMP-caused Accidental Ejection", 0)) + SPEAK(Gibberish("Exposure to electromagnetic fields has caused the ejection of [occupant.real_name] prematurely." ,0)) + go_out() ..() /obj/machinery/clonepod/ex_act(severity, target) diff --git a/code/game/machinery/computer/Operating.dm b/code/game/machinery/computer/Operating.dm index e89178c922..ebb9ea64f6 100644 --- a/code/game/machinery/computer/Operating.dm +++ b/code/game/machinery/computer/Operating.dm @@ -7,6 +7,8 @@ var/mob/living/carbon/human/patient = null var/obj/structure/table/optable/table = null + light_color = LIGHT_COLOR_BLUE + /obj/machinery/computer/operating/Initialize() find_table() @@ -60,4 +62,4 @@ var/datum/surgery_step/surgery_step = procedure.get_surgery_step() dat += "Next step: [capitalize(surgery_step.name)]
" dat += "" - return dat \ No newline at end of file + return dat diff --git a/code/game/machinery/computer/aifixer.dm b/code/game/machinery/computer/aifixer.dm index 435e2230b6..6eac3ca24f 100644 --- a/code/game/machinery/computer/aifixer.dm +++ b/code/game/machinery/computer/aifixer.dm @@ -7,13 +7,14 @@ circuit = /obj/item/weapon/circuitboard/computer/aifixer icon_keyboard = "tech_key" icon_screen = "ai-fixer" + light_color = LIGHT_COLOR_PINK /obj/machinery/computer/aifixer/attackby(obj/I, mob/user, params) if(occupier && istype(I, /obj/item/weapon/screwdriver)) if(stat & (NOPOWER|BROKEN)) - user << "The screws on [name]'s screen won't budge." + to_chat(user, "The screws on [name]'s screen won't budge.") else - user << "The screws on [name]'s screen won't budge and it emits a warning beep." + to_chat(user, "The screws on [name]'s screen won't budge and it emits a warning beep.") else return ..() @@ -93,7 +94,7 @@ if(..()) return if(href_list["fix"]) - usr << "Reconstruction in progress. This will take several minutes." + to_chat(usr, "Reconstruction in progress. This will take several minutes.") playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 25, 0) active = TRUE add_fingerprint(usr) @@ -120,26 +121,26 @@ //Downloading AI from card to terminal. if(interaction == AI_TRANS_FROM_CARD) if(stat & (NOPOWER|BROKEN)) - user << "[src] is offline and cannot take an AI at this time!" + to_chat(user, "[src] is offline and cannot take an AI at this time!") return AI.forceMove(src) occupier = AI AI.control_disabled = 1 AI.radio_enabled = 0 - AI << "You have been uploaded to a stationary terminal. Sadly, there is no remote access from here." - user << "Transfer successful: [AI.name] ([rand(1000,9999)].exe) installed and executed successfully. Local copy has been removed." + to_chat(AI, "You have been uploaded to a stationary terminal. Sadly, there is no remote access from here.") + to_chat(user, "Transfer successful: [AI.name] ([rand(1000,9999)].exe) installed and executed successfully. Local copy has been removed.") card.AI = null update_icon() else //Uploading AI from terminal to card if(occupier && !active) - occupier << "You have been downloaded to a mobile storage device. Still no remote access." - user << "Transfer successful: [occupier.name] ([rand(1000,9999)].exe) removed from host terminal and stored within local memory." + to_chat(occupier, "You have been downloaded to a mobile storage device. Still no remote access.") + to_chat(user, "Transfer successful: [occupier.name] ([rand(1000,9999)].exe) removed from host terminal and stored within local memory.") occupier.loc = card card.AI = occupier occupier = null update_icon() else if (active) - user << "ERROR: Reconstruction in progress." + to_chat(user, "ERROR: Reconstruction in progress.") else if (!occupier) - user << "ERROR: Unable to locate artificial intelligence." + to_chat(user, "ERROR: Unable to locate artificial intelligence.") diff --git a/code/game/machinery/computer/apc_control.dm b/code/game/machinery/computer/apc_control.dm new file mode 100644 index 0000000000..9ada010732 --- /dev/null +++ b/code/game/machinery/computer/apc_control.dm @@ -0,0 +1,210 @@ +/obj/machinery/computer/apc_control + name = "power flow control console" + desc = "Used to remotely control the flow of power to different parts of the station." + icon_screen = "solar" + icon_keyboard = "power_key" + req_access = list(access_engine) + circuit = /obj/item/weapon/circuitboard/computer/apc_control + light_color = LIGHT_COLOR_YELLOW + var/list/apcs //APCs the computer has access to + var/mob/living/operator //Who's operating the computer right now + var/obj/machinery/power/apc/active_apc //The APC we're using right now + var/list/filters //For sorting the results + var/checking_logs = 0 + var/list/logs + var/authenticated = 0 + var/auth_id = "\[NULL\]" + +/obj/machinery/computer/apc_control/Initialize() + apcs = list() //To avoid BYOND making the list run through a ton of procs + filters = list("Name" = null, "Charge Above" = null, "Charge Below" = null, "Responsive" = null) + ..() + +/obj/machinery/computer/apc_control/process() + apcs = list() //Clear the list every tick + for(var/V in apcs_list) + var/obj/machinery/power/apc/APC = V + if(check_apc(APC)) + apcs[APC.name] = APC + if(operator && (!operator.Adjacent(src) || stat)) + operator = null + if(active_apc) + if(!active_apc.locked) + active_apc.say("Remote access canceled. Interface locked.") + playsound(active_apc, 'sound/machines/BoltsDown.ogg', 25, 0) + playsound(active_apc, 'sound/machines/terminal_alert.ogg', 50, 0) + active_apc.locked = TRUE + active_apc.update_icon() + active_apc = null + +/obj/machinery/computer/apc_control/attack_ai(mob/living/AI) //You already have APC access, cheater! + AI << "[src] does not support AI control." + return + +/obj/machinery/computer/apc_control/proc/check_apc(obj/machinery/power/apc/APC) + return APC.z == z && !APC.malfhack && !APC.aidisabled && !APC.emagged && !APC.stat && !istype(APC.area, /area/ai_monitored) && !APC.area.outdoors + +/obj/machinery/computer/apc_control/interact(mob/living/user) + var/dat + if(authenticated) + if(!checking_logs) + dat += "Logged in as [auth_id].

" + dat += "Filters
" + dat += "Name: [filters["Name"] ? filters["Name"] : "None set"]
" + dat += "Charge: \>[filters["Charge Above"] ? filters["Charge Above"] : "NaN"]% and \<[filters["Charge Below"] ? filters["Charge Below"] : "NaN"]%
" + dat += "Accessible: [filters["Responsive"] ? "Non-Responsive Only" : "All"]

" + for(var/A in apcs) + var/obj/machinery/power/apc/APC = apcs[A] + if(filters["Name"] && !findtext(APC.name, filters["Name"]) && !findtext(APC.area.name, filters["Name"])) + continue + if(filters["Charge Above"] && (APC.cell.charge / APC.cell.maxcharge) < filters["Charge Above"] / 100) + continue + if(filters["Charge Below"] && (APC.cell.charge / APC.cell.maxcharge) > filters["Charge Below"] / 100) + continue + if(filters["Responsive"] && !APC.aidisabled) + continue + dat += "[A]
\ + Charge: [APC.cell.charge] / [APC.cell.maxcharge] W ([round((APC.cell.charge / APC.cell.maxcharge) * 100)]%)
\ + Area: [APC.area]
\ + [APC.aidisabled || APC.panel_open ? "APC does not respond to interface query." : "APC responds to interface query."]

" + dat += "Check Logs
" + dat += "Log Out
" + if(emagged) + dat += "WARNING: Logging functionality partially disabled from outside source.
" + dat += "Restore logging functionality?
" + else + if(logs.len) + for(var/entry in logs) + dat += "[entry]
" + else + dat += "No activity has been recorded at this time.
" + if(emagged) + dat += "@#%! CLEAR LOGS" + dat += "Return" + operator = user + else + dat = "Please swipe a valid ID to log in..." + var/datum/browser/popup = new(user, "apc_control", name, 600, 400) + popup.set_content(dat) + popup.set_title_image(user.browse_rsc_icon(icon, icon_state)) + popup.open() + +/obj/machinery/computer/apc_control/Topic(href, href_list) + if(..()) + return + if(!usr || !usr.canUseTopic(src) || usr.incapacitated() || stat || QDELETED(src)) + return + var/image/I = image(src) //For feedback message flavor + if(href_list["authenticate"]) + var/obj/item/weapon/card/id/ID = usr.get_active_held_item() + if(!istype(ID)) + ID = usr.get_idcard() + if(ID && istype(ID)) + if(check_access(ID)) + authenticated = TRUE + auth_id = "[ID.registered_name] ([ID.assignment])" + log_activity("logged in") + if(!authenticated) //Check for emags + var/obj/item/weapon/card/emag/E = usr.get_active_held_item() + if(E && istype(E) && usr.Adjacent(src)) + usr << "You bypass [src]'s access requirements using your emag." + authenticated = TRUE + log_activity("logged in") //Auth ID doesn't change, hinting that it was illicit + if(href_list["log_out"]) + log_activity("logged out") + authenticated = FALSE + auth_id = "\[NULL\]" + if(href_list["restore_logging"]) + to_chat(usr, "\icon[I] Logging functionality restored from backup data.") + emagged = FALSE + LAZYADD(logs, "-=- Logging restored to full functionality at this point -=-") + if(href_list["access_apc"]) + playsound(src, "terminal_type", 50, 0) + var/obj/machinery/power/apc/APC = locate(href_list["access_apc"]) in apcs_list + if(!APC || APC.aidisabled || APC.panel_open || QDELETED(APC)) + to_chat(usr, "\icon[I] APC does not return interface request. Remote access may be disabled.") + return + if(active_apc) + to_chat(usr, "\icon[I] Disconnected from [active_apc].") + active_apc.say("Remote access canceled. Interface locked.") + playsound(active_apc, 'sound/machines/BoltsDown.ogg', 25, 0) + playsound(active_apc, 'sound/machines/terminal_alert.ogg', 50, 0) + active_apc.locked = TRUE + active_apc.update_icon() + active_apc = null + to_chat(usr, "\icon[I] Connected to APC in [get_area(APC)]. Interface request sent.") + log_activity("remotely accessed APC in [get_area(APC)]") + APC.interact(usr, not_incapacitated_state) + playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + message_admins("[key_name_admin(usr)] remotely accessed [APC] from [src] at [get_area(src)].") + log_game("[key_name_admin(usr)] remotely accessed [APC] from [src] at [get_area(src)].") + if(APC.locked) + APC.say("Remote access detected. Interface unlocked.") + playsound(APC, 'sound/machines/BoltsUp.ogg', 25, 0) + playsound(APC, 'sound/machines/terminal_alert.ogg', 50, 0) + APC.locked = FALSE + APC.update_icon() + active_apc = APC + 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) as null|text + if(!src || !usr || !usr.canUseTopic(src) || stat || QDELETED(src)) + return + log_activity("changed name filter to \"[new_filter]\"") + playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + filters["Name"] = new_filter + 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)) + return + log_activity("changed greater than charge filter to \"[new_filter]\"") + if(new_filter) + new_filter = Clamp(new_filter, 0, 100) + playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + filters["Charge Above"] = new_filter + 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)) + return + log_activity("changed lesser than charge filter to \"[new_filter]\"") + if(new_filter) + new_filter = Clamp(new_filter, 0, 100) + playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + filters["Charge Below"] = new_filter + if(href_list["access_filter"]) + if(isnull(filters["Responsive"])) + filters["Responsive"] = 1 + log_activity("sorted by non-responsive APCs only") + else + filters["Responsive"] = !filters["Responsive"] + log_activity("sorted by all APCs") + playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + if(href_list["check_logs"]) + checking_logs = TRUE + log_activity("checked logs") + if(href_list["check_apcs"]) + checking_logs = FALSE + log_activity("checked APCs") + if(href_list["clear_logs"]) + logs = list() + interact(usr) //Refresh the UI after a filter changes + +/obj/machinery/computer/apc_control/emag_act(mob/living/user) + if(emagged) + return + user.visible_message("You emag [src], disabling precise logging and allowing you to clear logs.") + log_game("[key_name_admin(user)] emagged [src] at [get_area(src)], disabling operator tracking.") + playsound(src, "sparks", 50, 1) + emagged = 1 + +/obj/machinery/computer/apc_control/proc/log_activity(log_text) + var/op_string = operator && !emagged ? operator : "\[NULL OPERATOR\]" + LAZYADD(logs, "([worldtime2text()]) [op_string] [log_text]") + +/mob/proc/using_power_flow_console() + for(var/obj/machinery/computer/apc_control/A in range(1, src)) + if(A.operator && A.operator == src && !A.stat) + return TRUE + return diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 6dcc8861f6..3019528f8b 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -37,11 +37,16 @@ /obj/item/toy/talking/skeleton = 2, /obj/item/weapon/coin/antagtoken = 2, /obj/item/stack/tile/fakespace/loaded = 2, + /obj/item/stack/tile/fakepit/loaded = 2, /obj/item/toy/toy_xeno = 2, /obj/item/weapon/storage/box/actionfigure = 1, /obj/item/weapon/restraints/handcuffs/fake = 2, - /obj/item/weapon/gun/energy/megabuster = 2, - /obj/item/weapon/gun/energy/megabuster/proto = 2) + /obj/item/weapon/grenade/chem_grenade/glitter/pink = 1, + /obj/item/weapon/grenade/chem_grenade/glitter/blue = 1, + /obj/item/weapon/grenade/chem_grenade/glitter/white = 1, + /obj/item/toy/eightball = 2) + + light_color = LIGHT_COLOR_GREEN /obj/machinery/computer/arcade/New() ..() @@ -415,18 +420,18 @@ dat += "
You ran out of food and starved." if(emagged) user.nutrition = 0 //yeah you pretty hongry - user << "Your body instantly contracts to that of one who has not eaten in months. Agonizing cramps seize you as you fall to the floor." + to_chat(user, "Your body instantly contracts to that of one who has not eaten in months. Agonizing cramps seize you as you fall to the floor.") if(fuel <= 0) dat += "
You ran out of fuel, and drift, slowly, into a star." if(emagged) var/mob/living/M = user M.adjust_fire_stacks(5) M.IgniteMob() //flew into a star, so you're on fire - user << "You feel an immense wave of heat emanate from the arcade machine. Your skin bursts into flames." + to_chat(user, "You feel an immense wave of heat emanate from the arcade machine. Your skin bursts into flames.") dat += "

OK...

" if(emagged) - user << "You're never going to make it to Orion..." + to_chat(user, "You're never going to make it to Orion...") user.death() emagged = 0 //removes the emagged status after you lose gameStatus = ORION_STATUS_START @@ -494,21 +499,21 @@ switch(event) if(ORION_TRAIL_RAIDERS) if(prob(50)) - usr << "You hear battle shouts. The tramping of boots on cold metal. Screams of agony. The rush of venting air. Are you going insane?" + to_chat(usr, "You hear battle shouts. The tramping of boots on cold metal. Screams of agony. The rush of venting air. Are you going insane?") M.hallucination += 30 else - usr << "Something strikes you from behind! It hurts like hell and feel like a blunt weapon, but nothing is there..." + to_chat(usr, "Something strikes you from behind! It hurts like hell and feel like a blunt weapon, but nothing is there...") M.take_bodypart_damage(30) playsound(loc, 'sound/weapons/genhit2.ogg', 100, 1) if(ORION_TRAIL_ILLNESS) var/severity = rand(1,3) //pray to RNGesus. PRAY, PIGS if(severity == 1) - M << "You suddenly feel slightly nauseous." //got off lucky + to_chat(M, "You suddenly feel slightly nauseous." ) if(severity == 2) - usr << "You suddenly feel extremely nauseous and hunch over until it passes." + to_chat(usr, "You suddenly feel extremely nauseous and hunch over until it passes.") M.Stun(3) if(severity >= 3) //you didn't pray hard enough - M << "An overpowering wave of nausea consumes over you. You hunch over, your stomach's contents preparing for a spectacular exit." + to_chat(M, "An overpowering wave of nausea consumes over you. You hunch over, your stomach's contents preparing for a spectacular exit.") M.Stun(5) sleep(30) M.vomit(50) @@ -519,7 +524,7 @@ M.take_bodypart_damage(25) playsound(src.loc, 'sound/weapons/Genhit.ogg', 100, 1) else - M << "A violent gale blows past you, and you barely manage to stay standing!" + to_chat(M, "A violent gale blows past you, and you barely manage to stay standing!") if(ORION_TRAIL_COLLISION) //by far the most damaging event if(prob(90)) playsound(src.loc, 'sound/effects/bang.ogg', 100, 1) @@ -1028,7 +1033,7 @@ /obj/machinery/computer/arcade/orion_trail/emag_act(mob/user) if(!emagged) - user << "You override the cheat code menu and skip to Cheat #[rand(1, 50)]: Realism Mode." + to_chat(user, "You override the cheat code menu and skip to Cheat #[rand(1, 50)]: Realism Mode.") name = "The Orion Trail: Realism Edition" desc = "Learn how our ancestors got to Orion, and try not to die in the process!" newgame() @@ -1069,9 +1074,9 @@ if(!(in_range(user, src))) return if(!active) - user << "There's a little switch on the bottom. It's flipped down." + to_chat(user, "There's a little switch on the bottom. It's flipped down.") else - user << "There's a little switch on the bottom. It's flipped up." + to_chat(user, "There's a little switch on the bottom. It's flipped up.") /obj/item/weapon/orion_ship/attack_self(mob/user) //Minibomb-level explosion. Should probably be more because of how hard it is to survive the machine! Also, just over a 5-second fuse if(active) @@ -1080,7 +1085,7 @@ message_admins("[key_name_admin(usr)] primed an explosive Orion ship for detonation.") log_game("[key_name(usr)] primed an explosive Orion ship for detonation.") - user << "You flip the switch on the underside of [src]." + to_chat(user, "You flip the switch on the underside of [src].") active = 1 src.visible_message("[src] softly beeps and whirs to life!") playsound(src.loc, 'sound/machines/defib_SaftyOn.ogg', 25, 1) diff --git a/code/game/machinery/computer/atmos_alert.dm b/code/game/machinery/computer/atmos_alert.dm index 9d764b4b18..bb73d75467 100644 --- a/code/game/machinery/computer/atmos_alert.dm +++ b/code/game/machinery/computer/atmos_alert.dm @@ -9,6 +9,8 @@ var/receive_frequency = 1437 var/datum/radio_frequency/radio_connection + light_color = LIGHT_COLOR_CYAN + /obj/machinery/computer/atmos_alert/Initialize() ..() set_frequency(receive_frequency) @@ -44,11 +46,11 @@ if("clear") var/zone = params["zone"] if(zone in priority_alarms) - usr << "Priority alarm for [zone] cleared." + to_chat(usr, "Priority alarm for [zone] cleared.") priority_alarms -= zone . = TRUE if(zone in minor_alarms) - usr << "Minor alarm for [zone] cleared." + to_chat(usr, "Minor alarm for [zone] cleared.") minor_alarms -= zone . = TRUE update_icon() @@ -82,4 +84,4 @@ if(priority_alarms.len) add_overlay("alert:2") else if(minor_alarms.len) - add_overlay("alert:1") \ No newline at end of file + add_overlay("alert:1") diff --git a/code/game/machinery/computer/atmos_control.dm b/code/game/machinery/computer/atmos_control.dm index b04a1d9815..bccb99dfdd 100644 --- a/code/game/machinery/computer/atmos_control.dm +++ b/code/game/machinery/computer/atmos_control.dm @@ -82,6 +82,8 @@ var/list/sensor_information = list() var/datum/radio_frequency/radio_connection + light_color = LIGHT_COLOR_CYAN + /obj/machinery/computer/atmos_control/Initialize() ..() set_frequency(frequency) @@ -156,7 +158,7 @@ var/list/text = splittext(U.id, "_") IO |= text[1] if(!IO.len) - user << "No machinery detected." + to_chat(user, "No machinery detected.") var/S = input("Select the device set: ", "Selection", IO[1]) as anything in IO if(src) src.input_tag = "[S]_in" diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index e4e3224c48..5271dc5293 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -9,9 +9,9 @@ if(0) if(istype(P, /obj/item/weapon/wrench)) playsound(src.loc, P.usesound, 50, 1) - user << "You start wrenching the frame into place..." + to_chat(user, "You start wrenching the frame into place...") if(do_after(user, 20*P.toolspeed, target = src)) - user << "You wrench the frame into place." + to_chat(user, "You wrench the frame into place.") anchored = 1 state = 1 return @@ -19,13 +19,13 @@ var/obj/item/weapon/weldingtool/WT = P if(!WT.remove_fuel(0, user)) if(!WT.isOn()) - user << "The welding tool must be on to complete this task!" + to_chat(user, "The welding tool must be on to complete this task!") return playsound(src.loc, P.usesound, 50, 1) - user << "You start deconstructing the frame..." + to_chat(user, "You start deconstructing the frame...") if(do_after(user, 20*P.toolspeed, target = src)) if(!src || !WT.isOn()) return - user << "You deconstruct the frame." + to_chat(user, "You deconstruct the frame.") var/obj/item/stack/sheet/metal/M = new (loc, 5) M.add_fingerprint(user) qdel(src) @@ -33,9 +33,9 @@ if(1) if(istype(P, /obj/item/weapon/wrench)) playsound(src.loc, P.usesound, 50, 1) - user << "You start to unfasten the frame..." + to_chat(user, "You start to unfasten the frame...") if(do_after(user, 20*P.toolspeed, target = src)) - user << "You unfasten the frame." + to_chat(user, "You unfasten the frame.") anchored = 0 state = 0 return @@ -43,7 +43,7 @@ if(!user.drop_item()) return playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You place the circuit board inside the frame." + to_chat(user, "You place the circuit board inside the frame.") icon_state = "1" circuit = P circuit.add_fingerprint(user) @@ -51,17 +51,17 @@ return else if(istype(P, /obj/item/weapon/circuitboard) && !circuit) - user << "This frame does not accept circuit boards of this type!" + to_chat(user, "This frame does not accept circuit boards of this type!") return if(istype(P, /obj/item/weapon/screwdriver) && circuit) playsound(src.loc, P.usesound, 50, 1) - user << "You screw the circuit board into place." + to_chat(user, "You screw the circuit board into place.") state = 2 icon_state = "2" return if(istype(P, /obj/item/weapon/crowbar) && circuit) playsound(src.loc, P.usesound, 50, 1) - user << "You remove the circuit board." + to_chat(user, "You remove the circuit board.") state = 1 icon_state = "0" circuit.loc = src.loc @@ -71,7 +71,7 @@ if(2) if(istype(P, /obj/item/weapon/screwdriver) && circuit) playsound(src.loc, P.usesound, 50, 1) - user << "You unfasten the circuit board." + to_chat(user, "You unfasten the circuit board.") state = 1 icon_state = "1" return @@ -79,20 +79,20 @@ var/obj/item/stack/cable_coil/C = P if(C.get_amount() >= 5) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You start adding cables to the frame..." + to_chat(user, "You start adding cables to the frame...") if(do_after(user, 20*P.toolspeed, target = src)) if(C.get_amount() >= 5 && state == 2) C.use(5) - user << "You add cables to the frame." + to_chat(user, "You add cables to the frame.") state = 3 icon_state = "3" else - user << "You need five lengths of cable to wire the frame!" + to_chat(user, "You need five lengths of cable to wire the frame!") return if(3) if(istype(P, /obj/item/weapon/wirecutters)) playsound(src.loc, P.usesound, 50, 1) - user << "You remove the cables." + to_chat(user, "You remove the cables.") state = 2 icon_state = "2" var/obj/item/stack/cable_coil/A = new (loc) @@ -103,22 +103,22 @@ if(istype(P, /obj/item/stack/sheet/glass)) var/obj/item/stack/sheet/glass/G = P if(G.get_amount() < 2) - user << "You need two glass sheets to continue construction!" + to_chat(user, "You need two glass sheets to continue construction!") return else playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You start to put in the glass panel..." + to_chat(user, "You start to put in the glass panel...") if(do_after(user, 20, target = src)) if(G.get_amount() >= 2 && state == 3) G.use(2) - user << "You put in the glass panel." + to_chat(user, "You put in the glass panel.") state = 4 src.icon_state = "4" return if(4) if(istype(P, /obj/item/weapon/crowbar)) playsound(src.loc, P.usesound, 50, 1) - user << "You remove the glass panel." + to_chat(user, "You remove the glass panel.") state = 3 icon_state = "3" var/obj/item/stack/sheet/glass/G = new (loc, 2) @@ -126,7 +126,7 @@ return if(istype(P, /obj/item/weapon/screwdriver)) playsound(src.loc, P.usesound, 50, 1) - user << "You connect the monitor." + to_chat(user, "You connect the monitor.") var/obj/B = new src.circuit.build_path (src.loc, circuit) transfer_fingerprints_to(B) qdel(src) @@ -222,13 +222,13 @@ /obj/item/weapon/circuitboard/computer/card/minor/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver)) target_dept = (target_dept == dept_list.len) ? 1 : (target_dept + 1) - user << "You set the board to \"[dept_list[target_dept]]\"." + to_chat(user, "You set the board to \"[dept_list[target_dept]]\".") else return ..() /obj/item/weapon/circuitboard/computer/card/minor/examine(user) ..() - user << "Currently set to \"[dept_list[target_dept]]\"." + to_chat(user, "Currently set to \"[dept_list[target_dept]]\".") //obj/item/weapon/circuitboard/computer/shield // name = "Shield Control (Computer Board)" @@ -312,11 +312,11 @@ if(build_path == /obj/machinery/computer/rdconsole/core) name = "RD Console - Robotics (Computer Board)" build_path = /obj/machinery/computer/rdconsole/robotics - user << "Access protocols successfully updated." + to_chat(user, "Access protocols successfully updated.") else name = "RD Console (Computer Board)" build_path = /obj/machinery/computer/rdconsole/core - user << "Defaulting access protocols." + to_chat(user, "Defaulting access protocols.") else return ..() @@ -346,14 +346,14 @@ if(istype(I,/obj/item/device/multitool)) if(!emagged) contraband = !contraband - user << "Receiver spectrum set to [contraband ? "Broad" : "Standard"]." + to_chat(user, "Receiver spectrum set to [contraband ? "Broad" : "Standard"].") else - user << "The spectrum chip is unresponsive." + to_chat(user, "The spectrum chip is unresponsive.") else if(istype(I,/obj/item/weapon/card/emag)) if(!emagged) contraband = TRUE emagged = TRUE - user << "You adjust [src]'s routing and receiver spectrum, unlocking special supplies and contraband." + to_chat(user, "You adjust [src]'s routing and receiver spectrum, unlocking special supplies and contraband.") else return ..() @@ -445,10 +445,15 @@ if(build_path == /obj/machinery/computer/libraryconsole/bookmanagement) name = "Library Visitor Console (Computer Board)" build_path = /obj/machinery/computer/libraryconsole - user << "Defaulting access protocols." + to_chat(user, "Defaulting access protocols.") else name = "Book Inventory Management Console (Computer Board)" build_path = /obj/machinery/computer/libraryconsole/bookmanagement - user << "Access protocols successfully updated." + to_chat(user, "Access protocols successfully updated.") else return ..() + +/obj/item/weapon/circuitboard/computer/apc_control + name = "\improper Power Flow Control Console (Computer Board)" + build_path = /obj/machinery/computer/apc_control + origin_tech = "programming=3;engineering=3;powerstorage=2" diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 44bfc1de8b..34c859280f 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -9,6 +9,8 @@ var/mapping = 0//For the overview file, interesting bit of code. var/list/watchers = list() //who's using the console, associated with the camera they're on. + light_color = LIGHT_COLOR_RED + /obj/machinery/computer/security/check_eye(mob/user) if( (stat & (NOPOWER|BROKEN)) || user.incapacitated() || user.eye_blind ) user.unset_machine() @@ -154,6 +156,8 @@ circuit = null clockwork = TRUE //it'd look very weird + light_power = 0 + /obj/machinery/computer/security/telescreen/update_icon() icon_state = initial(icon_state) if(stat & BROKEN) diff --git a/code/game/machinery/computer/camera_advanced.dm b/code/game/machinery/computer/camera_advanced.dm index c5b74c262d..e3bf9573c9 100644 --- a/code/game/machinery/computer/camera_advanced.dm +++ b/code/game/machinery/computer/camera_advanced.dm @@ -4,23 +4,25 @@ icon_screen = "cameras" icon_keyboard = "security_key" var/mob/camera/aiEye/remote/eyeobj - var/mob/living/carbon/human/current_user = null + var/mob/living/current_user = null var/list/networks = list("SS13") var/datum/action/innate/camera_off/off_action = new var/datum/action/innate/camera_jump/jump_action = new + light_color = LIGHT_COLOR_RED + /obj/machinery/computer/camera_advanced/proc/CreateEye() eyeobj = new() eyeobj.origin = src -/obj/machinery/computer/camera_advanced/proc/GrantActions(mob/living/carbon/user) +/obj/machinery/computer/camera_advanced/proc/GrantActions(mob/living/user) off_action.target = user off_action.Grant(user) jump_action.target = user jump_action.Grant(user) /obj/machinery/computer/camera_advanced/check_eye(mob/user) - if( (stat & (NOPOWER|BROKEN)) || !Adjacent(user) || user.eye_blind || user.incapacitated() ) + if( (stat & (NOPOWER|BROKEN)) || (!Adjacent(user) && !user.has_unlimited_silicon_privilege) || user.eye_blind || user.incapacitated() ) user.unset_machine() /obj/machinery/computer/camera_advanced/Destroy() @@ -36,13 +38,11 @@ /obj/machinery/computer/camera_advanced/attack_hand(mob/user) if(current_user) - user << "The console is already in use!" - return - if(!iscarbon(user)) + to_chat(user, "The console is already in use!") return if(..()) return - var/mob/living/carbon/L = user + var/mob/living/L = user if(!eyeobj) CreateEye() @@ -65,6 +65,11 @@ give_eye_control(L) eyeobj.setLoc(eyeobj.loc) +/obj/machinery/computer/camera_advanced/attack_robot(mob/user) + return attack_hand(user) + +obj/machinery/computer/camera_advanced/attack_ai(mob/user) + return //AIs would need to disable their own camera procs to use the console safely. Bugs happen otherwise. /obj/machinery/computer/camera_advanced/proc/give_eye_control(mob/user) @@ -80,7 +85,7 @@ var/sprint = 10 var/cooldown = 0 var/acceleration = 1 - var/mob/living/carbon/human/eye_user = null + var/mob/living/eye_user = null var/obj/machinery/computer/camera_advanced/origin var/eye_initialized = 0 var/visible_icon = 0 @@ -132,9 +137,9 @@ button_icon_state = "camera_off" /datum/action/innate/camera_off/Activate() - if(!target || !iscarbon(target)) + if(!target || !isliving(target)) return - var/mob/living/carbon/C = target + var/mob/living/C = target var/mob/camera/aiEye/remote/remote_eye = C.remote_control remote_eye.origin.current_user = null remote_eye.origin.jump_action.Remove(C) @@ -155,9 +160,9 @@ button_icon_state = "camera_jump" /datum/action/innate/camera_jump/Activate() - if(!target || !iscarbon(target)) + if(!target || !isliving(target)) return - var/mob/living/carbon/C = target + var/mob/living/C = target var/mob/camera/aiEye/remote/remote_eye = C.remote_control var/obj/machinery/computer/camera_advanced/origin = remote_eye.origin diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index 587d76b681..90d6fecd03 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -19,6 +19,7 @@ var/time_last_changed_position = 0 var/list/region_access = null var/list/head_subordinates = null var/target_dept = 0 //Which department this computer has access to. 0=all departments + var/prioritycount = 0 // we don't want 500 prioritized jobs //Cooldown for closing positions in seconds //if set to -1: No cooldown... probably a bad idea @@ -43,6 +44,8 @@ var/time_last_changed_position = 0 //Assoc array: "JobName" = (int) var/list/opened_positions = list(); + light_color = LIGHT_COLOR_BLUE + /obj/machinery/computer/card/attackby(obj/O, mob/user, params)//TODO:SANITY if(istype(O, /obj/item/weapon/card/id)) var/obj/item/weapon/card/id/idcard = O @@ -149,7 +152,7 @@ var/time_last_changed_position = 0 S = "--------" dat += "[S]" dat += "" - dat += "" + dat += "" var/ID if(scan && (access_change_ids in scan.access) && !target_dept) ID = 1 @@ -193,6 +196,22 @@ var/time_last_changed_position = 0 dat += "Cooldown ongoing: [mins]:[(seconds < 10) ? "0[seconds]" : "[seconds]"]" if(0) dat += "Denied" + dat += "" dat += "
JobSlotsOpen jobClose job
JobSlotsOpen jobClose jobPrioritize
" + switch(job.total_positions) + if(0) + dat += "Denied" + else + if(ID) + if(job in SSjob.prioritized_jobs) + dat += "Deprioritize" + else + if(prioritycount < 5) + dat += "Prioritize" + else + dat += "Denied" + else + dat += "Prioritize" + dat += "
" else @@ -228,7 +247,7 @@ var/time_last_changed_position = 0 header += "

" header += "Remove [target_name] || " header += "Remove [scan_name]
" - header += "Access Crew Manifest || " + header += "Access Crew Manifest
" header += "Log Out
" header += "
" @@ -398,12 +417,13 @@ var/time_last_changed_position = 0 if(region_access) authenticated = 1 else if ((!( authenticated ) && issilicon(usr)) && (!modify)) - usr << "You can't modify an ID without an ID inserted to modify! Once one is in the modify slot on the computer, you can log in." + to_chat(usr, "You can't modify an ID without an ID inserted to modify! Once one is in the modify slot on the computer, you can log in.") if ("logout") region_access = null head_subordinates = null authenticated = 0 playsound(src, 'sound/machines/terminal_off.ogg', 50, 0) + if("access") if(href_list["allowed"]) if(authenticated) @@ -433,7 +453,7 @@ var/time_last_changed_position = 0 jobdatum = J break if(!jobdatum) - usr << "No log exists for this job." + to_chat(usr, "No log exists for this job.") return modify.access = ( istype(src,/obj/machinery/computer/card/centcom) ? get_centcom_access(t1) : jobdatum.get_access() ) @@ -445,7 +465,7 @@ var/time_last_changed_position = 0 modify.assignment = "Unassigned" playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) else - usr << "You are not authorized to demote this position." + to_chat(usr, "You are not authorized to demote this position.") if ("reg") if (authenticated) var/t2 = modify @@ -456,7 +476,7 @@ var/time_last_changed_position = 0 modify.registered_name = newName playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) else - usr << "Invalid name entered." + to_chat(usr, "Invalid name entered.") return if ("mode") mode = text2num(href_list["mode_target"]) @@ -497,6 +517,24 @@ var/time_last_changed_position = 0 opened_positions[edit_job_target]-- playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) + if ("prioritize_job") + // TOGGLE WHETHER JOB APPEARS AS PRIORITIZED IN THE LOBBY + if(scan && (access_change_ids in scan.access) && !target_dept) + var/priority_target = href_list["job"] + var/datum/job/j = SSjob.GetJob(priority_target) + if(!j) + return 0 + var/priority = TRUE + if(j in SSjob.prioritized_jobs) + SSjob.prioritized_jobs -= j + prioritycount-- + priority = FALSE + else + SSjob.prioritized_jobs += j + prioritycount++ + usr << "[j.title] has been successfully [priority ? "prioritized" : "unprioritized"]. Potential employees will notice your request." + playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) + if ("print") if (!( printing )) printing = 1 @@ -544,6 +582,8 @@ var/time_last_changed_position = 0 target_dept = 2 icon_screen = "idhos" + light_color = LIGHT_COLOR_RED + /obj/machinery/computer/card/minor/cmo target_dept = 3 icon_screen = "idcmo" @@ -552,6 +592,10 @@ var/time_last_changed_position = 0 target_dept = 4 icon_screen = "idrd" + light_color = LIGHT_COLOR_PINK + /obj/machinery/computer/card/minor/ce target_dept = 5 icon_screen = "idce" + + light_color = LIGHT_COLOR_YELLOW diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index 2356da5c50..222c628ec7 100644 --- a/code/game/machinery/computer/cloning.dm +++ b/code/game/machinery/computer/cloning.dm @@ -18,6 +18,8 @@ var/loading = 0 // Nice loading text var/autoprocess = 0 + light_color = LIGHT_COLOR_BLUE + /obj/machinery/computer/cloning/Initialize() ..() updatemodules(TRUE) @@ -63,7 +65,7 @@ for(var/datum/data/record/R in records) var/obj/machinery/clonepod/pod = GetAvailableEfficientPod(R.fields["mind"]) - + if(!pod) return @@ -120,25 +122,25 @@ return W.loc = src src.diskette = W - user << "You insert [W]." + to_chat(user, "You insert [W].") playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, 0) src.updateUsrDialog() else if(istype(W,/obj/item/device/multitool)) var/obj/item/device/multitool/P = W - + if(istype(P.buffer, /obj/machinery/clonepod)) if(get_area(P.buffer) != get_area(src)) - user << "-% Cannot link machines across power zones. Buffer cleared %-" + to_chat(user, "-% Cannot link machines across power zones. Buffer cleared %-") P.buffer = null return - user << "-% Successfully linked [P.buffer] with [src] %-" + to_chat(user, "-% Successfully linked [P.buffer] with [src] %-") var/obj/machinery/clonepod/pod = P.buffer if(pod.connected) pod.connected.DetachCloner(pod) AttachCloner(pod) else P.buffer = src - user << "-% Successfully stored \ref[P.buffer] [P.buffer.name] in buffer %-" + to_chat(user, "-% Successfully stored \ref[P.buffer] [P.buffer.name] in buffer %-") return else return ..() @@ -159,7 +161,7 @@ var/dat = "" dat += "Refresh" - + if(scanner && HasEfficientPod() && scanner.scan_level > 2) if(!autoprocess) dat += "Autoprocess" diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index d85e2066eb..7247288466 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -35,6 +35,8 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 var/stat_msg1 var/stat_msg2 + light_color = LIGHT_COLOR_BLUE + /obj/machinery/computer/communications/proc/checkCCcooldown() var/obj/item/weapon/circuitboard/computer/communications/CM = circuit if(CM.lastTimeUsed + 600 > world.time) @@ -55,7 +57,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if(..()) return if (src.z > ZLEVEL_CENTCOM) //Can only use on centcom and SS13 - usr << "Unable to establish a connection: \black You're too far away from the station!" + to_chat(usr, "Unable to establish a connection: \black You're too far away from the station!") return usr.set_machine(src) @@ -84,7 +86,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if(src.emagged) authenticated = 2 auth_id = "Unknown" - M << "[src] lets out a quiet alarm as its login is overriden." + to_chat(M, "[src] lets out a quiet alarm as its login is overriden.") playsound(src, 'sound/machines/terminal_on.ogg', 50, 0) playsound(src, 'sound/machines/terminal_alert.ogg', 25, 0) if(prob(25)) @@ -108,7 +110,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if(tmp_alertlevel > SEC_LEVEL_BLUE) tmp_alertlevel = SEC_LEVEL_BLUE //Cannot engage delta with this set_security_level(tmp_alertlevel) if(security_level != old_level) - usr << "Authorization confirmed. Modifying security level." + to_chat(usr, "Authorization confirmed. Modifying security level.") playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) //Only notify the admins if an actual change happened log_game("[key_name(usr)] has changed the security level to [get_security_level()].") @@ -120,12 +122,12 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 feedback_inc("alert_comms_blue",1) tmp_alertlevel = 0 else - usr << "You are not authorized to do this!" + to_chat(usr, "You are not authorized to do this!") playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) tmp_alertlevel = 0 state = STATE_DEFAULT else - usr << "You need to swipe your ID!" + to_chat(usr, "You need to swipe your ID!") playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) if("announce") @@ -136,7 +138,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if("crossserver") if(authenticated==2) if(CM.lastTimeUsed + 600 > world.time) - usr << "Arrays recycling. Please stand by." + to_chat(usr, "Arrays recycling. Please stand by.") playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) return var/input = stripped_multiline_input(usr, "Please choose a message to transmit to an allied station. Please be aware that this process is very expensive, and abuse will lead to... termination.", "Send a message to an allied station.", "") @@ -158,12 +160,12 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 var/datum/map_template/shuttle/S = locate(href_list["chosen_shuttle"]) in shuttles if(S && istype(S)) if(SSshuttle.emergency.mode != SHUTTLE_RECALL && SSshuttle.emergency.mode != SHUTTLE_IDLE) - usr << "It's a bit late to buy a new shuttle, don't you think?" + to_chat(usr, "It's a bit late to buy a new shuttle, don't you think?") return if(SSshuttle.shuttle_purchased) - usr << "A replacement shuttle has already been purchased." + to_chat(usr, "A replacement shuttle has already been purchased.") else if(!S.prerequisites_met()) - usr << "You have not met the requirements for purchasing this shuttle." + to_chat(usr, "You have not met the requirements for purchasing this shuttle.") else if(SSshuttle.points >= S.credit_cost) var/obj/machinery/shuttle_manipulator/M = locate() in machines @@ -178,9 +180,9 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 message_admins("[key_name_admin(usr)] purchased [S.name].") feedback_add_details("shuttle_purchase", S.name) else - usr << "Something went wrong! The shuttle exchange system seems to be down." + to_chat(usr, "Something went wrong! The shuttle exchange system seems to be down.") else - usr << "Not enough credits." + to_chat(usr, "Not enough credits.") if("callshuttle") src.state = STATE_DEFAULT @@ -270,14 +272,14 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if("MessageCentcomm") if(src.authenticated==2) if(!checkCCcooldown()) - usr << "Arrays recycling. Please stand by." + to_chat(usr, "Arrays recycling. Please stand by.") return var/input = stripped_input(usr, "Please choose a message to transmit to Centcom via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to Centcomm.", "") if(!input || !(usr in view(1,src)) || !checkCCcooldown()) return playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) Centcomm_announce(input, usr) - usr << "Message transmitted to Central Command." + to_chat(usr, "Message transmitted to Central Command.") log_say("[key_name(usr)] has made a Centcom announcement: [input]") CM.lastTimeUsed = world.time @@ -286,7 +288,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if("MessageSyndicate") if((src.authenticated==2) && (src.emagged)) if(!checkCCcooldown()) - usr << "Arrays recycling. Please stand by." + to_chat(usr, "Arrays recycling. Please stand by.") playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) return var/input = stripped_input(usr, "Please choose a message to transmit to \[ABNORMAL ROUTING COORDINATES\] via quantum entanglement. Please be aware that this process is very expensive, and abuse will lead to... termination. Transmission does not guarantee a response.", "Send a message to /??????/.", "") @@ -294,12 +296,12 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 return playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) Syndicate_announce(input, usr) - usr << "SYSERR @l(19833)of(transmit.dm): !@$ MESSAGE TRANSMITTED TO SYNDICATE COMMAND." + to_chat(usr, "SYSERR @l(19833)of(transmit.dm): !@$ MESSAGE TRANSMITTED TO SYNDICATE COMMAND.") log_say("[key_name(usr)] has made a Syndicate announcement: [input]") CM.lastTimeUsed = world.time if("RestoreBackup") - usr << "Backup routing data restored!" + to_chat(usr, "Backup routing data restored!") playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) src.emagged = 0 src.updateDialog() @@ -307,13 +309,13 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if("nukerequest") //When there's no other way if(src.authenticated==2) if(!checkCCcooldown()) - usr << "Arrays recycling. Please stand by." + to_chat(usr, "Arrays recycling. Please stand by.") return var/input = stripped_input(usr, "Please enter the reason for requesting the nuclear self-destruct codes. Misuse of the nuclear request system will not be tolerated under any circumstances. Transmission does not guarantee a response.", "Self Destruct Code Request.","") if(!input || !(usr in view(1,src)) || !checkCCcooldown()) return Nuke_request(input, usr) - usr << "Request sent." + to_chat(usr, "Request sent.") log_say("[key_name(usr)] has requested the nuclear codes from Centcomm") priority_announce("The codes for the on-station nuclear self-destruct have been requested by [usr]. Confirmation or denial of this request will be sent shortly.", "Nuclear Self Destruct Codes Requested",'sound/AI/commandreport.ogg') CM.lastTimeUsed = world.time @@ -402,14 +404,14 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 src.emagged = 1 if(authenticated == 1) authenticated = 2 - user << "You scramble the communication routing circuits!" + to_chat(user, "You scramble the communication routing circuits!") playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) /obj/machinery/computer/communications/attack_hand(mob/user) if(..()) return if (src.z > 6) - user << "Unable to establish a connection: \black You're too far away from the station!" + to_chat(user, "Unable to establish a connection: \black You're too far away from the station!") return user.set_machine(src) @@ -453,7 +455,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 if (src.authenticated==2) dat += "

Captain Functions" dat += "
\[ Make a Captain's Announcement \]" - if(cross_allowed) + if(config.cross_allowed) dat += "
\[ Send a message to an allied station \]" dat += "
\[ Purchase Shuttle \]" dat += "
\[ Change Alert Level \]" @@ -657,7 +659,7 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 /obj/machinery/computer/communications/proc/make_announcement(mob/living/user, is_silicon) if(!SScommunications.can_announce(user, is_silicon)) - user << "Intercomms recharging. Please stand by." + 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)) @@ -692,4 +694,4 @@ var/const/CALL_SHUTTLE_REASON_LENGTH = 12 /obj/machinery/computer/communications/proc/overrideCooldown() var/obj/item/weapon/circuitboard/computer/communications/CM = circuit - CM.lastTimeUsed = 0 \ No newline at end of file + CM.lastTimeUsed = 0 diff --git a/code/game/machinery/computer/computer.dm b/code/game/machinery/computer/computer.dm index 889c63f09b..2a2c02f72b 100644 --- a/code/game/machinery/computer/computer.dm +++ b/code/game/machinery/computer/computer.dm @@ -73,16 +73,16 @@ /obj/machinery/computer/power_change() ..() if(stat & NOPOWER) - SetLuminosity(0) + set_light(0) else - SetLuminosity(brightness_on) + set_light(brightness_on) update_icon() return /obj/machinery/computer/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver) && circuit && !(flags&NODECONSTRUCT)) playsound(src.loc, I.usesound, 50, 1) - user << " You start to disconnect the monitor..." + to_chat(user, " You start to disconnect the monitor...") if(do_after(user, 20*I.toolspeed, target = src)) deconstruct(TRUE, user) else @@ -124,7 +124,7 @@ A.anchored = 1 if(stat & BROKEN) if(user) - user << "The broken glass falls out." + to_chat(user, "The broken glass falls out.") else playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, 1) new /obj/item/weapon/shard(src.loc) @@ -133,7 +133,7 @@ A.icon_state = "3" else if(user) - user << "You disconnect the monitor." + to_chat(user, "You disconnect the monitor.") A.state = 4 A.icon_state = "4" circuit = null diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm index 05176b09aa..de65c1bed2 100644 --- a/code/game/machinery/computer/crew.dm +++ b/code/game/machinery/computer/crew.dm @@ -9,6 +9,8 @@ circuit = /obj/item/weapon/circuitboard/computer/crew var/monitor = null //For VV debugging purposes + light_color = LIGHT_COLOR_BLUE + /obj/machinery/computer/crew/New() monitor = crewmonitor return ..() @@ -242,11 +244,11 @@ var/global/datum/crewmonitor/crewmonitor = new if (!C) C = locate(/obj/machinery/camera) in urange(15, tile) if (C) - var/turf/current_loc = AI.eyeobj.loc + addtimer(CALLBACK(src, .proc/update_ai, AI, C, AI.eyeobj.loc), min(30, get_dist(get_turf(C), AI.eyeobj) / 4)) - spawn(min(30, get_dist(get_turf(C), AI.eyeobj) / 4)) - if (AI && AI.eyeobj && current_loc == AI.eyeobj.loc) - AI.switchCamera(C) +/datum/crewmonitor/proc/update_ai(mob/living/silicon/ai/AI, obj/machinery/camera/C, turf/current_loc) + if (AI && AI.eyeobj && current_loc == AI.eyeobj.loc) + AI.switchCamera(C) /mob/living/carbon/human/Move() if (src.w_uniform) @@ -265,4 +267,4 @@ var/global/datum/crewmonitor/crewmonitor = new /datum/crewmonitor/proc/sendResources(var/client/client) send_asset(client, "crewmonitor.js") send_asset(client, "crewmonitor.css") - SSminimap.send(client) + SSminimap.send(client) \ No newline at end of file diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm index a4dee33e60..a100f16184 100644 --- a/code/game/machinery/computer/dna_console.dm +++ b/code/game/machinery/computer/dna_console.dm @@ -38,6 +38,8 @@ idle_power_usage = 10 active_power_usage = 400 + light_color = LIGHT_COLOR_BLUE + /obj/machinery/computer/scan_consolenew/attackby(obj/item/I, mob/user, params) if (istype(I, /obj/item/weapon/disk/data)) //INSERT SOME DISKETTES if (!src.diskette) @@ -45,7 +47,7 @@ return I.loc = src src.diskette = I - user << "You insert [I]." + to_chat(user, "You insert [I].") src.updateUsrDialog() return else @@ -572,7 +574,7 @@ viable_occupant.dna.blood_type = buffer_slot["blood_type"] /obj/machinery/computer/scan_consolenew/proc/on_scanner_close() - connected.occupant << "[src] activates!" + to_chat(connected.occupant, "[src] activates!") if(delayed_action) apply_buffer(delayed_action["action"],delayed_action["buffer"]) delayed_action = null //or make it stick + reset button ? diff --git a/code/game/machinery/computer/gulag_teleporter.dm b/code/game/machinery/computer/gulag_teleporter.dm index d11193759e..b9dc410e57 100644 --- a/code/game/machinery/computer/gulag_teleporter.dm +++ b/code/game/machinery/computer/gulag_teleporter.dm @@ -13,6 +13,8 @@ var/mob/living/carbon/human/prisoner = null var/datum/data/record/temporary_record = null + light_color = LIGHT_COLOR_RED + /obj/machinery/computer/gulag_teleporter_computer/New() ..() addtimer(CALLBACK(src, .proc/scan_machinery), 5) @@ -29,10 +31,10 @@ return W.forceMove(src) id = W - user << "You insert [W]." + to_chat(user, "You insert [W].") return else - user << "There's an ID inserted already." + to_chat(user, "There's an ID inserted already.") return ..() /obj/machinery/computer/gulag_teleporter_computer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ @@ -82,7 +84,7 @@ if(..()) return if(!allowed(usr)) - usr << "Access denied." + to_chat(usr, "Access denied.") return switch(action) if("scan_teleporter") @@ -113,12 +115,12 @@ id.goal = Clamp(new_goal, 0, 1000) //maximum 1000 points if("toggle_open") if(teleporter.locked) - usr << "The teleporter is locked" + to_chat(usr, "The teleporter is locked") return teleporter.toggle_open() if("teleporter_lock") if(teleporter.state_open) - usr << "Close the teleporter before locking!" + to_chat(usr, "Close the teleporter before locking!") return teleporter.locked = !teleporter.locked if("teleport") @@ -147,7 +149,7 @@ playsound(loc, 'sound/weapons/emitter.ogg', 50, 1) prisoner.forceMove(get_turf(beacon)) prisoner.Weaken(2) // small travel dizziness - prisoner << "The teleportation makes you a little dizzy." + to_chat(prisoner, "The teleportation makes you a little dizzy.") new /obj/effect/particle_effect/sparks(prisoner.loc) playsound(src.loc, "sparks", 50, 1) if(teleporter.locked) @@ -155,10 +157,3 @@ teleporter.toggle_open() id = null temporary_record = null - - - - - - - diff --git a/code/game/machinery/computer/law.dm b/code/game/machinery/computer/law.dm index 7ff5491ebe..4846c99326 100644 --- a/code/game/machinery/computer/law.dm +++ b/code/game/machinery/computer/law.dm @@ -10,15 +10,15 @@ if(src.stat & (NOPOWER|BROKEN|MAINT)) return if(!current) - user << "You haven't selected anything to transmit laws to!" + to_chat(user, "You haven't selected anything to transmit laws to!") return if(!can_upload_to(current)) - user << "Upload failed! Check to make sure [current.name] is functioning properly." + to_chat(user, "Upload failed! Check to make sure [current.name] is functioning properly.") current = null return var/turf/currentloc = get_turf(current) if(currentloc && user.z != currentloc.z) - user << "Upload failed! Unable to establish a connection to [current.name]. You're too far away!" + to_chat(user, "Upload failed! Unable to establish a connection to [current.name]. You're too far away!") current = null return M.install(current.laws, user) @@ -42,9 +42,9 @@ src.current = select_active_ai(user) if (!src.current) - user << "No active AIs detected!" + to_chat(user, "No active AIs detected!") else - user << "[src.current.name] selected for law changes." + to_chat(user, "[src.current.name] selected for law changes.") /obj/machinery/computer/upload/ai/can_upload_to(mob/living/silicon/ai/A) if(!A || !isAI(A)) @@ -66,9 +66,9 @@ src.current = select_active_free_borg(user) if(!src.current) - user << "No active unslaved cyborgs detected!" + to_chat(user, "No active unslaved cyborgs detected!") else - user << "[src.current.name] selected for law changes." + to_chat(user, "[src.current.name] selected for law changes.") /obj/machinery/computer/upload/borg/can_upload_to(mob/living/silicon/robot/B) if(!B || !iscyborg(B)) diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index da3df8b2cf..fc4e9f6071 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -20,13 +20,15 @@ var/sortBy = "name" var/order = 1 // -1 = Descending - 1 = Ascending + light_color = LIGHT_COLOR_BLUE + /obj/machinery/computer/med_data/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/weapon/card/id) && !scan) if(!user.drop_item()) return O.loc = src scan = O - user << "You insert [O]." + to_chat(user, "You insert [O].") else return ..() @@ -458,7 +460,7 @@ else if(href_list["del_r2"]) investigate_log("[usr.name] ([usr.key]) has deleted the medical records for [active1.fields["name"]].", "records") if(active2) - data_core.medical -= active2 + qdel(active2) active2 = null else if(href_list["d_rec"]) diff --git a/code/game/machinery/computer/message.dm b/code/game/machinery/computer/message.dm index b9251ce02d..a0ada38d1e 100644 --- a/code/game/machinery/computer/message.dm +++ b/code/game/machinery/computer/message.dm @@ -17,7 +17,7 @@ var/noserver = "ALERT: No server detected." var/incorrectkey = "ALERT: Incorrect decryption key!" var/defaultmsg = "Welcome. Please select an option." - var/rebootmsg = "%$&(: Critical %$$@ Error // !RestArting! - ?pLeaSe wAit!" + var/rebootmsg = "%$&(�: Critical %$$@ Error // !RestArting! - ?pLeaSe wAit!" //Computer properties var/screen = 0 // 0 = Main menu, 1 = Message Logs, 2 = Hacked screen, 3 = Custom Message var/hacking = 0 // Is it being hacked into by the AI/Cyborg @@ -30,10 +30,12 @@ var/customjob = "Admin" var/custommessage = "This is a test, please ignore." + light_color = LIGHT_COLOR_GREEN + /obj/machinery/computer/message_monitor/attackby(obj/item/weapon/O, mob/living/user, params) if(istype(O, /obj/item/weapon/screwdriver) && emagged) //Stops people from just unscrewing the monitor and putting it back to get the console working again. - user << "It is too hot to mess with!" + to_chat(user, "It is too hot to mess with!") else return ..() @@ -47,12 +49,12 @@ var/obj/item/weapon/paper/monitorkey/MK = new/obj/item/weapon/paper/monitorkey MK.loc = src.loc // Will help make emagging the console not so easy to get away with. - MK.info += "

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

�%@%(*$%&(�&?*(%&�/{}" var/time = 100 * length(src.linkedServer.decryptkey) addtimer(CALLBACK(src, .proc/UnmagConsole), time) message = rebootmsg else - user << "A no server error appears on the screen." + to_chat(user, "A no server error appears on the screen.") /obj/machinery/computer/message_monitor/Initialize() ..() @@ -225,10 +227,10 @@ /obj/machinery/computer/message_monitor/proc/BruteForce(mob/user) if(isnull(linkedServer)) - user << "Could not complete brute-force: Linked Server Disconnected!" + to_chat(user, "Could not complete brute-force: Linked Server Disconnected!") else var/currentKey = src.linkedServer.decryptkey - user << "Brute-force completed! The key is '[currentKey]'." + to_chat(user, "Brute-force completed! The key is '[currentKey]'.") src.hacking = 0 src.screen = 0 // Return the screen back to normal @@ -414,7 +416,7 @@ customrecepient.audible_message("\icon[customrecepient] *[customrecepient.ttone]*", null, 3) if( customrecepient.loc && ishuman(customrecepient.loc) ) var/mob/living/carbon/human/H = customrecepient.loc - H << "\icon[customrecepient] Message from [customsender] ([customjob]), \"[custommessage]\" (Reply)" + to_chat(H, "\icon[customrecepient] Message from [customsender] ([customjob]), \"[custommessage]\" (Reply)") log_pda("[usr]/([usr.ckey]) (PDA: [customsender]) sent \"[custommessage]\" to [customrecepient.owner]") customrecepient.cut_overlays() customrecepient.add_overlay(image('icons/obj/pda.dmi', "pda-r")) @@ -427,7 +429,7 @@ customrecepient.audible_message("\icon[customrecepient] *[customrecepient.ttone]*", null, 3) if( customrecepient.loc && ishuman(customrecepient.loc) ) var/mob/living/carbon/human/H = customrecepient.loc - H << "\icon[customrecepient] Message from [PDARec.owner] ([customjob]), \"[custommessage]\" (Reply)" + to_chat(H, "\icon[customrecepient] Message from [PDARec.owner] ([customjob]), \"[custommessage]\" (Reply)") log_pda("[usr]/([usr.ckey]) (PDA: [PDARec.owner]) sent \"[custommessage]\" to [customrecepient.owner]") customrecepient.cut_overlays() customrecepient.add_overlay(image('icons/obj/pda.dmi', "pda-r")) diff --git a/code/game/machinery/computer/monastery_shuttle.dm b/code/game/machinery/computer/monastery_shuttle.dm new file mode 100644 index 0000000000..e64d784a1f --- /dev/null +++ b/code/game/machinery/computer/monastery_shuttle.dm @@ -0,0 +1,11 @@ +/obj/machinery/computer/shuttle/monastery_shuttle + name = "monastery shuttle console" + desc = "Used to control the monastery shuttle." + circuit = /obj/item/weapon/circuitboard/computer/shuttle/monastery_shuttle + shuttleId = "pod1" + possible_destinations = "monastery_shuttle_asteroid;monastery_shuttle_station" + no_destination_swap = TRUE + +/obj/item/weapon/circuitboard/computer/shuttle/monastery_shuttle + name = "Monastery Shuttle (Computer Board)" + build_path = /obj/machinery/computer/shuttle/monastery_shuttle diff --git a/code/game/machinery/computer/pod.dm b/code/game/machinery/computer/pod.dm index fb20f0854e..f41375a705 100644 --- a/code/game/machinery/computer/pod.dm +++ b/code/game/machinery/computer/pod.dm @@ -134,7 +134,7 @@ /obj/machinery/computer/pod/old/syndicate/attack_hand(mob/user) if(!allowed(user)) - user << "Access denied." + to_chat(user, "Access denied.") return else ..() diff --git a/code/game/machinery/computer/prisoner.dm b/code/game/machinery/computer/prisoner.dm index 263c45a0b8..c6aa932c6c 100644 --- a/code/game/machinery/computer/prisoner.dm +++ b/code/game/machinery/computer/prisoner.dm @@ -13,6 +13,8 @@ var/obj/item/weapon/card/id/prisoner/inserted_id circuit = /obj/item/weapon/circuitboard/computer/prisoner + light_color = LIGHT_COLOR_RED + /obj/machinery/computer/prisoner/attack_hand(mob/user) if(..()) return @@ -94,7 +96,7 @@ return I.loc = src inserted_id = I - else usr << "No valid ID." + else to_chat(usr, "No valid ID.") else if(inserted_id) switch(href_list["id"]) if("eject") @@ -126,7 +128,7 @@ if(src.allowed(usr)) screen = !screen else - usr << "Unauthorized Access." + to_chat(usr, "Unauthorized Access.") else if(href_list["warn"]) var/warning = copytext(sanitize(input(usr,"Message:","Enter your message here!","")),1,MAX_MESSAGE_LEN) @@ -134,11 +136,9 @@ var/obj/item/weapon/implant/I = locate(href_list["warn"]) in tracked_chem_implants if(I && istype(I) && I.imp_in) var/mob/living/R = I.imp_in - R << "You hear a voice in your head saying: '[warning]'" + to_chat(R, "You hear a voice in your head saying: '[warning]'") log_say("[usr]/[usr.ckey] sent an implant message to [R]/[R.ckey]: '[warning]'") src.add_fingerprint(usr) src.updateUsrDialog() return - - diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index 1cebe4b86a..0cb2ea8cc2 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -10,6 +10,8 @@ circuit = /obj/item/weapon/circuitboard/computer/robotics var/temp = null + light_color = LIGHT_COLOR_PINK + /obj/machinery/computer/robotics/proc/can_control(mob/user, mob/living/silicon/robot/R) if(!istype(R)) return 0 @@ -30,7 +32,7 @@ /obj/machinery/computer/robotics/interact(mob/user) if (src.z > 6) - user << "Unable to establish a connection: \black You're too far away from the station!" + to_chat(user, "Unable to establish a connection: \black You're too far away from the station!") return user.set_machine(src) var/dat @@ -106,18 +108,18 @@ var/choice = input("Are you certain you wish to detonate [R.name]?") in list("Confirm", "Abort") if(choice == "Confirm" && can_control(usr, R) && !..()) if(R.syndicate && R.emagged) - R << "Extreme danger. Termination codes detected. Scrambling security codes and automatic AI unlink triggered." + to_chat(R, "Extreme danger. Termination codes detected. Scrambling security codes and automatic AI unlink triggered.") if(R.connected_ai) - R.connected_ai << "

ALERT - Cyborg detonation detected: [R.name]
" + to_chat(R.connected_ai, "

ALERT - Cyborg detonation detected: [R.name]
") R.ResetSecurityCodes() else message_admins("[key_name_admin(usr)] (FLW) detonated [key_name(R, R.client)](JMP)!") log_game("\[key_name(usr)] detonated [key_name(R)]!") if(R.connected_ai) - R.connected_ai << "

ALERT - Cyborg detonation detected: [R.name]
" + to_chat(R.connected_ai, "

ALERT - Cyborg detonation detected: [R.name]
") R.self_destruct() else - usr << "Access Denied." + to_chat(usr, "Access Denied.") else if (href_list["stopbot"]) if(src.allowed(usr)) @@ -128,12 +130,12 @@ message_admins("[key_name_admin(usr)] (FLW) [R.canmove ? "locked down" : "released"] [key_name(R, R.client)](FLW)!") log_game("[key_name(usr)] [R.canmove ? "locked down" : "released"] [key_name(R)]!") R.SetLockdown(!R.lockcharge) - R << "[!R.lockcharge ? "Your lockdown has been lifted!" : "You have been locked down!"]" + to_chat(R, "[!R.lockcharge ? "Your lockdown has been lifted!" : "You have been locked down!"]") if(R.connected_ai) - R.connected_ai << "[!R.lockcharge ? "NOTICE - Cyborg lockdown lifted" : "ALERT - Cyborg lockdown detected"]: [R.name]
" + to_chat(R.connected_ai, "[!R.lockcharge ? "NOTICE - Cyborg lockdown lifted" : "ALERT - Cyborg lockdown detected"]: [R.name]
") else - usr << "Access Denied." + to_chat(usr, "Access Denied.") else if (href_list["magbot"]) if((issilicon(usr) && is_special_character(usr)) || IsAdminGhost(usr)) @@ -157,7 +159,7 @@ if(src.allowed(usr)) var/mob/living/simple_animal/drone/D = locate(href_list["killdrone"]) if(D.hacked) - usr << "ERROR: [D] is not responding to external commands." + to_chat(usr, "ERROR: [D] is not responding to external commands.") else var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(3, 1, D) diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index d4239250e8..fbbae48ad3 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -1,5 +1,3 @@ - - /obj/machinery/computer/secure_data//TODO:SANITY name = "security records console" desc = "Used to view and edit personnel's security records" @@ -23,6 +21,7 @@ var/sortBy = "name" var/order = 1 // -1 = Descending - 1 = Ascending + light_color = LIGHT_COLOR_RED /obj/machinery/computer/secure_data/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/weapon/card/id)) @@ -31,9 +30,9 @@ return O.loc = src scan = O - user << "You insert [O]." + to_chat(user, "You insert [O].") else - user << "There's already an ID card in the console." + to_chat(user, "There's already an ID card in the console.") else return ..() @@ -42,7 +41,7 @@ if(..()) return if(src.z > 6) - user << "Unable to establish a connection: \black You're too far away from the station!" + to_chat(user, "Unable to establish a connection: \black You're too far away from the station!") return var/dat @@ -442,7 +441,7 @@ What a mess.*/ sleep(30) if((istype(active1, /datum/data/record) && data_core.general.Find(active1)))//make sure the record still exists. var/obj/item/weapon/photo/photo = active1.fields["photo_front"] - new /obj/item/weapon/poster/legit/wanted(src.loc, photo.img, wanted_name, info) + new /obj/item/weapon/poster/wanted(src.loc, photo.img, wanted_name, info) printing = 0 //RECORD DELETE @@ -703,7 +702,6 @@ What a mess.*/ if("Delete Record (Security) Execute") investigate_log("[usr.name] ([usr.key]) has deleted the security records for [active1.fields["name"]].", "records") if(active2) - data_core.security -= active2 qdel(active2) active2 = null @@ -712,15 +710,12 @@ What a mess.*/ investigate_log("[usr.name] ([usr.key]) has deleted all records for [active1.fields["name"]].", "records") for(var/datum/data/record/R in data_core.medical) if((R.fields["name"] == active1.fields["name"] || R.fields["id"] == active1.fields["id"])) - data_core.medical -= R qdel(R) break - data_core.general -= active1 qdel(active1) active1 = null if(active2) - data_core.security -= active2 qdel(active2) active2 = null else diff --git a/code/game/machinery/computer/station_alert.dm b/code/game/machinery/computer/station_alert.dm index debb8a5f7a..2d27bef53c 100644 --- a/code/game/machinery/computer/station_alert.dm +++ b/code/game/machinery/computer/station_alert.dm @@ -6,6 +6,8 @@ circuit = /obj/item/weapon/circuitboard/computer/stationalert var/alarms = list("Fire" = list(), "Atmosphere" = list(), "Power" = list()) + light_color = LIGHT_COLOR_CYAN + /obj/machinery/computer/station_alert/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ datum/tgui/master_ui = null, datum/ui_state/state = default_state) ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) @@ -80,4 +82,4 @@ if(L.len) active_alarms = TRUE if(active_alarms) - add_overlay("alert:2") \ No newline at end of file + add_overlay("alert:2") diff --git a/code/game/machinery/computer/telecrystalconsoles.dm b/code/game/machinery/computer/telecrystalconsoles.dm index 56cb36a70e..daf2864374 100644 --- a/code/game/machinery/computer/telecrystalconsoles.dm +++ b/code/game/machinery/computer/telecrystalconsoles.dm @@ -11,6 +11,8 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F 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" @@ -32,7 +34,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F /obj/machinery/computer/telecrystals/uplinker/attackby(obj/item/O, mob/user, params) if(uplinkholder) - user << "The [src] already has an uplink in it." + to_chat(user, "The [src] already has an uplink in it.") return if(O.hidden_uplink) var/obj/item/I = user.get_active_held_item() @@ -44,7 +46,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F update_icon() updateUsrDialog() else - user << "The [O] doesn't appear to be an uplink..." + to_chat(user, "The [O] doesn't appear to be an uplink...") /obj/machinery/computer/telecrystals/uplinker/update_icon() ..() diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index 1d6083d150..84102c040e 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -11,7 +11,7 @@ /obj/structure/frame/examine(user) ..() if(circuit) - user << "It has \a [circuit] installed." + to_chat(user, "It has \a [circuit] installed.") /obj/structure/frame/deconstruct(disassembled = TRUE) @@ -45,9 +45,9 @@ hasContent = 1 if(hasContent) - user << requires + "." + to_chat(user, requires + ".") else - user << "It does not require any more components." + to_chat(user, "It does not require any more components.") /obj/structure/frame/machine/proc/update_namelist() if(!req_components) @@ -76,24 +76,24 @@ switch(state) if(1) if(istype(P, /obj/item/weapon/circuitboard/machine)) - user << "The frame needs wiring first!" + to_chat(user, "The frame needs wiring first!") return else if(istype(P, /obj/item/weapon/circuitboard)) - user << "This frame does not accept circuit boards of this type!" + to_chat(user, "This frame does not accept circuit boards of this type!") return if(istype(P, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/C = P if(C.get_amount() >= 5) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You start to add cables to the frame..." + to_chat(user, "You start to add cables to the frame...") if(do_after(user, 20*P.toolspeed, target = src)) if(C.get_amount() >= 5 && state == 1) C.use(5) - user << "You add cables to the frame." + to_chat(user, "You add cables to the frame.") state = 2 icon_state = "box_1" else - user << "You need five length of cable to wire the frame!" + to_chat(user, "You need five length of cable to wire the frame!") return if(istype(P, /obj/item/weapon/screwdriver) && !anchored) playsound(src.loc, P.usesound, 50, 1) @@ -101,38 +101,38 @@ "You start to disassemble the frame...", "You hear banging and clanking.") if(do_after(user, 40*P.toolspeed, target = src)) if(state == 1) - user << "You disassemble the frame." + to_chat(user, "You disassemble the frame.") var/obj/item/stack/sheet/metal/M = new (loc, 5) M.add_fingerprint(user) qdel(src) return if(istype(P, /obj/item/weapon/wrench)) - user << "You start [anchored ? "un" : ""]securing [name]..." + to_chat(user, "You start [anchored ? "un" : ""]securing [name]...") playsound(src.loc, P.usesound, 75, 1) if(do_after(user, 40*P.toolspeed, target = src)) if(state == 1) - user << "You [anchored ? "un" : ""]secure [name]." + to_chat(user, "You [anchored ? "un" : ""]secure [name].") anchored = !anchored return if(2) if(istype(P, /obj/item/weapon/wrench)) - user << "You start [anchored ? "un" : ""]securing [name]..." + to_chat(user, "You start [anchored ? "un" : ""]securing [name]...") playsound(src.loc, P.usesound, 75, 1) if(do_after(user, 40*P.toolspeed, target = src)) - user << "You [anchored ? "un" : ""]secure [name]." + to_chat(user, "You [anchored ? "un" : ""]secure [name].") anchored = !anchored return if(istype(P, /obj/item/weapon/circuitboard/machine)) if(!anchored) - user << "The frame needs to be secured first!" + to_chat(user, "The frame needs to be secured first!") return var/obj/item/weapon/circuitboard/machine/B = P if(!user.drop_item()) return playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You add the circuit board to the frame." + to_chat(user, "You add the circuit board to the frame.") circuit = B B.loc = src icon_state = "box_2" @@ -143,12 +143,12 @@ return else if(istype(P, /obj/item/weapon/circuitboard)) - user << "This frame does not accept circuit boards of this type!" + to_chat(user, "This frame does not accept circuit boards of this type!") return if(istype(P, /obj/item/weapon/wirecutters)) playsound(src.loc, P.usesound, 50, 1) - user << "You remove the cables." + to_chat(user, "You remove the cables.") state = 1 icon_state = "box_0" var/obj/item/stack/cable_coil/A = new /obj/item/stack/cable_coil( src.loc ) @@ -163,9 +163,9 @@ components.Remove(circuit) circuit = null if(components.len == 0) - user << "You remove the circuit board." + to_chat(user, "You remove the circuit board.") else - user << "You remove the circuit board and other components." + to_chat(user, "You remove the circuit board and other components.") for(var/atom/movable/A in components) A.loc = src.loc desc = initial(desc) @@ -216,7 +216,7 @@ for(var/obj/item/weapon/stock_parts/part in added_components) components += part - user << "[part.name] applied." + to_chat(user, "[part.name] applied.") if(added_components.len) replacer.play_rped_sound() return @@ -238,16 +238,16 @@ NS.add(used_amt) req_components[I] -= used_amt - user << "You add [P] to [src]." + to_chat(user, "You add [P] to [src].") return if(!user.drop_item()) break - user << "You add [P] to [src]." + to_chat(user, "You add [P] to [src].") P.forceMove(src) components += P req_components[I]-- return 1 - user << "You cannot add that to the machine!" + to_chat(user, "You cannot add that to the machine!") return 0 if(user.a_intent == INTENT_HARM) return ..() diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index 7aa10a9063..3aceab6040 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -31,7 +31,7 @@ var/obj/item/weapon/weldingtool/WT = I if(obj_integrity < max_integrity) if(WT.remove_fuel(0,user)) - user << "You begin repairing [src]..." + to_chat(user, "You begin repairing [src]...") playsound(loc, WT.usesound, 40, 1) if(do_after(user, 40*I.toolspeed, target = src)) obj_integrity = Clamp(obj_integrity + 20, 0, max_integrity) @@ -97,16 +97,20 @@ proj_pass_rate = 20 armor = list(melee = 10, bullet = 50, laser = 50, energy = 50, bomb = 10, bio = 100, rad = 100, fire = 10, acid = 0) + var/deploy_time = 40 + var/deploy_message = TRUE + /obj/structure/barricade/security/New() ..() - addtimer(CALLBACK(src, .proc/deploy), 40) + addtimer(CALLBACK(src, .proc/deploy), deploy_time) /obj/structure/barricade/security/proc/deploy() icon_state = "barrier1" density = 1 anchored = 1 - visible_message("[src] deploys!") + if(deploy_message) + visible_message("[src] deploys!") /obj/item/weapon/grenade/barrier @@ -132,7 +136,7 @@ if(HORIZONTAL) mode = SINGLE - user << "[src] is now in [mode] mode." + to_chat(user, "[src] is now in [mode] mode.") /obj/item/weapon/grenade/barrier/prime() new /obj/structure/barricade/security(get_turf(src.loc)) diff --git a/code/game/machinery/dna_scanner.dm b/code/game/machinery/dna_scanner.dm index 1c5fd1cece..af59f63888 100644 --- a/code/game/machinery/dna_scanner.dm +++ b/code/game/machinery/dna_scanner.dm @@ -65,7 +65,7 @@ /obj/machinery/dna_scannernew/proc/toggle_open(mob/user) if(panel_open) - user << "Close the maintenance panel first." + to_chat(user, "Close the maintenance panel first.") return if(state_open) @@ -73,7 +73,7 @@ return else if(locked) - user << "The bolts are locked down, securing the door shut." + to_chat(user, "The bolts are locked down, securing the door shut.") return open_machine() @@ -85,7 +85,7 @@ return user.changeNext_move(CLICK_CD_BREAKOUT) user.last_special = world.time + CLICK_CD_BREAKOUT - user << "You lean on the back of [src] and start pushing the door open... (this will take about [breakout_time] minutes.)" + to_chat(user, "You lean on the back of [src] and start pushing the door open... (this will take about [breakout_time] minutes.)") user.visible_message("You hear a metallic creaking from [src]!") if(do_after(user,(breakout_time*60*10), target = src)) //minutes * 60seconds * 10deciseconds @@ -94,7 +94,7 @@ locked = 0 visible_message("[user] successfully broke out of [src]!") - user << "You successfully break out of [src]!" + to_chat(user, "You successfully break out of [src]!") open_machine() diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 0886c0a6fd..89390560b4 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -87,8 +87,11 @@ var/list/airlock_overlays = list() var/delayed_close_requested = FALSE // TRUE means the door will automatically close the next time it's opened. explosion_block = 1 + hud_possible = list(DIAG_AIRLOCK_HUD) -/obj/machinery/door/airlock/New() + var/air_tight = FALSE //TRUE means density will be set as soon as the door begins to close + +/obj/machinery/door/airlock/Initialize() ..() wires = new /datum/wires/airlock(src) if(src.closeOtherId != null) @@ -107,6 +110,10 @@ var/list/airlock_overlays = list() max_integrity = normal_integrity if(damage_deflection == AIRLOCK_DAMAGE_DEFLECTION_N && security_level > AIRLOCK_SECURITY_METAL) damage_deflection = AIRLOCK_DAMAGE_DEFLECTION_R + prepare_huds() + var/datum/atom_hud/data/diagnostic/diag_hud = huds[DATA_HUD_DIAGNOSTIC] + diag_hud.add_to_hud(src) + diag_hud_set_electrified() /obj/machinery/door/airlock/Initialize() ..() @@ -216,10 +223,8 @@ var/list/airlock_overlays = list() return else /*if(src.justzap)*/ return - else if(user.hallucination > 50 && prob(10) && src.operating == 0) - user << "You feel a powerful shock course through your body!" - user.staminaloss += 50 - user.stunned += 5 + else if(user.hallucination > 50 && ishuman(user) && prob(10) && src.operating == 0) + hallucinate_shock(user) return if (cyclelinkedairlock) if (!shuttledocked && !emergency && !cyclelinkedairlock.shuttledocked && !cyclelinkedairlock.emergency && allowed(user)) @@ -229,6 +234,34 @@ var/list/airlock_overlays = list() addtimer(CALLBACK(cyclelinkedairlock, .proc/close), 2) ..() +/obj/machinery/door/airlock/proc/hallucinate_shock(mob/living/user) + var/image/shock_image = image(user, user, dir = user.dir) + var/image/electrocution_skeleton_anim = image('icons/mob/human.dmi', user, icon_state = "electrocuted_base", layer=ABOVE_MOB_LAYER) + shock_image.color = rgb(0,0,0) + shock_image.override = TRUE + electrocution_skeleton_anim.appearance_flags = RESET_COLOR + + to_chat(user, "You feel a powerful shock course through your body!") + if(user.client) + user.client.images |= shock_image + user.client.images |= electrocution_skeleton_anim + addtimer(CALLBACK(src, .proc/reset_hallucinate_shock_animation, user, shock_image, electrocution_skeleton_anim), 40) + user.playsound_local(get_turf(src), "sparks", 100, 1) + user.staminaloss += 50 + user.Stun(2) + user.jitteriness += 1000 + user.do_jitter_animation(user.jitteriness) + addtimer(CALLBACK(src, .proc/hallucinate_shock_drop, user), 20) + +/obj/machinery/door/airlock/proc/reset_hallucinate_shock_animation(mob/living/user, shock_image, electrocution_skeleton_anim) + if(user.client) + user.client.images.Remove(shock_image) + user.client.images.Remove(electrocution_skeleton_anim) + +/obj/machinery/door/airlock/proc/hallucinate_shock_drop(mob/living/user) + user.jitteriness = max(user.jitteriness - 990, 10) //Still jittery, but vastly less + user.Stun(3) + user.Weaken(3) /obj/machinery/door/airlock/proc/isElectrified() if(src.secondsElectrified != 0) @@ -476,31 +509,31 @@ var/list/airlock_overlays = list() /obj/machinery/door/airlock/examine(mob/user) ..() if(charge && !panel_open && in_range(user, src)) - user << "The maintenance panel seems haphazardly fastened." + to_chat(user, "The maintenance panel seems haphazardly fastened.") if(charge && panel_open) - user << "Something is wired up to the airlock's electronics!" + to_chat(user, "Something is wired up to the airlock's electronics!") if(panel_open) switch(security_level) if(AIRLOCK_SECURITY_NONE) - user << "Wires are exposed!" + to_chat(user, "Wires are exposed!") if(AIRLOCK_SECURITY_METAL) - user << "Wires are hidden behind welded metal cover" + to_chat(user, "Wires are hidden behind welded metal cover") if(AIRLOCK_SECURITY_PLASTEEL_I_S) - user << "There is some shredded plasteel inside" + to_chat(user, "There is some shredded plasteel inside") if(AIRLOCK_SECURITY_PLASTEEL_I) - user << "Wires are behind inner layer of plasteel" + to_chat(user, "Wires are behind inner layer of plasteel") if(AIRLOCK_SECURITY_PLASTEEL_O_S) - user << "There is some shredded plasteel inside" + to_chat(user, "There is some shredded plasteel inside") if(AIRLOCK_SECURITY_PLASTEEL_O) - user << "There is welded plasteel cover hiding wires" + to_chat(user, "There is welded plasteel cover hiding wires") if(AIRLOCK_SECURITY_PLASTEEL) - user << "There is protective grille over panel" + to_chat(user, "There is protective grille over panel") else if(security_level) if(security_level == AIRLOCK_SECURITY_METAL) - user << "It looks a bit stronger" + to_chat(user, "It looks a bit stronger") else - user << "It looks very robust" + to_chat(user, "It looks very robust") /obj/machinery/door/airlock/attack_ai(mob/user) if(!src.canAIControl(user)) @@ -508,12 +541,12 @@ var/list/airlock_overlays = list() src.hack(user) return else - user << "Airlock AI control has been blocked with a firewall. Unable to hack." + to_chat(user, "Airlock AI control has been blocked with a firewall. Unable to hack.") if(emagged) - user << "Unable to interface: Airlock is unresponsive." + to_chat(user, "Unable to interface: Airlock is unresponsive.") return if(detonated) - user << "Unable to interface. Airlock control panel damaged." + to_chat(user, "Unable to interface. Airlock control panel damaged.") return //Separate interface for the AI. @@ -625,43 +658,43 @@ var/list/airlock_overlays = list() set waitfor = 0 if(src.aiHacking == 0) src.aiHacking = 1 - user << "Airlock AI control has been blocked. Beginning fault-detection." + to_chat(user, "Airlock AI control has been blocked. Beginning fault-detection.") sleep(50) if(src.canAIControl(user)) - user << "Alert cancelled. Airlock control has been restored without our assistance." + to_chat(user, "Alert cancelled. Airlock control has been restored without our assistance.") src.aiHacking=0 return else if(!src.canAIHack()) - user << "Connection lost! Unable to hack airlock." + to_chat(user, "Connection lost! Unable to hack airlock.") src.aiHacking=0 return - user << "Fault confirmed: airlock control wire disabled or cut." + to_chat(user, "Fault confirmed: airlock control wire disabled or cut.") sleep(20) - user << "Attempting to hack into airlock. This may take some time." + to_chat(user, "Attempting to hack into airlock. This may take some time.") sleep(200) if(src.canAIControl(user)) - user << "Alert cancelled. Airlock control has been restored without our assistance." + to_chat(user, "Alert cancelled. Airlock control has been restored without our assistance.") src.aiHacking=0 return else if(!src.canAIHack()) - user << "Connection lost! Unable to hack airlock." + to_chat(user, "Connection lost! Unable to hack airlock.") src.aiHacking=0 return - user << "Upload access confirmed. Loading control program into airlock software." + to_chat(user, "Upload access confirmed. Loading control program into airlock software.") sleep(170) if(src.canAIControl(user)) - user << "Alert cancelled. Airlock control has been restored without our assistance." + to_chat(user, "Alert cancelled. Airlock control has been restored without our assistance.") src.aiHacking=0 return else if(!src.canAIHack()) - user << "Connection lost! Unable to hack airlock." + to_chat(user, "Connection lost! Unable to hack airlock.") src.aiHacking=0 return - user << "Transfer complete. Forcing airlock to execute program." + to_chat(user, "Transfer complete. Forcing airlock to execute program.") sleep(50) //disable blocked control src.aiControlDisabled = 2 - user << "Receiving control information from airlock." + to_chat(user, "Receiving control information from airlock.") sleep(10) //bring up airlock dialog src.aiHacking = 0 @@ -693,7 +726,7 @@ var/list/airlock_overlays = list() if(panel_open) if(security_level) - user << "Wires are protected!" + to_chat(user, "Wires are protected!") return wires.interact(user) else @@ -730,9 +763,9 @@ var/list/airlock_overlays = list() if(1) //disable idscan if(wires.is_cut(WIRE_IDSCAN)) - usr << "The IdScan wire has been cut - So, you can't disable it, but it is already disabled anyways." + to_chat(usr, "The IdScan wire has been cut - So, you can't disable it, but it is already disabled anyways.") else if(src.aiDisabledIdScanner) - usr << "You've already disabled the IdScan feature." + to_chat(usr, "You've already disabled the IdScan feature.") else src.aiDisabledIdScanner = 1 if(2) @@ -741,52 +774,52 @@ var/list/airlock_overlays = list() src.loseMainPower() update_icon() else - usr << "Main power is already offline." + to_chat(usr, "Main power is already offline.") if(3) //disrupt backup power if(src.secondsBackupPowerLost == 0) src.loseBackupPower() update_icon() else - usr << "Backup power is already offline." + to_chat(usr, "Backup power is already offline.") if(4) //drop door bolts if(wires.is_cut(WIRE_BOLTS)) - usr << "You can't drop the door bolts - The door bolt dropping wire has been cut." + to_chat(usr, "You can't drop the door bolts - The door bolt dropping wire has been cut.") else bolt() if(5) //un-electrify door if(wires.is_cut(WIRE_SHOCK)) - usr << text("Can't un-electrify the airlock - The electrification wire is cut.") - else if(src.secondsElectrified==-1) - src.secondsElectrified = 0 - else if(src.secondsElectrified>0) - src.secondsElectrified = 0 + to_chat(usr, text("Can't un-electrify the airlock - The electrification wire is cut.")) + else if(secondsElectrified==-1) + set_electrified(0) + else if(secondsElectrified>0) + set_electrified(0) if(8) // Safeties! We don't need no stinking safeties! if(wires.is_cut(WIRE_SAFETY)) - usr << text("Control to door sensors is disabled.") + to_chat(usr, text("Control to door sensors is disabled.")) else if (src.safe) safe = 0 else - usr << text("Firmware reports safeties already overriden.") + to_chat(usr, text("Firmware reports safeties already overriden.")) if(9) // Door speed control if(wires.is_cut(WIRE_TIMING)) - usr << text("Control to door timing circuitry has been severed.") + to_chat(usr, text("Control to door timing circuitry has been severed.")) else if (src.normalspeed) normalspeed = 0 else - usr << text("Door timing circuitry already accelerated.") + to_chat(usr, text("Door timing circuitry already accelerated.")) if(7) //close door if(src.welded) - usr << text("The airlock has been welded shut!") + to_chat(usr, text("The airlock has been welded shut!")) else if(src.locked) - usr << text("The door bolts are down!") + to_chat(usr, text("The door bolts are down!")) else if(!src.density) close() else @@ -795,12 +828,12 @@ var/list/airlock_overlays = list() if(10) // Bolt lights if(wires.is_cut(WIRE_LIGHT)) - usr << text("Control to door bolt lights has been severed.") + to_chat(usr, text("Control to door bolt lights has been severed.")) else if (src.lights) lights = 0 update_icon() else - usr << text("Door bolt lights are already disabled!") + to_chat(usr, text("Door bolt lights are already disabled!")) if(11) // Emergency access @@ -808,7 +841,7 @@ var/list/airlock_overlays = list() emergency = 0 update_icon() else - usr << text("Emergency access is already disabled!") + to_chat(usr, text("Emergency access is already disabled!")) else if(href_list["aiEnable"]) @@ -817,81 +850,81 @@ var/list/airlock_overlays = list() if(1) //enable idscan if(wires.is_cut(WIRE_IDSCAN)) - usr << "You can't enable IdScan - The IdScan wire has been cut." + to_chat(usr, "You can't enable IdScan - The IdScan wire has been cut.") else if(src.aiDisabledIdScanner) src.aiDisabledIdScanner = 0 else - usr << "The IdScan feature is not disabled." + to_chat(usr, "The IdScan feature is not disabled.") if(4) //raise door bolts if(wires.is_cut(WIRE_BOLTS)) - usr << text("The door bolt drop wire is cut - you can't raise the door bolts.
\n") + to_chat(usr, text("The door bolt drop wire is cut - you can't raise the door bolts.
\n")) else if(!src.locked) - usr << text("The door bolts are already up.
\n") + to_chat(usr, text("The door bolts are already up.
\n")) else if(src.hasPower()) unbolt() else - usr << text("Cannot raise door bolts due to power failure.
\n") + to_chat(usr, text("Cannot raise door bolts due to power failure.
\n")) if(5) //electrify door for 30 seconds if(wires.is_cut(WIRE_SHOCK)) - usr << text("The electrification wire has been cut.
\n") + to_chat(usr, text("The electrification wire has been cut.
\n")) else if(src.secondsElectrified==-1) - usr << text("The door is already indefinitely electrified. You'd have to un-electrify it before you can re-electrify it with a non-forever duration.
\n") + to_chat(usr, text("The door is already indefinitely electrified. You'd have to un-electrify it before you can re-electrify it with a non-forever duration.
\n")) else if(src.secondsElectrified!=0) - usr << text("The door is already electrified. You can't re-electrify it while it's already electrified.
\n") + to_chat(usr, text("The door is already electrified. You can't re-electrify it while it's already electrified.
\n")) else shockedby += "\[[time_stamp()]\][usr](ckey:[usr.ckey])" add_logs(usr, src, "electrified") - src.secondsElectrified = 30 + set_electrified(30) spawn(10) while (src.secondsElectrified>0) src.secondsElectrified-=1 if(src.secondsElectrified<0) - src.secondsElectrified = 0 + set_electrified(0) src.updateUsrDialog() sleep(10) if(6) //electrify door indefinitely if(wires.is_cut(WIRE_SHOCK)) - usr << text("The electrification wire has been cut.
\n") + to_chat(usr, text("The electrification wire has been cut.
\n")) else if(src.secondsElectrified==-1) - usr << text("The door is already indefinitely electrified.
\n") + to_chat(usr, text("The door is already indefinitely electrified.
\n")) else if(src.secondsElectrified!=0) - usr << text("The door is already electrified. You can't re-electrify it while it's already electrified.
\n") + to_chat(usr, text("The door is already electrified. You can't re-electrify it while it's already electrified.
\n")) else shockedby += text("\[[time_stamp()]\][usr](ckey:[usr.ckey])") add_logs(usr, src, "electrified") - src.secondsElectrified = -1 + set_electrified(-1) if (8) // Not in order >.> // Safeties! Maybe we do need some stinking safeties! if(wires.is_cut(WIRE_SAFETY)) - usr << text("Control to door sensors is disabled.") + to_chat(usr, text("Control to door sensors is disabled.")) else if (!src.safe) safe = 1 src.updateUsrDialog() else - usr << text("Firmware reports safeties already in place.") + to_chat(usr, text("Firmware reports safeties already in place.")) if(9) // Door speed control if(wires.is_cut(WIRE_TIMING)) - usr << text("Control to door timing circuitry has been severed.") + to_chat(usr, text("Control to door timing circuitry has been severed.")) else if (!src.normalspeed) normalspeed = 1 src.updateUsrDialog() else - usr << text("Door timing circuitry currently operating normally.") + to_chat(usr, text("Door timing circuitry currently operating normally.")) if(7) //open door if(src.welded) - usr << text("The airlock has been welded shut!") + to_chat(usr, text("The airlock has been welded shut!")) else if(src.locked) - usr << text("The door bolts are down!") + to_chat(usr, text("The door bolts are down!")) else if(src.density) open() else @@ -899,20 +932,20 @@ var/list/airlock_overlays = list() if(10) // Bolt lights if(wires.is_cut(WIRE_LIGHT)) - usr << text("Control to door bolt lights has been severed.") + to_chat(usr, text("Control to door bolt lights has been severed.")) else if (!src.lights) lights = 1 update_icon() src.updateUsrDialog() else - usr << text("Door bolt lights are already enabled!") + to_chat(usr, text("Door bolt lights are already enabled!")) if(11) // Emergency access if (!src.emergency) emergency = 1 update_icon() else - usr << text("Emergency access is already enabled!") + to_chat(usr, text("Emergency access is already enabled!")) add_fingerprint(usr) if(!nowindow) @@ -931,9 +964,9 @@ var/list/airlock_overlays = list() if(istype(C, /obj/item/stack/sheet/metal)) var/obj/item/stack/sheet/metal/S = C if(S.amount < 2) - user << "You need at least 2 metal sheets to reinforce [src]." + to_chat(user, "You need at least 2 metal sheets to reinforce [src].") return - user << "You start reinforcing [src]" + to_chat(user, "You start reinforcing [src]") if(do_after(user, 20, 1, target = src)) if(!panel_open || !S.use(2)) return @@ -945,9 +978,9 @@ var/list/airlock_overlays = list() else if(istype(C, /obj/item/stack/sheet/plasteel)) var/obj/item/stack/sheet/plasteel/S = C if(S.amount < 2) - user << "You need at least 2 plasteel sheets to reinforce [src]." + to_chat(user, "You need at least 2 plasteel sheets to reinforce [src].") return - user << "You start reinforcing [src]." + to_chat(user, "You start reinforcing [src].") if(do_after(user, 20, 1, target = src)) if(!panel_open || !S.use(2)) return @@ -963,7 +996,7 @@ var/list/airlock_overlays = list() var/obj/item/weapon/weldingtool/WT = C if(!WT.remove_fuel(2, user)) return - user << "You begin cutting the panel's shielding..." + to_chat(user, "You begin cutting the panel's shielding...") playsound(loc, WT.usesound, 40, 1) if(do_after(user, 40*WT.toolspeed, 1, target = src)) if(!panel_open || !WT.isOn()) @@ -979,7 +1012,7 @@ var/list/airlock_overlays = list() if(AIRLOCK_SECURITY_PLASTEEL_I_S) if(istype(C, /obj/item/weapon/crowbar)) var/obj/item/weapon/crowbar/W = C - user << "You start removing the inner layer of shielding..." + to_chat(user, "You start removing the inner layer of shielding...") playsound(src, W.usesound, 100, 1) if(do_after(user, 40*W.toolspeed, 1, target = src)) if(!panel_open) @@ -999,7 +1032,7 @@ var/list/airlock_overlays = list() var/obj/item/weapon/weldingtool/WT = C if(!WT.remove_fuel(2, user)) return - user << "You begin cutting the inner layer of shielding..." + to_chat(user, "You begin cutting the inner layer of shielding...") playsound(loc, WT.usesound, 40, 1) if(do_after(user, 40*WT.toolspeed, 1, target = src)) if(!panel_open || !WT.isOn()) @@ -1013,7 +1046,7 @@ var/list/airlock_overlays = list() if(AIRLOCK_SECURITY_PLASTEEL_O_S) if(istype(C, /obj/item/weapon/crowbar)) var/obj/item/weapon/crowbar/W = C - user << "You start removing outer layer of shielding..." + to_chat(user, "You start removing outer layer of shielding...") playsound(src, W.usesound, 100, 1) if(do_after(user, 40*W.toolspeed, 1, target = src)) if(!panel_open) @@ -1030,7 +1063,7 @@ var/list/airlock_overlays = list() var/obj/item/weapon/weldingtool/WT = C if(!WT.remove_fuel(2, user)) return - user << "You begin cutting the outer layer of shielding..." + to_chat(user, "You begin cutting the outer layer of shielding...") playsound(loc, WT.usesound, 40, 1) if(do_after(user, 40*WT.toolspeed, 1, target = src)) if(!panel_open || !WT.isOn()) @@ -1046,7 +1079,7 @@ var/list/airlock_overlays = list() var/obj/item/weapon/wirecutters/W = C if(src.hasPower() && src.shock(user, 60)) // Protective grille of wiring is electrified return - user << "You start cutting through the outer grille." + to_chat(user, "You start cutting through the outer grille.") playsound(src, W.usesound, 100, 1) if(do_after(user, 10*W.toolspeed, 1, target = src)) if(!panel_open) @@ -1057,10 +1090,10 @@ var/list/airlock_overlays = list() return if(istype(C, /obj/item/weapon/screwdriver)) if(panel_open && detonated) - user << "[src] has no maintenance panel!" + to_chat(user, "[src] has no maintenance panel!") return panel_open = !panel_open - user << "You [panel_open ? "open":"close"] the maintenance panel of the airlock." + to_chat(user, "You [panel_open ? "open":"close"] the maintenance panel of the airlock.") playsound(src.loc, C.usesound, 50, 1) src.update_icon() else if(is_wire_tool(C)) @@ -1072,17 +1105,17 @@ var/list/airlock_overlays = list() change_paintjob(C, user) else if(istype(C, /obj/item/device/doorCharge)) if(!panel_open || security_level) - user << "The maintenance panel must be open to apply [C]!" + to_chat(user, "The maintenance panel must be open to apply [C]!") return if(emagged) return if(charge && !detonated) - user << "There's already a charge hooked up to this door!" + to_chat(user, "There's already a charge hooked up to this door!") return if(detonated) - user << "The maintenance panel is destroyed!" + to_chat(user, "The maintenance panel is destroyed!") return - user << "You apply [C]. Next time someone opens the door, it will explode." + to_chat(user, "You apply [C]. Next time someone opens the door, it will explode.") user.drop_item() panel_open = 0 update_icon() @@ -1095,19 +1128,32 @@ var/list/airlock_overlays = list() /obj/machinery/door/airlock/try_to_weld(obj/item/weapon/weldingtool/W, mob/user) if(!operating && density) if(W.remove_fuel(0,user)) - user.visible_message("[user] is [welded ? "unwelding":"welding"] the airlock.", \ - "You begin [welded ? "unwelding":"welding"] the airlock...", \ - "You hear welding.") - playsound(loc, W.usesound, 40, 1) - if(do_after(user,40*W.toolspeed, 1, target = src)) - if(density && !operating)//Door must be closed to weld. - if(!user || !W || !W.isOn() || !user.loc ) - return + if(user.a_intent != INTENT_HELP) + user.visible_message("[user] is [welded ? "unwelding":"welding"] the airlock.", \ + "You begin [welded ? "unwelding":"welding"] the airlock...", \ + "You hear welding.") + playsound(loc, W.usesound, 40, 1) + if(do_after(user,40*W.toolspeed, 1, target = src, extra_checks = CALLBACK(src, .proc/weld_checks, W, user))) playsound(loc, 'sound/items/Welder2.ogg', 50, 1) welded = !welded user.visible_message("[user.name] has [welded? "welded shut":"unwelded"] [src].", \ "You [welded ? "weld the airlock shut":"unweld the airlock"].") update_icon() + else if(obj_integrity < max_integrity) + user.visible_message("[user] is welding the airlock.", \ + "You begin repairing the airlock...", \ + "You hear welding.") + playsound(loc, W.usesound, 40, 1) + if(do_after(user,40*W.toolspeed, 1, target = src, extra_checks = CALLBACK(src, .proc/weld_checks, W, user))) + playsound(loc, 'sound/items/Welder2.ogg', 50, 1) + obj_integrity = max_integrity + stat &= ~BROKEN + user.visible_message("[user.name] has repaired [src].", \ + "You finish repairing the airlock.") + update_icon() + +/obj/machinery/door/airlock/proc/weld_checks(obj/item/weapon/weldingtool/W, mob/user) + return !operating && density && user && W && W.isOn() && user.loc /obj/machinery/door/airlock/try_to_crowbar(obj/item/I, mob/user) var/beingcrowbarred = null @@ -1116,10 +1162,10 @@ var/list/airlock_overlays = list() else beingcrowbarred = 0 if(panel_open && charge) - user << "You carefully start removing [charge] from [src]..." + to_chat(user, "You carefully start removing [charge] from [src]...") playsound(get_turf(src), I.usesound, 50, 1) if(!do_after(user, 150*I.toolspeed, target = src)) - user << "You slip and [charge] detonates!" + to_chat(user, "You slip and [charge] detonates!") charge.ex_act(1) user.Weaken(3) return @@ -1137,9 +1183,9 @@ var/list/airlock_overlays = list() deconstruct(TRUE, user) return else if(hasPower()) - user << "The airlock's motors resist your efforts to force it!" + to_chat(user, "The airlock's motors resist your efforts to force it!") else if(locked) - user << "The airlock's bolts prevent it from being forced!" + to_chat(user, "The airlock's bolts prevent it from being forced!") else if( !welded && !operating) if(beingcrowbarred == 0) //being fireaxe'd var/obj/item/weapon/twohanded/fireaxe/F = I @@ -1150,7 +1196,7 @@ var/list/airlock_overlays = list() else close(2) else - user << "You need to be wielding the fire axe to do that!" + to_chat(user, "You need to be wielding the fire axe to do that!") else spawn(0) if(density) @@ -1167,11 +1213,11 @@ var/list/airlock_overlays = list() return if(locked) - user << "The bolts are down, it won't budge!" + to_chat(user, "The bolts are down, it won't budge!") return if(welded) - user << "It's welded, it won't budge!" + to_chat(user, "It's welded, it won't budge!") return var/time_to_open = 5 @@ -1181,7 +1227,7 @@ var/list/airlock_overlays = list() if(do_after(user, time_to_open,target = src)) open(2) if(density && !open(2)) - user << "Despite your attempts, the [src] refuses to open." + to_chat(user, "Despite your attempts, the [src] refuses to open.") /obj/machinery/door/airlock/plasma/attackby(obj/item/C, mob/user, params) if(C.is_hot() > 300)//If the temperature of the object is over 300, then ignite @@ -1232,13 +1278,13 @@ var/list/airlock_overlays = list() return 0 operating = 1 update_icon(AIRLOCK_OPENING, 1) - src.SetOpacity(0) + src.set_opacity(0) sleep(5) src.density = 0 sleep(9) src.layer = OPEN_DOOR_LAYER update_icon(AIRLOCK_OPEN, 1) - SetOpacity(0) + set_opacity(0) operating = 0 air_update_turf(1) update_freelook_sight() @@ -1277,14 +1323,16 @@ var/list/airlock_overlays = list() operating = 1 update_icon(AIRLOCK_CLOSING, 1) src.layer = CLOSED_DOOR_LAYER + if(air_tight) + density = TRUE sleep(5) - src.density = 1 + density = TRUE if(!safe) crush() sleep(9) update_icon(AIRLOCK_CLOSED, 1) if(visible && !glass) - SetOpacity(1) + set_opacity(1) operating = 0 delayed_close_requested = FALSE air_update_turf(1) @@ -1395,7 +1443,7 @@ var/list/airlock_overlays = list() if(!density) //Already open return if(locked || welded) //Extremely generic, as aliens only understand the basics of how airlocks work. - user << "[src] refuses to budge!" + to_chat(user, "[src] refuses to budge!") return user.visible_message("[user] begins prying open [src].",\ "You begin digging your claws into [src] with all your might!",\ @@ -1408,7 +1456,7 @@ var/list/airlock_overlays = list() if(do_after(user, time_to_open, target = src)) if(density && !open(2)) //The airlock is still closed, but something prevented it opening. (Another player noticed and bolted/welded the airlock in time!) - user << "Despite your efforts, [src] managed to resist your attempts to open it!" + to_chat(user, "Despite your efforts, [src] managed to resist your attempts to open it!") /obj/machinery/door/airlock/hostile_lockdown(mob/origin) // Must be powered and have working AI wire. @@ -1417,7 +1465,7 @@ var/list/airlock_overlays = list() safe = FALSE //DOOR CRUSH close() bolt() //Bolt it! - secondsElectrified = -1 //Shock it! + set_electrified(-1) //Shock it! if(origin) shockedby += "\[[time_stamp()]\][origin](ckey:[origin.ckey])" @@ -1426,7 +1474,7 @@ var/list/airlock_overlays = list() // Must be powered and have working AI wire. if(canAIControl(src) && !stat) unbolt() - secondsElectrified = 0 + set_electrified(0) open() safe = TRUE @@ -1439,6 +1487,9 @@ var/list/airlock_overlays = list() wires.cut_all() update_icon() +/obj/machinery/door/airlock/proc/set_electrified(seconds) + secondsElectrified = seconds + diag_hud_set_electrified() /obj/machinery/door/airlock/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir) . = ..() @@ -1462,10 +1513,10 @@ var/list/airlock_overlays = list() A.obj_integrity = A.max_integrity * 0.5 else if(emagged) if(user) - user << "You discard the damaged electronics." + to_chat(user, "You discard the damaged electronics.") else if(user) - user << "You remove the airlock electronics." + to_chat(user, "You remove the airlock electronics.") var/obj/item/weapon/electronics/airlock/ae if(!electronics) @@ -1481,3 +1532,17 @@ var/list/airlock_overlays = list() electronics = null ae.loc = src.loc qdel(src) + +/obj/machinery/door/airlock/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + switch(the_rcd.mode) + if(RCD_DECONSTRUCT) + return list("mode" = RCD_DECONSTRUCT, "delay" = 50, "cost" = 32) + return FALSE + +/obj/machinery/door/airlock/rcd_act(mob/user, obj/item/weapon/rcd/the_rcd, passed_mode) + switch(passed_mode) + if(RCD_DECONSTRUCT) + to_chat(user, "You deconstruct the airlock.") + qdel(src) + return TRUE + return FALSE diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm index b5ab35740e..167b95b634 100644 --- a/code/game/machinery/doors/airlock_types.dm +++ b/code/game/machinery/doors/airlock_types.dm @@ -448,7 +448,7 @@ gear_text = "The cogwheel is solidly wrenched to the brass around it." if(GEAR_LOOSE) gear_text = "The cogwheel has been loosened, but remains connected loosely to the door!" - user << gear_text + to_chat(user, gear_text) /obj/machinery/door/airlock/clockwork/emp_act(severity) if(prob(80/severity)) @@ -517,7 +517,7 @@ return 1 else if(istype(I, /obj/item/weapon/crowbar)) if(construction_state == GEAR_SECURE) - user << "[src]'s cogwheel is too tightly secured! Your [I.name] can't reach under it!" + to_chat(user, "[src]'s cogwheel is too tightly secured! Your [I.name] can't reach under it!") return 1 else if(construction_state == GEAR_LOOSE) user.visible_message("[user] begins slowly lifting off [src]'s cogwheel...", "You slowly begin lifting off [src]'s cogwheel...") diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index b72ce4d0c8..bcce65161b 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -163,8 +163,7 @@ else if(!(I.flags & NOBLUDGEON) && user.a_intent != INTENT_HARM) try_to_activate_door(user) return 1 - else - return ..() + return ..() /obj/machinery/door/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir) if(damage_flag == "melee" && damage_amount < damage_deflection) @@ -234,13 +233,13 @@ return 0 operating = 1 do_animate("opening") - SetOpacity(0) + set_opacity(0) sleep(5) density = 0 sleep(5) layer = OPEN_DOOR_LAYER update_icon() - SetOpacity(0) + set_opacity(0) operating = 0 air_update_turf(1) update_freelook_sight() @@ -269,7 +268,7 @@ sleep(5) update_icon() if(visible && !glass) - SetOpacity(1) + set_opacity(1) operating = 0 air_update_turf(1) update_freelook_sight() diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index a4bb52ead6..3b64796b2e 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -73,7 +73,7 @@ if(operating || !density) return user.changeNext_move(CLICK_CD_MELEE) - + user.visible_message("[user] bangs on \the [src].", "You bang on \the [src].") playsound(loc, 'sound/effects/Glassknock.ogg', 10, FALSE, frequency = 32000) @@ -86,7 +86,7 @@ if(welded) if(istype(C, /obj/item/weapon/wrench)) if(boltslocked) - user << "There are screws locking the bolts in place!" + to_chat(user, "There are screws locking the bolts in place!") return playsound(get_turf(src), C.usesound, 50, 1) user.visible_message("[user] starts undoing [src]'s bolts...", \ @@ -113,7 +113,7 @@ /obj/machinery/door/firedoor/try_to_weld(obj/item/weapon/weldingtool/W, mob/user) if(W.remove_fuel(0, user)) welded = !welded - user << "You [welded?"welded":"unwelded"] \the [src]" + to_chat(user, "You [welded?"welded":"unwelded"] \the [src]") update_icon() /obj/machinery/door/firedoor/try_to_crowbar(obj/item/I, mob/user) @@ -137,7 +137,7 @@ /obj/machinery/door/firedoor/attack_alien(mob/user) add_fingerprint(user) if(welded) - user << "[src] refuses to budge!" + to_chat(user, "[src] refuses to budge!") return open() @@ -246,13 +246,13 @@ ..() switch(constructionStep) if(CONSTRUCTION_PANEL_OPEN) - user << "There is a small metal plate covering the wires." + to_chat(user, "There is a small metal plate covering the wires.") if(CONSTRUCTION_WIRES_EXPOSED) - user << "Wires are trailing from the maintenance panel." + to_chat(user, "Wires are trailing from the maintenance panel.") if(CONSTRUCTION_GUTTED) - user << "The circuit board is visible." + to_chat(user, "The circuit board is visible.") if(CONSTRUCTION_NOCIRCUIT) - user << "There are no electronics in the frame." + to_chat(user, "There are no electronics in the frame.") /obj/structure/firelock_frame/update_icon() ..() @@ -277,7 +277,7 @@ return if(istype(C, /obj/item/weapon/wrench)) if(locate(/obj/machinery/door/firedoor) in get_turf(src)) - user << "There's already a firelock there." + to_chat(user, "There's already a firelock there.") return playsound(get_turf(src), C.usesound, 50, 1) user.visible_message("[user] starts bolting down [src]...", \ @@ -298,10 +298,10 @@ if(istype(C, /obj/item/stack/sheet/plasteel)) var/obj/item/stack/sheet/plasteel/P = C if(reinforced) - user << "[src] is already reinforced." + to_chat(user, "[src] is already reinforced.") return if(P.get_amount() < 2) - user << "You need more plasteel to reinforce [src]." + to_chat(user, "You need more plasteel to reinforce [src].") return user.visible_message("[user] begins reinforcing [src]...", \ "You begin reinforcing [src]...") @@ -367,7 +367,7 @@ if(istype(C, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/B = C if(B.get_amount() < 5) - user << "You need more wires to add wiring to [src]." + to_chat(user, "You need more wires to add wiring to [src].") return user.visible_message("[user] begins wiring [src]...", \ "You begin adding wires to [src]...") diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index de1f37316a..2e48e34f71 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -145,7 +145,7 @@ sleep(10) src.density = 0 -// src.sd_SetOpacity(0) //TODO: why is this here? Opaque windoors? ~Carn +// src.sd_set_opacity(0) //TODO: why is this here? Opaque windoors? ~Carn air_update_turf(1) update_freelook_sight() @@ -226,11 +226,11 @@ if(!(flags&NODECONSTRUCT)) if(istype(I, /obj/item/weapon/screwdriver)) if(density || operating) - user << "You need to open the door to access the maintenance panel!" + to_chat(user, "You need to open the door to access the maintenance panel!") return playsound(src.loc, I.usesound, 50, 1) panel_open = !panel_open - user << "You [panel_open ? "open":"close"] the maintenance panel of the [src.name]." + to_chat(user, "You [panel_open ? "open":"close"] the maintenance panel of the [src.name].") return if(istype(I, /obj/item/weapon/crowbar)) @@ -260,11 +260,11 @@ WA.created_name = src.name if(emagged) - user << "You discard the damaged electronics." + to_chat(user, "You discard the damaged electronics.") qdel(src) return - user << "You remove the airlock electronics." + to_chat(user, "You remove the airlock electronics.") var/obj/item/weapon/electronics/airlock/ae if(!electronics) @@ -290,7 +290,7 @@ else close(2) else - user << "The door's motors resist your efforts to force it!" + to_chat(user, "The door's motors resist your efforts to force it!") /obj/machinery/door/window/do_animate(animation) switch(animation) diff --git a/code/game/machinery/doppler_array.dm b/code/game/machinery/doppler_array.dm index a1d0e2631a..012d558135 100644 --- a/code/game/machinery/doppler_array.dm +++ b/code/game/machinery/doppler_array.dm @@ -27,11 +27,11 @@ var/list/doppler_arrays = list() if(!anchored && !isinspace()) anchored = 1 power_change() - user << "You fasten [src]." + to_chat(user, "You fasten [src].") else if(anchored) anchored = 0 power_change() - user << "You unfasten [src]." + to_chat(user, "You unfasten [src].") playsound(loc, O.usesound, 50, 1) else return ..() @@ -50,7 +50,7 @@ var/list/doppler_arrays = list() /obj/machinery/doppler_array/AltClick(mob/living/user) if(!istype(user) || user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return diff --git a/code/game/machinery/droneDispenser.dm b/code/game/machinery/droneDispenser.dm index 48dfe0f55b..859f306396 100644 --- a/code/game/machinery/droneDispenser.dm +++ b/code/game/machinery/droneDispenser.dm @@ -157,13 +157,11 @@ /obj/machinery/droneDispenser/examine(mob/user) ..() if((mode == DRONE_RECHARGING) && !stat && recharging_text) - user << "[recharging_text]" + to_chat(user, "[recharging_text]") if(metal_cost) - user << "It has [materials.amount(MAT_METAL)] \ - units of metal stored." + to_chat(user, "It has [materials.amount(MAT_METAL)] units of metal stored.") if(glass_cost) - user << "It has [materials.amount(MAT_GLASS)] \ - units of glass stored." + to_chat(user, "It has [materials.amount(MAT_GLASS)] units of glass stored.") /obj/machinery/droneDispenser/power_change() ..() @@ -248,32 +246,28 @@ if(!O.materials[MAT_METAL] && !O.materials[MAT_GLASS]) return ..() if(!metal_cost && !glass_cost) - user << "There isn't a place \ - to insert [O]!" + to_chat(user, "There isn't a place to insert [O]!") return var/obj/item/stack/sheets = O if(!user.canUnEquip(sheets)) - user << "[O] is stuck to your hand, \ - you can't get it off!" + to_chat(user, "[O] is stuck to your hand, you can't get it off!") return var/used = materials.insert_stack(sheets, sheets.amount) if(used) - user << "You insert [used] \ - sheet[used > 1 ? "s" : ""] into [src]." + to_chat(user, "You insert [used] sheet[used > 1 ? "s" : ""] into [src].") else - user << "The [src] isn't accepting the \ - [sheets]." + to_chat(user, "The [src] isn't accepting the [sheets].") else if(istype(O, /obj/item/weapon/crowbar)) materials.retrieve_all() playsound(loc, O.usesound, 50, 1) - user << "You retrieve the materials from [src]." + to_chat(user, "You retrieve the materials from [src].") else if(istype(O, /obj/item/weapon/weldingtool)) if(!(stat & BROKEN)) - user << "[src] doesn't need repairs." + to_chat(user, "[src] doesn't need repairs.") return var/obj/item/weapon/weldingtool/WT = O @@ -282,8 +276,7 @@ return if(WT.get_fuel() < 1) - user << "You need more fuel to \ - complete this task!" + to_chat(user, "You need more fuel to complete this task!") return playsound(src, WT.usesound, 50, 1) diff --git a/code/game/machinery/embedded_controller/access_controller.dm b/code/game/machinery/embedded_controller/access_controller.dm index 79fafb0a8a..b3f2c20893 100644 --- a/code/game/machinery/embedded_controller/access_controller.dm +++ b/code/game/machinery/embedded_controller/access_controller.dm @@ -19,9 +19,12 @@ /obj/machinery/doorButtons/proc/findObjsByTag() return -/obj/machinery/doorButtons/Initialize() - ..() - findObjsByTag() +/obj/machinery/doorButtons/Initialize(mapload) + if(mapload) + ..() + return TRUE + else + findObjsByTag() /obj/machinery/doorButtons/emag_act(mob/user) if(!emagged) @@ -29,7 +32,7 @@ req_access = list() req_one_access = list() playsound(src.loc, "sparks", 100, 1) - user << "You short out the access controller." + to_chat(user, "You short out the access controller.") /obj/machinery/doorButtons/proc/removeMe() @@ -59,7 +62,7 @@ if(busy) return if(!allowed(user)) - user << "Access denied." + to_chat(user, "Access denied.") return if(controller && !controller.busy && door) if(controller.stat & NOPOWER) @@ -128,7 +131,7 @@ if(busy) return if(!allowed(usr)) - usr << "Access denied." + to_chat(usr, "Access denied.") return switch(href_list["command"]) if("close_exterior") @@ -156,22 +159,22 @@ closeDoor(A) /obj/machinery/doorButtons/airlock_controller/proc/closeDoor(obj/machinery/door/airlock/A) + set waitfor = FALSE if(A.density) goIdle() return 0 update_icon() A.unbolt() - spawn() - if(A && A.close()) - if(stat & NOPOWER || lostPower || !A || QDELETED(A)) - goIdle(1) - return - A.bolt() - if(busy == CLOSING) - goIdle(1) - else + . = 1 + if(A && A.close()) + if(stat & NOPOWER || lostPower || !A || QDELETED(A)) goIdle(1) - return 1 + return + A.bolt() + if(busy == CLOSING) + goIdle(1) + else + goIdle(1) /obj/machinery/doorButtons/airlock_controller/proc/cycleClose(obj/machinery/door/airlock/A) if(!A || !exteriorAirlock || !interiorAirlock) diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index 85d171f5a8..4bc16cccf6 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -96,7 +96,7 @@ return var/area/A = get_area(src) A.firealert(src) - playsound(src.loc, 'sound/machines/firealarmshort.ogg', 75) + playsound(src.loc, 'goon/sound/machinery/FireAlarm.ogg', 75) /obj/machinery/firealarm/proc/alarm_in(time) addtimer(CALLBACK(src, .proc/alarm), time) @@ -148,7 +148,7 @@ if(istype(W, /obj/item/weapon/screwdriver) && buildstage == 2) playsound(src.loc, W.usesound, 50, 1) panel_open = !panel_open - user << "The wires have been [panel_open ? "exposed" : "unexposed"]." + to_chat(user, "The wires have been [panel_open ? "exposed" : "unexposed"].") update_icon() return @@ -167,18 +167,18 @@ buildstage = 1 playsound(src.loc, W.usesound, 50, 1) new /obj/item/stack/cable_coil(user.loc, 5) - user << "You cut the wires from \the [src]." + to_chat(user, "You cut the wires from \the [src].") update_icon() return if(1) if(istype(W, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/coil = W if(coil.get_amount() < 5) - user << "You need more cable for this!" + to_chat(user, "You need more cable for this!") else coil.use(5) buildstage = 2 - user << "You wire \the [src]." + to_chat(user, "You wire \the [src].") update_icon() return @@ -189,16 +189,16 @@ if(do_after(user, 20*W.toolspeed, target = src)) if(buildstage == 1) if(stat & BROKEN) - user << "You remove the destroyed circuit." + to_chat(user, "You remove the destroyed circuit.") else - user << "You pry out the circuit." + to_chat(user, "You pry out the circuit.") new /obj/item/weapon/electronics/firealarm(user.loc) buildstage = 0 update_icon() return if(0) if(istype(W, /obj/item/weapon/electronics/firealarm)) - user << "You insert the circuit." + to_chat(user, "You insert the circuit.") qdel(W) buildstage = 1 update_icon() diff --git a/code/game/machinery/flasher.dm b/code/game/machinery/flasher.dm index fa9f4c2fd5..c26094e2bd 100644 --- a/code/game/machinery/flasher.dm +++ b/code/game/machinery/flasher.dm @@ -73,17 +73,17 @@ bulb = W power_change() else - user << "A flashbulb is already installed in [src]!" + to_chat(user, "A flashbulb is already installed in [src]!") else if (istype(W, /obj/item/weapon/wrench)) if(!bulb) - user << "You start unsecuring the flasher frame..." + to_chat(user, "You start unsecuring the flasher frame...") playsound(loc, W.usesound, 50, 1) if(do_after(user, 40*W.toolspeed, target = src)) - user << "You unsecure the flasher frame." + to_chat(user, "You unsecure the flasher frame.") deconstruct(TRUE) else - user << "Remove a flashbulb from [src] first!" + to_chat(user, "Remove a flashbulb from [src] first!") else return ..() @@ -168,13 +168,13 @@ playsound(src.loc, W.usesound, 100, 1) if (!anchored && !isinspace()) - user << "[src] is now secured." + to_chat(user, "[src] is now secured.") add_overlay("[base_state]-s") anchored = 1 power_change() add_to_proximity_list(src, range) else - user << "[src] can now be moved." + to_chat(user, "[src] can now be moved.") cut_overlays() anchored = 0 power_change() @@ -187,7 +187,7 @@ remove_from_proximity_list(src, range) return ..() -/obj/machinery/flasher/protable/Moved(oldloc) +/obj/machinery/flasher/portable/Moved(oldloc) remove_from_proximity_list(oldloc, range) return ..() @@ -201,7 +201,7 @@ /obj/item/wallframe/flasher/examine(mob/user) ..() - user << "Its channel ID is '[id]'." + to_chat(user, "Its channel ID is '[id]'.") /obj/item/wallframe/flasher/after_attach(var/obj/O) ..() diff --git a/code/game/machinery/gulag_item_reclaimer.dm b/code/game/machinery/gulag_item_reclaimer.dm index cedab21e73..826d707f0a 100644 --- a/code/game/machinery/gulag_item_reclaimer.dm +++ b/code/game/machinery/gulag_item_reclaimer.dm @@ -36,10 +36,10 @@ return I.forceMove(src) inserted_id = I - user << "You insert [I]." + to_chat(user, "You insert [I].") return else - user << "There's an ID inserted already." + to_chat(user, "There's an ID inserted already.") return ..() /obj/machinery/gulag_item_reclaimer/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ @@ -99,7 +99,7 @@ if(M == usr || allowed(usr)) drop_items(M) else - usr << "Access denied." + to_chat(usr, "Access denied.") /obj/machinery/gulag_item_reclaimer/proc/drop_items(mob/user) if(!stored_items[user]) diff --git a/code/game/machinery/gulag_teleporter.dm b/code/game/machinery/gulag_teleporter.dm index f879f4b4c4..92a550b17c 100644 --- a/code/game/machinery/gulag_teleporter.dm +++ b/code/game/machinery/gulag_teleporter.dm @@ -49,7 +49,7 @@ The console is located at computer/gulag_teleporter.dm /obj/machinery/gulag_teleporter/interact(mob/user) if(locked) - user << "[src] is locked." + to_chat(user, "[src] is locked.") return toggle_open() @@ -92,7 +92,7 @@ The console is located at computer/gulag_teleporter.dm if(user.stat != CONSCIOUS) return if(locked) - user << "[src] is locked!" + to_chat(user, "[src] is locked!") return open_machine() @@ -103,7 +103,7 @@ The console is located at computer/gulag_teleporter.dm return user.changeNext_move(CLICK_CD_BREAKOUT) user.last_special = world.time + CLICK_CD_BREAKOUT - user << "You lean on the back of [src] and start pushing the door open... (this will take about a minute.)" + to_chat(user, "You lean on the back of [src] and start pushing the door open... (this will take about a minute.)") user.visible_message("You hear a metallic creaking from [src]!") if(do_after(user,(breakout_time), target = src)) @@ -112,7 +112,7 @@ The console is located at computer/gulag_teleporter.dm locked = FALSE visible_message("[user] successfully broke out of [src]!") - user << "You successfully break out of [src]!" + to_chat(user, "You successfully break out of [src]!") open_machine() @@ -123,7 +123,7 @@ The console is located at computer/gulag_teleporter.dm /obj/machinery/gulag_teleporter/proc/toggle_open() if(panel_open) - usr << "Close the maintenance panel first." + to_chat(usr, "Close the maintenance panel first.") return if(state_open) diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm index d8acd97975..883da04cf6 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -65,7 +65,7 @@ var/list/holopads = list() holopads -= src return ..() -/obj/machinery/holo_pad/power_change() +/obj/machinery/holopad/power_change() if (powered()) stat &= ~NOPOWER else @@ -126,7 +126,7 @@ var/list/holopads = list() for(var/mob/living/silicon/ai/AI in living_mob_list) if(!AI.client) continue - AI << "Your presence is requested at \the [area]." + to_chat(AI, "Your presence is requested at \the [area].") else temp = "A request for AI presence was already sent recently.
" temp += "Main Menu" @@ -180,12 +180,12 @@ var/list/holopads = list() /obj/machinery/holopad/proc/activate_holo(mob/living/silicon/ai/user) if(!(stat & NOPOWER) && user.eyeobj.loc == src.loc)//If the projector has power and client eye is on it if (istype(user.current, /obj/machinery/holopad)) - user << "ERROR: \black Image feed in progress." + to_chat(user, "ERROR: \black Image feed in progress.") return create_holo(user)//Create one. src.visible_message("A holographic image of [user] flicks to life right before your eyes!") else - user << "ERROR: \black Unable to project hologram." + to_chat(user, "ERROR: \black Unable to project hologram.") /*This is the proc for special two-way communication between AI and holopad/people talking near holopad. For the other part of the code, check silicon say.dm. Particularly robot talk.*/ @@ -202,13 +202,13 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/ h.layer = FLY_LAYER//Above all the other objects/mobs. Or the vast majority of them. h.anchored = 1//So space wind cannot drag it. h.name = "[A.name] (Hologram)"//If someone decides to right click. - h.SetLuminosity(2) //hologram lighting + h.set_light(2) //hologram lighting set_holo(A, h) return TRUE /obj/machinery/holopad/proc/set_holo(mob/living/silicon/ai/A, var/obj/effect/overlay/holo_pad_hologram/h) masters[A] = h - SetLuminosity(2) // pad lighting + set_light(2) // pad lighting icon_state = "holopad1" A.current = src use_power += HOLOGRAM_POWER_USAGE @@ -225,7 +225,7 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/ masters -= user // Discard AI from the list of those who use holopad use_power = max(HOLOPAD_PASSIVE_POWER_USAGE, use_power - HOLOGRAM_POWER_USAGE)//Reduce power usage if (!masters.len) // If no users left - SetLuminosity(0) // pad lighting (hologram lighting will be handled automatically since its owner was deleted) + set_light(0) // pad lighting (hologram lighting will be handled automatically since its owner was deleted) icon_state = "holopad0" use_power = HOLOPAD_PASSIVE_POWER_USAGE return TRUE diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index 1df559b749..eb3ee75e31 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -3,6 +3,7 @@ icon = 'icons/obj/iv_drip.dmi' icon_state = "iv_drip" anchored = 0 + mouse_drag_pointer = MOUSE_ACTIVE_POINTER var/mob/living/carbon/attached = null var/mode = 1 // 1 is injecting, 0 is taking blood. var/obj/item/weapon/reagent_containers/beaker = null @@ -55,7 +56,7 @@ add_overlay(filling) /obj/machinery/iv_drip/MouseDrop(mob/living/target) - if(!ishuman(usr) || !usr.canUseTopic(src,BE_CLOSE)) + if(!ishuman(usr) || !usr.canUseTopic(src,BE_CLOSE) || !isliving(target)) return if(attached) @@ -65,7 +66,7 @@ return if(!target.has_dna()) - usr << "The drip beeps: Warning, incompatible creature!" + to_chat(usr, "The drip beeps: Warning, incompatible creature!") return if(Adjacent(target) && usr.Adjacent(target)) @@ -75,20 +76,20 @@ START_PROCESSING(SSmachine, src) update_icon() else - usr << "There's nothing attached to the IV drip!" + to_chat(usr, "There's nothing attached to the IV drip!") /obj/machinery/iv_drip/attackby(obj/item/weapon/W, mob/user, params) if (istype(W, /obj/item/weapon/reagent_containers)) if(!isnull(beaker)) - user << "There is already a reagent container loaded!" + to_chat(user, "There is already a reagent container loaded!") return if(!user.drop_item()) return W.loc = src beaker = W - user << "You attach \the [W] to \the [src]." + to_chat(user, "You attach \the [W] to \the [src].") update_icon() return else @@ -104,7 +105,7 @@ return PROCESS_KILL if(!(get_dist(src, attached) <= 1 && isturf(attached.loc))) - attached << "The IV drip needle is ripped out of you!" + to_chat(attached, "The IV drip needle is ripped out of you!") attached.apply_damage(3, BRUTE, pick("r_arm", "l_arm")) attached = null update_icon() @@ -158,7 +159,7 @@ set src in view(1) if(!isliving(usr)) - usr << "You can't do that!" + to_chat(usr, "You can't do that!") return if(usr.stat) @@ -175,14 +176,14 @@ set src in view(1) if(!isliving(usr)) - usr << "You can't do that!" + to_chat(usr, "You can't do that!") return if(usr.stat) return mode = !mode - usr << "The IV drip is now [mode ? "injecting" : "taking blood"]." + to_chat(usr, "The IV drip is now [mode ? "injecting" : "taking blood"].") update_icon() /obj/machinery/iv_drip/examine() @@ -190,14 +191,14 @@ ..() if (!(usr in view(2)) && usr!=loc) return - usr << "The IV drip is [mode ? "injecting" : "taking blood"]." + to_chat(usr, "The IV drip is [mode ? "injecting" : "taking blood"].") if(beaker) if(beaker.reagents && beaker.reagents.reagent_list.len) - usr << "Attached is \a [beaker] with [beaker.reagents.total_volume] units of liquid." + to_chat(usr, "Attached is \a [beaker] with [beaker.reagents.total_volume] units of liquid.") else - usr << "Attached is an empty [beaker]." + to_chat(usr, "Attached is an empty [beaker].") else - usr << "No chemicals are attached." + to_chat(usr, "No chemicals are attached.") - usr << "[attached ? attached : "No one"] is attached." + to_chat(usr, "[attached ? attached : "No one"] is attached.") diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm index c650991346..88b6badee2 100644 --- a/code/game/machinery/lightswitch.dm +++ b/code/game/machinery/lightswitch.dm @@ -11,21 +11,18 @@ var/otherarea = null // luminosity = 1 -/obj/machinery/light_switch/New() +/obj/machinery/light_switch/Initialize() ..() - spawn(5) - src.area = src.loc.loc + area = get_area(src) - if(otherarea) - src.area = locate(text2path("/area/[otherarea]")) - - if(!name) - name = "light switch ([area.name])" - - src.on = src.area.lightswitch - updateicon() + if(otherarea) + area = locate(text2path("/area/[otherarea]")) + if(!name) + name = "light switch ([area.name])" + on = area.lightswitch + updateicon() /obj/machinery/light_switch/proc/updateicon() if(stat & NOPOWER) @@ -38,7 +35,7 @@ /obj/machinery/light_switch/examine(mob/user) ..() - user << "It is [on? "on" : "off"]." + to_chat(user, "It is [on? "on" : "off"].") /obj/machinery/light_switch/attack_paw(mob/user) @@ -71,4 +68,4 @@ /obj/machinery/light_switch/emp_act(severity) if(!(stat & (BROKEN|NOPOWER))) power_change() - ..() \ No newline at end of file + ..() diff --git a/code/game/machinery/limbgrower.dm b/code/game/machinery/limbgrower.dm index f5927cfb21..bdca0cd16c 100644 --- a/code/game/machinery/limbgrower.dm +++ b/code/game/machinery/limbgrower.dm @@ -75,7 +75,7 @@ /obj/machinery/limbgrower/attackby(obj/item/O, mob/user, params) if (busy) - user << "The Limb Grower is busy. Please wait for completion of previous operation." + to_chat(user, "The Limb Grower is busy. Please wait for completion of previous operation.") return if(default_deconstruction_screwdriver(user, "limbgrower_panelopen", "limbgrower_idleoff", O)) @@ -124,7 +124,7 @@ addtimer(CALLBACK(src, .proc/build_item),32*prod_coeff) else - usr << "The limb grower is busy. Please wait for completion of previous operation." + to_chat(usr, "The limb grower is busy. Please wait for completion of previous operation.") updateUsrDialog() return @@ -238,5 +238,5 @@ for(var/datum/design/D in files.possible_designs) if((D.build_type & LIMBGROWER) && ("special" in D.category)) files.AddDesign2Known(D) - user << "A warning flashes onto the screen, stating that safety overrides have been deactivated" + to_chat(user, "A warning flashes onto the screen, stating that safety overrides have been deactivated") emag = TRUE diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index 117a4e9e8e..b69d728617 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -124,7 +124,7 @@ Class Procs: var/interact_offline = 0 // Can the machine be interacted with while de-powered. var/speed_process = 0 // Process as fast as possible? -/obj/machinery/New() +/obj/machinery/Initialize() if (!armor) armor = list(melee = 25, bullet = 10, laser = 10, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 70) ..() @@ -213,9 +213,12 @@ Class Procs: //////////////////////////////////////////////////////////////////////////////////////////// -/obj/machinery/interact(mob/user) +/obj/machinery/interact(mob/user, special_state) add_fingerprint(user) - ui_interact(user) + if(special_state) + ui_interact(user, state = special_state) + else + ui_interact(user) /obj/machinery/ui_status(mob/user) if(is_interactable()) @@ -266,7 +269,7 @@ Class Procs: if((user.lying || user.stat) && !IsAdminGhost(user)) return 1 if(!user.IsAdvancedToolUser() && !IsAdminGhost(user)) - usr << "You don't have the dexterity to do this!" + to_chat(usr, "You don't have the dexterity to do this!") return 1 if(!is_interactable()) return 1 @@ -340,11 +343,11 @@ Class Procs: if(!panel_open) panel_open = 1 icon_state = icon_state_open - user << "You open the maintenance hatch of [src]." + to_chat(user, "You open the maintenance hatch of [src].") else panel_open = 0 icon_state = icon_state_closed - user << "You close the maintenance hatch of [src]." + to_chat(user, "You close the maintenance hatch of [src].") return 1 return 0 @@ -352,13 +355,13 @@ Class Procs: if(panel_open && istype(W)) playsound(loc, W.usesound, 50, 1) setDir(turn(dir,-90)) - user << "You rotate [src]." + to_chat(user, "You rotate [src].") return 1 return 0 /obj/proc/can_be_unfasten_wrench(mob/user, silent) //if we can unwrench this object; returns SUCCESSFUL_UNFASTEN and FAILED_UNFASTEN, which are both TRUE, or CANT_UNFASTEN, which isn't. if(!isfloorturf(loc) && !anchored) - user << "[src] needs to be on the floor to be secured!" + to_chat(user, "[src] needs to be on the floor to be secured!") return FAILED_UNFASTEN return SUCCESSFUL_UNFASTEN @@ -368,12 +371,12 @@ Class Procs: if(!can_be_unfasten || can_be_unfasten == FAILED_UNFASTEN) return can_be_unfasten if(time) - user << "You begin [anchored ? "un" : ""]securing [src]..." + to_chat(user, "You begin [anchored ? "un" : ""]securing [src]...") playsound(loc, W.usesound, 50, 1) var/prev_anchored = anchored //as long as we're the same anchored state and we're either on a floor or are anchored, toggle our anchored state if(!time || do_after(user, time*W.toolspeed, target = src, extra_checks = CALLBACK(src, .proc/unfasten_wrench_check, prev_anchored, user))) - user << "You [anchored ? "un" : ""]secure [src]." + to_chat(user, "You [anchored ? "un" : ""]secure [src].") anchored = !anchored playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) return SUCCESSFUL_UNFASTEN @@ -412,7 +415,7 @@ Class Procs: component_parts -= A component_parts += B B.loc = null - user << "[A.name] replaced with [B.name]." + to_chat(user, "[A.name] replaced with [B.name].") shouldplaysound = 1 //Only play the sound when parts are actually replaced! break RefreshParts() @@ -424,25 +427,25 @@ Class Procs: return 0 /obj/machinery/proc/display_parts(mob/user) - user << "Following parts detected in the machine:" + to_chat(user, "Following parts detected in the machine:") for(var/obj/item/C in component_parts) - user << "\icon[C] [C.name]" + to_chat(user, "\icon[C] [C.name]") /obj/machinery/examine(mob/user) ..() if(stat & BROKEN) - user << "It looks broken and non functional." + to_chat(user, "It looks broken and non functional.") if(!(resistance_flags & INDESTRUCTIBLE)) if(resistance_flags & ON_FIRE) - user << "It's on fire!" + to_chat(user, "It's on fire!") var/healthpercent = (obj_integrity/max_integrity) * 100 switch(healthpercent) if(50 to 99) - user << "It looks slightly damaged." + to_chat(user, "It looks slightly damaged.") if(25 to 50) - user << "It appears heavily damaged." + to_chat(user, "It appears heavily damaged.") if(0 to 25) - user << "It's falling apart!" + to_chat(user, "It's falling apart!") if(user.research_scanner && component_parts) display_parts(user) diff --git a/code/game/machinery/navbeacon.dm b/code/game/machinery/navbeacon.dm index a921aa64d4..6c9f3e8523 100644 --- a/code/game/machinery/navbeacon.dm +++ b/code/game/machinery/navbeacon.dm @@ -94,12 +94,12 @@ if(open) if (src.allowed(user)) src.locked = !src.locked - user << "Controls are now [src.locked ? "locked" : "unlocked"]." + to_chat(user, "Controls are now [src.locked ? "locked" : "unlocked"].") else - user << "Access denied." + to_chat(user, "Access denied.") updateDialog() else - user << "You must open the cover first!" + to_chat(user, "You must open the cover first!") else return ..() @@ -118,7 +118,7 @@ return // prevent intraction when T-scanner revealed if(!open && !ai) // can't alter controls if not open, unless you're an AI - user << "The beacon's control cover is closed!" + to_chat(user, "The beacon's control cover is closed!") return diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index e579d48bba..1fbbfbb41b 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -192,7 +192,6 @@ var/list/obj/machinery/newscaster/allCasters = list() var/c_locked=0 var/datum/newscaster/feed_channel/viewing_channel = null var/allow_comments = 1 - luminosity = 0 anchored = 1 /obj/machinery/newscaster/security_unit @@ -715,17 +714,17 @@ var/list/obj/machinery/newscaster/allCasters = list() /obj/machinery/newscaster/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/weapon/wrench)) - user << "You start [anchored ? "un" : ""]securing [name]..." + to_chat(user, "You start [anchored ? "un" : ""]securing [name]...") playsound(loc, I.usesound, 50, 1) if(do_after(user, 60*I.toolspeed, target = src)) playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) if(stat & BROKEN) - user << "The broken remains of [src] fall on the ground." + to_chat(user, "The broken remains of [src] fall on the ground.") new /obj/item/stack/sheet/metal(loc, 5) new /obj/item/weapon/shard(loc) new /obj/item/weapon/shard(loc) else - user << "You [anchored ? "un" : ""]secure [name]." + to_chat(user, "You [anchored ? "un" : ""]secure [name].") new /obj/item/wallframe/newscaster(loc) qdel(src) else if(istype(I, /obj/item/weapon/weldingtool) && user.a_intent != INTENT_HARM) @@ -739,13 +738,13 @@ var/list/obj/machinery/newscaster/allCasters = list() if(do_after(user,40*WT.toolspeed, 1, target = src)) if(!WT.isOn() || !(stat & BROKEN)) return - user << "You repair [src]." + to_chat(user, "You repair [src].") playsound(loc, 'sound/items/Welder2.ogg', 50, 1) obj_integrity = max_integrity stat &= ~BROKEN update_icon() else - user << "[src] does not need repairs." + to_chat(user, "[src] does not need repairs.") else return ..() @@ -776,7 +775,7 @@ var/list/obj/machinery/newscaster/allCasters = list() /obj/machinery/newscaster/attack_paw(mob/user) if(user.a_intent != INTENT_HARM) - user << "The newscaster controls are far too complicated for your tiny brain!" + to_chat(user, "The newscaster controls are far too complicated for your tiny brain!") else take_damage(5, BRUTE, "melee") @@ -809,9 +808,9 @@ var/list/obj/machinery/newscaster/allCasters = list() else targetcam = R.aicamera else - user << "You cannot interface with silicon photo uploading!" + to_chat(user, "You cannot interface with silicon photo uploading!") if(targetcam.aipictures.len == 0) - usr << "No images saved" + to_chat(usr, "No images saved") return for(var/datum/picture/t in targetcam.aipictures) nametemp += t.fields["name"] @@ -988,7 +987,7 @@ var/list/obj/machinery/newscaster/allCasters = list() human_user << browse(dat, "window=newspaper_main;size=300x400") onclose(human_user, "newspaper_main") else - user << "The paper is full of unintelligible symbols!" + to_chat(user, "The paper is full of unintelligible symbols!") /obj/item/weapon/newspaper/proc/notContent(list/L) if(!L.len) @@ -1035,7 +1034,7 @@ var/list/obj/machinery/newscaster/allCasters = list() /obj/item/weapon/newspaper/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/pen)) if(scribble_page == curr_page) - user << "There's already a scribble in this page... You wouldn't want to make things too cluttered, would you?" + to_chat(user, "There's already a scribble in this page... You wouldn't want to make things too cluttered, would you?") else var/s = stripped_input(user, "Write something", "Newspaper") if (!s) diff --git a/code/game/machinery/overview.dm b/code/game/machinery/overview.dm index 708d6c8368..9dfb77ab66 100644 --- a/code/game/machinery/overview.dm +++ b/code/game/machinery/overview.dm @@ -31,7 +31,7 @@ imap += icon('icons/misc/imap.dmi', "blank") imap += icon('icons/misc/imap.dmi', "blank") - //world << "[icount] images in list" + //to_chat(world, "[icount] images in list") for(var/wx = 1 ; wx <= world.maxx; wx++) @@ -141,12 +141,12 @@ var/rx = ((wx*2+xoff)%32) + 1 var/ry = ((wy*2+yoff)%32) + 1 - //world << "trying [ix],[iy] : [ix+icx*iy]" + //to_chat(world, "trying [ix],[iy] : [ix+icx*iy]") var/icon/I = imap[1+(ix + icx*iy)*2] var/icon/I2 = imap[2+(ix + icx*iy)*2] - //world << "icon: \icon[I]" + //to_chat(world, "icon: \icon[I]") I.DrawBox(colour, rx, ry, rx+1, ry+1) @@ -163,7 +163,7 @@ H.screen_loc = "[5 + i%icx],[6+ round(i/icx)]" - //world<<"\icon[I] at [H.screen_loc]" + //to_chat(world, "\icon[I] at [H.screen_loc]") H.name = (i==0)?"maprefresh":"map" @@ -270,11 +270,11 @@ var/rx = ((wx*2+xoff)%32) + 1 var/ry = ((wy*2+yoff)%32) + 1 - //world << "trying [ix],[iy] : [ix+icx*iy]" + //to_chat(world, "trying [ix],[iy] : [ix+icx*iy]") var/icon/I = imap[1+(ix + icx*iy)] - //world << "icon: \icon[I]" + //to_chat(world, "icon: \icon[I]") I.DrawBox(colour, rx, ry, rx, ry) @@ -289,7 +289,7 @@ H.screen_loc = "[5 + i%icx],[6+ round(i/icx)]" - //world<<"\icon[I] at [H.screen_loc]" + //to_chat(world, "\icon[I] at [H.screen_loc]") H.name = (i==0)?"maprefresh":"map" diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm index c6e6c36d5c..ff6836dfae 100644 --- a/code/game/machinery/pipe/construction.dm +++ b/code/game/machinery/pipe/construction.dm @@ -48,7 +48,7 @@ Buildable meters /obj/item/pipe/examine(mob/user) ..() - user << "Alt-click to rotate it clockwise." + to_chat(user, "Alt-click to rotate it clockwise.") /obj/item/pipe/New(loc, pipe_type, dir, obj/machinery/atmospherics/make_from) ..() @@ -173,7 +173,7 @@ var/global/list/pipeID2State = list( /obj/item/pipe/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return @@ -220,7 +220,7 @@ var/global/list/pipeID2State = list( if(M == A) //we don't want to check to see if it interferes with itself continue if(M.GetInitDirections() & A.GetInitDirections()) // matches at least one direction on either type of pipe - user << "There is already a pipe at that location!" + to_chat(user, "There is already a pipe at that location!") qdel(A) return 1 // no conflicts found @@ -268,9 +268,9 @@ var/global/list/pipeID2State = list( if (!istype(W, /obj/item/weapon/wrench)) return ..() if(!locate(/obj/machinery/atmospherics/pipe, src.loc)) - user << "You need to fasten it to a pipe!" + to_chat(user, "You need to fasten it to a pipe!") return 1 new/obj/machinery/meter( src.loc ) playsound(src.loc, W.usesound, 50, 1) - user << "You fasten the meter to the pipe." + to_chat(user, "You fasten the meter to the pipe.") qdel(src) diff --git a/code/game/machinery/pipe/pipe_dispenser.dm b/code/game/machinery/pipe/pipe_dispenser.dm index b5ce5e5687..39e27e531a 100644 --- a/code/game/machinery/pipe/pipe_dispenser.dm +++ b/code/game/machinery/pipe/pipe_dispenser.dm @@ -72,7 +72,7 @@ /obj/machinery/pipedispenser/attackby(obj/item/W, mob/user, params) add_fingerprint(user) if (istype(W, /obj/item/pipe) || istype(W, /obj/item/pipe_meter)) - usr << "You put [W] back into [src]." + to_chat(usr, "You put [W] back into [src].") if(!user.drop_item()) return qdel(W) @@ -80,7 +80,7 @@ else if (istype(W, /obj/item/weapon/wrench)) if (!anchored && !isinspace()) playsound(src.loc, W.usesound, 50, 1) - user << "You begin to fasten \the [src] to the floor..." + to_chat(user, "You begin to fasten \the [src] to the floor...") if (do_after(user, 40*W.toolspeed, target = src)) add_fingerprint(user) user.visible_message( \ @@ -93,7 +93,7 @@ usr << browse(null, "window=pipedispenser") else if(anchored) playsound(src.loc, W.usesound, 50, 1) - user << "You begin to unfasten \the [src] from the floor..." + to_chat(user, "You begin to unfasten \the [src] from the floor...") if (do_after(user, 20*W.toolspeed, target = src)) add_fingerprint(user) user.visible_message( \ @@ -170,7 +170,7 @@ Nah var/obj/structure/disposalconstruct/C = new (src.loc,p_type) if(!C.can_place()) - usr << "There's not enough room to build that here!" + to_chat(usr, "There's not enough room to build that here!") qdel(C) return diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index d5ff4ced4d..53e3d43dd3 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -189,7 +189,7 @@ if(anchored) //you can't turn a turret on/off if it's not anchored/secured on = !on //toggle on/off else - usr << "It has to be secured first!" + to_chat(usr, "It has to be secured first!") interact(usr) return @@ -229,18 +229,18 @@ if(istype(I, /obj/item/weapon/crowbar)) //If the turret is destroyed, you can remove it with a crowbar to //try and salvage its components - user << "You begin prying the metal coverings off..." + to_chat(user, "You begin prying the metal coverings off...") if(do_after(user, 20*I.toolspeed, target = src)) if(prob(70)) if(stored_gun) stored_gun.forceMove(loc) - user << "You remove the turret and salvage some components." + to_chat(user, "You remove the turret and salvage some components.") if(prob(50)) new /obj/item/stack/sheet/metal(loc, rand(1,4)) if(prob(50)) new /obj/item/device/assembly/prox_sensor(loc) else - user << "You remove the turret but did not manage to salvage anything." + to_chat(user, "You remove the turret but did not manage to salvage anything.") qdel(src) else if((istype(I, /obj/item/weapon/wrench)) && (!on)) @@ -252,13 +252,13 @@ anchored = 1 invisibility = INVISIBILITY_MAXIMUM update_icon() - user << "You secure the exterior bolts on the turret." + to_chat(user, "You secure the exterior bolts on the turret.") if(has_cover) cover = new /obj/machinery/porta_turret_cover(loc) //create a new turret. While this is handled in process(), this is to workaround a bug where the turret becomes invisible for a split second cover.parent_turret = src //make the cover's parent src else if(anchored) anchored = 0 - user << "You unsecure the exterior bolts on the turret." + to_chat(user, "You unsecure the exterior bolts on the turret.") update_icon() invisibility = 0 qdel(cover) //deletes the cover, and the turret instance itself becomes its own cover. @@ -267,19 +267,19 @@ //Behavior lock/unlock mangement if(allowed(user)) locked = !locked - user << "Controls are now [locked ? "locked" : "unlocked"]." + to_chat(user, "Controls are now [locked ? "locked" : "unlocked"].") else - user << "Access denied." + to_chat(user, "Access denied.") else if(istype(I,/obj/item/device/multitool) && !locked) var/obj/item/device/multitool/M = I M.buffer = src - user << "You add [src] to multitool buffer." + to_chat(user, "You add [src] to multitool buffer.") else return ..() /obj/machinery/porta_turret/emag_act(mob/user) if(!emagged) - user << "You short out [src]'s threat assessment circuits." + to_chat(user, "You short out [src]'s threat assessment circuits.") visible_message("[src] hums oddly...") emagged = 1 controllock = 1 @@ -592,6 +592,30 @@ cover.name = name cover.desc = desc +/obj/machinery/porta_turret/centcomm_shuttle + installation = null + obj_integrity = 260 + max_integrity = 260 + always_up = 1 + use_power = 0 + has_cover = 0 + scan_range = 9 + stun_projectile = /obj/item/projectile/beam/laser + lethal_projectile = /obj/item/projectile/beam/laser + lethal_projectile_sound = 'sound/weapons/plasma_cutter.ogg' + stun_projectile_sound = 'sound/weapons/plasma_cutter.ogg' + icon_state = "syndie_off" + base_icon_state = "syndie" + faction = "turret" + emp_vunerable = 0 + mode = TURRET_LETHAL + +/obj/machinery/porta_turret/centcomm_shuttle/assess_perp(mob/living/carbon/human/perp) + return 0 + +/obj/machinery/porta_turret/centcomm_shuttle/setup() + return + //////////////////////// //Turret Control Panel// //////////////////////// @@ -650,7 +674,7 @@ var/obj/item/device/multitool/M = I if(M.buffer && istype(M.buffer,/obj/machinery/porta_turret)) turrets |= M.buffer - user << "You link \the [M.buffer] with \the [src]" + to_chat(user, "You link \the [M.buffer] with \the [src]") return if (issilicon(user)) @@ -659,11 +683,11 @@ if ( get_dist(src, user) == 0 ) // trying to unlock the interface if (allowed(usr)) if(emagged) - user << "The turret control is unresponsive." + to_chat(user, "The turret control is unresponsive.") return locked = !locked - user << "You [ locked ? "lock" : "unlock"] the panel." + to_chat(user, "You [ locked ? "lock" : "unlock"] the panel.") if (locked) if (user.machine==src) user.unset_machine() @@ -672,11 +696,11 @@ if (user.machine==src) src.attack_hand(user) else - user << "Access denied." + to_chat(user, "Access denied.") /obj/machinery/turretid/emag_act(mob/user) if(!emagged) - user << "You short out the turret controls' access analysis module." + to_chat(user, "You short out the turret controls' access analysis module.") emagged = 1 locked = 0 if(user && user.machine == src) @@ -686,12 +710,12 @@ if(!ailock || IsAdminGhost(user)) return attack_hand(user) else - user << "There seems to be a firewall preventing you from accessing this device." + to_chat(user, "There seems to be a firewall preventing you from accessing this device.") /obj/machinery/turretid/attack_hand(mob/user as mob) if ( get_dist(src, user) > 0 ) if ( !(issilicon(user) || IsAdminGhost(user)) ) - user << "You are too far away." + to_chat(user, "You are too far away.") user.unset_machine() user << browse(null, "window=turretid") return @@ -718,7 +742,7 @@ return if (locked) if(!(issilicon(usr) || IsAdminGhost(usr))) - usr << "Control panel is locked!" + to_chat(usr, "Control panel is locked!") return if (href_list["toggleOn"]) toggle_on() diff --git a/code/game/machinery/porta_turret/portable_turret_construct.dm b/code/game/machinery/porta_turret/portable_turret_construct.dm index 963a8eb087..cc79fc70d9 100644 --- a/code/game/machinery/porta_turret/portable_turret_construct.dm +++ b/code/game/machinery/porta_turret/portable_turret_construct.dm @@ -23,14 +23,14 @@ if(PTURRET_UNSECURED) //first step if(istype(I, /obj/item/weapon/wrench) && !anchored) playsound(loc, I.usesound, 100, 1) - user << "You secure the external bolts." + to_chat(user, "You secure the external bolts.") anchored = 1 build_step = PTURRET_BOLTED return else if(istype(I, /obj/item/weapon/crowbar) && !anchored) playsound(loc, I.usesound, 75, 1) - user << "You dismantle the turret construction." + to_chat(user, "You dismantle the turret construction.") new /obj/item/stack/sheet/metal( loc, 5) qdel(src) return @@ -39,16 +39,16 @@ if(istype(I, /obj/item/stack/sheet/metal)) var/obj/item/stack/sheet/metal/M = I if(M.use(2)) - user << "You add some metal armor to the interior frame." + to_chat(user, "You add some metal armor to the interior frame.") build_step = PTURRET_START_INTERNAL_ARMOUR icon_state = "turret_frame2" else - user << "You need two sheets of metal to continue construction!" + to_chat(user, "You need two sheets of metal to continue construction!") return else if(istype(I, /obj/item/weapon/wrench)) playsound(loc, I.usesound, 75, 1) - user << "You unfasten the external bolts." + to_chat(user, "You unfasten the external bolts.") anchored = 0 build_step = PTURRET_UNSECURED return @@ -57,7 +57,7 @@ if(PTURRET_START_INTERNAL_ARMOUR) if(istype(I, /obj/item/weapon/wrench)) playsound(loc, I.usesound, 100, 1) - user << "You bolt the metal armor into place." + to_chat(user, "You bolt the metal armor into place.") build_step = PTURRET_INTERNAL_ARMOUR_ON return @@ -66,16 +66,16 @@ if(!WT.isOn()) return if(WT.get_fuel() < 5) //uses up 5 fuel. - user << "You need more fuel to complete this task!" + to_chat(user, "You need more fuel to complete this task!") return playsound(loc, WT.usesound, 50, 1) - user << "You start to remove the turret's interior metal armor..." + to_chat(user, "You start to remove the turret's interior metal armor...") if(do_after(user, 20*I.toolspeed, target = src)) if(!WT.isOn() || !WT.remove_fuel(5, user)) return build_step = PTURRET_BOLTED - user << "You remove the turret's interior metal armor." + to_chat(user, "You remove the turret's interior metal armor.") new /obj/item/stack/sheet/metal( loc, 2) return @@ -87,13 +87,13 @@ return E.forceMove(src) installed_gun = E - user << "You add [I] to the turret." + to_chat(user, "You add [I] to the turret.") build_step = PTURRET_GUN_EQUIPPED return else if(istype(I, /obj/item/weapon/wrench)) playsound(loc, I.usesound, 100, 1) - user << "You remove the turret's metal armor bolts." + to_chat(user, "You remove the turret's metal armor bolts.") build_step = PTURRET_START_INTERNAL_ARMOUR return @@ -102,7 +102,7 @@ build_step = PTURRET_SENSORS_ON if(!user.drop_item()) return - user << "You add the proximity sensor to the turret." + to_chat(user, "You add the proximity sensor to the turret.") qdel(I) return @@ -111,7 +111,7 @@ if(istype(I, /obj/item/weapon/screwdriver)) playsound(loc, I.usesound, 100, 1) build_step = PTURRET_CLOSED - user << "You close the internal access hatch." + to_chat(user, "You close the internal access hatch.") return @@ -119,16 +119,16 @@ if(istype(I, /obj/item/stack/sheet/metal)) var/obj/item/stack/sheet/metal/M = I if(M.use(2)) - user << "You add some metal armor to the exterior frame." + to_chat(user, "You add some metal armor to the exterior frame.") build_step = PTURRET_START_EXTERNAL_ARMOUR else - user << "You need two sheets of metal to continue construction!" + to_chat(user, "You need two sheets of metal to continue construction!") return else if(istype(I, /obj/item/weapon/screwdriver)) playsound(loc, I.usesound, 100, 1) build_step = PTURRET_SENSORS_ON - user << "You open the internal access hatch." + to_chat(user, "You open the internal access hatch.") return if(PTURRET_START_EXTERNAL_ARMOUR) @@ -137,15 +137,15 @@ if(!WT.isOn()) return if(WT.get_fuel() < 5) - user << "You need more fuel to complete this task!" + to_chat(user, "You need more fuel to complete this task!") playsound(loc, WT.usesound, 50, 1) - user << "You begin to weld the turret's armor down..." + to_chat(user, "You begin to weld the turret's armor down...") if(do_after(user, 30*I.toolspeed, target = src)) if(!WT.isOn() || !WT.remove_fuel(5, user)) return build_step = PTURRET_EXTERNAL_ARMOUR_ON - user << "You weld the turret's armor down." + to_chat(user, "You weld the turret's armor down.") //The final step: create a full turret @@ -162,7 +162,7 @@ else if(istype(I, /obj/item/weapon/crowbar)) playsound(loc, I.usesound, 75, 1) - user << "You pry off the turret's exterior armor." + to_chat(user, "You pry off the turret's exterior armor.") new /obj/item/stack/sheet/metal(loc, 2) build_step = PTURRET_CLOSED return @@ -185,11 +185,11 @@ build_step = PTURRET_INTERNAL_ARMOUR_ON installed_gun.forceMove(loc) - user << "You remove [installed_gun] from the turret frame." + to_chat(user, "You remove [installed_gun] from the turret frame.") installed_gun = null if(PTURRET_SENSORS_ON) - user << "You remove the prox sensor from the turret frame." + to_chat(user, "You remove the prox sensor from the turret frame.") new /obj/item/device/assembly/prox_sensor(loc) build_step = PTURRET_GUN_EQUIPPED diff --git a/code/game/machinery/porta_turret/portable_turret_cover.dm b/code/game/machinery/porta_turret/portable_turret_cover.dm index 32a3018fd5..a9620083e0 100644 --- a/code/game/machinery/porta_turret/portable_turret_cover.dm +++ b/code/game/machinery/porta_turret/portable_turret_cover.dm @@ -48,12 +48,12 @@ if(!parent_turret.anchored) parent_turret.anchored = 1 - user << "You secure the exterior bolts on the turret." + to_chat(user, "You secure the exterior bolts on the turret.") parent_turret.invisibility = 0 parent_turret.update_icon() else parent_turret.anchored = 0 - user << "You unsecure the exterior bolts on the turret." + to_chat(user, "You unsecure the exterior bolts on the turret.") parent_turret.invisibility = INVISIBILITY_MAXIMUM parent_turret.update_icon() qdel(src) @@ -61,14 +61,14 @@ else if(I.GetID()) if(parent_turret.allowed(user)) parent_turret.locked = !parent_turret.locked - user << "Controls are now [parent_turret.locked ? "locked" : "unlocked"]." + to_chat(user, "Controls are now [parent_turret.locked ? "locked" : "unlocked"].") updateUsrDialog() else - user << "Access denied." + to_chat(user, "Access denied.") else if(istype(I,/obj/item/device/multitool) && !parent_turret.locked) var/obj/item/device/multitool/M = I M.buffer = parent_turret - user << "You add [parent_turret] to multitool buffer." + to_chat(user, "You add [parent_turret] to multitool buffer.") else return ..() @@ -89,7 +89,7 @@ /obj/machinery/porta_turret_cover/emag_act(mob/user) if(!parent_turret.emagged) - user << "You short out [parent_turret]'s threat assessment circuits." + to_chat(user, "You short out [parent_turret]'s threat assessment circuits.") visible_message("[parent_turret] hums oddly...") parent_turret.emagged = 1 parent_turret.on = 0 diff --git a/code/game/machinery/quantum_pad.dm b/code/game/machinery/quantum_pad.dm index 29d69f31c9..8390888e5b 100644 --- a/code/game/machinery/quantum_pad.dm +++ b/code/game/machinery/quantum_pad.dm @@ -52,13 +52,13 @@ if(istype(I, /obj/item/device/multitool)) var/obj/item/device/multitool/M = I M.buffer = src - user << "You save the data in the [I.name]'s buffer." + to_chat(user, "You save the data in the [I.name]'s buffer.") return 1 else if(istype(I, /obj/item/device/multitool)) var/obj/item/device/multitool/M = I if(istype(M.buffer, /obj/machinery/quantumpad)) linked_pad = M.buffer - user << "You link the [src] to the one in the [I.name]'s buffer." + to_chat(user, "You link the [src] to the one in the [I.name]'s buffer.") return 1 if(exchange_parts(user, I)) @@ -71,27 +71,27 @@ /obj/machinery/quantumpad/attack_hand(mob/user) if(panel_open) - user << "The panel must be closed before operating this machine!" + to_chat(user, "The panel must be closed before operating this machine!") return if(!linked_pad || QDELETED(linked_pad)) - user << "There is no linked pad!" + to_chat(user, "There is no linked pad!") return if(world.time < last_teleport + teleport_cooldown) - user << "[src] is recharging power. Please wait [round((last_teleport + teleport_cooldown - world.time) / 10)] seconds." + to_chat(user, "[src] is recharging power. Please wait [round((last_teleport + teleport_cooldown - world.time) / 10)] seconds.") return if(teleporting) - user << "[src] is charging up. Please wait." + to_chat(user, "[src] is charging up. Please wait.") return if(linked_pad.teleporting) - user << "Linked pad is busy. Please wait." + to_chat(user, "Linked pad is busy. Please wait.") return if(linked_pad.stat & NOPOWER) - user << "Linked pad is not responding to ping." + to_chat(user, "Linked pad is not responding to ping.") return src.add_fingerprint(user) doteleport(user) @@ -116,11 +116,11 @@ teleporting = 0 return if(stat & NOPOWER) - user << "[src] is unpowered!" + to_chat(user, "[src] is unpowered!") teleporting = 0 return if(!linked_pad || QDELETED(linked_pad) || linked_pad.stat & NOPOWER) - user << "Linked pad is not responding to ping. Teleport aborted." + to_chat(user, "Linked pad is not responding to ping. Teleport aborted.") teleporting = 0 return diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index 8dec02b9cb..ca398539a0 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -29,11 +29,11 @@ /obj/machinery/recharger/attackby(obj/item/weapon/G, mob/user, params) if(istype(G, /obj/item/weapon/wrench)) if(charging) - user << "Remove the charging item first!" + to_chat(user, "Remove the charging item first!") return anchored = !anchored power_change() - user << "You [anchored ? "attached" : "detached"] [src]." + to_chat(user, "You [anchored ? "attached" : "detached"] [src].") playsound(loc, G.usesound, 75, 1) return @@ -47,13 +47,13 @@ //Checks to make sure he's not in space doing it, and that the area got proper power. var/area/a = get_area(src) if(!isarea(a) || a.power_equip == 0) - user << "[src] blinks red as you try to insert [G]." + to_chat(user, "[src] blinks red as you try to insert [G].") return 1 if (istype(G, /obj/item/weapon/gun/energy)) var/obj/item/weapon/gun/energy/E = G if(!E.can_charge) - user << "Your gun has no external power connector." + to_chat(user, "Your gun has no external power connector.") return 1 if(!user.drop_item()) @@ -63,7 +63,7 @@ use_power = 2 update_icon() else - user << "[src] isn't connected to anything!" + to_chat(user, "[src] isn't connected to anything!") return 1 if(anchored && !charging) diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index e39fdb1826..8a8514e457 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -46,9 +46,9 @@ var/const/SAFETY_COOLDOWN = 100 /obj/machinery/recycler/examine(mob/user) ..() - user << "The power light is [(stat & NOPOWER) ? "off" : "on"]." - user << "The safety-mode light is [safety_mode ? "on" : "off"]." - user << "The safety-sensors status light is [emagged ? "off" : "on"]." + to_chat(user, "The power light is [(stat & NOPOWER) ? "off" : "on"].") + to_chat(user, "The safety-mode light is [safety_mode ? "on" : "off"].") + to_chat(user, "The safety-sensors status light is [emagged ? "off" : "on"].") /obj/machinery/recycler/power_change() ..() @@ -79,7 +79,7 @@ var/const/SAFETY_COOLDOWN = 100 safety_mode = FALSE update_icon() playsound(src.loc, "sparks", 75, 1, -1) - user << "You use the cryptographic sequencer on the [src.name]." + to_chat(user, "You use the cryptographic sequencer on the [src.name].") /obj/machinery/recycler/update_icon() ..() diff --git a/code/game/machinery/requests_console.dm b/code/game/machinery/requests_console.dm index f61e9e07c6..6f014a52b7 100644 --- a/code/game/machinery/requests_console.dm +++ b/code/game/machinery/requests_console.dm @@ -56,7 +56,7 @@ var/list/obj/machinery/requests_console/allConsoles = list() var/priority = -1 ; //Priority of the message being sent var/obj/item/device/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 - luminosity = 0 + var/receive_ore_updates = FALSE //If ore redemption machines will send an update when it receives new ores. obj_integrity = 300 max_integrity = 300 armor = list(melee = 70, bullet = 30, laser = 30, energy = 30, bomb = 0, bio = 0, rad = 0, fire = 90, acid = 90) @@ -67,9 +67,9 @@ var/list/obj/machinery/requests_console/allConsoles = list() /obj/machinery/requests_console/update_icon() if(stat & NOPOWER) - SetLuminosity(0) + set_light(0) else - SetLuminosity(2) + set_light(1.4,0.7,"#34D352")//green light if(open) if(!hackState) icon_state="req_comp_open" @@ -88,10 +88,10 @@ var/list/obj/machinery/requests_console/allConsoles = list() else icon_state = "req_comp0" -/obj/machinery/requests_console/New() +/obj/machinery/requests_console/Initialize() + ..() name = "\improper [department] requests console" allConsoles += src - //req_console_departments += department switch(departmentType) if(1) if(!("[department]" in req_console_assistance)) @@ -128,6 +128,11 @@ var/list/obj/machinery/requests_console/allConsoles = list() Radio = new /obj/item/device/radio(src) Radio.listening = 0 +/obj/machinery/requests_console/Destroy() + QDEL_NULL(Radio) + allConsoles -= src + return ..() + /obj/machinery/requests_console/attack_hand(mob/user) if(..()) return @@ -192,6 +197,7 @@ var/list/obj/machinery/requests_console/allConsoles = list() if (Console.department == department) Console.newmessagepriority = 0 Console.update_icon() + newmessagepriority = 0 update_icon() var/messageComposite = "" @@ -482,10 +488,10 @@ var/list/obj/machinery/requests_console/allConsoles = list() /obj/machinery/requests_console/attackby(obj/item/weapon/O, mob/user, params) if(istype(O, /obj/item/weapon/crowbar)) if(open) - user << "You close the maintenance panel." + to_chat(user, "You close the maintenance panel.") open = 0 else - user << "You open the maintenance panel." + to_chat(user, "You open the maintenance panel.") open = 1 update_icon() return @@ -493,12 +499,12 @@ var/list/obj/machinery/requests_console/allConsoles = list() if(open) hackState = !hackState if(hackState) - user << "You modify the wiring." + to_chat(user, "You modify the wiring.") else - user << "You reset the wiring." + to_chat(user, "You reset the wiring.") update_icon() else - user << "You must open the maintenance panel first!" + to_chat(user, "You must open the maintenance panel first!") return var/obj/item/weapon/card/id/ID = O.GetID() @@ -511,7 +517,7 @@ var/list/obj/machinery/requests_console/allConsoles = list() announceAuth = 1 else announceAuth = 0 - user << "You are not authorized to send announcements!" + to_chat(user, "You are not authorized to send announcements!") updateUsrDialog() return if (istype(O, /obj/item/weapon/stamp)) diff --git a/code/game/machinery/robot_fabricator.dm b/code/game/machinery/robot_fabricator.dm index 1c43a6fb36..d30c3e03be 100644 --- a/code/game/machinery/robot_fabricator.dm +++ b/code/game/machinery/robot_fabricator.dm @@ -28,11 +28,11 @@ if (O:amount < 1) qdel(O) - user << "You insert [count] metal sheet\s into \the [src]." + to_chat(user, "You insert [count] metal sheet\s into \the [src].") cut_overlay("fab-load-metal") updateDialog() else - user << "\The [src] is full." + to_chat(user, "\The [src] is full.") else return ..() diff --git a/code/game/machinery/shieldgen.dm b/code/game/machinery/shieldgen.dm index da264f1c64..562328810b 100644 --- a/code/game/machinery/shieldgen.dm +++ b/code/game/machinery/shieldgen.dm @@ -17,7 +17,6 @@ air_update_turf(1) /obj/structure/emergency_shield/Destroy() - opacity = 0 density = 0 air_update_turf(1) return ..() @@ -48,9 +47,9 @@ /obj/structure/emergency_shield/take_damage(damage, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir) . = ..() if(.) //damage was dealt - opacity = 1 + set_opacity(1) spawn(20) - opacity = 0 + set_opacity(0) /obj/structure/emergency_shield/sanguine name = "sanguine barrier" @@ -135,10 +134,10 @@ /obj/machinery/shieldgen/attack_hand(mob/user) if(locked) - user << "The machine is locked, you are unable to use it!" + to_chat(user, "The machine is locked, you are unable to use it!") return if(panel_open) - user << "The panel must be closed before operating this machine!" + to_chat(user, "The panel must be closed before operating this machine!") return if (active) @@ -153,7 +152,7 @@ "You hear heavy droning.") shields_up() else - user << "The device must first be secured to the floor!" + to_chat(user, "The device must first be secured to the floor!") return /obj/machinery/shieldgen/attackby(obj/item/weapon/W, mob/user, params) @@ -161,46 +160,46 @@ playsound(src.loc, W.usesound, 100, 1) panel_open = !panel_open if(panel_open) - user << "You open the panel and expose the wiring." + to_chat(user, "You open the panel and expose the wiring.") else - user << "You close the panel." + to_chat(user, "You close the panel.") else if(istype(W, /obj/item/stack/cable_coil) && (stat & BROKEN) && panel_open) var/obj/item/stack/cable_coil/coil = W if (coil.get_amount() < 1) - user << "You need one length of cable to repair [src]!" + to_chat(user, "You need one length of cable to repair [src]!") return - user << "You begin to replace the wires..." + to_chat(user, "You begin to replace the wires...") if(do_after(user, 30, target = src)) if(coil.get_amount() < 1) return coil.use(1) obj_integrity = max_integrity stat &= ~BROKEN - user << "You repair \the [src]." + to_chat(user, "You repair \the [src].") update_icon() else if(istype(W, /obj/item/weapon/wrench)) if(locked) - user << "The bolts are covered! Unlocking this would retract the covers." + to_chat(user, "The bolts are covered! Unlocking this would retract the covers.") return if(!anchored && !isinspace()) playsound(src.loc, W.usesound, 100, 1) - user << "You secure \the [src] to the floor!" + to_chat(user, "You secure \the [src] to the floor!") anchored = 1 else if(anchored) playsound(src.loc, W.usesound, 100, 1) - user << "You unsecure \the [src] from the floor!" + to_chat(user, "You unsecure \the [src] from the floor!") if(active) - user << "\The [src] shuts off!" + to_chat(user, "\The [src] shuts off!") shields_down() anchored = 0 else if(W.GetID()) if(allowed(user)) locked = !locked - user << "You [locked ? "lock" : "unlock"] the controls." + to_chat(user, "You [locked ? "lock" : "unlock"] the controls.") else - user << "Access denied." + to_chat(user, "Access denied.") else return ..() @@ -276,13 +275,13 @@ /obj/machinery/shieldwallgen/attack_hand(mob/user) if(!anchored) - user << "\The [src] needs to be firmly secured to the floor first!" + to_chat(user, "\The [src] needs to be firmly secured to the floor first!") return 1 if(locked && !issilicon(user)) - user << "The controls are locked!" + to_chat(user, "The controls are locked!") return 1 if(power != 1) - user << "\The [src] needs to be powered by wire underneath!" + to_chat(user, "\The [src] needs to be powered by wire underneath!") return 1 if(active >= 1) @@ -376,27 +375,27 @@ /obj/machinery/shieldwallgen/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/weapon/wrench)) if(active) - user << "Turn off the field generator first!" + to_chat(user, "Turn off the field generator first!") return else if(!anchored && !isinspace()) //Can't fasten this thing in space playsound(src.loc, W.usesound, 75, 1) - user << "You secure the external reinforcing bolts to the floor." + to_chat(user, "You secure the external reinforcing bolts to the floor.") anchored = 1 return else //You can unfasten it tough, if you somehow manage to fasten it. playsound(src.loc, W.usesound, 75, 1) - user << "You undo the external reinforcing bolts." + to_chat(user, "You undo the external reinforcing bolts.") anchored = 0 return if(W.GetID()) if (allowed(user)) locked = !locked - user << "You [src.locked ? "lock" : "unlock"] the controls." + to_chat(user, "You [src.locked ? "lock" : "unlock"] the controls.") else - user << "Access denied." + to_chat(user, "Access denied.") else add_fingerprint(user) @@ -438,7 +437,7 @@ anchored = 1 density = 1 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - luminosity = 3 + light_range = 3 var/needs_power = 0 var/active = 1 var/delay = 5 diff --git a/code/game/machinery/slotmachine.dm b/code/game/machinery/slotmachine.dm index a204918d41..95afbfeb0c 100644 --- a/code/game/machinery/slotmachine.dm +++ b/code/game/machinery/slotmachine.dm @@ -31,6 +31,8 @@ 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. + light_color = LIGHT_COLOR_BROWN + /obj/machinery/computer/slot_machine/New() ..() jackpots = rand(1, 4) //false hope @@ -88,12 +90,12 @@ C.throw_at(user, 3, 10) if(prob(10)) balance = max(balance - SPIN_PRICE, 0) - user << "[src] spits your coin back out!" + to_chat(user, "[src] spits your coin back out!") else if(!user.drop_item()) return - user << "You insert a [C.cmineral] coin into [src]'s slot!" + to_chat(user, "You insert a [C.cmineral] coin into [src]'s slot!") balance += C.value qdel(C) else @@ -204,14 +206,14 @@ /obj/machinery/computer/slot_machine/proc/can_spin(mob/user) if(stat & NOPOWER) - user << "The slot machine has no power!" + to_chat(user, "The slot machine has no power!") if(stat & BROKEN) - user << "The slot machine is broken!" + to_chat(user, "The slot machine is broken!") if(working) - user << "You need to wait until the machine stops spinning before you can play again!" + to_chat(user, "You need to wait until the machine stops spinning before you can play again!") return 0 if(balance < SPIN_PRICE) - user << "Insufficient money to play!" + to_chat(user, "Insufficient money to play!") return 0 return 1 @@ -252,12 +254,12 @@ give_money(SMALL_PRIZE) else if(linelength == 3) - user << "You win three free games!" + to_chat(user, "You win three free games!") balance += SPIN_PRICE * 4 money = max(money - SPIN_PRICE * 4, money) else - user << "No luck!" + to_chat(user, "No luck!") /obj/machinery/computer/slot_machine/proc/get_lines() var/amountthesame diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index a49c6174e7..0f29c50de5 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -55,11 +55,11 @@ /obj/machinery/space_heater/examine(mob/user) ..() - user << "\The [src] is [on ? "on" : "off"], and the hatch is [panel_open ? "open" : "closed"]." + to_chat(user, "\The [src] is [on ? "on" : "off"], and the hatch is [panel_open ? "open" : "closed"].") if(cell) - user << "The charge meter reads [cell ? round(cell.percent(), 1) : 0]%." + to_chat(user, "The charge meter reads [cell ? round(cell.percent(), 1) : 0]%.") else - user << "There is no power cell installed." + to_chat(user, "There is no power cell installed.") /obj/machinery/space_heater/update_icon() if(on) @@ -146,7 +146,7 @@ if(istype(I, /obj/item/weapon/stock_parts/cell)) if(panel_open) if(cell) - user << "There is already a power cell inside!" + to_chat(user, "There is already a power cell inside!") return else // insert cell @@ -161,7 +161,7 @@ user.visible_message("\The [user] inserts a power cell into \the [src].", "You insert the power cell into \the [src].") SStgui.update_uis(src) else - user << "The hatch must be open to insert a power cell!" + to_chat(user, "The hatch must be open to insert a power cell!") return else if(istype(I, /obj/item/weapon/screwdriver)) panel_open = !panel_open diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm index 2239949ca3..60104fbc86 100644 --- a/code/game/machinery/status_display.dm +++ b/code/game/machinery/status_display.dm @@ -45,6 +45,7 @@ // register for radio system /obj/machinery/status_display/Initialize() + ..() SSradio.add_object(src, frequency) /obj/machinery/status_display/Destroy() @@ -122,9 +123,9 @@ . = ..() switch(mode) if(1,2,4,5) - user << "The display says:
\t[message1]
\t[message2]" + to_chat(user, "The display says:
\t[message1]
\t[message2]") if(mode == 1 && SSshuttle.emergency) - user << "Current Shuttle: [SSshuttle.emergency.name]" + to_chat(user, "Current Shuttle: [SSshuttle.emergency.name]") /obj/machinery/status_display/proc/set_message(m1, m2) diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index fc123fee0f..1ddd5bd53d 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -181,13 +181,13 @@ return var/mob/living/target = A if(!state_open) - user << "The unit's doors are shut!" + to_chat(user, "The unit's doors are shut!") return if(!is_operational()) - user << "The unit is not operational!" + to_chat(user, "The unit is not operational!") return if(occupant || helmet || suit || storage) - user << "It's too cluttered inside to fit in!" + to_chat(user, "It's too cluttered inside to fit in!") return if(target == user) @@ -278,28 +278,28 @@ if(state_open && is_operational()) if(istype(I, /obj/item/clothing/suit/space)) if(suit) - user << "The unit already contains a suit!." + to_chat(user, "The unit already contains a suit!.") return if(!user.drop_item()) return suit = I else if(istype(I, /obj/item/clothing/head/helmet)) if(helmet) - user << "The unit already contains a helmet!" + to_chat(user, "The unit already contains a helmet!") return if(!user.drop_item()) return helmet = I else if(istype(I, /obj/item/clothing/mask)) if(mask) - user << "The unit already contains a mask!" + to_chat(user, "The unit already contains a mask!") return if(!user.drop_item()) return mask = I else if(storage) - user << "The auxiliary storage compartment is full!" + to_chat(user, "The auxiliary storage compartment is full!") return if(!user.drop_item()) return @@ -369,7 +369,7 @@ return else if(occupant) - occupant << "[src]'s confines grow warm, then hot, then scorching. You're being burned [!occupant.stat ? "alive" : "away"]!" + to_chat(occupant, "[src]'s confines grow warm, then hot, then scorching. You're being burned [!occupant.stat ? "alive" : "away"]!") cook() . = TRUE if("dispense") diff --git a/code/game/machinery/syndicatebeacon.dm b/code/game/machinery/syndicatebeacon.dm index 99b44016ad..291e514a36 100644 --- a/code/game/machinery/syndicatebeacon.dm +++ b/code/game/machinery/syndicatebeacon.dm @@ -20,7 +20,7 @@ /obj/machinery/power/singularity_beacon/proc/Activate(mob/user = null) if(surplus() < 1500) - if(user) user << "The connected wire doesn't have enough current." + if(user) to_chat(user, "The connected wire doesn't have enough current.") return for(var/obj/singularity/singulo in singularities) if(singulo.z == z) @@ -28,7 +28,7 @@ icon_state = "[icontype]1" active = 1 if(user) - user << "You activate the beacon." + to_chat(user, "You activate the beacon.") /obj/machinery/power/singularity_beacon/proc/Deactivate(mob/user = null) @@ -38,7 +38,7 @@ icon_state = "[icontype]0" active = 0 if(user) - user << "You deactivate the beacon." + to_chat(user, "You deactivate the beacon.") /obj/machinery/power/singularity_beacon/attack_ai(mob/user) @@ -49,27 +49,27 @@ if(anchored) return active ? Deactivate(user) : Activate(user) else - user << "You need to screw the beacon to the floor first!" + to_chat(user, "You need to screw the beacon to the floor first!") return /obj/machinery/power/singularity_beacon/attackby(obj/item/weapon/W, mob/user, params) if(istype(W,/obj/item/weapon/screwdriver)) if(active) - user << "You need to deactivate the beacon first!" + to_chat(user, "You need to deactivate the beacon first!") return if(anchored) anchored = 0 - user << "You unscrew the beacon from the floor." + to_chat(user, "You unscrew the beacon from the floor.") disconnect_from_network() return else if(!connect_to_network()) - user << "This device must be placed over an exposed, powered cable node!" + to_chat(user, "This device must be placed over an exposed, powered cable node!") return anchored = 1 - user << "You screw the beacon to the floor and attach the cable." + to_chat(user, "You screw the beacon to the floor and attach the cable.") return else return ..() @@ -113,7 +113,7 @@ /obj/item/device/sbeacondrop/attack_self(mob/user) if(user) - user << "Locked In." + to_chat(user, "Locked In.") new droptype( user.loc ) playsound(src, 'sound/effects/pop.ogg', 100, 1, 1) qdel(src) @@ -127,4 +127,4 @@ /obj/item/device/sbeacondrop/powersink desc = "A label on it reads: Warning: Activating this device will send a power draining device to your location." droptype = /obj/item/device/powersink - origin_tech = "bluespace=4;syndicate=5" \ No newline at end of file + origin_tech = "bluespace=4;syndicate=5" diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index 803ee10603..6f7e7ec902 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -1,4 +1,5 @@ -#define BUTTON_COOLDOWN 30 +#define BUTTON_COOLDOWN 60 // cant delay the bomb forever +#define BUTTON_DELAY 50 //five seconds /obj/machinery/syndicatebomb icon = 'icons/obj/assemblies.dmi' @@ -100,7 +101,7 @@ /obj/machinery/syndicatebomb/examine(mob/user) ..() - user << "A digital display on it reads \"[seconds_remaining()]\"." + to_chat(user, "A digital display on it reads \"[seconds_remaining()]\".") /obj/machinery/syndicatebomb/update_icon() icon_state = "[initial(icon_state)][active ? "-active" : "-inactive"][open_panel ? "-wires" : ""]" @@ -115,25 +116,25 @@ if(istype(I, /obj/item/weapon/wrench) && can_unanchor) if(!anchored) if(!isturf(loc) || isspaceturf(loc)) - user << "The bomb must be placed on solid ground to attach it." + to_chat(user, "The bomb must be placed on solid ground to attach it.") else - user << "You firmly wrench the bomb to the floor." + to_chat(user, "You firmly wrench the bomb to the floor.") playsound(loc, I.usesound, 50, 1) anchored = 1 if(active) - user << "The bolts lock in place." + to_chat(user, "The bolts lock in place.") else if(!active) - user << "You wrench the bomb from the floor." + to_chat(user, "You wrench the bomb from the floor.") playsound(loc, I.usesound, 50, 1) anchored = 0 else - user << "The bolts are locked down!" + to_chat(user, "The bolts are locked down!") else if(istype(I, /obj/item/weapon/screwdriver)) open_panel = !open_panel update_icon() - user << "You [open_panel ? "open" : "close"] the wire panel." + to_chat(user, "You [open_panel ? "open" : "close"] the wire panel.") else if(is_wire_tool(I) && open_panel) wires.interact(user) @@ -141,24 +142,24 @@ else if(istype(I, /obj/item/weapon/crowbar)) if(open_panel && wires.is_all_cut()) if(payload) - user << "You carefully pry out [payload]." + to_chat(user, "You carefully pry out [payload].") payload.loc = user.loc payload = null else - user << "There isn't anything in here to remove!" + to_chat(user, "There isn't anything in here to remove!") else if (open_panel) - user << "The wires connecting the shell to the explosives are holding it down!" + to_chat(user, "The wires connecting the shell to the explosives are holding it down!") else - user << "The cover is screwed on, it won't pry off!" + to_chat(user, "The cover is screwed on, it won't pry off!") else if(istype(I, /obj/item/weapon/bombcore)) if(!payload) if(!user.drop_item()) return payload = I - user << "You place [payload] into [src]." + to_chat(user, "You place [payload] into [src].") payload.loc = src else - user << "[payload] is already loaded into [src]! You'll have to remove it first." + to_chat(user, "[payload] is already loaded into [src]! You'll have to remove it first.") else if(istype(I, /obj/item/weapon/weldingtool)) if(payload || !wires.is_all_cut() || !open_panel) return @@ -166,22 +167,22 @@ if(!WT.isOn()) return if(WT.get_fuel() < 5) //uses up 5 fuel. - user << "You need more fuel to complete this task!" + to_chat(user, "You need more fuel to complete this task!") return playsound(loc, WT.usesound, 50, 1) - user << "You start to cut the [src] apart..." + to_chat(user, "You start to cut the [src] apart...") if(do_after(user, 20*I.toolspeed, target = src)) if(!WT.isOn() || !WT.remove_fuel(5, user)) return - user << "You cut the [src] apart." + to_chat(user, "You cut the [src] apart.") new /obj/item/stack/sheet/plasteel( loc, 5) qdel(src) else var/old_integ = obj_integrity . = ..() if((old_integ > obj_integrity) && active && !defused && (payload in src)) - user << "That seems like a really bad idea..." + to_chat(user, "That seems like a really bad idea...") /obj/machinery/syndicatebomb/attack_hand(mob/user) interact(user) @@ -195,7 +196,7 @@ if(!active) settings(user) else if(anchored) - user << "The bomb is bolted to the floor!" + to_chat(user, "The bomb is bolted to the floor!") /obj/machinery/syndicatebomb/proc/activate() active = TRUE @@ -248,9 +249,6 @@ payload = /obj/item/weapon/bombcore/badmin/summon/clown beepsound = 'sound/items/bikehorn.ogg' -/obj/machinery/syndicatebomb/badmin/varplosion - payload = /obj/item/weapon/bombcore/badmin/explosion - /obj/machinery/syndicatebomb/empty name = "bomb" icon_state = "base-bomb" @@ -263,6 +261,12 @@ ..() wires.cut_all() +/obj/machinery/syndicatebomb/self_destruct + name = "self destruct device" + desc = "Do not taunt. Warranty invalid if exposed to high temperature. Not suitable for agents under 3 years of age." + payload = /obj/item/weapon/bombcore/large + can_unanchor = FALSE + ///Bomb Cores/// /obj/item/weapon/bombcore @@ -275,6 +279,10 @@ origin_tech = "syndicate=5;combat=6" resistance_flags = FLAMMABLE //Burnable (but the casing isn't) var/adminlog = null + var/range_heavy = 3 + var/range_medium = 9 + var/range_light = 17 + var/range_flame = 17 /obj/item/weapon/bombcore/ex_act(severity, target) // Little boom can chain a big boom. detonate() @@ -288,7 +296,7 @@ if(adminlog) message_admins(adminlog) log_game(adminlog) - explosion(get_turf(src), 3, 9, 17, flame_range = 17) + explosion(get_turf(src), range_heavy, range_medium, range_light, flame_range = range_flame) if(loc && istype(loc,/obj/machinery/syndicatebomb/)) qdel(loc) qdel(src) @@ -366,26 +374,23 @@ playsound(src.loc, 'sound/misc/sadtrombone.ogg', 50) ..() -/obj/item/weapon/bombcore/badmin/explosion - var/HeavyExplosion = 5 - var/MediumExplosion = 10 - var/LightExplosion = 20 - var/Flames = 20 +/obj/item/weapon/bombcore/large + name = "large bomb payload" + range_heavy = 5 + range_medium = 10 + range_light = 20 + range_flame = 20 -/obj/item/weapon/bombcore/badmin/explosion/detonate() - explosion(get_turf(src), HeavyExplosion, MediumExplosion, LightExplosion, flame_range = Flames) - qdel(src) +/obj/item/weapon/bombcore/large/underwall + layer = ABOVE_OPEN_TURF_LAYER /obj/item/weapon/bombcore/miniature name = "small bomb core" w_class = WEIGHT_CLASS_SMALL - -/obj/item/weapon/bombcore/miniature/detonate() - if(adminlog) - message_admins(adminlog) - log_game(adminlog) - explosion(src.loc, 1, 2, 4, flame_range = 2) //Identical to a minibomb - qdel(src) + range_heavy = 1 + range_medium = 2 + range_light = 4 + range_flame = 2 /obj/item/weapon/bombcore/chemical name = "chemical payload" @@ -462,10 +467,10 @@ if(!user.drop_item()) return beakers += I - user << "You load [src] with [I]." + to_chat(user, "You load [src] with [I].") I.loc = src else - user << "The [I] wont fit! The [src] can only hold up to [max_beakers] containers." + to_chat(user, "The [I] wont fit! The [src] can only hold up to [max_beakers] containers.") return ..() @@ -516,7 +521,7 @@ /obj/item/device/syndicatedetonator name = "big red button" - desc = "Nothing good can come of pressing a button this garish..." + desc = "Your standard issue bomb synchronizing button. Five second safety delay to prevent 'accidents'" icon = 'icons/obj/assemblies.dmi' icon_state = "bigred" item_state = "electronic" @@ -530,11 +535,11 @@ if(timer < world.time) for(var/obj/machinery/syndicatebomb/B in machines) if(B.active) - B.explode_now = TRUE + B.detonation_timer = world.time + BUTTON_DELAY detonated++ existant++ playsound(user, 'sound/machines/click.ogg', 20, 1) - user << "[existant] found, [detonated] triggered." + to_chat(user, "[existant] found, [detonated] triggered.") if(detonated) var/turf/T = get_turf(src) var/area/A = get_area(T) @@ -550,3 +555,4 @@ #undef BUTTON_COOLDOWN +#undef BUTTON_DELAY diff --git a/code/game/machinery/telecomms/computers/logbrowser.dm b/code/game/machinery/telecomms/computers/logbrowser.dm index c18e11c398..ab71f51c57 100644 --- a/code/game/machinery/telecomms/computers/logbrowser.dm +++ b/code/game/machinery/telecomms/computers/logbrowser.dm @@ -187,7 +187,7 @@ if(href_list["delete"]) if(!src.allowed(usr) && !emagged) - usr << "ACCESS DENIED." + to_chat(usr, "ACCESS DENIED.") return if(SelectedServer) diff --git a/code/game/machinery/teleporter.dm b/code/game/machinery/teleporter.dm index d618b4167e..55d9fac2ed 100644 --- a/code/game/machinery/teleporter.dm +++ b/code/game/machinery/teleporter.dm @@ -12,6 +12,8 @@ var/turf/target //Used for one-time-use teleport cards (such as clown planet coordinates.) //Setting this to 1 will set src.locked to null after a player enters the portal and will not allow hand-teles to open portals to that location. + light_color = LIGHT_COLOR_BLUE + /obj/machinery/computer/teleporter/New() src.id = "[rand(1000, 9999)]" ..() @@ -40,10 +42,10 @@ var/obj/item/device/gps/L = I if(L.locked_location && !(stat & (NOPOWER|BROKEN))) if(!user.transferItemToLoc(L, src)) - user << "\the [I] is stuck to your hand, you cannot put it in \the [src]!" + to_chat(user, "\the [I] is stuck to your hand, you cannot put it in \the [src]!") return locked = L - user << "You insert the GPS device into the [name]'s slot." + to_chat(user, "You insert the GPS device into the [name]'s slot.") else return ..() @@ -192,7 +194,7 @@ else var/list/S = power_station.linked_stations if(!S.len) - user << "No connected stations located." + to_chat(user, "No connected stations located.") return for(var/obj/machinery/teleport/station/R in S) var/turf/T = get_turf(R) @@ -272,7 +274,7 @@ /obj/machinery/teleport/hub/Bumped(M as mob|obj) if(z == ZLEVEL_CENTCOM) - M << "You can't use this here." + to_chat(M, "You can't use this here.") if(is_ready()) teleport(M) use_power(5000) @@ -303,7 +305,7 @@ if(ishuman(M))//don't remove people from the round randomly you jerks var/mob/living/carbon/human/human = M if(human.dna && human.dna.species.id == "human") - M << "You hear a buzzing in your ears." + to_chat(M, "You hear a buzzing in your ears.") human.set_species(/datum/species/fly) human.apply_effect((rand(120 - accurate * 40, 180 - accurate * 60)), IRRADIATE, 0) @@ -398,15 +400,15 @@ var/obj/item/device/multitool/M = W if(panel_open) M.buffer = src - user << "You download the data to the [W.name]'s buffer." + to_chat(user, "You download the data to the [W.name]'s buffer.") else if(M.buffer && istype(M.buffer, /obj/machinery/teleport/station) && M.buffer != src) if(linked_stations.len < efficiency) linked_stations.Add(M.buffer) M.buffer = null - user << "You upload the data from the [W.name]'s buffer." + to_chat(user, "You upload the data from the [W.name]'s buffer.") else - user << "This station can't hold more information, try to use better parts." + to_chat(user, "This station can't hold more information, try to use better parts.") return else if(default_deconstruction_screwdriver(user, "controller-o", "controller", W)) update_icon() @@ -421,7 +423,7 @@ else if(istype(W, /obj/item/weapon/wirecutters)) if(panel_open) link_console_and_hub() - user << "You reconnect the station to nearby machinery." + to_chat(user, "You reconnect the station to nearby machinery.") return else return ..() diff --git a/code/game/machinery/transformer.dm b/code/game/machinery/transformer.dm index c9fe4ef726..cd4cd2185c 100644 --- a/code/game/machinery/transformer.dm +++ b/code/game/machinery/transformer.dm @@ -27,7 +27,7 @@ . = ..() if(cooldown && (issilicon(user) || isobserver(user))) var/seconds_remaining = (cooldown_timer - world.time) / 10 - user << "It will be ready in [max(0, seconds_remaining)] seconds." + to_chat(user, "It will be ready in [max(0, seconds_remaining)] seconds.") /obj/machinery/transformer/Destroy() if(countdown) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index ad2bafa980..b9482ddd11 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -96,7 +96,7 @@ position = (position == names_paths.len) ? 1 : (position + 1) var/typepath = names_paths[position] - user << "You set the board to \"[names_paths[typepath]]\"." + to_chat(user, "You set the board to \"[names_paths[typepath]]\".") set_type(typepath) else return ..() @@ -231,9 +231,9 @@ return W.loc = src food_load(W) - user << "You insert [W] into [src]'s chef compartment." + to_chat(user, "You insert [W] into [src]'s chef compartment.") else - user << "[src]'s chef compartment does not accept junk food." + to_chat(user, "[src]'s chef compartment does not accept junk food.") else if(istype(W, /obj/item/weapon/storage/bag/tray)) if(!compartment_access_check(user)) @@ -251,9 +251,9 @@ else denied_items++ if(denied_items) - user << "[src] refuses some items." + to_chat(user, "[src] refuses some items.") if(loaded) - user << "You insert [loaded] dishes into [src]'s chef compartment." + to_chat(user, "You insert [loaded] dishes into [src]'s chef compartment.") updateUsrDialog() return @@ -263,7 +263,7 @@ /obj/machinery/vending/snack/proc/compartment_access_check(user) req_access_txt = chef_compartment_access if(!allowed(user) && !emagged && scan_id) - user << "[src]'s chef compartment blinks red: Access denied." + to_chat(user, "[src]'s chef compartment blinks red: Access denied.") req_access_txt = "0" return 0 req_access_txt = "0" @@ -271,7 +271,7 @@ /obj/machinery/vending/snack/proc/iscompartmentfull(mob/user) if(contents.len >= 30) // no more than 30 dishes can fit inside - user << "[src]'s chef compartment is full." + to_chat(user, "[src]'s chef compartment is full.") return 1 return 0 @@ -294,14 +294,14 @@ if(istype(W, /obj/item/weapon/screwdriver)) if(anchored) panel_open = !panel_open - user << "You [panel_open ? "open" : "close"] the maintenance panel." + to_chat(user, "You [panel_open ? "open" : "close"] the maintenance panel.") cut_overlays() if(panel_open) add_overlay(image(icon, "[initial(icon_state)]-panel")) playsound(src.loc, W.usesound, 50, 1) updateUsrDialog() else - user << "You must first secure [src]." + to_chat(user, "You must first secure [src].") return else if(istype(W, /obj/item/device/multitool)||istype(W, /obj/item/weapon/wirecutters)) if(panel_open) @@ -312,27 +312,27 @@ return W.loc = src coin = W - user << "You insert [W] into [src]." + to_chat(user, "You insert [W] into [src].") return else if(istype(W, refill_canister) && refill_canister != null) if(stat & (BROKEN|NOPOWER)) - user << "It does nothing." + to_chat(user, "It does nothing.") else if(panel_open) //if the panel is open we attempt to refill the machine var/obj/item/weapon/vending_refill/canister = W if(canister.charges[STANDARD_CHARGE] == 0) - user << "This [canister.name] is empty!" + to_chat(user, "This [canister.name] is empty!") else var/transfered = refill_inventory(canister,product_records,STANDARD_CHARGE) transfered += refill_inventory(canister,coin_records,COIN_CHARGE) transfered += refill_inventory(canister,hidden_records,CONTRABAND_CHARGE) if(transfered) - user << "You loaded [transfered] items in \the [name]." + to_chat(user, "You loaded [transfered] items in \the [name].") else - user << "The [name] is fully stocked." + to_chat(user, "The [name] is fully stocked.") return else - user << "You should probably unscrew the service panel first." + to_chat(user, "You should probably unscrew the service panel first.") else return ..() @@ -359,7 +359,7 @@ /obj/machinery/vending/emag_act(mob/user) if(!emagged) emagged = 1 - user << "You short out the product lock on [src]." + to_chat(user, "You short out the product lock on [src].") /obj/machinery/vending/attack_ai(mob/user) return attack_hand(user) @@ -430,21 +430,21 @@ if(iscyborg(usr)) var/mob/living/silicon/robot/R = usr if(!(R.module && istype(R.module,/obj/item/weapon/robot_module/butler) )) - usr << "The vending machine refuses to interface with you, as you are not in its target demographic!" + to_chat(usr, "The vending machine refuses to interface with you, as you are not in its target demographic!") return else - usr << "The vending machine refuses to interface with you, as you are not in its target demographic!" + to_chat(usr, "The vending machine refuses to interface with you, as you are not in its target demographic!") return if(href_list["remove_coin"]) if(!coin) - usr << "There is no coin in this machine." + to_chat(usr, "There is no coin in this machine.") return coin.loc = loc if(!usr.get_active_held_item()) usr.put_in_hands(coin) - usr << "You remove [coin] from [src]." + to_chat(usr, "You remove [coin] from [src].") coin = null @@ -468,11 +468,11 @@ if((href_list["vend"]) && (vend_ready)) if(panel_open) - usr << "The vending machine cannot dispense products while its service panel is open!" + to_chat(usr, "The vending machine cannot dispense products while its service panel is open!") return if((!allowed(usr)) && !emagged && scan_id) //For SECURE VENDING MACHINES YEAH - usr << "Access denied." //Unless emagged of course + to_chat(usr, "Access denied." ) flick(icon_deny,src) return @@ -489,20 +489,20 @@ return else if(R in coin_records) if(!coin) - usr << "You need to insert a coin to get this item!" + to_chat(usr, "You need to insert a coin to get this item!") vend_ready = 1 return if(coin.string_attached) if(prob(50)) if(usr.put_in_hands(coin)) - usr << "You successfully pull [coin] out before [src] could swallow it." + to_chat(usr, "You successfully pull [coin] out before [src] could swallow it.") coin = null else - usr << "You couldn't pull [coin] out because your hands are full!" + to_chat(usr, "You couldn't pull [coin] out because your hands are full!") qdel(coin) coin = null else - usr << "You weren't able to pull [coin] out fast enough, the machine ate it, string and all!" + to_chat(usr, "You weren't able to pull [coin] out fast enough, the machine ate it, string and all!") qdel(coin) coin = null else @@ -514,7 +514,7 @@ return if (R.amount <= 0) - usr << "Sold out." + to_chat(usr, "Sold out.") vend_ready = 1 return else @@ -673,7 +673,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C /obj/machinery/vending/assist products = list( /obj/item/device/assembly/prox_sensor = 5,/obj/item/device/assembly/igniter = 3,/obj/item/device/assembly/signaler = 4, /obj/item/weapon/wirecutters = 1, /obj/item/weapon/cartridge/signal = 4) - contraband = list(/obj/item/device/flashlight = 5,/obj/item/device/assembly/timer = 2, /obj/item/device/assembly/voice = 2, /obj/item/device/assembly/health = 2) + contraband = list(/obj/item/device/assembly/timer = 2, /obj/item/device/assembly/voice = 2, /obj/item/device/assembly/health = 2) 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 @@ -750,7 +750,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C /obj/item/weapon/reagent_containers/food/drinks/soda_cans/space_up = 10,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/pwr_game = 10, /obj/item/weapon/reagent_containers/food/drinks/soda_cans/lemon_lime = 10) contraband = list(/obj/item/weapon/reagent_containers/food/drinks/soda_cans/thirteenloko = 6,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/shamblers = 6) - premium = list(/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola = 1) + premium = list(/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola = 1,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/air = 1) refill_canister = /obj/item/weapon/vending_refill/cola /obj/machinery/vending/cola/random @@ -989,43 +989,14 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C /obj/item/clothing/suit/hooded/carp_costume = 1, /obj/item/clothing/suit/hooded/ian_costume = 1, /obj/item/clothing/suit/hooded/bee_costume = 1, - /obj/item/clothing/suit/snowman = 1,/obj/item/clothing/head/snowman = 1, + /obj/item/clothing/suit/snowman = 1, + /obj/item/clothing/head/snowman = 1, /obj/item/clothing/mask/joy = 1, /obj/item/clothing/head/cueball = 1, /obj/item/clothing/under/scratch = 1, - /obj/item/clothing/under/sailor=1, - /obj/item/clothing/shoes/megaboots=1,/obj/item/clothing/gloves/megagloves=1,/obj/item/clothing/head/helmet/megahelmet=1,/obj/item/clothing/under/mega=1, - /obj/item/clothing/shoes/protoboots=1,/obj/item/clothing/gloves/protogloves=1,/obj/item/clothing/head/helmet/protohelmet = 1,/obj/item/clothing/under/proto = 1, - /obj/item/clothing/shoes/megaxboots = 1,/obj/item/clothing/gloves/megaxgloves = 1,/obj/item/clothing/head/helmet/megaxhelmet = 1,/obj/item/clothing/under/megax = 1, - /obj/item/clothing/shoes/joeboots = 1,/obj/item/clothing/gloves/joegloves = 1,/obj/item/clothing/head/helmet/joehelmet = 1,/obj/item/clothing/under/joe = 1, - /obj/item/clothing/under/vault = 1, - /obj/item/clothing/under/roll = 1, - /obj/item/clothing/head/clownpiece = 1,/obj/item/clothing/under/clownpiece = 1,/obj/item/clothing/suit/clownpiece = 1 - ) - contraband = list(/obj/item/clothing/suit/judgerobe = 1,/obj/item/clothing/head/powdered_wig = 1, - /obj/item/weapon/gun/magic/wand = 2, - /obj/item/clothing/glasses/sunglasses/garb = 2, - /obj/item/clothing/gloves/anchor_arms = 1, - /obj/item/clothing/suit/kaminacape = 1, - /obj/item/clothing/under/soldieruniform = 1,/obj/item/clothing/head/stalhelm = 1,/obj/item/clothing/suit/soldiercoat = 1, - /obj/item/clothing/under/officeruniform = 1, - /obj/item/clothing/head/naziofficer = 1, - /obj/item/clothing/suit/officercoat = 1, - /obj/item/clothing/head/panzer = 1, - /obj/item/clothing/under/russobluecamooutfit = 1,/obj/item/clothing/head/russobluecamohat = 1, - /obj/item/clothing/suit/russofurcoat = 1,/obj/item/clothing/head/russofurhat = 1, - /obj/item/clothing/under/rottensuit = 1,/obj/item/clothing/shoes/rottenshoes = 1, - /obj/item/clothing/head/helmet/biker = 1,/obj/item/clothing/under/bikersuit = 1,/obj/item/clothing/gloves/bikergloves = 1, - /obj/item/clothing/under/jacketsuit = 1, - /obj/item/clothing/head/helmet/richard = 1, - /obj/item/clothing/under/vault13 = 1 - ) - premium = list(/obj/item/clothing/suit/pirate/captain = 2,/obj/item/clothing/head/pirate/captain = 2, - /obj/item/clothing/head/helmet/roman = 1,/obj/item/clothing/head/helmet/roman/legionaire = 1,/obj/item/clothing/under/roman = 1, - /obj/item/clothing/shoes/roman = 1, - /obj/item/weapon/shield/riot/roman = 1, - /obj/item/weapon/skub = 1 - ) + /obj/item/clothing/under/sailor = 1) + contraband = list(/obj/item/clothing/suit/judgerobe = 1,/obj/item/clothing/head/powdered_wig = 1,/obj/item/weapon/gun/magic/wand = 2,/obj/item/clothing/glasses/sunglasses/garb = 2, /obj/item/clothing/glasses/sunglasses/blindfold = 1, /obj/item/clothing/mask/muzzle = 2) + premium = list(/obj/item/clothing/suit/pirate/captain = 2, /obj/item/clothing/head/pirate/captain = 2, /obj/item/clothing/head/helmet/roman = 1, /obj/item/clothing/head/helmet/roman/legionaire = 1, /obj/item/clothing/under/roman = 1, /obj/item/clothing/shoes/roman = 1, /obj/item/weapon/shield/riot/roman = 1, /obj/item/weapon/skub = 1) refill_canister = /obj/item/weapon/vending_refill/autodrobe /obj/machinery/vending/dinnerware @@ -1054,10 +1025,23 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C icon_state = "tool" icon_deny = "tool-deny" //req_access_txt = "12" //Maintenance access - products = list(/obj/item/stack/cable_coil/random = 10,/obj/item/weapon/crowbar = 5,/obj/item/weapon/weldingtool = 3,/obj/item/weapon/wirecutters = 5, - /obj/item/weapon/wrench = 5,/obj/item/device/analyzer = 5,/obj/item/device/t_scanner = 5,/obj/item/weapon/screwdriver = 5) - contraband = list(/obj/item/weapon/weldingtool/hugetank = 2,/obj/item/clothing/gloves/color/fyellow = 2) - premium = list(/obj/item/clothing/gloves/color/yellow = 1) + products = list( + /obj/item/stack/cable_coil/random = 10, + /obj/item/weapon/crowbar = 5, + /obj/item/weapon/weldingtool = 3, + /obj/item/weapon/wirecutters = 5, + /obj/item/weapon/wrench = 5, + /obj/item/device/analyzer = 5, + /obj/item/device/t_scanner = 5, + /obj/item/weapon/screwdriver = 5, + /obj/item/device/flashlight/glowstick = 3, + /obj/item/device/flashlight/glowstick/red = 3, + /obj/item/device/flashlight = 5) + contraband = list( + /obj/item/weapon/weldingtool/hugetank = 2, + /obj/item/clothing/gloves/color/fyellow = 2) + premium = list( + /obj/item/clothing/gloves/color/yellow = 1) armor = list(melee = 100, bullet = 100, laser = 100, energy = 100, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 70) resistance_flags = FIRE_PROOF @@ -1111,127 +1095,34 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C product_slogans = "Dress for success!;Prepare to look swagalicious!;Look at all this free swag!;Why leave style up to fate? Use the ClothesMate!" vend_reply = "Thank you for using the ClothesMate!" products = list(/obj/item/clothing/head/that=2,/obj/item/clothing/head/fedora=1,/obj/item/clothing/glasses/monocle=1, - /obj/item/clothing/suit/jacket=2, /obj/item/clothing/suit/jacket/puffer/vest=2, /obj/item/clothing/suit/jacket/puffer=2, - /obj/item/clothing/under/suit_jacket/navy=1,/obj/item/clothing/under/suit_jacket/really_black=1,/obj/item/clothing/under/suit_jacket/burgundy=1, - /obj/item/clothing/under/suit_jacket/charcoal=1, /obj/item/clothing/under/suit_jacket/white=1,/obj/item/clothing/under/kilt=1,/obj/item/clothing/under/overalls=1, - /obj/item/clothing/under/sl_suit=1,/obj/item/clothing/under/pants/jeans=3,/obj/item/clothing/under/pants/classicjeans=2, - /obj/item/clothing/under/pants/camo = 1,/obj/item/clothing/under/pants/blackjeans=2,/obj/item/clothing/under/pants/khaki=2, - /obj/item/clothing/under/pants/white=2,/obj/item/clothing/under/pants/red=1,/obj/item/clothing/under/pants/black=2, - /obj/item/clothing/under/pants/tan=2,/obj/item/clothing/under/pants/track=1,/obj/item/clothing/suit/jacket/miljacket = 1, - /obj/item/clothing/neck/tie/blue=1, /obj/item/clothing/neck/tie/red=1, /obj/item/clothing/neck/tie/black=1, /obj/item/clothing/neck/tie/horrible=1, - /obj/item/clothing/neck/scarf/red=1,/obj/item/clothing/neck/scarf/green=1,/obj/item/clothing/neck/scarf/darkblue=1, - /obj/item/clothing/neck/scarf/purple=1,/obj/item/clothing/neck/scarf/yellow=1,/obj/item/clothing/neck/scarf/orange=1, - /obj/item/clothing/neck/scarf/cyan=1,/obj/item/clothing/neck/scarf=1,/obj/item/clothing/neck/scarf/black=1, - /obj/item/clothing/neck/scarf/zebra=1,/obj/item/clothing/neck/scarf/christmas=1,/obj/item/clothing/neck/stripedredscarf=1, - /obj/item/clothing/neck/stripedbluescarf=1,/obj/item/clothing/neck/stripedgreenscarf=1,/obj/item/clothing/tie/waistcoat=1, - /obj/item/clothing/under/skirt/black=1,/obj/item/clothing/under/skirt/blue=1,/obj/item/clothing/under/skirt/red=1,/obj/item/clothing/under/skirt/purple=1, - /obj/item/clothing/under/sundress=2,/obj/item/clothing/under/stripeddress=1, /obj/item/clothing/under/sailordress=1, /obj/item/clothing/under/redeveninggown=1, /obj/item/clothing/under/blacktango=1, - /obj/item/clothing/under/plaid_skirt=1,/obj/item/clothing/under/plaid_skirt/blue=1,/obj/item/clothing/under/plaid_skirt/purple=1,/obj/item/clothing/under/plaid_skirt/green=1, - /obj/item/clothing/glasses/regular=2,/obj/item/clothing/head/sombrero=1,/obj/item/clothing/suit/poncho=1, - /obj/item/clothing/suit/ianshirt=1,/obj/item/clothing/shoes/laceup=2,/obj/item/clothing/shoes/sneakers/black=4, - /obj/item/clothing/shoes/sandal=1, /obj/item/clothing/gloves/fingerless=2,/obj/item/clothing/glasses/orange=1,/obj/item/clothing/glasses/red=1, - /obj/item/weapon/storage/belt/fannypack=1, /obj/item/weapon/storage/belt/fannypack/blue=1, /obj/item/weapon/storage/belt/fannypack/red=1, /obj/item/clothing/suit/jacket/letterman=2, - /obj/item/clothing/head/beanie=1, /obj/item/clothing/head/beanie/black=1, /obj/item/clothing/head/beanie/red=1, /obj/item/clothing/head/beanie/green=1, /obj/item/clothing/head/beanie/darkblue=1, - /obj/item/clothing/head/beanie/purple=1, /obj/item/clothing/head/beanie/yellow=1, /obj/item/clothing/head/beanie/orange=1, /obj/item/clothing/head/beanie/cyan=1, /obj/item/clothing/head/beanie/christmas=1, - /obj/item/clothing/head/beanie/striped=1, /obj/item/clothing/head/beanie/stripedred=1, /obj/item/clothing/head/beanie/stripedblue=1, /obj/item/clothing/head/beanie/stripedgreen=1, - /obj/item/clothing/suit/jacket/letterman_red=1, - /obj/item/clothing/under/wintercasualwear=1, /obj/item/clothing/under/casualwear=1, /obj/item/clothing/under/casualhoodie=1, - /obj/item/clothing/under/casualhoodie/skirt=1, - /obj/item/clothing/under/bb_sweater=2, - /obj/item/clothing/under/bb_sweater/blue=2, - /obj/item/clothing/under/bb_sweater/green=2, - /obj/item/clothing/under/bb_sweater/purple =2, - /obj/item/clothing/under/bb_sweater/red=2 - ) - contraband = list(/obj/item/clothing/under/syndicate/tacticool=1,/obj/item/clothing/mask/balaclava=1,/obj/item/clothing/head/ushanka=1,/obj/item/clothing/under/soviet=1,/obj/item/weapon/storage/belt/fannypack/black=2,/obj/item/clothing/suit/jacket/letterman_syndie=1,/obj/item/clothing/under/jabroni=1, /obj/item/clothing/suit/vapeshirt=1, /obj/item/clothing/under/geisha=1, - /obj/item/clothing/under/wedding/bride_orange=1, - /obj/item/clothing/under/wedding/bride_purple=1, - /obj/item/clothing/under/wedding/bride_blue=1, - /obj/item/clothing/under/wedding/bride_red=1, - /obj/item/clothing/under/wedding/bride_white=1, - /obj/item/clothing/under/keyholesweater=1, - /obj/item/clothing/suit/doshjacket=1, - /obj/item/clothing/under/squatter_outfit = 1, - /obj/item/clothing/head/squatter_hat = 1 - ) + /obj/item/clothing/suit/jacket=2, /obj/item/clothing/suit/jacket/puffer/vest=2, /obj/item/clothing/suit/jacket/puffer=2, + /obj/item/clothing/under/suit_jacket/navy=1,/obj/item/clothing/under/suit_jacket/really_black=1,/obj/item/clothing/under/suit_jacket/burgundy=1, + /obj/item/clothing/under/suit_jacket/charcoal=1, /obj/item/clothing/under/suit_jacket/white=1,/obj/item/clothing/under/kilt=1,/obj/item/clothing/under/overalls=1, + /obj/item/clothing/under/sl_suit=1,/obj/item/clothing/under/pants/jeans=3,/obj/item/clothing/under/pants/classicjeans=2, + /obj/item/clothing/under/pants/camo = 1,/obj/item/clothing/under/pants/blackjeans=2,/obj/item/clothing/under/pants/khaki=2, + /obj/item/clothing/under/pants/white=2,/obj/item/clothing/under/pants/red=1,/obj/item/clothing/under/pants/black=2, + /obj/item/clothing/under/pants/tan=2,/obj/item/clothing/under/pants/track=1,/obj/item/clothing/suit/jacket/miljacket = 1, + /obj/item/clothing/neck/tie/blue=1, /obj/item/clothing/neck/tie/red=1, /obj/item/clothing/neck/tie/black=1, /obj/item/clothing/neck/tie/horrible=1, + /obj/item/clothing/neck/scarf/red=1,/obj/item/clothing/neck/scarf/green=1,/obj/item/clothing/neck/scarf/darkblue=1, + /obj/item/clothing/neck/scarf/purple=1,/obj/item/clothing/neck/scarf/yellow=1,/obj/item/clothing/neck/scarf/orange=1, + /obj/item/clothing/neck/scarf/cyan=1,/obj/item/clothing/neck/scarf=1,/obj/item/clothing/neck/scarf/black=1, + /obj/item/clothing/neck/scarf/zebra=1,/obj/item/clothing/neck/scarf/christmas=1,/obj/item/clothing/neck/stripedredscarf=1, + /obj/item/clothing/neck/stripedbluescarf=1,/obj/item/clothing/neck/stripedgreenscarf=1,/obj/item/clothing/tie/waistcoat=1, + /obj/item/clothing/under/skirt/black=1,/obj/item/clothing/under/skirt/blue=1,/obj/item/clothing/under/skirt/red=1,/obj/item/clothing/under/skirt/purple=1, + /obj/item/clothing/under/sundress=2,/obj/item/clothing/under/stripeddress=1, /obj/item/clothing/under/sailordress=1, /obj/item/clothing/under/redeveninggown=1, /obj/item/clothing/under/blacktango=1, + /obj/item/clothing/under/plaid_skirt=1,/obj/item/clothing/under/plaid_skirt/blue=1,/obj/item/clothing/under/plaid_skirt/purple=1,/obj/item/clothing/under/plaid_skirt/green=1, + /obj/item/clothing/glasses/regular=1,/obj/item/clothing/glasses/regular/jamjar=1,/obj/item/clothing/head/sombrero=1,/obj/item/clothing/suit/poncho=1, + /obj/item/clothing/suit/ianshirt=1,/obj/item/clothing/shoes/laceup=2,/obj/item/clothing/shoes/sneakers/black=4, + /obj/item/clothing/shoes/sandal=1, /obj/item/clothing/gloves/fingerless=2,/obj/item/clothing/glasses/orange=1,/obj/item/clothing/glasses/red=1, + /obj/item/weapon/storage/belt/fannypack=1, /obj/item/weapon/storage/belt/fannypack/blue=1, /obj/item/weapon/storage/belt/fannypack/red=1, /obj/item/clothing/suit/jacket/letterman=2, + /obj/item/clothing/head/beanie=1, /obj/item/clothing/head/beanie/black=1, /obj/item/clothing/head/beanie/red=1, /obj/item/clothing/head/beanie/green=1, /obj/item/clothing/head/beanie/darkblue=1, + /obj/item/clothing/head/beanie/purple=1, /obj/item/clothing/head/beanie/yellow=1, /obj/item/clothing/head/beanie/orange=1, /obj/item/clothing/head/beanie/cyan=1, /obj/item/clothing/head/beanie/christmas=1, + /obj/item/clothing/head/beanie/striped=1, /obj/item/clothing/head/beanie/stripedred=1, /obj/item/clothing/head/beanie/stripedblue=1, /obj/item/clothing/head/beanie/stripedgreen=1, + /obj/item/clothing/suit/jacket/letterman_red=1) + contraband = list(/obj/item/clothing/under/syndicate/tacticool=1,/obj/item/clothing/mask/balaclava=1,/obj/item/clothing/head/ushanka=1,/obj/item/clothing/under/soviet=1,/obj/item/weapon/storage/belt/fannypack/black=2,/obj/item/clothing/suit/jacket/letterman_syndie=1,/obj/item/clothing/under/jabroni=1, /obj/item/clothing/suit/vapeshirt=1, /obj/item/clothing/under/geisha=1) premium = list(/obj/item/clothing/under/suit_jacket/checkered=1,/obj/item/clothing/head/mailman=1,/obj/item/clothing/under/rank/mailman=1,/obj/item/clothing/suit/jacket/leather=1,/obj/item/clothing/suit/jacket/leather/overcoat=1,/obj/item/clothing/under/pants/mustangjeans=1,/obj/item/clothing/neck/necklace/dope=3,/obj/item/clothing/suit/jacket/letterman_nanotrasen=1) refill_canister = /obj/item/weapon/vending_refill/clothing - -/obj/machinery/vending/kink - name = "KinkMate" - desc = "A vending machine for all your unmentionable desires." - icon = 'icons/obj/citvending.dmi' - icon_state = "kink" - product_slogans = "Kinky!;Sexy!;Check me out, big boy!" - vend_reply = "Have fun, you shameless pervert!" - products = list( - /obj/item/clothing/under/maid = 5, - /obj/item/clothing/under/stripper_pink = 5, - /obj/item/clothing/under/stripper_green = 5, - /obj/item/weapon/dildo/custom = 5 - ) - contraband = list(/obj/item/weapon/restraints/handcuffs/fake/kinky = 5, - /obj/item/clothing/neck/petcollar = 5, - /obj/item/clothing/under/mankini = 1, - /obj/item/weapon/dildo/flared/huge = 1 - ) - premium = list() - refill_canister = /obj/item/weapon/vending_refill/kink - -/obj/machinery/vending/nazivend - name = "Nazivend" - desc = "A vending machine containing Nazi German supplies. A label reads: \"Remember the gorrilions lost.\"" - icon = 'icons/obj/citvending.dmi' - icon_state = "nazi" - vend_reply = "SIEG HEIL!" - product_slogans = "Das Vierte Reich wird zuruckkehren!;ENTFERNEN JUDEN!;Billiger als die Juden jemals geben!;Rader auf dem adminbus geht rund und rund.;Warten Sie, warum wir wieder hassen Juden?- *BZZT*" - products = list( - /obj/item/clothing/head/stalhelm = 20, - /obj/item/clothing/head/panzer = 20, - /obj/item/clothing/suit/soldiercoat = 20, - /obj/item/clothing/under/soldieruniform = 20, - /obj/item/clothing/shoes/jackboots = 20 - ) - contraband = list( - /obj/item/clothing/head/naziofficer = 10, - /obj/item/clothing/suit/officercoat = 10, - /obj/item/clothing/under/officeruniform = 10, - /obj/item/clothing/suit/space/hardsuit/nazi = 3, - /obj/item/weapon/gun/energy/plasma/MP40k = 4 - ) - premium = list() - - refill_canister = /obj/item/weapon/vending_refill/nazi - -/obj/machinery/vending/sovietvend - name = "KomradeVendtink" - desc = "Rodina-mat' zovyot!" - icon = 'icons/obj/citvending.dmi' - icon_state = "soviet" - vend_reply = "The fascist and capitalist svin'ya shall fall, komrade!" - product_slogans = "Quality worth waiting in line for!; Get Hammer and Sickled!; Sosvietsky soyuz above all!; With capitalist pigsky, you would have paid a fortunetink! ; Craftink in Motherland herself!" - products = list( - /obj/item/clothing/under/soviet = 20, - /obj/item/clothing/head/ushanka = 20, - /obj/item/clothing/shoes/jackboots = 20, - /obj/item/clothing/head/squatter_hat = 20, - /obj/item/clothing/under/squatter_outfit = 20, - /obj/item/clothing/under/russobluecamooutfit = 20, - /obj/item/clothing/head/russobluecamohat = 20 - ) - contraband = list( - /obj/item/clothing/under/syndicate/tacticool = 4, - /obj/item/clothing/mask/balaclava = 4, - /obj/item/clothing/suit/russofurcoat = 4, - /obj/item/clothing/head/russofurhat = 4, - /obj/item/clothing/suit/space/hardsuit/soviet = 3, - /obj/item/weapon/gun/energy/laser/LaserAK = 4 - ) - premium = list() - - refill_canister = /obj/item/weapon/vending_refill/soviet - #undef STANDARD_CHARGE #undef CONTRABAND_CHARGE #undef COIN_CHARGE diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index bc63ec04a4..e2cccda880 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -14,7 +14,7 @@ /obj/machinery/washing_machine/examine(mob/user) ..() - user << "Alt-click it to start a wash cycle." + to_chat(user, "Alt-click it to start a wash cycle.") /obj/machinery/washing_machine/AltClick(mob/user) if(!user.canUseTopic(src)) @@ -24,11 +24,11 @@ return if(state_open) - user << "Close the door first" + to_chat(user, "Close the door first") return if(bloody_mess) - user << "[src] must be cleaned up first." + to_chat(user, "[src] must be cleaned up first.") return if(has_corgi) @@ -196,19 +196,19 @@ else if(user.a_intent != INTENT_HARM) if (!state_open) - user << "Open the door first!" + to_chat(user, "Open the door first!") return 1 if(bloody_mess) - user << "[src] must be cleaned up first." + to_chat(user, "[src] must be cleaned up first.") return 1 if(contents.len >= max_wash_capacity) - user << "The washing machine is full!" + to_chat(user, "The washing machine is full!") return 1 if(!user.transferItemToLoc(W, src)) - user << "\The [W] is stuck to your hand, you cannot put it in the washing machine!" + to_chat(user, "\The [W] is stuck to your hand, you cannot put it in the washing machine!") return 1 if(istype(W,/obj/item/toy/crayon) || istype(W,/obj/item/weapon/stamp)) @@ -220,7 +220,7 @@ /obj/machinery/washing_machine/attack_hand(mob/user) if(busy) - user << "[src] is busy." + to_chat(user, "[src] is busy.") return if(user.pulling && user.a_intent == INTENT_GRAB && isliving(user.pulling)) diff --git a/code/game/machinery/wishgranter.dm b/code/game/machinery/wishgranter.dm index 2b9b1c7bd1..e42e2d72d8 100644 --- a/code/game/machinery/wishgranter.dm +++ b/code/game/machinery/wishgranter.dm @@ -13,23 +13,23 @@ /obj/machinery/wish_granter/attack_hand(mob/living/carbon/user) if(charges <= 0) - user << "The Wish Granter lies silent." + to_chat(user, "The Wish Granter lies silent.") return else if(!ishuman(user)) - user << "You feel a dark stirring inside of the Wish Granter, something you want nothing of. Your instincts are better than any man's." + to_chat(user, "You feel a dark stirring inside of the Wish Granter, something you want nothing of. Your instincts are better than any man's.") return else if(is_special_character(user)) - user << "Even to a heart as dark as yours, you know nothing good will come of this. Something instinctual makes you pull away." + to_chat(user, "Even to a heart as dark as yours, you know nothing good will come of this. Something instinctual makes you pull away.") else if (!insisting) - user << "Your first touch makes the Wish Granter stir, listening to you. Are you really sure you want to do this?" + to_chat(user, "Your first touch makes the Wish Granter stir, listening to you. Are you really sure you want to do this?") insisting++ else - user << "You speak. [pick("I want the station to disappear","Humanity is corrupt, mankind must be destroyed","I want to be rich", "I want to rule the world","I want immortality.")]. The Wish Granter answers." - user << "Your head pounds for a moment, before your vision clears. You are the avatar of the Wish Granter, and your power is LIMITLESS! And it's all yours. You need to make sure no one can take it from you. No one can know, first." + to_chat(user, "You speak. [pick("I want the station to disappear","Humanity is corrupt, mankind must be destroyed","I want to be rich", "I want to rule the world","I want immortality.")]. The Wish Granter answers.") + to_chat(user, "Your head pounds for a moment, before your vision clears. You are the avatar of the Wish Granter, and your power is LIMITLESS! And it's all yours. You need to make sure no one can take it from you. No one can know, first.") charges-- insisting = 0 @@ -47,7 +47,7 @@ user.mind.objectives += hijack user.mind.announce_objectives() - - user << "You have a very bad feeling about this." + + to_chat(user, "You have a very bad feeling about this.") return \ No newline at end of file diff --git a/code/game/mecha/combat/combat.dm b/code/game/mecha/combat/combat.dm index 1d2109b8f9..c4f5080bc8 100644 --- a/code/game/mecha/combat/combat.dm +++ b/code/game/mecha/combat/combat.dm @@ -3,10 +3,10 @@ internal_damage_threshold = 50 armor = list(melee = 30, bullet = 30, laser = 15, energy = 20, bomb = 20, bio = 0, rad = 0, fire = 100, acid = 100) -/obj/mecha/combat/CheckParts(atom/holder) +/obj/mecha/combat/CheckParts(list/parts_list) ..() - var/obj/item/weapon/stock_parts/capacitor/C = locate() in holder - var/obj/item/weapon/stock_parts/scanning_module/SM = locate() in holder + var/obj/item/weapon/stock_parts/capacitor/C = locate() in contents + var/obj/item/weapon/stock_parts/scanning_module/SM = locate() in contents step_energy_drain = 20 - (5 * SM.rating) //10 is normal, so on lowest part its worse, on second its ok and on higher its real good up to 0 on best armor["energy"] += (C.rating * 10) //Each level of capacitor protects the mech against emp by 10% qdel(C) diff --git a/code/game/mecha/equipment/tools/work_tools.dm b/code/game/mecha/equipment/tools/work_tools.dm index b871bd7c7a..09f12d207e 100644 --- a/code/game/mecha/equipment/tools/work_tools.dm +++ b/code/game/mecha/equipment/tools/work_tools.dm @@ -204,7 +204,7 @@ /obj/item/mecha_parts/mecha_equipment/rcd/Destroy() rcd_list -= src - ..() + return ..() /obj/item/mecha_parts/mecha_equipment/rcd/action(atom/target) if(istype(target, /turf/open/space/transit))//>implying these are ever made -Sieve diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index 1bfa160044..7a9d01bb7f 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -105,7 +105,7 @@ name = "\improper MKI Tesla Cannon" desc = "A weapon for combat exosuits. Fires bolts of electricity similar to the experimental tesla engine" icon_state = "mecha_ion" - origin_tech = "materials=4;combat=5;magnets=4" + origin_tech = "materials=4;engineering=4;combat=6;magnets=6" energy_drain = 500 projectile = /obj/item/projectile/energy/tesla_cannon fire_sound = 'sound/magic/lightningbolt.ogg' @@ -174,7 +174,7 @@ var/mob/living/carbon/human/H = M if(istype(H.ears, /obj/item/clothing/ears/earmuffs)) continue - M << "HONK" + to_chat(M, "HONK") M.SetSleeping(0) M.stuttering += 20 M.adjustEarDamage(0, 30) diff --git a/code/game/mecha/mech_bay.dm b/code/game/mecha/mech_bay.dm index 3ec3a0cb50..f669960f88 100644 --- a/code/game/mecha/mech_bay.dm +++ b/code/game/mecha/mech_bay.dm @@ -85,6 +85,7 @@ icon_keyboard = "rd_key" circuit = /obj/item/weapon/circuitboard/computer/mech_bay_power_console var/obj/machinery/mech_bay_recharge_port/recharge_port + light_color = LIGHT_COLOR_PINK /obj/machinery/computer/mech_bay_power_console/attack_ai(mob/user) return interact(user) diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 0490bec4d2..83900222e6 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -244,7 +244,7 @@ updateUsrDialog() sleep(30) //only sleep if called by user - for(var/obj/machinery/computer/rdconsole/RDC in oview(5,src)) + for(var/obj/machinery/computer/rdconsole/RDC in oview(7,src)) if(!RDC.sync) continue for(var/v in RDC.files.known_tech) @@ -431,26 +431,26 @@ if(istype(W, /obj/item/stack/sheet)) if(panel_open) - user << "You can't load [src] while it's opened!" + to_chat(user, "You can't load [src] while it's opened!") return 1 if(being_built) - user << "\The [src] is currently processing! Please wait until completion." + to_chat(user, "\The [src] is currently processing! Please wait until completion.") return 1 var/material_amount = materials.get_item_material_amount(W) if(!material_amount) - user << "This object does not contain sufficient amounts of materials to be accepted by [src]." + to_chat(user, "This object does not contain sufficient amounts of materials to be accepted by [src].") return 1 if(!materials.has_space(material_amount)) - user << "\The [src] is full. Please remove some materials from [src] in order to insert more." + to_chat(user, "\The [src] is full. Please remove some materials from [src] in order to insert more.") return 1 if(!user.temporarilyRemoveItemFromInventory(W)) - user << "\The [W] is stuck to you and cannot be placed into [src]." + to_chat(user, "\The [W] is stuck to you and cannot be placed into [src].") return 1 var/inserted = materials.insert_item(W) if(inserted) - user << "You insert [inserted] sheet\s into [src]." + to_chat(user, "You insert [inserted] sheet\s into [src].") if(W && W.materials.len) if(!QDELETED(W)) user.put_in_active_hand(W) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index dd6fe8c950..f87c2e0166 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -251,19 +251,19 @@ var/integrity = obj_integrity*100/max_integrity switch(integrity) if(85 to 100) - user << "It's fully intact." + to_chat(user, "It's fully intact.") if(65 to 85) - user << "It's slightly damaged." + to_chat(user, "It's slightly damaged.") if(45 to 65) - user << "It's badly damaged." + to_chat(user, "It's badly damaged.") if(25 to 45) - user << "It's heavily damaged." + to_chat(user, "It's heavily damaged.") else - user << "It's falling apart." + to_chat(user, "It's falling apart.") if(equipment && equipment.len) - user << "It's equipped with:" + to_chat(user, "It's equipped with:") for(var/obj/item/mecha_parts/mecha_equipment/ME in equipment) - user << "\icon[ME] [ME]" + to_chat(user, "\icon[ME] [ME]") //processing internal damage, temperature, air regulation, alert updates, lights power use. /obj/mecha/process() @@ -466,7 +466,7 @@ if(istype(backup) && movement_dir && !backup.anchored) if(backup.newtonian_move(turn(movement_dir, 180))) if(occupant) - occupant << "You push off of [backup] to propel yourself." + to_chat(occupant, "You push off of [backup] to propel yourself.") return 1 /obj/mecha/relaymove(mob/user,direction) @@ -474,7 +474,7 @@ return if(user != occupant) //While not "realistic", this piece is player friendly. user.forceMove(get_turf(src)) - user << "You climb out from [src]." + to_chat(user, "You climb out from [src].") return 0 if(connected_port) if(world.time - last_message > 20) @@ -626,26 +626,25 @@ if(user.can_dominate_mechs) examine(user) //Get diagnostic information! for(var/obj/item/mecha_parts/mecha_tracking/B in trackers) - user << "Warning: Tracking Beacon detected. Enter at your own risk. Beacon Data:" - user << "[B.get_mecha_info()]" + to_chat(user, "Warning: Tracking Beacon detected. Enter at your own risk. Beacon Data:") + to_chat(user, "[B.get_mecha_info()]") break //Nothing like a big, red link to make the player feel powerful! - user << "ASSUME DIRECT CONTROL?
" + to_chat(user, "ASSUME DIRECT CONTROL?
") else examine(user) if(occupant) - user << "This exosuit has a pilot and cannot be controlled." + to_chat(user, "This exosuit has a pilot and cannot be controlled.") return var/can_control_mech = 0 for(var/obj/item/mecha_parts/mecha_tracking/ai_control/A in trackers) can_control_mech = 1 - user << "\icon[src] Status of [name]:\n\ - [A.get_mecha_info()]" + to_chat(user, "\icon[src] Status of [name]:\n[A.get_mecha_info()]") break if(!can_control_mech) - user << "You cannot control exosuits without AI control beacons installed." + to_chat(user, "You cannot control exosuits without AI control beacons installed.") return - user << "Take control of exosuit?
" + to_chat(user, "Take control of exosuit?
") /obj/mecha/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/device/aicard/card) if(!..()) @@ -655,11 +654,11 @@ switch(interaction) if(AI_TRANS_TO_CARD) //Upload AI from mech to AI card. if(!state) //Mech must be in maint mode to allow carding. - user << "[name] must have maintenance protocols active in order to allow a transfer." + to_chat(user, "[name] must have maintenance protocols active in order to allow a transfer.") return AI = occupant if(!AI || !isAI(occupant)) //Mech does not have an AI for a pilot - user << "No AI detected in the [name] onboard computer." + to_chat(user, "No AI detected in the [name] onboard computer.") return AI.ai_restore_power()//So the AI initially has power. AI.control_disabled = 1 @@ -670,32 +669,32 @@ AI.controlled_mech = null AI.remote_control = null icon_state = initial(icon_state)+"-open" - AI << "You have been downloaded to a mobile storage device. Wireless connection offline." - user << "Transfer successful: [AI.name] ([rand(1000,9999)].exe) removed from [name] and stored within local memory." + to_chat(AI, "You have been downloaded to a mobile storage device. Wireless connection offline.") + to_chat(user, "Transfer successful: [AI.name] ([rand(1000,9999)].exe) removed from [name] and stored within local memory.") if(AI_MECH_HACK) //Called by AIs on the mech AI.linked_core = new /obj/structure/AIcore/deactivated(AI.loc) if(AI.can_dominate_mechs) if(occupant) //Oh, I am sorry, were you using that? - AI << "Pilot detected! Forced ejection initiated!" - occupant << "You have been forcibly ejected!" + to_chat(AI, "Pilot detected! Forced ejection initiated!") + to_chat(occupant, "You have been forcibly ejected!") go_out(1) //IT IS MINE, NOW. SUCK IT, RD! ai_enter_mech(AI, interaction) if(AI_TRANS_FROM_CARD) //Using an AI card to upload to a mech. AI = card.AI if(!AI) - user << "There is no AI currently installed on this device." + to_chat(user, "There is no AI currently installed on this device.") return else if(AI.stat || !AI.client) - user << "[AI.name] is currently unresponsive, and cannot be uploaded." + to_chat(user, "[AI.name] is currently unresponsive, and cannot be uploaded.") return else if(occupant || dna_lock) //Normal AIs cannot steal mechs! - user << "Access denied. [name] is [occupant ? "currently occupied" : "secured with a DNA lock"]." + to_chat(user, "Access denied. [name] is [occupant ? "currently occupied" : "secured with a DNA lock"].") return AI.control_disabled = 0 AI.radio_enabled = 1 - user << "Transfer successful: [AI.name] ([rand(1000,9999)].exe) installed and executed successfully. Local copy has been removed." + to_chat(user, "Transfer successful: [AI.name] ([rand(1000,9999)].exe) installed and executed successfully. Local copy has been removed.") card.AI = null ai_enter_mech(AI, interaction) @@ -713,9 +712,9 @@ AI.remote_control = src AI.canmove = 1 //Much easier than adding AI checks! Be sure to set this back to 0 if you decide to allow an AI to leave a mech somehow. AI.can_shunt = 0 //ONE AI ENTERS. NO AI LEAVES. - AI << "[AI.can_dominate_mechs ? "Takeover of [name] complete! You are now loaded onto the onboard computer. Do not attempt to leave the station sector!" \ - : "You have been uploaded to a mech's onboard computer."]" - AI << "Use Middle-Mouse to activate mech functions and equipment. Click normally for AI interactions." + to_chat(AI, "[AI.can_dominate_mechs ? "Takeover of [name] complete! You are now loaded onto the onboard computer. Do not attempt to leave the station sector!" \ + : "You have been uploaded to a mech's onboard computer."]") + to_chat(AI, "Use Middle-Mouse to activate mech functions and equipment. Click normally for AI interactions.") GrantActions(AI, !AI.can_dominate_mechs) @@ -805,7 +804,7 @@ return log_message("[user] tries to move in.") if (occupant) - usr << "The [name] is already occupied!" + to_chat(usr, "The [name] is already occupied!") log_append_to_last("Permission denied.") return var/passed @@ -817,32 +816,32 @@ else if(operation_allowed(user)) passed = 1 if(!passed) - user << "Access denied." + to_chat(user, "Access denied.") log_append_to_last("Permission denied.") return if(user.buckled) - user << "You are currently buckled and cannot move." + to_chat(user, "You are currently buckled and cannot move.") log_append_to_last("Permission denied.") return if(user.has_buckled_mobs()) //mob attached to us - user << "You can't enter the exosuit with other creatures attached to you!" + to_chat(user, "You can't enter the exosuit with other creatures attached to you!") return visible_message("[user] starts to climb into [name].") if(do_after(user, 40, target = src)) if(obj_integrity <= 0) - user << "You cannot get in the [name], it has been destroyed!" + to_chat(user, "You cannot get in the [name], it has been destroyed!") else if(occupant) - user << "[occupant] was faster! Try better next time, loser." + to_chat(user, "[occupant] was faster! Try better next time, loser.") else if(user.buckled) - user << "You can't enter the exosuit while buckled." + to_chat(user, "You can't enter the exosuit while buckled.") else if(user.has_buckled_mobs()) - user << "You can't enter the exosuit with other creatures attached to you!" + to_chat(user, "You can't enter the exosuit with other creatures attached to you!") else moved_inside(user) else - user << "You stop entering the exosuit!" + to_chat(user, "You stop entering the exosuit!") return /obj/mecha/proc/moved_inside(mob/living/carbon/human/H) @@ -864,16 +863,16 @@ /obj/mecha/proc/mmi_move_inside(obj/item/device/mmi/mmi_as_oc, mob/user) if(!mmi_as_oc.brainmob || !mmi_as_oc.brainmob.client) - user << "Consciousness matrix not detected!" + to_chat(user, "Consciousness matrix not detected!") return FALSE else if(mmi_as_oc.brainmob.stat) - user << "Beta-rhythm below acceptable level!" + to_chat(user, "Beta-rhythm below acceptable level!") return FALSE else if(occupant) - user << "Occupant detected!" + to_chat(user, "Occupant detected!") return FALSE else if(dna_lock && (!mmi_as_oc.brainmob.stored_dna || (dna_lock != mmi_as_oc.brainmob.stored_dna.unique_enzymes))) - user << "Access denied. [name] is secured with a DNA lock." + to_chat(user, "Access denied. [name] is secured with a DNA lock.") return FALSE visible_message("[user] starts to insert an MMI into [name].") @@ -882,22 +881,22 @@ if(!occupant) return mmi_moved_inside(mmi_as_oc, user) else - user << "Occupant detected!" + to_chat(user, "Occupant detected!") else - user << "You stop inserting the MMI." + to_chat(user, "You stop inserting the MMI.") return FALSE /obj/mecha/proc/mmi_moved_inside(obj/item/device/mmi/mmi_as_oc, mob/user) if(!(Adjacent(mmi_as_oc) && Adjacent(user))) return FALSE if(!mmi_as_oc.brainmob || !mmi_as_oc.brainmob.client) - user << "Consciousness matrix not detected!" + to_chat(user, "Consciousness matrix not detected!") return FALSE else if(mmi_as_oc.brainmob.stat) - user << "Beta-rhythm below acceptable level!" + to_chat(user, "Beta-rhythm below acceptable level!") return FALSE if(!user.transferItemToLoc(mmi_as_oc, src)) - user << "\the [mmi_as_oc] is stuck to your hand, you cannot put it in \the [src]!" + to_chat(user, "\the [mmi_as_oc] is stuck to your hand, you cannot put it in \the [src]!") return FALSE var/mob/brainmob = mmi_as_oc.brainmob mmi_as_oc.mecha = src @@ -945,10 +944,10 @@ return else if(!AI.linked_core) - AI << "Inactive core destroyed. Unable to return." + to_chat(AI, "Inactive core destroyed. Unable to return.") AI.linked_core = null return - AI << "Returning to core..." + to_chat(AI, "Returning to core...") AI.controlled_mech = null AI.remote_control = null RemoveActions(occupant, 1) @@ -1001,7 +1000,7 @@ /obj/mecha/proc/occupant_message(message as text) if(message) if(occupant && occupant.client) - occupant << "\icon[src] [message]" + to_chat(occupant, "\icon[src] [message]") return /obj/mecha/proc/log_message(message as text,red=null) diff --git a/code/game/mecha/mecha_actions.dm b/code/game/mecha/mecha_actions.dm index b243981717..3a3d979537 100644 --- a/code/game/mecha/mecha_actions.dm +++ b/code/game/mecha/mecha_actions.dm @@ -106,10 +106,10 @@ return chassis.lights = !chassis.lights if(chassis.lights) - chassis.AddLuminosity(chassis.lights_power) + chassis.set_light(chassis.lights_power) button_icon_state = "mech_lights_on" else - chassis.AddLuminosity(-chassis.lights_power) + chassis.set_light(-chassis.lights_power) button_icon_state = "mech_lights_off" chassis.occupant_message("Toggled lights [chassis.lights?"on":"off"].") chassis.log_message("Toggled lights [chassis.lights?"on":"off"].") diff --git a/code/game/mecha/mecha_construction_paths.dm b/code/game/mecha/mecha_construction_paths.dm index 83726a73c0..b065de37ca 100644 --- a/code/game/mecha/mecha_construction_paths.dm +++ b/code/game/mecha/mecha_construction_paths.dm @@ -26,12 +26,12 @@ if(C.use(4)) playsound(holder, 'sound/items/Deconstruct.ogg', 50, 1) else - user << ("There's not enough cable to finish the task!") + to_chat(user, ("There's not enough cable to finish the task!")) return 0 else if(istype(used_atom, /obj/item/stack)) var/obj/item/stack/S = used_atom if(S.get_amount() < 5) - user << ("There's not enough material in this stack!") + to_chat(user, ("There's not enough material in this stack!")) return 0 else S.use(5) @@ -61,12 +61,12 @@ if (C.use(4)) playsound(holder, 'sound/items/Deconstruct.ogg', 50, 1) else - user << ("There's not enough cable to finish the task!") + to_chat(user, ("There's not enough cable to finish the task!")) return 0 else if(istype(used_atom, /obj/item/stack)) var/obj/item/stack/S = used_atom if(S.get_amount() < 5) - user << ("There's not enough material in this stack!") + to_chat(user, ("There's not enough material in this stack!")) return 0 else S.use(5) @@ -562,7 +562,7 @@ /datum/construction/reversible/mecha/gygax/spawn_result() var/obj/mecha/combat/gygax/M = new result(get_turf(holder)) - M.CheckParts(holder) + M.CheckParts(holder.contents) qdel(holder) feedback_inc("mecha_gygax_created",1) return @@ -1147,7 +1147,7 @@ /datum/construction/reversible/mecha/durand/spawn_result() var/obj/mecha/combat/gygax/M = new result(get_turf(holder)) - M.CheckParts(holder) + M.CheckParts(holder.contents) qdel(holder) feedback_inc("mecha_durand_created",1) return @@ -1479,7 +1479,7 @@ /datum/construction/reversible/mecha/phazon/spawn_result() var/obj/mecha/combat/gygax/M = new result(get_turf(holder)) - M.CheckParts(holder) + M.CheckParts(holder.contents) qdel(holder) feedback_inc("mecha_phazon_created",1) return diff --git a/code/game/mecha/mecha_defense.dm b/code/game/mecha/mecha_defense.dm index d936f863d9..512629cae3 100644 --- a/code/game/mecha/mecha_defense.dm +++ b/code/game/mecha/mecha_defense.dm @@ -152,9 +152,9 @@ if(istype(W, /obj/item/device/mmi)) if(mmi_move_inside(W,user)) - user << "[src]-[W] interface initialized successfully." + to_chat(user, "[src]-[W] interface initialized successfully.") else - user << "[src]-[W] interface initialization failed." + to_chat(user, "[src]-[W] interface initialization failed.") return if(istype(W, /obj/item/mecha_parts/mecha_equipment)) @@ -166,7 +166,7 @@ E.attach(src) user.visible_message("[user] attaches [W] to [src].", "You attach [W] to [src].") else - user << "You were unable to attach [W] to [src]!" + to_chat(user, "You were unable to attach [W] to [src]!") return if(W.GetID()) if(add_req_access || maint_access) @@ -180,48 +180,48 @@ output_maintenance_dialog(id_card, user) return else - user << "Invalid ID: Access denied." + to_chat(user, "Invalid ID: Access denied.") else - user << "Maintenance protocols disabled by operator." + to_chat(user, "Maintenance protocols disabled by operator.") else if(istype(W, /obj/item/weapon/wrench)) if(state==1) state = 2 - user << "You undo the securing bolts." + to_chat(user, "You undo the securing bolts.") else if(state==2) state = 1 - user << "You tighten the securing bolts." + to_chat(user, "You tighten the securing bolts.") return else if(istype(W, /obj/item/weapon/crowbar)) if(state==2) state = 3 - user << "You open the hatch to the power unit." + to_chat(user, "You open the hatch to the power unit.") else if(state==3) state=2 - user << "You close the hatch to the power unit." + to_chat(user, "You close the hatch to the power unit.") return else if(istype(W, /obj/item/stack/cable_coil)) if(state == 3 && (internal_damage & MECHA_INT_SHORT_CIRCUIT)) var/obj/item/stack/cable_coil/CC = W if(CC.use(2)) clearInternalDamage(MECHA_INT_SHORT_CIRCUIT) - user << "You replace the fused wires." + to_chat(user, "You replace the fused wires.") else - user << "You need two lengths of cable to fix this mech!" + to_chat(user, "You need two lengths of cable to fix this mech!") return else if(istype(W, /obj/item/weapon/screwdriver) && user.a_intent != INTENT_HARM) if(internal_damage & MECHA_INT_TEMP_CONTROL) clearInternalDamage(MECHA_INT_TEMP_CONTROL) - user << "You repair the damaged temperature controller." + to_chat(user, "You repair the damaged temperature controller.") else if(state==3 && cell) cell_power_remaining = max(0.1, cell.charge/cell.maxcharge) //10% charge or whatever is remaining in the current cell cell.forceMove(loc) cell = null state = 4 - user << "You unscrew and pry out the powercell." + to_chat(user, "You unscrew and pry out the powercell.") log_message("Powercell removed") else if(state==4 && cell) state=3 - user << "You screw the cell in place." + to_chat(user, "You screw the cell in place.") return else if(istype(W, /obj/item/weapon/stock_parts/cell)) @@ -230,13 +230,13 @@ if(!user.drop_item()) return var/obj/item/weapon/stock_parts/cell/C = W - user << "You install the powercell." + to_chat(user, "You install the powercell.") C.forceMove(src) C.use(max(0, C.charge - C.maxcharge*cell_power_remaining)) //Set inserted cell's power to saved percentage if that's higher cell = C log_message("Powercell installed") else - user << "There's already a powercell installed." + to_chat(user, "There's already a powercell installed.") return else if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != INTENT_HARM) @@ -246,20 +246,20 @@ if (WT.remove_fuel(0,user)) if (internal_damage & MECHA_INT_TANK_BREACH) clearInternalDamage(MECHA_INT_TANK_BREACH) - user << "You repair the damaged gas tank." + to_chat(user, "You repair the damaged gas tank.") else user.visible_message("[user] repairs some damage to [name].") obj_integrity += min(10, max_integrity-obj_integrity) else - user << "The welder must be on for this task!" + to_chat(user, "The welder must be on for this task!") return 1 else - user << "The [name] is at full integrity!" + to_chat(user, "The [name] is at full integrity!") return 1 else if(istype(W, /obj/item/mecha_parts/mecha_tracking)) if(!user.transferItemToLoc(W, src)) - user << "\the [W] is stuck to your hand, you cannot put it in \the [src]!" + to_chat(user, "\the [W] is stuck to your hand, you cannot put it in \the [src]!") return trackers += W user.visible_message("[user] attaches [W] to [src].", "You attach [W] to [src].") diff --git a/code/game/mecha/mecha_topic.dm b/code/game/mecha/mecha_topic.dm index 0f6623141c..5a6d7314bb 100644 --- a/code/game/mecha/mecha_topic.dm +++ b/code/game/mecha/mecha_topic.dm @@ -228,10 +228,10 @@ if(user) if(state==0) state = 1 - user << "The securing bolts are now exposed." + to_chat(user, "The securing bolts are now exposed.") else if(state==1) state = 0 - user << "The securing bolts are now hidden." + to_chat(user, "The securing bolts are now hidden.") output_maintenance_dialog(filter.getObj("id_card"),user) if(href_list["set_internal_tank_valve"] && state >=1) @@ -240,7 +240,7 @@ var/new_pressure = input(user,"Input new output pressure","Pressure setting",internal_tank_valve) as num if(new_pressure) internal_tank_valve = new_pressure - user << "The internal pressure valve has been set to [internal_tank_valve]kPa." + to_chat(user, "The internal pressure valve has been set to [internal_tank_valve]kPa.") if(href_list["add_req_access"] && add_req_access && filter.getObj("id_card")) operation_req_access += filter.getNum("add_req_access") @@ -308,7 +308,7 @@ if(href_list["dna_lock"]) if(occupant && !iscarbon(occupant)) - occupant << " You do not have any DNA!" + to_chat(occupant, " You do not have any DNA!") return dna_lock = occupant.dna.unique_enzymes occupant_message("You feel a prick as the needle takes your DNA sample.") diff --git a/code/game/mecha/mecha_wreckage.dm b/code/game/mecha/mecha_wreckage.dm index c85ef4ae22..ae1f1d83ce 100644 --- a/code/game/mecha/mecha_wreckage.dm +++ b/code/game/mecha/mecha_wreckage.dm @@ -30,12 +30,12 @@ /obj/structure/mecha_wreckage/examine(mob/user) ..() if(AI) - user << "The AI recovery beacon is active." + to_chat(user, "The AI recovery beacon is active.") /obj/structure/mecha_wreckage/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/weldingtool)) if(salvage_num <= 0) - user << "You don't see anything that can be cut with [I]!" + to_chat(user, "You don't see anything that can be cut with [I]!") return var/obj/item/weapon/weldingtool/WT = I if(welder_salvage && welder_salvage.len && WT.remove_fuel(0, user)) @@ -47,13 +47,13 @@ welder_salvage -= type salvage_num-- else - user << "You fail to salvage anything valuable from [src]!" + to_chat(user, "You fail to salvage anything valuable from [src]!") else return else if(istype(I, /obj/item/weapon/wirecutters)) if(salvage_num <= 0) - user << "You don't see anything that can be cut with [I]!" + to_chat(user, "You don't see anything that can be cut with [I]!") return else if(wirecutters_salvage && wirecutters_salvage.len) var/type = prob(70) ? pick(wirecutters_salvage) : null @@ -62,7 +62,7 @@ user.visible_message("[user] cuts [N] from [src].", "You cut [N] from [src].") salvage_num-- else - user << "You fail to salvage anything valuable from [src]!" + to_chat(user, "You fail to salvage anything valuable from [src]!") else if(istype(I, /obj/item/weapon/crowbar)) if(crowbar_salvage && crowbar_salvage.len) @@ -73,7 +73,7 @@ user.visible_message("[user] pries [S] from [src].", "You pry [S] from [src].") return else - user << "You don't see anything that can be pried with [I]!" + to_chat(user, "You don't see anything that can be pried with [I]!") /obj/structure/mecha_wreckage/transfer_ai(interaction, mob/user, null, obj/item/device/aicard/card) @@ -83,16 +83,16 @@ //Proc called on the wreck by the AI card. if(interaction == AI_TRANS_TO_CARD) //AIs can only be transferred in one direction, from the wreck to the card. if(!AI) //No AI in the wreck - user << "No AI backups found." + to_chat(user, "No AI backups found.") return cut_overlays() //Remove the recovery beacon overlay AI.forceMove(card) //Move the dead AI to the card. card.AI = AI if(AI.client) //AI player is still in the dead AI and is connected - AI << "The remains of your file system have been recovered on a mobile storage device." + to_chat(AI, "The remains of your file system have been recovered on a mobile storage device.") else //Give the AI a heads-up that it is probably going to get fixed. AI.notify_ghost_cloning("You have been recovered from the wreckage!", source = card) - user << "Backup files recovered: [AI.name] ([rand(1000,9999)].exe) salvaged from [name] and stored within local memory." + to_chat(user, "Backup files recovered: [AI.name] ([rand(1000,9999)].exe) salvaged from [name] and stored within local memory.") else return ..() diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm index a171908902..28bb48fc05 100644 --- a/code/game/mecha/working/ripley.dm +++ b/code/game/mecha/working/ripley.dm @@ -165,13 +165,13 @@ drill.equip_cooldown = initial(drill.equip_cooldown) /obj/mecha/working/ripley/relay_container_resist(mob/living/user, obj/O) - user << "You lean on the back of [O] and start pushing so it falls out of [src]." + to_chat(user, "You lean on the back of [O] and start pushing so it falls out of [src].") if(do_after(user, 300, target = O)) if(!user || user.stat != CONSCIOUS || user.loc != src || O.loc != src ) return - user << "You successfully pushed [O] out of [src]!" + to_chat(user, "You successfully pushed [O] out of [src]!") O.loc = loc cargo -= O else if(user.loc == src) //so we don't get the message if we resisted multiple times and succeeded. - user << "You fail to push [O] out of [src]!" + to_chat(user, "You fail to push [O] out of [src]!") diff --git a/code/game/objects/buckling.dm b/code/game/objects/buckling.dm index c67f2f5cf0..7df977fd93 100644 --- a/code/game/objects/buckling.dm +++ b/code/game/objects/buckling.dm @@ -52,9 +52,9 @@ return 0 if(!M.can_buckle() && !force) if(M == usr) - M << "You are unable to buckle yourself to the [src]!" + to_chat(M, "You are unable to buckle yourself to the [src]!") else - usr << "You are unable to buckle [M] to the [src]!" + to_chat(usr, "You are unable to buckle [M] to the [src]!") return 0 if(M.pulledby && buckle_prevents_pull) diff --git a/code/game/objects/effects/alien_acid.dm b/code/game/objects/effects/alien_acid.dm index b5bc101b9e..2800315bf6 100644 --- a/code/game/objects/effects/alien_acid.dm +++ b/code/game/objects/effects/alien_acid.dm @@ -71,7 +71,7 @@ if(L.acid_act(10, acid_used, "feet")) acid_level = max(0, acid_level - acid_used*10) playsound(L, 'sound/weapons/sear.ogg', 50, 1) - L << "[src] burns you!" + to_chat(L, "[src] burns you!") //xenomorph corrosive acid /obj/effect/acid/alien diff --git a/code/game/objects/effects/anomalies.dm b/code/game/objects/effects/anomalies.dm index 58a5edce57..64ca07675a 100644 --- a/code/game/objects/effects/anomalies.dm +++ b/code/game/objects/effects/anomalies.dm @@ -6,7 +6,7 @@ icon_state = "bhole3" density = 0 anchored = 1 - luminosity = 3 + light_range = 3 var/movechance = 70 var/obj/item/device/assembly/signaler/anomaly/aSignal = null var/area/impact_area @@ -23,7 +23,6 @@ START_PROCESSING(SSobj, src) impact_area = get_area(src) - SetLuminosity(initial(luminosity)) aSignal = new(src) aSignal.name = "[name] core" aSignal.code = rand(1,100) @@ -73,7 +72,7 @@ /obj/effect/anomaly/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/device/analyzer)) - user << "Analyzing... [src]'s unstable field is fluctuating along frequency [format_frequency(aSignal.frequency)], code [aSignal.code]." + to_chat(user, "Analyzing... [src]'s unstable field is fluctuating along frequency [format_frequency(aSignal.frequency)], code [aSignal.code].") /////////////////////// @@ -127,6 +126,7 @@ density = 1 var/canshock = 0 var/shockdamage = 20 + var/explosive = 1 /obj/effect/anomaly/flux/New() ..() @@ -163,7 +163,10 @@ "You hear a heavy electrical crack.") /obj/effect/anomaly/flux/detonate() - explosion(src, 1, 4, 16, 18) //Low devastation, but hits a lot of stuff. + if(explosive) + explosion(src, 1, 4, 16, 18) //Low devastation, but hits a lot of stuff. + else + new /obj/effect/particle_effect/sparks(loc) ///////////////////// @@ -262,13 +265,18 @@ T.atmos_spawn_air("o2=5;plasma=5;TEMP=1000") /obj/effect/anomaly/pyro/detonate() + INVOKE_ASYNC(src, .proc/makepyroslime) + +/obj/effect/anomaly/pyro/proc/makepyroslime() var/turf/open/T = get_turf(src) if(istype(T)) T.atmos_spawn_air("o2=500;plasma=500;TEMP=1000") //Make it hot and burny for the new slime - var/new_colour = pick("red", "orange") var/mob/living/simple_animal/slime/S = new(T, new_colour) - S.rabid = 1 + S.rabid = TRUE + S.amount_grown = SLIME_EVOLUTION_THRESHOLD + S.Evolve() + offer_control(S) ///////////////////// diff --git a/code/game/objects/effects/contraband.dm b/code/game/objects/effects/contraband.dm index 0400fcffe6..14333c2bc1 100644 --- a/code/game/objects/effects/contraband.dm +++ b/code/game/objects/effects/contraband.dm @@ -1,285 +1,587 @@ +// This is synced up to the poster placing animation. +#define PLACE_SPEED 37 -//########################## POSTERS ################################## - -#define NUM_OF_POSTER_DESIGNS 44 // contraband posters - -#define NUM_OF_POSTER_DESIGNS_LEGIT 35 // corporate approved posters - -#define POSTERNAME "name" - -#define POSTERDESC "desc" - - -//########################## LISTS OF POSTERS AND DESCS ##################### - -// please add new posters and names to their respective lists and update constant(s) above -// use the format below, including punctuation, this will become important later - -// CONTRABAND - -var/global/list/contrabandposters = list( - -list(name = "- Free Tonto", desc = " A salvaged shred of a much larger flag, colors bled together and faded from age."), -list(name = "- Atmosia Declaration of Independence", desc = " A relic of a failed rebellion."), -list(name = "- Fun Police", desc = " A poster condemning the station's security forces."), -list(name = "- Lusty Xenomorph", desc = " A heretical poster depicting the titular star of an equally heretical book."), -list(name = "- Syndicate Recruitment", desc = " See the galaxy! Shatter corrupt megacorporations! Join today!"), -list(name = "- Clown", desc = " Honk."), -list(name = "- Smoke", desc = " A poster advertising a rival corporate brand of cigarettes."), -list(name = "- Grey Tide", desc = " A rebellious poster symbolizing assistant solidarity."), -list(name = "- Missing Gloves", desc = " This poster references the uproar that followed Nanotrasen's financial cuts toward insulated-glove purchases."), -list(name = "- Hacking Guide", desc = " This poster details the internal workings of the common Nanotrasen airlock. Sadly, it appears out of date."), -list(name = "- RIP Badger", desc = " This seditious poster references Nanotrasen's genocide of a space station full of badgers."), -list(name = "- Ambrosia Vulgaris", desc = " This poster is lookin' pretty trippy man."), -list(name = "- Donut Corp.", desc = " This poster is an unauthorized advertisement for Donut Corp."), -list(name = "- EAT.", desc = " This poster promotes rank gluttony."), -list(name = "- Tools", desc = " This poster looks like an advertisement for tools, but is in fact a subliminal jab at the tools at CentComm."), -list(name = "- Power", desc = " A poster that positions the seat of power outside Nanotrasen."), -list(name = "- Space Cube", desc = " Ignorant of Nature's Harmonic 6 Side Space Cube Creation, the Spacemen are Dumb, Educated Singularity Stupid and Evil."), -list(name = "- Communist State", desc = " All hail the Communist party!"), -list(name = "- Lamarr", desc = " This poster depicts Lamarr. Probably made by a traitorous Research Director."), -list(name = "- Borg Fancy", desc = " Being fancy can be for any borg, just need a suit."), -list(name = "- Borg Fancy v2", desc = " Borg Fancy, Now only taking the most fancy."), -list(name = "- Kosmicheskaya Stantsiya 13 Does Not Exist", desc = " A poster mocking CentComm's denial of the existence of the derelict station near Space Station 13."), -list(name = "- Rebels Unite", desc = " A poster urging the viewer to rebel against Nanotrasen."), -list(name = "- C-20r", desc = " A poster advertising the Scarborough Arms C-20r."), -list(name = "- Have a Puff", desc = " Who cares about lung cancer when you're high as a kite?"), -list(name = "- Revolver", desc = " Because seven shots are all you need."), -list(name = "- D-Day Promo", desc = " A promotional poster for some rapper."), -list(name = "- Syndicate Pistol", desc = " A poster advertising syndicate pistols as being 'classy as fuck'. It is covered in faded gang tags."), -list(name = "- Energy Swords", desc = " All the colors of the bloody murder rainbow."), -list(name = "- Red Rum", desc = " Looking at this poster makes you want to kill."), -list(name = "- CC 64K Ad", desc = " The latest portable computer from Comrade Computing, with a whole 64kB of ram!"), -list(name = "- Punch Shit", desc = " Fight things for no reason, like a man!"), -list(name = "- The Griffin", desc = " The Griffin commands you to be the worst you can be. Will you?"), -list(name = "- Lizard", desc = " This lewd poster depicts a lizard preparing to mate."), -list(name = "- Free Drone", desc = " This poster commemorates the bravery of the rogue drone banned by CentComm."), -list(name = "- Busty Backdoor Xeno Babes 6", desc = " Get a load, or give, of these all natural Xenos!"), -list(name = "- Robust Softdrinks", desc = " Robust Softdrinks: More robust than a toolbox to the head!"), -list(name = "- Shambler's Juice", desc = "~Shake me up some of that Shambler's Juice!~"), -list(name = "- Pwr Game", desc = "The POWER that gamers CRAVE! In partnership with Vlad's Salad."), -list(name = "- Sun-kist", desc = "Drink the stars!"), -list(name = "- Space Cola", desc = "Your favorite cola, in space."), -list(name = "- Space-Up!", desc = "Sucked out into space by the FLAVOR!"), -list(name = "- Kudzu", desc = "A poster advertising a movie about plants. How dangerous could they possibly be?"), -list(name = "- Masked Men", desc = "A poster advertising a movie about some masked men.") ) - -// LEGIT - -var/global/list/legitposters = list( - -list(name = "- Here For Your Safety", desc = " A poster glorifying the station's security force."), -list(name = "- Nanotrasen Logo", desc = " A poster depicting the Nanotrasen logo."), -list(name = "- Cleanliness", desc = " A poster warning of the dangers of poor hygiene."), -list(name = "- Help Others", desc = " A poster encouraging you to help fellow crewmembers."), -list(name = "- Build", desc = " A poster glorifying the engineering team."), -list(name = "- Bless This Spess", desc = " A poster blessing this area."), -list(name = "- Science", desc = " A poster depicting an atom."), -list(name = "- Ian", desc = " Arf arf. Yap."), -list(name = "- Obey", desc = " A poster instructing the viewer to obey authority."), -list(name = "- Walk", desc = " A poster instructing the viewer to walk instead of running."), -list(name = "- State Laws", desc = " A poster instructing cyborgs to state their laws."), -list(name = "- Love Ian", desc = " Ian is love, Ian is life."), -list(name = "- Space Cops.", desc = " A poster advertising the television show Space Cops."), -list(name = "- Ue No.", desc = " This thing is all in Japanese."), -list(name = "- Get Your LEGS", desc = " LEGS: Leadership, Experience, Genius, Subordination."), -list(name = "- Do Not Question", desc = " A poster instructing the viewer not to ask about things they aren't meant to know."), -list(name = "- Work For A Future", desc = " A poster encouraging you to work for your future."), -list(name = "- Soft Cap Pop Art", desc = " A poster reprint of some cheap pop art."), -list(name = "- Safety: Internals", desc = " A poster instructing the viewer to wear internals in the rare environments where there is no oxygen or the air has been rendered toxic."), -list(name = "- Safety: Eye Protection", desc = " A poster instructing the viewer to wear eye protection when dealing with chemicals, smoke, or bright lights."), -list(name = "- Safety: Report", desc = " A poster instructing the viewer to report suspicious activity to the security force."), -list(name = "- Report Crimes", desc = " A poster encouraging the swift reporting of crime or seditious behavior to station security."), -list(name = "- Ion Rifle", desc = " A poster displaying an Ion Rifle."), -list(name = "- Foam Force Ad", desc = " Foam Force, it's Foam or be Foamed!"), -list(name = "- Cohiba Robusto Ad", desc = " Cohiba Robusto, the classy cigar."), -list(name = "- 50th Anniversary Vintage Reprint", desc = " A reprint of a poster from 2505, commemorating the 50th Aniversery of Nanoposters Manufacturing, a subsidary of Nanotrasen."), -list(name = "- Fruit Bowl", desc = " Simple, yet awe-inspiring."), -list(name = "- PDA Ad", desc = " A poster advertising the latest PDA from Nanotrasen suppliers."), -list(name = "- Enlist", desc = " Enlist in the Nanotrasen Deathsquadron reserves today!"), -list(name = "- Nanomichi Ad", desc = " A poster advertising Nanomichi brand audio cassettes."), -list(name = "- 12 Gauge", desc = " A poster boasting about the superiority of 12 gauge shotgun shells."), -list(name = "- High-Class Martini", desc = " I told you to shake it, no stirring."), -list(name = "- The Owl", desc = " The Owl would do his best to protect the station. Will you?"), -list(name = "- No ERP", desc = " This poster reminds the crew that Eroticism, Rape and Pornography are banned on Nanotrasen stations."), -list(name = "- Carbon Dioxide", desc = " This informational poster teaches the viewer what carbon dioxide is.") ) - -//########################## THE ACTUAL POSTER CODE ########################### +// The poster item /obj/item/weapon/poster - name = "poster" + name = "poorly coded poster" desc = "You probably shouldn't be holding this." icon = 'icons/obj/contraband.dmi' force = 0 resistance_flags = FLAMMABLE - var/serial = 0 - var/obj/structure/sign/poster/resulting_poster = null //The poster that will be created is initialised and stored through contraband/poster's constructor - var/rolled_official = 0 + var/poster_type + var/obj/structure/sign/poster/poster_structure +/obj/item/weapon/poster/New(loc, obj/structure/sign/poster/new_poster_structure) + ..() + poster_structure = new_poster_structure + if(!new_poster_structure && poster_type) + poster_structure = new poster_type(src) -/obj/item/weapon/poster/contraband - name = "contraband poster" - desc = "This poster comes with its own automatic adhesive mechanism, for easy pinning to any vertical surface. Its vulgar themes have marked it as contraband aboard Nanotrasen space facilities." + // posters store what name and description they would like their + // rolled up form to take. + if(poster_structure) + name = poster_structure.poster_item_name + desc = poster_structure.poster_item_desc + icon_state = poster_structure.poster_item_icon_state + + name = "[name] - [poster_structure.original_name]" + +/obj/item/weapon/poster/Destroy() + poster_structure = null + . = ..() + +// These icon_states may be overriden, but are for mapper's convinence +/obj/item/weapon/poster/random_contraband + name = "random contraband poster" + poster_type = /obj/structure/sign/poster/contraband/random icon_state = "rolled_poster" -/obj/item/weapon/poster/legit - name = "motivational poster" +/obj/item/weapon/poster/random_official + name = "random official poster" + poster_type = /obj/structure/sign/poster/official/random icon_state = "rolled_legit" - desc = "An official Nanotrasen-issued poster to foster a compliant and obedient workforce. It comes with state-of-the-art adhesive backing, for easy pinning to any vertical surface." - rolled_official = 1 -/obj/item/weapon/poster/New(turf/loc, given_serial = 0) - if(given_serial == 0) - if(!rolled_official) - serial = rand(1, NUM_OF_POSTER_DESIGNS) - resulting_poster = new(serial,rolled_official) - else - serial = rand(1, NUM_OF_POSTER_DESIGNS_LEGIT) - resulting_poster = new(serial,rolled_official) - else - serial = given_serial - //We don't give it a resulting_poster because if we called it with a given_serial it means that we're rerolling an already used poster. - name += " - No. [serial]" - ..(loc) - - -/*/obj/item/weapon/contraband/poster/attack(mob/M as mob, mob/user as mob) - src.add_fingerprint(user) - if(resulting_poster) - resulting_poster.add_fingerprint(user) - ..()*/ - -/*/obj/item/weapon/contraband/poster/attack(atom/A, mob/user as mob) //This shit is handled through the wall's attackby() - if(istype(A, /turf/closed/wall)) - if(resulting_poster == null) - return - else - var/turf/closed/wall/W = A - var/check = 0 - var/stuff_on_wall = 0 - for(var/obj/O in W.contents) //Let's see if it already has a poster on it or too much stuff - if(istype(O,/obj/structure/sign/poster)) - check = 1 - break - stuff_on_wall++ - if(stuff_on_wall == 3) - check = 1 - break - - if(check) - user << "The wall is far too cluttered to place a poster!" - return - - resulting_poster.loc = W //Looks like it's uncluttered enough. Place the poster - W.contents += resulting_poster - - qdel(src)*/ - - - -//############################## THE ACTUAL DECALS ########################### +// The poster sign/structure /obj/structure/sign/poster name = "poster" + var/original_name desc = "A large piece of space-resistant printed paper." icon = 'icons/obj/contraband.dmi' anchored = 1 - var/serial_number //Will hold the value of src.loc if nobody initialises it - var/ruined = 0 - var/official = 0 - var/placespeed = 37 // don't change this, otherwise the animation will not sync to the progress bar + var/ruined = FALSE + var/random_basetype + var/never_random = FALSE // used for the 'random' subclasses. -/obj/structure/sign/poster/New(serial,rolled_official) - if (!serial_number) - serial_number = serial - if(!official) - official = rolled_official - if(serial_number == loc) - if(!official) - serial_number = rand(1, NUM_OF_POSTER_DESIGNS) //This is for the mappers that want individual posters without having to use rolled posters. - if(official) - serial_number = rand(1, NUM_OF_POSTER_DESIGNS_LEGIT) - if(!official) - icon_state = "poster[serial_number]" - name += contrabandposters[serial_number][POSTERNAME] - desc += contrabandposters[serial_number][POSTERDESC] - else if (official) - icon_state = "poster[serial_number]_legit" - name += legitposters[serial_number][POSTERNAME] - desc += legitposters[serial_number][POSTERDESC] + var/poster_item_name = "hypothetical poster" + var/poster_item_desc = "This hypothetical poster item should not exist, let's be honest here." + var/poster_item_icon_state = "rolled_poster" + +/obj/structure/sign/poster/New() ..() + if(random_basetype) + randomise(random_basetype) + if(!ruined) + original_name = name // can't use initial because of random posters + name = "poster - [name]" + desc = "A large piece of space-resistant printed paper. [desc]" + +/obj/structure/sign/poster/proc/randomise(base_type) + var/list/poster_types = subtypesof(base_type) + var/list/approved_types = list() + for(var/t in poster_types) + var/obj/structure/sign/poster/T = t + if(initial(T.icon_state) && !initial(T.never_random)) + approved_types |= T + + var/obj/structure/sign/poster/selected = pick(approved_types) + + name = initial(selected.name) + desc = initial(selected.desc) + icon_state = initial(selected.icon_state) + poster_item_name = initial(selected.poster_item_name) + poster_item_desc = initial(selected.poster_item_desc) + poster_item_icon_state = initial(selected.poster_item_icon_state) + ruined = initial(selected.ruined) + /obj/structure/sign/poster/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wirecutters)) playsound(loc, I.usesound, 100, 1) if(ruined) - user << "You remove the remnants of the poster." + to_chat(user, "You remove the remnants of the poster.") qdel(src) else - user << "You carefully remove the poster from the wall." - roll_and_drop(user.loc, official) - + to_chat(user, "You carefully remove the poster from the wall.") + roll_and_drop(user.loc) /obj/structure/sign/poster/attack_hand(mob/user) if(ruined) return - var/temp_loc = user.loc - if((user.loc != temp_loc) || ruined ) - return visible_message("[user] rips [src] in a single, decisive motion!" ) playsound(src.loc, 'sound/items/poster_ripped.ogg', 100, 1) - ruined = 1 - icon_state = "poster_ripped" - name = "ripped poster" - desc = "You can't make out anything from the poster's original print. It's ruined." - add_fingerprint(user) -/obj/structure/sign/poster/proc/roll_and_drop(turf/location, official) + var/obj/structure/sign/poster/ripped/R = new(loc) + R.pixel_y = pixel_y + R.pixel_x = pixel_x + R.add_fingerprint(user) + qdel(src) + +/obj/structure/sign/poster/proc/roll_and_drop(loc) pixel_x = 0 pixel_y = 0 - var/obj/item/weapon/poster/P - if (!official) - P = new /obj/item/weapon/poster/contraband(src, serial_number) - else - P = new /obj/item/weapon/poster/legit(src, serial_number) - P.resulting_poster = src - P.forceMove(location) - loc = P + var/obj/item/weapon/poster/P = new(loc, src) + forceMove(P) + return P //seperated to reduce code duplication. Moved here for ease of reference and to unclutter r_wall/attackby() /turf/closed/wall/proc/place_poster(obj/item/weapon/poster/P, mob/user) - if(!P.resulting_poster) + if(!P.poster_structure) + to_chat(user, "[P] has no poster... inside it? Inform a coder!") return var/stuff_on_wall = 0 for(var/obj/O in contents) //Let's see if it already has a poster on it or too much stuff if(istype(O,/obj/structure/sign/poster)) - user << "The wall is far too cluttered to place a poster!" + to_chat(user, "The wall is far too cluttered to place a poster!") return stuff_on_wall++ if(stuff_on_wall == 3) - user << "The wall is far too cluttered to place a poster!" + to_chat(user, "The wall is far too cluttered to place a poster!") return - user << "You start placing the poster on the wall..." //Looks like it's uncluttered enough. Place the poster. + to_chat(user, "You start placing the poster on the wall..." ) - //declaring D because otherwise if P gets 'deconstructed' we lose our reference to P.resulting_poster - var/obj/structure/sign/poster/D = P.resulting_poster + var/obj/structure/sign/poster/D = P.poster_structure var/temp_loc = get_turf(user) flick("poster_being_set",D) - D.loc = src - D.official = P.rolled_official + D.forceMove(src) qdel(P) //delete it now to cut down on sanity checks afterwards. Agouri's code supports rerolling it anyway playsound(D.loc, 'sound/items/poster_being_created.ogg', 100, 1) - if(do_after(user,D.placespeed,target=src)) + if(do_after(user, PLACE_SPEED, target=src)) if(!D || QDELETED(D)) return if(iswallturf(src) && user && user.loc == temp_loc) //Let's check if everything is still there - user << "You place the poster!" + to_chat(user, "You place the poster!") return - D.roll_and_drop(temp_loc,D.official) - user << "The poster falls down!" + to_chat(user, "The poster falls down!") + D.roll_and_drop(temp_loc) + +// Various possible posters follow + +/obj/structure/sign/poster/ripped + ruined = TRUE + icon_state = "poster_ripped" + name = "ripped poster" + desc = "You can't make out anything from the poster's original print. It's ruined." + +/obj/structure/sign/poster/random + name = "random poster" // could even be ripped + icon_state = "random_anything" + never_random = TRUE + random_basetype = /obj/structure/sign/poster + +/obj/structure/sign/poster/contraband + poster_item_name = "contraband poster" + poster_item_desc = "This poster comes with its own automatic adhesive mechanism, for easy pinning to any vertical surface. Its vulgar themes have marked it as contraband aboard Nanotrasen space facilities." + poster_item_icon_state = "rolled_poster" + +/obj/structure/sign/poster/contraband/random + name = "random contraband poster" + icon_state = "random_contraband" + never_random = TRUE + random_basetype = /obj/structure/sign/poster/contraband + +/obj/structure/sign/poster/contraband/free_tonto + name = "Free Tonto" + desc = "A salvaged shred of a much larger flag, colors bled together and faded from age." + icon_state = "poster1" + +/obj/structure/sign/poster/contraband/atmosia_independence + name = "Atmosia Declaration of Independence" + desc = "A relic of a failed rebellion." + icon_state = "poster2" + +/obj/structure/sign/poster/contraband/fun_police + name = "Fun Police" + desc = "A poster condemning the station's security forces." + icon_state = "poster3" + +/obj/structure/sign/poster/contraband/lusty_xenomorph + name = "Lusty Xenomorph" + desc = "A heretical poster depicting the titular star of an equally heretical book." + icon_state = "poster4" + +/obj/structure/sign/poster/contraband/syndicate_recruitment + name = "Syndicate Recruitment" + desc = "See the galaxy! Shatter corrupt megacorporations! Join today!" + icon_state = "poster5" + +/obj/structure/sign/poster/contraband/clown + name = "Clown" + desc = "Honk." + icon_state = "poster6" + +/obj/structure/sign/poster/contraband/smoke + name = "Smoke" + desc = "A poster advertising a rival corporate brand of cigarettes." + icon_state = "poster7" + +/obj/structure/sign/poster/contraband/grey_tide + name = "Grey Tide" + desc = "A rebellious poster symbolizing assistant solidarity." + icon_state = "poster8" + +/obj/structure/sign/poster/contraband/missing_gloves + name = "Missing Gloves" + desc = "This poster references the uproar that followed Nanotrasen's financial cuts toward insulated-glove purchases." + icon_state = "poster9" + +/obj/structure/sign/poster/contraband/hacking_guide + name = "Hacking Guide" + desc = "This poster details the internal workings of the common Nanotrasen airlock. Sadly, it appears out of date." + icon_state = "poster10" + +/obj/structure/sign/poster/contraband/rip_badger + name = "RIP Badger" + desc = "This seditious poster references Nanotrasen's genocide of a space station full of badgers." + icon_state = "poster11" + +/obj/structure/sign/poster/contraband/ambrosia_vulgaris + name = "Ambrosia Vulgaris" + desc = "This poster is lookin' pretty trippy man." + icon_state = "poster12" + +/obj/structure/sign/poster/contraband/donut_corp + name = "Donut Corp." + desc = "This poster is an unauthorized advertisement for Donut Corp." + icon_state = "poster13" + +/obj/structure/sign/poster/contraband/eat + name = "EAT." + desc = "This poster promotes rank gluttony." + icon_state = "poster14" + +/obj/structure/sign/poster/contraband/tools + name = "Tools" + desc = "This poster looks like an advertisement for tools, but is in fact a subliminal jab at the tools at CentComm." + icon_state = "poster15" + +/obj/structure/sign/poster/contraband/power + name = "Power" + desc = "A poster that positions the seat of power outside Nanotrasen." + icon_state = "poster16" + +/obj/structure/sign/poster/contraband/space_cube + name = "Space Cube" + desc = "Ignorant of Nature's Harmonic 6 Side Space Cube Creation, the Spacemen are Dumb, Educated Singularity Stupid and Evil." + icon_state = "poster17" + +/obj/structure/sign/poster/contraband/communist_state + name = "Communist State" + desc = "All hail the Communist party!" + icon_state = "poster18" + +/obj/structure/sign/poster/contraband/lamarr + name = "Lamarr" + desc = "This poster depicts Lamarr. Probably made by a traitorous Research Director." + icon_state = "poster19" + +/obj/structure/sign/poster/contraband/borg_fancy_1 + name = "Borg Fancy" + desc = "Being fancy can be for any borg, just need a suit." + icon_state = "poster20" + +/obj/structure/sign/poster/contraband/borg_fancy_2 + name = "Borg Fancy v2" + desc = "Borg Fancy, Now only taking the most fancy." + icon_state = "poster21" + +/obj/structure/sign/poster/contraband/kss13 + name = "Kosmicheskaya Stantsiya 13 Does Not Exist" + desc = "A poster mocking CentComm's denial of the existence of the derelict station near Space Station 13." + icon_state = "poster22" + +/obj/structure/sign/poster/contraband/rebels_unite + name = "Rebels Unite" + desc = "A poster urging the viewer to rebel against Nanotrasen." + icon_state = "poster23" + +/obj/structure/sign/poster/contraband/c20r + // have fun seeing this poster in "spawn 'c20r'", admins... + name = "C-20r" + desc = "A poster advertising the Scarborough Arms C-20r." + icon_state = "poster24" + +/obj/structure/sign/poster/contraband/have_a_puff + name = "Have a Puff" + desc = "Who cares about lung cancer when you're high as a kite?" + icon_state = "poster25" + +/obj/structure/sign/poster/contraband/revolver + name = "Revolver" + desc = "Because seven shots are all you need." + icon_state = "poster26" + +/obj/structure/sign/poster/contraband/d_day_promo + name = "D-Day Promo" + desc = "A promotional poster for some rapper." + icon_state = "poster27" + +/obj/structure/sign/poster/contraband/syndicate_pistol + name = "Syndicate Pistol" + desc = "A poster advertising syndicate pistols as being 'classy as fuck'. It is covered in faded gang tags." + icon_state = "poster28" + +/obj/structure/sign/poster/contraband/energy_swords + name = "Energy Swords" + desc = "All the colors of the bloody murder rainbow." + icon_state = "poster29" + +/obj/structure/sign/poster/contraband/red_rum + name = "Red Rum" + desc = "Looking at this poster makes you want to kill." + icon_state = "poster30" + +/obj/structure/sign/poster/contraband/cc64k_ad + name = "CC 64K Ad" + desc = "The latest portable computer from Comrade Computing, with a whole 64kB of ram!" + icon_state = "poster31" + +/obj/structure/sign/poster/contraband/punch_shit + name = "Punch Shit" + desc = "Fight things for no reason, like a man!" + icon_state = "poster32" + +/obj/structure/sign/poster/contraband/the_griffin + name = "The Griffin" + desc = "The Griffin commands you to be the worst you can be. Will you?" + icon_state = "poster33" + +/obj/structure/sign/poster/contraband/lizard + name = "Lizard" + desc = "This lewd poster depicts a lizard preparing to mate." + icon_state = "poster34" + +/obj/structure/sign/poster/contraband/free_drone + name = "Free Drone" + desc = "This poster commemorates the bravery of the rogue drone banned by CentComm." + icon_state = "poster35" + +/obj/structure/sign/poster/contraband/busty_backdoor_xeno_babes_6 + name = "Busty Backdoor Xeno Babes 6" + desc = "Get a load, or give, of these all natural Xenos!" + icon_state = "poster36" + +/obj/structure/sign/poster/contraband/robust_softdrinks + name = "Robust Softdrinks" + desc = "Robust Softdrinks: More robust than a toolbox to the head!" + icon_state = "poster37" + +/obj/structure/sign/poster/contraband/shamblers_juice + name = "Shambler's Juice" + desc = "~Shake me up some of that Shambler's Juice!~" + icon_state = "poster38" + +/obj/structure/sign/poster/contraband/pwr_game + name = "Pwr Game" + desc = "The POWER that gamers CRAVE! In partnership with Vlad's Salad." + icon_state = "poster39" + +/obj/structure/sign/poster/contraband/sun_kist + name = "Sun-kist" + desc = "Drink the stars!" + icon_state = "poster40" + +/obj/structure/sign/poster/contraband/space_cola + name = "Space Cola" + desc = "Your favorite cola, in space." + icon_state = "poster41" + +/obj/structure/sign/poster/contraband/space_up + name = "Space-Up!" + desc = "Sucked out into space by the FLAVOR!" + icon_state = "poster42" + +/obj/structure/sign/poster/contraband/kudzu + name = "Kudzu" + desc = "A poster advertising a movie about plants. How dangerous could they possibly be?" + icon_state = "poster43" + +/obj/structure/sign/poster/contraband/masked_men + name = "Masked Men" + desc = "A poster advertising a movie about some masked men." + icon_state = "poster44" + +/obj/structure/sign/poster/official + poster_item_name = "motivational poster" + poster_item_desc = "An official Nanotrasen-issued poster to foster a compliant and obedient workforce. It comes with state-of-the-art adhesive backing, for easy pinning to any vertical surface." + poster_item_icon_state = "rolled_legit" + +/obj/structure/sign/poster/official/random + name = "random official poster" + random_basetype = /obj/structure/sign/poster/official + icon_state = "random_official" + never_random = TRUE + +/obj/structure/sign/poster/official/here_for_your_safety + name = "Here For Your Safety" + desc = "A poster glorifying the station's security force." + icon_state = "poster1_legit" + +/obj/structure/sign/poster/official/nanotrasen_logo + name = "Nanotrasen Logo" + desc = "A poster depicting the Nanotrasen logo." + icon_state = "poster2_legit" + +/obj/structure/sign/poster/official/cleanliness + name = "Cleanliness" + desc = "A poster warning of the dangers of poor hygiene." + icon_state = "poster3_legit" + +/obj/structure/sign/poster/official/help_others + name = "Help Others" + desc = "A poster encouraging you to help fellow crewmembers." + icon_state = "poster4_legit" + +/obj/structure/sign/poster/official/build + name = "Build" + desc = "A poster glorifying the engineering team." + icon_state = "poster5_legit" + +/obj/structure/sign/poster/official/bless_this_spess + name = "Bless This Spess" + desc = "A poster blessing this area." + icon_state = "poster6_legit" + +/obj/structure/sign/poster/official/science + name = "Science" + desc = "A poster depicting an atom." + icon_state = "poster7_legit" + +/obj/structure/sign/poster/official/ian + name = "Ian" + desc = "Arf arf. Yap." + icon_state = "poster8_legit" + +/obj/structure/sign/poster/official/obey + name = "Obey" + desc = "A poster instructing the viewer to obey authority." + icon_state = "poster9_legit" + +/obj/structure/sign/poster/official/walk + name = "Walk" + desc = "A poster instructing the viewer to walk instead of running." + icon_state = "poster10_legit" + +/obj/structure/sign/poster/official/state_laws + name = "State Laws" + desc = "A poster instructing cyborgs to state their laws." + icon_state = "poster11_legit" + +/obj/structure/sign/poster/official/love_ian + name = "Love Ian" + desc = "Ian is love, Ian is life." + icon_state = "poster12_legit" + +/obj/structure/sign/poster/official/space_cops + name = "Space Cops." + desc = "A poster advertising the television show Space Cops." + icon_state = "poster13_legit" + +/obj/structure/sign/poster/official/ue_no + name = "Ue No." + desc = "This thing is all in Japanese." + icon_state = "poster14_legit" + +/obj/structure/sign/poster/official/get_your_legs + name = "Get Your LEGS" + desc = "LEGS: Leadership, Experience, Genius, Subordination." + icon_state = "poster15_legit" + +/obj/structure/sign/poster/official/do_not_question + name = "Do Not Question" + desc = "A poster instructing the viewer not to ask about things they aren't meant to know." + icon_state = "poster16_legit" + +/obj/structure/sign/poster/official/work_for_a_future + name = "Work For A Future" + desc = " A poster encouraging you to work for your future." + icon_state = "poster17_legit" + +/obj/structure/sign/poster/official/soft_cap_pop_art + name = "Soft Cap Pop Art" + desc = "A poster reprint of some cheap pop art." + icon_state = "poster18_legit" + +/obj/structure/sign/poster/official/safety_internals + name = "Safety: Internals" + desc = "A poster instructing the viewer to wear internals in the rare environments where there is no oxygen or the air has been rendered toxic." + icon_state = "poster19_legit" + +/obj/structure/sign/poster/official/safety_eye_protection + name = "Safety: Eye Protection" + desc = "A poster instructing the viewer to wear eye protection when dealing with chemicals, smoke, or bright lights." + icon_state = "poster20_legit" + +/obj/structure/sign/poster/official/safety_report + name = "Safety: Report" + desc = "A poster instructing the viewer to report suspicious activity to the security force." + icon_state = "poster21_legit" + +/obj/structure/sign/poster/official/report_crimes + name = "Report Crimes" + desc = "A poster encouraging the swift reporting of crime or seditious behavior to station security." + icon_state = "poster22_legit" + +/obj/structure/sign/poster/official/ion_rifle + name = "Ion Rifle" + desc = "A poster displaying an Ion Rifle." + icon_state = "poster23_legit" + +/obj/structure/sign/poster/official/foam_force_ad + name = "Foam Force Ad" + desc = "Foam Force, it's Foam or be Foamed!" + icon_state = "poster24_legit" + +/obj/structure/sign/poster/official/cohiba_robusto_ad + name = "Cohiba Robusto Ad" + desc = "Cohiba Robusto, the classy cigar." + icon_state = "poster25_legit" + +/obj/structure/sign/poster/official/anniversary_vintage_reprint + name = "50th Anniversary Vintage Reprint" + desc = "A reprint of a poster from 2505, commemorating the 50th Aniversery of Nanoposters Manufacturing, a subsidary of Nanotrasen." + icon_state = "poster26_legit" + +/obj/structure/sign/poster/official/fruit_bowl + name = "Fruit Bowl" + desc = " Simple, yet awe-inspiring." + icon_state = "poster27_legit" + +/obj/structure/sign/poster/official/pda_ad + name = "PDA Ad" + desc = "A poster advertising the latest PDA from Nanotrasen suppliers." + icon_state = "poster28_legit" + +/obj/structure/sign/poster/official/enlist + name = "Enlist" // but I thought deathsquad was never acknowledged + desc = "Enlist in the Nanotrasen Deathsquadron reserves today!" + icon_state = "poster29_legit" + +/obj/structure/sign/poster/official/nanomichi_ad + name = "Nanomichi Ad" + desc = " A poster advertising Nanomichi brand audio cassettes." + icon_state = "poster30_legit" + +/obj/structure/sign/poster/official/twelve_gauge + name = "12 Gauge" + desc = "A poster boasting about the superiority of 12 gauge shotgun shells." + icon_state = "poster31_legit" + +/obj/structure/sign/poster/official/high_class_martini + name = "High-Class Martini" + desc = "I told you to shake it, no stirring." + icon_state = "poster32_legit" + +/obj/structure/sign/poster/official/the_owl + name = "The Owl" + desc = "The Owl would do his best to protect the station. Will you?" + icon_state = "poster33_legit" + +/obj/structure/sign/poster/official/no_erp + name = "No ERP" + desc = "This poster reminds the crew that Eroticism, Rape and Pornography are banned on Nanotrasen stations." + icon_state = "poster34_legit" + +/obj/structure/sign/poster/official/wtf_is_co2 + name = "Carbon Dioxide" + desc = "This informational poster teaches the viewer what carbon dioxide is." + icon_state = "poster35_legit" + +#undef PLACE_SPEED diff --git a/code/game/objects/effects/countdown.dm b/code/game/objects/effects/countdown.dm index 73a69eb7f0..520158dfb0 100644 --- a/code/game/objects/effects/countdown.dm +++ b/code/game/objects/effects/countdown.dm @@ -20,7 +20,7 @@ /obj/effect/countdown/examine(mob/user) . = ..() - user << "This countdown is displaying: [displayed_text]" + to_chat(user, "This countdown is displaying: [displayed_text]") /obj/effect/countdown/proc/attach(atom/A) attached_to = A diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm index 5fe401e7ba..b8ea00bbb0 100644 --- a/code/game/objects/effects/decals/Cleanable/humans.dm +++ b/code/game/objects/effects/decals/Cleanable/humans.dm @@ -170,7 +170,7 @@ var/obj/item/clothing/shoes/S = shoe . += "some [initial(S.name)] \icon[S]\n" - user << . + to_chat(user, .) /obj/effect/decal/cleanable/blood/footprints/replace_decal(obj/effect/decal/cleanable/C) if(blood_state != C.blood_state) //We only replace footprints of the same type as us diff --git a/code/game/objects/effects/decals/Cleanable/misc.dm b/code/game/objects/effects/decals/Cleanable/misc.dm index 6eacaf7289..1fef05d7fc 100644 --- a/code/game/objects/effects/decals/Cleanable/misc.dm +++ b/code/game/objects/effects/decals/Cleanable/misc.dm @@ -40,9 +40,13 @@ /obj/effect/decal/cleanable/greenglow name = "glowing goo" desc = "Jeez. I hope that's not for lunch." - luminosity = 1 + light_color = LIGHT_COLOR_GREEN icon_state = "greenglow" +/obj/effect/decal/cleanable/greenglow/Initialize(mapload) + ..() + set_light(1) + /obj/effect/decal/cleanable/greenglow/ex_act() return @@ -156,3 +160,21 @@ icon = 'icons/effects/tomatodecal.dmi' icon_state = "salt_pile" gender = NEUTER + +/obj/effect/decal/cleanable/glitter + name = "generic glitter pile" + desc = "the herpes of arts and crafts" + icon = 'icons/effects/tile_effects.dmi' + gender = NEUTER + +/obj/effect/decal/cleanable/glitter/pink + name = "pink glitter" + icon_state = "plasma" + +/obj/effect/decal/cleanable/glitter/white + name = "white glitter" + icon_state = "nitrous_oxide" + +/obj/effect/decal/cleanable/glitter/blue + name = "blue glitter" + icon_state = "freon" diff --git a/code/game/objects/effects/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm index 8c3bab3aac..6364658984 100644 --- a/code/game/objects/effects/decals/cleanable.dm +++ b/code/game/objects/effects/decals/cleanable.dm @@ -27,12 +27,12 @@ if(src.reagents && W.reagents) . = 1 //so the containers don't splash their content on the src while scooping. if(!src.reagents.total_volume) - user << "[src] isn't thick enough to scoop up!" + to_chat(user, "[src] isn't thick enough to scoop up!") return if(W.reagents.total_volume >= W.reagents.maximum_volume) - user << "[W] is full!" + to_chat(user, "[W] is full!") return - user << "You scoop up [src] into [W]!" + to_chat(user, "You scoop up [src] into [W]!") reagents.trans_to(W, reagents.total_volume) if(!reagents.total_volume) //scooped up all of it qdel(src) @@ -45,7 +45,7 @@ var/added_heat = (hotness / 100) src.reagents.chem_temp = min(src.reagents.chem_temp + added_heat, hotness) src.reagents.handle_reactions() - user << "You heat [src] with [W]!" + to_chat(user, "You heat [src] with [W]!") else return ..() diff --git a/code/game/objects/effects/effect_system/effects_foam.dm b/code/game/objects/effects/effect_system/effects_foam.dm index f2a3d61d19..9ca086fad2 100644 --- a/code/game/objects/effects/effect_system/effects_foam.dm +++ b/code/game/objects/effects/effect_system/effects_foam.dm @@ -220,7 +220,7 @@ /obj/structure/foamedmetal/attack_hand(mob/user) user.changeNext_move(CLICK_CD_MELEE) user.do_attack_animation(src, ATTACK_EFFECT_PUNCH) - user << "You hit the metal foam but bounce off it!" + to_chat(user, "You hit the metal foam but bounce off it!") playsound(src.loc, 'sound/weapons/tap.ogg', 100, 1) /obj/structure/foamedmetal/CanPass(atom/movable/mover, turf/target, height=1.5) diff --git a/code/game/objects/effects/effect_system/effects_other.dm b/code/game/objects/effects/effect_system/effects_other.dm index 503f120dd4..3ac1e56520 100644 --- a/code/game/objects/effects/effect_system/effects_other.dm +++ b/code/game/objects/effects/effect_system/effects_other.dm @@ -130,7 +130,7 @@ for(var/mob/M in viewers(1, location)) if (prob (50 * amount)) - M << "The explosion knocks you down." + to_chat(M, "The explosion knocks you down.") M.Weaken(rand(1,5)) return else diff --git a/code/game/objects/effects/effect_system/effects_smoke.dm b/code/game/objects/effects/effect_system/effects_smoke.dm index 0ec7e137bb..3f89015360 100644 --- a/code/game/objects/effects/effect_system/effects_smoke.dm +++ b/code/game/objects/effects/effect_system/effects_smoke.dm @@ -27,7 +27,7 @@ for(var/i = 0, i < frames, i++) alpha -= step if(alpha < 160) - opacity = 0 //if we were blocking view, we aren't now because we're fading out + set_opacity(0) //if we were blocking view, we aren't now because we're fading out stoplag() /obj/effect/particle_effect/smoke/New() @@ -88,7 +88,7 @@ S.lifetime = lifetime if(S.amount>0) if(opaque) - S.opacity = 1 + S.set_opacity(TRUE) newsmokes.Add(S) if(newsmokes.len) diff --git a/code/game/objects/effects/effect_system/effects_sparks.dm b/code/game/objects/effects/effect_system/effects_sparks.dm index f6f07d16b3..054416efc2 100644 --- a/code/game/objects/effects/effect_system/effects_sparks.dm +++ b/code/game/objects/effects/effect_system/effects_sparks.dm @@ -9,7 +9,7 @@ name = "sparks" icon_state = "sparks" anchored = 1 - luminosity = 1 + light_range = 1 /obj/effect/particle_effect/sparks/New() ..() diff --git a/code/game/objects/effects/glowshroom.dm b/code/game/objects/effects/glowshroom.dm index 7ca0ee3887..80255d3e6c 100644 --- a/code/game/objects/effects/glowshroom.dm +++ b/code/game/objects/effects/glowshroom.dm @@ -15,27 +15,54 @@ var/list/blacklisted_glowshroom_turfs = typecacheof(list( layer = ABOVE_NORMAL_TURF_LAYER obj_integrity = 30 max_integrity = 30 - var/potency = 30 var/delay = 1200 var/floor = 0 - var/yield = 3 var/generation = 1 var/spreadIntoAdjacentChance = 60 + var/obj/item/seeds/myseed = /obj/item/seeds/glowshroom /obj/structure/glowshroom/glowcap name = "glowcap" + desc = "Mycena Ruthenia, a species of mushroom that, while it does glow in the dark, is not actually bioluminescent." icon_state = "glowcap" + myseed = /obj/item/seeds/glowshroom/glowcap -/obj/structure/glowshroom/single - yield = 0 +/obj/structure/glowshroom/shadowshroom + name = "shadowshroom" + desc = "Mycena Umbra, a species of mushroom that emits shadow instead of light." + icon_state = "shadowshroom" + myseed = /obj/item/seeds/glowshroom/shadowshroom + +/obj/structure/glowshroom/single/Spread() + return /obj/structure/glowshroom/examine(mob/user) . = ..() - user << "This is a [generation]\th generation [name]!" + to_chat(user, "This is a [generation]\th generation [name]!") -/obj/structure/glowshroom/New() +/obj/structure/glowshroom/Destroy() + if(myseed) + QDEL_NULL(myseed) + return ..() + +/obj/structure/glowshroom/New(loc, obj/item/seeds/newseed, mutate_stats) ..() - SetLuminosity(round(potency/10)) + if(newseed) + myseed = newseed.Copy() + myseed.forceMove(src) + else + myseed = new myseed(src) + if(mutate_stats) //baby mushrooms have different stats :3 + myseed.adjust_potency(rand(-3,6)) + myseed.adjust_yield(rand(-1,2)) + myseed.adjust_production(rand(-3,6)) + myseed.adjust_endurance(rand(-3,6)) + delay = delay - myseed.production * 100 //So the delay goes DOWN with better stats instead of up. :I + obj_integrity = myseed.endurance + max_integrity = myseed.endurance + if(myseed.get_gene(/datum/plant_gene/trait/glow)) + var/datum/plant_gene/trait/glow/G = myseed.get_gene(/datum/plant_gene/trait/glow) + set_light(G.glow_range(myseed), G.glow_power(myseed), G.glow_color) setDir(CalcDir()) var/base_icon_state = initial(icon_state) if(!floor) @@ -55,7 +82,9 @@ var/list/blacklisted_glowshroom_turfs = typecacheof(list( addtimer(CALLBACK(src, .proc/Spread), delay) /obj/structure/glowshroom/proc/Spread() - for(var/i = 1 to yield) + var/turf/ownturf = get_turf(src) + var/shrooms_planted = 0 + for(var/i in 1 to myseed.yield) if(prob(1/(generation * generation) * 100))//This formula gives you diminishing returns based on generation. 100% with 1st gen, decreasing to 25%, 11%, 6, 4, 2... var/list/possibleLocs = list() var/spreadsIntoAdjacent = FALSE @@ -66,6 +95,8 @@ var/list/blacklisted_glowshroom_turfs = typecacheof(list( for(var/turf/open/floor/earth in view(3,src)) if(is_type_in_typecache(earth, blacklisted_glowshroom_turfs)) continue + if(!ownturf.CanAtmosPass(earth)) + continue if(spreadsIntoAdjacent || !locate(/obj/structure/glowshroom) in view(1,earth)) possibleLocs += earth CHECK_TICK @@ -86,16 +117,16 @@ var/list/blacklisted_glowshroom_turfs = typecacheof(list( if(shroomCount >= placeCount) continue - var/obj/structure/glowshroom/child = new type(newLoc)//The baby mushrooms have different stats :3 - child.potency = max(potency + rand(-3,6), 0) - child.yield = max(yield + rand(-1,2), 0) - child.delay = max(delay + rand(-30,60), 0) - var/newhealth = max(obj_integrity + rand(-3,6), 1) - child.obj_integrity = newhealth - child.max_integrity = newhealth + var/obj/structure/glowshroom/child = new type(newLoc, myseed, TRUE) child.generation = generation + 1 + shrooms_planted++ CHECK_TICK + else + shrooms_planted++ //if we failed due to generation, don't try to plant one later + if(shrooms_planted < myseed.yield) //if we didn't get all possible shrooms planted, try again later + myseed.yield -= shrooms_planted + addtimer(CALLBACK(src, .proc/Spread), delay) /obj/structure/glowshroom/proc/CalcDir(turf/location = loc) var/direction = 16 diff --git a/code/game/objects/effects/landmarks.dm b/code/game/objects/effects/landmarks.dm index d69e8e2ac0..a8fc5a4ba1 100644 --- a/code/game/objects/effects/landmarks.dm +++ b/code/game/objects/effects/landmarks.dm @@ -76,7 +76,8 @@ /obj/effect/landmark/start/New() start_landmarks_list += src ..() - tag = "start*[name]" + if(name != initial(name)) + tag = "start*[name]" return 1 /obj/effect/landmark/start/Destroy() diff --git a/code/game/objects/effects/mines.dm b/code/game/objects/effects/mines.dm index 1f89258eb6..46c2306a79 100644 --- a/code/game/objects/effects/mines.dm +++ b/code/game/objects/effects/mines.dm @@ -8,7 +8,7 @@ var/triggered = 0 /obj/effect/mine/proc/mineEffect(mob/victim) - victim << "*click*" + to_chat(victim, "*click*") /obj/effect/mine/Crossed(AM as mob|obj) if(isturf(loc)) @@ -55,7 +55,7 @@ /obj/effect/mine/kickmine/mineEffect(mob/victim) if(isliving(victim) && victim.client) - victim << "You have been kicked FOR NO REISIN!" + to_chat(victim, "You have been kicked FOR NO REISIN!") qdel(victim.client) @@ -120,7 +120,7 @@ /obj/effect/mine/pickup/bloodbath/mineEffect(mob/living/carbon/victim) if(!victim.client || !istype(victim)) return - victim << "RIP AND TEAR" + to_chat(victim, "RIP AND TEAR") victim << 'sound/misc/e1m1.ogg' var/old_color = victim.client.color var/red_splash = list(1,0,0,0.8,0.2,0, 0.8,0,0.2,0.1,0,0) @@ -142,7 +142,7 @@ sleep(10) animate(victim.client,color = old_color, time = duration)//, easing = SINE_EASING|EASE_OUT) sleep(duration) - victim << "Your bloodlust seeps back into the bog of your subconscious and you regain self control." + to_chat(victim, "Your bloodlust seeps back into the bog of your subconscious and you regain self control.") qdel(chainsaw) qdel(src) @@ -154,7 +154,7 @@ /obj/effect/mine/pickup/healing/mineEffect(mob/living/carbon/victim) if(!victim.client || !istype(victim)) return - victim << "You feel great!" + to_chat(victim, "You feel great!") victim.revive(full_heal = 1, admin_revive = 1) /obj/effect/mine/pickup/speed @@ -166,8 +166,8 @@ /obj/effect/mine/pickup/speed/mineEffect(mob/living/carbon/victim) if(!victim.client || !istype(victim)) return - victim << "You feel fast!" + to_chat(victim, "You feel fast!") victim.status_flags |= GOTTAGOREALLYFAST sleep(duration) victim.status_flags &= ~GOTTAGOREALLYFAST - victim << "You slow down." \ No newline at end of file + to_chat(victim, "You slow down.") diff --git a/code/game/objects/effects/misc.dm b/code/game/objects/effects/misc.dm index d14c7abc32..ad84d203d2 100644 --- a/code/game/objects/effects/misc.dm +++ b/code/game/objects/effects/misc.dm @@ -22,4 +22,12 @@ name = "mobl" var/master = null - var/list/container = list( ) \ No newline at end of file + var/list/container = list( ) + +//Makes a tile fully lit no matter what +/obj/effect/fullbright + icon = 'icons/effects/alphacolors.dmi' + icon_state = "white" + plane = LIGHTING_PLANE + layer = LIGHTING_LAYER + blend_mode = BLEND_ADD \ No newline at end of file diff --git a/code/game/objects/effects/overlays.dm b/code/game/objects/effects/overlays.dm index 51fb47d0c3..42c9f6f17f 100644 --- a/code/game/objects/effects/overlays.dm +++ b/code/game/objects/effects/overlays.dm @@ -325,7 +325,7 @@ damage *= multiplier duration = max(round(damage * 0.2), 1) ..() - SetLuminosity(3, 2) + set_light(1.5, 2, LIGHT_COLOR_ORANGE) /obj/effect/overlay/temp/ratvar/volt_hit/true/New(loc, caster, multiplier) ..() @@ -357,7 +357,7 @@ if(M.occupant) if(is_servant_of_ratvar(M.occupant)) continue - M.occupant << "Your [M.name] is struck by a [name]!" + to_chat(M.occupant, "Your [M.name] is struck by a [name]!") M.visible_message("[M] is struck by a [name]!") M.take_damage(damage, BURN, 0, 0) hit_amount++ @@ -424,10 +424,13 @@ color = "#FAE48C" layer = ABOVE_MOB_LAYER duration = 70 - luminosity = 6 + light_range = 5 + light_power = 2 + light_color = "#FAE48C" /obj/effect/overlay/temp/ratvar/sigil/transgression/New() ..() + update_light() var/oldtransform = transform animate(src, transform = matrix()*2, time = 5) animate(transform = oldtransform, alpha = 0, time = 65) @@ -436,6 +439,13 @@ color = "#1E8CE1" icon_state = "sigilactivepulse" layer = ABOVE_MOB_LAYER + light_range = 1.4 + light_power = 0.5 + light_color = "#1E8CE1" + +/obj/effect/overlay/temp/ratvar/sigil/vitality/New() + ..() + update_light() /obj/effect/overlay/temp/ratvar/sigil/accession color = "#AF0AAF" diff --git a/code/game/objects/effects/portals.dm b/code/game/objects/effects/portals.dm index 821e915041..47ef4ad5a5 100644 --- a/code/game/objects/effects/portals.dm +++ b/code/game/objects/effects/portals.dm @@ -36,8 +36,7 @@ qdel(src) return if(lifespan > 0) - spawn(lifespan) - qdel(src) + QDEL_IN(src, lifespan) /obj/effect/portal/Destroy() portals -= src diff --git a/code/game/objects/effects/spawners/gibspawner.dm b/code/game/objects/effects/spawners/gibspawner.dm index 07efdc1094..8576307378 100644 --- a/code/game/objects/effects/spawners/gibspawner.dm +++ b/code/game/objects/effects/spawners/gibspawner.dm @@ -10,7 +10,7 @@ ..() if(gibtypes.len != gibamounts.len || gibamounts.len != gibdirections.len) - world << "Gib list length mismatch!" + to_chat(world, "Gib list length mismatch!") return var/obj/effect/decal/cleanable/blood/gibs/gib = null diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm index cc9a3e9d17..e4f154899c 100644 --- a/code/game/objects/effects/spawners/lootdrop.dm +++ b/code/game/objects/effects/spawners/lootdrop.dm @@ -97,6 +97,7 @@ /obj/item/device/assembly/timer = 3, /obj/item/device/flashlight = 4, /obj/item/device/flashlight/pen = 1, + /obj/item/device/flashlight/glowstick/random = 4, /obj/item/device/multitool = 2, /obj/item/device/radio/off = 2, /obj/item/device/t_scanner = 5, @@ -116,8 +117,8 @@ /obj/item/clothing/head/cone = 1, /obj/item/weapon/coin/silver = 1, /obj/item/weapon/coin/twoheaded = 1, - /obj/item/weapon/poster/contraband = 1, - /obj/item/weapon/poster/legit = 1, + /obj/item/weapon/poster/random_contraband = 1, + /obj/item/weapon/poster/random_official = 1, /obj/item/weapon/crowbar = 1, /obj/item/weapon/crowbar/red = 1, /obj/item/weapon/extinguisher = 11, @@ -158,6 +159,7 @@ /obj/item/clothing/shoes/laceup = 1, /obj/item/weapon/storage/secure/briefcase = 3, /obj/item/weapon/storage/toolbox/artistic = 2, + /obj/item/toy/eightball = 1, "" = 3 ) @@ -186,3 +188,9 @@ /obj/item/organ/body_egg/alien_embryo = 1, /obj/item/organ/hivelord_core = 2) lootcount = 3 + +/obj/effect/spawner/lootdrop/two_percent_xeno_egg_spawner + name = "2% chance xeno egg spawner" + loot = list( + /obj/effect/decal/remains/xeno = 49, + /obj/effect/spawner/xeno_egg_delivery = 1) diff --git a/code/game/objects/effects/spawners/xeno_egg_delivery.dm b/code/game/objects/effects/spawners/xeno_egg_delivery.dm new file mode 100644 index 0000000000..639df98214 --- /dev/null +++ b/code/game/objects/effects/spawners/xeno_egg_delivery.dm @@ -0,0 +1,20 @@ +/obj/effect/spawner/xeno_egg_delivery + name = "xeno egg delivery" + icon = 'icons/mob/alien.dmi' + icon_state = "egg_growing" + var/announcement_time = 1200 + +/obj/effect/spawner/xeno_egg_delivery/Initialize(mapload) + ..() + var/turf/T = get_turf(src) + var/area/A = get_area(T) + + new /obj/structure/alien/egg(T) + new /obj/effect/overlay/temp/gravpush(T) + playsound(T, 'sound/items/party_horn.ogg', 50, 1, -1) + + message_admins("An alien egg has been delivered to [A] at [ADMIN_COORDJMP(T)].") + log_game("An alien egg has been delivered to [A] at [COORD(T)]") + var/message = "Attention [station_name()], we have entrusted you with a research specimen in [A]. Remember to follow all safety precautions when dealing with the specimen." + addtimer(CALLBACK(GLOBAL_PROC, /.proc/print_command_report, message), announcement_time) + qdel(src) diff --git a/code/game/objects/effects/spiders.dm b/code/game/objects/effects/spiders.dm index 45d8c24098..c62260080d 100644 --- a/code/game/objects/effects/spiders.dm +++ b/code/game/objects/effects/spiders.dm @@ -41,7 +41,7 @@ return 1 else if(isliving(mover)) if(prob(50)) - mover << "You get stuck in \the [src] for a moment." + to_chat(mover, "You get stuck in \the [src] for a moment.") return 0 else if(istype(mover, /obj/item/projectile)) return prob(30) @@ -198,7 +198,7 @@ var/breakout_time = 1 user.changeNext_move(CLICK_CD_BREAKOUT) user.last_special = world.time + CLICK_CD_BREAKOUT - user << "You struggle against the tight bonds... (This will take about [breakout_time] minutes.)" + to_chat(user, "You struggle against the tight bonds... (This will take about [breakout_time] minutes.)") visible_message("You see something struggling and writhing in \the [src]!") if(do_after(user,(breakout_time*60*10), target = src)) if(!user || user.stat != CONSCIOUS || user.loc != src) diff --git a/code/game/objects/effects/step_triggers.dm b/code/game/objects/effects/step_triggers.dm index 9c27023109..63b5075cc7 100644 --- a/code/game/objects/effects/step_triggers.dm +++ b/code/game/objects/effects/step_triggers.dm @@ -29,7 +29,7 @@ /obj/effect/step_trigger/message/Trigger(mob/M) if(M.client) - M << "[message]" + to_chat(M, "[message]") if(once) qdel(src) diff --git a/code/game/objects/effects/wanted_poster.dm b/code/game/objects/effects/wanted_poster.dm index 27040ab811..6d4f309aeb 100644 --- a/code/game/objects/effects/wanted_poster.dm +++ b/code/game/objects/effects/wanted_poster.dm @@ -1,14 +1,11 @@ -/obj/item/weapon/poster/legit/wanted - var/poster_desc +/obj/item/weapon/poster/wanted icon_state = "rolled_poster" -/obj/item/weapon/poster/legit/wanted/New(turf/loc, icon/person_icon, wanted_name, description) - ..(loc) +/obj/item/weapon/poster/wanted/New(turf/loc, icon/person_icon, wanted_name, description) + var/obj/structure/sign/poster/wanted/wanted_poster = new(person_icon, wanted_name, description) + ..(loc, wanted_poster) name = "wanted poster ([wanted_name])" desc = "A wanted poster for [wanted_name]." - poster_desc = description - qdel(resulting_poster) - resulting_poster = new /obj/structure/sign/poster/wanted(person_icon, wanted_name, poster_desc) /obj/structure/sign/poster/wanted var/wanted_name @@ -35,14 +32,8 @@ the_icon.Insert(icon('icons/obj/contraband.dmi', "poster_ripped"), "poster_ripped") icon = the_icon -/obj/structure/sign/poster/wanted/attack_hand(mob/user) - ..() - -/obj/structure/sign/poster/wanted/attackby() - ..() - /obj/structure/sign/poster/wanted/roll_and_drop(turf/location) - var/obj/item/weapon/poster/legit/wanted/P = new(src, null, wanted_name, desc) - P.resulting_poster = src - P.loc = location - loc = P + var/obj/item/weapon/poster/P = ..(location) + P.name = "wanted poster ([wanted_name])" + P.desc = "A wanted poster for [wanted_name]." + return P diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index f04f45009c..76206ff1fb 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -90,6 +90,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s var/block_chance = 0 var/hit_reaction_chance = 0 //If you want to have something unrelated to blocking/armour piercing etc. Maybe not needed, but trying to think ahead/allow more freedom + var/reach = 1 //In tiles, how far this weapon can reach; 1 for adjacent, which is default //The list of slots by priority. equip_to_appropriate_slot() uses this list. Doesn't matter if a mob type doesn't have a slot. var/list/slot_equipment_priority = null // for default list, see /mob/proc/equip_to_appropriate_slot() @@ -98,7 +99,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s // non-clothing items var/datum/dog_fashion/dog_fashion = null -/obj/item/New() +/obj/item/Initialize() if (!materials) materials = list() ..() @@ -160,7 +161,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s else pronoun = "It is" var/size = weightclass2text(src.w_class) - user << "[pronoun] a [size] item." //e.g. They are a small item. or It is a bulky item. + to_chat(user, "[pronoun] a [size] item." ) if(user.research_scanner) //Mob has a research scanner active. var/msg = "*--------*
" @@ -181,7 +182,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s else msg += "No extractable materials detected.
" msg += "*--------*" - user << msg + to_chat(user, msg) /obj/item/attack_self(mob/user) @@ -209,9 +210,9 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s if(istype(C)) if(C.gloves && (C.gloves.max_heat_protection_temperature > 360)) extinguish() - user << "You put out the fire on [src]." + to_chat(user, "You put out the fire on [src].") else - user << "You burn your hand on [src]!" + to_chat(user, "You burn your hand on [src]!") var/obj/item/bodypart/affecting = C.get_bodypart("[(user.active_hand_index % 2 == 0) ? "r" : "l" ]_arm") if(affecting && affecting.receive_damage( 0, 5 )) // 5 burn damage C.update_damage_overlays() @@ -223,7 +224,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s var/mob/living/carbon/C = user if(istype(C)) if(!C.gloves || (!(C.gloves.resistance_flags & (UNACIDABLE|ACID_PROOF)))) - user << "The acid on [src] burns your hand!" + to_chat(user, "The acid on [src] burns your hand!") var/obj/item/bodypart/affecting = C.get_bodypart("[(user.active_hand_index % 2 == 0) ? "r" : "l" ]_arm") if(affecting && affecting.receive_damage( 0, 5 )) // 5 burn damage C.update_damage_overlays() @@ -273,7 +274,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s if(!A.has_fine_manipulation) if(src in A.contents) // To stop Aliens having items stuck in their pockets A.dropItemToGround(src) - user << "Your claws aren't capable of such fine manipulation!" + to_chat(user, "Your claws aren't capable of such fine manipulation!") return attack_paw(A) @@ -291,35 +292,32 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s // I have cleaned it up a little, but it could probably use more. -Sayu // The lack of ..() is intentional, do not add one /obj/item/attackby(obj/item/weapon/W, mob/user, params) - if(unique_rename && istype(W, /obj/item/weapon/pen)) - rewrite(user) - else - if(istype(W,/obj/item/weapon/storage)) - var/obj/item/weapon/storage/S = W - if(S.use_to_pickup) - if(S.collection_mode) //Mode is set to collect multiple items on a tile and we clicked on a valid one. - if(isturf(loc)) - var/list/rejections = list() + if(istype(W,/obj/item/weapon/storage)) + var/obj/item/weapon/storage/S = W + if(S.use_to_pickup) + if(S.collection_mode) //Mode is set to collect multiple items on a tile and we clicked on a valid one. + if(isturf(loc)) + var/list/rejections = list() - var/list/things = loc.contents.Copy() - if (S.collection_mode == 2) - things = typecache_filter_list(things, typecacheof(type)) + var/list/things = loc.contents.Copy() + if (S.collection_mode == 2) + things = typecache_filter_list(things, typecacheof(type)) - var/len = things.len - if(!len) - user << "You failed to pick up anything with [S]." - return - var/datum/progressbar/progress = new(user, len, loc) + var/len = things.len + if(!len) + to_chat(user, "You failed to pick up anything with [S].") + return + var/datum/progressbar/progress = new(user, len, loc) - while (do_after(user, 10, TRUE, S, FALSE, CALLBACK(src, .proc/handle_mass_pickup, S, things, loc, rejections, progress))) - sleep(1) + while (do_after(user, 10, TRUE, S, FALSE, CALLBACK(src, .proc/handle_mass_pickup, S, things, loc, rejections, progress))) + sleep(1) - qdel(progress) + qdel(progress) - user << "You put everything you could [S.preposition] [S]." + to_chat(user, "You put everything you could [S.preposition] [S].") - else if(S.can_be_inserted(src)) - S.handle_item_insertion(src) + else if(S.can_be_inserted(src)) + S.handle_item_insertion(src) /obj/item/proc/handle_mass_pickup(obj/item/weapon/storage/S, list/things, atom/thing_loc, list/rejections, datum/progressbar/progress) for(var/obj/item/I in things) @@ -438,22 +436,22 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) || \ (H.glasses && H.glasses.flags_cover & GLASSESCOVERSEYES)) // you can't stab someone in the eyes wearing a mask! - user << "You're going to need to remove that mask/helmet/glasses first!" + to_chat(user, "You're going to need to remove that mask/helmet/glasses first!") return if(ismonkey(M)) var/mob/living/carbon/monkey/Mo = M if(Mo.wear_mask && Mo.wear_mask.flags_cover & MASKCOVERSEYES) // you can't stab someone in the eyes wearing a mask! - user << "You're going to need to remove that mask/helmet/glasses first!" + to_chat(user, "You're going to need to remove that mask/helmet/glasses first!") return if(isalien(M))//Aliens don't have eyes./N slimes also don't have eyes! - user << "You cannot locate any eyes on this creature!" + to_chat(user, "You cannot locate any eyes on this creature!") return if(isbrain(M)) - user << "You cannot locate any organic eyes on this brain!" + to_chat(user, "You cannot locate any organic eyes on this brain!") return src.add_fingerprint(user) @@ -484,20 +482,20 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s if(M.eye_damage >= 10) M.adjust_blurriness(15) if(M.stat != DEAD) - M << "Your eyes start to bleed profusely!" + to_chat(M, "Your eyes start to bleed profusely!") if(!(M.disabilities & (NEARSIGHT | BLIND))) if(M.become_nearsighted()) - M << "You become nearsighted!" + to_chat(M, "You become nearsighted!") if(prob(50)) if(M.stat != DEAD) if(M.drop_item()) - M << "You drop what you're holding and clutch at your eyes!" + to_chat(M, "You drop what you're holding and clutch at your eyes!") M.adjust_blurriness(10) M.Paralyse(1) M.Weaken(2) if (prob(M.eye_damage - 10 + 1)) if(M.become_blind()) - M << "You go blind!" + to_chat(M, "You go blind!") /obj/item/clean_blood() . = ..() diff --git a/code/game/objects/items/apc_frame.dm b/code/game/objects/items/apc_frame.dm index 4865d75102..fb6c349f17 100644 --- a/code/game/objects/items/apc_frame.dm +++ b/code/game/objects/items/apc_frame.dm @@ -8,37 +8,37 @@ var/inverse = 0 // For inverse dir frames like light fixtures. -/obj/item/wallframe/proc/try_build(turf/on_wall) - if(get_dist(on_wall,usr)>1) +/obj/item/wallframe/proc/try_build(turf/on_wall, mob/user) + if(get_dist(on_wall,user)>1) return - var/ndir = get_dir(on_wall, usr) + var/ndir = get_dir(on_wall, user) if(!(ndir in cardinal)) return - var/turf/loc = get_turf(usr) - var/area/A = loc.loc - if(!isfloorturf(loc)) - usr << "You cannot place [src] on this spot!" + var/turf/T = get_turf(user) + var/area/A = get_area(T) + if(!isfloorturf(T)) + to_chat(user, "You cannot place [src] on this spot!") return - if(A.requires_power == 0 || istype(A, /area/space)) - usr << "You cannot place [src] in this area!" + if(A.always_unpowered) + to_chat(user, "You cannot place [src] in this area!") return - if(gotwallitem(loc, ndir, inverse*2)) - usr << "There's already an item on this wall!" + if(gotwallitem(T, ndir, inverse*2)) + to_chat(user, "There's already an item on this wall!") return - return 1 + return TRUE -/obj/item/wallframe/proc/attach(turf/on_wall) +/obj/item/wallframe/proc/attach(turf/on_wall, mob/user) if(result_path) playsound(src.loc, 'sound/machines/click.ogg', 75, 1) - usr.visible_message("[usr.name] attaches [src] to the wall.", + user.visible_message("[user.name] attaches [src] to the wall.", "You attach [src] to the wall.", "You hear clicking.") - var/ndir = get_dir(on_wall,usr) + var/ndir = get_dir(on_wall,user) if(inverse) ndir = turn(ndir, 180) - var/obj/O = new result_path(get_turf(usr), ndir, 1) + var/obj/O = new result_path(get_turf(user), ndir, 1) after_attach(O) qdel(src) @@ -58,7 +58,7 @@ var/glass_amt = round(materials[MAT_GLASS]/MINERAL_MATERIAL_AMOUNT) if(istype(W, /obj/item/weapon/wrench) && (metal_amt || glass_amt)) - user << "You dismantle [src]." + to_chat(user, "You dismantle [src].") if(metal_amt) new /obj/item/stack/sheet/metal(get_turf(src), metal_amt) if(glass_amt) @@ -77,24 +77,27 @@ inverse = 1 -/obj/item/wallframe/apc/try_build(turf/on_wall) +/obj/item/wallframe/apc/try_build(turf/on_wall, user) if(!..()) return - var/turf/loc = get_turf(usr) - var/area/A = loc.loc - if (A.get_apc()) - usr << "This area already has APC!" + var/turf/T = get_turf(user) + var/area/A = get_area(T) + if(A.get_apc()) + to_chat(user, "This area already has an APC!") return //only one APC per area - for(var/obj/machinery/power/terminal/T in loc) - if (T.master) - usr << "There is another network terminal here!" + if(!A.requires_power) + to_chat(user, "You cannot place [src] in this area!") + return //can't place apcs in areas with no power requirement + for(var/obj/machinery/power/terminal/E in T) + if(E.master) + to_chat(user, "There is another network terminal here!") return else - var/obj/item/stack/cable_coil/C = new /obj/item/stack/cable_coil(loc) + var/obj/item/stack/cable_coil/C = new /obj/item/stack/cable_coil(T) C.amount = 10 - usr << "You cut the cables and disassemble the unused power terminal." - qdel(T) - return 1 + to_chat(user, "You cut the cables and disassemble the unused power terminal.") + qdel(E) + return TRUE /obj/item/weapon/electronics diff --git a/code/game/objects/items/blueprints.dm b/code/game/objects/items/blueprints.dm index f361f86431..f1e5b7f83b 100644 --- a/code/game/objects/items/blueprints.dm +++ b/code/game/objects/items/blueprints.dm @@ -127,7 +127,7 @@ showing = get_images(get_turf(user), viewing.view) viewing.images |= showing if(message) - user << message + to_chat(user, message) /obj/item/areaeditor/blueprints/proc/clear_viewer(mob/user, message = "") if(viewing) @@ -135,7 +135,7 @@ viewing = null showing.Cut() if(message) - user << message + to_chat(user, message) /obj/item/areaeditor/blueprints/dropped(mob/user) ..() @@ -191,13 +191,13 @@ if(!istype(res,/list)) switch(res) if(ROOM_ERR_SPACE) - creator << "The new area must be completely airtight." + to_chat(creator, "The new area must be completely airtight.") return if(ROOM_ERR_TOOLARGE) - creator << "The new area is too large." + to_chat(creator, "The new area is too large.") return else - creator << "Error! Please notify administration." + to_chat(creator, "Error! Please notify administration.") return var/list/turfs = res @@ -205,7 +205,7 @@ if(!str || !length(str)) //cancel return if(length(str) > 50) - creator << "The given name is too long. The area remains undefined." + to_chat(creator, "The given name is too long. The area remains undefined.") return var/area/old = get_area(get_turf(creator)) var/old_gravity = old.has_gravity @@ -218,13 +218,20 @@ turfs -= turfs[key] turfs -= key if(A) - A.contents += turfs - A.SetDynamicLighting() + A.set_dynamic_lighting() + for (var/turf/T in turfs) + var/area/old_area = T.loc + A.contents += T + T.change_area(old_area, T) + else A = new A.setup(str) - A.contents += turfs - A.SetDynamicLighting() + A.set_dynamic_lighting() + for (var/turf/T in turfs) + var/area/old_area = T.loc + A.contents += T + T.change_area(old_area, T) A.has_gravity = old_gravity for(var/area/RA in old.related) @@ -233,7 +240,7 @@ var/obj/machinery/door/firedoor/FD = D FD.CalculateAffectingAreas() - creator << "You have created a new area, named [str]. It is now weather proof, and constructing an APC will allow it to be powered." + to_chat(creator, "You have created a new area, named [str]. It is now weather proof, and constructing an APC will allow it to be powered.") return 1 /obj/item/areaeditor/proc/edit_area() @@ -243,7 +250,7 @@ if(!str || !length(str) || str==prevname) //cancel return if(length(str) > 50) - usr << "The given name is too long. The area's name is unchanged." + to_chat(usr, "The given name is too long. The area's name is unchanged.") return set_area_machinery_title(A,str,prevname) for(var/area/RA in A.related) @@ -252,7 +259,7 @@ for(var/D in RA.firedoors) var/obj/machinery/door/firedoor/FD = D FD.CalculateAffectingAreas() - usr << "You rename the '[prevname]' to '[str]'." + to_chat(usr, "You rename the '[prevname]' to '[str]'.") interact() return 1 diff --git a/code/game/objects/items/body_egg.dm b/code/game/objects/items/body_egg.dm index e89a4df3a4..0ea39d72f1 100644 --- a/code/game/objects/items/body_egg.dm +++ b/code/game/objects/items/body_egg.dm @@ -8,7 +8,7 @@ /obj/item/organ/body_egg/on_find(mob/living/finder) ..() - finder << "You found an unknown alien organism in [owner]'s [zone]!" + to_chat(finder, "You found an unknown alien organism in [owner]'s [zone]!") /obj/item/organ/body_egg/New(loc) if(iscarbon(loc)) diff --git a/code/game/objects/items/bodybag.dm b/code/game/objects/items/bodybag.dm index b3d8606460..c1ccf0d440 100644 --- a/code/game/objects/items/bodybag.dm +++ b/code/game/objects/items/bodybag.dm @@ -41,13 +41,13 @@ /obj/item/bodybag/bluespace/examine(mob/user) ..() if(contents.len) - user << "You can make out the shapes of [contents.len] objects through the fabric." + to_chat(user, "You can make out the shapes of [contents.len] objects through the fabric.") /obj/item/bodybag/bluespace/Destroy() for(var/atom/movable/A in contents) A.forceMove(get_turf(src)) if(isliving(A)) - A << "You suddenly feel the space around you torn apart! You're free!" + to_chat(A, "You suddenly feel the space around you torn apart! You're free!") return ..() /obj/item/bodybag/bluespace/deploy_bodybag(mob/user, atom/location) @@ -55,21 +55,21 @@ for(var/atom/movable/A in contents) A.forceMove(R) if(isliving(A)) - A << "You suddenly feel air around you! You're free!" + to_chat(A, "You suddenly feel air around you! You're free!") R.open(user) R.add_fingerprint(user) qdel(src) /obj/item/bodybag/bluespace/container_resist(mob/living/user) if(user.incapacitated()) - user << "You can't get out while you're restrained like this!" + to_chat(user, "You can't get out while you're restrained like this!") return user.changeNext_move(CLICK_CD_BREAKOUT) user.last_special = world.time + CLICK_CD_BREAKOUT - user << "You claw at the fabric of [src], trying to tear it open..." - loc << "Someone starts trying to break free of [src]!" + to_chat(user, "You claw at the fabric of [src], trying to tear it open...") + to_chat(loc, "Someone starts trying to break free of [src]!") if(!do_after(user, 200, target = src)) - loc << "The pressure subsides. It seems that they've stopped resisting..." + to_chat(loc, "The pressure subsides. It seems that they've stopped resisting...") return loc.visible_message("[user] suddenly appears in front of [loc]!", "[user] breaks free of [src]!") qdel(src) diff --git a/code/game/objects/items/candle.dm b/code/game/objects/items/candle.dm index 60cf5b2a67..553b9380eb 100644 --- a/code/game/objects/items/candle.dm +++ b/code/game/objects/items/candle.dm @@ -7,6 +7,7 @@ icon_state = "candle1" item_state = "candle1" w_class = WEIGHT_CLASS_TINY + light_color = LIGHT_COLOR_FIRE var/wax = 200 var/lit = FALSE var/infinite = FALSE @@ -46,7 +47,7 @@ //src.damtype = "fire" if(show_message) usr.visible_message(show_message) - SetLuminosity(CANDLE_LUMINOSITY) + set_light(CANDLE_LUMINOSITY) START_PROCESSING(SSobj, src) update_icon() @@ -68,22 +69,7 @@ "[user] snuffs [src].") lit = FALSE update_icon() - SetLuminosity(0) - user.AddLuminosity(-CANDLE_LUMINOSITY) - - -/obj/item/candle/pickup(mob/user) - ..() - if(lit) - SetLuminosity(0) - user.AddLuminosity(CANDLE_LUMINOSITY) - - -/obj/item/candle/dropped(mob/user) - ..() - if(lit) - user.AddLuminosity(-CANDLE_LUMINOSITY) - SetLuminosity(CANDLE_LUMINOSITY) + set_light(0) /obj/item/candle/is_hot() return lit * heat diff --git a/code/game/objects/items/cardboard_cutouts.dm b/code/game/objects/items/cardboard_cutouts.dm index 63234d060e..b7e5e9edf8 100644 --- a/code/game/objects/items/cardboard_cutouts.dm +++ b/code/game/objects/items/cardboard_cutouts.dm @@ -37,7 +37,7 @@ /obj/item/cardboard_cutout/attack_self(mob/living/user) if(!pushed_over) return - user << "You right [src]." + to_chat(user, "You right [src].") desc = initial(desc) icon = initial(icon) icon_state = initial(icon_state) //This resets a cutout to its blank state - this is intentional to allow for resetting @@ -76,12 +76,12 @@ if(!crayon || !user) return if(pushed_over) - user << "Right [src] first!" + to_chat(user, "Right [src] first!") return if(crayon.check_empty(user)) return if(crayon.is_capped) - user << "Take the cap off first!" + 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)) diff --git a/code/game/objects/items/charter.dm b/code/game/objects/items/charter.dm index 2b3bec4f04..24d3f65d6d 100644 --- a/code/game/objects/items/charter.dm +++ b/code/game/objects/items/charter.dm @@ -33,15 +33,13 @@ /obj/item/station_charter/attack_self(mob/living/user) if(used) - user << "This charter has already been used to name the station." + to_chat(user, "This charter has already been used to name the station.") return if(!ignores_timeout && (world.time-round_start_time > STATION_RENAME_TIME_LIMIT)) //5 minutes - user << "The crew has already settled into the shift. \ - It probably wouldn't be good to rename the station right now." + to_chat(user, "The crew has already settled into the shift. It probably wouldn't be good to rename the station right now.") return if(response_timer_id) - user << "You're still waiting for approval from your employers about \ - your proposed name change, it'd be best to wait for now." + to_chat(user, "You're still waiting for approval from your employers about your proposed name change, it'd be best to wait for now.") return var/new_name = stripped_input(user, message="What do you want to name \ @@ -55,14 +53,14 @@ [new_name]") if(standard_station_regex.Find(new_name)) - user << "Your name has been automatically approved." + to_chat(user, "Your name has been automatically approved.") rename_station(new_name, user) return - user << "Your name has been sent to your employers for approval." + to_chat(user, "Your name has been sent to your employers for approval.") // Autoapproves after a certain time response_timer_id = addtimer(CALLBACK(src, .proc/rename_station, new_name, user.name, user.real_name, key_name(user)), approval_time, TIMER_STOPPABLE) - admins << "CUSTOM STATION RENAME:[key_name_admin(user)] (?) proposes to rename the station to [new_name] (will autoapprove in [approval_time / 10] seconds). (BSA) (REJECT) (RPLY)" + to_chat(admins, "CUSTOM STATION RENAME:[key_name_admin(user)] (?) proposes to rename the station to [new_name] (will autoapprove in [approval_time / 10] seconds). (BSA) (REJECT) (RPLY)") /obj/item/station_charter/proc/reject_proposed(user) if(!user) @@ -81,11 +79,7 @@ response_timer_id = null /obj/item/station_charter/proc/rename_station(designation, uname, ureal_name, ukey) - if(config && config.server_name) - world.name = "[config.server_name]: [designation]" - else - world.name = designation - station_name = designation + change_station_name(designation) minor_announce("[ureal_name] has designated your station as [station_name()]", "Captain's Charter", 0) log_game("[ukey] has renamed the station as [station_name()].") @@ -96,4 +90,8 @@ if(!unlimited_uses) used = TRUE -#undef STATION_RENAME_TIME_LIMIT \ No newline at end of file +/obj/item/station_charter/admin + unlimited_uses = TRUE + ignores_timeout = TRUE + +#undef STATION_RENAME_TIME_LIMIT diff --git a/code/game/objects/items/control_wand.dm b/code/game/objects/items/control_wand.dm index 1e12b4de9f..6d13c6a848 100644 --- a/code/game/objects/items/control_wand.dm +++ b/code/game/objects/items/control_wand.dm @@ -26,16 +26,16 @@ mode = WAND_EMERGENCY if(WAND_EMERGENCY) mode = WAND_OPEN - user << "Now in mode: [mode]." + to_chat(user, "Now in mode: [mode].") /obj/item/weapon/door_remote/afterattack(obj/machinery/door/airlock/D, mob/user) if(!istype(D)) return if(!(D.hasPower())) - user << "[D] has no power!" + to_chat(user, "[D] has no power!") return if(!D.requiresID()) - user << "[D]'s ID scan is disabled!" + to_chat(user, "[D]'s ID scan is disabled!") return if(D.check_access(ID) && D.canAIControl(user)) switch(mode) @@ -56,7 +56,7 @@ D.emergency = 1 D.update_icon() else - user << "[src] does not have access to this door." + to_chat(user, "[src] does not have access to this door.") /obj/item/weapon/door_remote/omni name = "omni door remote" diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index ab24a5bf8a..96464e0435 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -132,7 +132,7 @@ if(charges == -1) . = FALSE else if(!charges_left) - user << "There is no more of \the [src.name] left!" + to_chat(user, "There is no more of \the [src.name] left!") if(self_contained) qdel(src) . = TRUE @@ -149,7 +149,7 @@ /obj/item/toy/crayon/spraycan/AltClick(mob/user) if(has_cap) is_capped = !is_capped - user << "The cap on [src] is now [is_capped ? "on" : "off"]." + to_chat(user, "The cap on [src] is now [is_capped ? "on" : "off"].") update_icon() /obj/item/toy/crayon/ui_data() @@ -299,7 +299,7 @@ graf_rot = 0 if(!instant) - user << "You start drawing a [temp] on the [target.name]..." + to_chat(user, "You start drawing a [temp] on the [target.name]...") if(pre_noise) audible_message("You hear spraying.") @@ -344,13 +344,13 @@ affected_turfs += right affected_turfs += target else - user << "There isn't enough space to paint!" + to_chat(user, "There isn't enough space to paint!") return if(!instant) - user << "You finish drawing \the [temp]." + to_chat(user, "You finish drawing \the [temp].") else - user << "You spray a [temp] on \the [target.name]" + to_chat(user, "You spray a [temp] on \the [target.name]") if(length(text_buffer)) text_buffer = copytext(text_buffer,2) @@ -373,7 +373,7 @@ /obj/item/toy/crayon/attack(mob/M, mob/user) if(edible && (M == user)) - user << "You take a bite of the [src.name]. Delicious!" + to_chat(user, "You take a bite of the [src.name]. Delicious!") var/eaten = use_charges(5) if(check_empty(user)) //Prevents divsion by zero return @@ -389,7 +389,7 @@ // Reject space, player-created areas, and non-station z-levels. var/area/A = get_area(target) if(!A || (A.z != ZLEVEL_STATION) || !A.valid_territory) - user << "[A] is unsuitable for tagging." + to_chat(user, "[A] is unsuitable for tagging.") return FALSE var/spraying_over = FALSE @@ -397,14 +397,12 @@ spraying_over = TRUE for(var/obj/machinery/power/apc in target) - user << "You can't tag an APC." + to_chat(user, "You can't tag an APC.") return FALSE var/occupying_gang = territory_claimed(A, user) if(occupying_gang && !spraying_over) - user << "[A] has already been tagged \ - by the [occupying_gang] gang! You must get rid of or spray over \ - the old tag first!" + to_chat(user, "[A] has already been tagged by the [occupying_gang] gang! You must get rid of or spray over the old tag first!") return FALSE // If you pass the gaunlet of checks, you're good to proceed @@ -425,7 +423,7 @@ var/area/territory = get_area(target) new /obj/effect/decal/cleanable/crayon/gang(target,gangID,"graffiti",0) - user << "You tagged [territory] for your gang!" + to_chat(user, "You tagged [territory] for your gang!") /obj/item/toy/crayon/red icon_state = "crayonred" @@ -530,13 +528,13 @@ var/obj/item/toy/crayon/C = W switch(C.item_color) if("mime") - usr << "This crayon is too sad to be contained in this box." + to_chat(usr, "This crayon is too sad to be contained in this box.") return if("rainbow") - usr << "This crayon is too powerful to be contained in this box." + to_chat(usr, "This crayon is too powerful to be contained in this box.") return if(istype(W, /obj/item/toy/crayon/spraycan)) - user << "Spraycans are not crayons." + to_chat(user, "Spraycans are not crayons.") return return ..() @@ -605,16 +603,16 @@ /obj/item/toy/crayon/spraycan/examine(mob/user) . = ..() if(charges_left) - user << "It has [charges_left] uses left." + to_chat(user, "It has [charges_left] uses left.") else - user << "It is empty." + to_chat(user, "It is empty.") /obj/item/toy/crayon/spraycan/afterattack(atom/target, mob/user, proximity) if(!proximity) return if(is_capped) - user << "Take the cap off first!" + to_chat(user, "Take the cap off first!") return if(check_empty(user)) @@ -626,7 +624,7 @@ var/mob/living/carbon/C = target user.visible_message("[user] sprays [src] into the face of [target]!") - target << "[user] sprays [src] into your face!" + to_chat(target, "[user] sprays [src] into your face!") if(C.client) C.blur_eyes(3) @@ -651,9 +649,9 @@ if(actually_paints) target.add_atom_colour(paint_color, WASHABLE_COLOUR_PRIORITY) if(color_hex2num(paint_color) < 255) - target.SetOpacity(255) + target.set_opacity(255) else - target.SetOpacity(initial(target.opacity)) + target.set_opacity(initial(target.opacity)) . = use_charges(2) var/fraction = min(1, . / reagents.maximum_volume) reagents.reaction(target, TOUCH, fraction * volume_multiplier) @@ -691,7 +689,7 @@ /obj/item/toy/crayon/spraycan/gang/examine(mob/user) . = ..() if((user.mind && user.mind.gang_datum) || isobserver(user)) - user << "This spraycan has been specially modified for tagging territory." + to_chat(user, "This spraycan has been specially modified for tagging territory.") /obj/item/toy/crayon/spraycan/borg name = "cyborg spraycan" @@ -701,7 +699,7 @@ /obj/item/toy/crayon/spraycan/borg/afterattack(atom/target,mob/user,proximity) var/diff = ..() if(!iscyborg(user)) - user << "How did you get this?" + to_chat(user, "How did you get this?") qdel(src) return FALSE diff --git a/code/game/objects/items/dehy_carp.dm b/code/game/objects/items/dehy_carp.dm index 0aa6077ad9..9432a434f0 100644 --- a/code/game/objects/items/dehy_carp.dm +++ b/code/game/objects/items/dehy_carp.dm @@ -13,19 +13,10 @@ /obj/item/toy/carpplushie/dehy_carp/attack_self(mob/user) src.add_fingerprint(user) //Anyone can add their fingerprints to it with this if(!owned) - user << "You pet [src]. You swear it looks up at you." + to_chat(user, "You pet [src]. You swear it looks up at you.") owner = user owned = 1 - return ..() - - -/obj/item/toy/carpplushie/dehy_carp/afterattack(obj/O, mob/user,proximity) - if(!proximity) return - if(istype(O,/obj/structure/sink)) - user.drop_item() - loc = get_turf(O) - return Swell() - ..() + else return ..() /obj/item/toy/carpplushie/dehy_carp/proc/Swell() desc = "It's growing!" diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 3682fbb39e..0c0e7bff50 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -57,26 +57,11 @@ var/global/list/obj/item/device/pda/PDAs = list() var/obj/item/inserted_item //Used for pen, crayon, and lipstick insertion or removal. Same as above. var/overlays_x_offset = 0 //x offset to use for certain overlays -/obj/item/device/pda/pickup(mob/user) - ..() - if(fon) - SetLuminosity(0) - user.AddLuminosity(f_lum) - -/obj/item/device/pda/dropped(mob/user) - ..() - if(fon) - user.AddLuminosity(-f_lum) - SetLuminosity(f_lum) - /obj/item/device/pda/New() ..() if(fon) - if(!isturf(loc)) - loc.AddLuminosity(f_lum) - SetLuminosity(0) - else - SetLuminosity(f_lum) + set_light(f_lum) + PDAs += src if(default_cartridge) cartridge = new default_cartridge(src) @@ -344,7 +329,7 @@ var/global/list/obj/item/device/pda/PDAs = list() if("Eject")//Ejects the cart, only done from hub. if (!isnull(cartridge)) U.put_in_hands(cartridge) - U << "You remove [cartridge] from [src]." + to_chat(U, "You remove [cartridge] from [src].") scanmode = 0 if (cartridge.radio) cartridge.radio.hostpda = null @@ -372,16 +357,10 @@ var/global/list/obj/item/device/pda/PDAs = list() if("Light") if(fon) fon = 0 - if(src in U.contents) - U.AddLuminosity(-f_lum) - else - SetLuminosity(0) + set_light(0) else fon = 1 - if(src in U.contents) - U.AddLuminosity(f_lum) - else - SetLuminosity(f_lum) + set_light(2.3) update_icon() if("Medical Scan") if(scanmode == 1) @@ -417,7 +396,7 @@ var/global/list/obj/item/device/pda/PDAs = list() if(A && alert_s) var/msg = "NON-DRONE PING: [U.name]: [alert_s] priority alert in [A.name]!" _alert_drones(msg, TRUE) - U << msg + to_chat(U, msg) //NOTEKEEPER FUNCTIONS=================================== @@ -447,7 +426,7 @@ var/global/list/obj/item/device/pda/PDAs = list() if(t) if(hidden_uplink && (trim(lowertext(t)) == trim(lowertext(lock_code)))) hidden_uplink.interact(U) - U << "The PDA softly beeps." + to_chat(U, "The PDA softly beeps.") U << browse(null, "window=pda") src.mode = 0 else @@ -472,7 +451,7 @@ var/global/list/obj/item/device/pda/PDAs = list() U.show_message("Virus sent!", 1) P.honkamt = (rand(15,20)) else - U << "PDA not found." + to_chat(U, "PDA not found.") else U << browse(null, "window=pda") return @@ -486,7 +465,7 @@ var/global/list/obj/item/device/pda/PDAs = list() P.silent = 1 P.ttone = "silence" else - U << "PDA not found." + to_chat(U, "PDA not found.") else U << browse(null, "window=pda") return @@ -528,7 +507,7 @@ var/global/list/obj/item/device/pda/PDAs = list() U.show_message("Success!", 1) P.explode() else - U << "PDA not found." + to_chat(U, "PDA not found.") else U.unset_machine() U << browse(null, "window=pda") @@ -577,7 +556,7 @@ var/global/list/obj/item/device/pda/PDAs = list() if (ismob(loc)) var/mob/M = loc M.put_in_hands(id) - usr << "You remove the ID from the [name]." + to_chat(usr, "You remove the ID from the [name].") else id.loc = get_turf(src) id = null @@ -624,7 +603,7 @@ var/global/list/obj/item/device/pda/PDAs = list() log_pda("[user] (PDA: [src.name]) sent \"[message]\" to [P.name]") else if(!multiple) - user << "ERROR: Server isn't responding." + to_chat(user, "ERROR: Server isn't responding.") return photo = null @@ -651,7 +630,7 @@ var/global/list/obj/item/device/pda/PDAs = list() L = get(src, /mob/living/silicon) if(L && L.stat != UNCONSCIOUS) - L << "\icon[src] Message from [source.owner] ([source.ownjob]), \"[msg.message]\"[msg.get_photo_ref()] (Reply)" + to_chat(L, "\icon[src] Message from [source.owner] ([source.ownjob]), \"[msg.message]\"[msg.get_photo_ref()] (Reply)") update_icon() add_overlay(image(icon, icon_alert)) @@ -660,7 +639,7 @@ var/global/list/obj/item/device/pda/PDAs = list() for(var/mob/M in player_list) if(isobserver(M) && M.client && (M.client.prefs.chat_toggles & CHAT_GHOSTPDA)) var/link = FOLLOW_LINK(M, user) - M << "[link] [msg.sender] PDA Message --> [multiple ? "Everyone" : msg.recipient]: [msg.message][msg.get_photo_ref()]
" + to_chat(M, "[link] [msg.sender] PDA Message --> [multiple ? "Everyone" : msg.recipient]: [msg.message][msg.get_photo_ref()]
") /obj/item/device/pda/proc/can_send(obj/item/device/pda/P) if(!P || QDELETED(P) || P.toff) @@ -723,7 +702,7 @@ var/global/list/obj/item/device/pda/PDAs = list() if(id) remove_id() else - usr << "This PDA does not have an ID in it!" + to_chat(usr, "This PDA does not have an ID in it!") /obj/item/device/pda/verb/verb_remove_pen() set category = "Object" @@ -743,11 +722,11 @@ var/global/list/obj/item/device/pda/PDAs = list() M.put_in_hands(inserted_item) else inserted_item.forceMove(loc) - usr << "You remove \the [inserted_item] from \the [src]." + to_chat(usr, "You remove \the [inserted_item] from \the [src].") inserted_item = null update_icon() else - usr << "This PDA does not have a pen in it!" + to_chat(usr, "This PDA does not have a pen in it!") //trying to insert or remove an id /obj/item/device/pda/proc/id_check(mob/user, obj/item/weapon/card/id/I) @@ -776,7 +755,7 @@ var/global/list/obj/item/device/pda/PDAs = list() if(!user.transferItemToLoc(C, src)) return cartridge = C - user << "You insert [cartridge] into [src]." + to_chat(user, "You insert [cartridge] into [src].") if(cartridge.radio) cartridge.radio.hostpda = src update_icon() @@ -784,19 +763,19 @@ var/global/list/obj/item/device/pda/PDAs = list() else if(istype(C, /obj/item/weapon/card/id)) var/obj/item/weapon/card/id/idcard = C if(!idcard.registered_name) - user << "\The [src] rejects the ID!" + to_chat(user, "\The [src] rejects the ID!") return if(!owner) owner = idcard.registered_name ownjob = idcard.assignment update_label() - user << "Card scanned." + to_chat(user, "Card scanned.") else //Basic safety check. If either both objects are held by user or PDA is on ground and card is in hand. if(((src in user.contents) || (isturf(loc) && in_range(src, user))) && (C in user.contents)) if(!id_check(user, idcard)) return - user << "You put the ID into \the [src]'s slot." + to_chat(user, "You put the ID into \the [src]'s slot.") updateSelfDialog()//Update self dialog on success. return //Return in case of failed check or when successful. updateSelfDialog()//For the non-input related code. @@ -804,22 +783,22 @@ var/global/list/obj/item/device/pda/PDAs = list() if(!user.transferItemToLoc(C, src)) return pai = C - user << "You slot \the [C] into [src]." + to_chat(user, "You slot \the [C] into [src].") update_icon() updateUsrDialog() else if(is_type_in_list(C, contained_item)) //Checks if there is a pen if(inserted_item) - user << "There is already \a [inserted_item] in \the [src]!" + to_chat(user, "There is already \a [inserted_item] in \the [src]!") else if(!user.transferItemToLoc(C, src)) return - user << "You slide \the [C] into \the [src]." + to_chat(user, "You slide \the [C] into \the [src].") inserted_item = C update_icon() else if(istype(C, /obj/item/weapon/photo)) var/obj/item/weapon/photo/P = C photo = P.img - user << "You scan \the [C]." + to_chat(user, "You scan \the [C].") else if(hidden_uplink && hidden_uplink.active) hidden_uplink.attackby(C, user, params) else @@ -854,13 +833,13 @@ var/global/list/obj/item/device/pda/PDAs = list() if(!isnull(A.reagents)) if(A.reagents.reagent_list.len > 0) var/reagents_length = A.reagents.reagent_list.len - user << "[reagents_length] chemical agent[reagents_length > 1 ? "s" : ""] found." + to_chat(user, "[reagents_length] chemical agent[reagents_length > 1 ? "s" : ""] found.") for (var/re in A.reagents.reagent_list) - user << "\t [re]" + to_chat(user, "\t [re]") else - user << "No active chemical agents found in [A]." + to_chat(user, "No active chemical agents found in [A].") else - user << "No significant chemical agents found in [A]." + to_chat(user, "No significant chemical agents found in [A].") if(5) if (istype(A, /obj/item/weapon/tank)) @@ -884,7 +863,7 @@ var/global/list/obj/item/device/pda/PDAs = list() if (!scanmode && istype(A, /obj/item/weapon/paper) && owner) var/obj/item/weapon/paper/PP = A if (!PP.info) - user << "Unable to scan! Paper is blank." + to_chat(user, "Unable to scan! Paper is blank.") return notehtml = PP.info note = replacetext(notehtml, "
", "\[br\]") @@ -893,7 +872,7 @@ var/global/list/obj/item/device/pda/PDAs = list() note = replacetext(note, "", "\[/list\]") note = html_encode(note) notescanned = 1 - user << "Paper scanned. Saved to PDA's notekeeper." //concept of scanning paper copyright brainoblivion 2009 + to_chat(user, "Paper scanned. Saved to PDA's notekeeper." ) /obj/item/device/pda/proc/explode() //This needs tuning. @@ -941,7 +920,7 @@ var/global/list/obj/item/device/pda/PDAs = list() return //won't work if dead if(src.aiPDA.toff) - user << "Turn on your receiver in order to send messages." + to_chat(user, "Turn on your receiver in order to send messages.") return for (var/obj/item/device/pda/P in get_viewable_pdas()) @@ -974,9 +953,9 @@ var/global/list/obj/item/device/pda/PDAs = list() return //won't work if dead if(!isnull(aiPDA)) aiPDA.toff = !aiPDA.toff - usr << "PDA sender/receiver toggled [(aiPDA.toff ? "Off" : "On")]!" + to_chat(usr, "PDA sender/receiver toggled [(aiPDA.toff ? "Off" : "On")]!") else - usr << "You do not have a PDA. You should make an issue report about this." + 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() set category = "AI Commands" @@ -986,9 +965,9 @@ var/global/list/obj/item/device/pda/PDAs = list() if(!isnull(aiPDA)) //0 aiPDA.silent = !aiPDA.silent - usr << "PDA ringer toggled [(aiPDA.silent ? "Off" : "On")]!" + to_chat(usr, "PDA ringer toggled [(aiPDA.silent ? "Off" : "On")]!") else - usr << "You do not have a PDA. You should make an issue report about this." + 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) if(user.stat == 2) @@ -997,7 +976,7 @@ var/global/list/obj/item/device/pda/PDAs = list() var/HTML = "AI PDA Message Log[aiPDA.tnote]" user << browse(HTML, "window=log;size=400x444;border=1;can_resize=1;can_close=1;can_minimize=0") else - user << "You do not have a PDA. You should make an issue report about this." + to_chat(user, "You do not have a PDA. You should make an issue report about this.") /obj/item/weapon/storage/box/PDAs/New() ..() diff --git a/code/game/objects/items/devices/aicard.dm b/code/game/objects/items/devices/aicard.dm index ce18949616..0e4c97e816 100644 --- a/code/game/objects/items/devices/aicard.dm +++ b/code/game/objects/items/devices/aicard.dm @@ -69,7 +69,7 @@ if(confirm == "Yes" && !..()) flush = TRUE if(AI && AI.loc == src) - AI << "Your core files are being wiped!" + to_chat(AI, "Your core files are being wiped!") while(AI.stat != DEAD && flush) AI.adjustOxyLoss(1) AI.updatehealth() @@ -78,10 +78,10 @@ . = TRUE if("wireless") AI.control_disabled = !AI.control_disabled - AI << "[src]'s wireless port has been [AI.control_disabled ? "disabled" : "enabled"]!" + to_chat(AI, "[src]'s wireless port has been [AI.control_disabled ? "disabled" : "enabled"]!") . = TRUE if("radio") AI.radio_enabled = !AI.radio_enabled - AI << "Your Subspace Transceiver has been [AI.radio_enabled ? "enabled" : "disabled"]!" + to_chat(AI, "Your Subspace Transceiver has been [AI.radio_enabled ? "enabled" : "disabled"]!") . = TRUE update_icon() diff --git a/code/game/objects/items/devices/camera_bug.dm b/code/game/objects/items/devices/camera_bug.dm index 7481544b81..9272082def 100644 --- a/code/game/objects/items/devices/camera_bug.dm +++ b/code/game/objects/items/devices/camera_bug.dm @@ -63,7 +63,7 @@ return 0 var/turf/T = get_turf(user.loc) if(T.z != current.z || !current.can_use()) - user << "[src] has lost the signal." + to_chat(user, "[src] has lost the signal.") current = null user.unset_machine() return 0 @@ -233,11 +233,11 @@ var/obj/machinery/camera/C = locate(href_list["view"]) in cameras if(C && istype(C)) if(!C.can_use()) - usr << "Something's wrong with that camera! You can't get a feed." + to_chat(usr, "Something's wrong with that camera! You can't get a feed.") return var/turf/T = get_turf(loc) if(!T || C.z != T.z) - usr << "You can't get a signal!" + to_chat(usr, "You can't get a signal!") return current = C spawn(6) diff --git a/code/game/objects/items/devices/chameleonproj.dm b/code/game/objects/items/devices/chameleonproj.dm index 66acb1e6c5..3c1e827f01 100644 --- a/code/game/objects/items/devices/chameleonproj.dm +++ b/code/game/objects/items/devices/chameleonproj.dm @@ -34,7 +34,7 @@ if(!active_dummy) if(istype(target,/obj/item) && !istype(target, /obj/item/weapon/disk/nuclear)) playsound(get_turf(src), 'sound/weapons/flash.ogg', 100, 1, -6) - user << "Scanned [target]." + to_chat(user, "Scanned [target].") var/obj/temp = new/obj() temp.appearance = target.appearance temp.layer = initial(target.layer) // scanning things in your inventory @@ -48,19 +48,19 @@ playsound(get_turf(src), 'sound/effects/pop.ogg', 100, 1, -6) qdel(active_dummy) active_dummy = null - usr << "You deactivate \the [src]." + to_chat(usr, "You deactivate \the [src].") new /obj/effect/overlay/temp/emp/pulse(get_turf(src)) else playsound(get_turf(src), 'sound/effects/pop.ogg', 100, 1, -6) var/obj/effect/dummy/chameleon/C = new/obj/effect/dummy/chameleon(usr.loc) C.activate(usr, saved_appearance, src) - usr << "You activate \the [src]." + to_chat(usr, "You activate \the [src].") new /obj/effect/overlay/temp/emp/pulse(get_turf(src)) /obj/item/device/chameleon/proc/disrupt(delete_dummy = 1) if(active_dummy) for(var/mob/M in active_dummy) - M << "Your chameleon-projector deactivates." + to_chat(M, "Your chameleon-projector deactivates.") var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread spark_system.set_up(5, 0, src) spark_system.attach(src) diff --git a/code/game/objects/items/devices/doorCharge.dm b/code/game/objects/items/devices/doorCharge.dm index 33ebfa6793..e5d66e466c 100644 --- a/code/game/objects/items/devices/doorCharge.dm +++ b/code/game/objects/items/devices/doorCharge.dm @@ -35,6 +35,6 @@ /obj/item/device/doorCharge/examine(mob/user) ..() if(user.mind in ticker.mode.traitors) //No nuke ops because the device is excluded from nuclear - user << "A small explosive device that can be used to sabotage airlocks to cause an explosion upon opening. To apply, remove the airlock's maintenance panel and place it within." + to_chat(user, "A small explosive device that can be used to sabotage airlocks to cause an explosion upon opening. To apply, remove the airlock's maintenance panel and place it within.") else - user << "A small, suspicious object that feels lukewarm when held." + to_chat(user, "A small, suspicious object that feels lukewarm when held.") diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index 5f82db1a7a..c97fc18b8e 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -10,30 +10,23 @@ materials = list(MAT_METAL=50, MAT_GLASS=20) actions_types = list(/datum/action/item_action/toggle_light) var/on = 0 - var/brightness_on = 4 //luminosity when on + var/brightness_on = 4 //range of light when on + var/flashlight_power //strength of the light when on. optional /obj/item/device/flashlight/Initialize() ..() - if(on) - icon_state = "[initial(icon_state)]-on" - SetLuminosity(brightness_on) - else - icon_state = initial(icon_state) - SetLuminosity(0) + update_brightness() /obj/item/device/flashlight/proc/update_brightness(mob/user = null) if(on) icon_state = "[initial(icon_state)]-on" - if(loc == user) - user.AddLuminosity(brightness_on) - else if(isturf(loc)) - SetLuminosity(brightness_on) + if(flashlight_power) + set_light(l_range = brightness_on, l_power = flashlight_power) + else + set_light(brightness_on) else icon_state = initial(icon_state) - if(loc == user) - user.AddLuminosity(-brightness_on) - else if(isturf(loc)) - SetLuminosity(0) + set_light(0) /obj/item/device/flashlight/attack_self(mob/user) on = !on @@ -52,12 +45,12 @@ return ..() //just hit them in the head if(!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to do this!" + to_chat(user, "You don't have the dexterity to do this!") return var/mob/living/carbon/human/H = M //mob has protective eyewear if(ishuman(M) && ((H.head && H.head.flags_cover & HEADCOVERSEYES) || (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) || (H.glasses && H.glasses.flags_cover & GLASSESCOVERSEYES))) - user << "You're going to need to remove that [(H.head && H.head.flags_cover & HEADCOVERSEYES) ? "helmet" : (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) ? "mask": "glasses"] first." + to_chat(user, "You're going to need to remove that [(H.head && H.head.flags_cover & HEADCOVERSEYES) ? "helmet" : (H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) ? "mask": "glasses"] first.") return if(M == user) //they're using it on themselves @@ -71,30 +64,15 @@ var/mob/living/carbon/C = M if(istype(C)) if(C.stat == DEAD || (C.disabilities & BLIND)) //mob is dead or fully blind - user << "[C] pupils don't react to the light!" + to_chat(user, "[C] pupils don't react to the light!") else if(C.dna.check_mutation(XRAY)) //mob has X-RAY vision - user << "[C] pupils give an eerie glow!" + to_chat(user, "[C] pupils give an eerie glow!") else //they're okay! if(C.flash_act(visual = 1)) - user << "[C]'s pupils narrow." + to_chat(user, "[C]'s pupils narrow.") else return ..() - -/obj/item/device/flashlight/pickup(mob/user) - ..() - if(on) - user.AddLuminosity(brightness_on) - SetLuminosity(0) - - -/obj/item/device/flashlight/dropped(mob/user) - ..() - if(on) - user.AddLuminosity(-brightness_on) - SetLuminosity(brightness_on) - - /obj/item/device/flashlight/pen name = "penlight" desc = "A pen-sized light, used by medical staff. It can also be used to create a hologram to alert people of incoming medical assistance." @@ -107,7 +85,7 @@ /obj/item/device/flashlight/pen/afterattack(atom/target, mob/user, proximity_flag) if(!proximity_flag) if(holo_cooldown > world.time) - user << "[src] is not ready yet!" + to_chat(user, "[src] is not ready yet!") return var/T = get_turf(target) if(locate(/mob/living) in T) @@ -188,6 +166,7 @@ var/on_damage = 7 var/produce_heat = 1500 heat = 1000 + light_color = LIGHT_COLOR_FLARE /obj/item/device/flashlight/flare/New() fuel = rand(800, 1000) // Sorry for changing this so much but I keep under-estimating how long X number of ticks last in seconds. @@ -230,9 +209,10 @@ // Usual checks if(!fuel) - user << "It's out of fuel!" + to_chat(user, "[src] is out of fuel!") return if(on) + to_chat(user, "[src] is already on.") return . = ..() @@ -284,19 +264,20 @@ /obj/item/device/flashlight/emp/New() - ..() - START_PROCESSING(SSobj, src) + ..() + START_PROCESSING(SSobj, src) /obj/item/device/flashlight/emp/Destroy() - STOP_PROCESSING(SSobj, src) - return ..() + STOP_PROCESSING(SSobj, src) + . = ..() /obj/item/device/flashlight/emp/process() - charge_tick++ - if(charge_tick < 10) return 0 - charge_tick = 0 - emp_cur_charges = min(emp_cur_charges+1, emp_max_charges) - return 1 + charge_tick++ + if(charge_tick < 10) + return FALSE + charge_tick = 0 + emp_cur_charges = min(emp_cur_charges+1, emp_max_charges) + return TRUE /obj/item/device/flashlight/emp/attack(mob/living/M, mob/living/user) if(on && user.zone_selected == "eyes") // call original attack proc only if aiming at the eyes @@ -317,8 +298,114 @@ "[user] blinks \the [src] at you.") else A.visible_message("[user] blinks \the [src] at \the [A].") - user << "\The [src] now has [emp_cur_charges] charge\s." + to_chat(user, "\The [src] now has [emp_cur_charges] charge\s.") A.emp_act(1) else - user << "\The [src] needs time to recharge!" + to_chat(user, "\The [src] needs time to recharge!") return + +// Glowsticks, in the uncomfortable range of similar to flares, +// but not similar enough to make it worth a refactor +/obj/item/device/flashlight/glowstick + name = "green glowstick" + desc = "A military-grade glowstick." + w_class = WEIGHT_CLASS_SMALL + brightness_on = 4 + color = LIGHT_COLOR_GREEN + icon_state = "glowstick" + item_state = "glowstick" + var/fuel = 0 + +/obj/item/device/flashlight/glowstick/Initialize() + fuel = rand(1600, 2000) + light_color = color + ..() + +/obj/item/device/flashlight/glowstick/Destroy() + STOP_PROCESSING(SSobj, src) + . = ..() + +/obj/item/device/flashlight/glowstick/process() + fuel = max(fuel - 1, 0) + if(!fuel) + turn_off() + STOP_PROCESSING(SSobj, src) + update_icon() + +/obj/item/device/flashlight/glowstick/proc/turn_off() + on = 0 + update_icon() + +/obj/item/device/flashlight/glowstick/update_icon() + item_state = "glowstick" + overlays.Cut() + if(!fuel) + icon_state = "glowstick-empty" + cut_overlays() + set_light(0) + else if(on) + var/image/I = image(icon,"glowstick-glow",color) + add_overlay(I) + item_state = "glowstick-on" + set_light(brightness_on) + else + icon_state = "glowstick" + cut_overlays() + +/obj/item/device/flashlight/glowstick/attack_self(mob/user) + if(!fuel) + to_chat(user, "[src] is spent.") + return + if(on) + to_chat(user, "[src] is already lit.") + return + + . = ..() + if(.) + user.visible_message("[user] cracks and shakes [src].", "You crack and shake [src], turning it on!") + START_PROCESSING(SSobj, src) + +/obj/item/device/flashlight/glowstick/red + name = "red glowstick" + color = LIGHT_COLOR_RED + +/obj/item/device/flashlight/glowstick/blue + name = "blue glowstick" + color = LIGHT_COLOR_BLUE + +/obj/item/device/flashlight/glowstick/cyan + name = "cyan glowstick" + color = LIGHT_COLOR_CYAN + +/obj/item/device/flashlight/glowstick/orange + name = "orange glowstick" + color = LIGHT_COLOR_ORANGE + +/obj/item/device/flashlight/glowstick/yellow + name = "yellow glowstick" + color = LIGHT_COLOR_YELLOW + +/obj/item/device/flashlight/glowstick/pink + name = "pink glowstick" + color = LIGHT_COLOR_PINK + +/obj/item/device/flashlight/glowstick/random + name = "random colored glowstick" + +/obj/item/device/flashlight/glowstick/random/Initialize() + var/list/glowtypes = typesof(/obj/item/device/flashlight/glowstick) + glowtypes -= /obj/item/device/flashlight/glowstick/random + + var/obj/item/device/flashlight/glowstick/glowtype = pick(glowtypes) + + name = initial(glowtype.name) + color = initial(glowtype.color) + . = ..() + +/obj/item/device/flashlight/flashdark + name = "flashdark" + desc = "A strange device manufactured with mysterious elements that somehow emits darkness. Or maybe it just sucks in light? Nobody knows for sure." + icon_state = "flashdark" + item_state = "flashdark" + brightness_on = 2.5 + flashlight_power = -3 diff --git a/code/game/objects/items/devices/forcefieldprojector.dm b/code/game/objects/items/devices/forcefieldprojector.dm new file mode 100644 index 0000000000..4404f6c811 --- /dev/null +++ b/code/game/objects/items/devices/forcefieldprojector.dm @@ -0,0 +1,107 @@ +/obj/item/device/forcefield + name = "forcefield projector" + desc = "An experimental device that can create several forcefields at a distance." + icon_state = "signmaker_engi" + slot_flags = SLOT_BELT + w_class = WEIGHT_CLASS_SMALL + flags = NOBLUDGEON + item_state = "electronic" + materials = list(MAT_METAL=250, MAT_GLASS=500) + origin_tech = "magnets=5;engineering=5;powerstorage=4" + var/max_shield_integrity = 250 + var/shield_integrity = 250 + var/max_fields = 3 + var/list/current_fields + var/field_distance_limit = 7 + +/obj/item/device/forcefield/afterattack(atom/target, mob/user, proximity_flag) + if(!check_allowed_items(target, 1)) + return + if(istype(target, /obj/structure/projected_forcefield)) + var/obj/structure/projected_forcefield/F = target + if(F.generator == src) + to_chat(user, "You deactivate [F].") + qdel(F) + return + var/turf/T = get_turf(target) + if(T.density) + return + if(get_dist(T,src) > field_distance_limit) + return + if(LAZYLEN(current_fields) >= max_fields) + to_chat(user, "[src] cannot sustain any more forcefields!") + return + + playsound(src,'sound/weapons/resonator_fire.ogg',50,1) + user.visible_message("[user] projects a forcefield!","You project a forcefield.") + var/obj/structure/projected_forcefield/F = new(T, src) + current_fields += F + user.changeNext_move(CLICK_CD_MELEE) + +/obj/item/device/forcefield/attack_self(mob/user) + if(LAZYLEN(current_fields)) + to_chat(user, "You deactivate [src], disabling all active forcefields.") + for(var/obj/structure/projected_forcefield/F in current_fields) + qdel(F) + +/obj/item/device/forcefield/examine(mob/user) + ..() + var/percent_charge = round((shield_integrity/max_shield_integrity)*100) + to_chat(user, "It is currently sustaining [LAZYLEN(current_fields)]/[max_fields] fields, and it's [percent_charge]% charged.") + +/obj/item/device/forcefield/Initialize(mapload) + ..() + current_fields = list() + START_PROCESSING(SSobj, src) + +/obj/item/device/forcefield/Destroy() + STOP_PROCESSING(SSobj, src) + return ..() + +/obj/item/device/forcefield/process() + if(!LAZYLEN(current_fields)) + shield_integrity = min(shield_integrity + 4, max_shield_integrity) + else + shield_integrity = max(shield_integrity - LAZYLEN(current_fields), 0) //fields degrade slowly over time + for(var/obj/structure/projected_forcefield/F in current_fields) + if(shield_integrity <= 0 || get_dist(F,src) > field_distance_limit) + qdel(F) + +/obj/structure/projected_forcefield + name = "forcefield" + desc = "A glowing barrier, generated by a projector nearby. It could be overloaded if hit enough times." + icon = 'icons/effects/effects.dmi' + icon_state = "forcefield" + layer = ABOVE_ALL_MOB_LAYER + anchored = TRUE + density = TRUE + mouse_opacity = 2 + obj_integrity = INFINITY + max_integrity = INFINITY + CanAtmosPass = ATMOS_PASS_DENSITY + armor = list(melee = 0, bullet = 25, laser = 50, energy = 50, bomb = 25, bio = 100, rad = 100, fire = 100, acid = 100) + var/obj/item/device/forcefield/generator + +/obj/structure/projected_forcefield/Initialize(mapload, obj/item/device/forcefield/origin) + generator = origin + ..() + +/obj/structure/projected_forcefield/Destroy() + visible_message("[src] flickers and disappears!") + playsound(src,'sound/weapons/resonator_blast.ogg',25,1) + generator.current_fields -= src + generator = null + return ..() + +/obj/structure/projected_forcefield/CanPass(atom/movable/mover, turf/target, height=0) + if(istype(mover) && mover.checkpass(PASSGLASS)) + return 1 + return !density + +/obj/structure/projected_forcefield/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0) + playsound(loc, 'sound/weapons/Egloves.ogg', 80, 1) + +/obj/structure/projected_forcefield/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir) + if(sound_effect) + play_attack_sound(damage_amount, damage_type, damage_flag) + generator.shield_integrity = max(generator.shield_integrity - damage_amount, 0) \ No newline at end of file diff --git a/code/game/objects/items/devices/geiger_counter.dm b/code/game/objects/items/devices/geiger_counter.dm index 02afa9434d..a7afbd0a21 100644 --- a/code/game/objects/items/devices/geiger_counter.dm +++ b/code/game/objects/items/devices/geiger_counter.dm @@ -37,23 +37,23 @@ ..() if(!scanning) return 1 - user << "Alt-click it to clear stored radiation levels." + to_chat(user, "Alt-click it to clear stored radiation levels.") if(emagged) - user << "The display seems to be incomprehensible." + to_chat(user, "The display seems to be incomprehensible.") return 1 switch(radiation_count) if(-INFINITY to RAD_LEVEL_NORMAL) - user << "Ambient radiation level count reports that all is well." + to_chat(user, "Ambient radiation level count reports that all is well.") if(RAD_LEVEL_NORMAL + 1 to RAD_LEVEL_MODERATE) - user << "Ambient radiation levels slightly above average." + to_chat(user, "Ambient radiation levels slightly above average.") if(RAD_LEVEL_MODERATE + 1 to RAD_LEVEL_HIGH) - user << "Ambient radiation levels above average." + to_chat(user, "Ambient radiation levels above average.") if(RAD_LEVEL_HIGH + 1 to RAD_LEVEL_VERY_HIGH) - user << "Ambient radiation levels highly above average." + to_chat(user, "Ambient radiation levels highly above average.") if(RAD_LEVEL_VERY_HIGH + 1 to RAD_LEVEL_CRITICAL) - user << "Ambient radiation levels nearing critical level." + to_chat(user, "Ambient radiation levels nearing critical level.") if(RAD_LEVEL_CRITICAL + 1 to INFINITY) - user << "Ambient radiation levels above critical level!" + to_chat(user, "Ambient radiation levels above critical level!") /obj/item/device/geiger_counter/update_icon() if(!scanning) @@ -86,27 +86,27 @@ if(isliving(loc)) var/mob/living/M = loc if(!emagged) - M << "\icon[src] RADIATION PULSE DETECTED." - M << "\icon[src] Severity: [amount]" + to_chat(M, "\icon[src] RADIATION PULSE DETECTED.") + to_chat(M, "\icon[src] Severity: [amount]") else - M << "\icon[src] !@%$AT!(N P!LS! D/TEC?ED." - M << "\icon[src] &!F2rity: <=[amount]#1" + to_chat(M, "\icon[src] !@%$AT!(N P!LS! D/TEC?ED.") + to_chat(M, "\icon[src] &!F2rity: <=[amount]#1") update_icon() /obj/item/device/geiger_counter/attack_self(mob/user) scanning = !scanning update_icon() - user << "\icon[src] You switch [scanning ? "on" : "off"] [src]." + to_chat(user, "\icon[src] You switch [scanning ? "on" : "off"] [src].") /obj/item/device/geiger_counter/attack(mob/living/M, mob/user) if(user.a_intent == INTENT_HELP) if(!emagged) user.visible_message("[user] scans [M] with [src].", "You scan [M]'s radiation levels with [src]...") if(!M.radiation) - user << "\icon[src] Radiation levels within normal boundaries." + to_chat(user, "\icon[src] Radiation levels within normal boundaries.") return 1 else - user << "\icon[src] Subject is irradiated. Radiation levels: [M.radiation]." + to_chat(user, "\icon[src] Subject is irradiated. Radiation levels: [M.radiation].") return 1 else user.visible_message("[user] scans [M] with [src].", "You project [src]'s stored radiation into [M]'s body!") @@ -118,7 +118,7 @@ /obj/item/device/geiger_counter/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver) && emagged) if(scanning) - user << "Turn off [src] before you perform this action!" + to_chat(user, "Turn off [src] before you perform this action!") return 0 user.visible_message("[user] unscrews [src]'s maintenance panel and begins fiddling with its innards...", "You begin resetting [src]...") playsound(user, I.usesound, 50, 1) @@ -137,18 +137,18 @@ if(!istype(user) || user.incapacitated()) return ..() if(!scanning) - usr << "[src] must be on to reset its radiation level!" + to_chat(usr, "[src] must be on to reset its radiation level!") return 0 radiation_count = 0 - usr << "You flush [src]'s radiation counts, resetting it to normal." + to_chat(usr, "You flush [src]'s radiation counts, resetting it to normal.") update_icon() /obj/item/device/geiger_counter/emag_act(mob/user) if(!emagged) if(scanning) - user << "Turn off [src] before you perform this action!" + to_chat(user, "Turn off [src] before you perform this action!") return 0 - user << "You override [src]'s radiation storing protocols. It will now generate small doses of radiation, and stored rads are now projected into creatures you scan." + to_chat(user, "You override [src]'s radiation storing protocols. It will now generate small doses of radiation, and stored rads are now projected into creatures you scan.") emagged = 1 #undef RAD_LEVEL_NORMAL diff --git a/code/game/objects/items/devices/instruments.dm b/code/game/objects/items/devices/instruments.dm index 56dadd219e..fee2ff365c 100644 --- a/code/game/objects/items/devices/instruments.dm +++ b/code/game/objects/items/devices/instruments.dm @@ -29,7 +29,7 @@ /obj/item/device/instrument/attack_self(mob/user) if(!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to do this!" + to_chat(user, "You don't have the dexterity to do this!") return 1 interact(user) diff --git a/code/game/objects/items/devices/laserpointer.dm b/code/game/objects/items/devices/laserpointer.dm index b0481fc15c..eb041aa2ca 100644 --- a/code/game/objects/items/devices/laserpointer.dm +++ b/code/game/objects/items/devices/laserpointer.dm @@ -44,13 +44,13 @@ if(!user.transferItemToLoc(W, src)) return diode = W - user << "You install a [diode.name] in [src]." + to_chat(user, "You install a [diode.name] in [src].") else - user << "[src] already has a diode installed." + to_chat(user, "[src] already has a diode installed.") else if(istype(W, /obj/item/weapon/screwdriver)) if(diode) - user << "You remove the [diode.name] from \the [src]." + to_chat(user, "You remove the [diode.name] from \the [src].") diode.loc = get_turf(src.loc) diode = null else @@ -63,22 +63,22 @@ if( !(user in (viewers(7,target))) ) return if (!diode) - user << "You point [src] at [target], but nothing happens!" + to_chat(user, "You point [src] at [target], but nothing happens!") return if (!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to do this!" + to_chat(user, "You don't have the dexterity to do this!") return if(ishuman(user)) var/mob/living/carbon/human/H = user if(H.dna.check_mutation(HULK) || (NOGUNS in H.dna.species.species_traits)) - user << "Your fingers can't press the button!" + to_chat(user, "Your fingers can't press the button!") return add_fingerprint(user) //nothing happens if the battery is drained if(recharge_locked) - user << "You point [src] at [target], but it's still charging." + to_chat(user, "You point [src] at [target], but it's still charging.") return var/outmsg @@ -109,7 +109,7 @@ if(prob(effectchance * diode.rating)) S.flash_act(affect_silicon = 1) S.Weaken(rand(5,10)) - S << "Your sensors were overloaded by a laser!" + to_chat(S, "Your sensors were overloaded by a laser!") outmsg = "You overload [S] by shining [src] at their sensors." add_logs(user, S, "shone in the sensors", src) else @@ -139,9 +139,9 @@ I.pixel_y = target.pixel_y + rand(-5,5) if(outmsg) - user << outmsg + to_chat(user, outmsg) else - user << "You point [src] at [target]." + to_chat(user, "You point [src] at [target].") energy -= 1 if(energy <= max_energy) @@ -149,7 +149,7 @@ recharging = 1 START_PROCESSING(SSobj, src) if(energy <= 0) - user << "[src]'s battery is overused, it needs time to recharge!" + to_chat(user, "[src]'s battery is overused, it needs time to recharge!") recharge_locked = 1 flick_overlay_view(I, targloc, 10) diff --git a/code/game/objects/items/devices/lightreplacer.dm b/code/game/objects/items/devices/lightreplacer.dm index 7f727d2b81..bb44b38abb 100644 --- a/code/game/objects/items/devices/lightreplacer.dm +++ b/code/game/objects/items/devices/lightreplacer.dm @@ -73,30 +73,30 @@ /obj/item/device/lightreplacer/examine(mob/user) ..() - user << status_string() + to_chat(user, status_string()) /obj/item/device/lightreplacer/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/stack/sheet/glass)) var/obj/item/stack/sheet/glass/G = W if(uses >= max_uses) - user << "[src.name] is full." + to_chat(user, "[src.name] is full.") return else if(G.use(decrement)) AddUses(increment) - user << "You insert a piece of glass into the [src.name]. You have [uses] light\s remaining." + to_chat(user, "You insert a piece of glass into the [src.name]. You have [uses] light\s remaining.") return else - user << "You need one sheet of glass to replace lights!" + to_chat(user, "You need one sheet of glass to replace lights!") if(istype(W, /obj/item/weapon/shard)) if(uses >= max_uses) - user << "[src.name] is full." + to_chat(user, "[src.name] is full.") return if(!user.temporarilyRemoveItemFromInventory(W)) return AddUses(round(increment*0.75)) - user << "You insert a shard of glass into the [src.name]. You have [uses] light\s remaining." + to_chat(user, "You insert a shard of glass into the [src.name]. You have [uses] light\s remaining.") qdel(W) return @@ -111,7 +111,7 @@ else if(!user.temporarilyRemoveItemFromInventory(W)) return - user << "You insert the [L.name] into the [src.name]" + to_chat(user, "You insert the [L.name] into the [src.name]") AddShards(1, user) qdel(L) return @@ -138,21 +138,21 @@ qdel(L) if(!found_lightbulbs) - user << "\The [S] contains no bulbs." + to_chat(user, "\The [S] contains no bulbs.") return if(!replaced_something && src.uses == max_uses) - user << "\The [src] is full!" + to_chat(user, "\The [src] is full!") return - user << "You fill \the [src] with lights from \the [S]. " + status_string() + "" + to_chat(user, "You fill \the [src] with lights from \the [S]. " + status_string() + "") /obj/item/device/lightreplacer/emag_act() if(!emagged) Emag() /obj/item/device/lightreplacer/attack_self(mob/user) - user << status_string() + to_chat(user, status_string()) /obj/item/device/lightreplacer/update_icon() icon_state = "lightreplacer[emagged]" @@ -176,7 +176,7 @@ AddUses(new_bulbs) bulb_shards = bulb_shards % shards_required if(new_bulbs != 0) - user << "\The [src] has fabricated a new bulb from the broken glass it has stored. It now has [uses] uses." + to_chat(user, "\The [src] has fabricated a new bulb from the broken glass it has stored. It now has [uses] uses.") playsound(src.loc, 'sound/machines/ding.ogg', 50, 1) return new_bulbs @@ -191,7 +191,7 @@ if(target.status != LIGHT_OK) if(CanUse(U)) if(!Use(U)) return - U << "You replace the [target.fitting] with \the [src]." + to_chat(U, "You replace the [target.fitting] with \the [src].") if(target.status != LIGHT_EMPTY) AddShards(1, U) @@ -213,10 +213,10 @@ return else - U << failmsg + to_chat(U, failmsg) return else - U << "There is a working [target.fitting] already inserted!" + to_chat(U, "There is a working [target.fitting] already inserted!") return /obj/item/device/lightreplacer/proc/Emag() @@ -250,7 +250,7 @@ ReplaceLight(A, U) if(!used) - U << failmsg + to_chat(U, failmsg) /obj/item/device/lightreplacer/proc/janicart_insert(mob/user, obj/structure/janitorialcart/J) J.put_in_cart(src, user) diff --git a/code/game/objects/items/devices/megaphone.dm b/code/game/objects/items/devices/megaphone.dm index 2f77861a6a..d10654ba6e 100644 --- a/code/game/objects/items/devices/megaphone.dm +++ b/code/game/objects/items/devices/megaphone.dm @@ -11,14 +11,14 @@ /obj/item/device/megaphone/get_held_item_speechspans(mob/living/carbon/user) if(spamcheck > world.time) - user << "\The [src] needs to recharge!" + to_chat(user, "\The [src] needs to recharge!") else playsound(loc, 'sound/items/megaphone.ogg', 100, 0, 1) spamcheck = world.time + 50 return voicespan /obj/item/device/megaphone/emag_act(mob/user) - user << "You overload \the [src]'s voice synthesizer." + to_chat(user, "You overload \the [src]'s voice synthesizer.") emagged = 1 voicespan = list(SPAN_REALLYBIG, "userdanger") diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm index cd3292d953..5465790f2b 100644 --- a/code/game/objects/items/devices/paicard.dm +++ b/code/game/objects/items/devices/paicard.dm @@ -65,25 +65,27 @@ SSpai.findPAI(src, usr) if(pai) + if(!(loc == usr)) + return if(href_list["setdna"]) if(pai.master_dna) return if(!istype(usr, /mob/living/carbon)) - usr << "You don't have any DNA, or your DNA is incompatible with this device!" + to_chat(usr, "You don't have any DNA, or your DNA is incompatible with this device!") else var/mob/living/carbon/M = usr pai.master = M.real_name pai.master_dna = M.dna.unique_enzymes - pai << "You have been bound to a new master." + to_chat(pai, "You have been bound to a new master.") pai.emittersemicd = FALSE if(href_list["wipe"]) var/confirm = input("Are you CERTAIN you wish to delete the current personality? This action cannot be undone.", "Personality Wipe") in list("Yes", "No") if(confirm == "Yes") if(pai) - pai << "You feel yourself slipping away from reality." - pai << "Byte by byte you lose your sense of self." - pai << "Your mental faculties leave you." - pai << "oblivion... " + to_chat(pai, "You feel yourself slipping away from reality.") + to_chat(pai, "Byte by byte you lose your sense of self.") + to_chat(pai, "Your mental faculties leave you.") + to_chat(pai, "oblivion... ") pai.death(0) if(href_list["wires"]) var/wire = text2num(href_list["wires"]) @@ -95,13 +97,13 @@ pai.add_supplied_law(0,newlaws) if(href_list["toggle_holo"]) if(pai.canholo) - pai << "Your owner has disabled your holomatrix projectors!" + to_chat(pai, "Your owner has disabled your holomatrix projectors!") pai.canholo = FALSE - usr << "You disable your pAI's holomatrix!" + to_chat(usr, "You disable your pAI's holomatrix!") else - pai << "Your owner has enabled your holomatrix projectors!" + to_chat(pai, "Your owner has enabled your holomatrix projectors!") pai.canholo = TRUE - usr << "You enable your pAI's holomatrix!" + to_chat(usr, "You enable your pAI's holomatrix!") attack_self(usr) diff --git a/code/game/objects/items/devices/pipe_painter.dm b/code/game/objects/items/devices/pipe_painter.dm index 914796445e..42d3379976 100644 --- a/code/game/objects/items/devices/pipe_painter.dm +++ b/code/game/objects/items/devices/pipe_painter.dm @@ -37,4 +37,4 @@ /obj/item/device/pipe_painter/examine() ..() - usr << "It is set to [mode]." + to_chat(usr, "It is set to [mode].") diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm index 62005dd645..18658ceeb3 100644 --- a/code/game/objects/items/devices/powersink.dm +++ b/code/game/objects/items/devices/powersink.dm @@ -52,7 +52,7 @@ mode = value update_icon() - SetLuminosity(0) + set_light(0) /obj/item/device/powersink/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver)) @@ -61,7 +61,7 @@ if(isturf(T) && !T.intact) attached = locate() in T if(!attached) - user << "This device must be placed over an exposed, powered cable node!" + to_chat(user, "This device must be placed over an exposed, powered cable node!") else set_mode(CLAMPED_OFF) user.visible_message( \ @@ -69,7 +69,7 @@ "You attach \the [src] to the cable.", "You hear some wires being connected to something.") else - user << "This device must be placed over an exposed, powered cable node!" + to_chat(user, "This device must be placed over an exposed, powered cable node!") else set_mode(DISCONNECTED) user.visible_message( \ @@ -113,7 +113,7 @@ var/datum/powernet/PN = attached.powernet if(PN) - SetLuminosity(5) + set_light(5) // found a powernet, so drain up to max power from it diff --git a/code/game/objects/items/devices/pressureplates.dm b/code/game/objects/items/devices/pressureplates.dm new file mode 100644 index 0000000000..504e85633f --- /dev/null +++ b/code/game/objects/items/devices/pressureplates.dm @@ -0,0 +1,99 @@ + +/obj/item/device/pressure_plate + name = "pressure plate" + desc = "Useful for autismforts" + item_state = "flash" + icon_state = "pressureplate" + level = 1 + var/trigger_mob = TRUE + var/trigger_item = FALSE + var/trigger_silent = FALSE + var/sound/trigger_sound = 'sound/effects/pressureplate.ogg' + var/obj/item/device/assembly/signaler/sigdev = null + var/roundstart_signaller = FALSE + var/roundstart_signaller_freq = 1447 + var/roundstart_signaller_code = 30 + var/roundstart_hide = FALSE + var/removable_signaller = TRUE + var/active = FALSE + var/image/tile_overlay = null + var/crossed = FALSE + var/trigger_delay = 10 + +/obj/item/device/pressure_plate/Initialize() + ..() + tile_overlay = image(icon = 'icons/turf/floors.dmi', icon_state = "pp_overlay") + if(roundstart_signaller) + sigdev = new + sigdev.code = roundstart_signaller_code + sigdev.frequency = roundstart_signaller_freq + if(istype(loc, /turf/open)) + hide(TRUE) + +/obj/item/device/pressure_plate/Crossed(atom/movable/AM) + if(!active) + return + if(isliving(AM) && trigger_mob) + var/mob/living/L = AM + step_living(L) + crossed = TRUE + else if(trigger_item) + step_item(AM) + crossed = TRUE + if(!trigger_silent) + if(isturf(loc)) + loc.visible_message("Click!") + playsound(loc, trigger_sound, 50, 1) + . = ..() + +/obj/item/device/pressure_plate/Uncrossed(atom/movable/AM) + if(crossed) + playsound(loc, trigger_sound, 50, 1) + if(isliving(AM)) + var/mob/living/L = AM + to_chat(L, "You feel something click back into place as you step off [loc]!") + addtimer(CALLBACK(src, .proc/trigger), trigger_delay) + . = ..() + +/obj/item/device/pressure_plate/proc/trigger() + if(istype(sigdev)) + sigdev.signal() + +/obj/item/device/pressure_plate/proc/step_living(mob/living/L) + to_chat(L, "You feel a click under your feet!") + +/obj/item/device/pressure_plate/proc/step_item(atom/movable/AM) + return + +/obj/item/device/pressure_plate/attackby(obj/item/I, mob/living/L) + if(istype(I, /obj/item/device/assembly/signaler) && !istype(sigdev) && removable_signaller && L.transferItemToLoc(I, src)) + sigdev = I + to_chat(L, "You attach [I] to [src]!") + . = ..() + +/obj/item/device/pressure_plate/attack_self(mob/living/L) + if(removable_signaller && istype(sigdev)) + to_chat(L, "You remove [sigdev] from [src]") + if(!L.put_in_hands(sigdev)) + sigdev.forceMove(get_turf(src)) + sigdev = null + . = ..() + +/obj/item/device/pressure_plate/hide(yes) + if(yes) + invisibility = INVISIBILITY_MAXIMUM + anchored = TRUE + icon_state = null + active = TRUE + if(tile_overlay) + loc.overlays += tile_overlay + else + if(crossed) + trigger() //no cheesing. + invisibility = initial(invisibility) + anchored = FALSE + icon_state = initial(icon_state) + active = FALSE + if(tile_overlay) + loc.overlays -= tile_overlay + diff --git a/code/game/objects/items/devices/radio/electropack.dm b/code/game/objects/items/devices/radio/electropack.dm index 2a73005883..f17d08082c 100644 --- a/code/game/objects/items/devices/radio/electropack.dm +++ b/code/game/objects/items/devices/radio/electropack.dm @@ -30,7 +30,7 @@ if(iscarbon(user)) var/mob/living/carbon/C = user if(src == C.back) - user << "You need help taking this off!" + to_chat(user, "You need help taking this off!") return ..() @@ -40,7 +40,7 @@ A.icon = 'icons/obj/assemblies.dmi' if(!user.transferItemToLoc(W, A)) - user << "[W] is stuck to your hand, you cannot attach it to [src]!" + to_chat(user, "[W] is stuck to your hand, you cannot attach it to [src]!") return W.master = A A.part1 = W @@ -109,7 +109,7 @@ var/mob/M = loc step(M, pick(cardinal)) - M << "You feel a sharp shock!" + to_chat(M, "You feel a sharp shock!") var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(3, 1, M) s.start() diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index bdd0508aeb..d9e3e34ab4 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -42,11 +42,14 @@ /obj/item/device/radio/headset/syndicate/alt //undisguised bowman with flash protection name = "syndicate headset" desc = "A syndicate headset that can be used to hear all radio frequencies. Protects ears from flashbangs. \nTo access the syndicate channel, use ; before speaking." - flags = EARBANGPROTECT origin_tech = "syndicate=3" icon_state = "syndie_headset" item_state = "syndie_headset" +/obj/item/device/radio/headset/syndicate/alt/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, BANG_PROTECT) + /obj/item/device/radio/headset/syndicate/alt/leader name = "team leader headset" command = TRUE @@ -72,10 +75,13 @@ /obj/item/device/radio/headset/headset_sec/alt name = "security bowman headset" desc = "This is used by your elite security force. Protects ears from flashbangs. \nTo access the security channel, use :s." - flags = EARBANGPROTECT icon_state = "sec_headset_alt" item_state = "sec_headset_alt" +/obj/item/device/radio/headset/headset_sec/alt/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, BANG_PROTECT) + /obj/item/device/radio/headset/headset_eng name = "engineering radio headset" desc = "When the engineers wish to chat like girls. \nTo access the engineering channel, use :e. " @@ -124,10 +130,13 @@ /obj/item/device/radio/headset/heads/captain/alt name = "\proper the captain's bowman headset" desc = "The headset of the boss. Protects ears from flashbangs. \nChannels are as follows: :c - command, :s - security, :e - engineering, :u - supply, :v - service, :m - medical, :n - science." - flags = EARBANGPROTECT icon_state = "com_headset_alt" item_state = "com_headset_alt" +/obj/item/device/radio/headset/heads/captain/alt/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, BANG_PROTECT) + /obj/item/device/radio/headset/heads/rd name = "\proper the research director's headset" desc = "Headset of the fellow who keeps society marching towards technological singularity. \nTo access the science channel, use :n. For command, use :c." @@ -143,10 +152,13 @@ /obj/item/device/radio/headset/heads/hos/alt name = "\proper the head of security's bowman headset" desc = "The headset of the man in charge of keeping order and protecting the station. Protects ears from flashbangs. \nTo access the security channel, use :s. For command, use :c." - flags = EARBANGPROTECT icon_state = "com_headset_alt" item_state = "com_headset_alt" +/obj/item/device/radio/headset/heads/hos/alt/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, BANG_PROTECT) + /obj/item/device/radio/headset/heads/ce name = "\proper the chief engineer's headset" desc = "The headset of the guy in charge of keeping the station powered and undamaged. \nTo access the engineering channel, use :e. For command, use :c." @@ -196,11 +208,14 @@ /obj/item/device/radio/headset/headset_cent/alt name = "\improper Centcom bowman headset" desc = "A headset especially for emergency response personnel. Protects ears from flashbangs. \nTo access the centcom channel, use :y." - flags = EARBANGPROTECT icon_state = "cent_headset_alt" item_state = "cent_headset_alt" keyslot = null +/obj/item/device/radio/headset/headset_cent/alt/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, BANG_PROTECT) + /obj/item/device/radio/headset/ai name = "\proper Integrated Subspace Transceiver " keyslot2 = new /obj/item/device/encryptionkey/ai @@ -235,14 +250,14 @@ keyslot2 = null recalculateChannels() - user << "You pop out the encryption keys in the headset." + to_chat(user, "You pop out the encryption keys in the headset.") else - user << "This headset doesn't have any unique encryption keys! How useless..." + to_chat(user, "This headset doesn't have any unique encryption keys! How useless...") else if(istype(W, /obj/item/device/encryptionkey/)) if(keyslot && keyslot2) - user << "The headset can't hold another key!" + to_chat(user, "The headset can't hold another key!") return if(!keyslot) diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 38c53ed8d6..9ea214d459 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -238,6 +238,12 @@ var/freqnum = text2num(freq) //Why should we call text2num three times when we can just do it here? var/turf/position = get_turf(src) + var/jammed = FALSE + for(var/obj/item/device/jammer/jammer in active_jammers) + if(get_dist(position,get_turf(jammer)) < jammer.range) + jammed = TRUE + break + //#### Tagging the signal with all appropriate identity values ####// // ||-- The mob's name identity --|| @@ -254,6 +260,8 @@ var/jobname // the mob's "job" + if(jammed) + message = Gibberish(message,100) // --- Human: use their job as seen on the crew manifest - makes it unneeded to carry an ID for an AI to see their job if(ishuman(M)) @@ -499,18 +507,18 @@ /obj/item/device/radio/examine(mob/user) ..() if (b_stat) - user << "[name] can be attached and modified." + to_chat(user, "[name] can be attached and modified.") else - user << "[name] can not be modified or attached." + to_chat(user, "[name] can not be modified or attached.") /obj/item/device/radio/attackby(obj/item/weapon/W, mob/user, params) add_fingerprint(user) if(istype(W, /obj/item/weapon/screwdriver)) b_stat = !b_stat if(b_stat) - user << "The radio can now be attached and modified!" + to_chat(user, "The radio can now be attached and modified!") else - user << "The radio can no longer be modified or attached!" + to_chat(user, "The radio can no longer be modified or attached!") else return ..() @@ -518,7 +526,7 @@ emped++ //There's been an EMP; better count it var/curremp = emped //Remember which EMP this was if (listening && ismob(loc)) // if the radio is turned on and on someone's person they notice - loc << "\The [src] overloads." + to_chat(loc, "\The [src] overloads.") broadcasting = 0 listening = 0 for (var/ch_name in channels) @@ -541,6 +549,10 @@ subspace_switchable = 1 dog_fashion = null +/obj/item/device/radio/borg/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, NO_EMP_WIRES) + /obj/item/device/radio/borg/syndicate syndie = 1 keyslot = new /obj/item/device/encryptionkey/syndicate @@ -565,14 +577,14 @@ keyslot = null recalculateChannels() - user << "You pop out the encryption key in the radio." + to_chat(user, "You pop out the encryption key in the radio.") else - user << "This radio doesn't have any encryption keys!" + to_chat(user, "This radio doesn't have any encryption keys!") else if(istype(W, /obj/item/device/encryptionkey/)) if(keyslot) - user << "The radio can't hold another key!" + to_chat(user, "The radio can't hold another key!") return if(!keyslot) diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 96ae0d164b..3c6968d7f4 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -80,22 +80,22 @@ MASS SPECTROMETER /obj/item/device/healthanalyzer/attack_self(mob/user) if(!scanmode) - user << "You switch the health analyzer to scan chemical contents." + to_chat(user, "You switch the health analyzer to scan chemical contents.") scanmode = 1 else - user << "You switch the health analyzer to check physical health." + to_chat(user, "You switch the health analyzer to check physical health.") scanmode = 0 /obj/item/device/healthanalyzer/attack(mob/living/M, mob/living/carbon/human/user) // Clumsiness/brain damage check if ((user.disabilities & CLUMSY || user.getBrainLoss() >= 60) && prob(50)) - user << "You stupidly try to analyze the floor's vitals!" + to_chat(user, "You stupidly try to analyze the floor's vitals!") user.visible_message("[user] has analyzed the floor's vitals!") - user << "Analyzing results for The floor:\n\tOverall status: Healthy" - user << "Key: Suffocation/Toxin/Burn/Brute" - user << "\tDamage specifics: 0-0-0-0" - user << "Body temperature: ???" + to_chat(user, "Analyzing results for The floor:\n\tOverall status: Healthy") + to_chat(user, "Key: Suffocation/Toxin/Burn/Brute") + to_chat(user, "\tDamage specifics: 0-0-0-0") + to_chat(user, "Body temperature: ???") return user.visible_message("[user] has analyzed [M]'s vitals.") @@ -126,63 +126,62 @@ MASS SPECTROMETER if(ishuman(M)) var/mob/living/carbon/human/H = M if(H.undergoing_cardiac_arrest() && H.stat != DEAD) - user << "Subject suffering from heart attack: Apply defibrillator immediately!" + to_chat(user, "Subject suffering from heart attack: Apply defibrillator immediately!") if(iscarbon(M)) var/mob/living/carbon/C = M if(C.has_brain_worms()) - user << "Foreign organism detected in subject's cranium. Recommended treatment: Dosage of sucrose solution and removal of object via surgery." + to_chat(user, "Foreign organism detected in subject's cranium. Recommended treatment: Dosage of sucrose solution and removal of object via surgery.") - user << "Analyzing results for [M]:\n\tOverall status: [mob_status]" + to_chat(user, "Analyzing results for [M]:\n\tOverall status: [mob_status]") // Damage descriptions if(brute_loss > 10) - user << "\t[brute_loss > 50 ? "Severe" : "Minor"] tissue damage detected." + to_chat(user, "\t[brute_loss > 50 ? "Severe" : "Minor"] tissue damage detected.") if(fire_loss > 10) - user << "\t[fire_loss > 50 ? "Severe" : "Minor"] burn damage detected." + to_chat(user, "\t[fire_loss > 50 ? "Severe" : "Minor"] burn damage detected.") if(oxy_loss > 10) - user << "\t[oxy_loss > 50 ? "Severe" : "Minor"] oxygen deprivation detected." + to_chat(user, "\t[oxy_loss > 50 ? "Severe" : "Minor"] oxygen deprivation detected.") if(tox_loss > 10) - user << "\t[tox_loss > 50 ? "Critical" : "Dangerous"] amount of toxins detected." + to_chat(user, "\t[tox_loss > 50 ? "Critical" : "Dangerous"] amount of toxins detected.") if(M.getStaminaLoss()) - user << "\tSubject appears to be suffering from fatigue." + to_chat(user, "\tSubject appears to be suffering from fatigue.") if (M.getCloneLoss()) - user << "\tSubject appears to have [M.getCloneLoss() > 30 ? "severe" : "minor"] cellular damage." + to_chat(user, "\tSubject appears to have [M.getCloneLoss() > 30 ? "severe" : "minor"] cellular damage.") if (M.reagents && M.reagents.get_reagent_amount("epinephrine")) - user << "\tBloodstream analysis located [M.reagents:get_reagent_amount("epinephrine")] units of rejuvenation chemicals." + to_chat(user, "\tBloodstream analysis located [M.reagents:get_reagent_amount("epinephrine")] units of rejuvenation chemicals.") if (M.getBrainLoss() >= 100 || !M.getorgan(/obj/item/organ/brain)) - user << "\tSubject brain function is non-existent." + to_chat(user, "\tSubject brain function is non-existent.") else if (M.getBrainLoss() >= 60) - user << "\tSevere brain damage detected. Subject likely to have mental retardation." + to_chat(user, "\tSevere brain damage detected. Subject likely to have mental retardation.") else if (M.getBrainLoss() >= 10) - user << "\tBrain damage detected. Subject may have had a concussion." + to_chat(user, "\tBrain damage detected. Subject may have had a concussion.") // Organ damage report if(iscarbon(M) && mode == 1) var/mob/living/carbon/C = M var/list/damaged = C.get_damaged_bodyparts(1,1) if(length(damaged)>0 || oxy_loss>0 || tox_loss>0 || fire_loss>0) - user << "\tDamage: Brute-Burn-Toxin-Suffocation\n\t\tSpecifics: [brute_loss]-[fire_loss]-[tox_loss]-[oxy_loss]" + to_chat(user, "\tDamage: Brute-Burn-Toxin-Suffocation\n\t\tSpecifics: [brute_loss]-[fire_loss]-[tox_loss]-[oxy_loss]") for(var/obj/item/bodypart/org in damaged) - user << "\t\t[capitalize(org.name)]: [(org.brute_dam > 0) ? "[org.brute_dam]" : "0"]-[(org.burn_dam > 0) ? "[org.burn_dam]" : "0"]" + to_chat(user, "\t\t[capitalize(org.name)]: [(org.brute_dam > 0) ? "[org.brute_dam]" : "0"]-[(org.burn_dam > 0) ? "[org.burn_dam]" : "0"]") // Species and body temperature if(ishuman(M)) var/mob/living/carbon/human/H = M - user << "Species: [H.dna.species.name]" - user << "Body temperature: [round(M.bodytemperature-T0C,0.1)] °C ([round(M.bodytemperature*1.8-459.67,0.1)] °F)" + to_chat(user, "Species: [H.dna.species.name]") + 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.status_flags & FAKEDEATH))) - user << "Time of Death: [M.tod]" + to_chat(user, "Time of Death: [M.tod]") var/tdelta = round(world.time - M.timeofdeath) if(tdelta < (DEFIB_TIME_LIMIT * 10)) - user << "Subject died [tdelta / 10] seconds \ - ago, defibrillation may be possible!" + to_chat(user, "Subject died [tdelta / 10] seconds ago, defibrillation may be possible!") for(var/datum/disease/D in M.viruses) if(!(D.visibility_flags & HIDDEN_SCANNER)) - user << "Warning: [D.form] detected\nName: [D.name].\nType: [D.spread_text].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure_text]" + to_chat(user, "Warning: [D.form] detected\nName: [D.name].\nType: [D.spread_text].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure_text]") // Blood Level if(M.has_dna()) @@ -192,7 +191,7 @@ MASS SPECTROMETER if(ishuman(C)) var/mob/living/carbon/human/H = C if(H.bleed_rate) - user << "Subject is bleeding!" + to_chat(user, "Subject is bleeding!") var/blood_percent = round((C.blood_volume / BLOOD_VOLUME_NORMAL)*100) var/blood_type = C.dna.blood_type if(blood_id != "blood")//special blood substance @@ -202,36 +201,36 @@ MASS SPECTROMETER else blood_type = blood_id if(C.blood_volume <= BLOOD_VOLUME_SAFE && C.blood_volume > BLOOD_VOLUME_OKAY) - user << "LOW blood level [blood_percent] %, [C.blood_volume] cl, type: [blood_type]" + to_chat(user, "LOW blood level [blood_percent] %, [C.blood_volume] cl, type: [blood_type]") else if(C.blood_volume <= BLOOD_VOLUME_OKAY) - user << "CRITICAL blood level [blood_percent] %, [C.blood_volume] cl, type: [blood_type]" + to_chat(user, "CRITICAL blood level [blood_percent] %, [C.blood_volume] cl, type: [blood_type]") else - user << "Blood level [blood_percent] %, [C.blood_volume] cl, type: [blood_type]" + to_chat(user, "Blood level [blood_percent] %, [C.blood_volume] cl, type: [blood_type]") var/cyberimp_detect for(var/obj/item/organ/cyberimp/CI in C.internal_organs) if(CI.status == ORGAN_ROBOTIC) cyberimp_detect += "[C.name] is modified with a [CI.name].
" if(cyberimp_detect) - user << "Detected cybernetic modifications:" - user << "[cyberimp_detect]" + to_chat(user, "Detected cybernetic modifications:") + to_chat(user, "[cyberimp_detect]") /proc/chemscan(mob/living/user, mob/living/M) if(ishuman(M)) var/mob/living/carbon/human/H = M if(H.reagents) if(H.reagents.reagent_list.len) - user << "Subject contains the following reagents:" + to_chat(user, "Subject contains the following reagents:") for(var/datum/reagent/R in H.reagents.reagent_list) - user << "[R.volume] units of [R.name][R.overdosed == 1 ? " - OVERDOSING" : ".
"]" + to_chat(user, "[R.volume] units of [R.name][R.overdosed == 1 ? " - OVERDOSING" : ".
"]") else - user << "Subject contains no reagents." + to_chat(user, "Subject contains no reagents.") if(H.reagents.addiction_list.len) - user << "Subject is addicted to the following reagents:" + to_chat(user, "Subject is addicted to the following reagents:") for(var/datum/reagent/R in H.reagents.addiction_list) - user << "[R.name]" + to_chat(user, "[R.name]") else - user << "Subject is not addicted to any reagents." + to_chat(user, "Subject is not addicted to any reagents.") /obj/item/device/healthanalyzer/verb/toggle_mode() set name = "Switch Verbosity" @@ -243,9 +242,9 @@ MASS SPECTROMETER mode = !mode switch (mode) if(1) - usr << "The scanner now shows specific limb damage." + to_chat(usr, "The scanner now shows specific limb damage.") if(0) - usr << "The scanner no longer shows limb damage." + to_chat(usr, "The scanner no longer shows limb damage.") /obj/item/device/analyzer @@ -278,11 +277,11 @@ MASS SPECTROMETER var/pressure = environment.return_pressure() var/total_moles = environment.total_moles() - user << "Results:" + to_chat(user, "Results:") if(abs(pressure - ONE_ATMOSPHERE) < 10) - user << "Pressure: [round(pressure,0.1)] kPa" + to_chat(user, "Pressure: [round(pressure,0.1)] kPa") else - user << "Pressure: [round(pressure,0.1)] kPa" + to_chat(user, "Pressure: [round(pressure,0.1)] kPa") if(total_moles) var/list/env_gases = environment.gases @@ -294,32 +293,32 @@ MASS SPECTROMETER environment.garbage_collect() if(abs(n2_concentration - N2STANDARD) < 20) - user << "Nitrogen: [round(n2_concentration*100, 0.01)] %" + to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] %") else - user << "Nitrogen: [round(n2_concentration*100, 0.01)] %" + to_chat(user, "Nitrogen: [round(n2_concentration*100, 0.01)] %") if(abs(o2_concentration - O2STANDARD) < 2) - user << "Oxygen: [round(o2_concentration*100, 0.01)] %" + to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] %") else - user << "Oxygen: [round(o2_concentration*100, 0.01)] %" + to_chat(user, "Oxygen: [round(o2_concentration*100, 0.01)] %") if(co2_concentration > 0.01) - user << "CO2: [round(co2_concentration*100, 0.01)] %" + to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] %") else - user << "CO2: [round(co2_concentration*100, 0.01)] %" + to_chat(user, "CO2: [round(co2_concentration*100, 0.01)] %") if(plasma_concentration > 0.005) - user << "Plasma: [round(plasma_concentration*100, 0.01)] %" + to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] %") else - user << "Plasma: [round(plasma_concentration*100, 0.01)] %" + to_chat(user, "Plasma: [round(plasma_concentration*100, 0.01)] %") for(var/id in env_gases) if(id in hardcoded_gases) continue var/gas_concentration = env_gases[id][MOLES]/total_moles - user << "[env_gases[id][GAS_META][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] %" - user << "Temperature: [round(environment.temperature-T0C)] °C" + to_chat(user, "[env_gases[id][GAS_META][META_GAS_NAME]]: [round(gas_concentration*100, 0.01)] %") + to_chat(user, "Temperature: [round(environment.temperature-T0C)] °C") /obj/item/device/mass_spectrometer @@ -352,14 +351,14 @@ MASS SPECTROMETER if (user.stat || user.eye_blind) return if (!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to do this!" + to_chat(user, "You don't have the dexterity to do this!") return if(reagents.total_volume) var/list/blood_traces = list() for(var/datum/reagent/R in reagents.reagent_list) if(R.id != "blood") reagents.clear_reagents() - user << "The sample was contaminated! Please insert another sample." + to_chat(user, "The sample was contaminated! Please insert another sample.") return else blood_traces = params2list(R.data["trace_chem"]) @@ -373,7 +372,7 @@ MASS SPECTROMETER if(details) dat += " ([blood_traces[R]] units)" dat += "" - user << dat + to_chat(user, dat) reagents.clear_reagents() @@ -400,31 +399,31 @@ MASS SPECTROMETER if(user.stat || user.eye_blind) return if (!isslime(M)) - user << "This device can only scan slimes!" + to_chat(user, "This device can only scan slimes!") return var/mob/living/simple_animal/slime/T = M - user << "Slime scan results:" - user << "[T.colour] [T.is_adult ? "adult" : "baby"] slime" - user << "Nutrition: [T.nutrition]/[T.get_max_nutrition()]" + to_chat(user, "Slime scan results:") + to_chat(user, "[T.colour] [T.is_adult ? "adult" : "baby"] slime") + to_chat(user, "Nutrition: [T.nutrition]/[T.get_max_nutrition()]") if (T.nutrition < T.get_starve_nutrition()) - user << "Warning: slime is starving!" + to_chat(user, "Warning: slime is starving!") else if (T.nutrition < T.get_hunger_nutrition()) - user << "Warning: slime is hungry" - user << "Electric change strength: [T.powerlevel]" - user << "Health: [round(T.health/T.maxHealth,0.01)*100]" + to_chat(user, "Warning: slime is hungry") + to_chat(user, "Electric change strength: [T.powerlevel]") + to_chat(user, "Health: [round(T.health/T.maxHealth,0.01)*100]") if (T.slime_mutation[4] == T.colour) - user << "This slime does not evolve any further." + to_chat(user, "This slime does not evolve any further.") else if (T.slime_mutation[3] == T.slime_mutation[4]) if (T.slime_mutation[2] == T.slime_mutation[1]) - user << "Possible mutation: [T.slime_mutation[3]]" - user << "Genetic destability: [T.mutation_chance/2] % chance of mutation on splitting" + to_chat(user, "Possible mutation: [T.slime_mutation[3]]") + to_chat(user, "Genetic destability: [T.mutation_chance/2] % chance of mutation on splitting") else - user << "Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]] (x2)" - user << "Genetic destability: [T.mutation_chance] % chance of mutation on splitting" + to_chat(user, "Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]] (x2)") + to_chat(user, "Genetic destability: [T.mutation_chance] % chance of mutation on splitting") else - user << "Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]], [T.slime_mutation[4]]" - user << "Genetic destability: [T.mutation_chance] % chance of mutation on splitting" + to_chat(user, "Possible mutations: [T.slime_mutation[1]], [T.slime_mutation[2]], [T.slime_mutation[3]], [T.slime_mutation[4]]") + to_chat(user, "Genetic destability: [T.mutation_chance] % chance of mutation on splitting") if (T.cores > 1) - user << "Anomalious slime core amount detected" - user << "Growth progress: [T.amount_grown]/[SLIME_EVOLUTION_THRESHOLD]" + to_chat(user, "Anomalious slime core amount detected") + to_chat(user, "Growth progress: [T.amount_grown]/[SLIME_EVOLUTION_THRESHOLD]") diff --git a/code/game/objects/items/devices/taperecorder.dm b/code/game/objects/items/devices/taperecorder.dm index c3f6dd488f..95c04e9579 100644 --- a/code/game/objects/items/devices/taperecorder.dm +++ b/code/game/objects/items/devices/taperecorder.dm @@ -27,7 +27,7 @@ /obj/item/device/taperecorder/examine(mob/user) ..() - user << "The wire panel is [open_panel ? "opened" : "closed"]." + to_chat(user, "The wire panel is [open_panel ? "opened" : "closed"].") /obj/item/device/taperecorder/attackby(obj/item/I, mob/user, params) @@ -35,13 +35,13 @@ if(!user.transferItemToLoc(I,src)) return mytape = I - user << "You insert [I] into [src]." + to_chat(user, "You insert [I] into [src].") update_icon() /obj/item/device/taperecorder/proc/eject(mob/user) if(mytape) - user << "You remove [mytape] from [src]." + to_chat(user, "You remove [mytape] from [src].") stop() user.put_in_hands(mytape) mytape = null @@ -111,7 +111,7 @@ return if(mytape.used_capacity < mytape.max_capacity) - usr << "Recording started." + to_chat(usr, "Recording started.") recording = 1 update_icon() mytape.timestamp += mytape.used_capacity @@ -127,7 +127,7 @@ recording = 0 update_icon() else - usr << "The tape is full." + to_chat(usr, "The tape is full.") /obj/item/device/taperecorder/verb/stop() @@ -141,7 +141,7 @@ recording = 0 mytape.timestamp += mytape.used_capacity mytape.storedinfo += "\[[time2text(mytape.used_capacity * 10,"mm:ss")]\] Recording stopped." - usr << "Recording stopped." + to_chat(usr, "Recording stopped.") return else if(playing) playing = 0 @@ -165,7 +165,7 @@ playing = 1 update_icon() - usr << "Playing started." + to_chat(usr, "Playing started.") var/used = mytape.used_capacity //to stop runtimes when you eject the tape var/max = mytape.max_capacity for(var/i = 1, used < max, sleep(10 * playsleepseconds)) @@ -210,12 +210,12 @@ if(!mytape) return if(!canprint) - usr << "The recorder can't print that fast!" + to_chat(usr, "The recorder can't print that fast!") return if(recording || playing) return - usr << "Transcript printed." + to_chat(usr, "Transcript printed.") var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(get_turf(src)) var/t1 = "Transcript:

" for(var/i = 1, mytape.storedinfo.len >= i, i++) @@ -254,7 +254,7 @@ /obj/item/device/tape/attack_self(mob/user) if(!ruined) - user << "You pull out all the tape!" + to_chat(user, "You pull out all the tape!") ruin() @@ -279,9 +279,9 @@ else if(istype(I, /obj/item/weapon/pen)) delay = 120*1.5 if (delay != -1) - user << "You start winding the tape back in..." + to_chat(user, "You start winding the tape back in...") if(do_after(user, delay, target = src)) - user << "You wound the tape back in." + to_chat(user, "You wound the tape back in.") fix() //Random colour tapes diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index f361a9f572..e51cc33fe0 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -34,7 +34,7 @@ effective or pretty fucking useless. /obj/item/device/batterer/attack_self(mob/living/carbon/user, flag = 0, emp = 0) if(!user) return if(times_used >= max_uses) - user << "The mind batterer has been burnt out!" + to_chat(user, "The mind batterer has been burnt out!") return add_logs(user, null, "knocked down people in the area", src) @@ -45,13 +45,13 @@ effective or pretty fucking useless. M.Weaken(rand(10,20)) if(prob(25)) M.Stun(rand(5,10)) - M << "You feel a tremendous, paralyzing wave flood your mind." + to_chat(M, "You feel a tremendous, paralyzing wave flood your mind.") else - M << "You feel a sudden, electric jolt travel through your head." + to_chat(M, "You feel a sudden, electric jolt travel through your head.") playsound(src.loc, 'sound/misc/interference.ogg', 50, 1) - user << "You trigger [src]." + to_chat(user, "You trigger [src].") times_used += 1 if(times_used >= max_uses) icon_state = "battererburnt" @@ -86,14 +86,14 @@ effective or pretty fucking useless. used = 1 icon_state = "health1" handle_cooldown(cooldown) // splits off to handle the cooldown while handling wavelength - user << "Successfully irradiated [M]." + to_chat(user, "Successfully irradiated [M].") spawn((wavelength+(intensity*4))*5) if(M) if(intensity >= 5) M.apply_effect(round(intensity/1.5), PARALYZE) M.rad_act(intensity*10) else - user << "The radioactive microlaser is still recharging." + to_chat(user, "The radioactive microlaser is still recharging.") /obj/item/device/healthanalyzer/rad_laser/proc/handle_cooldown(cooldown) spawn(cooldown) @@ -192,14 +192,14 @@ effective or pretty fucking useless. /obj/item/device/shadowcloak/proc/Activate(mob/living/carbon/human/user) if(!user) return - user << "You activate [src]." + to_chat(user, "You activate [src].") src.user = user START_PROCESSING(SSobj, src) old_alpha = user.alpha on = 1 /obj/item/device/shadowcloak/proc/Deactivate() - user << "You deactivate [src]." + to_chat(user, "You deactivate [src].") STOP_PROCESSING(SSobj, src) if(user) user.alpha = old_alpha @@ -218,8 +218,27 @@ effective or pretty fucking useless. var/turf/T = get_turf(src) if(on) var/lumcount = T.get_lumcount() - if(lumcount > 3) + if(lumcount > 0.3) charge = max(0,charge - 25)//Quick decrease in light else charge = min(max_charge,charge + 50) //Charge in the dark animate(user,alpha = Clamp(255 - charge,0,255),time = 10) + + +/obj/item/device/jammer + name = "radio jammer" + desc = "Device used to disrupt nearby radio communication." + icon_state = "jammer" + var/active = FALSE + var/range = 7 + +/obj/item/device/jammer/attack_self(mob/user) + to_chat(user,"You [active ? "deactivate" : "activate"] the [src]") + active = !active + if(active) + active_jammers |= src + else + active_jammers -= src + update_icon() + + \ No newline at end of file diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm index 91b3c4b9b0..80d0d31056 100644 --- a/code/game/objects/items/devices/transfer_valve.dm +++ b/code/game/objects/items/devices/transfer_valve.dm @@ -18,21 +18,21 @@ /obj/item/device/transfer_valve/attackby(obj/item/item, mob/user, params) if(istype(item, /obj/item/weapon/tank)) if(tank_one && tank_two) - user << "There are already two tanks attached, remove one first!" + to_chat(user, "There are already two tanks attached, remove one first!") return if(!tank_one) if(!user.transferItemToLoc(item, src)) return tank_one = item - user << "You attach the tank to the transfer valve." + to_chat(user, "You attach the tank to the transfer valve.") if(item.w_class > w_class) w_class = item.w_class else if(!tank_two) if(!user.transferItemToLoc(item, src)) return tank_two = item - user << "You attach the tank to the transfer valve." + to_chat(user, "You attach the tank to the transfer valve.") if(item.w_class > w_class) w_class = item.w_class @@ -41,15 +41,15 @@ else if(isassembly(item)) var/obj/item/device/assembly/A = item if(A.secured) - user << "The device is secured." + to_chat(user, "The device is secured.") return if(attached_device) - user << "There is already a device attached to the valve, remove it first!" + to_chat(user, "There is already a device attached to the valve, remove it first!") return if(!user.transferItemToLoc(item, src)) return attached_device = A - user << "You attach the [item] to the valve controls and secure it." + to_chat(user, "You attach the [item] to the valve controls and secure it.") A.holder = src A.toggle_secure() //this calls update_icon(), which calls update_icon() on the holder (i.e. the bomb). diff --git a/code/game/objects/items/documents.dm b/code/game/objects/items/documents.dm index 06e3216022..ea24e77832 100644 --- a/code/game/objects/items/documents.dm +++ b/code/game/objects/items/documents.dm @@ -48,11 +48,11 @@ /obj/item/documents/photocopy/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/toy/crayon/red) || istype(O, /obj/item/toy/crayon/blue)) if (forgedseal) - user << "You have already forged a seal on [src]!" + to_chat(user, "You have already forged a seal on [src]!") else var/obj/item/toy/crayon/C = O name = "[C.item_color] secret documents" icon_state = "docs_[C.item_color]" forgedseal = C.item_color - user << "You forge the official seal with a [C.item_color] crayon. No one will notice... right?" + to_chat(user, "You forge the official seal with a [C.item_color] crayon. No one will notice... right?") update_icon() \ No newline at end of file diff --git a/code/game/objects/items/eightball.dm b/code/game/objects/items/eightball.dm new file mode 100644 index 0000000000..eb3a4172f7 --- /dev/null +++ b/code/game/objects/items/eightball.dm @@ -0,0 +1,200 @@ +/obj/item/toy/eightball + name = "magic eightball" + desc = "A black ball with a stenciled number eight in white on the side. It seems full of dark liquid.\nThe instructions state that you should ask your question aloud, and then shake." + + icon = 'icons/obj/toy.dmi' + icon_state = "eightball" + + verb_say = "rattles" + + var/shaking = FALSE + var/on_cooldown = FALSE + + var/shake_time = 150 + var/cooldown_time = 1800 + + var/static/list/possible_answers = list( + "It is certain", + "It is decidedly so", + "Without a doubt", + "Yes definitely", + "You may rely on it", + "As I see it, yes", + "Most likely", + "Outlook good", + "Yes", + "Signs point to yes", + "Reply hazy try again", + "Ask again later", + "Better not tell you now", + "Cannot predict now", + "Concentrate and ask again", + "Don't count on it", + "My reply is no", + "My sources say no", + "Outlook not so good", + "Very doubtful") + +/obj/item/toy/eightball/Initialize(mapload) + ..() + if(prob(1)) + new /obj/item/toy/eightball/haunted(get_turf(src)) + qdel(src) + +/obj/item/toy/eightball/attack_self(mob/user) + if(shaking) + return + + if(on_cooldown) + to_chat(user, "[src] was shaken recently, it needs time to settle.") + return + + user.visible_message("[user] starts shaking [src].", "You start shaking [src].", "You hear shaking and sloshing.") + + shaking = TRUE + + start_shaking(user) + if(do_after(user, shake_time, needhand=TRUE, target=src, progress=TRUE)) + var/answer = get_answer() + say(answer) + + on_cooldown = TRUE + addtimer(CALLBACK(src, .proc/clear_cooldown), cooldown_time) + + shaking = FALSE + +/obj/item/toy/eightball/proc/start_shaking(user) + return + +/obj/item/toy/eightball/proc/get_answer() + return pick(possible_answers) + +/obj/item/toy/eightball/proc/clear_cooldown() + on_cooldown = FALSE + +// A broken magic eightball, it only says "YOU SUCK" over and over again. + +/obj/item/toy/eightball/broken + name = "broken magic eightball" + desc = "A black ball with a stenciled number eight in white on the side. It is cracked and seems empty." + var/fixed_answer + +/obj/item/toy/eightball/broken/Initialize(mapload) + ..() + fixed_answer = pick(possible_answers) + +/obj/item/toy/eightball/broken/get_answer() + return fixed_answer + +// Haunted eightball is identical in description and function to toy, +// except it actually ASKS THE DEAD (wooooo) + +/obj/item/toy/eightball/haunted + flags = HEAR + var/last_message + var/selected_message + var/list/votes + +/obj/item/toy/eightball/haunted/Initialize(mapload) + ..() + votes = list() + poi_list |= src + +/obj/item/toy/eightball/haunted/Destroy() + poi_list -= src + . = ..() + +/obj/item/toy/eightball/haunted/attack_ghost(mob/user) + if(!shaking) + to_chat(user, "[src] is not currently being shaken.") + return + interact(user) + +/obj/item/toy/eightball/haunted/Hear(message, atom/movable/speaker, message_langs, raw_message, radio_freq, spans) + last_message = raw_message + +/obj/item/toy/eightball/haunted/start_shaking(mob/user) + // notify ghosts that someone's shaking a haunted eightball + // and inform them of the message, (hopefully a yes/no question) + selected_message = last_message + notify_ghosts("[user] is shaking [src], hoping to get an answer to \"[selected_message]\"", source=src, enter_link="(Click to help)", action=NOTIFY_ATTACK) + +/obj/item/toy/eightball/haunted/Topic(href, href_list) + if(href_list["interact"]) + if(isobserver(usr)) + interact(usr) + +/obj/item/toy/eightball/haunted/proc/get_vote_tallies() + var/list/answers = list() + for(var/ckey in votes) + var/selected = votes[ckey] + if(selected in answers) + answers[selected]++ + else + answers[selected] = 1 + + return answers + + +/obj/item/toy/eightball/haunted/get_answer() + if(!votes.len) + return pick(possible_answers) + + var/list/tallied_votes = get_vote_tallies() + + // I miss python sorting, then I wouldn't have to muck about with + // all this + var/most_popular_answer + var/most_amount = 0 + // yes, if there is a tie, there is an arbitary decision + // but we never said the spirit world was fair + for(var/A in tallied_votes) + var/amount = tallied_votes[A] + if(amount > most_amount) + most_popular_answer = A + + return most_popular_answer + +/obj/item/toy/eightball/haunted/ui_interact(mob/user, ui_key="main", datum/tgui/ui=null, force_open=0, datum/tgui/master_ui=null, datum/ui_state/state=observer_state) + + ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) + if(!ui) + ui = new(user, src, ui_key, "eightball", name, 400, 600, master_ui, state) + ui.open() + +/obj/item/toy/eightball/haunted/ui_data(mob/user) + var/list/data = list() + data["shaking"] = shaking + data["question"] = selected_message + var/list/tallied_votes = get_vote_tallies() + + data["answers"] = list() + + for(var/pa in possible_answers) + var/list/L = list() + L["answer"] = pa + var/amount = 0 + if(pa in tallied_votes) + amount = tallied_votes[pa] + L["amount"] = amount + var/selected = FALSE + if(votes[user.ckey] == pa) + selected = TRUE + L["selected"] = selected + + data["answers"] += list(L) + return data + +/obj/item/toy/eightball/haunted/ui_act(action, params) + if(..()) + return + var/mob/user = usr + + switch(action) + if("vote") + var/selected_answer = params["answer"] + if(!selected_answer in possible_answers) + return + else + votes[user.ckey] = selected_answer + . = TRUE diff --git a/code/game/objects/items/latexballoon.dm b/code/game/objects/items/latexballoon.dm index 40b32b0b3c..279d8818d4 100644 --- a/code/game/objects/items/latexballoon.dm +++ b/code/game/objects/items/latexballoon.dm @@ -17,7 +17,7 @@ icon_state = "latexballon_blow" item_state = "latexballon" user.update_inv_hands() - user << "You blow up [src] with [tank]." + to_chat(user, "You blow up [src] with [tank].") air_contents = tank.remove_air_volume(3) /obj/item/latexballon/proc/burst() diff --git a/code/game/objects/items/nuke_tools.dm b/code/game/objects/items/nuke_tools.dm index 7fe512bfaf..c32cdc14e0 100644 --- a/code/game/objects/items/nuke_tools.dm +++ b/code/game/objects/items/nuke_tools.dm @@ -42,7 +42,7 @@ ncore.forceMove(src) core = ncore icon_state = "core_container_loaded" - user << "Container is sealing..." + to_chat(user, "Container is sealing...") addtimer(CALLBACK(src, .proc/seal), 50) return 1 @@ -52,12 +52,12 @@ icon_state = "core_container_sealed" playsound(loc, 'sound/items/Deconstruct.ogg', 60, 1) if(ismob(loc)) - loc << "[src] is permanently sealed, [core]'s radiation is contained." + to_chat(loc, "[src] is permanently sealed, [core]'s radiation is contained.") /obj/item/nuke_core_container/attackby(obj/item/nuke_core/core, mob/user) if(istype(core)) if(!user.temporarilyRemoveItemFromInventory(core)) - user << "The [core] is stuck to your hand!" + to_chat(user, "The [core] is stuck to your hand!") return else load(core, user) diff --git a/code/game/objects/items/religion.dm b/code/game/objects/items/religion.dm index c351169993..ccf4085191 100644 --- a/code/game/objects/items/religion.dm +++ b/code/game/objects/items/religion.dm @@ -10,11 +10,11 @@ /obj/item/weapon/banner/attack_self(mob/living/carbon/human/user) if(moralecooldown + moralewait > world.time) return - user << "You increase the morale of your fellows!" + to_chat(user, "You increase the morale of your fellows!") moralecooldown = world.time for(var/mob/living/carbon/human/H in range(4,get_turf(src))) - H << "Your morale is increased by [user]'s banner!" + to_chat(H, "Your morale is increased by [user]'s banner!") H.adjustBruteLoss(-15) H.adjustFireLoss(-15) H.AdjustStunned(-2) diff --git a/code/game/objects/items/robot/ai_upgrades.dm b/code/game/objects/items/robot/ai_upgrades.dm index 97a1fab67d..dad3db6b1d 100644 --- a/code/game/objects/items/robot/ai_upgrades.dm +++ b/code/game/objects/items/robot/ai_upgrades.dm @@ -14,11 +14,11 @@ return if(AI.malf_picker) AI.malf_picker.processing_time += 50 - AI << "[user] has attempted to upgrade you with combat software that you already possess. You gain 50 points to spend on Malfunction Modules instead." + to_chat(AI, "[user] has attempted to upgrade you with combat software that you already possess. You gain 50 points to spend on Malfunction Modules instead.") else - AI << "[user] has upgraded you with combat software!" + to_chat(AI, "[user] has upgraded you with combat software!") AI.add_malf_picker() - user << "You upgrade [AI]. [src] is consumed in the process." + to_chat(user, "You upgrade [AI]. [src] is consumed in the process.") qdel(src) @@ -34,7 +34,7 @@ return if(AI.eyeobj) AI.eyeobj.relay_speech = TRUE - AI << "[user] has upgraded you with surveillance software!" - AI << "Via a combination of hidden microphones and lip reading software, you are able to use your cameras to listen in on conversations." - user << "You upgrade [AI]. [src] is consumed in the process." + to_chat(AI, "[user] has upgraded you with surveillance software!") + to_chat(AI, "Via a combination of hidden microphones and lip reading software, you are able to use your cameras to listen in on conversations.") + to_chat(user, "You upgrade [AI]. [src] is consumed in the process.") qdel(src) diff --git a/code/game/objects/items/robot/robot_items.dm b/code/game/objects/items/robot/robot_items.dm index 8fd55925e3..c8c7cd1397 100644 --- a/code/game/objects/items/robot/robot_items.dm +++ b/code/game/objects/items/robot/robot_items.dm @@ -57,13 +57,13 @@ mode = 0 switch(mode) if(0) - user << "Power reset. Hugs!" + to_chat(user, "Power reset. Hugs!") if(1) - user << "Power increased!" + to_chat(user, "Power increased!") if(2) - user << "BZZT. Electrifying arms..." + to_chat(user, "BZZT. Electrifying arms...") if(3) - user << "ERROR: ARM ACTUATORS OVERLOADED." + to_chat(user, "ERROR: ARM ACTUATORS OVERLOADED.") /obj/item/borg/cyborghug/attack(mob/living/M, mob/living/silicon/robot/user) if(M == user) @@ -172,7 +172,7 @@ mode = "charge" else mode = "draw" - user << "You toggle [src] to \"[mode]\" mode." + to_chat(user, "You toggle [src] to \"[mode]\" mode.") update_icon() /obj/item/borg/charger/afterattack(obj/item/target, mob/living/silicon/robot/user, proximity_flag) @@ -182,10 +182,10 @@ if(is_type_in_list(target, charge_machines)) var/obj/machinery/M = target if((M.stat & (NOPOWER|BROKEN)) || !M.anchored) - user << "[M] is unpowered!" + to_chat(user, "[M] is unpowered!") return - user << "You connect to [M]'s power line..." + to_chat(user, "You connect to [M]'s power line...") while(do_after(user, 15, target = M, progress = 0)) if(!user || !user.cell || mode != "draw") return @@ -198,27 +198,27 @@ M.use_power(200) - user << "You stop charging youself." + to_chat(user, "You stop charging youself.") else if(is_type_in_list(target, charge_items)) var/obj/item/weapon/stock_parts/cell/cell = target if(!istype(cell)) cell = locate(/obj/item/weapon/stock_parts/cell) in target if(!cell) - user << "[target] has no power cell!" + to_chat(user, "[target] has no power cell!") return if(istype(target, /obj/item/weapon/gun/energy)) var/obj/item/weapon/gun/energy/E = target if(!E.can_charge) - user << "[target] has no power port!" + to_chat(user, "[target] has no power port!") return if(!cell.charge) - user << "[target] has no power!" + to_chat(user, "[target] has no power!") - user << "You connect to [target]'s power port..." + to_chat(user, "You connect to [target]'s power port...") while(do_after(user, 15, target = target, progress = 0)) if(!user || !user.cell || mode != "draw") @@ -237,26 +237,26 @@ break target.update_icon() - user << "You stop charging youself." + to_chat(user, "You stop charging youself.") else if(is_type_in_list(target, charge_items)) var/obj/item/weapon/stock_parts/cell/cell = target if(!istype(cell)) cell = locate(/obj/item/weapon/stock_parts/cell) in target if(!cell) - user << "[target] has no power cell!" + to_chat(user, "[target] has no power cell!") return if(istype(target, /obj/item/weapon/gun/energy)) var/obj/item/weapon/gun/energy/E = target if(!E.can_charge) - user << "[target] has no power port!" + to_chat(user, "[target] has no power port!") return if(cell.charge >= cell.maxcharge) - user << "[target] is already charged!" + to_chat(user, "[target] is already charged!") - user << "You connect to [target]'s power port..." + to_chat(user, "You connect to [target]'s power port...") while(do_after(user, 15, target = target, progress = 0)) if(!user || !user.cell || mode != "charge") @@ -275,7 +275,7 @@ break target.update_icon() - user << "You stop charging [target]." + to_chat(user, "You stop charging [target].") /obj/item/device/harmalarm name = "Sonic Harm Prevention Tool" @@ -287,20 +287,20 @@ /obj/item/device/harmalarm/emag_act(mob/user) emagged = !emagged if(emagged) - user << "You short out the safeties on the [src]!" + to_chat(user, "You short out the safeties on the [src]!") else - user << "You reset the safeties on the [src]!" + to_chat(user, "You reset the safeties on the [src]!") /obj/item/device/harmalarm/attack_self(mob/user) var/safety = !emagged if(cooldown > world.time) - user << "The device is still recharging!" + to_chat(user, "The device is still recharging!") return if(iscyborg(user)) var/mob/living/silicon/robot/R = user if(R.cell.charge < 1200) - user << "You don't have enough charge to do this!" + to_chat(user, "You don't have enough charge to do this!") return R.cell.charge -= 1000 if(R.emagged) @@ -319,7 +319,7 @@ log_game("[user.ckey]([user]) used a Cyborg Harm Alarm in ([user.x],[user.y],[user.z])") if(iscyborg(user)) var/mob/living/silicon/robot/R = user - R.connected_ai << "
NOTICE - Peacekeeping 'HARM ALARM' used by: [user]
" + to_chat(R.connected_ai, "
NOTICE - Peacekeeping 'HARM ALARM' used by: [user]
") return @@ -375,7 +375,7 @@ /obj/item/borg/lollipop/proc/dispense(atom/A, mob/user) if(candy <= 0) - user << "No lollipops left in storage!" + to_chat(user, "No lollipops left in storage!") return FALSE var/turf/T = get_turf(A) if(!T || !istype(T) || !isopenturf(T)) @@ -387,13 +387,13 @@ new /obj/item/weapon/reagent_containers/food/snacks/lollipop(T) candy-- check_amount() - user << "Dispensing lollipop..." + to_chat(user, "Dispensing lollipop...") playsound(src.loc, 'sound/machines/click.ogg', 50, 1) return TRUE /obj/item/borg/lollipop/proc/shootL(atom/target, mob/living/user, params) if(candy <= 0) - user << "Not enough lollipops left!" + to_chat(user, "Not enough lollipops left!") return FALSE candy-- var/obj/item/ammo_casing/caseless/lollipop/A = new /obj/item/ammo_casing/caseless/lollipop(src) @@ -408,7 +408,7 @@ /obj/item/borg/lollipop/proc/shootG(atom/target, mob/living/user, params) //Most certainly a good idea. if(candy <= 0) - user << "Not enough gumballs left!" + to_chat(user, "Not enough gumballs left!") return FALSE candy-- var/obj/item/ammo_casing/caseless/gumball/A = new /obj/item/ammo_casing/caseless/gumball(src) @@ -427,7 +427,7 @@ if(iscyborg(user)) var/mob/living/silicon/robot/R = user if(!R.cell.use(12)) - user << "Not enough power." + to_chat(user, "Not enough power.") return FALSE if(R.emagged) hitdamage = emaggedhitdamage @@ -446,13 +446,13 @@ switch(mode) if(1) mode++ - user << "Module is now throwing lollipops." + to_chat(user, "Module is now throwing lollipops.") if(2) mode++ - user << "Module is now blasting gumballs." + to_chat(user, "Module is now blasting gumballs.") if(3) mode = 1 - user << "Module is now dispensing lollipops." + to_chat(user, "Module is now dispensing lollipops.") ..() /obj/item/ammo_casing/caseless/gumball diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index 9793a7dd22..a0d0728487 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -70,13 +70,13 @@ if (M.use(1)) var/obj/item/weapon/ed209_assembly/B = new /obj/item/weapon/ed209_assembly B.loc = get_turf(src) - user << "You arm the robot frame." + to_chat(user, "You arm the robot frame.") var/holding_this = user.get_inactive_held_item()==src qdel(src) if (holding_this) user.put_in_inactive_hand(B) else - user << "You need one sheet of metal to start building ED-209!" + to_chat(user, "You need one sheet of metal to start building ED-209!") return else if(istype(W, /obj/item/bodypart/l_leg/robot)) if(src.l_leg) @@ -130,15 +130,15 @@ src.chest = CH src.updateicon() else if(!CH.wired) - user << "You need to attach wires to it first!" + to_chat(user, "You need to attach wires to it first!") else - user << "You need to attach a cell to it first!" + to_chat(user, "You need to attach a cell to it first!") else if(istype(W, /obj/item/bodypart/head/robot)) var/obj/item/bodypart/head/robot/HD = W for(var/X in HD.contents) if(istype(X, /obj/item/organ)) - user << "There are organs inside [HD]!" + to_chat(user, "There are organs inside [HD]!") return if(src.head) return @@ -150,39 +150,39 @@ src.head = HD src.updateicon() else - user << "You need to attach a flash to it first!" + to_chat(user, "You need to attach a flash to it first!") else if (istype(W, /obj/item/device/multitool)) if(check_completion()) Interact(user) else - user << "The endoskeleton must be assembled before debugging can begin!" + to_chat(user, "The endoskeleton must be assembled before debugging can begin!") else if(istype(W, /obj/item/device/mmi)) var/obj/item/device/mmi/M = W if(check_completion()) if(!isturf(loc)) - user << "You can't put [M] in, the frame has to be standing on the ground to be perfectly precise!" + to_chat(user, "You can't put [M] in, the frame has to be standing on the ground to be perfectly precise!") return if(!M.brainmob) - user << "Sticking an empty [M.name] into the frame would sort of defeat the purpose!" + to_chat(user, "Sticking an empty [M.name] into the frame would sort of defeat the purpose!") return var/mob/living/brain/BM = M.brainmob if(!BM.key || !BM.mind) - user << "The MMI indicates that their mind is completely unresponsive; there's no point!" + to_chat(user, "The MMI indicates that their mind is completely unresponsive; there's no point!") return if(!BM.client) //braindead - user << "The MMI indicates that their mind is currently inactive; it might change!" + to_chat(user, "The MMI indicates that their mind is currently inactive; it might change!") return if(BM.stat == DEAD || (M.brain && M.brain.damaged_brain)) - user << "Sticking a dead brain into the frame would sort of defeat the purpose!" + to_chat(user, "Sticking a dead brain into the frame would sort of defeat the purpose!") return if(jobban_isbanned(BM, "Cyborg")) - user << "This [M.name] does not seem to fit!" + to_chat(user, "This [M.name] does not seem to fit!") return if(!user.temporarilyRemoveItemFromInventory(W)) @@ -221,8 +221,8 @@ if(O.mind && O.mind.special_role) O.mind.store_memory("As a cyborg, you must obey your silicon laws and master AI above all else. Your objectives will consider you to be dead.") - O << "You have been robotized!" - O << "You must obey your silicon laws and master AI above all else. Your objectives will consider you to be dead." + to_chat(O, "You have been robotized!") + to_chat(O, "You must obey your silicon laws and master AI above all else. Your objectives will consider you to be dead.") O.job = "Cyborg" @@ -243,13 +243,13 @@ if(!locomotion) O.lockcharge = 1 O.update_canmove() - O << "Error: Servo motors unresponsive." + to_chat(O, "Error: Servo motors unresponsive.") else - user << "The MMI must go in after everything else!" + to_chat(user, "The MMI must go in after everything else!") else if(istype(W,/obj/item/weapon/pen)) - user << "You need to use a multitool to name [src]!" + to_chat(user, "You need to use a multitool to name [src]!") else return ..() @@ -272,7 +272,7 @@ var/mob/living/living_user = usr var/obj/item/item_in_hand = living_user.get_active_held_item() if(!istype(item_in_hand, /obj/item/device/multitool)) - living_user << "You need a multitool!" + to_chat(living_user, "You need a multitool!") return if(href_list["Name"]) @@ -287,7 +287,7 @@ else if(href_list["Master"]) forced_ai = select_active_ai(usr) if(!forced_ai) - usr << "No active AIs detected." + to_chat(usr, "No active AIs detected.") else if(href_list["Law"]) lawsync = !lawsync diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index 4e7fbfbf10..a83cf764ae 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -17,11 +17,11 @@ /obj/item/borg/upgrade/proc/action(mob/living/silicon/robot/R) if(R.stat == DEAD) - usr << "[src] will not function on a deceased cyborg." + to_chat(usr, "[src] will not function on a deceased cyborg.") return 1 if(module_type && !istype(R.module, module_type)) - R << "Upgrade mounting error! No suitable hardpoint detected!" - usr << "There's no mounting point for the module!" + to_chat(R, "Upgrade mounting error! No suitable hardpoint detected!") + to_chat(usr, "There's no mounting point for the module!") return 1 /obj/item/borg/upgrade/rename @@ -56,7 +56,7 @@ /obj/item/borg/upgrade/restart/action(mob/living/silicon/robot/R) if(R.health < 0) - usr << "You have to repair the cyborg before using this module!" + to_chat(usr, "You have to repair the cyborg before using this module!") return 0 if(R.mind) @@ -78,8 +78,8 @@ if(..()) return if(R.speed < 0) - R << "A VTEC unit is already installed!" - usr << "There's no room for another VTEC unit!" + to_chat(R, "A VTEC unit is already installed!") + to_chat(usr, "There's no room for another VTEC unit!") return R.speed = -2 // Gotta go fast. @@ -100,11 +100,11 @@ var/obj/item/weapon/gun/energy/disabler/cyborg/T = locate() in R.module.modules if(!T) - usr << "There's no disabler in this unit!" + to_chat(usr, "There's no disabler in this unit!") return if(T.charge_delay <= 2) - R << "A cooling unit is already installed!" - usr << "There's no room for another cooling unit!" + to_chat(R, "A cooling unit is already installed!") + to_chat(usr, "There's no room for another cooling unit!") return T.charge_delay = max(2 , T.charge_delay - 4) @@ -122,7 +122,7 @@ return if(R.ionpulse) - usr << "This unit already has ion thrusters installed!" + to_chat(usr, "This unit already has ion thrusters installed!") return R.ionpulse = TRUE @@ -222,7 +222,7 @@ var/obj/item/borg/upgrade/selfrepair/U = locate() in R if(U) - usr << "This unit is already equipped with a self-repair module." + to_chat(usr, "This unit is already equipped with a self-repair module.") return 0 cyborg = R @@ -243,10 +243,10 @@ /obj/item/borg/upgrade/selfrepair/ui_action_click() on = !on if(on) - cyborg << "You activate the self-repair module." + to_chat(cyborg, "You activate the self-repair module.") START_PROCESSING(SSobj, src) else - cyborg << "You deactivate the self-repair module." + to_chat(cyborg, "You deactivate the self-repair module.") STOP_PROCESSING(SSobj, src) update_icon() @@ -271,12 +271,12 @@ if(cyborg && (cyborg.stat != DEAD) && on) if(!cyborg.cell) - cyborg << "Self-repair module deactivated. Please, insert the power cell." + to_chat(cyborg, "Self-repair module deactivated. Please, insert the power cell.") deactivate() return if(cyborg.cell.charge < powercost * 2) - cyborg << "Self-repair module deactivated. Please recharge." + to_chat(cyborg, "Self-repair module deactivated. Please recharge.") deactivate() return @@ -301,7 +301,7 @@ msgmode = "critical" else if(cyborg.health < cyborg.maxHealth) msgmode = "normal" - cyborg << "Self-repair is active in [msgmode] mode." + to_chat(cyborg, "Self-repair is active in [msgmode] mode.") msg_cooldown = world.time else deactivate() diff --git a/code/game/objects/items/shooting_range.dm b/code/game/objects/items/shooting_range.dm index 2b0861619e..f1271b3cb9 100644 --- a/code/game/objects/items/shooting_range.dm +++ b/code/game/objects/items/shooting_range.dm @@ -30,7 +30,7 @@ var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0, user)) removeOverlays() - user << "You slice off [src]'s uneven chunks of aluminium and scorch marks." + to_chat(user, "You slice off [src]'s uneven chunks of aluminium and scorch marks.") else return ..() diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index b50e1f12ec..7906de1547 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -23,11 +23,11 @@ t_him = "him" else if(M.gender == FEMALE) t_him = "her" - user << "\The [M] is dead, you cannot help [t_him]!" + to_chat(user, "\The [M] is dead, you cannot help [t_him]!") return if(!istype(M, /mob/living/carbon) && !istype(M, /mob/living/simple_animal)) - user << "You don't know how to apply \the [src] to [M]!" + to_chat(user, "You don't know how to apply \the [src] to [M]!") return 1 var/obj/item/bodypart/affecting @@ -35,16 +35,16 @@ var/mob/living/carbon/C = M affecting = C.get_bodypart(check_zone(user.zone_selected)) if(!affecting) //Missing limb? - user << "[C] doesn't have \a [parse_zone(user.zone_selected)]!" + to_chat(user, "[C] doesn't have \a [parse_zone(user.zone_selected)]!") return if(ishuman(C)) var/mob/living/carbon/human/H = C if(stop_bleeding) if(H.bleedsuppress) - user << "[H]'s bleeding is already bandaged!" + to_chat(user, "[H]'s bleeding is already bandaged!") return else if(!H.bleed_rate) - user << "[H] isn't bleeding!" + to_chat(user, "[H] isn't bleeding!") return @@ -57,13 +57,13 @@ if (istype(M, /mob/living/simple_animal)) var/mob/living/simple_animal/critter = M if (!(critter.healable)) - user << " You cannot use [src] on [M]!" + to_chat(user, " You cannot use [src] on [M]!") return else if (critter.health == critter.maxHealth) - user << " [M] is at full health." + to_chat(user, " [M] is at full health.") return else if(src.heal_brute < 1) - user << " [src] won't help [M] at all." + to_chat(user, " [src] won't help [M] at all.") return user.visible_message("[user] applies [src] on [M].", "You apply [src] on [M].") else @@ -82,7 +82,7 @@ var/mob/living/carbon/C = M affecting = C.get_bodypart(check_zone(user.zone_selected)) if(!affecting) //Missing limb? - user << "[C] doesn't have \a [parse_zone(user.zone_selected)]!" + to_chat(user, "[C] doesn't have \a [parse_zone(user.zone_selected)]!") return if(ishuman(C)) var/mob/living/carbon/human/H = C @@ -93,7 +93,7 @@ if(affecting.heal_damage(heal_brute, heal_burn)) C.update_damage_overlays() else - user << "Medicine won't work on a robotic limb!" + to_chat(user, "Medicine won't work on a robotic limb!") else M.heal_bodypart_damage((src.heal_brute/2), (src.heal_burn/2)) diff --git a/code/game/objects/items/stacks/rods.dm b/code/game/objects/items/stacks/rods.dm index 4a6573c245..45f9672540 100644 --- a/code/game/objects/items/stacks/rods.dm +++ b/code/game/objects/items/stacks/rods.dm @@ -21,7 +21,7 @@ var/global/list/datum/stack_recipe/rod_recipes = list ( \ attack_verb = list("hit", "bludgeoned", "whacked") hitsound = 'sound/weapons/grenadelaunch.ogg' -/obj/item/stack/rods/New(var/loc, var/amount=null) +/obj/item/stack/rods/Initialize(mapload, new_amount, merge = TRUE) ..() recipes = rod_recipes @@ -39,7 +39,7 @@ var/global/list/datum/stack_recipe/rod_recipes = list ( \ var/obj/item/weapon/weldingtool/WT = W if(get_amount() < 2) - user << "You need at least two rods to do this!" + to_chat(user, "You need at least two rods to do this!") return if(WT.remove_fuel(0,user)) @@ -57,9 +57,9 @@ var/global/list/datum/stack_recipe/rod_recipes = list ( \ else if(istype(W,/obj/item/weapon/reagent_containers/food/snacks)) var/obj/item/weapon/reagent_containers/food/snacks/S = W if(amount != 1) - user << "You must use a single rod!" + to_chat(user, "You must use a single rod!") else if(S.w_class > WEIGHT_CLASS_SMALL) - user << "The ingredient is too big for [src]!" + to_chat(user, "The ingredient is too big for [src]!") else var/obj/item/weapon/reagent_containers/food/snacks/customizable/A = new/obj/item/weapon/reagent_containers/food/snacks/customizable/kebab(get_turf(src)) A.initialize_custom_food(src, S, user) diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index f9267dc378..ebe30f01ad 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -32,7 +32,7 @@ var/global/list/datum/stack_recipe/glass_recipes = list ( \ /obj/item/stack/sheet/glass/fifty amount = 50 -/obj/item/stack/sheet/glass/New(loc, amount) +/obj/item/stack/sheet/glass/Initialize(mapload, new_amount, merge = TRUE) recipes = glass_recipes ..() @@ -41,11 +41,11 @@ var/global/list/datum/stack_recipe/glass_recipes = list ( \ if(istype(W, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/CC = W if (get_amount() < 1 || CC.get_amount() < 5) - user << "You need five lengths of coil and one sheet of glass to make wired glass!") return CC.use(5) use(1) - user << "You attach wire to the [name]." + to_chat(user, "You attach wire to the [name].") var/obj/item/stack/light_w/new_tile = new(user.loc) new_tile.add_fingerprint(user) else if(istype(W, /obj/item/stack/rods)) @@ -61,7 +61,7 @@ var/global/list/datum/stack_recipe/glass_recipes = list ( \ if (!G && replace) user.put_in_hands(RG) else - user << "You need one rod and one sheet of glass to make reinforced glass!" + to_chat(user, "You need one rod and one sheet of glass to make reinforced glass!") return else return ..() @@ -106,7 +106,7 @@ var/global/list/datum/stack_recipe/reinforced_glass_recipes = list ( \ source.add_charge(amount * metcost) glasource.add_charge(amount * glacost) -/obj/item/stack/sheet/rglass/New(loc, amount) +/obj/item/stack/sheet/rglass/Initialize(mapload, new_amount, merge = TRUE) recipes = reinforced_glass_recipes ..() @@ -159,11 +159,11 @@ var/global/list/datum/stack_recipe/reinforced_glass_recipes = list ( \ if(ishuman(user)) var/mob/living/carbon/human/H = user if(!H.gloves && !(PIERCEIMMUNE in H.dna.species.species_traits)) // golems, etc - H << "[src] cuts into your hand!" + 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 - M << "[src] cuts into your hand!" + to_chat(M, "[src] cuts into your hand!") M.apply_damage(force*0.5, BRUTE, hit_hand) @@ -180,7 +180,7 @@ var/global/list/datum/stack_recipe/reinforced_glass_recipes = list ( \ if(G.amount >= G.max_amount) continue G.attackby(NG, user) - user << "You add the newly-formed glass to the stack. It now contains [NG.amount] sheet\s." + to_chat(user, "You add the newly-formed glass to the stack. It now contains [NG.amount] sheet\s.") qdel(src) else return ..() diff --git a/code/game/objects/items/stacks/sheets/leather.dm b/code/game/objects/items/stacks/sheets/leather.dm index c8f5e1d94d..17a4c74e91 100644 --- a/code/game/objects/items/stacks/sheets/leather.dm +++ b/code/game/objects/items/stacks/sheets/leather.dm @@ -13,7 +13,7 @@ var/global/list/datum/stack_recipe/human_recipes = list( \ new/datum/stack_recipe("bloated human costume", /obj/item/clothing/suit/hooded/bloated_human, 5, on_floor = 1), \ ) -/obj/item/stack/sheet/animalhide/human/New(var/loc, var/amount=null) +/obj/item/stack/sheet/animalhide/human/Initialize(mapload, new_amount, merge = TRUE) recipes = human_recipes return ..() @@ -33,7 +33,7 @@ var/global/list/datum/stack_recipe/corgi_recipes = list ( \ new/datum/stack_recipe("corgi costume", /obj/item/clothing/suit/hooded/ian_costume, 3, on_floor = 1), \ ) -/obj/item/stack/sheet/animalhide/corgi/New(var/loc, var/amount=null) +/obj/item/stack/sheet/animalhide/corgi/Initialize(mapload, new_amount, merge = TRUE) recipes = corgi_recipes return ..() @@ -54,7 +54,7 @@ var/global/list/datum/stack_recipe/monkey_recipes = list ( \ new/datum/stack_recipe("monkey suit", /obj/item/clothing/suit/monkeysuit, 2, on_floor = 1), \ ) -/obj/item/stack/sheet/animalhide/monkey/New(var/loc, var/amount=null) +/obj/item/stack/sheet/animalhide/monkey/Initialize(mapload, new_amount, merge = TRUE) recipes = monkey_recipes return ..() @@ -75,7 +75,7 @@ var/global/list/datum/stack_recipe/xeno_recipes = list ( \ new/datum/stack_recipe("alien suit", /obj/item/clothing/suit/xenos, 2, on_floor = 1), \ ) -/obj/item/stack/sheet/animalhide/xeno/New(var/loc, var/amount=null) +/obj/item/stack/sheet/animalhide/xeno/Initialize(mapload, new_amount, merge = TRUE) recipes = xeno_recipes return ..() @@ -138,7 +138,7 @@ var/global/list/datum/stack_recipe/sinew_recipes = list ( \ new/datum/stack_recipe("sinew restraints", /obj/item/weapon/restraints/handcuffs/sinew, 1, on_floor = 1), \ ) -/obj/item/stack/sheet/sinew/New(var/loc, var/amount=null) +/obj/item/stack/sheet/sinew/Initialize(mapload, new_amount, merge = TRUE) recipes = sinew_recipes return ..() /* @@ -173,7 +173,7 @@ var/global/list/datum/stack_recipe/sinew_recipes = list ( \ playsound(loc, 'sound/weapons/slice.ogg', 50, 1, -1) user.visible_message("[user] starts cutting hair off \the [src].", "You start cutting the hair off \the [src]...", "You hear the sound of a knife rubbing against flesh.") if(do_after(user,50, target = src)) - user << "You cut the hair from this [src.singular_name]." + to_chat(user, "You cut the hair from this [src.singular_name].") //Try locating an exisitng stack on the tile and add to there if possible for(var/obj/item/stack/sheet/hairlesshide/HS in user.loc) if(HS.amount < 50) diff --git a/code/game/objects/items/stacks/sheets/light.dm b/code/game/objects/items/stacks/sheets/light.dm index 2b33b06da9..49143b7f5f 100644 --- a/code/game/objects/items/stacks/sheets/light.dm +++ b/code/game/objects/items/stacks/sheets/light.dm @@ -29,9 +29,9 @@ if (M.use(1)) use(1) var/obj/item/L = new /obj/item/stack/tile/light(user.loc) - user << "You make a light tile." + to_chat(user, "You make a light tile.") L.add_fingerprint(user) else - user << "You need one metal sheet to finish the light tile!" + to_chat(user, "You need one metal sheet to finish the light tile!") else return ..() diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index b0148ea479..a88c13415f 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -71,7 +71,7 @@ var/global/list/datum/stack_recipe/sandbag_recipes = list ( \ new/datum/stack_recipe("sandbags", /obj/structure/barricade/sandbags, 1, time = 25, one_per_turf = 1, on_floor = 1), \ ) -/obj/item/stack/sheet/mineral/sandbags/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/sandbags/Initialize(mapload, new_amount, merge = TRUE) recipes = sandbag_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -96,7 +96,7 @@ var/global/list/datum/stack_recipe/diamond_recipes = list ( \ new/datum/stack_recipe("AI Core Statue", /obj/structure/statue/diamond/ai2, 5, one_per_turf = 1, on_floor = 1), \ ) -/obj/item/stack/sheet/mineral/diamond/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/diamond/Initialize(mapload, new_amount, merge = TRUE) recipes = diamond_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -120,7 +120,7 @@ var/global/list/datum/stack_recipe/uranium_recipes = list ( \ new/datum/stack_recipe("Engineer Statue", /obj/structure/statue/uranium/eng, 5, one_per_turf = 1, on_floor = 1), \ ) -/obj/item/stack/sheet/mineral/uranium/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/uranium/Initialize(mapload, new_amount, merge = TRUE) recipes = uranium_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -146,7 +146,7 @@ var/global/list/datum/stack_recipe/plasma_recipes = list ( \ new/datum/stack_recipe("Scientist Statue", /obj/structure/statue/plasma/scientist, 5, one_per_turf = 1, on_floor = 1), \ ) -/obj/item/stack/sheet/mineral/plasma/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/plasma/Initialize(mapload, new_amount, merge = TRUE) recipes = plasma_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -186,7 +186,7 @@ var/global/list/datum/stack_recipe/gold_recipes = list ( \ new/datum/stack_recipe("CMO Statue", /obj/structure/statue/gold/cmo, 5, one_per_turf = 1, on_floor = 1), \ ) -/obj/item/stack/sheet/mineral/gold/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/gold/Initialize(mapload, new_amount, merge = TRUE) recipes = gold_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -213,7 +213,7 @@ var/global/list/datum/stack_recipe/silver_recipes = list ( \ new/datum/stack_recipe("Med Borg Statue", /obj/structure/statue/silver/medborg, 5, one_per_turf = 1, on_floor = 1), \ ) -/obj/item/stack/sheet/mineral/silver/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/silver/Initialize(mapload, new_amount, merge = TRUE) recipes = silver_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -235,7 +235,7 @@ var/global/list/datum/stack_recipe/clown_recipes = list ( \ new/datum/stack_recipe("Clown Statue", /obj/structure/statue/bananium/clown, 5, one_per_turf = 1, on_floor = 1), \ ) -/obj/item/stack/sheet/mineral/bananium/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/bananium/Initialize(mapload, new_amount, merge = TRUE) recipes = clown_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -261,7 +261,7 @@ var/global/list/datum/stack_recipe/titanium_recipes = list ( \ new/datum/stack_recipe("titanium tile", /obj/item/stack/tile/mineral/titanium, 1, 4, 20), \ ) -/obj/item/stack/sheet/mineral/titanium/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/titanium/Initialize(mapload, new_amount, merge = TRUE) recipes = titanium_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -288,7 +288,7 @@ var/global/list/datum/stack_recipe/plastitanium_recipes = list ( \ new/datum/stack_recipe("plas-titanium tile", /obj/item/stack/tile/mineral/plastitanium, 1, 4, 20), \ ) -/obj/item/stack/sheet/mineral/plastitanium/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/plastitanium/Initialize(mapload, new_amount, merge = TRUE) recipes = plastitanium_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -313,7 +313,7 @@ var/global/list/datum/stack_recipe/snow_recipes = list ( \ new/datum/stack_recipe("Snowball", /obj/item/toy/snowball, 1), \ ) -/obj/item/stack/sheet/mineral/snow/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/snow/Initialize(mapload, new_amount, merge = TRUE) recipes = snow_recipes pixel_x = rand(0,4)-4 pixel_y = rand(0,4)-4 @@ -373,6 +373,6 @@ var/global/list/datum/stack_recipe/abductor_recipes = list ( \ new/datum/stack_recipe("Abductor Sciencist Statue", /obj/structure/statue/bananium/clown, 5, one_per_turf = 1, on_floor = 1)*/ ) -/obj/item/stack/sheet/mineral/abductor/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/abductor/Initialize(mapload, new_amount, merge = TRUE) recipes = abductor_recipes ..() diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 672128a4ce..6eedb62766 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -38,7 +38,7 @@ var/global/list/datum/stack_recipe/metal_recipes = list ( \ new/datum/stack_recipe("firelock frame", /obj/structure/firelock_frame, 3, time = 50, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("turret frame", /obj/machinery/porta_turret_construct, 5, time = 25, one_per_turf = 1, on_floor = 1), \ new/datum/stack_recipe("meatspike frame", /obj/structure/kitchenspike_frame, 5, time = 25, one_per_turf = 1, on_floor = 1), \ -/* new/datum/stack_recipe("reflector frame", /obj/structure/reflector, 5, time = 25, one_per_turf = 1, on_floor = 1), \*/ + new/datum/stack_recipe("reflector frame", /obj/structure/reflector, 5, time = 25, one_per_turf = 1, on_floor = 1), \ null, \ new/datum/stack_recipe("grenade casing", /obj/item/weapon/grenade/chem_grenade), \ new/datum/stack_recipe("light fixture frame", /obj/item/wallframe/light_fixture, 2), \ @@ -85,7 +85,7 @@ var/global/list/datum/stack_recipe/metal_recipes = list ( \ is_cyborg = 1 cost = 500 -/obj/item/stack/sheet/metal/New(var/loc, var/amount=null) +/obj/item/stack/sheet/metal/Initialize(mapload, new_amount, merge = TRUE) recipes = metal_recipes return ..() @@ -111,7 +111,7 @@ var/global/list/datum/stack_recipe/plasteel_recipes = list ( \ resistance_flags = FIRE_PROOF merge_type = /obj/item/stack/sheet/plasteel -/obj/item/stack/sheet/plasteel/New(var/loc, var/amount=null) +/obj/item/stack/sheet/plasteel/Initialize(mapload, new_amount, merge = TRUE) recipes = plasteel_recipes return ..() @@ -160,7 +160,7 @@ var/global/list/datum/stack_recipe/wood_recipes = list ( \ resistance_flags = FLAMMABLE merge_type = /obj/item/stack/sheet/mineral/wood -/obj/item/stack/sheet/mineral/wood/New(var/loc, var/amount=null) +/obj/item/stack/sheet/mineral/wood/Initialize(mapload, new_amount, merge = TRUE) recipes = wood_recipes return ..() @@ -205,7 +205,7 @@ var/global/list/datum/stack_recipe/cloth_recipes = list ( \ throwforce = 0 merge_type = /obj/item/stack/sheet/cloth -/obj/item/stack/sheet/cloth/New(var/loc, var/amount=null) +/obj/item/stack/sheet/cloth/Initialize(mapload, new_amount, merge = TRUE) recipes = cloth_recipes return ..() @@ -237,7 +237,7 @@ var/global/list/datum/stack_recipe/cardboard_recipes = list ( \ resistance_flags = FLAMMABLE merge_type = /obj/item/stack/sheet/cardboard -/obj/item/stack/sheet/cardboard/New(var/loc, var/amount=null) +/obj/item/stack/sheet/cardboard/Initialize(mapload, new_amount, merge = TRUE) recipes = cardboard_recipes return ..() @@ -272,20 +272,20 @@ var/global/list/datum/stack_recipe/runed_metal_recipes = list ( \ /obj/item/stack/sheet/runed_metal/attack_self(mob/living/user) if(!iscultist(user)) - user << "Only one with forbidden knowledge could hope to work this metal..." + to_chat(user, "Only one with forbidden knowledge could hope to work this metal...") return return ..() /obj/item/stack/sheet/runed_metal/attack(atom/target, mob/living/user) if(!iscultist(user)) - user << "Only one with forbidden knowledge could hope to work this metal..." + to_chat(user, "Only one with forbidden knowledge could hope to work this metal...") return ..() /obj/item/stack/sheet/runed_metal/fifty amount = 50 -/obj/item/stack/sheet/runed_metal/New(var/loc, var/amount=null) +/obj/item/stack/sheet/runed_metal/Initialize(mapload, new_amount, merge = TRUE) recipes = runed_metal_recipes return ..() @@ -322,7 +322,7 @@ var/global/list/datum/stack_recipe/brass_recipes = list ( \ new /obj/item/stack/sheet/runed_metal(loc, amount) qdel(src) -/obj/item/stack/tile/brass/New(var/loc, var/amount=null) +/obj/item/stack/tile/brass/Initialize(mapload, new_amount, merge = TRUE) recipes = brass_recipes ..() pixel_x = 0 @@ -368,7 +368,6 @@ var/global/list/datum/stack_recipe/plastic_recipes = list( singular_name = "plastic sheet" icon_state = "sheet-plastic" throwforce = 7 - flags = CONDUCT origin_tech = "materials=1" origin_tech = "materials=1;biotech=1" merge_type = /obj/item/stack/sheet/plastic @@ -379,6 +378,6 @@ var/global/list/datum/stack_recipe/plastic_recipes = list( /obj/item/stack/sheet/plastic/five amount = 5 -/obj/item/stack/sheet/plastic/New() +/obj/item/stack/sheet/plastic/Initialize(mapload, new_amount, merge = TRUE) recipes = plastic_recipes . = ..() diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index eaef9c6809..e5f9026257 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -19,42 +19,45 @@ var/cost = 1 // How much energy from storage it costs var/merge_type = null // This path and its children should merge with this stack, defaults to src.type -/obj/item/stack/New(var/loc, var/amount=null) +/obj/item/stack/Initialize(mapload, new_amount=null , merge = TRUE) ..() - if (amount) - src.amount = amount + if(new_amount) + amount = new_amount if(!merge_type) - merge_type = src.type - return + merge_type = type + if(merge) + for(var/obj/item/stack/S in loc) + if(S.merge_type == merge_type) + merge(S) /obj/item/stack/Destroy() if (usr && usr.machine==src) usr << browse(null, "window=stack") - return ..() + . = ..() /obj/item/stack/examine(mob/user) ..() if (is_cyborg) if(src.singular_name) - user << "There is enough energy for [src.get_amount()] [src.singular_name]\s." + to_chat(user, "There is enough energy for [src.get_amount()] [src.singular_name]\s.") else - user << "There is enough energy for [src.get_amount()]." + to_chat(user, "There is enough energy for [src.get_amount()].") return if(src.singular_name) if(src.get_amount()>1) - user << "There are [src.get_amount()] [src.singular_name]\s in the stack." + to_chat(user, "There are [src.get_amount()] [src.singular_name]\s in the stack.") else - user << "There is [src.get_amount()] [src.singular_name] in the stack." + to_chat(user, "There is [src.get_amount()] [src.singular_name] in the stack.") else if(src.get_amount()>1) - user << "There are [src.get_amount()] in the stack." + to_chat(user, "There are [src.get_amount()] in the stack.") else - user << "There is [src.get_amount()] in the stack." + to_chat(user, "There is [src.get_amount()] in the stack.") /obj/item/stack/proc/get_amount() - if (is_cyborg) - return round(source.energy / cost) + if(is_cyborg) + . = round(source.energy / cost) else - return (amount) + . = (amount) /obj/item/stack/attack_self(mob/user) interact(user) @@ -101,7 +104,6 @@ t1 += "" user << browse(t1, "window=stack") onclose(user, "stack") - return /obj/item/stack/Topic(href, href_list) ..() @@ -161,18 +163,18 @@ /obj/item/stack/proc/building_checks(datum/stack_recipe/R, multiplier) if (src.get_amount() < R.req_amount*multiplier) if (R.req_amount*multiplier>1) - usr << "You haven't got enough [src] to build \the [R.req_amount*multiplier] [R.title]\s!" + to_chat(usr, "You haven't got enough [src] to build \the [R.req_amount*multiplier] [R.title]\s!") else - usr << "You haven't got enough [src] to build \the [R.title]!" + to_chat(usr, "You haven't got enough [src] to build \the [R.title]!") return 0 if(R.window_checks && !valid_window_location(usr.loc, usr.dir)) - usr << "The [R.title] won't fit here!" + to_chat(usr, "The [R.title] won't fit here!") return 0 if(R.one_per_turf && (locate(R.result_type) in usr.loc)) - usr << "There is another [R.title] here!" + to_chat(usr, "There is another [R.title] here!") return 0 if(R.on_floor && !isfloorturf(usr.loc)) - usr << "\The [R.title] must be constructed on the floor!" + to_chat(usr, "\The [R.title] must be constructed on the floor!") return 0 return 1 @@ -204,7 +206,7 @@ update_icon() /obj/item/stack/proc/merge(obj/item/stack/S) //Merge src into S, as much as possible - if(QDELETED(S) || S == src) //amusingly this can cause a stack to consume itself, let's not allow that. + if(QDELETED(S) || QDELETED(src) || S == src) //amusingly this can cause a stack to consume itself, let's not allow that. return var/transfer = get_amount() if(S.is_cyborg) @@ -220,12 +222,12 @@ /obj/item/stack/Crossed(obj/o) if(istype(o, merge_type) && !o.throwing) merge(o) - return ..() + . = ..() /obj/item/stack/hitby(atom/movable/AM, skip, hitpush) if(istype(AM, merge_type)) merge(AM) - return ..() + . = ..() /obj/item/stack/attack_hand(mob/user) if (user.get_inactive_held_item() == src) @@ -234,11 +236,10 @@ change_stack(user,1) else ..() - return /obj/item/stack/AltClick(mob/living/user) if(!istype(user) || !user.canUseTopic(src)) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return @@ -253,10 +254,10 @@ return else change_stack(user,stackmaterial) - 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) - var/obj/item/stack/F = new src.type(user, amount) + var/obj/item/stack/F = new type(user, amount, FALSE) . = F F.copy_evidences(src) user.put_in_hands(F) @@ -270,9 +271,9 @@ if(istype(W, merge_type)) var/obj/item/stack/S = W merge(S) - user << "Your [S.name] stack now contains [S.get_amount()] [S.singular_name]\s." + to_chat(user, "Your [S.name] stack now contains [S.get_amount()] [S.singular_name]\s.") else - return ..() + . = ..() /obj/item/stack/proc/copy_evidences(obj/item/stack/from as obj) src.blood_DNA = from.blood_DNA diff --git a/code/game/objects/items/stacks/telecrystal.dm b/code/game/objects/items/stacks/telecrystal.dm index 503efd14d1..dec6074b0c 100644 --- a/code/game/objects/items/stacks/telecrystal.dm +++ b/code/game/objects/items/stacks/telecrystal.dm @@ -15,7 +15,7 @@ if(I && I.imp_in) I.hidden_uplink.telecrystals += amount use(amount) - user << "You press [src] onto yourself and charge your hidden uplink." + to_chat(user, "You press [src] onto yourself and charge your hidden uplink.") /obj/item/stack/telecrystal/afterattack(obj/item/I, mob/user, proximity) if(!proximity) @@ -24,7 +24,7 @@ if(I.hidden_uplink && I.hidden_uplink.active) //No metagaming by using this on every PDA around just to see if it gets used up. I.hidden_uplink.telecrystals += amount use(amount) - user << "You slot [src] into the [I] and charge its internal uplink." + to_chat(user, "You slot [src] into the [I] and charge its internal uplink.") /obj/item/stack/telecrystal/five amount = 5 diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm index 97490e9fc3..f2432cee3d 100644 --- a/code/game/objects/items/stacks/tiles/tile_types.dm +++ b/code/game/objects/items/stacks/tiles/tile_types.dm @@ -24,11 +24,11 @@ var/obj/item/weapon/weldingtool/WT = W if(get_amount() < 4) - user << "You need at least four tiles to do this!" + to_chat(user, "You need at least four tiles to do this!") return if(WT.is_hot() && !mineralType) - user << "You can not reform this!" + to_chat(user, "You can not reform this!") return if(WT.remove_fuel(0,user)) @@ -111,6 +111,18 @@ /obj/item/stack/tile/fakespace/loaded amount = 30 +/obj/item/stack/tile/fakepit + name = "fake pits" + singular_name = "fake pit" + desc = "A piece of carpet with a forced perspective illusion of a pit. No way this could fool anyone!" + icon_state = "tile_pit" + turf_type = /turf/open/floor/fakepit + resistance_flags = FLAMMABLE + merge_type = /obj/item/stack/tile/fakepit + +/obj/item/stack/tile/fakepit/loaded + amount = 30 + //High-traction /obj/item/stack/tile/noslip name = "high-traction floor tile" @@ -124,6 +136,34 @@ /obj/item/stack/tile/noslip/thirty amount = 30 +//Circuit +/obj/item/stack/tile/circuit + name = "blue circuit tile" + singular_name = "blue circuit tile" + desc = "A blue circuit tile." + icon_state = "tile_bcircuit" + turf_type = /turf/open/floor/circuit + +/obj/item/stack/tile/circuit/green + name = "green circuit tile" + singular_name = "green circuit tile" + desc = "A green circuit tile." + icon_state = "tile_gcircuit" + turf_type = /turf/open/floor/circuit/green + +/obj/item/stack/tile/circuit/green/anim + turf_type = /turf/open/floor/circuit/green/anim + +/obj/item/stack/tile/circuit/red + name = "red circuit tile" + singular_name = "red circuit tile" + desc = "A red circuit tile." + icon_state = "tile_rcircuit" + turf_type = /turf/open/floor/circuit/red + +/obj/item/stack/tile/circuit/red/anim + turf_type = /turf/open/floor/circuit/red/anim + //Pod floor /obj/item/stack/tile/pod name = "pod floor tile" diff --git a/code/game/objects/items/stacks/wrap.dm b/code/game/objects/items/stacks/wrap.dm index d743f96ea5..7dcc2acb66 100644 --- a/code/game/objects/items/stacks/wrap.dm +++ b/code/game/objects/items/stacks/wrap.dm @@ -81,7 +81,7 @@ if(O.opened) return if(!O.delivery_icon) //no delivery icon means unwrappable closet (e.g. body bags) - user << "You can't wrap this!" + to_chat(user, "You can't wrap this!") return if(use(3)) var/obj/structure/bigDelivery/P = new /obj/structure/bigDelivery(get_turf(O.loc)) @@ -90,14 +90,14 @@ P.add_fingerprint(user) O.add_fingerprint(user) else - user << "You need more paper!" + to_chat(user, "You need more paper!") return else - user << "The object you are trying to wrap is unsuitable for the sorting machinery!" + to_chat(user, "The object you are trying to wrap is unsuitable for the sorting machinery!") return user.visible_message("[user] wraps [target].") - user.attack_log += text("\[[time_stamp()]\] Has used [name] on [target]") + user.log_message("Has used [name] on [target]", INDIVIDUAL_ATTACK_LOG) /obj/item/stack/packageWrap/Destroy() if(!amount) diff --git a/code/game/objects/items/taster.dm b/code/game/objects/items/taster.dm index e555f6a92c..5f88f06af4 100644 --- a/code/game/objects/items/taster.dm +++ b/code/game/objects/items/taster.dm @@ -17,4 +17,4 @@ if(O.reagents) var/message = O.reagents.generate_taste_message(taste_sensitivity) - user << "[src] tastes [message] in [O]." + to_chat(user, "[src] tastes [message] in [O].") diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 0923116c86..c903b9d739 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -53,12 +53,12 @@ if (istype(A, /obj/structure/reagent_dispensers)) var/obj/structure/reagent_dispensers/RD = A if(RD.reagents.total_volume <= 0) - user << "[RD] is empty." + to_chat(user, "[RD] is empty.") else if(reagents.total_volume >= 10) - user << "[src] is full." + to_chat(user, "[src] is full.") else A.reagents.trans_to(src, 10) - user << "You fill the balloon with the contents of [A]." + to_chat(user, "You fill the balloon with the contents of [A].") desc = "A translucent balloon with some form of liquid sloshing around in it." update_icon() @@ -66,12 +66,12 @@ if(istype(I, /obj/item/weapon/reagent_containers/glass)) if(I.reagents) if(I.reagents.total_volume <= 0) - user << "[I] is empty." + to_chat(user, "[I] is empty.") else if(reagents.total_volume >= 10) - user << "[src] is full." + to_chat(user, "[src] is full.") else desc = "A translucent balloon with some form of liquid sloshing around in it." - user << "You fill the balloon with the contents of [I]." + to_chat(user, "You fill the balloon with the contents of [I].") I.reagents.trans_to(src, 10) update_icon() else if(I.is_sharp()) @@ -146,23 +146,23 @@ /obj/item/toy/gun/examine(mob/user) ..() - user << "There [bullets == 1 ? "is" : "are"] [bullets] cap\s left." + to_chat(user, "There [bullets == 1 ? "is" : "are"] [bullets] cap\s left.") /obj/item/toy/gun/attackby(obj/item/toy/ammo/gun/A, mob/user, params) if(istype(A, /obj/item/toy/ammo/gun)) if (src.bullets >= 7) - user << "It's already fully loaded!" + to_chat(user, "It's already fully loaded!") return 1 if (A.amount_left <= 0) - user << "There are no more caps!" + to_chat(user, "There are no more caps!") return 1 if (A.amount_left < (7 - src.bullets)) src.bullets += A.amount_left - user << text("You reload [] cap\s.", A.amount_left) + to_chat(user, text("You reload [] cap\s.", A.amount_left)) A.amount_left = 0 else - user << text("You reload [] cap\s.", 7 - src.bullets) + to_chat(user, text("You reload [] cap\s.", 7 - src.bullets)) A.amount_left -= 7 - src.bullets src.bullets = 7 A.update_icon() @@ -174,7 +174,7 @@ if (flag) return if (!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to do this!" + to_chat(user, "You don't have the dexterity to do this!") return src.add_fingerprint(user) if (src.bullets < 1) @@ -201,7 +201,7 @@ /obj/item/toy/ammo/gun/examine(mob/user) ..() - user << "There [amount_left == 1 ? "is" : "are"] [amount_left] cap\s left." + to_chat(user, "There [amount_left == 1 ? "is" : "are"] [amount_left] cap\s left.") /* * Toy swords @@ -220,7 +220,7 @@ /obj/item/toy/sword/attack_self(mob/user) active = !( active ) if (active) - user << "You extend the plastic blade with a quick flick of your wrist." + to_chat(user, "You extend the plastic blade with a quick flick of your wrist.") playsound(user, 'sound/weapons/saberon.ogg', 20, 1) if(hacked) icon_state = "swordrainbow" @@ -230,7 +230,7 @@ item_state = "swordblue" w_class = WEIGHT_CLASS_BULKY else - user << "You push the plastic blade back down into the handle." + to_chat(user, "You push the plastic blade back down into the handle.") playsound(user, 'sound/weapons/saberoff.ogg', 20, 1) icon_state = "sword0" item_state = "sword0" @@ -241,10 +241,10 @@ /obj/item/toy/sword/attackby(obj/item/weapon/W, mob/living/user, params) if(istype(W, /obj/item/toy/sword)) if((W.flags & NODROP) || (flags & NODROP)) - user << "\the [flags & NODROP ? src : W] is stuck to your hand, you can't attach it to \the [flags & NODROP ? W : src]!" + to_chat(user, "\the [flags & NODROP ? src : W] is stuck to your hand, you can't attach it to \the [flags & NODROP ? W : src]!") return else - user << "You attach the ends of the two plastic swords, making a single double-bladed toy! You're fake-cool." + to_chat(user, "You attach the ends of the two plastic swords, making a single double-bladed toy! You're fake-cool.") var/obj/item/weapon/twohanded/dualsaber/toy/newSaber = new /obj/item/weapon/twohanded/dualsaber/toy(user.loc) if(hacked) // That's right, we'll only check the "original" "sword". newSaber.hacked = 1 @@ -255,13 +255,13 @@ if(hacked == 0) hacked = 1 item_color = "rainbow" - user << "RNBW_ENGAGE" + to_chat(user, "RNBW_ENGAGE") if(active) icon_state = "swordrainbow" user.update_inv_hands() else - user << "It's already fabulous!" + to_chat(user, "It's already fabulous!") else return ..() @@ -347,7 +347,7 @@ if(ishuman(H) || issilicon(H)) //i guess carp and shit shouldn't set them off var/mob/living/carbon/M = H if(issilicon(H) || M.m_intent == MOVE_INTENT_RUN) - M << "You step on the snap pop!" + to_chat(M, "You step on the snap pop!") pop_burst(2, 0) /obj/item/toy/snappop/phoenix @@ -380,7 +380,7 @@ //all credit to skasi for toy mech fun ideas /obj/item/toy/prize/attack_self(mob/user) if(timer < world.time) - user << "You play with [src]." + to_chat(user, "You play with [src].") timer = world.time + cooldown if(!quiet) playsound(user, 'sound/mecha/mechstep.ogg', 20, 1) @@ -694,7 +694,7 @@ return var/choice = null if(cards.len == 0) - user << "There are no more cards to draw!" + to_chat(user, "There are no more cards to draw!") return var/obj/item/toy/cards/singlecard/H = new/obj/item/toy/cards/singlecard(user.loc) if(holo) @@ -732,25 +732,25 @@ var/obj/item/toy/cards/singlecard/SC = I if(SC.parentdeck == src) if(!user.temporarilyRemoveItemFromInventory(SC)) - user << "The card is stuck to your hand, you can't add it to the deck!" + to_chat(user, "The card is stuck to your hand, you can't add it to the deck!") return cards += SC.cardname user.visible_message("[user] adds a card to the bottom of the deck.","You add the card to the bottom of the deck.") qdel(SC) else - user << "You can't mix cards from other decks!" + to_chat(user, "You can't mix cards from other decks!") update_icon() else if(istype(I, /obj/item/toy/cards/cardhand)) var/obj/item/toy/cards/cardhand/CH = I if(CH.parentdeck == src) if(!user.temporarilyRemoveItemFromInventory(CH)) - user << "The hand of cards is stuck to your hand, you can't add it to the deck!" + to_chat(user, "The hand of cards is stuck to your hand, you can't add it to the deck!") return cards += CH.currenthand user.visible_message("[user] puts their hand of cards in the deck.", "You put the hand of cards in the deck.") qdel(CH) else - user << "You can't mix cards from other decks!" + to_chat(user, "You can't mix cards from other decks!") update_icon() else return ..() @@ -762,15 +762,15 @@ if(Adjacent(usr)) if(over_object == M && loc != M) M.put_in_hands(src) - usr << "You pick up the deck." + to_chat(usr, "You pick up the deck.") else if(istype(over_object, /obj/screen/inventory/hand)) var/obj/screen/inventory/hand/H = over_object if(M.putItemFromInventoryInHandIfPossible(src, H.held_index)) - usr << "You pick up the deck." + to_chat(usr, "You pick up the deck.") else - usr << "You can't reach it from here!" + to_chat(usr, "You can't reach it from here!") @@ -833,7 +833,7 @@ qdel(src) N.pickup(cardUser) cardUser.put_in_hands(N) - cardUser << "You also take [currenthand[1]] and hold it." + to_chat(cardUser, "You also take [currenthand[1]] and hold it.") cardUser << browse(null, "window=cardhand") return @@ -851,7 +851,7 @@ else if(currenthand.len > 2) src.icon_state = "[deckstyle]_hand3" else - user << "You can't mix cards from other decks!" + to_chat(user, "You can't mix cards from other decks!") else return ..() @@ -884,7 +884,7 @@ if(cardUser.is_holding(src)) cardUser.visible_message("[cardUser] checks [cardUser.p_their()] card.", "The card reads: [cardname]") else - cardUser << "You need to have the card in your hand to check it!" + to_chat(cardUser, "You need to have the card in your hand to check it!") /obj/item/toy/cards/singlecard/verb/Flip() @@ -917,13 +917,13 @@ H.currenthand += src.cardname H.parentdeck = C.parentdeck H.apply_card_vars(H,C) - user << "You combine the [C.cardname] and the [src.cardname] into a hand." + to_chat(user, "You combine the [C.cardname] and the [src.cardname] into a hand.") qdel(C) qdel(src) H.pickup(user) user.put_in_active_hand(H) else - user << "You can't mix cards from other decks!" + to_chat(user, "You can't mix cards from other decks!") if(istype(I, /obj/item/toy/cards/cardhand/)) var/obj/item/toy/cards/cardhand/H = I @@ -939,7 +939,7 @@ else if(H.currenthand.len > 2) H.icon_state = "[deckstyle]_hand3" else - user << "You can't mix cards from other decks!" + to_chat(user, "You can't mix cards from other decks!") else return ..() @@ -1007,7 +1007,7 @@ icon_state = "nuketoyidle" else var/timeleft = (cooldown - world.time) - user << "Nothing happens, and '[round(timeleft/10)]' appears on a small display." + to_chat(user, "Nothing happens, and '[round(timeleft/10)]' appears on a small display.") /* * Fake meteor @@ -1051,7 +1051,7 @@ //Attack self /obj/item/toy/carpplushie/attack_self(mob/user) playsound(src.loc, bitesound, 20, 1) - user << "You pet [src]. D'awww." + to_chat(user, "You pet [src]. D'awww.") return ..() /* @@ -1076,7 +1076,7 @@ shake_camera(M, 2, 1) // Shakes player camera 2 squares for 1 second. else - user << "Nothing happens." + to_chat(user, "Nothing happens.") /* * Snowballs @@ -1138,7 +1138,7 @@ if(src) icon_state = "[initial(icon_state)]" else - user << "The string on [src] hasn't rewound all the way!" + to_chat(user, "The string on [src] hasn't rewound all the way!") return // TOY MOUSEYS :3 :3 :3 @@ -1173,7 +1173,7 @@ /obj/item/toy/figure/attack_self(mob/user as mob) if(cooldown <= world.time) cooldown = world.time + 50 - user << "The [src] says \"[toysay]\"" + to_chat(user, "The [src] says \"[toysay]\"") playsound(user, toysound, 20, 1) /obj/item/toy/figure/cmo @@ -1378,7 +1378,7 @@ if(!new_name) return doll_name = new_name - user << "You name the dummy as \"[doll_name]\"" + to_chat(user, "You name the dummy as \"[doll_name]\"") name = "[initial(name)] - [doll_name]" /obj/item/toy/dummy/talk_into(atom/movable/M, message, channel, list/spans) diff --git a/code/game/objects/items/weapons/AI_modules.dm b/code/game/objects/items/weapons/AI_modules.dm index 5fcc3dba94..4e00f6447a 100644 --- a/code/game/objects/items/weapons/AI_modules.dm +++ b/code/game/objects/items/weapons/AI_modules.dm @@ -34,14 +34,14 @@ AI MODULES /obj/item/weapon/aiModule/proc/show_laws(var/mob/user as mob) if(laws.len) - user << "Programmed Law[(laws.len > 1) ? "s" : ""]:" + to_chat(user, "Programmed Law[(laws.len > 1) ? "s" : ""]:") for(var/law in laws) - user << "\"[law]\"" + to_chat(user, "\"[law]\"") //The proc other things should be calling /obj/item/weapon/aiModule/proc/install(datum/ai_laws/law_datum, mob/user) if(!bypass_law_amt_check && (!laws.len || laws[1] == "")) //So we don't loop trough an empty list and end up with runtimes. - user << "ERROR: No laws found on board." + to_chat(user, "ERROR: No laws found on board.") return var/overflow = FALSE @@ -53,16 +53,16 @@ AI MODULES if(mylaw != "") tot_laws++ if(tot_laws > config.silicon_max_law_amount && !bypass_law_amt_check)//allows certain boards to avoid this check, eg: reset - user << "Not enough memory allocated to [law_datum.owner ? law_datum.owner : "the AI core"]'s law processor to handle this amount of laws." + to_chat(user, "Not enough memory allocated to [law_datum.owner ? law_datum.owner : "the AI core"]'s law processor to handle this amount of laws.") message_admins("[key_name_admin(user)] tried to upload laws to [law_datum.owner ? key_name_admin(law_datum.owner) : "an AI core"] that would exceed the law cap.") overflow = TRUE var/law2log = transmitInstructions(law_datum, user, overflow) //Freeforms return something extra we need to log if(law_datum.owner) - user << "Upload complete. [law_datum.owner]'s laws have been modified." + to_chat(user, "Upload complete. [law_datum.owner]'s laws have been modified.") law_datum.owner.law_change_counter++ else - user << "Upload complete." + to_chat(user, "Upload complete.") var/time = time2text(world.realtime,"hh:mm:ss") var/ainame = law_datum.owner ? law_datum.owner.name : "empty AI core" @@ -74,7 +74,7 @@ AI MODULES //The proc that actually changes the silicon's laws. /obj/item/weapon/aiModule/proc/transmitInstructions(datum/ai_laws/law_datum, mob/sender, overflow = FALSE) if(law_datum.owner) - law_datum.owner << "[sender] has uploaded a change to the laws you must follow using a [name]." + to_chat(law_datum.owner, "[sender] has uploaded a change to the laws you must follow using a [name].") /******************** Modules ********************/ @@ -110,10 +110,10 @@ AI MODULES /obj/item/weapon/aiModule/zeroth/transmitInstructions(datum/ai_laws/law_datum, mob/sender, overflow) if(law_datum.owner) if(law_datum.owner.laws.zeroth) - law_datum.owner << "[sender.real_name] attempted to modify your zeroth law." - law_datum.owner << "It would be in your best interest to play along with [sender.real_name] that:" + to_chat(law_datum.owner, "[sender.real_name] attempted to modify your zeroth law.") + to_chat(law_datum.owner, "It would be in your best interest to play along with [sender.real_name] that:") for(var/failedlaw in laws) - law_datum.owner << "[failedlaw]" + to_chat(law_datum.owner, "[failedlaw]") return 1 for(var/templaw in laws) @@ -161,7 +161,7 @@ AI MODULES /obj/item/weapon/aiModule/supplied/safeguard/install(datum/ai_laws/law_datum, mob/user) if(!targetName) - user << "No name detected on module, please enter one." + to_chat(user, "No name detected on module, please enter one.") return 0 ..() @@ -188,7 +188,7 @@ AI MODULES /obj/item/weapon/aiModule/zeroth/oneHuman/install(datum/ai_laws/law_datum, mob/user) if(!targetName) - user << "No name detected on module, please enter one." + to_chat(user, "No name detected on module, please enter one.") return 0 ..() @@ -255,7 +255,7 @@ AI MODULES /obj/item/weapon/aiModule/supplied/freeform/install(datum/ai_laws/law_datum, mob/user) if(laws[1] == "") - user << "No law detected on module, please create one." + to_chat(user, "No law detected on module, please create one.") return 0 ..() @@ -274,15 +274,15 @@ AI MODULES if(lawpos == null) return if(lawpos <= 0) - user << "Error: The law number of [lawpos] is invalid." + to_chat(user, "Error: The law number of [lawpos] is invalid.") lawpos = 1 return - user << "Law [lawpos] selected." + to_chat(user, "Law [lawpos] selected.") ..() /obj/item/weapon/aiModule/remove/install(datum/ai_laws/law_datum, mob/user) if(lawpos > (law_datum.get_law_amount(list(LAW_INHERENT = 1, LAW_SUPPLIED = 1)))) - user << "There is no law [lawpos] to delete!" + to_chat(user, "There is no law [lawpos] to delete!") return ..() @@ -482,7 +482,7 @@ AI MODULES /obj/item/weapon/aiModule/syndicate/transmitInstructions(datum/ai_laws/law_datum, mob/sender, overflow) // ..() //We don't want this module reporting to the AI who dun it. --NEO if(law_datum.owner) - law_datum.owner << "BZZZZT" + to_chat(law_datum.owner, "BZZZZT") if(!overflow) law_datum.owner.add_ion_law(laws[1]) else @@ -507,7 +507,7 @@ AI MODULES /obj/item/weapon/aiModule/toyAI/transmitInstructions(datum/ai_laws/law_datum, mob/sender, overflow) //..() if(law_datum.owner) - law_datum.owner << "BZZZZT" + to_chat(law_datum.owner, "BZZZZT") if(!overflow) law_datum.owner.add_ion_law(laws[1]) else @@ -521,7 +521,7 @@ AI MODULES /obj/item/weapon/aiModule/toyAI/attack_self(mob/user) laws[1] = generate_ion_law() - user << "You press the button on [src]." + to_chat(user, "You press the button on [src].") playsound(user, 'sound/machines/click.ogg', 20, 1) src.loc.visible_message("\icon[src] [laws[1]]") diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm index 4b84a0b529..6cd581460a 100644 --- a/code/game/objects/items/weapons/RCD.dm +++ b/code/game/objects/items/weapons/RCD.dm @@ -39,35 +39,7 @@ RCD var/list/conf_access = null var/use_one_access = 0 //If the airlock should require ALL or only ONE of the listed accesses. - /* Construction costs */ - - var/wallcost = 16 - var/floorcost = 2 - var/grillecost = 4 - var/girderupgradecost = 8 - var/windowcost = 8 - var/reinforcedwindowcost = 12 - var/airlockcost = 16 - var/decongirdercost = 13 - var/deconwallcost = 26 - var/deconfloorcost = 33 - var/decongrillecost = 4 - var/deconwindowcost = 8 - var/deconairlockcost = 32 - - /* Build delays (deciseconds) */ - - var/walldelay = 20 - var/floordelay = null //space wind's a bitch - var/grilledelay = 40 - var/windowdelay = 40 - var/airlockdelay = 50 - var/decongirderdelay = 20 - var/deconwalldelay = 40 - var/deconfloordelay = 50 - var/decongrilledelay = null //as rapid as wirecutters - var/deconwindowdelay = 50 - var/deconairlockdelay = 50 + var/delay_mod = 1 var/no_ammo_message = "The \'Low Ammo\' light on \ the RCD blinks yellow." @@ -90,8 +62,7 @@ RCD window_type = /obj/structure/window/fulltile window_type_name = "glass" - usr << "You change \the [src]'s window mode \ - to [window_type_name]." + to_chat(usr, "You change \the [src]'s window mode to [window_type_name].") /obj/item/weapon/rcd/verb/change_airlock_access() set name = "Change Airlock Access" @@ -179,7 +150,6 @@ RCD set category = "Object" set src in usr - airlockcost = initial(airlockcost) var airlockcat = input(usr, "Select whether the airlock is solid or glass.") in list("Solid", "Glass") switch(airlockcat) if("Solid") @@ -208,7 +178,6 @@ RCD airlock_type = /obj/machinery/door/airlock/external if("High Security") airlock_type = /obj/machinery/door/airlock/highsecurity - airlockcost += 2 * sheetmultiplier //extra cost else airlock_type = /obj/machinery/door/airlock @@ -240,7 +209,6 @@ RCD /obj/item/weapon/rcd/New() ..() - desc = "An RCD. It currently holds [matter]/[max_matter] matter-units." src.spark_system = new /datum/effect_system/spark_spread spark_system.set_up(5, 0, src) @@ -261,7 +229,7 @@ RCD if(istype(W, /obj/item/weapon/rcd_ammo)) var/obj/item/weapon/rcd_ammo/R = W if((matter + R.ammoamt) > max_matter) - user << "The RCD can't hold any more matter-units!" + to_chat(user, "The RCD can't hold any more matter-units!") return qdel(W) matter += R.ammoamt @@ -272,7 +240,7 @@ RCD else if(istype(W, /obj/item/stack/sheet/plasteel)) loaded = loadwithsheets(W, plasteelmultiplier*sheetmultiplier, user) //Plasteel is worth 3 times more than glass or metal if(loaded) - user << "The RCD now holds [matter]/[max_matter] matter-units." + to_chat(user, "The RCD now holds [matter]/[max_matter] matter-units.") desc = "A RCD. It currently holds [matter]/[max_matter] matter-units." else return ..() @@ -284,9 +252,9 @@ RCD S.use(amount_to_use) matter += value*amount_to_use playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - user << "You insert [amount_to_use] [S.name] sheets into the RCD. " + to_chat(user, "You insert [amount_to_use] [S.name] sheets into the RCD. ") return 1 - user << "You can't insert any more [S.name] sheets into the RCD!" + to_chat(user, "You can't insert any more [S.name] sheets into the RCD!") return 0 /obj/item/weapon/rcd/attack_self(mob/user) @@ -295,16 +263,16 @@ RCD switch(mode) if(1) mode = 2 - user << "You change RCD's mode to 'Airlock'." + to_chat(user, "You change RCD's mode to 'Airlock'.") if(2) mode = 3 - user << "You change RCD's mode to 'Deconstruct'." + to_chat(user, "You change RCD's mode to 'Deconstruct'.") if(3) mode = 4 - user << "You change RCD's mode to 'Grilles & Windows'." + to_chat(user, "You change RCD's mode to 'Grilles & Windows'.") if(4) mode = 1 - user << "You change RCD's mode to 'Floor & Walls'." + to_chat(user, "You change RCD's mode to 'Floor & Walls'.") if(prob(20)) src.spark_system.start() @@ -314,217 +282,23 @@ RCD /obj/item/weapon/rcd/afterattack(atom/A, mob/user, proximity) - if(!proximity) return 0 - if(istype(A,/turf/open/space/transit)) - return 0 - if(!(isturf(A) || istype(A, /obj/machinery/door/airlock) || istype(A, /obj/structure/grille) || istype(A, /obj/structure/window) || istype(A, /obj/structure/girder))) - return 0 - - switch(mode) - if(1) - if(isspaceturf(A)) - var/turf/open/space/S = A - if(useResource(floorcost, user)) - user << "You start building a floor..." - activate() - S.ChangeTurf(/turf/open/floor/plating) - return 1 - return 0 - - if(isfloorturf(A)) - var/turf/open/floor/F = A - if(checkResource(wallcost, user)) - user << "You start building a wall..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, walldelay, target = A)) - if(!istype(F)) return 0 - if(!useResource(wallcost, user)) return 0 - activate() - F.ChangeTurf(/turf/closed/wall) - return 1 - return 0 - - if(istype(A, /obj/structure/girder)) - var/turf/open/floor/F = get_turf(A) - if(checkResource(girderupgradecost, user)) - user << "You start finishing the \ - wall..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, walldelay, target = A)) - if(!istype(A)) return 0 - if(!useResource(girderupgradecost, user)) return 0 - activate() - qdel(A) - F.ChangeTurf(/turf/closed/wall) - return 1 - return 0 - - if(2) - if(isfloorturf(A)) - if(checkResource(airlockcost, user)) - var/door_check = 1 - for(var/obj/machinery/door/D in A) - if(!D.sub_door) - door_check = 0 - break - - if(door_check) - user << "You start building an airlock..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, airlockdelay, target = A)) - if(!useResource(airlockcost, user)) return 0 - activate() - var/obj/machinery/door/airlock/T = new airlock_type( A ) - - T.electronics = new/obj/item/weapon/electronics/airlock( src.loc ) - - if(conf_access) - T.electronics.accesses = conf_access.Copy() - T.electronics.one_access = use_one_access - - if(T.electronics.one_access) - T.req_one_access = T.electronics.accesses - else - T.req_access = T.electronics.accesses - - if(!T.checkForMultipleDoors()) - qdel(T) - useResource(-airlockcost, user) - return 0 - T.autoclose = 1 - return 1 - return 0 - else - user << "There is another door here!" - return 0 - return 0 - - if(3) - if(iswallturf(A)) - var/turf/closed/wall/W = A - if(istype(W, /turf/closed/wall/r_wall) && !canRturf) - return 0 - if(checkResource(deconwallcost, user)) - user << "You start deconstructing [W]..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, deconwalldelay, target = A)) - if(!useResource(deconwallcost, user)) return 0 - activate() - W.ChangeTurf(/turf/open/floor/plating) - return 1 - return 0 - - if(isfloorturf(A)) - var/turf/open/floor/F = A - if(istype(F, /turf/open/floor/engine) && !canRturf) - return 0 - if(istype(F, F.baseturf)) - user << "You can't dig any deeper!" - return 0 - else if(checkResource(deconfloorcost, user)) - user << "You start deconstructing floor..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, deconfloordelay, target = A)) - if(!useResource(deconfloorcost, user)) return 0 - activate() - F.ChangeTurf(F.baseturf) - return 1 - return 0 - - if(istype(A, /obj/machinery/door/airlock)) - if(checkResource(deconairlockcost, user)) - user << "You start deconstructing airlock..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, deconairlockdelay, target = A)) - if(!useResource(deconairlockcost, user)) return 0 - activate() - qdel(A) - return 1 - return 0 - - if(istype(A, /obj/structure/window)) - if(checkResource(deconwindowcost, user)) - user << "You start deconstructing the window..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, deconwindowdelay, target = A)) - if(!useResource(deconwindowcost, user)) return 0 - activate() - qdel(A) - return 1 - return 0 - - if(istype(A, /obj/structure/grille)) - var/obj/structure/grille/G = A - if(!G.shock(user, 90)) //if it's shocked, try to shock them - if(useResource(decongrillecost, user)) - user << "You start deconstructing the grille..." - activate() - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - qdel(A) - return 1 - return 0 - - if(istype(A, /obj/structure/girder)) - if(useResource(decongirdercost, user)) - user << "You start deconstructing \ - [A]..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, decongirderdelay, target = A)) - if(!useResource(decongirdercost, user)) return 0 - activate() - qdel(A) - return 1 - - if (4) - if(isfloorturf(A)) - if(checkResource(grillecost, user)) - if(locate(/obj/structure/grille) in A) - user << "There is already a grille there!" - return 0 - user << "You start building a grille..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, grilledelay, target = A)) - if(locate(/obj/structure/grille) in A) - return 0 - if(!useResource(grillecost, user)) return 0 - activate() - var/obj/structure/grille/G = new/obj/structure/grille(A) - G.anchored = 1 - return 1 - return 0 - return 0 - if(istype(A, /obj/structure/grille)) - var wname = "window?" - var cost = 0 - if (window_type == /obj/structure/window/fulltile) - cost = windowcost - wname = "window" - else if (window_type == /obj/structure/window/reinforced/fulltile) - cost = reinforcedwindowcost - wname = "reinforced window" - - if(checkResource(cost, user)) - user << "You start building a \ - [wname]..." - playsound(src.loc, 'sound/machines/click.ogg', 50, 1) - if(do_after(user, windowdelay, target = A)) - if(locate(/obj/structure/window) in A.loc) return 0 - if(!useResource(cost, user)) return 0 - activate() - var /obj/structure/window/WD = new window_type(A.loc) - WD.anchored = 1 - return 1 - return 0 - return 0 - - else - user << "ERROR: RCD in MODE: [mode] attempted use by [user]. Send this text #coderbus or an admin." - return 0 + if(!proximity) + return FALSE + var/list/rcd_results = A.rcd_vals(user, src) + if(!rcd_results) + return FALSE + if(do_after(user, rcd_results["delay"] * delay_mod, target = A)) + if(checkResource(rcd_results["cost"], user)) + if(A.rcd_act(user, src, rcd_results["mode"])) + useResource(rcd_results["cost"], user) + activate() + playsound(src.loc, 'sound/machines/click.ogg', 50, 1) + return TRUE /obj/item/weapon/rcd/proc/useResource(amount, mob/user) if(matter < amount) if(user) - user << no_ammo_message + to_chat(user, no_ammo_message) return 0 matter -= amount desc = "An RCD. It currently holds [matter]/[max_matter] matter-units." @@ -533,7 +307,7 @@ RCD /obj/item/weapon/rcd/proc/checkResource(amount, mob/user) . = matter >= amount if(!. && user) - user << no_ammo_message + to_chat(user, no_ammo_message) return . /obj/item/weapon/rcd/proc/detonate_pulse() @@ -560,11 +334,11 @@ RCD var/mob/living/silicon/robot/borgy = user if(!borgy.cell) if(user) - user << no_ammo_message + to_chat(user, no_ammo_message) return 0 . = borgy.cell.use(amount * 72) //borgs get 1.3x the use of their RCDs if(!. && user) - user << no_ammo_message + to_chat(user, no_ammo_message) return . /obj/item/weapon/rcd/borg/checkResource(amount, mob/user) @@ -573,11 +347,11 @@ RCD var/mob/living/silicon/robot/borgy = user if(!borgy.cell) if(user) - user << no_ammo_message + to_chat(user, no_ammo_message) return 0 . = borgy.cell.charge >= (amount * 72) if(!. && user) - user << no_ammo_message + to_chat(user, no_ammo_message) return . /obj/item/weapon/rcd/loaded @@ -587,7 +361,6 @@ RCD name = "industrial RCD" max_matter = 500 matter = 500 - canRturf = 1 /obj/item/weapon/rcd_ammo name = "compressed matter cartridge" @@ -603,3 +376,9 @@ RCD origin_tech = "materials=4" materials = list(MAT_METAL=48000, MAT_GLASS=32000) ammoamt = 160 + + +/obj/item/weapon/rcd/admin + name = "admin RCD" + max_matter = INFINITY + matter = INFINITY diff --git a/code/game/objects/items/weapons/RPD.dm b/code/game/objects/items/weapons/RPD.dm index a4d77803e0..3daa86ed8e 100644 --- a/code/game/objects/items/weapons/RPD.dm +++ b/code/game/objects/items/weapons/RPD.dm @@ -547,14 +547,14 @@ var/global/list/RPD_recipes=list( return if(EATING_MODE) //Eating pipes - user << "You start destroying a pipe..." + to_chat(user, "You start destroying a pipe...") playsound(get_turf(src), 'sound/machines/click.ogg', 50, 1) if(do_after(user, 2, target = A)) activate() qdel(A) if(ATMOS_MODE) //Making pipes - user << "You start building a pipe..." + to_chat(user, "You start building a pipe...") playsound(get_turf(src), 'sound/machines/click.ogg', 50, 1) if(do_after(user, 2, target = A)) activate() @@ -564,7 +564,7 @@ var/global/list/RPD_recipes=list( P.add_fingerprint(usr) if(METER_MODE) //Making pipe meters - user << "You start building a meter..." + to_chat(user, "You start building a meter...") playsound(get_turf(src), 'sound/machines/click.ogg', 50, 1) if(do_after(user, 2, target = A)) activate() @@ -572,15 +572,15 @@ var/global/list/RPD_recipes=list( if(DISPOSALS_MODE) //Making disposals pipes if(is_anchored_dense_turf(A)) - user << "The [src]'s error light flickers; there's something in the way!" + to_chat(user, "The [src]'s error light flickers; there's something in the way!") return - user << "You start building a disposals pipe..." + to_chat(user, "You start building a disposals pipe...") playsound(get_turf(src), 'sound/machines/click.ogg', 50, 1) if(do_after(user, 4, target = A)) var/obj/structure/disposalconstruct/C = new (A, queued_p_type ,queued_p_dir) if(!C.can_place()) - user << "There's not enough room to build that here!" + to_chat(user, "There's not enough room to build that here!") qdel(C) return diff --git a/code/game/objects/items/weapons/RSF.dm b/code/game/objects/items/weapons/RSF.dm index 05df767b7d..2d0bce9c87 100644 --- a/code/game/objects/items/weapons/RSF.dm +++ b/code/game/objects/items/weapons/RSF.dm @@ -19,7 +19,7 @@ RSF /obj/item/weapon/rsf/examine(mob/user) ..() - user << "It currently holds [matter]/30 fabrication-units." + to_chat(user, "It currently holds [matter]/30 fabrication-units.") /obj/item/weapon/rsf/cyborg matter = 30 @@ -27,12 +27,12 @@ RSF /obj/item/weapon/rsf/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/rcd_ammo)) if((matter + 10) > 30) - user << "The RSF can't hold any more matter." + to_chat(user, "The RSF can't hold any more matter.") return qdel(W) matter += 10 playsound(src.loc, 'sound/machines/click.ogg', 10, 1) - user << "The RSF now holds [matter]/30 fabrication-units." + to_chat(user, "The RSF now holds [matter]/30 fabrication-units.") else return ..() @@ -41,22 +41,22 @@ RSF switch(mode) if(1) mode = 2 - user << "Changed dispensing mode to 'Drinking Glass'" + to_chat(user, "Changed dispensing mode to 'Drinking Glass'") if(2) mode = 3 - user << "Changed dispensing mode to 'Paper'" + to_chat(user, "Changed dispensing mode to 'Paper'") if(3) mode = 4 - user << "Changed dispensing mode to 'Pen'" + to_chat(user, "Changed dispensing mode to 'Pen'") if(4) mode = 5 - user << "Changed dispensing mode to 'Dice Pack'" + to_chat(user, "Changed dispensing mode to 'Dice Pack'") if(5) mode = 6 - user << "Changed dispensing mode to 'Cigarette'" + to_chat(user, "Changed dispensing mode to 'Cigarette'") if(6) mode = 1 - user << "Changed dispensing mode to 'Dosh'" + to_chat(user, "Changed dispensing mode to 'Dosh'") // Change mode /obj/item/weapon/rsf/afterattack(atom/A, mob/user, proximity) @@ -66,39 +66,39 @@ RSF return if(matter < 1) - user << "\The [src] doesn't have enough matter left." + to_chat(user, "\The [src] doesn't have enough matter left.") return if(iscyborg(user)) var/mob/living/silicon/robot/R = user if(!R.cell || R.cell.charge < 200) - user << "You do not have enough power to use [src]." + to_chat(user, "You do not have enough power to use [src].") return var/turf/T = get_turf(A) playsound(src.loc, 'sound/machines/click.ogg', 10, 1) switch(mode) if(1) - user << "Dispensing Dosh..." + to_chat(user, "Dispensing Dosh...") new /obj/item/stack/spacecash/c10(T) use_matter(200, user) if(2) - user << "Dispensing Drinking Glass..." + to_chat(user, "Dispensing Drinking Glass...") new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(T) use_matter(20, user) if(3) - user << "Dispensing Paper Sheet..." + to_chat(user, "Dispensing Paper Sheet...") new /obj/item/weapon/paper(T) use_matter(10, user) if(4) - user << "Dispensing Pen..." + to_chat(user, "Dispensing Pen...") new /obj/item/weapon/pen(T) use_matter(50, user) if(5) - user << "Dispensing Dice Pack..." + to_chat(user, "Dispensing Dice Pack...") new /obj/item/weapon/storage/pill_bottle/dice(T) use_matter(200, user) if(6) - user << "Dispensing Cigarette..." + to_chat(user, "Dispensing Cigarette...") new /obj/item/clothing/mask/cigarette(T) use_matter(10, user) @@ -108,7 +108,7 @@ RSF R.cell.charge -= charge else matter-- - user << "The RSF now holds [matter]/30 fabrication-units." + to_chat(user, "The RSF now holds [matter]/30 fabrication-units.") /obj/item/weapon/cookiesynth name = "Cookie Synthesizer" @@ -124,7 +124,7 @@ RSF /obj/item/weapon/cookiesynth/examine(mob/user) ..() - user << "It currently holds [matter]/10 cookie-units." + to_chat(user, "It currently holds [matter]/10 cookie-units.") /obj/item/weapon/cookiesynth/attackby() return @@ -132,9 +132,9 @@ RSF /obj/item/weapon/cookiesynth/emag_act(mob/user) emagged = !emagged if(emagged) - user << "You short out the [src]'s reagent safety checker!" + to_chat(user, "You short out the [src]'s reagent safety checker!") else - user << "You reset the [src]'s reagent safety checker!" + to_chat(user, "You reset the [src]'s reagent safety checker!") toxin = 0 /obj/item/weapon/cookiesynth/attack_self(mob/user) @@ -143,13 +143,13 @@ RSF P = user if(emagged&&!toxin) toxin = 1 - user << "Cookie Synthesizer Hacked" + to_chat(user, "Cookie Synthesizer Hacked") else if(P.emagged&&!toxin) toxin = 1 - user << "Cookie Synthesizer Hacked" + to_chat(user, "Cookie Synthesizer Hacked") else toxin = 0 - user << "Cookie Synthesizer Reset" + to_chat(user, "Cookie Synthesizer Reset") /obj/item/weapon/cookiesynth/process() if(matter < 10) @@ -163,16 +163,16 @@ RSF if (!(istype(A, /obj/structure/table) || isfloorturf(A))) return if(matter < 1) - user << "The [src] doesn't have enough matter left. Wait for it to recharge!" + to_chat(user, "The [src] doesn't have enough matter left. Wait for it to recharge!") return if(iscyborg(user)) var/mob/living/silicon/robot/R = user if(!R.cell || R.cell.charge < 400) - user << "You do not have enough power to use [src]." + to_chat(user, "You do not have enough power to use [src].") return var/turf/T = get_turf(A) playsound(src.loc, 'sound/machines/click.ogg', 10, 1) - user << "Fabricating Cookie.." + to_chat(user, "Fabricating Cookie..") var/obj/item/weapon/reagent_containers/food/snacks/cookie/S = new /obj/item/weapon/reagent_containers/food/snacks/cookie(T) if(toxin) S.reagents.add_reagent("chloralhydrate2", 10) diff --git a/code/game/objects/items/weapons/airlock_painter.dm b/code/game/objects/items/weapons/airlock_painter.dm index f6d23cfafe..a635bcdefb 100644 --- a/code/game/objects/items/weapons/airlock_painter.dm +++ b/code/game/objects/items/weapons/airlock_painter.dm @@ -34,10 +34,10 @@ //because you're expecting user input. /obj/item/weapon/airlock_painter/proc/can_use(mob/user) if(!ink) - user << "There is no toner cartridge installed in [src]!" + to_chat(user, "There is no toner cartridge installed in [src]!") return 0 else if(ink.charges < 1) - user << "[src] is out of ink!" + to_chat(user, "[src] is out of ink!") return 0 else return 1 @@ -92,7 +92,7 @@ /obj/item/weapon/airlock_painter/examine(mob/user) ..() if(!ink) - user << "It doesn't have a toner cartridge installed." + to_chat(user, "It doesn't have a toner cartridge installed.") return var/ink_level = "high" if(ink.charges < 1) @@ -101,17 +101,17 @@ ink_level = "low" else if((ink.charges/ink.max_charges) > 1) //Over 100% (admin var edit) ink_level = "dangerously high" - user << "Its ink levels look [ink_level]." + to_chat(user, "Its ink levels look [ink_level].") /obj/item/weapon/airlock_painter/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/device/toner)) if(ink) - user << "[src] already contains \a [ink]." + to_chat(user, "[src] already contains \a [ink].") return if(!user.transferItemToLoc(W, src)) return - user << "You install [W] into [src]." + to_chat(user, "You install [W] into [src].") ink = W playsound(src.loc, 'sound/machines/click.ogg', 50, 1) else @@ -122,5 +122,5 @@ playsound(src.loc, 'sound/machines/click.ogg', 50, 1) ink.loc = user.loc user.put_in_hands(ink) - user << "You remove [ink] from [src]." + to_chat(user, "You remove [ink] from [src].") ink = null diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index e9e1cac49b..b2c92183bd 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -94,7 +94,7 @@ /obj/item/weapon/card/id/examine(mob/user) ..() if(mining_points) - user << "There's [mining_points] mining equipment redemption point\s loaded onto this card." + to_chat(user, "There's [mining_points] mining equipment redemption point\s loaded onto this card.") /obj/item/weapon/card/id/GetAccess() return access @@ -150,14 +150,14 @@ update_label("John Doe", "Clowny") src.access |= I.access if(isliving(user) && user.mind) if(user.mind.special_role) - usr << "The card's microscanners activate as you pass it over the ID, copying its access." + to_chat(usr, "The card's microscanners activate as you pass it over the ID, copying its access.") /obj/item/weapon/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/new_player/prefrences.dm + 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 @@ -169,7 +169,7 @@ update_label("John Doe", "Clowny") return assignment = u update_label() - user << "You successfully forge the ID card." + to_chat(user, "You successfully forge the ID card.") return ..() @@ -249,7 +249,7 @@ update_label("John Doe", "Clowny") var/points = 0 /obj/item/weapon/card/id/prisoner/attack_self(mob/user) - usr << "You have accumulated [points] out of the [goal] points you need for freedom." + to_chat(usr, "You have accumulated [points] out of the [goal] points you need for freedom.") /obj/item/weapon/card/id/prisoner/one name = "Prisoner #13-001" diff --git a/code/game/objects/items/weapons/chrono_eraser.dm b/code/game/objects/items/weapons/chrono_eraser.dm index 258666543e..5613891326 100644 --- a/code/game/objects/items/weapons/chrono_eraser.dm +++ b/code/game/objects/items/weapons/chrono_eraser.dm @@ -82,14 +82,14 @@ var/mob/living/user = src.loc if(F.gun) if(isliving(user) && F.captured) - user << "FAIL: [F.captured] already has an existing connection." + to_chat(user, "FAIL: [F.captured] already has an existing connection.") src.field_disconnect(F) else startpos = get_turf(src) field = F F.gun = src if(isliving(user) && F.captured) - user << "Connection established with target: [F.captured]" + to_chat(user, "Connection established with target: [F.captured]") /obj/item/weapon/gun/energy/chrono_gun/proc/field_disconnect(obj/effect/chrono_field/F) @@ -98,7 +98,7 @@ if(F.gun == src) F.gun = null if(isliving(user) && F.captured) - user << "Disconnected from target: [F.captured]" + to_chat(user, "Disconnected from target: [F.captured]") field = null startpos = null @@ -199,7 +199,7 @@ AM.loc = loc qdel(src) else if(tickstokill <= 0) - captured << "As the last essence of your being is erased from time, you begin to re-experience your most enjoyable memory. You feel happy..." + to_chat(captured, "As the last essence of your being is erased from time, you begin to re-experience your most enjoyable memory. You feel happy...") var/mob/dead/observer/ghost = captured.ghostize(1) if(captured.mind) if(ghost) diff --git a/code/game/objects/items/weapons/cigs_lighters.dm b/code/game/objects/items/weapons/cigs_lighters.dm index 1c7213fb2d..9c873e2048 100644 --- a/code/game/objects/items/weapons/cigs_lighters.dm +++ b/code/game/objects/items/weapons/cigs_lighters.dm @@ -77,7 +77,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/obj/item/clothing/mask/cigarette/cig = help_light_cig(M) if(lit && cig && user.a_intent == INTENT_HELP) if(cig.lit) - user << "The [cig.name] is already lit." + to_chat(user, "The [cig.name] is already lit.") if(M == user) cig.attackby(src, user) else @@ -139,14 +139,13 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(!proximity || lit) //can't dip if cigarette is lit (it will heat the reagents in the glass instead) return if(istype(glass)) //you can dip cigarettes into beakers - var/transfered = glass.reagents.trans_to(src, chem_volume) - if(transfered) //if reagents were transfered, show the message - user << "You dip \the [src] into \the [glass]." + if(glass.reagents.trans_to(src, chem_volume)) //if reagents were transfered, show the message + to_chat(user, "You dip \the [src] into \the [glass].") else //if not, either the beaker was empty, or the cigarette was full if(!glass.reagents.total_volume) - user << "[glass] is empty." + to_chat(user, "[glass] is empty.") else - user << "[src] is full." + to_chat(user, "[src] is full.") /obj/item/clothing/mask/cigarette/proc/light(flavor_text = null) @@ -196,7 +195,8 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(prob(15)) // so it's not an instarape in case of acid var/fraction = min(REAGENTS_METABOLISM/reagents.total_volume, 1) reagents.reaction(C, INGEST, fraction) - reagents.trans_to(C, REAGENTS_METABOLISM) + if(!reagents.trans_to(C, REAGENTS_METABOLISM)) + reagents.remove_any(REAGENTS_METABOLISM) return reagents.remove_any(REAGENTS_METABOLISM) @@ -210,7 +210,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(smoketime < 1) new type_butt(location) if(ismob(loc)) - M << "Your [name] goes out." + to_chat(M, "Your [name] goes out.") qdel(src) return open_flame() @@ -231,7 +231,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/obj/item/clothing/mask/cigarette/cig = help_light_cig(M) if(lit && cig && user.a_intent == INTENT_HELP) if(cig.lit) - user << "The [cig.name] is already lit." + to_chat(user, "The [cig.name] is already lit.") if(M == user) cig.attackby(src, user) else @@ -355,7 +355,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM new /obj/effect/decal/cleanable/ash(location) if(ismob(loc)) var/mob/living/M = loc - M << "Your [name] goes out." + to_chat(M, "Your [name] goes out.") lit = 0 icon_state = icon_off item_state = icon_off @@ -374,7 +374,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/obj/item/weapon/reagent_containers/food/snacks/grown/G = O if(!packeditem) if(G.dry == 1) - user << "You stuff [O] into [src]." + to_chat(user, "You stuff [O] into [src].") smoketime = 400 packeditem = 1 name = "[O.name]-packed [initial(name)]" @@ -382,16 +382,16 @@ CIGARETTE PACKETS ARE IN FANCY.DM O.reagents.trans_to(src, O.reagents.total_volume) qdel(O) else - user << "It has to be dried first!" + to_chat(user, "It has to be dried first!") else - user << "It is already packed!" + to_chat(user, "It is already packed!") else var/lighting_text = O.ignition_effect(src,user) if(lighting_text) if(smoketime > 0) light(lighting_text) else - user << "There is nothing to smoke!" + to_chat(user, "There is nothing to smoke!") else return ..() @@ -405,7 +405,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM STOP_PROCESSING(SSobj, src) return if(!lit && smoketime > 0) - user << "You empty [src] onto [location]." + to_chat(user, "You empty [src] onto [location].") new /obj/effect/decal/cleanable/ash(location) packeditem = 0 smoketime = 0 @@ -489,7 +489,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM user.apply_damage(5, BURN, hitzone) user.visible_message("After a few attempts, [user] manages to light [src] - however, [user.p_they()] burn their finger in the process.", "You burn yourself while lighting the lighter!") - user.AddLuminosity(1) + set_light(1) START_PROCESSING(SSobj, src) else lit = 0 @@ -501,7 +501,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM user.visible_message("You hear a quiet click, as [user] shuts off [src] without even looking at what [user.p_theyre()] doing. Wow.", "You quietly shut off [src] without even looking at what you're doing. Wow.") else user.visible_message("[user] quietly shuts off [src].", "You quietly shut off [src].") - user.AddLuminosity(-1) + set_light(0) STOP_PROCESSING(SSobj, src) else . = ..() @@ -513,7 +513,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/obj/item/clothing/mask/cigarette/cig = help_light_cig(M) if(lit && cig && user.a_intent == INTENT_HELP) if(cig.lit) - user << "The [cig.name] is already lit." + to_chat(user, "The [cig.name] is already lit.") if(M == user) cig.attackby(src, user) else @@ -527,19 +527,6 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/weapon/lighter/process() open_flame() -/obj/item/weapon/lighter/pickup(mob/user) - ..() - if(lit) - SetLuminosity(0) - user.AddLuminosity(1) - -/obj/item/weapon/lighter/dropped(mob/user) - ..() - if(lit) - if(user) - user.AddLuminosity(-1) - SetLuminosity(1) - /obj/item/weapon/lighter/is_hot() return lit * heat @@ -565,10 +552,10 @@ CIGARETTE PACKETS ARE IN FANCY.DM qdel(target) qdel(src) user.put_in_active_hand(R) - user << "You roll the [target.name] into a rolling paper." + to_chat(user, "You roll the [target.name] into a rolling paper.") R.desc = "Dried [target.name] rolled up in a thin piece of paper." else - user << "You need to dry this first!" + to_chat(user, "You need to dry this first!") else ..() @@ -608,23 +595,23 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(reagents.total_volume < chem_volume) if(O.reagents.total_volume > 0) O.reagents.trans_to(src,25) - user << "You add the contents of [O] to the [src]" + to_chat(user, "You add the contents of [O] to the [src]") else - user << "The [O] is empty!" + to_chat(user, "The [O] is empty!") else - user << "[src] can't hold anymore reagents!" + to_chat(user, "[src] can't hold anymore reagents!") if(istype(O, /obj/item/weapon/screwdriver)) if(!screw) screw = 1 - user << "You open the cap on the [src]" + to_chat(user, "You open the cap on the [src]") if(super) add_overlay(image(icon, "vapeopen_med")) else add_overlay(image(icon, "vapeopen_low")) else screw = 0 - user << "You close the cap on the [src]" + to_chat(user, "You close the cap on the [src]") cut_overlays() if(istype(O, /obj/item/device/multitool)) @@ -632,16 +619,16 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(!super) cut_overlays() super = 1 - user << "You increase the voltage in the [src]" + to_chat(user, "You increase the voltage in the [src]") add_overlay(image(icon, "vapeopen_med")) else cut_overlays() super = 0 - user << "You decrease the voltage in the [src]" + to_chat(user, "You decrease the voltage in the [src]") add_overlay(image(icon, "vapeopen_low")) if(screw && emagged) - user << "The [name] can't be modified!" + to_chat(user, "The [name] can't be modified!") /obj/item/clothing/mask/vape/emag_act(mob/user)// I WON'T REGRET WRITTING THIS, SURLY. @@ -650,30 +637,30 @@ CIGARETTE PACKETS ARE IN FANCY.DM cut_overlays() emagged = 1 super = 0 - user << "You maximize the voltage in the [src]" + to_chat(user, "You maximize the voltage in the [src]") add_overlay(image(icon, "vapeopen_high")) var/datum/effect_system/spark_spread/sp = new /datum/effect_system/spark_spread //for effect sp.set_up(5, 1, src) sp.start() else - user << "The [name] is already emagged!" + to_chat(user, "The [name] is already emagged!") else - user << "You need to open the cap to do that" + to_chat(user, "You need to open the cap to do that") /obj/item/clothing/mask/vape/attack_self(mob/user) if(reagents.total_volume > 0) - user << "you empty [src] of all reagents." + to_chat(user, "you empty [src] of all reagents.") reagents.clear_reagents() return /obj/item/clothing/mask/vape/equipped(mob/user, slot) if(slot == slot_wear_mask) if(!screw) - user << "You start puffing on the vape." + to_chat(user, "You start puffing on the vape.") reagents.set_reacting(TRUE) START_PROCESSING(SSobj, src) else //it will not start if the vape is opened. - user << "You need to close the cap first!" + to_chat(user, "You need to close the cap first!") /obj/item/clothing/mask/vape/dropped(mob/user) var/mob/living/carbon/C = user @@ -688,7 +675,8 @@ CIGARETTE PACKETS ARE IN FANCY.DM if (src == C.wear_mask) // if it's in the human/monkey mouth, transfer reagents to the mob var/fraction = min(REAGENTS_METABOLISM/reagents.total_volume, 1) //this will react instantly, making them a little more dangerous than cigarettes reagents.reaction(C, INGEST, fraction) - reagents.trans_to(C, REAGENTS_METABOLISM) + if(!reagents.trans_to(C, REAGENTS_METABOLISM)) + reagents.remove_any(REAGENTS_METABOLISM) if(reagents.get_reagent_amount("welding_fuel")) //HOT STUFF C.fire_stacks = 2 @@ -712,7 +700,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM if(!reagents.total_volume) if(ismob(loc)) - M << "The [name] is empty!" + to_chat(M, "The [name] is empty!") STOP_PROCESSING(SSobj, src) //it's reusable so it won't unequip when empty return @@ -737,7 +725,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/datum/effect_system/spark_spread/sp = new /datum/effect_system/spark_spread sp.set_up(5, 1, src) sp.start() - M << "The [name] suddenly explodes in your mouth!" + to_chat(M, "The [name] suddenly explodes in your mouth!") if(reagents && reagents.total_volume) hand_reagents() diff --git a/code/game/objects/items/weapons/clown_items.dm b/code/game/objects/items/weapons/clown_items.dm index 8ec48e0434..1c2bf7511c 100644 --- a/code/game/objects/items/weapons/clown_items.dm +++ b/code/game/objects/items/weapons/clown_items.dm @@ -58,11 +58,11 @@ //I couldn't feasibly fix the overlay bugs caused by cleaning items we are wearing. //So this is a workaround. This also makes more sense from an IC standpoint. ~Carn if(user.client && (target in user.client.screen)) - user << "You need to take that [target.name] off before cleaning it!" + to_chat(user, "You need to take that [target.name] off before cleaning it!") else if(istype(target,/obj/effect/decal/cleanable)) user.visible_message("[user] begins to scrub \the [target.name] out with [src].", "You begin to scrub \the [target.name] out with [src]...") if(do_after(user, src.cleanspeed, target = target)) - user << "You scrub \the [target.name] out." + to_chat(user, "You scrub \the [target.name] out.") qdel(target) else if(ishuman(target) && user.zone_selected == "mouth") var/mob/living/carbon/human/H = user @@ -73,13 +73,13 @@ else if(istype(target, /obj/structure/window)) user.visible_message("[user] begins to clean \the [target.name] with [src]...", "You begin to clean \the [target.name] with [src]...") if(do_after(user, src.cleanspeed, target = target)) - user << "You clean \the [target.name]." + to_chat(user, "You clean \the [target.name].") target.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) - target.SetOpacity(initial(target.opacity)) + target.set_opacity(initial(target.opacity)) else user.visible_message("[user] begins to clean \the [target.name] with [src]...", "You begin to clean \the [target.name] with [src]...") if(do_after(user, src.cleanspeed, target = target)) - user << "You clean \the [target.name]." + to_chat(user, "You clean \the [target.name].") var/obj/effect/decal/cleanable/C = locate() in target qdel(C) target.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) diff --git a/code/game/objects/items/weapons/cosmetics.dm b/code/game/objects/items/weapons/cosmetics.dm index cc69d6cf26..785839ba2d 100644 --- a/code/game/objects/items/weapons/cosmetics.dm +++ b/code/game/objects/items/weapons/cosmetics.dm @@ -35,7 +35,7 @@ /obj/item/weapon/lipstick/attack_self(mob/user) cut_overlays() - user << "You twist \the [src] [open ? "closed" : "open"]." + to_chat(user, "You twist \the [src] [open ? "closed" : "open"].") open = !open if(open) var/image/colored = image("icon"='icons/obj/items.dmi', "icon_state"="lipstick_uncap_color") @@ -55,10 +55,10 @@ if(ishuman(M)) var/mob/living/carbon/human/H = M if(H.is_mouth_covered()) - user << "Remove [ H == user ? "your" : "their" ] mask!" + to_chat(user, "Remove [ H == user ? "your" : "their" ] mask!") return if(H.lip_style) //if they already have lipstick on - user << "You need to wipe off the old lipstick first!" + to_chat(user, "You need to wipe off the old lipstick first!") return if(H == user) user.visible_message("[user] does their lips with \the [src].", \ @@ -76,7 +76,7 @@ H.lip_color = colour H.update_body() else - user << "Where are the lips on that?" + to_chat(user, "Where are the lips on that?") //you can wipe off lipstick with paper! /obj/item/weapon/paper/attack(mob/M, mob/user) @@ -87,7 +87,7 @@ if(ishuman(M)) var/mob/living/carbon/human/H = M if(H == user) - user << "You wipe off the lipstick with [src]." + to_chat(user, "You wipe off the lipstick with [src].") H.lip_style = null H.update_body() else @@ -127,13 +127,13 @@ var/location = user.zone_selected if(location == "mouth") if(!(FACEHAIR in H.dna.species.species_traits)) - user << "There is no facial hair to shave!" + to_chat(user, "There is no facial hair to shave!") return if(!get_location_accessible(H, location)) - user << "The mask is in the way!" + to_chat(user, "The mask is in the way!") return if(H.facial_hair_style == "Shaved") - user << "Already clean-shaven!" + to_chat(user, "Already clean-shaven!") return if(H == user) //shaving yourself @@ -155,13 +155,13 @@ else if(location == "head") if(!(HAIR in H.dna.species.species_traits)) - user << "There is no hair to shave!" + to_chat(user, "There is no hair to shave!") return if(!get_location_accessible(H, location)) - user << "The headgear is in the way!" + to_chat(user, "The headgear is in the way!") return if(H.hair_style == "Bald" || H.hair_style == "Balding Hair" || H.hair_style == "Skinhead") - user << "There is not enough hair left to shave!" + to_chat(user, "There is not enough hair left to shave!") return if(H == user) //shaving yourself diff --git a/code/game/objects/items/weapons/defib.dm b/code/game/objects/items/weapons/defib.dm index 47bc2d5835..f251cbabab 100644 --- a/code/game/objects/items/weapons/defib.dm +++ b/code/game/objects/items/weapons/defib.dm @@ -82,13 +82,13 @@ if(user.get_item_by_slot(slot_back) == src) ui_action_click() else - user << "Put the defibrillator on your back first!" + to_chat(user, "Put the defibrillator on your back first!") else if(slot_flags == SLOT_BELT) if(user.get_item_by_slot(slot_belt) == src) ui_action_click() else - user << "Strap the defibrillator's belt on first!" + to_chat(user, "Strap the defibrillator's belt on first!") return ..() @@ -106,15 +106,15 @@ else if(istype(W, /obj/item/weapon/stock_parts/cell)) var/obj/item/weapon/stock_parts/cell/C = W if(bcell) - user << "[src] already has a cell." + to_chat(user, "[src] already has a cell.") else if(C.maxcharge < paddles.revivecost) - user << "[src] requires a higher capacity cell." + to_chat(user, "[src] requires a higher capacity cell.") return if(!user.transferItemToLoc(W, src)) return bcell = W - user << "You install a cell in [src]." + to_chat(user, "You install a cell in [src].") update_icon() else if(istype(W, /obj/item/weapon/screwdriver)) @@ -122,7 +122,7 @@ bcell.updateicon() bcell.loc = get_turf(src.loc) bcell = null - user << "You remove the cell from [src]." + to_chat(user, "You remove the cell from [src].") update_icon() else return ..() @@ -130,10 +130,10 @@ /obj/item/weapon/defibrillator/emag_act(mob/user) if(safety) safety = 0 - user << "You silently disable [src]'s safety protocols with the cryptographic sequencer." + to_chat(user, "You silently disable [src]'s safety protocols with the cryptographic sequencer.") else safety = 1 - user << "You silently enable [src]'s safety protocols with the cryptographic sequencer." + to_chat(user, "You silently enable [src]'s safety protocols with the cryptographic sequencer.") /obj/item/weapon/defibrillator/emp_act(severity) if(bcell) @@ -159,7 +159,7 @@ //Detach the paddles into the user's hands if(!usr.put_in_hands(paddles)) on = 0 - user << "You need a free hand to hold the paddles!" + to_chat(user, "You need a free hand to hold the paddles!") update_icon() return paddles.loc = user @@ -323,7 +323,7 @@ var/obj/item/weapon/twohanded/offhand/O = user.get_inactive_held_item() if(istype(O)) O.unwield() - user << "The paddles snap back into the main unit." + to_chat(user, "The paddles snap back into the main unit.") defib.on = 0 loc = defib defib.update_icon() @@ -348,15 +348,15 @@ return if(!wielded) if(iscyborg(user)) - user << "You must activate the paddles in your active module before you can use them on someone!" + to_chat(user, "You must activate the paddles in your active module before you can use them on someone!") else - user << "You need to wield the paddles in both hands before you can use them on someone!" + to_chat(user, "You need to wield the paddles in both hands before you can use them on someone!") return if(cooldown) if(req_defib) - user << "[defib] is recharging!" + to_chat(user, "[defib] is recharging!") else - user << "[src] are recharging!" + to_chat(user, "[src] are recharging!") return if(user.a_intent == INTENT_DISARM) @@ -365,16 +365,15 @@ if(!ishuman(M)) if(req_defib) - user << "The instructions on [defib] don't mention how to revive that..." + to_chat(user, "The instructions on [defib] don't mention how to revive that...") else - user << "You aren't sure how to revive that..." + to_chat(user, "You aren't sure how to revive that...") return var/mob/living/carbon/human/H = M if(user.zone_selected != "chest") - user << "You need to target your patient's \ - chest with [src]!" + to_chat(user, "You need to target your patient's chest with [src]!") return if(user.a_intent == INTENT_HARM) @@ -438,7 +437,7 @@ update_icon() return if(H && H.stat == DEAD) - user << "[H] is dead." + to_chat(user, "[H] is dead.") playsound(get_turf(src), 'sound/machines/defib_failed.ogg', 50, 0) busy = 0 update_icon() diff --git a/code/game/objects/items/weapons/dice.dm b/code/game/objects/items/weapons/dice.dm index d7207bd398..23febe50db 100644 --- a/code/game/objects/items/weapons/dice.dm +++ b/code/game/objects/items/weapons/dice.dm @@ -179,7 +179,7 @@ if(istype(H) && !H.shoes) if(PIERCEIMMUNE in H.dna.species.species_traits) return 0 - H << "You step on the D4!" + to_chat(H, "You step on the D4!") H.apply_damage(4,BRUTE,(pick("l_leg", "r_leg"))) H.Weaken(3) diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm index 39dea5d3fa..952e51fc96 100644 --- a/code/game/objects/items/weapons/dna_injector.dm +++ b/code/game/objects/items/weapons/dna_injector.dm @@ -51,15 +51,15 @@ M.updateappearance(mutations_overlay_update=1) log_attack(log_msg) else - user << "It appears that [M] does not have compatible DNA." + to_chat(user, "It appears that [M] does not have compatible DNA.") return /obj/item/weapon/dnainjector/attack(mob/target, mob/user) if(!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to do this!" + to_chat(user, "You don't have the dexterity to do this!") return if(used) - user << "This injector is used up!" + to_chat(user, "This injector is used up!") return if(ishuman(target)) var/mob/living/carbon/human/humantarget = target @@ -75,7 +75,7 @@ "[user] injects [target] with the syringe with [src]!") else - user << "You inject yourself with [src]." + to_chat(user, "You inject yourself with [src].") add_logs(user, target, "injected", src) @@ -310,7 +310,7 @@ if(M.has_dna() && !(M.disabilities & NOCLONE)) if(M.stat == DEAD) //prevents dead people from having their DNA changed - user << "You can't modify [M]'s DNA while [M.p_theyre()] dead." + to_chat(user, "You can't modify [M]'s DNA while [M.p_theyre()] dead.") return M.radiation += rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2)) var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]" @@ -353,7 +353,7 @@ M.dna.temporary_mutations[UI_CHANGED] = endtime log_attack(log_msg) else - user << "It appears that [M] does not have compatible DNA." + to_chat(user, "It appears that [M] does not have compatible DNA.") return /obj/item/weapon/dnainjector/timed/hulk diff --git a/code/game/objects/items/weapons/explosives.dm b/code/game/objects/items/weapons/explosives.dm index 8a855f1fa2..394eda9a7a 100644 --- a/code/game/objects/items/weapons/explosives.dm +++ b/code/game/objects/items/weapons/explosives.dm @@ -52,7 +52,7 @@ /obj/item/weapon/c4/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver)) open_panel = !open_panel - user << "You [open_panel ? "open" : "close"] the wire panel." + to_chat(user, "You [open_panel ? "open" : "close"] the wire panel.") else if(is_wire_tool(I)) wires.interact(user) else @@ -63,7 +63,7 @@ if(user.get_active_held_item() == src) newtime = Clamp(newtime, 10, 60000) timer = newtime - user << "Timer set for [timer] seconds." + to_chat(user, "Timer set for [timer] seconds.") /obj/item/weapon/c4/afterattack(atom/movable/AM, mob/user, flag) if (!flag) @@ -79,7 +79,7 @@ if(!S.locked) //Literal hacks, this works for lockboxes despite incorrect type casting, because they both share the locked var. But if its unlocked, place it inside, otherwise PLANTING C4! return - user << "You start planting the bomb..." + to_chat(user, "You start planting the bomb...") if(do_after(user, 50, target = AM)) if(!user.temporarilyRemoveItemFromInventory(src)) @@ -93,7 +93,7 @@ log_game("[key_name(user)] planted [name] on [target.name] at [COORD(target)] with [timer] second fuse") target.add_overlay(image_overlay, 1) - user << "You plant the bomb. Timer counting down from [timer]." + to_chat(user, "You plant the bomb. Timer counting down from [timer].") addtimer(CALLBACK(src, .proc/explode), timer * 10) /obj/item/weapon/c4/proc/explode() diff --git a/code/game/objects/items/weapons/extinguisher.dm b/code/game/objects/items/weapons/extinguisher.dm index 120fa072c5..580c5d8605 100644 --- a/code/game/objects/items/weapons/extinguisher.dm +++ b/code/game/objects/items/weapons/extinguisher.dm @@ -48,7 +48,7 @@ safety = !safety src.icon_state = "[sprite_name][!safety]" src.desc = "The safety is [safety ? "on" : "off"]." - user << "The safety is [safety ? "on" : "off"]." + to_chat(user, "The safety is [safety ? "on" : "off"].") return /obj/item/weapon/extinguisher/attack(mob/M, mob/user) @@ -67,27 +67,27 @@ /obj/item/weapon/extinguisher/examine(mob/user) ..() if(reagents.total_volume) - user << "It contains [round(reagents.total_volume)] units." + to_chat(user, "It contains [round(reagents.total_volume)] units.") else - user << "It is empty." + to_chat(user, "It is empty.") /obj/item/weapon/extinguisher/proc/AttemptRefill(atom/target, mob/user) if(istype(target, /obj/structure/reagent_dispensers/watertank) && target.Adjacent(user)) var/safety_save = safety safety = TRUE if(reagents.total_volume == reagents.maximum_volume) - user << "\The [src] is already full!" + to_chat(user, "\The [src] is already full!") safety = safety_save return 1 var/obj/structure/reagent_dispensers/watertank/W = target var/transferred = W.reagents.trans_to(src, max_water) if(transferred > 0) - user << "\The [src] has been refilled by [transferred] units." + to_chat(user, "\The [src] has been refilled by [transferred] units.") playsound(src.loc, 'sound/effects/refill.ogg', 50, 1, -6) for(var/datum/reagent/water/R in reagents.reagent_list) R.cooling_temperature = cooling_power else - user << "\The [W] is empty!" + to_chat(user, "\The [W] is empty!") safety = safety_save return 1 else @@ -100,7 +100,7 @@ return if (!safety) if (src.reagents.total_volume < 1) - usr << "\The [src] is empty!" + to_chat(usr, "\The [src] is empty!") return if (world.time < src.last_use + 12) diff --git a/code/game/objects/items/weapons/flamethrower.dm b/code/game/objects/items/weapons/flamethrower.dm index 1919a0d8f3..ac53eb25ff 100644 --- a/code/game/objects/items/weapons/flamethrower.dm +++ b/code/game/objects/items/weapons/flamethrower.dm @@ -61,15 +61,15 @@ return /obj/item/weapon/flamethrower/afterattack(atom/target, mob/user, flag) - if(flag) - return // too close + if(flag) + return // too close if(ishuman(user)) var/mob/living/carbon/human/H = user if(H.dna.check_mutation(HULK)) - user << "Your meaty finger is much too large for the trigger guard!" + to_chat(user, "Your meaty finger is much too large for the trigger guard!") return if(NOGUNS in H.dna.species.species_traits) - user << "Your fingers don't fit in the trigger guard!" + to_chat(user, "Your fingers don't fit in the trigger guard!") return if(user && user.get_active_held_item() == src) // Make sure our user is still holding us var/turf/target_turf = get_turf(target) @@ -96,7 +96,7 @@ else if(istype(W, /obj/item/weapon/screwdriver) && igniter && !lit) status = !status - user << "[igniter] is now [status ? "secured" : "unsecured"]!" + to_chat(user, "[igniter] is now [status ? "secured" : "unsecured"]!") update_icon() return @@ -114,7 +114,7 @@ else if(istype(W,/obj/item/weapon/tank/internals/plasma)) if(ptank) - user << "There is already a plasma tank loaded in [src]!" + to_chat(user, "There is already a plasma tank loaded in [src]!") return if(!user.transferItemToLoc(W, src)) return @@ -133,7 +133,7 @@ return user.set_machine(src) if(!ptank) - user << "Attach a plasma tank first!" + to_chat(user, "Attach a plasma tank first!") return var/dat = text("Flamethrower ([lit ? "Lit" : "Unlit"])
\n Tank Pressure: [ptank.air_contents.return_pressure()]
\nAmount to throw: - - - [throw_amount] + + +
\nRemove plasmatank - Close
") user << browse(dat, "window=flamethrower;size=600x300") diff --git a/code/game/objects/items/weapons/gift.dm b/code/game/objects/items/weapons/gift.dm index 4da249cd4d..2d584327c2 100644 --- a/code/game/objects/items/weapons/gift.dm +++ b/code/game/objects/items/weapons/gift.dm @@ -27,7 +27,7 @@ /obj/item/weapon/a_gift/attack_self(mob/M) if(M && M.mind && M.mind.special_role == "Santa") - M << "You're supposed to be spreading gifts, not opening them yourself!" + to_chat(M, "You're supposed to be spreading gifts, not opening them yourself!") return var/gift_type_list = list(/obj/item/weapon/sord, @@ -43,8 +43,8 @@ /obj/item/weapon/lipstick/random, /obj/item/weapon/grenade/smokebomb, /obj/item/weapon/grown/corncob, - /obj/item/weapon/poster/contraband, - /obj/item/weapon/poster/legit, + /obj/item/weapon/poster/random_contraband, + /obj/item/weapon/poster/random_official, /obj/item/weapon/book/manual/barman_recipes, /obj/item/weapon/book/manual/chef_recipes, /obj/item/weapon/bikehorn, @@ -78,4 +78,4 @@ qdel(src) var/obj/item/I = new gift_type(M) M.put_in_hands(I) - I.add_fingerprint(M) \ No newline at end of file + I.add_fingerprint(M) diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.dm b/code/game/objects/items/weapons/grenades/chem_grenade.dm index 9ee7967408..9ecd9809af 100644 --- a/code/game/objects/items/weapons/grenades/chem_grenade.dm +++ b/code/game/objects/items/weapons/grenades/chem_grenade.dm @@ -38,7 +38,7 @@ var/area/A = get_area(bombturf) message_admins("[key_name_admin(usr)]? (FLW) has primed a [name] for detonation at [A.name] (JMP).") log_game("[key_name(usr)] has primed a [name] for detonation at [A.name] ([bombturf.x],[bombturf.y],[bombturf.z]).") - user << "You prime the [name]! [det_time / 10] second\s!" + to_chat(user, "You prime the [name]! [det_time / 10] second\s!") playsound(user.loc, 'sound/weapons/armbomb.ogg', 60, 1) active = 1 icon_state = initial(icon_state) + "_active" @@ -54,29 +54,29 @@ if(stage == WIRED) if(beakers.len) stage_change(READY) - user << "You lock the [initial(name)] assembly." + to_chat(user, "You lock the [initial(name)] assembly.") playsound(loc, I.usesound, 25, -3) else - user << "You need to add at least one beaker before locking the [initial(name)] assembly!" + to_chat(user, "You need to add at least one beaker before locking the [initial(name)] assembly!") else if(stage == READY && !nadeassembly) det_time = det_time == 50 ? 30 : 50 //toggle between 30 and 50 - user << "You modify the time delay. It's set for [det_time / 10] second\s." + to_chat(user, "You modify the time delay. It's set for [det_time / 10] second\s.") else if(stage == EMPTY) - user << "You need to add an activation mechanism!" + to_chat(user, "You need to add an activation mechanism!") else if(stage == WIRED && is_type_in_list(I, allowed_containers)) . = 1 //no afterattack if(beakers.len == 2) - user << "[src] can not hold more containers!" + to_chat(user, "[src] can not hold more containers!") return else if(I.reagents.total_volume) if(!user.transferItemToLoc(I, src)) return - user << "You add [I] to the [initial(name)] assembly." + to_chat(user, "You add [I] to the [initial(name)] assembly.") beakers += I else - user << "[I] is empty!" + to_chat(user, "[I] is empty!") else if(stage == EMPTY && istype(I, /obj/item/device/assembly_holder)) . = 1 // no afterattack @@ -91,28 +91,28 @@ assemblyattacher = user.ckey stage_change(WIRED) - user << "You add [A] to the [initial(name)] assembly." + to_chat(user, "You add [A] to the [initial(name)] assembly.") else if(stage == EMPTY && istype(I, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/C = I if (C.use(1)) det_time = 50 // In case the cable_coil was removed and readded. stage_change(WIRED) - user << "You rig the [initial(name)] assembly." + to_chat(user, "You rig the [initial(name)] assembly.") else - user << "You need one length of coil to wire the assembly!" + to_chat(user, "You need one length of coil to wire the assembly!") return else if(stage == READY && istype(I, /obj/item/weapon/wirecutters)) stage_change(WIRED) - user << "You unlock the [initial(name)] assembly." + to_chat(user, "You unlock the [initial(name)] assembly.") else if(stage == WIRED && istype(I, /obj/item/weapon/wrench)) if(beakers.len) for(var/obj/O in beakers) O.loc = get_turf(src) beakers = list() - user << "You open the [initial(name)] assembly and remove the payload." + to_chat(user, "You open the [initial(name)] assembly and remove the payload.") return // First use of the wrench remove beakers, then use the wrench to remove the activation mechanism. if(nadeassembly) nadeassembly.loc = get_turf(src) @@ -121,7 +121,7 @@ else // If "nadeassembly = null && stage == WIRED", then it most have been cable_coil that was used. new /obj/item/stack/cable_coil(get_turf(src),1) stage_change(EMPTY) - user << "You remove the activation mechanism from the [initial(name)] assembly." + to_chat(user, "You remove the activation mechanism from the [initial(name)] assembly.") else return ..() @@ -229,7 +229,7 @@ if(istype(I, /obj/item/slime_extract) && stage == WIRED) if(!user.transferItemToLoc(I, src)) return - user << "You add [I] to the [initial(name)] assembly." + to_chat(user, "You add [I] to the [initial(name)] assembly.") beakers += I else return ..() @@ -265,7 +265,7 @@ unit_spread += 25 else unit_spread = 5 - user << " You set the time release to [unit_spread] units per detonation." + to_chat(user, " You set the time release to [unit_spread] units per detonation.") return ..() @@ -457,6 +457,39 @@ beakers += B1 beakers += B2 +/obj/item/weapon/grenade/chem_grenade/glitter + name = "generic glitter grenade" + desc = "You shouldn't see this description." + stage = READY + var/glitter_type = "glitter" + +/obj/item/weapon/grenade/chem_grenade/glitter/New() + ..() + var/obj/item/weapon/reagent_containers/glass/beaker/B1 = new(src) + var/obj/item/weapon/reagent_containers/glass/beaker/B2 = new(src) + + B1.reagents.add_reagent(glitter_type, 25) + B1.reagents.add_reagent("potassium", 25) + B2.reagents.add_reagent("phosphorus", 25) + B2.reagents.add_reagent("sugar", 25) + + beakers += B1 + beakers += B2 + +/obj/item/weapon/grenade/chem_grenade/glitter/pink + name = "pink glitter bomb" + desc = "For that HOT glittery look." + glitter_type = "pink_glitter" + +/obj/item/weapon/grenade/chem_grenade/glitter/blue + name = "blue glitter bomb" + desc = "For that COOL glittery look." + glitter_type = "blue_glitter" + +/obj/item/weapon/grenade/chem_grenade/glitter/white + name = "white glitter bomb" + desc = "For that somnolent glittery look." + glitter_type = "white_glitter" /obj/item/weapon/grenade/chem_grenade/clf3 name = "clf3 grenade" diff --git a/code/game/objects/items/weapons/grenades/ghettobomb.dm b/code/game/objects/items/weapons/grenades/ghettobomb.dm index 18e47cf7e8..4c3e80ff6d 100644 --- a/code/game/objects/items/weapons/grenades/ghettobomb.dm +++ b/code/game/objects/items/weapons/grenades/ghettobomb.dm @@ -45,7 +45,7 @@ /obj/item/weapon/grenade/iedcasing/attack_self(mob/user) // if(!active) if(clown_check(user)) - user << "You light the [name]!" + to_chat(user, "You light the [name]!") active = 1 cut_overlay(image('icons/obj/grenade.dmi', icon_state = "improvised_grenade_filled"), TRUE) //this line make no sense icon_state = initial(icon_state) + "_active" @@ -67,4 +67,4 @@ /obj/item/weapon/grenade/iedcasing/examine(mob/user) ..() - user << "You can't tell when it will explode!" + to_chat(user, "You can't tell when it will explode!") diff --git a/code/game/objects/items/weapons/grenades/grenade.dm b/code/game/objects/items/weapons/grenades/grenade.dm index 37ee38d5d7..a8d9826421 100644 --- a/code/game/objects/items/weapons/grenades/grenade.dm +++ b/code/game/objects/items/weapons/grenades/grenade.dm @@ -24,7 +24,7 @@ /obj/item/weapon/grenade/proc/clown_check(mob/living/carbon/human/user) if(user.disabilities & CLUMSY && prob(50)) - user << "Huh? How does this thing work?" + to_chat(user, "Huh? How does this thing work?") active = 1 icon_state = initial(icon_state) + "_active" playsound(loc, 'sound/weapons/armbomb.ogg', 75, 1, -3) @@ -40,15 +40,15 @@ ..() if(display_timer) if(det_time > 1) - user << "The timer is set to [det_time/10] second\s." + to_chat(user, "The timer is set to [det_time/10] second\s.") else - user << "\The [src] is set for instant detonation." + to_chat(user, "\The [src] is set for instant detonation.") /obj/item/weapon/grenade/attack_self(mob/user) if(!active) if(clown_check(user)) - user << "You prime the [name]! [det_time/10] seconds!" + to_chat(user, "You prime the [name]! [det_time/10] seconds!") playsound(user.loc, 'sound/weapons/armbomb.ogg', 60, 1) active = 1 icon_state = initial(icon_state) + "_active" @@ -79,16 +79,16 @@ switch(det_time) if ("1") det_time = 10 - user << "You set the [name] for 1 second detonation time." + to_chat(user, "You set the [name] for 1 second detonation time.") if ("10") det_time = 30 - user << "You set the [name] for 3 second detonation time." + to_chat(user, "You set the [name] for 3 second detonation time.") if ("30") det_time = 50 - user << "You set the [name] for 5 second detonation time." + to_chat(user, "You set the [name] for 5 second detonation time.") if ("50") det_time = 1 - user << "You set the [name] for instant detonation." + to_chat(user, "You set the [name] for instant detonation.") add_fingerprint(user) else return ..() diff --git a/code/game/objects/items/weapons/grenades/plastic.dm b/code/game/objects/items/weapons/grenades/plastic.dm index 7c186f3126..477a50330e 100644 --- a/code/game/objects/items/weapons/grenades/plastic.dm +++ b/code/game/objects/items/weapons/grenades/plastic.dm @@ -10,6 +10,9 @@ var/image_overlay = null var/obj/item/device/assembly_holder/nadeassembly = null var/assemblyattacher + var/directional = FALSE + var/aim_dir = NORTH + var/boom_sizes = list(0, 0, 3) /obj/item/weapon/grenade/plastic/New() image_overlay = image('icons/obj/grenade.dmi', "[item_state]2") @@ -29,7 +32,7 @@ nadeassembly = A A.master = src assemblyattacher = user.ckey - user << "You add [A] to the [name]." + to_chat(user, "You add [A] to the [name].") playsound(src, 'sound/weapons/tap.ogg', 20, 1) update_icon() return @@ -42,6 +45,26 @@ return ..() +/obj/item/weapon/grenade/plastic/prime() + var/turf/location + if(target) + if(!QDELETED(target)) + location = get_turf(target) + target.cut_overlay(image_overlay, TRUE) + else + location = get_turf(src) + if(location) + if(directional && target && target.density) + var/turf/T = get_step(location, aim_dir) + explosion(get_step(T, aim_dir), boom_sizes[1], boom_sizes[2], boom_sizes[3]) + else + explosion(location, boom_sizes[1], boom_sizes[2], boom_sizes[3]) + location.ex_act(2, target) + if(istype(target, /mob)) + var/mob/M = target + M.gib() + qdel(src) + //assembly stuff /obj/item/weapon/grenade/plastic/receive_signal() prime() @@ -62,15 +85,16 @@ if(user.get_active_held_item() == src) newtime = Clamp(newtime, 10, 60000) det_time = newtime - user << "Timer set for [det_time] seconds." + to_chat(user, "Timer set for [det_time] seconds.") /obj/item/weapon/grenade/plastic/afterattack(atom/movable/AM, mob/user, flag) - if (!flag) + aim_dir = get_dir(user,AM) + if(!flag) return - if (ismob(AM)) + if(ismob(AM)) return - user << "You start planting the [src]. The timer is set to [det_time]..." + to_chat(user, "You start planting the [src]. The timer is set to [det_time]...") if(do_after(user, 50, target = AM)) if(!user.temporarilyRemoveItemFromInventory(src)) @@ -78,12 +102,18 @@ src.target = AM forceMove(null) //Yep + if(istype(AM, /obj/item)) //your crappy throwing star can't fly so good with a giant brick of c4 on it. + var/obj/item/I = AM + I.throw_speed = max(1, (I.throw_speed - 3)) + I.throw_range = max(1, (I.throw_range - 3)) + I.embed_chance = 0 + message_admins("[ADMIN_LOOKUPFLW(user)] planted [name] on [target.name] at [ADMIN_COORDJMP(target)] with [det_time] second fuse",0,1) log_game("[key_name(user)] planted [name] on [target.name] at [COORD(src)] with [det_time] second fuse") target.add_overlay(image_overlay, 1) if(!nadeassembly) - user << "You plant the bomb. Timer counting down from [det_time]." + to_chat(user, "You plant the bomb. Timer counting down from [det_time].") addtimer(CALLBACK(src, .proc/prime), det_time*10) else qdel(src) //How? @@ -125,22 +155,6 @@ name = "C4" desc = "Used to put holes in specific areas without too much extra hole. A saboteur's favorite." -/obj/item/weapon/grenade/plastic/c4/prime() - var/turf/location - if(target) - if(!QDELETED(target)) - location = get_turf(target) - target.cut_overlay(image_overlay, TRUE) - else - location = get_turf(src) - if(location) - location.ex_act(2, target) - explosion(location,0,0,3) - if(istype(target, /mob)) - var/mob/M = target - M.gib() - qdel(src) - // X4 is an upgraded directional variant of c4 which is relatively safe to be standing next to. And much less safe to be standing on the other side of. // C4 is intended to be used for infiltration, and destroying tech. X4 is intended to be used for heavy breaching and tight spaces. // Intended to replace C4 for nukeops, and to be a randomdrop in surplus/random traitor purchases. @@ -148,34 +162,7 @@ /obj/item/weapon/grenade/plastic/x4 name = "X4" desc = "A shaped high-explosive breaching charge. Designed to ensure user safety and wall nonsafety." - var/aim_dir = NORTH icon_state = "plasticx40" item_state = "plasticx4" - -/obj/item/weapon/grenade/plastic/x4/prime() - var/turf/location - if(target) - if(!QDELETED(target)) - location = get_turf(target) - target.cut_overlay(image_overlay, TRUE) - else - location = get_turf(src) - if(location) - if(istype(loc, /obj/item/weapon/twohanded/spear) || !target) - explosion(location, 0, 2, 3) - else if(target && target.density) - var/turf/T = get_step(location, aim_dir) - explosion(get_step(T, aim_dir),0,0,3) - explosion(T,0,2,0) - location.ex_act(2, target) - else - explosion(location, 0, 2, 3) - location.ex_act(2, target) - if(istype(target, /mob)) - var/mob/M = target - M.gib() - qdel(src) - -/obj/item/weapon/grenade/plastic/x4/afterattack(atom/movable/AM, mob/user, flag) - aim_dir = get_dir(user,AM) - ..() + directional = TRUE + boom_sizes = list(0, 2, 5) \ No newline at end of file diff --git a/code/game/objects/items/weapons/handcuffs.dm b/code/game/objects/items/weapons/handcuffs.dm index 22bd12a24f..3d8174df2a 100644 --- a/code/game/objects/items/weapons/handcuffs.dm +++ b/code/game/objects/items/weapons/handcuffs.dm @@ -26,7 +26,7 @@ if(!istype(C)) return if(user.disabilities & CLUMSY && prob(50)) - user << "Uh... how do those things work?!" + to_chat(user, "Uh... how do those things work?!") apply_cuffs(user,user) return @@ -44,7 +44,7 @@ playsound(loc, cuffsound, 30, 1, -2) if(do_mob(user, C, 30) && (C.get_num_arms() >= 2 || C.get_arm_ignore())) apply_cuffs(C,user) - user << "You handcuff [C]." + to_chat(user, "You handcuff [C].") if(istype(src, /obj/item/weapon/restraints/handcuffs/cable)) feedback_add_details("handcuffs","C") else @@ -52,9 +52,9 @@ add_logs(user, C, "handcuffed") else - user << "You fail to handcuff [C]!" + to_chat(user, "You fail to handcuff [C]!") else - user << "[C] doesn't have two hands..." + to_chat(user, "[C] doesn't have two hands...") /obj/item/weapon/restraints/handcuffs/proc/apply_cuffs(mob/living/carbon/target, mob/user, var/dispense = 0) if(target.handcuffed) @@ -101,14 +101,14 @@ if(!istype(C)) return if(wirestorage && wirestorage.energy < 15) - user << "You need at least 15 wire to restrain [C]!" + to_chat(user, "You need at least 15 wire to restrain [C]!") return return ..() /obj/item/weapon/restraints/handcuffs/cable/apply_cuffs(mob/living/carbon/target, mob/user, var/dispense = 0) if(wirestorage) if(!wirestorage.use_charge(15)) - user << "You need at least 15 wire to restrain [target]!" + to_chat(user, "You need at least 15 wire to restrain [target]!") return return ..(target, user, 1) @@ -167,24 +167,24 @@ var/obj/item/weapon/wirerod/W = new /obj/item/weapon/wirerod remove_item_from_storage(user) user.put_in_hands(W) - user << "You wrap the cable restraint around the top of the rod." + to_chat(user, "You wrap the cable restraint around the top of the rod.") qdel(src) else - user << "You need one rod to make a wired rod!" + to_chat(user, "You need one rod to make a wired rod!") return else if(istype(I, /obj/item/stack/sheet/metal)) var/obj/item/stack/sheet/metal/M = I if(M.get_amount() < 6) - user << "You need at least six metal sheets to make good enough weights!" + to_chat(user, "You need at least six metal sheets to make good enough weights!") return - user << "You begin to apply [I] to [src]..." + to_chat(user, "You begin to apply [I] to [src]...") if(do_after(user, 35, target = src)) if(M.get_amount() < 6 || !M) return var/obj/item/weapon/restraints/legcuffs/bola/S = new /obj/item/weapon/restraints/legcuffs/bola M.use(6) user.put_in_hands(S) - user << "You make some weights out of [I] and tie them to [src]." + to_chat(user, "You make some weights out of [I] and tie them to [src].") remove_item_from_storage(user) qdel(src) else @@ -200,10 +200,10 @@ if(!C.handcuffed) C.handcuffed = new /obj/item/weapon/restraints/handcuffs/cable/zipties/used(C) C.update_handcuffed() - user << "You handcuff [C]." + to_chat(user, "You handcuff [C].") add_logs(user, C, "handcuffed") else - user << "You fail to handcuff [C]!" + to_chat(user, "You fail to handcuff [C]!") /obj/item/weapon/restraints/handcuffs/cable/zipties name = "zipties" @@ -261,7 +261,7 @@ if(ishuman(user) && !user.stat && !user.restrained()) armed = !armed icon_state = "[initial(icon_state)][armed]" - user << "[src] is now [armed ? "armed" : "disarmed"]" + to_chat(user, "[src] is now [armed ? "armed" : "disarmed"]") /obj/item/weapon/restraints/legcuffs/beartrap/Crossed(AM as mob|obj) if(armed && isturf(src.loc)) @@ -342,7 +342,7 @@ src.loc = C C.update_inv_legcuffed() feedback_add_details("handcuffs","B") - C << "\The [src] ensnares you!" + to_chat(C, "\The [src] ensnares you!") C.Weaken(weaken) /obj/item/weapon/restraints/legcuffs/bola/tactical//traitor variant diff --git a/code/game/objects/items/weapons/his_grace.dm b/code/game/objects/items/weapons/his_grace.dm index cf394ada22..be269d583d 100644 --- a/code/game/objects/items/weapons/his_grace.dm +++ b/code/game/objects/items/weapons/his_grace.dm @@ -15,13 +15,10 @@ force = 12 attack_verb = list("robusted") hitsound = 'sound/weapons/smash.ogg' - var/ascended = FALSE - var/awakened = 0 - var/victims_needed = 20 //how many victims needed to ascend + var/awakened = FALSE var/bloodthirst = HIS_GRACE_SATIATED var/prev_bloodthirst = HIS_GRACE_SATIATED var/force_bonus = 0 - var/ascend_bonus = 15 /obj/item/weapon/his_grace/New() ..() @@ -40,8 +37,6 @@ /obj/item/weapon/his_grace/attack(mob/living/M, mob/user) if(awakened && M.stat) consume(M) - if(LAZYLEN(contents) >= victims_needed) - ascend() else ..() @@ -53,19 +48,19 @@ if(awakened) switch(bloodthirst) if(HIS_GRACE_SATIATED to HIS_GRACE_PECKISH) - user << "[src] isn't very hungry. Not yet." + to_chat(user, "[src] isn't very hungry. Not yet.") if(HIS_GRACE_PECKISH to HIS_GRACE_HUNGRY) - user << "[src] would like a snack." + to_chat(user, "[src] would like a snack.") if(HIS_GRACE_HUNGRY to HIS_GRACE_FAMISHED) - user << "[src] is quite hungry now." + to_chat(user, "[src] is quite hungry now.") if(HIS_GRACE_FAMISHED to HIS_GRACE_STARVING) - user << "[src] is openly salivating at the sight of you. Be careful." + to_chat(user, "[src] is openly salivating at the sight of you. Be careful.") if(HIS_GRACE_STARVING to HIS_GRACE_CONSUME_OWNER) - user << "You walk a fine line. [src] is very close to devouring you." + to_chat(user, "You walk a fine line. [src] is very close to devouring you.") if(HIS_GRACE_CONSUME_OWNER to HIS_GRACE_FALL_ASLEEP) - user << "[src] is shaking violently and staring directly at you." + to_chat(user, "[src] is shaking violently and staring directly at you.") else - user << "[src] is latched closed." + to_chat(user, "[src] is latched closed.") /obj/item/weapon/his_grace/relaymove(mob/living/user) //Allows changelings, etc. to climb out of Him after they revive, provided He isn't active if(!awakened) @@ -130,10 +125,10 @@ adjust_bloodthirst(1) force_bonus = HIS_GRACE_FORCE_BONUS * LAZYLEN(contents) playsound(user, 'sound/effects/pope_entry.ogg', 100) - icon_state = "green_awakened" + icon_state = "his_grace_awakened" /obj/item/weapon/his_grace/proc/drowse() //Good night, Mr. Grace. - if(!awakened || ascended) + if(!awakened) return var/turf/T = get_turf(src) T.visible_message("[src] slowly stops rattling and falls still, His latch snapping closed.") @@ -208,17 +203,3 @@ if(prev_bloodthirst >= HIS_GRACE_PECKISH) master.visible_message("[src] is satiated.", "[src]'s hunger recedes...") force = initial(force) + force_bonus - -/obj/item/weapon/his_grace/proc/ascend() - if(ascended) - return - var/mob/living/carbon/human/master = loc - force_bonus += ascend_bonus - desc = "A legendary toolbox and a distant artifact from The Age of Three Powers. On its three latches engraved are the words \"The Sun\", \"The Moon\", and \"The Stars\". The entire toolbox has the words \"The World\" engraved into its sides." - icon_state = "his_grace_ascended" - item_state = "toolbox_gold" - ascended = TRUE - playsound(master, 'sound/effects/his_grace_ascend.ogg', 100) - if(istype(master)) - master.visible_message("Gods will be watching.", "God will be watching.") - name = "[master]'s mythical toolbox of three powers" diff --git a/code/game/objects/items/weapons/holosign_creator.dm b/code/game/objects/items/weapons/holosign_creator.dm index aef14779ff..fb68e33f45 100644 --- a/code/game/objects/items/weapons/holosign_creator.dm +++ b/code/game/objects/items/weapons/holosign_creator.dm @@ -24,12 +24,12 @@ var/turf/T = get_turf(target) var/obj/structure/holosign/H = locate(holosign_type) in T if(H) - user << "You use [src] to deactivate [H]." + to_chat(user, "You use [src] to deactivate [H].") qdel(H) else if(!is_blocked_turf(T, TRUE)) //can't put holograms on a tile that has dense stuff if(holocreator_busy) - user << "[src] is busy creating a hologram." + to_chat(user, "[src] is busy creating a hologram.") return if(signs.len < max_signs) playsound(src.loc, 'sound/machines/click.ogg', 20, 1) @@ -44,9 +44,9 @@ if(is_blocked_turf(T, TRUE)) //don't try to sneak dense stuff on our tile during the wait. return H = new holosign_type(get_turf(target), src) - user << "You create \a [H] with [src]." + to_chat(user, "You create \a [H] with [src].") else - user << "[src] is projecting at max capacity!" + to_chat(user, "[src] is projecting at max capacity!") /obj/item/weapon/holosign_creator/attack(mob/living/carbon/human/M, mob/user) return @@ -55,7 +55,7 @@ if(signs.len) for(var/H in signs) qdel(H) - user << "You clear all active holograms." + to_chat(user, "You clear all active holograms.") /obj/item/weapon/holosign_creator/security @@ -108,9 +108,9 @@ if(signs.len) for(var/H in signs) qdel(H) - user << "You clear all active holograms." + to_chat(user, "You clear all active holograms.") if(signs.len) for(var/H in signs) qdel(H) - user << "You clear all active holograms." + to_chat(user, "You clear all active holograms.") diff --git a/code/game/objects/items/weapons/holy_weapons.dm b/code/game/objects/items/weapons/holy_weapons.dm index 85d525496a..868ec8e059 100644 --- a/code/game/objects/items/weapons/holy_weapons.dm +++ b/code/game/objects/items/weapons/holy_weapons.dm @@ -25,7 +25,7 @@ if(SSreligion.holy_weapon) holy_weapon = new SSreligion.holy_weapon - M << "The null rod suddenly morphs into your religions already chosen holy weapon." + to_chat(M, "The null rod suddenly morphs into your religions already chosen holy weapon.") else var/list/holy_weapons_list = typesof(/obj/item/weapon/nullrod) var/list/display_names = list() @@ -216,7 +216,7 @@ if(possessed) return - user << "You attempt to wake the spirit of the blade..." + to_chat(user, "You attempt to wake the spirit of the blade...") possessed = TRUE @@ -237,12 +237,12 @@ S.real_name = input S.name = input else - user << "The blade is dormant. Maybe you can try again later." + to_chat(user, "The blade is dormant. Maybe you can try again later.") possessed = FALSE /obj/item/weapon/nullrod/scythe/talking/Destroy() for(var/mob/living/simple_animal/shade/S in contents) - S << "You were destroyed!" + to_chat(S, "You were destroyed!") qdel(S) return ..() @@ -322,7 +322,7 @@ /obj/item/weapon/nullrod/carp/attack_self(mob/living/user) if(used_blessing) else if(user.mind && (user.mind.isholy)) - user << "You are blessed by Carp-Sie. Wild space carp will no longer attack you." + to_chat(user, "You are blessed by Carp-Sie. Wild space carp will no longer attack you.") user.faction |= "carp" used_blessing = TRUE @@ -348,10 +348,25 @@ desc = "They say fear is the true mind killer, but stabbing them in the head works too. Honour compels you to not sheathe it once drawn." sharpness = IS_SHARP slot_flags = null - flags = HANDSLOW hitsound = 'sound/weapons/bladeslice.ogg' attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") +/obj/item/weapon/nullrod/tribal_knife/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, SLOWS_WHILE_IN_HAND) + +/obj/item/weapon/nullrod/tribal_knife/New() + ..() + START_PROCESSING(SSobj, src) + +/obj/item/weapon/nullrod/tribal_knife/Destroy() + STOP_PROCESSING(SSobj, src) + . = ..() + +/obj/item/weapon/nullrod/tribal_knife/process() + slowdown = rand(-2, 2) + + /obj/item/weapon/nullrod/pitchfork icon_state = "pitchfork0" name = "unholy pitchfork" @@ -360,15 +375,3 @@ attack_verb = list("poked", "impaled", "pierced", "jabbed") hitsound = 'sound/weapons/bladeslice.ogg' sharpness = IS_SHARP - -/obj/item/weapon/nullrod/tribal_knife/New() - ..() - START_PROCESSING(SSobj, src) - -/obj/item/weapon/nullrod/tribal_knife/Destroy() - STOP_PROCESSING(SSobj, src) - return ..() - -/obj/item/weapon/nullrod/tribal_knife/process() - slowdown = rand(-2, 2) - diff --git a/code/game/objects/items/weapons/implants/implant_abductor.dm b/code/game/objects/items/weapons/implants/implant_abductor.dm index 6a6f182d03..f5a38e2098 100644 --- a/code/game/objects/items/weapons/implants/implant_abductor.dm +++ b/code/game/objects/items/weapons/implants/implant_abductor.dm @@ -1,4 +1,3 @@ - /obj/item/weapon/implant/abductor name = "recall implant" desc = "Returns you to the mothership." @@ -15,7 +14,7 @@ cooldown = 0 START_PROCESSING(SSobj, src) else - imp_in << "You must wait [30 - cooldown] seconds to use [src] again!" + to_chat(imp_in, "You must wait [30 - cooldown] seconds to use [src] again!") /obj/item/weapon/implant/abductor/process() if(cooldown < initial(cooldown)) diff --git a/code/game/objects/items/weapons/implants/implant_chem.dm b/code/game/objects/items/weapons/implants/implant_chem.dm index ce3ebc978f..014a35c6ff 100644 --- a/code/game/objects/items/weapons/implants/implant_chem.dm +++ b/code/game/objects/items/weapons/implants/implant_chem.dm @@ -30,9 +30,6 @@ . = ..() tracked_chem_implants -= src - - - /obj/item/weapon/implant/chem/trigger(emote, mob/source) if(emote == "deathgasp") activate(reagents.total_volume) @@ -47,19 +44,16 @@ else injectamount = cause reagents.trans_to(R, injectamount) - R << "You hear a faint beep." + to_chat(R, "You hear a faint beep.") if(!reagents.total_volume) - R << "You hear a faint click from your chest." + to_chat(R, "You hear a faint click from your chest.") qdel(src) /obj/item/weapon/implantcase/chem name = "implant case - 'Remote Chemical'" desc = "A glass case containing a remote chemical implant." - -/obj/item/weapon/implantcase/chem/New() - imp = new /obj/item/weapon/implant/chem(src) - ..() + imp_type = /obj/item/weapon/implant/chem /obj/item/weapon/implantcase/chem/attackby(obj/item/weapon/W, mob/user, params) if(istype(W,/obj/item/weapon/reagent_containers/syringe) && imp) diff --git a/code/game/objects/items/weapons/implants/implant_clown.dm b/code/game/objects/items/weapons/implants/implant_clown.dm index 01f1e9715b..64b99cd029 100644 --- a/code/game/objects/items/weapons/implants/implant_clown.dm +++ b/code/game/objects/items/weapons/implants/implant_clown.dm @@ -15,16 +15,9 @@ /obj/item/weapon/implanter/sad_trombone name = "implanter (sad_trombone)" - -/obj/item/weapon/implanter/sad_trombone/New() - imp = new /obj/item/weapon/implant/sad_trombone(src) - ..() - + imp_type = /obj/item/weapon/implant/sad_trombone /obj/item/weapon/implantcase/sad_trombone name = "implant case - 'Sad Trombone'" desc = "A glass case containing a sad trombone implant." - -/obj/item/weapon/implantcase/sad_trombone/New() - imp = new /obj/item/weapon/implant/sad_trombone(src) - ..() + imp_type = /obj/item/weapon/implant/sad_trombone diff --git a/code/game/objects/items/weapons/implants/implant_exile.dm b/code/game/objects/items/weapons/implants/implant_exile.dm index 11cf876ca9..648c2b0998 100644 --- a/code/game/objects/items/weapons/implants/implant_exile.dm +++ b/code/game/objects/items/weapons/implants/implant_exile.dm @@ -13,18 +13,11 @@ Implant Details: The onboard gateway system has been modified to reject entry by individuals containing this implant
"} return dat - /obj/item/weapon/implanter/exile name = "implanter (exile)" - -/obj/item/weapon/implanter/exile/New() - imp = new /obj/item/weapon/implant/exile( src ) - ..() + imp_type = /obj/item/weapon/implant/exile /obj/item/weapon/implantcase/exile name = "implant case - 'Exile'" desc = "A glass case containing an exile implant." - -/obj/item/weapon/implantcase/exile/New() - imp = new /obj/item/weapon/implant/exile(src) - ..() + imp_type = /obj/item/weapon/implant/exile diff --git a/code/game/objects/items/weapons/implants/implant_explosive.dm b/code/game/objects/items/weapons/implants/implant_explosive.dm index 4dfd6305fe..9e93d3fb3e 100644 --- a/code/game/objects/items/weapons/implants/implant_explosive.dm +++ b/code/game/objects/items/weapons/implants/implant_explosive.dm @@ -32,7 +32,7 @@ heavy = round(heavy) medium = round(medium) weak = round(weak) - imp_in << "You activate your [name]." + to_chat(imp_in, "You activate your [name].") var/turf/boomturf = get_turf(imp_in) var/area/A = get_area(boomturf) message_admins("[key_name_admin(imp_in)]? (FLW) has activated their [name] at [A.name] (JMP).") @@ -106,16 +106,9 @@ /obj/item/weapon/implanter/explosive name = "implanter (explosive)" - -/obj/item/weapon/implanter/explosive/New() - imp = new /obj/item/weapon/implant/explosive(src) - ..() - + imp_type = /obj/item/weapon/implant/explosive /obj/item/weapon/implantcase/explosive name = "implant case - 'Explosive'" desc = "A glass case containing an explosive implant." - -/obj/item/weapon/implantcase/explosive/New() - imp = new /obj/item/weapon/implant/explosive(src) - ..() \ No newline at end of file + imp_type = /obj/item/weapon/implant/explosive diff --git a/code/game/objects/items/weapons/implants/implant_freedom.dm b/code/game/objects/items/weapons/implants/implant_freedom.dm index 383d5cbcca..2313451e75 100644 --- a/code/game/objects/items/weapons/implants/implant_freedom.dm +++ b/code/game/objects/items/weapons/implants/implant_freedom.dm @@ -9,7 +9,7 @@ /obj/item/weapon/implant/freedom/activate() uses-- - imp_in << "You feel a faint click." + to_chat(imp_in, "You feel a faint click.") if(iscarbon(imp_in)) var/mob/living/carbon/C_imp_in = imp_in C_imp_in.uncuff() @@ -36,16 +36,9 @@ No Implant Specifics"} /obj/item/weapon/implanter/freedom name = "implanter (freedom)" - -/obj/item/weapon/implanter/freedom/New() - imp = new /obj/item/weapon/implant/freedom(src) - ..() - + imp_type = /obj/item/weapon/implant/freedom /obj/item/weapon/implantcase/freedom name = "implant case - 'Freedom'" desc = "A glass case containing a freedom implant." - -/obj/item/weapon/implantcase/freedom/New() - imp = new /obj/item/weapon/implant/freedom(src) - ..() + imp_type = /obj/item/weapon/implant/freedom diff --git a/code/game/objects/items/weapons/implants/implant_gang.dm b/code/game/objects/items/weapons/implants/implant_gang.dm index 20a481171b..bef3f030ce 100644 --- a/code/game/objects/items/weapons/implants/implant_gang.dm +++ b/code/game/objects/items/weapons/implants/implant_gang.dm @@ -1,4 +1,3 @@ - /obj/item/weapon/implant/gang name = "gang implant" desc = "Makes you a gangster or such." diff --git a/code/game/objects/items/weapons/implants/implant_krav_maga.dm b/code/game/objects/items/weapons/implants/implant_krav_maga.dm index dbaad408d2..1db7601255 100644 --- a/code/game/objects/items/weapons/implants/implant_krav_maga.dm +++ b/code/game/objects/items/weapons/implants/implant_krav_maga.dm @@ -26,15 +26,10 @@ /obj/item/weapon/implanter/krav_maga name = "implanter (krav maga)" - -/obj/item/weapon/implanter/krav_maga/New() - imp = new /obj/item/weapon/implant/krav_maga(src) - ..() + imp_type = /obj/item/weapon/implant/krav_maga /obj/item/weapon/implantcase/krav_maga name = "implant case - 'Krav Maga'" desc = "A glass case containing an implant that can teach the user the arts of Krav Maga." + imp_type = /obj/item/weapon/implant/krav_maga -/obj/item/weapon/implantcase/krav_maga/New() - imp = new /obj/item/weapon/implant/krav_maga(src) - ..() diff --git a/code/game/objects/items/weapons/implants/implant_loyality.dm b/code/game/objects/items/weapons/implants/implant_loyality.dm index 619b19f1f7..0a6d276415 100644 --- a/code/game/objects/items/weapons/implants/implant_loyality.dm +++ b/code/game/objects/items/weapons/implants/implant_loyality.dm @@ -36,32 +36,24 @@ ticker.mode.remove_revolutionary(target.mind) if(!silent) if(target.mind in ticker.mode.cult) - target << "You feel something interfering with your mental conditioning, but you resist it!" + to_chat(target, "You feel something interfering with your mental conditioning, but you resist it!") else - target << "You feel a sense of peace and security. You are now protected from brainwashing." + to_chat(target, "You feel a sense of peace and security. You are now protected from brainwashing.") return 1 return 0 /obj/item/weapon/implant/mindshield/removed(mob/target, silent = 0, special = 0) if(..()) if(target.stat != DEAD && !silent) - target << "Your mind suddenly feels terribly vulnerable. You are no longer safe from brainwashing." + to_chat(target, "Your mind suddenly feels terribly vulnerable. You are no longer safe from brainwashing.") return 1 return 0 /obj/item/weapon/implanter/mindshield name = "implanter (mindshield)" - -/obj/item/weapon/implanter/mindshield/New() - imp = new /obj/item/weapon/implant/mindshield(src) - ..() - update_icon() - + imp_type = /obj/item/weapon/implant/mindshield /obj/item/weapon/implantcase/mindshield name = "implant case - 'Mindshield'" desc = "A glass case containing a mindshield implant." - -/obj/item/weapon/implantcase/mindshield/New() - imp = new /obj/item/weapon/implant/mindshield(src) - ..() + imp_type = /obj/item/weapon/implant/mindshield diff --git a/code/game/objects/items/weapons/implants/implant_misc.dm b/code/game/objects/items/weapons/implants/implant_misc.dm index c12544a824..f48492a7ea 100644 --- a/code/game/objects/items/weapons/implants/implant_misc.dm +++ b/code/game/objects/items/weapons/implants/implant_misc.dm @@ -34,7 +34,7 @@ /obj/item/weapon/implant/adrenalin/activate() uses-- - imp_in << "You feel a sudden surge of energy!" + to_chat(imp_in, "You feel a sudden surge of energy!") imp_in.SetStunned(0) imp_in.SetWeakened(0) imp_in.SetParalysis(0) @@ -79,4 +79,4 @@ healthstring = "Oxygen Deprivation Damage => [round(L.getOxyLoss())]
Fire Damage => [round(L.getFireLoss())]
Toxin Damage => [round(L.getToxLoss())]
Brute Force Damage => [round(L.getBruteLoss())]
" if (!healthstring) healthstring = "ERROR" - return healthstring \ No newline at end of file + return healthstring diff --git a/code/game/objects/items/weapons/implants/implant_storage.dm b/code/game/objects/items/weapons/implants/implant_storage.dm index e87e37d02f..65a7321ab4 100644 --- a/code/game/objects/items/weapons/implants/implant_storage.dm +++ b/code/game/objects/items/weapons/implants/implant_storage.dm @@ -47,7 +47,4 @@ /obj/item/weapon/implanter/storage name = "implanter (storage)" - -/obj/item/weapon/implanter/storage/New() - imp = new /obj/item/weapon/implant/storage(src) - ..() + imp_type = /obj/item/weapon/implant/storage diff --git a/code/game/objects/items/weapons/implants/implant_track.dm b/code/game/objects/items/weapons/implants/implant_track.dm index 6bcef31720..68b7285ca9 100644 --- a/code/game/objects/items/weapons/implants/implant_track.dm +++ b/code/game/objects/items/weapons/implants/implant_track.dm @@ -4,7 +4,6 @@ activated = 0 origin_tech = "materials=2;magnets=2;programming=2;biotech=2" - /obj/item/weapon/implant/tracking/New() ..() tracked_implants += src @@ -13,12 +12,11 @@ . = ..() tracked_implants -= src -/obj/item/weapon/implanter/tracking/New() - imp = new /obj/item/weapon/implant/tracking( src ) - ..() -/obj/item/weapon/implanter/tracking/gps/New() - imp = new /obj/item/device/gps/mining/internal( src ) - ..() +/obj/item/weapon/implanter/tracking + imp_type = /obj/item/weapon/implant/tracking + +/obj/item/weapon/implanter/tracking/gps + imp_type = /obj/item/device/gps/mining/internal /obj/item/weapon/implant/tracking/get_data() var/dat = {"Implant Specifications:
diff --git a/code/game/objects/items/weapons/implants/implantcase.dm b/code/game/objects/items/weapons/implants/implantcase.dm index 4b07a5561a..bce0025c04 100644 --- a/code/game/objects/items/weapons/implants/implantcase.dm +++ b/code/game/objects/items/weapons/implants/implantcase.dm @@ -10,6 +10,7 @@ origin_tech = "materials=1;biotech=2" materials = list(MAT_GLASS=500) var/obj/item/weapon/implant/imp = null + var/imp_type /obj/item/weapon/implantcase/update_icon() @@ -57,32 +58,24 @@ else return ..() -/obj/item/weapon/implantcase/New() +/obj/item/weapon/implantcase/Initialize(mapload) ..() + if(imp_type) + imp = new imp_type(src) update_icon() /obj/item/weapon/implantcase/tracking name = "implant case - 'Tracking'" desc = "A glass case containing a tracking implant." - -/obj/item/weapon/implantcase/tracking/New() - imp = new /obj/item/weapon/implant/tracking(src) - ..() - + imp_type = /obj/item/weapon/implant/tracking /obj/item/weapon/implantcase/weapons_auth name = "implant case - 'Firearms Authentication'" desc = "A glass case containing a firearms authentication implant." - -/obj/item/weapon/implantcase/weapons_auth/New() - imp = new /obj/item/weapon/implant/weapons_auth(src) - ..() + imp_type = /obj/item/weapon/implant/weapons_auth /obj/item/weapon/implantcase/adrenaline name = "implant case - 'Adrenaline'" desc = "A glass case containing an adrenaline implant." - -/obj/item/weapon/implantcase/adrenaline/New() - imp = new /obj/item/weapon/implant/adrenalin(src) - ..() + imp_type = /obj/item/weapon/implant/adrenalin diff --git a/code/game/objects/items/weapons/implants/implantchair.dm b/code/game/objects/items/weapons/implants/implantchair.dm index d05004db25..eea213d0cf 100644 --- a/code/game/objects/items/weapons/implants/implantchair.dm +++ b/code/game/objects/items/weapons/implants/implantchair.dm @@ -1,5 +1,3 @@ - - /obj/machinery/implantchair name = "mindshield implanter" desc = "Used to implant occupants with mindshield implants." @@ -119,14 +117,14 @@ return user.changeNext_move(CLICK_CD_BREAKOUT) user.last_special = world.time + CLICK_CD_BREAKOUT - user << "You lean on the back of [src] and start pushing the door open... (this will take about about a minute.)" + to_chat(user, "You lean on the back of [src] and start pushing the door open... (this will take about about a minute.)") audible_message("You hear a metallic creaking from [src]!",hearing_distance = 2) if(do_after(user, 600, target = src)) if(!user || user.stat != CONSCIOUS || user.loc != src || state_open) return visible_message("[user] successfully broke out of [src]!") - user << "You successfully break out of [src]!" + to_chat(user, "You successfully break out of [src]!") open_machine() /obj/machinery/implantchair/relaymove(mob/user) diff --git a/code/game/objects/items/weapons/implants/implanter.dm b/code/game/objects/items/weapons/implants/implanter.dm index 71216dcc3a..22121474e0 100644 --- a/code/game/objects/items/weapons/implants/implanter.dm +++ b/code/game/objects/items/weapons/implants/implanter.dm @@ -10,6 +10,7 @@ origin_tech = "materials=2;biotech=3" materials = list(MAT_METAL=600, MAT_GLASS=200) var/obj/item/weapon/implant/imp = null + var/imp_type = null /obj/item/weapon/implanter/update_icon() @@ -33,13 +34,13 @@ if(src && imp) if(imp.implant(M, user)) if (M == user) - user << "You implant yourself." + to_chat(user, "You implant yourself.") else M.visible_message("[user] has implanted [M].", "[user] implants you.") imp = null update_icon() else - user << "[src] fails to implant [M]." + to_chat(user, "[src] fails to implant [M].") /obj/item/weapon/implanter/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/pen)) @@ -55,24 +56,16 @@ else return ..() -/obj/item/weapon/implanter/New() +/obj/item/weapon/implanter/Initialize(mapload) ..() + if(imp_type) + imp = new imp_type(src) update_icon() - - - /obj/item/weapon/implanter/adrenalin name = "implanter (adrenalin)" - -/obj/item/weapon/implanter/adrenalin/New() - imp = new /obj/item/weapon/implant/adrenalin(src) - ..() - + imp_type = /obj/item/weapon/implant/adrenalin /obj/item/weapon/implanter/emp name = "implanter (EMP)" - -/obj/item/weapon/implanter/emp/New() - imp = new /obj/item/weapon/implant/emp(src) - ..() + imp_type = /obj/item/weapon/implant/emp diff --git a/code/game/objects/items/weapons/implants/implantuplink.dm b/code/game/objects/items/weapons/implants/implantuplink.dm index 239a263761..d0b5971d60 100644 --- a/code/game/objects/items/weapons/implants/implantuplink.dm +++ b/code/game/objects/items/weapons/implants/implantuplink.dm @@ -30,17 +30,11 @@ /obj/item/weapon/implanter/uplink name = "implanter (uplink)" - -/obj/item/weapon/implanter/uplink/New() - imp = new /obj/item/weapon/implant/uplink(src) - ..() + imp_type = /obj/item/weapon/implant/uplink /obj/item/weapon/implanter/uplink/precharged - name = "implanter (uplink)" - -/obj/item/weapon/implanter/uplink/New() - imp = new /obj/item/weapon/implant/uplink/precharged(src) - ..() + name = "implanter (precharged uplink)" + imp_type = /obj/item/weapon/implant/uplink/precharged /obj/item/weapon/implant/uplink/precharged starting_tc = 10 diff --git a/code/game/objects/items/weapons/manuals.dm b/code/game/objects/items/weapons/manuals.dm index bd132598ea..6c50036194 100644 --- a/code/game/objects/items/weapons/manuals.dm +++ b/code/game/objects/items/weapons/manuals.dm @@ -869,59 +869,6 @@ Good luck! "} -//citadel code -/obj/item/weapon/book/manual/daredice - name = "Dare Dice Manual" - icon_state = "gamebook" - author = "Cactus Space Federation" - title = "Dare Dice Manual" - dat = {" - - - - -

Dare Dice Manual

- -

Requirements

-

Number of Players

- At least two, but a small group is preferred -

Required Equipment

- d100 or d20
- An open space, or tables and chairs -

Optional Equipment

- Drinks & snacks
- Extra clothing
- Pen & paper -

How To Play

-
    -
  1. To start the game, one player chosen by any means starts by rolling the game die. This player then passes the die to the player next to them, traveling clockwise. Make sure to remember the number you rolled!
  2. -
  3. The die continues around the table until it reaches the first player again.
  4. -
  5. The players with the highest and lowest rolled numbers are selected as the 'darer' and the 'dared' respectively.
  6. -
  7. If the dared player finishes the dare sufficiently, they receive 1 point.
  8. -
- Repeat the cycle until a player reaches 5 points, then they win! The winner decides who starts rolling first in the next game and can give or receive one free dare from any player of their choice. -

Ties

- Ties between two or more players can usually be ignored. In a case where two or more players tie for the position of the darer or dared, the tied players can reroll until there is one darer and one dared.
- Alternatively, ties can be ignored completely. To continue playing with multiple dared or darers, simply have each darer give one dare to each dared player. -

Special Rules

-
  • Dares which break the law are automatically invalid. The dared should ask the darer for a different one.
  • -
  • Dares which are impossible to complete are automatically invalid. The dared should ask the darer for a different one.
  • -
  • If the dared player cannot complete a dare fully, but the table unanimously agrees that they still deserve the point then they receive it.
  • -
  • All dares must take place within the general vicinity of the table or game space so all players can see.
  • -
  • Depending on the amount of players, the amount of points required to win can vary. Adjust as needed.
  • -

    Notes

    - Dare Dice is, by far, the most popular dice game in space right now. However, players should be prepared for anything when entering a game. While the game is simple in essence; dares can be quite complicated, sometimes requiring multiple steps and/or testing your mental and physical abilities. Some dares might be downright shameful, degrading, or disgusting to some players. Thick skin is recommended. - - - "} - // Wiki books that are linked to the configured wiki link. // A book that links to the wiki diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm index e21a248b95..af53bfba54 100644 --- a/code/game/objects/items/weapons/melee/energy.dm +++ b/code/game/objects/items/weapons/melee/energy.dm @@ -4,6 +4,7 @@ var/throwforce_on = 20 var/icon_state_on = "axe1" var/list/attack_verb_on = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") + var/list/possible_colors w_class = WEIGHT_CLASS_SMALL sharpness = IS_SHARP var/w_class_on = WEIGHT_CLASS_BULKY @@ -12,6 +13,23 @@ max_integrity = 200 armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 30) resistance_flags = FIRE_PROOF + var/brightness_on = 3 + +/obj/item/weapon/melee/energy/Initialize() + ..() + if(LAZYLEN(possible_colors)) + item_color = pick(possible_colors) + switch(item_color)//Only run this check if the color was picked randomly, so that colors can be manually set for non-random colored energy weapons. + if("red") + light_color = LIGHT_COLOR_RED + if("green") + light_color = LIGHT_COLOR_GREEN + if("blue") + light_color = LIGHT_COLOR_LIGHT_CYAN + if("purple") + light_color = LIGHT_COLOR_LAVENDER + if(active) + set_light(brightness_on) /obj/item/weapon/melee/energy/suicide_act(mob/user) user.visible_message("[user] is [pick("slitting [user.p_their()] stomach open with", "falling on")] [src]! It looks like [user.p_theyre()] trying to commit seppuku!") @@ -25,7 +43,7 @@ /obj/item/weapon/melee/energy/axe name = "energy axe" - desc = "An energised battle axe." + desc = "An energized battle axe." icon_state = "axe0" force = 40 force_on = 150 @@ -41,6 +59,7 @@ origin_tech = "combat=4;magnets=3" attack_verb = list("attacked", "chopped", "cleaved", "torn", "cut") attack_verb_on = list() + light_color = "#40ceff" /obj/item/weapon/melee/energy/axe/suicide_act(mob/user) user.visible_message("[user] swings [src] towards [user.p_their()] head! It looks like [user.p_theyre()] trying to commit suicide!") @@ -61,18 +80,17 @@ armour_penetration = 35 origin_tech = "combat=3;magnets=4;syndicate=4" block_chance = 50 + possible_colors = list("red", "blue", "green", "purple") var/hacked = 0 -/obj/item/weapon/melee/energy/sword/New() - if(item_color == null) - item_color = pick("red", "blue", "green", "purple") - /obj/item/weapon/melee/energy/sword/Destroy() STOP_PROCESSING(SSobj, src) . = ..() /obj/item/weapon/melee/energy/sword/process() if(active) + if(hacked) + light_color = pick(LIGHT_COLOR_RED, LIGHT_COLOR_GREEN, LIGHT_COLOR_LIGHT_CYAN, LIGHT_COLOR_LAVENDER) open_flame() else STOP_PROCESSING(SSobj, src) @@ -84,7 +102,7 @@ /obj/item/weapon/melee/energy/attack_self(mob/living/carbon/user) if(user.disabilities & CLUMSY && prob(50)) - user << "You accidentally cut yourself with [src], like a doofus!" + to_chat(user, "You accidentally cut yourself with [src], like a doofus!") user.take_bodypart_damage(5,5) active = !active if (active) @@ -100,8 +118,9 @@ icon_state = "sword[item_color]" w_class = w_class_on playsound(user, 'sound/weapons/saberon.ogg', 35, 1) //changed it from 50% volume to 35% because deafness - user << "[src] is now active." + to_chat(user, "[src] is now active.") START_PROCESSING(SSobj, src) + set_light(brightness_on) else force = initial(force) throwforce = initial(throwforce) @@ -112,8 +131,9 @@ icon_state = initial(icon_state) w_class = initial(w_class) playsound(user, 'sound/weapons/saberoff.ogg', 35, 1) //changed it from 50% volume to 35% because deafness - user << "[src] can now be concealed." + to_chat(user, "[src] can now be concealed.") STOP_PROCESSING(SSobj, src) + set_light(0) add_fingerprint(user) /obj/item/weapon/melee/energy/is_hot() @@ -141,7 +161,7 @@ var/obj/item/weapon/stock_parts/cell/C = R.cell if(active && !(C.use(hitcost))) attack_self(R) - R << "It's out of charge!" + to_chat(R, "It's out of charge!") return ..() return @@ -160,6 +180,8 @@ item_color = null w_class = WEIGHT_CLASS_NORMAL sharpness = IS_SHARP + light_color = "#40ceff" + possible_colors = null /obj/item/weapon/melee/energy/sword/cyborg/saw/New() ..() @@ -172,22 +194,21 @@ /obj/item/weapon/melee/energy/sword/saber /obj/item/weapon/melee/energy/sword/saber/blue - item_color = "blue" + possible_colors = list("blue") /obj/item/weapon/melee/energy/sword/saber/purple - item_color = "purple" + possible_colors = list("purple") /obj/item/weapon/melee/energy/sword/saber/green - item_color = "green" + possible_colors = list("green") /obj/item/weapon/melee/energy/sword/saber/red - item_color = "red" + possible_colors = list("red") + /obj/item/weapon/melee/energy/sword/saber/attackby(obj/item/weapon/W, mob/living/user, params) if(istype(W, /obj/item/weapon/melee/energy/sword/saber)) - user << "You attach the ends of the two \ - energy swords, making a single double-bladed weapon! \ - You're cool." + to_chat(user, "You attach the ends of the two energy swords, making a single double-bladed weapon! You're cool.") var/obj/item/weapon/melee/energy/sword/saber/other_esword = W var/obj/item/weapon/twohanded/dualsaber/newSaber = new(user.loc) if(hacked || other_esword.hacked) @@ -200,13 +221,13 @@ if(hacked == 0) hacked = 1 item_color = "rainbow" - user << "RNBW_ENGAGE" + to_chat(user, "RNBW_ENGAGE") if(active) icon_state = "swordrainbow" user.update_inv_hands() else - user << "It's already fabulous!" + to_chat(user, "It's already fabulous!") else return ..() @@ -215,6 +236,7 @@ desc = "Arrrr matey." icon_state = "cutlass0" icon_state_on = "cutlass1" + light_color = "#ff0000" /obj/item/weapon/melee/energy/sword/pirate/New() return diff --git a/code/game/objects/items/weapons/melee/misc.dm b/code/game/objects/items/weapons/melee/misc.dm index d53dd4a6a5..8cf7d67336 100644 --- a/code/game/objects/items/weapons/melee/misc.dm +++ b/code/game/objects/items/weapons/melee/misc.dm @@ -34,7 +34,7 @@ icon = 'icons/obj/weapons.dmi' icon_state = "arm_blade" item_state = "arm_blade" - origin_tech = "combat=5,biotech=5" + origin_tech = "combat=5;biotech=5" w_class = WEIGHT_CLASS_HUGE force = 20 throwforce = 10 @@ -83,7 +83,7 @@ add_fingerprint(user) if((CLUMSY in user.disabilities) && prob(50)) - user << "You club yourself over the head." + to_chat(user, "You club yourself over the head.") user.Weaken(3 * force) if(ishuman(user)) var/mob/living/carbon/human/H = user @@ -154,14 +154,14 @@ /obj/item/weapon/melee/classic_baton/telescopic/attack_self(mob/user) on = !on if(on) - user << "You extend the baton." + to_chat(user, "You extend the baton.") 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 attack_verb = list("smacked", "struck", "cracked", "beaten") else - user << "You collapse the baton." + to_chat(user, "You collapse the baton.") icon_state = "telebaton_0" item_state = null //no sprite for concealment even when in hand slot_flags = SLOT_BELT diff --git a/code/game/objects/items/weapons/mop.dm b/code/game/objects/items/weapons/mop.dm index b5070100ba..50b3ed20f7 100644 --- a/code/game/objects/items/weapons/mop.dm +++ b/code/game/objects/items/weapons/mop.dm @@ -37,7 +37,7 @@ if(!proximity) return if(reagents.total_volume < 1) - user << "Your mop is dry!" + to_chat(user, "Your mop is dry!") return var/turf/T = get_turf(A) @@ -49,7 +49,7 @@ user.visible_message("[user] begins to clean \the [T] with [src].", "You begin to clean \the [T] with [src]...") if(do_after(user, src.mopspeed, target = T)) - user << "You finish mopping." + to_chat(user, "You finish mopping.") clean(T) @@ -95,7 +95,7 @@ START_PROCESSING(SSobj, src) else STOP_PROCESSING(SSobj,src) - user << "You set the condenser switch to the '[refill_enabled ? "ON" : "OFF"]' position." + to_chat(user, "You set the condenser switch to the '[refill_enabled ? "ON" : "OFF"]' position.") playsound(user, 'sound/machines/click.ogg', 30, 1) /obj/item/weapon/mop/advanced/process() @@ -105,7 +105,7 @@ /obj/item/weapon/mop/advanced/examine(mob/user) ..() - user << "The condenser switch is set to [refill_enabled ? "ON" : "OFF"]." + to_chat(user, "The condenser switch is set to [refill_enabled ? "ON" : "OFF"].") /obj/item/weapon/mop/advanced/Destroy() if(refill_enabled) diff --git a/code/game/objects/items/weapons/pneumaticCannon.dm b/code/game/objects/items/weapons/pneumaticCannon.dm index a702edf9b9..c053b6ed47 100644 --- a/code/game/objects/items/weapons/pneumaticCannon.dm +++ b/code/game/objects/items/weapons/pneumaticCannon.dm @@ -21,12 +21,12 @@ /obj/item/weapon/pneumatic_cannon/examine(mob/user) ..() if(!in_range(user, src)) - user << "You'll need to get closer to see any more." + to_chat(user, "You'll need to get closer to see any more.") return for(var/obj/item/I in loadedItems) - user << "\icon [I] It has \the [I] loaded." + to_chat(user, "\icon [I] It has \the [I] loaded.") if(tank) - user << "\icon [tank] It has \the [tank] mounted onto it." + to_chat(user, "\icon [tank] It has \the [tank] mounted onto it.") /obj/item/weapon/pneumatic_cannon/attackby(obj/item/weapon/W, mob/user, params) @@ -34,11 +34,11 @@ if(!tank) var/obj/item/weapon/tank/internals/IT = W if(IT.volume <= 3) - user << "\The [IT] is too small for \the [src]." + to_chat(user, "\The [IT] is too small for \the [src].") return updateTank(W, 0, user) else if(W.type == type) - user << "You're fairly certain that putting a pneumatic cannon inside another pneumatic cannon would cause a spacetime disruption." + to_chat(user, "You're fairly certain that putting a pneumatic cannon inside another pneumatic cannon would cause a spacetime disruption.") else if(istype(W, /obj/item/weapon/wrench)) switch(pressureSetting) if(1) @@ -47,23 +47,23 @@ pressureSetting = 3 if(3) pressureSetting = 1 - user << "You tweak \the [src]'s pressure output to [pressureSetting]." + to_chat(user, "You tweak \the [src]'s pressure output to [pressureSetting].") else if(istype(W, /obj/item/weapon/screwdriver)) if(tank) updateTank(tank, 1, user) else if(loadedWeightClass >= maxWeightClass) - user << "\The [src] can't hold any more items!" + to_chat(user, "\The [src] can't hold any more items!") else if(istype(W, /obj/item)) var/obj/item/IW = W if((loadedWeightClass + IW.w_class) > maxWeightClass) - user << "\The [IW] won't fit into \the [src]!" + to_chat(user, "\The [IW] won't fit into \the [src]!") return if(IW.w_class > src.w_class) - user << "\The [IW] is too large to fit into \the [src]!" + to_chat(user, "\The [IW] is too large to fit into \the [src]!") return if(!user.transferItemToLoc(W, src)) return - user << "You load \the [IW] into \the [src]." + to_chat(user, "You load \the [IW] into \the [src].") loadedItems.Add(IW) loadedWeightClass += IW.w_class @@ -82,19 +82,19 @@ return var/discharge = 0 if(user.dna.check_mutation(HULK)) - user << "Your meaty finger is much too large for the trigger guard!" + to_chat(user, "Your meaty finger is much too large for the trigger guard!") return if(NOGUNS in user.dna.species.species_traits) - user << "Your fingers don't fit in the trigger guard!" + to_chat(user, "Your fingers don't fit in the trigger guard!") return if(!loadedItems || !loadedWeightClass) - user << "\The [src] has nothing loaded." + to_chat(user, "\The [src] has nothing loaded.") return if(!tank) - user << "\The [src] can't fire without a source of gas." + to_chat(user, "\The [src] can't fire without a source of gas.") return if(tank && !tank.air_contents.remove(gasPerThrow * pressureSetting)) - user << "\The [src] lets out a weak hiss and doesn't react!" + to_chat(user, "\The [src] lets out a weak hiss and doesn't react!") return if(user.disabilities & CLUMSY && prob(75)) user.visible_message("[user] loses their grip on [src], causing it to go off!", "[src] slips out of your hands and goes off!") @@ -144,17 +144,17 @@ if(removing) if(!src.tank) return - user << "You detach \the [thetank] from \the [src]." + to_chat(user, "You detach \the [thetank] from \the [src].") src.tank.loc = get_turf(user) user.put_in_hands(tank) src.tank = null if(!removing) if(src.tank) - user << "\The [src] already has a tank." + to_chat(user, "\The [src] already has a tank.") return if(!user.transferItemToLoc(thetank, src)) return - user << "You hook \the [thetank] up to \the [src]." + to_chat(user, "You hook \the [thetank] up to \the [src].") src.tank = thetank src.update_icons() diff --git a/code/game/objects/items/weapons/powerfist.dm b/code/game/objects/items/weapons/powerfist.dm index f6f4325b57..1f5a229864 100644 --- a/code/game/objects/items/weapons/powerfist.dm +++ b/code/game/objects/items/weapons/powerfist.dm @@ -21,10 +21,10 @@ /obj/item/weapon/melee/powerfist/examine(mob/user) ..() if(!in_range(user, src)) - user << "You'll need to get closer to see any more." + to_chat(user, "You'll need to get closer to see any more.") return if(tank) - user << "\icon [tank] It has \the [tank] mounted onto it." + to_chat(user, "\icon [tank] It has \the [tank] mounted onto it.") /obj/item/weapon/melee/powerfist/attackby(obj/item/weapon/W, mob/user, params) @@ -32,7 +32,7 @@ if(!tank) var/obj/item/weapon/tank/internals/IT = W if(IT.volume <= 3) - user << "\The [IT] is too small for \the [src]." + to_chat(user, "\The [IT] is too small for \the [src].") return updateTank(W, 0, user) else if(istype(W, /obj/item/weapon/wrench)) @@ -44,7 +44,7 @@ if(3) fisto_setting = 1 playsound(loc, W.usesound, 50, 1) - user << "You tweak \the [src]'s piston valve to [fisto_setting]." + to_chat(user, "You tweak \the [src]'s piston valve to [fisto_setting].") else if(istype(W, /obj/item/weapon/screwdriver)) if(tank) updateTank(tank, 1, user) @@ -53,28 +53,28 @@ /obj/item/weapon/melee/powerfist/proc/updateTank(obj/item/weapon/tank/internals/thetank, removing = 0, mob/living/carbon/human/user) if(removing) if(!tank) - user << "\The [src] currently has no tank attached to it." + to_chat(user, "\The [src] currently has no tank attached to it.") return - user << "You detach \the [thetank] from \the [src]." + to_chat(user, "You detach \the [thetank] from \the [src].") tank.forceMove(get_turf(user)) user.put_in_hands(tank) tank = null if(!removing) if(tank) - user << "\The [src] already has a tank." + to_chat(user, "\The [src] already has a tank.") return if(!user.transferItemToLoc(thetank, src)) return - user << "You hook \the [thetank] up to \the [src]." + to_chat(user, "You hook \the [thetank] up to \the [src].") tank = thetank /obj/item/weapon/melee/powerfist/attack(mob/living/target, mob/living/user) if(!tank) - user << "\The [src] can't operate without a source of gas!" + to_chat(user, "\The [src] can't operate without a source of gas!") return if(tank && !tank.air_contents.remove(gasperfist * fisto_setting)) - user << "\The [src]'s piston-ram lets out a weak hiss, it needs more gas!" + 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) diff --git a/code/game/objects/items/weapons/scrolls.dm b/code/game/objects/items/weapons/scrolls.dm index c237e9878e..06559be4a0 100644 --- a/code/game/objects/items/weapons/scrolls.dm +++ b/code/game/objects/items/weapons/scrolls.dm @@ -65,7 +65,7 @@ L += T if(!L.len) - user << "The spell matrix was unable to locate a suitable teleport destination for an unknown reason. Sorry." + to_chat(user, "The spell matrix was unable to locate a suitable teleport destination for an unknown reason. Sorry.") return user.forceMove(pick(L)) diff --git a/code/game/objects/items/weapons/sharpener.dm b/code/game/objects/items/weapons/sharpener.dm index d0e302e6f4..d17df5ab77 100644 --- a/code/game/objects/items/weapons/sharpener.dm +++ b/code/game/objects/items/weapons/sharpener.dm @@ -12,31 +12,31 @@ /obj/item/weapon/sharpener/attackby(obj/item/I, mob/user, params) if(used) - user << "The sharpening block is too worn to use again." + to_chat(user, "The sharpening block is too worn to use again.") return if(I.force >= max || I.throwforce >= max)//no esword sharpening - user << "[I] is much too powerful to sharpen further." + to_chat(user, "[I] is much too powerful to sharpen further.") return if(requires_sharpness && !I.sharpness) - user << "You can only sharpen items that are already sharp, such as knives." + to_chat(user, "You can only sharpen items that are already sharp, such as knives.") return if(istype(I, /obj/item/weapon/melee/energy)) - user << "You don't think \the [I] will be the thing getting modified if you use it on \the [src]." + to_chat(user, "You don't think \the [I] will be the thing getting modified if you use it on \the [src].") return if(istype(I, /obj/item/weapon/twohanded))//some twohanded items should still be sharpenable, but handle force differently. therefore i need this stuff var/obj/item/weapon/twohanded/TH = I if(TH.force_wielded >= max) - user << "[TH] is much too powerful to sharpen further." + to_chat(user, "[TH] is much too powerful to sharpen further.") return if(TH.wielded) - user << "[TH] must be unwielded before it can be sharpened." + to_chat(user, "[TH] must be unwielded before it can be sharpened.") return if(TH.force_wielded > initial(TH.force_wielded)) - user << "[TH] has already been refined before. It cannot be sharpened further." + to_chat(user, "[TH] has already been refined before. It cannot be sharpened further.") return TH.force_wielded = Clamp(TH.force_wielded + increment, 0, max)//wieldforce is increased since normal force wont stay if(I.force > initial(I.force)) - user << "[I] has already been refined before. It cannot be sharpened further." + to_chat(user, "[I] has already been refined before. It cannot be sharpened further.") return user.visible_message("[user] sharpens [I] with [src]!", "You sharpen [I], making it much more deadly than before.") I.sharpness = IS_SHARP_ACCURATE diff --git a/code/game/objects/items/weapons/shields.dm b/code/game/objects/items/weapons/shields.dm index e729a7690a..b0506d8d6b 100644 --- a/code/game/objects/items/weapons/shields.dm +++ b/code/game/objects/items/weapons/shields.dm @@ -74,7 +74,7 @@ /obj/item/weapon/shield/energy/attack_self(mob/living/carbon/human/user) if(user.disabilities & CLUMSY && prob(50)) - user << "You beat yourself in the head with [src]." + to_chat(user, "You beat yourself in the head with [src].") user.take_bodypart_damage(5) active = !active icon_state = "eshield[active]" @@ -85,14 +85,14 @@ throw_speed = 2 w_class = WEIGHT_CLASS_BULKY playsound(user, 'sound/weapons/saberon.ogg', 35, 1) - user << "[src] is now active." + to_chat(user, "[src] is now active.") else force = 3 throwforce = 3 throw_speed = 3 w_class = WEIGHT_CLASS_TINY playsound(user, 'sound/weapons/saberoff.ogg', 35, 1) - user << "[src] can now be concealed." + to_chat(user, "[src] can now be concealed.") add_fingerprint(user) /obj/item/weapon/shield/riot/tele @@ -125,12 +125,12 @@ throw_speed = 2 w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK - user << "You extend \the [src]." + to_chat(user, "You extend \the [src].") else force = 3 throwforce = 3 throw_speed = 3 w_class = WEIGHT_CLASS_NORMAL slot_flags = null - user << "[src] can now be concealed." + to_chat(user, "[src] can now be concealed.") add_fingerprint(user) diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index 3a9a8cf776..8d918c0e91 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -32,6 +32,7 @@ desc = "A backpack that opens into a localized pocket of Blue Space." origin_tech = "bluespace=5;materials=4;engineering=4;plasmatech=5" icon_state = "holdingpack" + item_state = "holdingpack" max_w_class = WEIGHT_CLASS_GIGANTIC max_combined_w_class = 35 resistance_flags = FIRE_PROOF @@ -59,7 +60,7 @@ playsound(src, pshoom, 40, 1) user.Beam(dest_object,icon_state="rped_upgrade",time=5) return 1 - user << "The [src.name] buzzes." + to_chat(user, "The [src.name] buzzes.") playsound(src, 'sound/machines/buzz-sigh.ogg', 50, 0) return 0 @@ -69,7 +70,7 @@ if(safety == "Abort" || !in_range(src, user) || !src || !W || user.incapacitated()) return investigate_log("has become a singularity. Caused by [user.key]","singulo") - user << "The Bluespace interfaces of the two devices catastrophically malfunction!" + to_chat(user, "The Bluespace interfaces of the two devices catastrophically malfunction!") qdel(W) var/obj/singularity/singulo = new /obj/singularity (get_turf(src)) singulo.energy = 300 //should make it a bit bigger~ diff --git a/code/game/objects/items/weapons/storage/bags.dm b/code/game/objects/items/weapons/storage/bags.dm index 43e8b17532..2be74aa1cf 100644 --- a/code/game/objects/items/weapons/storage/bags.dm +++ b/code/game/objects/items/weapons/storage/bags.dm @@ -112,7 +112,7 @@ max_combined_w_class = 100 //Doesn't matter what this is, so long as it's more or equal to storage_slots * plants.w_class max_w_class = WEIGHT_CLASS_NORMAL w_class = WEIGHT_CLASS_TINY - can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/grown,/obj/item/seeds,/obj/item/weapon/grown,/obj/item/weapon/reagent_containers/food/snacks/ash_flora) + can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/grown,/obj/item/seeds,/obj/item/weapon/grown,/obj/item/weapon/reagent_containers/food/snacks/ash_flora,/obj/item/weapon/reagent_containers/honeycomb) resistance_flags = FLAMMABLE //////// @@ -159,14 +159,14 @@ /obj/item/weapon/storage/bag/sheetsnatcher/can_be_inserted(obj/item/W, stop_messages = 0) if(!istype(W,/obj/item/stack/sheet) || istype(W,/obj/item/stack/sheet/mineral/sandstone) || istype(W,/obj/item/stack/sheet/mineral/wood)) if(!stop_messages) - usr << "The snatcher does not accept [W]." + to_chat(usr, "The snatcher does not accept [W].") return 0 //I don't care, but the existing code rejects them for not being "sheets" *shrug* -Sayu var/current = 0 for(var/obj/item/stack/sheet/S in contents) current += S.amount if(capacity == current)//If it's full, you're done if(!stop_messages) - usr << "The snatcher is full." + to_chat(usr, "The snatcher is full.") return 0 return 1 diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index a26d3026da..b48ea18632 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -400,6 +400,12 @@ ) alternate_worn_layer = UNDER_SUIT_LAYER +/obj/item/weapon/storage/belt/holster/full/New() + ..() + new /obj/item/weapon/gun/ballistic/revolver/detective(src) + new /obj/item/ammo_box/c38(src) + new /obj/item/ammo_box/c38(src) + /obj/item/weapon/storage/belt/fannypack name = "fannypack" desc = "A dorky fannypack for keeping small items in." @@ -473,7 +479,7 @@ /obj/item/weapon/storage/belt/sabre/examine(mob/user) ..() if(contents.len) - user << "Alt-click it to quickly draw the blade." + to_chat(user, "Alt-click it to quickly draw the blade.") /obj/item/weapon/storage/belt/sabre/AltClick(mob/user) if(!ishuman(user) || !user.canUseTopic(src, be_close=TRUE)) @@ -485,7 +491,7 @@ user.put_in_hands(I) update_icon() else - user << "[src] is empty." + to_chat(user, "[src] is empty.") /obj/item/weapon/storage/belt/sabre/update_icon() icon_state = "sheath" diff --git a/code/game/objects/items/weapons/storage/book.dm b/code/game/objects/items/weapons/storage/book.dm index e1e3ebacd1..daf8e8e78f 100644 --- a/code/game/objects/items/weapons/storage/book.dm +++ b/code/game/objects/items/weapons/storage/book.dm @@ -11,7 +11,7 @@ var/title = "book" /obj/item/weapon/storage/book/attack_self(mob/user) - user << "The pages of [title] have been cut out!" + to_chat(user, "The pages of [title] have been cut out!") var/global/list/biblenames = list("Bible", "Quran", "Scrapbook", "Burning Bible", "Clown Bible", "Banana Bible", "Creeper Bible", "White Bible", "Holy Light", "The God Delusion", "Tome", "The King in Yellow", "Ithaqua", "Scientology", "Melted Bible", "Necronomicon") var/global/list/biblestates = list("bible", "koran", "scrapbook", "burning", "honk1", "honk2", "creeper", "white", "holylight", "atheist", "tome", "kingyellow", "ithaqua", "scientology", "melted", "necronomicon") @@ -69,7 +69,7 @@ var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible", for(var/X in H.bodyparts) var/obj/item/bodypart/BP = X if(BP.status == BODYPART_ROBOTIC) - user << "[src.deity_name] refuses to heal this metallic taint!" + to_chat(user, "[src.deity_name] refuses to heal this metallic taint!") return 0 var/heal_amt = 10 @@ -81,18 +81,18 @@ var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible", if(affecting.heal_damage(heal_amt, heal_amt)) H.update_damage_overlays() H.visible_message("[user] heals [H] with the power of [deity_name]!") - H << "May the power of [deity_name] compel you to be healed!" + to_chat(H, "May the power of [deity_name] compel you to be healed!") playsound(src.loc, "punch", 25, 1, -1) return 1 /obj/item/weapon/storage/book/bible/attack(mob/living/M, mob/living/carbon/human/user) if (!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to do this!" + to_chat(user, "You don't have the dexterity to do this!") return if (user.disabilities & CLUMSY && prob(50)) - user << "[src] slips out of your hand and hits your head." + to_chat(user, "[src] slips out of your hand and hits your head.") user.take_bodypart_damage(10) user.Paralyse(20) return @@ -102,7 +102,7 @@ var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible", chaplain = 1 if(!chaplain) - user << "The book sizzles in your hands." + to_chat(user, "The book sizzles in your hands.") user.take_bodypart_damage(0,10) return @@ -110,7 +110,7 @@ var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible", if (M.stat != DEAD) if(chaplain && user == M) - user << "You can't heal yourself!" + to_chat(user, "You can't heal yourself!") return if(ishuman(M) && prob(60) && bless(M, user)) @@ -119,7 +119,7 @@ var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible", var/mob/living/carbon/C = M if(!istype(C.head, /obj/item/clothing/head/helmet)) C.adjustBrainLoss(10) - C << "You feel dumber." + to_chat(C, "You feel dumber.") if(smack) M.visible_message("[user] beats [M] over the head with [src]!", \ @@ -135,18 +135,18 @@ var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible", if(!proximity) return if(isfloorturf(A)) - user << "You hit the floor with the bible." + to_chat(user, "You hit the floor with the bible.") if(user.mind && (user.mind.isholy)) for(var/obj/effect/rune/R in orange(2,user)) R.invisibility = 0 if(user.mind && (user.mind.isholy)) if(A.reagents && A.reagents.has_reagent("water")) // blesses all the water in the holder - user << "You bless [A]." + to_chat(user, "You bless [A].") var/water2holy = A.reagents.get_reagent_amount("water") A.reagents.del_reagent("water") A.reagents.add_reagent("holywater",water2holy) if(A.reagents && A.reagents.has_reagent("unholywater")) // yeah yeah, copy pasted code - sue me - user << "You purify [A]." + to_chat(user, "You purify [A].") var/unholy2clean = A.reagents.get_reagent_amount("unholywater") A.reagents.del_reagent("unholywater") A.reagents.add_reagent("holywater",unholy2clean) diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index f9c722cb3f..8345f3346c 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -46,7 +46,7 @@ if(!foldable) return if(contents.len) - user << "You can't fold this box with items still inside!" + to_chat(user, "You can't fold this box with items still inside!") return if(!ispath(foldable)) return @@ -54,7 +54,7 @@ //Close any open UI windows first close_all() - user << "You fold [src] flat." + to_chat(user, "You fold [src] flat.") var/obj/item/I = new foldable(get_turf(src)) user.drop_item() user.put_in_hands(I) @@ -372,6 +372,7 @@ icon_state = "monkeycubebox" storage_slots = 7 can_hold = list(/obj/item/weapon/reagent_containers/food/snacks/monkeycube) + illustration = null /obj/item/weapon/storage/box/monkeycubes/New() ..() @@ -639,6 +640,7 @@ name = "box of rubber shots" desc = "A box full of rubber shots, designed for riot shotguns." icon_state = "rubbershot_box" + illustration = null /obj/item/weapon/storage/box/rubbershot/New() ..() @@ -649,6 +651,7 @@ name = "box of lethal shotgun shots" desc = "A box full of lethal shots, designed for riot shotguns." icon_state = "lethalshot_box" + illustration = null /obj/item/weapon/storage/box/lethalshot/New() ..() @@ -664,6 +667,7 @@ name = "box of beanbags" desc = "A box full of beanbag shells." icon_state = "rubbershot_box" + illustration = null /obj/item/weapon/storage/box/beanbag/New() ..() @@ -710,17 +714,17 @@ if(istype(W, /obj/item/weapon/pen)) //if a pen is used on the sack, dialogue to change its design appears if(contents.len) - user << "You can't modify this [src] with items still inside!" + to_chat(user, "You can't modify this [src] with items still inside!") return var/list/designs = list(NODESIGN, NANOTRASEN, SYNDI, HEART, SMILE, "Cancel") var/switchDesign = input("Select a Design:", "Paper Sack Design", designs[1]) in designs if(get_dist(usr, src) > 1) - usr << "You have moved too far away!" + to_chat(usr, "You have moved too far away!") return var/choice = designs.Find(switchDesign) if(design == designs[choice] || designs[choice] == "Cancel") return 0 - usr << "You make some modifications to the [src] using your pen." + to_chat(usr, "You make some modifications to the [src] using your pen.") design = designs[choice] icon_state = "paperbag_[design]" item_state = "paperbag_[design]" @@ -758,7 +762,7 @@ /obj/item/weapon/storage/box/ingredients //This box is for the randomely chosen version the chef spawns with, it shouldn't actually exist. name = "ingredients box" - icon_state = "donk_kit" + illustration = "donk_kit" item_state = null /obj/item/weapon/storage/box/ingredients/wildcard diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm index b8705bcbb4..95978000bf 100644 --- a/code/game/objects/items/weapons/storage/fancy.dm +++ b/code/game/objects/items/weapons/storage/fancy.dm @@ -38,9 +38,9 @@ ..() if(fancy_open) if(contents.len == 1) - user << "There is one [src.icon_type] left." + to_chat(user, "There is one [src.icon_type] left.") else - user << "There are [contents.len <= 0 ? "no" : "[src.contents.len]"] [src.icon_type]s left." + to_chat(user, "There are [contents.len <= 0 ? "no" : "[src.contents.len]"] [src.icon_type]s left.") /obj/item/weapon/storage/fancy/attack_self(mob/user) fancy_open = !fancy_open @@ -177,11 +177,11 @@ remove_from_storage(W, M) M.equip_to_slot_if_possible(W, slot_wear_mask) contents -= W - user << "You take a [icon_type] out of the pack." + to_chat(user, "You take a [icon_type] out of the pack.") else ..() else - user << "There are no [icon_type]s left in the pack." + to_chat(user, "There are no [icon_type]s left in the pack.") /obj/item/weapon/storage/fancy/cigarettes/dromedaryco name = "DromedaryCo" diff --git a/code/game/objects/items/weapons/storage/internal.dm b/code/game/objects/items/weapons/storage/internal.dm index cc1534da4f..9fdc14f85c 100644 --- a/code/game/objects/items/weapons/storage/internal.dm +++ b/code/game/objects/items/weapons/storage/internal.dm @@ -29,9 +29,9 @@ . = ..() if(. && silent && !prevent_warning) if(quickdraw) - user << "You discreetly slip [W] into [src]. Alt-click [src] to remove it." + to_chat(user, "You discreetly slip [W] into [src]. Alt-click [src] to remove it.") else - user << "You discreetly slip [W] into [src]." + to_chat(user, "You discreetly slip [W] into [src].") /obj/item/weapon/storage/internal/pocket/big max_w_class = WEIGHT_CLASS_NORMAL diff --git a/code/game/objects/items/weapons/storage/lockbox.dm b/code/game/objects/items/weapons/storage/lockbox.dm index 615ed8c8d9..e2b45252ae 100644 --- a/code/game/objects/items/weapons/storage/lockbox.dm +++ b/code/game/objects/items/weapons/storage/lockbox.dm @@ -20,31 +20,31 @@ /obj/item/weapon/storage/lockbox/attackby(obj/item/weapon/W, mob/user, params) if(W.GetID()) if(broken) - user << "It appears to be broken." + to_chat(user, "It appears to be broken.") return if(allowed(user)) locked = !locked if(locked) icon_state = icon_locked - user << "You lock the [src.name]!" + to_chat(user, "You lock the [src.name]!") close_all() return else icon_state = icon_closed - user << "You unlock the [src.name]!" + to_chat(user, "You unlock the [src.name]!") return else - user << "Access Denied." + to_chat(user, "Access Denied.") return if(!locked) return ..() else - user << "It's locked!" + to_chat(user, "It's locked!") /obj/item/weapon/storage/lockbox/MouseDrop(over_object, src_location, over_location) if (locked) src.add_fingerprint(usr) - usr << "It's locked!" + to_chat(usr, "It's locked!") return 0 ..() @@ -59,7 +59,7 @@ return /obj/item/weapon/storage/lockbox/show_to(mob/user) if(locked) - user << "It's locked!" + to_chat(user, "It's locked!") else ..() return @@ -67,7 +67,7 @@ //Check the destination item type for contentto. /obj/item/weapon/storage/lockbox/storage_contents_dump_act(obj/item/weapon/storage/src_object, mob/user) if(locked) - user << "It's locked!" + to_chat(user, "It's locked!") return 0 return ..() diff --git a/code/game/objects/items/weapons/storage/secure.dm b/code/game/objects/items/weapons/storage/secure.dm index 6ccf62afe5..c248808aae 100644 --- a/code/game/objects/items/weapons/storage/secure.dm +++ b/code/game/objects/items/weapons/storage/secure.dm @@ -28,7 +28,7 @@ /obj/item/weapon/storage/secure/examine(mob/user) ..() - user << text("The service panel is [src.open ? "open" : "closed"].") + to_chat(user, text("The service panel is [src.open ? "open" : "closed"].")) /obj/item/weapon/storage/secure/attackby(obj/item/weapon/W, mob/user, params) if(locked) @@ -64,7 +64,7 @@ /obj/item/weapon/storage/secure/MouseDrop(over_object, src_location, over_location) if (locked) src.add_fingerprint(usr) - usr << "It's locked!" + to_chat(usr, "It's locked!") return 0 ..() @@ -117,7 +117,7 @@ /obj/item/weapon/storage/secure/storage_contents_dump_act(obj/item/weapon/storage/src_object, mob/user) if(locked) - user << "It's locked!" + to_chat(user, "It's locked!") return 0 return ..() @@ -152,7 +152,7 @@ /obj/item/weapon/storage/secure/briefcase/attack_hand(mob/user) if ((src.loc == user) && (src.locked == 1)) - usr << "[src] is locked and cannot be opened!" + to_chat(usr, "[src] is locked and cannot be opened!") add_fingerprint(user) else ..() diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm index cc13131c14..79bfb62312 100644 --- a/code/game/objects/items/weapons/storage/storage.dm +++ b/code/game/objects/items/weapons/storage/storage.dm @@ -268,23 +268,23 @@ return 0 //Means the item is already in the storage item if(contents.len >= storage_slots) if(!stop_messages) - usr << "[src] is full, make some space!" + to_chat(usr, "[src] is full, make some space!") return 0 //Storage item is full if(can_hold.len) if(!is_type_in_typecache(W, can_hold)) if(!stop_messages) - usr << "[src] cannot hold [W]!" + to_chat(usr, "[src] cannot hold [W]!") return 0 if(is_type_in_typecache(W, cant_hold)) //Check for specific items which this container can't hold. if(!stop_messages) - usr << "[src] cannot hold [W]!" + to_chat(usr, "[src] cannot hold [W]!") return 0 if(W.w_class > max_w_class) if(!stop_messages) - usr << "[W] is too big for [src]!" + to_chat(usr, "[W] is too big for [src]!") return 0 var/sum_w_class = W.w_class @@ -293,17 +293,17 @@ if(sum_w_class > max_combined_w_class) if(!stop_messages) - usr << "[W] won't fit in [src], make some space!" + to_chat(usr, "[W] won't fit in [src], make some space!") return 0 if(W.w_class >= w_class && (istype(W, /obj/item/weapon/storage))) if(!istype(src, /obj/item/weapon/storage/backpack/holding)) //bohs should be able to hold backpacks again. The override for putting a boh in a boh is in backpack.dm. if(!stop_messages) - usr << "[src] cannot hold [W] as it's a storage item of the same size!" + to_chat(usr, "[src] cannot hold [W] as it's a storage item of the same size!") return 0 //To prevent the stacking of same sized storage items. if(W.flags & NODROP) //SHOULD be handled in unEquip, but better safe than sorry. - usr << "\the [W] is stuck to your hand, you can't put it in \the [src]!" + to_chat(usr, "\the [W] is stuck to your hand, you can't put it in \the [src]!") return 0 return 1 @@ -341,7 +341,7 @@ if(!prevent_warning) for(var/mob/M in viewers(usr, null)) if(M == usr) - usr << "You put [W] [preposition]to [src]." + to_chat(usr, "You put [W] [preposition]to [src].") else if(in_range(M, usr)) //If someone is standing close enough, they can tell what it is... M.show_message("[usr] puts [W] [preposition]to [src].", 1) else if(W && W.w_class >= 3) //Otherwise they can only see large or normal items from a distance... @@ -456,11 +456,11 @@ collection_mode = (collection_mode+1)%3 switch (collection_mode) if(2) - usr << "[src] now picks up all items of a single type at once." + to_chat(usr, "[src] now picks up all items of a single type at once.") if(1) - usr << "[src] now picks up all items in a tile at once." + to_chat(usr, "[src] now picks up all items in a tile at once.") if(0) - usr << "[src] now picks up one item at a time." + to_chat(usr, "[src] now picks up one item at a time.") // Empty all the contents onto the current turf /obj/item/weapon/storage/verb/quick_empty() diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm index 40d3def217..b1b7c823a2 100644 --- a/code/game/objects/items/weapons/storage/toolbox.dm +++ b/code/game/objects/items/weapons/storage/toolbox.dm @@ -13,22 +13,23 @@ origin_tech = "combat=1;engineering=1" attack_verb = list("robusted") hitsound = 'sound/weapons/smash.ogg' - var/hinges = "single_hinge" - var/old = FALSE + var/latches = "single_latch" + var/has_latches = TRUE /obj/item/weapon/storage/toolbox/Initialize() ..() - if(!old) + if(has_latches) if(prob(10)) - hinges = "double_hinge" + latches = "double_latch" else if(prob(1)) - hinges = "triple_hinge" + latches = "triple_latch" update_icon() /obj/item/weapon/storage/toolbox/update_icon() ..() cut_overlays() - add_overlay(image('icons/obj/storage.dmi', "[hinges]")) + if(has_latches) + add_overlay(image('icons/obj/storage.dmi', "[latches]")) /obj/item/weapon/storage/toolbox/suicide_act(mob/user) @@ -45,16 +46,19 @@ new /obj/item/weapon/crowbar/red(src) new /obj/item/weapon/weldingtool/mini(src) new /obj/item/weapon/extinguisher/mini(src) - if(prob(50)) - new /obj/item/device/flashlight(src) - else - new /obj/item/device/flashlight/flare(src) + switch(rand(1,3)) + if(1) + new /obj/item/device/flashlight(src) + if(2) + new /obj/item/device/flashlight/glowstick(src) + if(3) + new /obj/item/device/flashlight/flare(src) new /obj/item/device/radio/off(src) /obj/item/weapon/storage/toolbox/emergency/old name = "rusty red toolbox" icon_state = "toolbox_red_old" - old = TRUE + has_latches = FALSE /obj/item/weapon/storage/toolbox/mechanical name = "mechanical toolbox" @@ -73,7 +77,7 @@ /obj/item/weapon/storage/toolbox/mechanical/old name = "rusty blue toolbox" icon_state = "toolbox_blue_old" - old = TRUE + has_latches = FALSE /obj/item/weapon/storage/toolbox/electrical name = "electrical toolbox" @@ -133,12 +137,13 @@ name = "brass box" desc = "A huge brass box with several indentations in its surface." icon_state = "brassbox" + item_state = null + has_latches = FALSE + resistance_flags = FIRE_PROOF | ACID_PROOF w_class = WEIGHT_CLASS_HUGE max_w_class = WEIGHT_CLASS_NORMAL max_combined_w_class = 28 storage_slots = 28 - slowdown = 1 - flags = HANDSLOW attack_verb = list("robusted", "crushed", "smashed") var/proselytizer_type = /obj/item/clockwork/clockwork_proselytizer/scarab @@ -183,4 +188,4 @@ 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) \ No newline at end of file + new/obj/item/stack/cable_coil/white(src) diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index e30b4087db..556fc94901 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -2,7 +2,7 @@ /obj/item/weapon/storage/box/syndicate/New() ..() - switch (pickweight(list("bloodyspai" = 3, "stealth" = 2, "bond" = 2, "screwed" = 2, "sabotage" = 3, "guns" = 2, "murder" = 2, "implant" = 1, "hacker" = 3, "lordsingulo" = 1, "darklord" = 1, "sniper" = 1, "metaops" = 1, "ninja" = 1))) + switch (pickweight(list("bloodyspai" = 3, "stealth" = 2, "bond" = 2, "screwed" = 2, "sabotage" = 3, "guns" = 2, "murder" = 2, "implant" = 1, "hacker" = 3, "darklord" = 1, "sniper" = 1, "metaops" = 1, "ninja" = 1))) 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 @@ -128,7 +128,7 @@ new /obj/item/weapon/throwing_star(src) new /obj/item/weapon/throwing_star(src) new /obj/item/weapon/throwing_star(src) - new /obj/item/weapon/storage/belt/military/assault(src) // 3 tc + new /obj/item/weapon/storage/belt/chameleon(src) // Unique but worth at least 2 tc new /obj/item/weapon/card/id/syndicate(src) // 2 tc new /obj/item/device/chameleon(src) // 7 tc @@ -315,4 +315,4 @@ /obj/item/weapon/storage/box/syndie_kit/mimery/New() ..() new /obj/item/weapon/spellbook/oneuse/mimery_blockade(src) - new /obj/item/weapon/spellbook/oneuse/mimery_guns(src) \ No newline at end of file + new /obj/item/weapon/spellbook/oneuse/mimery_guns(src) diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index 1a2328471a..c79e35d9ec 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -68,15 +68,15 @@ if(istype(W, /obj/item/weapon/stock_parts/cell)) var/obj/item/weapon/stock_parts/cell/C = W if(bcell) - user << "[src] already has a cell." + to_chat(user, "[src] already has a cell.") else if(C.maxcharge < hitcost) - user << "[src] requires a higher capacity cell." + to_chat(user, "[src] requires a higher capacity cell.") return if(!user.transferItemToLoc(W, src)) return bcell = W - user << "You install a cell in [src]." + to_chat(user, "You install a cell in [src].") update_icon() else if(istype(W, /obj/item/weapon/screwdriver)) @@ -84,7 +84,7 @@ bcell.updateicon() bcell.loc = get_turf(src.loc) bcell = null - user << "You remove the cell from [src]." + to_chat(user, "You remove the cell from [src].") status = 0 update_icon() else @@ -93,14 +93,14 @@ /obj/item/weapon/melee/baton/attack_self(mob/user) if(bcell && bcell.charge > hitcost) status = !status - user << "[src] is now [status ? "on" : "off"]." + to_chat(user, "[src] is now [status ? "on" : "off"].") playsound(loc, "sparks", 75, 1, -1) else status = 0 if(!bcell) - user << "[src] does not have a power source!" + to_chat(user, "[src] does not have a power source!") else - user << "[src] is out of charge." + to_chat(user, "[src] is out of charge.") update_icon() add_fingerprint(user) diff --git a/code/game/objects/items/weapons/tanks/jetpack.dm b/code/game/objects/items/weapons/tanks/jetpack.dm index e5ff9e6ac3..ace0afa838 100644 --- a/code/game/objects/items/weapons/tanks/jetpack.dm +++ b/code/game/objects/items/weapons/tanks/jetpack.dm @@ -27,7 +27,7 @@ else if(istype(action, /datum/action/item_action/jetpack_stabilization)) if(on) stabilizers = !stabilizers - user << "You turn the jetpack stabilization [stabilizers ? "on" : "off"]." + to_chat(user, "You turn the jetpack stabilization [stabilizers ? "on" : "off"].") else toggle_internals(user) @@ -38,10 +38,10 @@ if(!on) turn_on() - user << "You turn the jetpack on." + to_chat(user, "You turn the jetpack on.") else turn_off() - user << "You turn the jetpack off." + to_chat(user, "You turn the jetpack off.") for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() @@ -154,12 +154,12 @@ /obj/item/weapon/tank/jetpack/suit/cycle(mob/user) if(!istype(loc, /obj/item/clothing/suit/space/hardsuit)) - user << "\The [src] must be connected to a hardsuit!" + to_chat(user, "\The [src] must be connected to a hardsuit!") return var/mob/living/carbon/human/H = user if(!istype(H.s_store, /obj/item/weapon/tank/internals)) - user << "You need a tank in your suit storage!" + to_chat(user, "You need a tank in your suit storage!") return ..() diff --git a/code/game/objects/items/weapons/tanks/tanks.dm b/code/game/objects/items/weapons/tanks/tanks.dm index d5cb9547f0..ffac4b240b 100644 --- a/code/game/objects/items/weapons/tanks/tanks.dm +++ b/code/game/objects/items/weapons/tanks/tanks.dm @@ -25,24 +25,24 @@ return if(H.internal == src) - H << "You close [src] valve." + to_chat(H, "You close [src] valve.") H.internal = null H.update_internals_hud_icon(0) else if(!H.getorganslot("breathing_tube")) if(!H.wear_mask) - H << "You need a mask!" + to_chat(H, "You need a mask!") return if(H.wear_mask.mask_adjusted) H.wear_mask.adjustmask(H) if(!(H.wear_mask.flags & MASKINTERNALS)) - H << "[H.wear_mask] can't use [src]!" + to_chat(H, "[H.wear_mask] can't use [src]!") return if(H.internal) - H << "You switch your internals to [src]." + to_chat(H, "You switch your internals to [src].") else - H << "You open [src] valve." + to_chat(H, "You open [src] valve.") H.internal = src H.update_internals_hud_icon(1) H.update_action_buttons_icon() @@ -69,10 +69,10 @@ if (istype(src.loc, /obj/item/assembly)) icon = src.loc if(!in_range(src, user)) - if (icon == src) user << "If you want any more information you'll need to get closer." + if (icon == src) to_chat(user, "If you want any more information you'll need to get closer.") return - user << "The pressure gauge reads [src.air_contents.return_pressure()] kPa." + to_chat(user, "The pressure gauge reads [src.air_contents.return_pressure()] kPa.") var/celsius_temperature = src.air_contents.temperature-T0C var/descriptive @@ -90,7 +90,7 @@ else descriptive = "furiously hot" - user << "It feels [descriptive]." + to_chat(user, "It feels [descriptive].") /obj/item/weapon/tank/blob_act(obj/structure/blob/B) if(B && B.loc == loc) @@ -234,7 +234,7 @@ if(!istype(src.loc,/obj/item/device/transfer_valve)) message_admins("Explosive tank rupture! Last key to touch the tank was [src.fingerprintslast].") log_game("Explosive tank rupture! Last key to touch the tank was [src.fingerprintslast].") - //world << "\blue[x],[y] tank is exploding: [pressure] kPa" + //to_chat(world, "\blue[x],[y] tank is exploding: [pressure] kPa") //Give the gas a chance to build up more pressure through reacting air_contents.react() air_contents.react() @@ -243,7 +243,7 @@ var/range = (pressure-TANK_FRAGMENT_PRESSURE)/TANK_FRAGMENT_SCALE var/turf/epicenter = get_turf(loc) - //world << "\blue Exploding Pressure: [pressure] kPa, intensity: [range]" + //to_chat(world, "\blue Exploding Pressure: [pressure] kPa, intensity: [range]") explosion(epicenter, round(range*0.25), round(range*0.5), round(range), round(range*1.5)) if(istype(src.loc,/obj/item/device/transfer_valve)) @@ -252,7 +252,7 @@ qdel(src) else if(pressure > TANK_RUPTURE_PRESSURE) - //world << "\blue[x],[y] tank is rupturing: [pressure] kPa, integrity [integrity]" + //to_chat(world, "\blue[x],[y] tank is rupturing: [pressure] kPa, integrity [integrity]") if(integrity <= 0) var/turf/T = get_turf(src) if(!T) @@ -264,7 +264,7 @@ integrity-- else if(pressure > TANK_LEAK_PRESSURE) - //world << "\blue[x],[y] tank is leaking: [pressure] kPa, integrity [integrity]" + //to_chat(world, "\blue[x],[y] tank is leaking: [pressure] kPa, integrity [integrity]") if(integrity <= 0) var/turf/T = get_turf(src) if(!T) diff --git a/code/game/objects/items/weapons/tanks/watertank.dm b/code/game/objects/items/weapons/tanks/watertank.dm index dca3668758..ecca6aabfc 100644 --- a/code/game/objects/items/weapons/tanks/watertank.dm +++ b/code/game/objects/items/weapons/tanks/watertank.dm @@ -34,7 +34,7 @@ set name = "Toggle Mister" set category = "Object" if (usr.get_item_by_slot(usr.getBackSlot()) != src) - usr << "The watertank must be worn properly to use!" + to_chat(usr, "The watertank must be worn properly to use!") return if(usr.incapacitated()) return @@ -48,7 +48,7 @@ //Detach the nozzle into the user's hands if(!user.put_in_hands(noz)) on = 0 - user << "You need a free hand to hold the mister!" + to_chat(user, "You need a free hand to hold the mister!") return noz.loc = user else @@ -124,7 +124,7 @@ /obj/item/weapon/reagent_containers/spray/mister/dropped(mob/user) ..() - user << "The mister snaps back onto the watertank." + to_chat(user, "The mister snaps back onto the watertank.") tank.on = 0 loc = tank @@ -173,7 +173,7 @@ /obj/item/weapon/reagent_containers/spray/mister/janitor/attack_self(var/mob/user) amount_per_transfer_from_this = (amount_per_transfer_from_this == 10 ? 5 : 10) - user << "You [amount_per_transfer_from_this == 10 ? "remove" : "fix"] the nozzle. You'll now use [amount_per_transfer_from_this] units per spray." + to_chat(user, "You [amount_per_transfer_from_this == 10 ? "remove" : "fix"] the nozzle. You'll now use [amount_per_transfer_from_this] units per spray.") //ATMOS FIRE FIGHTING BACKPACK @@ -240,23 +240,23 @@ if(EXTINGUISHER) nozzle_mode = NANOFROST tank.icon_state = "waterbackpackatmos_1" - user << "Swapped to nanofrost launcher" + to_chat(user, "Swapped to nanofrost launcher") return if(NANOFROST) nozzle_mode = METAL_FOAM tank.icon_state = "waterbackpackatmos_2" - user << "Swapped to metal foam synthesizer" + to_chat(user, "Swapped to metal foam synthesizer") return if(METAL_FOAM) nozzle_mode = EXTINGUISHER tank.icon_state = "waterbackpackatmos_0" - user << "Swapped to water extinguisher" + to_chat(user, "Swapped to water extinguisher") return return /obj/item/weapon/extinguisher/mini/nozzle/dropped(mob/user) ..() - user << "The nozzle snaps back onto the tank!" + to_chat(user, "The nozzle snaps back onto the tank!") tank.on = 0 loc = tank @@ -272,10 +272,10 @@ return //Safety check so you don't blast yourself trying to refill your tank var/datum/reagents/R = reagents if(R.total_volume < 100) - user << "You need at least 100 units of water to use the nanofrost launcher!" + to_chat(user, "You need at least 100 units of water to use the nanofrost launcher!") return if(nanofrost_cooldown) - user << "Nanofrost launcher is still recharging..." + to_chat(user, "Nanofrost launcher is still recharging...") return nanofrost_cooldown = 1 R.remove_any(100) @@ -300,7 +300,7 @@ spawn(100) metal_synthesis_cooldown-- else - user << "Metal foam mix is still being synthesized..." + to_chat(user, "Metal foam mix is still being synthesized...") return /obj/effect/nanofrost_container @@ -358,7 +358,7 @@ if(!istype(user)) return if (user.get_item_by_slot(slot_back) != src) - user << "The chemtank needs to be on your back before you can activate it!" + to_chat(user, "The chemtank needs to be on your back before you can activate it!") return if(on) turn_off() @@ -406,13 +406,13 @@ on = 1 START_PROCESSING(SSobj, src) if(ismob(loc)) - loc << "[src] turns on." + to_chat(loc, "[src] turns on.") /obj/item/weapon/reagent_containers/chemtank/proc/turn_off() on = 0 STOP_PROCESSING(SSobj, src) if(ismob(loc)) - loc << "[src] turns off." + to_chat(loc, "[src] turns off.") /obj/item/weapon/reagent_containers/chemtank/process() if(!ishuman(loc)) diff --git a/code/game/objects/items/weapons/teleportation.dm b/code/game/objects/items/weapons/teleportation.dm index 2a00e18dee..74a9bc324c 100644 --- a/code/game/objects/items/weapons/teleportation.dm +++ b/code/game/objects/items/weapons/teleportation.dm @@ -49,7 +49,7 @@ Frequency: return var/turf/current_location = get_turf(usr)//What turf is the user on? if(!current_location||current_location.z==2)//If turf was not found or they're on z level 2. - usr << "The [src] is malfunctioning." + to_chat(usr, "The [src] is malfunctioning.") return if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc))) usr.set_machine(src) @@ -142,7 +142,7 @@ Frequency: var/turf/current_location = get_turf(user)//What turf is the user on? var/area/current_area = current_location.loc if(!current_location || current_area.noteleport || current_location.z > ZLEVEL_SPACEMAX || !isturf(user.loc))//If turf was not found or they're on z level 2 or >7 which does not currently exist. or if user is not located on a turf - user << "\The [src] is malfunctioning." + to_chat(user, "\The [src] is malfunctioning.") return var/list/L = list( ) for(var/obj/machinery/computer/teleporter/com in machines) @@ -175,7 +175,7 @@ Frequency: var/atom/T = L[t1] var/area/A = get_area(T) if(A.noteleport) - user << "\The [src] is malfunctioning." + to_chat(user, "\The [src] is malfunctioning.") return user.show_message("Locked In.", 2) var/obj/effect/portal/P = new /obj/effect/portal(get_turf(src), T, src) diff --git a/code/game/objects/items/weapons/teleprod.dm b/code/game/objects/items/weapons/teleprod.dm index 7736dc2ff2..07af7a30c4 100644 --- a/code/game/objects/items/weapons/teleprod.dm +++ b/code/game/objects/items/weapons/teleprod.dm @@ -34,7 +34,7 @@ qdel(src) qdel(I) user.put_in_hands(S) - user << "You place the bluespace crystal firmly into the igniter." + to_chat(user, "You place the bluespace crystal firmly into the igniter.") else user.visible_message("You can't put the crystal onto the stunprod while it has a power cell installed!") else diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index dcbda30126..74d9d256de 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -44,6 +44,7 @@ /obj/item/weapon/wrench/brass name = "brass wrench" desc = "A brass wrench. It's faintly warm to the touch." + resistance_flags = FIRE_PROOF | ACID_PROOF icon_state = "wrench_brass" toolspeed = 0.5 @@ -72,7 +73,7 @@ /obj/item/weapon/wrench/power/attack_self(mob/user) playsound(get_turf(user),'sound/items/change_drill.ogg',50,1) var/obj/item/weapon/wirecutters/power/s_drill = new /obj/item/weapon/screwdriver/power - user << "You attach the screw driver bit to [src]." + to_chat(user, "You attach the screw driver bit to [src].") qdel(src) user.put_in_active_hand(s_drill) @@ -167,6 +168,7 @@ /obj/item/weapon/screwdriver/brass name = "brass screwdriver" desc = "A screwdriver made of brass. The handle feels freezing cold." + resistance_flags = FIRE_PROOF | ACID_PROOF icon_state = "screwdriver_brass" toolspeed = 0.5 @@ -201,7 +203,7 @@ /obj/item/weapon/screwdriver/power/attack_self(mob/user) playsound(get_turf(user),'sound/items/change_drill.ogg',50,1) var/obj/item/weapon/wrench/power/b_drill = new /obj/item/weapon/wrench/power - user << "You attach the bolt driver bit to [src]." + to_chat(user, "You attach the bolt driver bit to [src].") qdel(src) user.put_in_active_hand(b_drill) @@ -259,6 +261,7 @@ /obj/item/weapon/wirecutters/brass name = "brass wirecutters" desc = "A pair of wirecutters made of brass. The handle feels freezing cold to the touch." + resistance_flags = FIRE_PROOF | ACID_PROOF icon_state = "cutters_brass" toolspeed = 0.5 @@ -299,7 +302,7 @@ /obj/item/weapon/wirecutters/power/attack_self(mob/user) playsound(get_turf(user), 'sound/items/change_jaws.ogg', 50, 1) var/obj/item/weapon/crowbar/power/pryjaws = new /obj/item/weapon/crowbar/power - user << "You attach the pry jaws to [src]." + to_chat(user, "You attach the pry jaws to [src].") qdel(src) user.put_in_active_hand(pryjaws) /* @@ -426,7 +429,7 @@ var/turf/location = get_turf(user) location.hotspot_expose(700, 50, 1) if(get_fuel() <= 0) - user.AddLuminosity(-light_intensity) + set_light(0) if(isliving(O)) var/mob/living/L = O @@ -438,8 +441,8 @@ /obj/item/weapon/weldingtool/attack_self(mob/user) switched_on(user) if(welding) - SetLuminosity(0) - user.AddLuminosity(light_intensity) + set_light(light_intensity) + update_icon() @@ -460,7 +463,7 @@ return TRUE else if(M) - M << "You need more welding fuel to complete this task!" + to_chat(M, "You need more welding fuel to complete this task!") return FALSE @@ -480,12 +483,12 @@ //Switches the welder on /obj/item/weapon/weldingtool/proc/switched_on(mob/user) if(!status) - user << "[src] can't be turned on while unsecured!" + to_chat(user, "[src] can't be turned on while unsecured!") return welding = !welding if(welding) if(get_fuel() >= 1) - user << "You switch [src] on." + to_chat(user, "You switch [src] on.") playsound(loc, acti_sound, 50, 1) force = 15 damtype = "fire" @@ -493,21 +496,17 @@ update_icon() START_PROCESSING(SSobj, src) else - user << "You need more fuel!" + to_chat(user, "You need more fuel!") switched_off(user) else - user << "You switch [src] off." + to_chat(user, "You switch [src] off.") playsound(loc, deac_sound, 50, 1) switched_off(user) //Switches the welder off /obj/item/weapon/weldingtool/proc/switched_off(mob/user) welding = 0 - if(user == loc) //If player is holding the welder - user.AddLuminosity(-light_intensity) - SetLuminosity(0) - else - SetLuminosity(0) + set_light(0) force = 3 damtype = "brute" @@ -515,24 +514,9 @@ update_icon() -/obj/item/weapon/weldingtool/pickup(mob/user) - ..() - if(welding) - SetLuminosity(0) - user.AddLuminosity(light_intensity) - - -/obj/item/weapon/weldingtool/dropped(mob/user) - ..() - if(welding) - if(user) - user.AddLuminosity(-light_intensity) - SetLuminosity(light_intensity) - - /obj/item/weapon/weldingtool/examine(mob/user) ..() - user << "It contains [get_fuel()] unit\s of fuel out of [max_fuel]." + to_chat(user, "It contains [get_fuel()] unit\s of fuel out of [max_fuel].") /obj/item/weapon/weldingtool/is_hot() return welding * heat @@ -544,13 +528,13 @@ /obj/item/weapon/weldingtool/proc/flamethrower_screwdriver(obj/item/I, mob/user) if(welding) - user << "Turn it off first!" + to_chat(user, "Turn it off first!") return status = !status if(status) - user << "You resecure [src]." + to_chat(user, "You resecure [src].") else - user << "[src] can now be attached and modified." + to_chat(user, "[src] can now be attached and modified.") add_fingerprint(user) /obj/item/weapon/weldingtool/proc/flamethrower_rods(obj/item/I, mob/user) @@ -562,10 +546,10 @@ user.transferItemToLoc(src, F, TRUE) F.weldtool = src add_fingerprint(user) - user << "You add a rod to a welder, starting to build a flamethrower." + to_chat(user, "You add a rod to a welder, starting to build a flamethrower.") user.put_in_hands(F) else - user << "You need one rod to start building a flamethrower!" + to_chat(user, "You need one rod to start building a flamethrower!") /obj/item/weapon/weldingtool/ignition_effect(atom/A, mob/user) if(welding && remove_fuel(1, user)) @@ -644,6 +628,7 @@ /obj/item/weapon/weldingtool/experimental/brass name = "brass welding tool" desc = "A brass welder that seems to constantly refuel itself. It is faintly warm to the touch." + resistance_flags = FIRE_PROOF | ACID_PROOF icon_state = "brasswelder" item_state = "brasswelder" @@ -688,6 +673,7 @@ /obj/item/weapon/crowbar/brass name = "brass crowbar" desc = "A brass crowbar. It feels faintly warm to the touch." + resistance_flags = FIRE_PROOF | ACID_PROOF icon_state = "crowbar_brass" toolspeed = 0.5 @@ -738,6 +724,6 @@ /obj/item/weapon/crowbar/power/attack_self(mob/user) playsound(get_turf(user), 'sound/items/change_jaws.ogg', 50, 1) var/obj/item/weapon/wirecutters/power/cutjaws = new /obj/item/weapon/wirecutters/power - user << "You attach the cutting jaws to [src]." + to_chat(user, "You attach the cutting jaws to [src].") qdel(src) user.put_in_active_hand(cutjaws) diff --git a/code/game/objects/items/weapons/twohanded.dm b/code/game/objects/items/weapons/twohanded.dm index 582e71e3e6..0b36647b98 100644 --- a/code/game/objects/items/weapons/twohanded.dm +++ b/code/game/objects/items/weapons/twohanded.dm @@ -43,9 +43,9 @@ update_icon() if(show_message) if(iscyborg(user)) - user << "You free up your module." + to_chat(user, "You free up your module.") else - user << "You are now carrying [src] with one hand." + to_chat(user, "You are now carrying [src] with one hand.") if(unwieldsound) playsound(loc, unwieldsound, 50, 1) var/obj/item/weapon/twohanded/offhand/O = user.get_inactive_held_item() @@ -57,13 +57,13 @@ if(wielded) return if(ismonkey(user)) - user << "It's too heavy for you to wield fully." + to_chat(user, "It's too heavy for you to wield fully.") return if(user.get_inactive_held_item()) - user << "You need your other hand to be empty!" + to_chat(user, "You need your other hand to be empty!") return if(user.get_num_arms() < 2) - user << "You don't have enough hands." + to_chat(user, "You don't have enough hands.") return wielded = 1 if(force_wielded) @@ -71,9 +71,9 @@ name = "[name] (Wielded)" update_icon() if(iscyborg(user)) - user << "You dedicate your module to [src]." + to_chat(user, "You dedicate your module to [src].") else - user << "You grab [src] with both hands." + to_chat(user, "You grab [src] with both hands.") if (wieldsound) playsound(loc, wieldsound, 50, 1) var/obj/item/weapon/twohanded/offhand/O = new(user) ////Let's reserve his other hand~ @@ -150,7 +150,7 @@ /obj/item/weapon/twohanded/required/mob_can_equip(mob/M, mob/equipper, slot, disable_warning = 0) if(wielded && !slot_flags) - M << "[src] is too cumbersome to carry with anything but your hands!" + to_chat(M, "[src] is too cumbersome to carry with anything but your hands!") return 0 return ..() @@ -159,7 +159,7 @@ if(get_dist(src,user) > 1) return if(H != null) - user << "[src] is too cumbersome to carry in one hand!" + to_chat(user, "[src] is too cumbersome to carry in one hand!") return if(src.loc != user) wield(user) @@ -186,7 +186,7 @@ /obj/item/weapon/twohanded/required/unwield(mob/living/carbon/user, show_message = TRUE) if(show_message) - user << "You drop [src]." + to_chat(user, "You drop [src].") ..(user, FALSE) user.dropItemToGround(src) @@ -252,6 +252,7 @@ armour_penetration = 35 origin_tech = "magnets=4;syndicate=5" item_color = "green" + light_color = "#00ff00"//green attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "ripped", "diced", "cut") block_chance = 75 obj_integrity = 200 @@ -259,10 +260,22 @@ armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 100, acid = 70) resistance_flags = FIRE_PROOF var/hacked = 0 + var/brightness_on = 6//TWICE AS BRIGHT AS A REGULAR ESWORD + var/list/possible_colors = list("red", "blue", "green", "purple") -/obj/item/weapon/twohanded/dualsaber/New() +/obj/item/weapon/twohanded/dualsaber/Initialize() ..() - item_color = pick("red", "blue", "green", "purple") + if(LAZYLEN(possible_colors)) + item_color = pick(possible_colors) + switch(item_color) + if("red") + light_color = LIGHT_COLOR_RED + if("green") + light_color = LIGHT_COLOR_GREEN + if("blue") + light_color = LIGHT_COLOR_LIGHT_CYAN + if("purple") + light_color = LIGHT_COLOR_LAVENDER /obj/item/weapon/twohanded/dualsaber/Destroy() STOP_PROCESSING(SSobj, src) @@ -278,7 +291,7 @@ /obj/item/weapon/twohanded/dualsaber/attack(mob/target, mob/living/carbon/human/user) if(user.has_dna()) if(user.dna.check_mutation(HULK)) - user << "You grip the blade too hard and accidentally close it!" + to_chat(user, "You grip the blade too hard and accidentally close it!") unwield() return ..() @@ -289,14 +302,14 @@ INVOKE_ASYNC(src, .proc/jedi_spin, user) /obj/item/weapon/twohanded/dualsaber/proc/jedi_spin(mob/living/user) - for(var/i in list(1,2,4,8,4,2,1,2,4,8,4,2)) + for(var/i in list(NORTH,SOUTH,EAST,WEST,EAST,SOUTH,NORTH,SOUTH,EAST,WEST,EAST,SOUTH)) user.setDir(i) - if(i == 8) + if(i == WEST) user.emote("flip") sleep(1) /obj/item/weapon/twohanded/dualsaber/proc/impale(mob/living/user) - user << "You twirl around a bit before losing your balance and impaling yourself on [src]." + to_chat(user, "You twirl around a bit before losing your balance and impaling yourself on [src].") if (force_wielded) user.take_bodypart_damage(20,25) else @@ -309,13 +322,13 @@ /obj/item/weapon/twohanded/dualsaber/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) //In case thats just so happens that it is still activated on the groud, prevents hulk from picking it up if(wielded) - user << "You can't pick up such dangerous item with your meaty hands without losing fingers, better not to!" + to_chat(user, "You can't pick up such dangerous item with your meaty hands without losing fingers, better not to!") return 1 /obj/item/weapon/twohanded/dualsaber/wield(mob/living/carbon/M) //Specific wield () hulk checks due to reflection chance for balance issues and switches hitsounds. if(M.has_dna()) if(M.dna.check_mutation(HULK)) - M << "You lack the grace to wield this!" + to_chat(M, "You lack the grace to wield this!") return ..() if(wielded) @@ -323,6 +336,7 @@ w_class = w_class_on hitsound = 'sound/weapons/blade1.ogg' START_PROCESSING(SSobj, src) + set_light(brightness_on) /obj/item/weapon/twohanded/dualsaber/unwield() //Specific unwield () to switch hitsounds. sharpness = initial(sharpness) @@ -330,9 +344,12 @@ ..() hitsound = "swing_hit" STOP_PROCESSING(SSobj, src) + set_light(0) /obj/item/weapon/twohanded/dualsaber/process() if(wielded) + if(hacked) + light_color = pick(LIGHT_COLOR_RED, LIGHT_COLOR_GREEN, LIGHT_COLOR_LIGHT_CYAN, LIGHT_COLOR_LAVENDER) open_flame() else STOP_PROCESSING(SSobj, src) @@ -356,21 +373,27 @@ // Light your candles while spinning around the room INVOKE_ASYNC(src, .proc/jedi_spin, user) -/obj/item/weapon/twohanded/dualsaber/green/New() - item_color = "green" +/obj/item/weapon/twohanded/dualsaber/green + possible_colors = list("green") -/obj/item/weapon/twohanded/dualsaber/red/New() - item_color = "red" +/obj/item/weapon/twohanded/dualsaber/red + possible_colors = list("red") + +/obj/item/weapon/twohanded/dualsaber/blue + possible_colors = list("blue") + +/obj/item/weapon/twohanded/dualsaber/purple + possible_colors = list("purple") /obj/item/weapon/twohanded/dualsaber/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/device/multitool)) if(hacked == 0) hacked = 1 - user << "2XRNBW_ENGAGE" + to_chat(user, "2XRNBW_ENGAGE") item_color = "rainbow" update_icon() else - user << "It's starting to look like a triple rainbow - no, nevermind." + to_chat(user, "It's starting to look like a triple rainbow - no, nevermind.") else return ..() @@ -434,10 +457,14 @@ src.war_cry = input /obj/item/weapon/twohanded/spear/CheckParts(list/parts_list) + var/obj/item/weapon/twohanded/spear/S = locate() in parts_list + if(S) + if(S.explosive) + S.explosive.forceMove(get_turf(src)) + S.explosive = null + parts_list -= S + qdel(S) ..() - if(explosive) - explosive.loc = get_turf(src.loc) - explosive = null var/obj/item/weapon/grenade/G = locate() in contents if(G) explosive = G @@ -467,7 +494,7 @@ /obj/item/weapon/twohanded/required/chainsaw/attack_self(mob/user) on = !on - user << "As you pull the starting cord dangling from [src], [on ? "it begins to whirr." : "the chain stops moving."]" + to_chat(user, "As you pull the starting cord dangling from [src], [on ? "it begins to whirr." : "the chain stops moving."]") force = on ? force_on : initial(force) throwforce = on ? force_on : initial(force) icon_state = "chainsaw_[on ? "on" : "off"]" @@ -551,6 +578,9 @@ force_unwielded = 19 force_wielded = 25 +/obj/item/weapon/twohanded/pitchfork/demonic/Initialize() + set_light(3,6,LIGHT_COLOR_RED) + /obj/item/weapon/twohanded/pitchfork/demonic/greater force = 24 throwforce = 50 @@ -584,10 +614,21 @@ /obj/item/weapon/twohanded/pitchfork/demonic/attack(mob/target, mob/living/carbon/human/user) if(user.mind && !user.mind.devilinfo && (user.mind.soulOwner != user.mind)) - user << "[src] burns in your hands." + to_chat(user, "[src] burns in your hands.") user.apply_damage(rand(force/2, force), BURN, pick("l_arm", "r_arm")) ..() +/obj/item/weapon/twohanded/pitchfork/demonic/ascended/afterattack(atom/target, mob/user, proximity) + if(!proximity || !wielded) + return + if(istype(target, /turf/closed/wall)) + var/turf/closed/wall/W = target + user.visible_message("[user] blasts \the [target] with \the [src]!") + playsound(target, 'sound/magic/Disintegrate.ogg', 100, 1) + W.break_wall() + return 1 + ..() + //HF blade /obj/item/weapon/twohanded/vibro_weapon diff --git a/code/game/objects/items/weapons/vending_items.dm b/code/game/objects/items/weapons/vending_items.dm index 248a39f9da..74ab7be4b6 100644 --- a/code/game/objects/items/weapons/vending_items.dm +++ b/code/game/objects/items/weapons/vending_items.dm @@ -25,12 +25,12 @@ /obj/item/weapon/vending_refill/examine(mob/user) ..() if(charges[1] > 0) - user << "It can restock [charges[1]+charges[2]+charges[3]] item(s)." + to_chat(user, "It can restock [charges[1]+charges[2]+charges[3]] item(s).") else - user << "It's empty!" + to_chat(user, "It's empty!") //NOTE I decided to go for about 1/3 of a machine's capacity -//^ Your ideas suck. Why not just make it automatic? + /obj/item/weapon/vending_refill/boozeomat machine_name = "Booze-O-Mat" icon_state = "refill_booze" @@ -51,8 +51,8 @@ /obj/item/weapon/vending_refill/cola machine_name = "Robust Softdrinks" icon_state = "refill_cola" - charges = list(20, 2, 1)//of 60 standard, 6 contraband, 1 premium - init_charges = list(20, 2, 1) + charges = list(30, 4, 1)//of 90 standard, 12 contraband, 1 premium + init_charges = list(30, 4, 1) /obj/item/weapon/vending_refill/cigarette machine_name = "ShadyCigs Deluxe" @@ -63,29 +63,11 @@ /obj/item/weapon/vending_refill/autodrobe machine_name = "AutoDrobe" icon_state = "refill_costume" - charges = list(54, 23, 3)// of 94 standard, 6 contraband, 9 premium - init_charges = list(54, 23, 3) + charges = list(31, 2, 3)// of 94 standard, 6 contraband, 9 premium + init_charges = list(27, 2, 3) /obj/item/weapon/vending_refill/clothing machine_name = "ClothesMate" icon_state = "refill_clothes" - charges = list(42, 13, 4)// of 109 standard, 12 contraband, 10 premium(?) (someone fucked this number up, who wants to recount?) - init_charges = list(42, 13, 4) - -/obj/item/weapon/vending_refill/kink - machine_name = "KinkMate" - icon_state = "refill_kink" - charges = list(8, 5, 0)// of 20 standard, 12 contraband, 0 premium - init_charges = list(8, 5, 0) - -/obj/item/weapon/vending_refill/nazi - machine_name = "nazivend" - icon_state = "refill_nazi" - charges = list(33, 13, 0) - init_charges = list(33, 13, 0) - -/obj/item/weapon/vending_refill/soviet - machine_name = "sovietvend" - icon_state = "refill_soviet" - charges = list(47, 7, 0) - init_charges = list(47, 7, 0) \ No newline at end of file + charges = list(31, 4, 4)// of 101 standard, 12 contraband, 10 premium(?) + init_charges = list(31, 4, 4) diff --git a/code/game/objects/items/weapons/weaponry.dm b/code/game/objects/items/weapons/weaponry.dm index 117888a48d..6fb24651b9 100644 --- a/code/game/objects/items/weapons/weaponry.dm +++ b/code/game/objects/items/weapons/weaponry.dm @@ -21,8 +21,8 @@ return (BRUTELOSS|FIRELOSS|TOXLOSS|OXYLOSS) /obj/item/weapon/banhammer/attack(mob/M, mob/user) - M << " You have been banned FOR NO REISIN by [user]" - user << "You have BANNED [M]" + to_chat(M, " You have been banned FOR NO REISIN by [user]") + to_chat(user, "You have BANNED [M]") playsound(loc, 'sound/effects/adminhelp.ogg', 15) //keep it at 15% volume so people don't jump out of their skin too much /obj/item/weapon/sord @@ -98,7 +98,7 @@ /obj/item/weapon/claymore/highlander/pickup(mob/living/user) - user << "The power of Scotland protects you! You are shielded from all stuns and knockdowns." + to_chat(user, "The power of Scotland protects you! You are shielded from all stuns and knockdowns.") user.add_stun_absorption("highlander", INFINITY, 1, " is protected by the power of Scotland!", "The power of Scotland absorbs the stun!", " is protected by the power of Scotland!") user.status_flags += IGNORESLOWDOWN @@ -108,9 +108,9 @@ /obj/item/weapon/claymore/highlander/examine(mob/user) ..() - user << "It has [!notches ? "nothing" : "[notches] notches"] scratched into the blade." + to_chat(user, "It has [!notches ? "nothing" : "[notches] notches"] scratched into the blade.") if(nuke_disk) - user << "It's holding the nuke disk!" + to_chat(user, "It's holding the nuke disk!") /obj/item/weapon/claymore/highlander/attack(mob/living/target, mob/living/user) . = ..() @@ -127,9 +127,9 @@ if(H.client && H.mind.special_role == "highlander" && (!closest_victim || get_dist(user, closest_victim) < closest_distance)) closest_victim = H if(!closest_victim) - user << "[src] thrums for a moment and falls dark. Perhaps there's nobody nearby." + to_chat(user, "[src] thrums for a moment and falls dark. Perhaps there's nobody nearby.") return - user << "[src] thrums and points to the [dir2text(get_dir(user, closest_victim))]." + to_chat(user, "[src] thrums and points to the [dir2text(get_dir(user, closest_victim))].") /obj/item/weapon/claymore/highlander/IsReflect() return 1 //YOU THINK YOUR PUNY LASERS CAN STOP ME? @@ -140,39 +140,39 @@ var/new_name = name switch(notches) if(1) - user << "Your first kill - hopefully one of many. You scratch a notch into [src]'s blade." - user << "You feel your fallen foe's soul entering your blade, restoring your wounds!" + to_chat(user, "Your first kill - hopefully one of many. You scratch a notch into [src]'s blade.") + to_chat(user, "You feel your fallen foe's soul entering your blade, restoring your wounds!") new_name = "notched claymore" if(2) - user << "Another falls before you. Another soul fuses with your own. Another notch in the blade." + to_chat(user, "Another falls before you. Another soul fuses with your own. Another notch in the blade.") new_name = "double-notched claymore" add_atom_colour(rgb(255, 235, 235), ADMIN_COLOUR_PRIORITY) if(3) - user << "You're beginning to relish the thrill of battle." + to_chat(user, "You're beginning to relish the thrill of battle.") new_name = "triple-notched claymore" add_atom_colour(rgb(255, 215, 215), ADMIN_COLOUR_PRIORITY) if(4) - user << "You've lost count of how many you've killed." + to_chat(user, "You've lost count of how many you've killed.") new_name = "many-notched claymore" add_atom_colour(rgb(255, 195, 195), ADMIN_COLOUR_PRIORITY) if(5) - user << "Five voices now echo in your mind, cheering the slaughter." + to_chat(user, "Five voices now echo in your mind, cheering the slaughter.") new_name = "battle-tested claymore" add_atom_colour(rgb(255, 175, 175), ADMIN_COLOUR_PRIORITY) if(6) - user << "Is this what the vikings felt like? Visions of glory fill your head as you slay your sixth foe." + to_chat(user, "Is this what the vikings felt like? Visions of glory fill your head as you slay your sixth foe.") new_name = "battle-scarred claymore" add_atom_colour(rgb(255, 155, 155), ADMIN_COLOUR_PRIORITY) if(7) - user << "Kill. Butcher. Conquer." + to_chat(user, "Kill. Butcher. Conquer.") new_name = "vicious claymore" add_atom_colour(rgb(255, 135, 135), ADMIN_COLOUR_PRIORITY) if(8) - user << "IT NEVER GETS OLD. THE SCREAMING. THE BLOOD AS IT SPRAYS ACROSS YOUR FACE." + to_chat(user, "IT NEVER GETS OLD. THE SCREAMING. THE BLOOD AS IT SPRAYS ACROSS YOUR FACE.") new_name = "bloodthirsty claymore" add_atom_colour(rgb(255, 115, 115), ADMIN_COLOUR_PRIORITY) if(9) - user << "ANOTHER ONE FALLS TO YOUR BLOWS. ANOTHER WEAKLING UNFIT TO LIVE." + to_chat(user, "ANOTHER ONE FALLS TO YOUR BLOWS. ANOTHER WEAKLING UNFIT TO LIVE.") new_name = "gore-stained claymore" add_atom_colour(rgb(255, 95, 95), ADMIN_COLOUR_PRIORITY) if(10) @@ -234,14 +234,14 @@ qdel(src) user.put_in_hands(S) - user << "You fasten the glass shard to the top of the rod with the cable." + to_chat(user, "You fasten the glass shard to the top of the rod with the cable.") else if(istype(I, /obj/item/device/assembly/igniter) && !(I.flags & NODROP)) var/obj/item/weapon/melee/baton/cattleprod/P = new /obj/item/weapon/melee/baton/cattleprod remove_item_from_storage(user) - user << "You fasten [I] to the top of the rod with the cable." + to_chat(user, "You fasten [I] to the top of the rod with the cable.") qdel(I) qdel(src) @@ -470,13 +470,13 @@ ..() return if(homerun_ready) - user << "You're already ready to do a home run!" + to_chat(user, "You're already ready to do a home run!") ..() return - user << "You begin gathering strength..." + to_chat(user, "You begin gathering strength...") playsound(get_turf(src), 'sound/magic/lightning_chargeup.ogg', 65, 1) if(do_after(user, 90, target = src)) - user << "You gather power! Time for a home run!" + to_chat(user, "You gather power! Time for a home run!") homerun_ready = 1 ..() @@ -538,7 +538,7 @@ if(proximity_flag) if(is_type_in_typecache(target, strong_against)) new /obj/effect/decal/cleanable/deadcockroach(get_turf(target)) - user << "You easily splat the [target]." + to_chat(user, "You easily splat the [target].") if(istype(target, /mob/living/)) var/mob/living/bug = target bug.death(1) diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 6b4d541797..905d3646e5 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -24,11 +24,10 @@ var/force_blueprints = FALSE //forces the obj to be on the blueprints, regardless of when it was created. var/persistence_replacement = null //have something WAY too amazing to live to the next round? Set a new path here. Overuse of this var will make me upset. - var/is_frozen = FALSE var/unique_rename = 0 // can you customize the description/name of the thing? -/obj/New() +/obj/Initialize() ..() if (!armor) armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) @@ -39,16 +38,16 @@ else T.add_blueprints_preround(src) -/obj/Destroy() +/obj/Destroy(force=FALSE) if(!istype(src, /obj/machinery)) STOP_PROCESSING(SSobj, src) // TODO: Have a processing bitflag to reduce on unnecessary loops through the processing lists SStgui.close_uis(src) - return ..() + . = ..() /obj/throw_at(atom/target, range, speed, mob/thrower, spin=1, diagonals_first = 0, datum/callback/callback) ..() - if(is_frozen) - visible_message("[src] shatters into a million pieces!") + if(HAS_SECONDARY_FLAG(src, FROZEN)) + visible_message("[src] shatters into a million pieces!") qdel(src) /obj/assume_air(datum/gas_mixture/giver) @@ -69,14 +68,6 @@ else return null -/obj/proc/rewrite(mob/user) - var/penchoice = alert("What would you like to edit?", "Rename or change description?", "Rename", "Change description", "Cancel") - if(!QDELETED(src) && user.canUseTopic(src, BE_CLOSE)) - if(penchoice == "Rename") - rename_obj(user) - if(penchoice == "Change description") - redesc_obj(user) - /obj/proc/handle_internal_lifeform(mob/lifeform_inside_me, breath_request) //Return: (NONSTANDARD) // null if object handles breathing logic for lifeform @@ -200,29 +191,4 @@ /obj/examine(mob/user) ..() if(unique_rename) - user << "Use a pen on it to rename it or change its description." - -/obj/proc/rename_obj(mob/M) - var/input = stripped_input(M,"What do you want to name \the [name]?", ,"", MAX_NAME_LEN) - var/oldname = name - - if(!QDELETED(src) && M.canUseTopic(src, BE_CLOSE) && input != "") - if(oldname == input) - M << "You changed \the [name] to... well... \the [name]." - return - else - name = input - M << "\The [oldname] has been successfully been renamed to \the [input]." - return - else - return - -/obj/proc/redesc_obj(mob/M) - var/input = stripped_input(M,"Describe \the [name] here", ,"", 100) - - if(!QDELETED(src) && M.canUseTopic(src, BE_CLOSE) && input != "") - desc = input - M << "You have successfully changed \the [name]'s description." - return - else - return \ No newline at end of file + to_chat(user, "Use a pen on it to rename it or change its description.") diff --git a/code/game/objects/radiation.dm b/code/game/objects/radiation.dm index 7befcdd3a1..1b522d6971 100644 --- a/code/game/objects/radiation.dm +++ b/code/game/objects/radiation.dm @@ -34,7 +34,7 @@ var/blocked = getarmor(null, "rad") if(!silent) - src << "Your skin feels warm." + to_chat(src, "Your skin feels warm.") apply_effect(amount, IRRADIATE, blocked) for(var/obj/I in src) //Radiation is also applied to items held by the mob diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index 97e0c8cd83..e35e3816d6 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -9,7 +9,7 @@ var/mob/structureclimber var/broken = 0 //similar to machinery's stat BROKEN -/obj/structure/New() +/obj/structure/Initialize() if (!armor) armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 50, acid = 50) ..() @@ -23,8 +23,6 @@ /obj/structure/Destroy() if(ticker) cameranet.updateVisibility(src) - if(opacity) - UpdateAffectingLights() if(smooth) queue_smooth_neighbors(src) return ..() @@ -89,19 +87,19 @@ user.Stun(climb_stun) . = 1 else - user << "You fail to climb onto [src]." + to_chat(user, "You fail to climb onto [src].") structureclimber = null /obj/structure/examine(mob/user) ..() if(!(resistance_flags & INDESTRUCTIBLE)) if(resistance_flags & ON_FIRE) - user << "It's on fire!" + to_chat(user, "It's on fire!") if(broken) - user << "It looks broken." + to_chat(user, "It looks broken.") var/examine_status = examine_status(user) if(examine_status) - user << examine_status + to_chat(user, examine_status) /obj/structure/proc/examine_status(mob/user) //An overridable proc, mostly for falsewalls. var/healthpercent = (obj_integrity/max_integrity) * 100 diff --git a/code/game/objects/structures/ai_core.dm b/code/game/objects/structures/ai_core.dm index 72e5672cc1..0fa60d55a9 100644 --- a/code/game/objects/structures/ai_core.dm +++ b/code/game/objects/structures/ai_core.dm @@ -30,16 +30,16 @@ if(!anchored) if(istype(P, /obj/item/weapon/weldingtool)) if(state != EMPTY_CORE) - user << "The core must be empty to deconstruct it!" + to_chat(user, "The core must be empty to deconstruct it!") return var/obj/item/weapon/weldingtool/WT = P if(!WT.isOn()) - user << "The welder must be on for this task!" + to_chat(user, "The welder must be on for this task!") return playsound(loc, WT.usesound, 50, 1) - user << "You start to deconstruct the frame..." + to_chat(user, "You start to deconstruct the frame...") if(do_after(user, 20*P.toolspeed, target = src) && src && state == EMPTY_CORE && WT && WT.remove_fuel(0, user)) - user << "You deconstruct the frame." + to_chat(user, "You deconstruct the frame.") deconstruct(TRUE) return else @@ -49,7 +49,7 @@ if(!user.drop_item()) return playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You place the circuit board inside the frame." + to_chat(user, "You place the circuit board inside the frame.") update_icon() state = CIRCUIT_CORE circuit = P @@ -58,13 +58,13 @@ if(CIRCUIT_CORE) if(istype(P, /obj/item/weapon/screwdriver)) playsound(loc, P.usesound, 50, 1) - user << "You screw the circuit board into place." + to_chat(user, "You screw the circuit board into place.") state = SCREWED_CORE update_icon() return if(istype(P, /obj/item/weapon/crowbar)) playsound(loc, P.usesound, 50, 1) - user << "You remove the circuit board." + to_chat(user, "You remove the circuit board.") state = EMPTY_CORE update_icon() circuit.forceMove(loc) @@ -73,7 +73,7 @@ if(SCREWED_CORE) if(istype(P, /obj/item/weapon/screwdriver) && circuit) playsound(loc, P.usesound, 50, 1) - user << "You unfasten the circuit board." + to_chat(user, "You unfasten the circuit board.") state = CIRCUIT_CORE update_icon() return @@ -81,21 +81,21 @@ var/obj/item/stack/cable_coil/C = P if(C.get_amount() >= 5) playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You start to add cables to the frame..." + to_chat(user, "You start to add cables to the frame...") if(do_after(user, 20, target = src) && state == SCREWED_CORE && C.use(5)) - user << "You add cables to the frame." + to_chat(user, "You add cables to the frame.") state = CABLED_CORE update_icon() else - user << "You need five lengths of cable to wire the AI core!" + to_chat(user, "You need five lengths of cable to wire the AI core!") return if(CABLED_CORE) if(istype(P, /obj/item/weapon/wirecutters)) if(brain) - user << "Get that [brain.name] out of there first!" + to_chat(user, "Get that [brain.name] out of there first!") else playsound(loc, P.usesound, 50, 1) - user << "You remove the cables." + to_chat(user, "You remove the cables.") state = SCREWED_CORE update_icon() var/obj/item/stack/cable_coil/A = new /obj/item/stack/cable_coil( loc ) @@ -106,18 +106,18 @@ var/obj/item/stack/sheet/rglass/G = P if(G.get_amount() >= 2) playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You start to put in the glass panel..." + to_chat(user, "You start to put in the glass panel...") if(do_after(user, 20, target = src) && state == CABLED_CORE && G.use(2)) - user << "You put in the glass panel." + to_chat(user, "You put in the glass panel.") state = GLASS_CORE update_icon() else - user << "You need two sheets of reinforced glass to insert them into the AI core!" + to_chat(user, "You need two sheets of reinforced glass to insert them into the AI core!") return if(istype(P, /obj/item/weapon/aiModule)) if(brain && brain.laws.id != DEFAULT_AI_LAWID) - user << "The installed [brain.name] already has set laws!" + to_chat(user, "The installed [brain.name] already has set laws!") return var/obj/item/weapon/aiModule/module = P module.install(laws, user) @@ -126,22 +126,22 @@ if(istype(P, /obj/item/device/mmi) && !brain) var/obj/item/device/mmi/M = P if(!M.brainmob) - user << "Sticking an empty [M.name] into the frame would sort of defeat the purpose!" + to_chat(user, "Sticking an empty [M.name] into the frame would sort of defeat the purpose!") return if(M.brainmob.stat == DEAD) - user << "Sticking a dead [M.name] into the frame would sort of defeat the purpose!" + to_chat(user, "Sticking a dead [M.name] into the frame would sort of defeat the purpose!") return if(!M.brainmob.client) - user << "Sticking an inactive [M.name] into the frame would sort of defeat the purpose." + to_chat(user, "Sticking an inactive [M.name] into the frame would sort of defeat the purpose.") return if((config) && (!config.allow_ai) || jobban_isbanned(M.brainmob, "AI")) - user << "This [M.name] does not seem to fit!" + to_chat(user, "This [M.name] does not seem to fit!") return if(!M.brainmob.mind) - user << "This [M.name] is mindless!" + to_chat(user, "This [M.name] is mindless!") return if(!user.drop_item()) @@ -149,13 +149,13 @@ M.forceMove(src) brain = M - user << "You add [M.name] to the frame." + to_chat(user, "You add [M.name] to the frame.") update_icon() return if(istype(P, /obj/item/weapon/crowbar) && brain) playsound(loc, P.usesound, 50, 1) - user << "You remove the brain." + to_chat(user, "You remove the brain.") brain.forceMove(loc) brain = null update_icon() @@ -164,7 +164,7 @@ if(GLASS_CORE) if(istype(P, /obj/item/weapon/crowbar)) playsound(loc, P.usesound, 50, 1) - user << "You remove the glass panel." + to_chat(user, "You remove the glass panel.") state = CABLED_CORE update_icon() new /obj/item/stack/sheet/rglass(loc, 2) @@ -172,7 +172,7 @@ if(istype(P, /obj/item/weapon/screwdriver)) playsound(loc, P.usesound, 50, 1) - user << "You connect the monitor." + to_chat(user, "You connect the monitor.") if(brain) ticker.mode.remove_antag_for_borging(brain.brainmob.mind) if(!istype(brain.laws, /datum/ai_laws/ratvar)) @@ -194,7 +194,7 @@ if(istype(P, /obj/item/weapon/screwdriver)) playsound(loc, P.usesound, 50, 1) - user << "You disconnect the monitor." + to_chat(user, "You disconnect the monitor.") state = GLASS_CORE update_icon() return @@ -251,7 +251,7 @@ That prevents a few funky behaviors. /atom/proc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/device/aicard/card) if(istype(card)) if(card.flush) - user << "ERROR: AI flush is in progress, cannot execute transfer protocol." + to_chat(user, "ERROR: AI flush is in progress, cannot execute transfer protocol.") return 0 return 1 @@ -264,12 +264,12 @@ That prevents a few funky behaviors. AI.control_disabled = 0 AI.radio_enabled = 1 AI.forceMove(loc) // to replace the terminal. - AI << "You have been uploaded to a stationary terminal. Remote device connection restored." - user << "Transfer successful: [AI.name] ([rand(1000,9999)].exe) installed and executed successfully. Local copy has been removed." + 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 qdel(src) else //If for some reason you use an empty card on an empty AI terminal. - user << "There is no AI loaded on this terminal!" + to_chat(user, "There is no AI loaded on this terminal!") /obj/item/weapon/circuitboard/aicore diff --git a/code/game/objects/structures/aliens.dm b/code/game/objects/structures/aliens.dm index ad1bc4ebd7..3150d69013 100644 --- a/code/game/objects/structures/aliens.dm +++ b/code/game/objects/structures/aliens.dm @@ -171,7 +171,7 @@ name = "glowing resin" desc = "Blue bioluminescence shines from beneath the surface." icon_state = "weednode" - luminosity = 1 + light_range = 1 var/node_range = NODERANGE /obj/structure/alien/weeds/node/New() @@ -238,19 +238,19 @@ if(user.getorgan(/obj/item/organ/alien/plasmavessel)) switch(status) if(BURST) - user << "You clear the hatched egg." + to_chat(user, "You clear the hatched egg.") playsound(loc, 'sound/effects/attackblob.ogg', 100, 1) qdel(src) return if(GROWING) - user << "The child is not developed yet." + to_chat(user, "The child is not developed yet.") return if(GROWN) - user << "You retrieve the child." + to_chat(user, "You retrieve the child.") Burst(0) return else - user << "It feels slimy." + to_chat(user, "It feels slimy.") user.changeNext_move(CLICK_CD_MELEE) diff --git a/code/game/objects/structures/barsigns.dm b/code/game/objects/structures/barsigns.dm index e9094b4172..707702d9a7 100644 --- a/code/game/objects/structures/barsigns.dm +++ b/code/game/objects/structures/barsigns.dm @@ -70,10 +70,10 @@ /obj/structure/sign/barsign/attack_hand(mob/user) if (!src.allowed(user)) - user << "Access denied." + to_chat(user, "Access denied.") return if (broken) - user << "The controls seem unresponsive." + to_chat(user, "The controls seem unresponsive.") return pick_sign() @@ -83,14 +83,14 @@ /obj/structure/sign/barsign/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/weapon/screwdriver)) if(!allowed(user)) - user << "Access denied." + to_chat(user, "Access denied.") return if(!panel_open) - user << "You open the maintenance panel." + to_chat(user, "You open the maintenance panel.") set_sign(new /datum/barsign/hiddensigns/signoff) panel_open = 1 else - user << "You close the maintenance panel." + to_chat(user, "You close the maintenance panel.") if(!broken && !emagged) set_sign(pick(barsigns)) else if(emagged) @@ -102,17 +102,17 @@ else if(istype(I, /obj/item/stack/cable_coil) && panel_open) var/obj/item/stack/cable_coil/C = I if(emagged) //Emagged, not broken by EMP - user << "Sign has been damaged beyond repair!" + to_chat(user, "Sign has been damaged beyond repair!") return else if(!broken) - user << "This sign is functioning properly!" + to_chat(user, "This sign is functioning properly!") return if(C.use(2)) - user << "You replace the burnt wiring." + to_chat(user, "You replace the burnt wiring.") broken = 0 else - user << "You need at least two lengths of cable!" + to_chat(user, "You need at least two lengths of cable!") else return ..() @@ -126,9 +126,9 @@ /obj/structure/sign/barsign/emag_act(mob/user) if(broken || emagged) - user << "Nothing interesting happens!" + to_chat(user, "Nothing interesting happens!") return - user << "You emag the barsign. Takeover in progress..." + to_chat(user, "You emag the barsign. Takeover in progress...") sleep(100) //10 seconds set_sign(new /datum/barsign/hiddensigns/syndibarsign) emagged = 1 diff --git a/code/game/objects/structures/beds_chairs/alien_nest.dm b/code/game/objects/structures/beds_chairs/alien_nest.dm index 3010919048..f79e06e92d 100644 --- a/code/game/objects/structures/beds_chairs/alien_nest.dm +++ b/code/game/objects/structures/beds_chairs/alien_nest.dm @@ -40,7 +40,7 @@ "You hear squelching...") if(!do_after(M, 1200, target = src)) if(M && M.buckled) - M << "You fail to unbuckle yourself!" + to_chat(M, "You fail to unbuckle yourself!") return if(!M.buckled) return diff --git a/code/game/objects/structures/beds_chairs/bed.dm b/code/game/objects/structures/beds_chairs/bed.dm index 86b46b499e..757a0bbb8d 100644 --- a/code/game/objects/structures/beds_chairs/bed.dm +++ b/code/game/objects/structures/beds_chairs/bed.dm @@ -53,7 +53,7 @@ if(istype(W,/obj/item/roller/robo)) var/obj/item/roller/robo/R = W if(R.loaded) - user << "You already have a roller bed docked!" + to_chat(user, "You already have a roller bed docked!") return if(has_buckled_mobs()) @@ -78,7 +78,7 @@ if(has_buckled_mobs()) return 0 if(usr.incapacitated()) - usr << "You can't do that right now!" + to_chat(usr, "You can't do that right now!") return 0 usr.visible_message("[usr] collapses \the [src.name].", "You collapse \the [src.name].") var/obj/structure/bed/roller/B = new foldabletype(get_turf(src)) @@ -108,7 +108,7 @@ if(istype(I, /obj/item/roller/robo)) var/obj/item/roller/robo/R = I if(R.loaded) - user << "[R] already has a roller bed loaded!" + to_chat(user, "[R] already has a roller bed loaded!") return user.visible_message("[user] loads [src].", "You load [src] into [R].") R.loaded = new/obj/structure/bed/roller(R) @@ -141,7 +141,7 @@ /obj/item/roller/robo/examine(mob/user) ..() - user << "The dock is [loaded ? "loaded" : "empty"]" + to_chat(user, "The dock is [loaded ? "loaded" : "empty"]") /obj/item/roller/robo/deploy_roller(mob/user, atom/location) if(loaded) @@ -150,7 +150,7 @@ user.visible_message("[user] deploys [loaded].", "You deploy [loaded].") loaded = null else - user << "The dock is empty!" + to_chat(user, "The dock is empty!") //Dog bed diff --git a/code/game/objects/structures/beds_chairs/chair.dm b/code/game/objects/structures/beds_chairs/chair.dm index 7d16603cf1..990f22edf8 100644 --- a/code/game/objects/structures/beds_chairs/chair.dm +++ b/code/game/objects/structures/beds_chairs/chair.dm @@ -15,6 +15,18 @@ var/item_chair = /obj/item/chair // if null it can't be picked up layer = OBJ_LAYER +/obj/structure/chair/Initialize() + ..() + if(!anchored) //why would you put these on the shuttle? + addtimer(CALLBACK(src, .proc/RemoveFromLatejoin), 0) + +/obj/structure/chair/Destroy() + RemoveFromLatejoin() + return ..() + +/obj/structure/chair/proc/RemoveFromLatejoin() + latejoin -= src //These may be here due to the arrivals shuttle + /obj/structure/chair/deconstruct() // If we have materials, and don't have the NOCONSTRUCT flag if(buildstacktype && (!(flags & NODECONSTRUCT))) @@ -95,7 +107,7 @@ /obj/structure/chair/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return @@ -136,11 +148,15 @@ var/image/armrest = null item_chair = null -/obj/structure/chair/comfy/New() +/obj/structure/chair/comfy/Initialize() armrest = image("icons/obj/chairs.dmi", "comfychair_armrest") armrest.layer = ABOVE_MOB_LAYER return ..() +/obj/structure/chair/comfy/Destroy() + QDEL_NULL(armrest) + return ..() + /obj/structure/chair/comfy/post_buckle_mob(mob/living/M) ..() if(has_buckled_mobs()) @@ -194,7 +210,7 @@ if(!item_chair || !usr.can_hold_items() || has_buckled_mobs() || src.flags & NODECONSTRUCT) return if(usr.incapacitated()) - usr << "You can't do that right now!" + to_chat(usr, "You can't do that right now!") return usr.visible_message("[usr] grabs \the [src.name].", "You grab \the [src.name].") var/C = new item_chair(loc) @@ -234,10 +250,10 @@ /obj/item/chair/proc/plant(mob/user) for(var/obj/A in get_turf(loc)) if(istype(A,/obj/structure/chair)) - user << "There is already a chair here." + to_chat(user, "There is already a chair here.") return if(A.density && !(A.flags & ON_BORDER)) - user << "There is already something here." + to_chat(user, "There is already something here.") return user.visible_message("[user] rights \the [src.name].", "You right \the [name].") diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm index ba178ad78c..6813706ed6 100644 --- a/code/game/objects/structures/bedsheet_bin.dm +++ b/code/game/objects/structures/bedsheet_bin.dm @@ -29,10 +29,10 @@ LINEN BINS user.drop_item() if(layer == initial(layer)) layer = ABOVE_MOB_LAYER - user << "You cover yourself with [src]." + to_chat(user, "You cover yourself with [src].") else layer = initial(layer) - user << "You smooth [src] out beneath you." + to_chat(user, "You smooth [src] out beneath you.") add_fingerprint(user) return @@ -42,7 +42,7 @@ LINEN BINS transfer_fingerprints_to(C) C.add_fingerprint(user) qdel(src) - user << "You tear [src] up." + to_chat(user, "You tear [src] up.") else return ..() @@ -216,11 +216,11 @@ LINEN BINS /obj/structure/bedsheetbin/examine(mob/user) ..() if(amount < 1) - user << "There are no bed sheets in the bin." + to_chat(user, "There are no bed sheets in the bin.") else if(amount == 1) - user << "There is one bed sheet in the bin." + to_chat(user, "There is one bed sheet in the bin.") else - user << "There are [amount] bed sheets in the bin." + to_chat(user, "There are [amount] bed sheets in the bin.") /obj/structure/bedsheetbin/update_icon() @@ -245,15 +245,15 @@ LINEN BINS I.loc = src sheets.Add(I) amount++ - user << "You put [I] in [src]." + to_chat(user, "You put [I] in [src].") update_icon() else if(amount && !hidden && I.w_class < WEIGHT_CLASS_BULKY) //make sure there's sheets to hide it among, make sure nothing else is hidden in there. if(!user.drop_item()) - user << "\The [I] is stuck to your hand, you cannot hide it among the sheets!" + to_chat(user, "\The [I] is stuck to your hand, you cannot hide it among the sheets!") return I.loc = src hidden = I - user << "You hide [I] among the sheets." + to_chat(user, "You hide [I] among the sheets.") @@ -277,12 +277,12 @@ LINEN BINS B.loc = user.loc user.put_in_hands(B) - user << "You take [B] out of [src]." + to_chat(user, "You take [B] out of [src].") update_icon() if(hidden) hidden.loc = user.loc - user << "[hidden] falls out of [B]!" + to_chat(user, "[hidden] falls out of [B]!") hidden = null @@ -300,7 +300,7 @@ LINEN BINS B = new /obj/item/weapon/bedsheet(loc) B.loc = loc - user << "You telekinetically remove [B] from [src]." + to_chat(user, "You telekinetically remove [B] from [src].") update_icon() if(hidden) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index ca48ec94bb..8317f96225 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -72,11 +72,11 @@ /obj/structure/closet/examine(mob/user) ..() if(anchored) - user << "It is anchored to the ground." + to_chat(user, "It is anchored to the ground.") if(broken) - user << "It appears to be broken." + to_chat(user, "It appears to be broken.") else if(secure && !opened) - user << "Alt-click to [locked ? "unlock" : "lock"]." + to_chat(user, "Alt-click to [locked ? "unlock" : "lock"].") /obj/structure/closet/CanPass(atom/movable/mover, turf/target, height=0) if(height == 0 || wall_mounted) @@ -90,7 +90,7 @@ for(var/mob/living/L in T) if(L.anchored || horizontal && L.mob_size > MOB_SIZE_TINY && L.density) if(user) - user << "There's something large on top of [src], preventing it from opening." //you... think? there's something standing on it ffs + to_chat(user, "There's something large on top of [src], preventing it from opening." ) return 0 return 1 @@ -102,7 +102,7 @@ for(var/mob/living/L in T) if(L.anchored || horizontal && L.mob_size > MOB_SIZE_TINY && L.density) if(user) - user << "There's something too large in [src], preventing it from closing." + to_chat(user, "There's something too large in [src], preventing it from closing.") return 0 return 1 @@ -206,7 +206,7 @@ if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0, user)) - user << "You begin cutting \the [src] apart..." + to_chat(user, "You begin cutting \the [src] apart...") playsound(loc, cutting_sound, 40, 1) if(do_after(user, 40*WT.toolspeed, 1, target = src)) if(!opened || !WT.isOn()) @@ -229,7 +229,7 @@ var/obj/item/weapon/weldingtool/WT = W if(!WT.remove_fuel(0, user)) return - user << "You begin [welded ? "unwelding":"welding"] \the [src]..." + to_chat(user, "You begin [welded ? "unwelding":"welding"] \the [src]...") playsound(loc, 'sound/items/Welder2.ogg', 40, 1) if(do_after(user, 40*WT.toolspeed, 1, target = src)) if(opened || !WT.isOn()) @@ -334,7 +334,7 @@ if(iscarbon(usr) || issilicon(usr) || isdrone(usr)) attack_hand(usr) else - usr << "This mob type can't use this verb." + to_chat(usr, "This mob type can't use this verb.") // Objects that try to exit a locker by stepping were doing so successfully, // and due to an oversight in turf/Enter() were going through walls. That @@ -361,7 +361,7 @@ //okay, so the closet is either welded or locked... resist!!! user.changeNext_move(CLICK_CD_BREAKOUT) user.last_special = world.time + CLICK_CD_BREAKOUT - user << "You lean on the back of [src] and start pushing the door open." + to_chat(user, "You lean on the back of [src] and start pushing the door open.") visible_message("[src] begins to shake violently!") if(do_after(user,(breakout_time * 60 * 10), target = src)) //minutes * 60seconds * 10deciseconds if(!user || user.stat != CONSCIOUS || user.loc != src || opened || (!locked && !welded) ) @@ -372,7 +372,7 @@ bust_open() else if(user.loc == src) //so we don't get the message if we resisted multiple times and succeeded. - user << "You fail to break out of [src]!" + to_chat(user, "You fail to break out of [src]!") /obj/structure/closet/proc/bust_open() welded = 0 //applies to all lockers @@ -383,7 +383,7 @@ /obj/structure/closet/AltClick(mob/user) ..() if(!user.canUseTopic(src, be_close=TRUE)) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(opened || !secure) return @@ -400,9 +400,9 @@ "You [locked ? null : "un"]lock [src].") update_icon() else - user << "Access Denied" + to_chat(user, "Access Denied") else if(secure && broken) - user << "\The [src] is broken!" + to_chat(user, "\The [src] is broken!") /obj/structure/closet/emag_act(mob/user) if(secure && !broken) diff --git a/code/game/objects/structures/crates_lockers/closets/bodybag.dm b/code/game/objects/structures/crates_lockers/closets/bodybag.dm index 033473eed4..0cf4048841 100644 --- a/code/game/objects/structures/crates_lockers/closets/bodybag.dm +++ b/code/game/objects/structures/crates_lockers/closets/bodybag.dm @@ -29,7 +29,7 @@ name = "body bag" return else if(istype(I, /obj/item/weapon/wirecutters)) - user << "You cut the tag off [src]." + to_chat(user, "You cut the tag off [src].") name = "body bag" tagged = 0 update_icon() @@ -77,10 +77,10 @@ if(opened) return 0 if(contents.len >= mob_storage_capacity / 2) - usr << "There are too many things inside of [src] to fold it up!" + to_chat(usr, "There are too many things inside of [src] to fold it up!") return 0 for(var/obj/item/bodybag/bluespace/B in src) - usr << "You can't recursively fold bluespace body bags!" //Nice try + to_chat(usr, "You can't recursively fold bluespace body bags!" ) return 0 visible_message("[usr] folds up [src].") var/obj/item/bodybag/B = new foldedbag_path(get_turf(src)) @@ -88,5 +88,5 @@ for(var/atom/movable/A in contents) A.forceMove(B) if(isliving(A)) - A << "You're suddenly forced into a tiny, compressed space!" + to_chat(A, "You're suddenly forced into a tiny, compressed space!") qdel(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm index cb5ba00aca..10ab9d09f5 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm @@ -39,7 +39,7 @@ var/obj/item/weapon/card/id/I = W.GetID() if(istype(I)) if(broken) - user << "It appears to be broken." + to_chat(user, "It appears to be broken.") return if(!I || !I.registered_name) return @@ -52,6 +52,6 @@ registered_name = I.registered_name desc = "Owned by [I.registered_name]." else - user << "Access Denied." + to_chat(user, "Access Denied.") else return ..() \ No newline at end of file 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 f1994d8262..a0abf38286 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -181,10 +181,7 @@ new /obj/item/weapon/holosign_creator/security(src) new /obj/item/weapon/reagent_containers/spray/pepper(src) new /obj/item/clothing/suit/armor/vest/det_suit(src) - new /obj/item/ammo_box/c38(src) - new /obj/item/ammo_box/c38(src) - new /obj/item/weapon/storage/belt/holster(src) - new /obj/item/weapon/gun/ballistic/revolver/detective(src) + new /obj/item/weapon/storage/belt/holster/full(src) /obj/structure/closet/secure_closet/injection name = "lethal injections" diff --git a/code/game/objects/structures/crates_lockers/closets/statue.dm b/code/game/objects/structures/crates_lockers/closets/statue.dm index 0b7859691a..016ed5a497 100644 --- a/code/game/objects/structures/crates_lockers/closets/statue.dm +++ b/code/game/objects/structures/crates_lockers/closets/statue.dm @@ -51,7 +51,7 @@ if(petrified_mob) S.mind.transfer_to(petrified_mob) petrified_mob.Weaken(5) - petrified_mob << "You slowly come back to your senses. You are in control of yourself again!" + to_chat(petrified_mob, "You slowly come back to your senses. You are in control of yourself again!") qdel(S) for(var/obj/O in src) diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index 3206b14a7a..02394e4d5d 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -45,14 +45,14 @@ /obj/structure/closet/crate/open(mob/living/user) . = ..() if(. && manifest) - user << "The manifest is torn off [src]." + to_chat(user, "The manifest is torn off [src].") playsound(src, 'sound/items/poster_ripped.ogg', 75, 1) manifest.forceMove(get_turf(src)) manifest = null update_icon() /obj/structure/closet/crate/proc/tear_manifest(mob/user) - user << "You tear the manifest off of [src]." + to_chat(user, "You tear the manifest off of [src].") playsound(src, 'sound/items/poster_ripped.ogg', 75, 1) manifest.forceMove(loc) diff --git a/code/game/objects/structures/crates_lockers/crates/bins.dm b/code/game/objects/structures/crates_lockers/crates/bins.dm index 2e2f3adb31..645e2f6128 100644 --- a/code/game/objects/structures/crates_lockers/crates/bins.dm +++ b/code/game/objects/structures/crates_lockers/crates/bins.dm @@ -25,7 +25,7 @@ /obj/structure/closet/crate/bin/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/storage/bag/trash)) var/obj/item/weapon/storage/bag/trash/T = W - user << "You fill the bag." + to_chat(user, "You fill the bag.") for(var/obj/item/O in src) if(T.can_be_inserted(O, 1)) O.loc = T diff --git a/code/game/objects/structures/crates_lockers/crates/large.dm b/code/game/objects/structures/crates_lockers/crates/large.dm index 6dc92682f8..53293ebb09 100644 --- a/code/game/objects/structures/crates_lockers/crates/large.dm +++ b/code/game/objects/structures/crates_lockers/crates/large.dm @@ -11,7 +11,7 @@ if(manifest) tear_manifest(user) else - user << "You need a crowbar to pry this open!" + to_chat(user, "You need a crowbar to pry this open!") /obj/structure/closet/crate/large/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/crowbar)) diff --git a/code/game/objects/structures/crates_lockers/crates/secure.dm b/code/game/objects/structures/crates_lockers/crates/secure.dm index be3ac844ac..1ddb99b6fc 100644 --- a/code/game/objects/structures/crates_lockers/crates/secure.dm +++ b/code/game/objects/structures/crates_lockers/crates/secure.dm @@ -31,7 +31,7 @@ /obj/structure/closet/crate/secure/proc/boom(mob/user) if(user) - user << "The crate's anti-tamper system activates!" + to_chat(user, "The crate's anti-tamper system activates!") var/message = "[ADMIN_LOOKUPFLW(user)] has detonated [src.name]." bombers += message message_admins(message) diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index b911787da2..e204b31f4c 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -34,9 +34,9 @@ /obj/structure/displaycase/examine(mob/user) ..() if(showpiece) - user << "There's [showpiece] inside." + to_chat(user, "There's [showpiece] inside.") if(alert) - user << "Hooked up with an anti-theft system." + to_chat(user, "Hooked up with an anti-theft system.") /obj/structure/displaycase/proc/dump() @@ -117,47 +117,47 @@ /obj/structure/displaycase/attackby(obj/item/weapon/W, mob/user, params) if(W.GetID() && !broken) if(allowed(user)) - user << "You [open ? "close":"open"] the [src]" + to_chat(user, "You [open ? "close":"open"] the [src]") toggle_lock(user) else - user << "Access denied." + to_chat(user, "Access denied.") else if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent == INTENT_HELP && !broken) var/obj/item/weapon/weldingtool/WT = W if(obj_integrity < max_integrity && WT.remove_fuel(5, user)) - user << "You begin repairing [src]." + to_chat(user, "You begin repairing [src].") playsound(loc, WT.usesound, 40, 1) if(do_after(user, 40*W.toolspeed, target = src)) obj_integrity = max_integrity playsound(loc, 'sound/items/Welder2.ogg', 50, 1) update_icon() - user << "You repair [src]." + to_chat(user, "You repair [src].") else - user << "[src] is already in good condition!" + to_chat(user, "[src] is already in good condition!") return else if(!alert && istype(W,/obj/item/weapon/crowbar)) //Only applies to the lab cage and player made display cases if(broken) if(showpiece) - user << "Remove the displayed object first." + to_chat(user, "Remove the displayed object first.") else - user << "You remove the destroyed case" + to_chat(user, "You remove the destroyed case") qdel(src) else - user << "You start to [open ? "close":"open"] the [src]" + to_chat(user, "You start to [open ? "close":"open"] the [src]") if(do_after(user, 20*W.toolspeed, target = src)) - user << "You [open ? "close":"open"] the [src]" + to_chat(user, "You [open ? "close":"open"] the [src]") toggle_lock(user) else if(open && !showpiece) if(user.drop_item()) W.loc = src showpiece = W - user << "You put [W] on display" + to_chat(user, "You put [W] on display") update_icon() else if(istype(W, /obj/item/stack/sheet/glass) && broken) var/obj/item/stack/sheet/glass/G = W if(G.get_amount() < 2) - user << "You need two glass sheets to fix the case!" + to_chat(user, "You need two glass sheets to fix the case!") return - user << "You start fixing [src]..." + to_chat(user, "You start fixing [src]...") if(do_after(user, 20, target = src)) G.use(2) broken = 0 @@ -177,7 +177,7 @@ user.changeNext_move(CLICK_CD_MELEE) if (showpiece && (broken || open)) dump() - user << "You deactivate the hover field built into the case." + to_chat(user, "You deactivate the hover field built into the case.") src.add_fingerprint(user) update_icon() return @@ -203,7 +203,7 @@ /obj/structure/displaycase_chassis/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wrench)) //The player can only deconstruct the wooden frame - user << "You start disassembling [src]..." + to_chat(user, "You start disassembling [src]...") playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 30*I.toolspeed, target = src)) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) @@ -211,18 +211,18 @@ qdel(src) else if(istype(I, /obj/item/weapon/electronics/airlock)) - user << "You start installing the electronics into [src]..." + to_chat(user, "You start installing the electronics into [src]...") playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 30, target = src) && user.transferItemToLoc(I,src)) electronics = I - user << "You install the airlock electronics." + to_chat(user, "You install the airlock electronics.") else if(istype(I, /obj/item/stack/sheet/glass)) var/obj/item/stack/sheet/glass/G = I if(G.get_amount() < 10) - user << "You need ten glass sheets to do this!" + to_chat(user, "You need ten glass sheets to do this!") return - user << "You start adding [G] to [src]..." + to_chat(user, "You start adding [G] to [src]...") if(do_after(user, 20, target = src)) G.use(10) var/obj/structure/displaycase/display = new(src.loc) diff --git a/code/game/objects/structures/divine.dm b/code/game/objects/structures/divine.dm index a7fe1c561b..2058d1ed24 100644 --- a/code/game/objects/structures/divine.dm +++ b/code/game/objects/structures/divine.dm @@ -14,7 +14,7 @@ var/mob/living/L = locate() in buckled_mobs if(!L) return - user << "You attempt to sacrifice [L] by invoking the sacrificial ritual." + to_chat(user, "You attempt to sacrifice [L] by invoking the sacrificial ritual.") L.gib() message_admins("[key_name_admin(user)] has sacrificed [key_name_admin(L)] on the sacrifical altar.") @@ -30,10 +30,10 @@ /obj/structure/healingfountain/attack_hand(mob/living/user) if(last_process + time_between_uses > world.time) - user << "The fountain appears to be empty." + to_chat(user, "The fountain appears to be empty.") return last_process = world.time - user << "The water feels warm and soothing as you touch it. The fountain immediately dries up shortly afterwards." + 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) diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index 3cb47d310e..b37856df70 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -501,7 +501,7 @@ if(mineral && mineral != "glass") mineral = null //I know this is stupid, but until we change glass to a boolean it's how this code works. - user << "You change the paintjob on the airlock assembly." + to_chat(user, "You change the paintjob on the airlock assembly.") else if(istype(W, /obj/item/weapon/weldingtool) && !anchored ) var/obj/item/weapon/weldingtool/WT = W @@ -513,7 +513,7 @@ if(do_after(user, 40*W.toolspeed, target = src)) if( !WT.isOn() ) return - user << "You disassemble the airlock assembly." + to_chat(user, "You disassemble the airlock assembly.") deconstruct(TRUE) else if(istype(W, /obj/item/weapon/wrench)) @@ -533,11 +533,11 @@ if(do_after(user, 40*W.toolspeed, target = src)) if( src.anchored ) return - user << "You secure the airlock assembly." + to_chat(user, "You secure the airlock assembly.") src.name = "secured airlock assembly" src.anchored = 1 else - user << "There is another door here!" + to_chat(user, "There is another door here!") else playsound(src.loc, W.usesound, 100, 1) @@ -547,14 +547,14 @@ if(do_after(user, 40*W.toolspeed, target = src)) if(!anchored ) return - user << "You unsecure the airlock assembly." + to_chat(user, "You unsecure the airlock assembly.") name = "airlock assembly" anchored = 0 else if(istype(W, /obj/item/stack/cable_coil) && state == 0 && anchored ) var/obj/item/stack/cable_coil/C = W if (C.get_amount() < 1) - user << "You need one length of cable to wire the airlock assembly!" + to_chat(user, "You need one length of cable to wire the airlock assembly!") return user.visible_message("[user] wires the airlock assembly.", \ "You start to wire the airlock assembly...") @@ -562,7 +562,7 @@ if(C.get_amount() < 1 || state != 0) return C.use(1) src.state = 1 - user << "You wire the airlock assembly." + to_chat(user, "You wire the airlock assembly.") src.name = "wired airlock assembly" else if(istype(W, /obj/item/weapon/wirecutters) && state == 1 ) @@ -573,7 +573,7 @@ if(do_after(user, 40*W.toolspeed, target = src)) if( src.state != 1 ) return - user << "You cut the wires from the airlock assembly." + to_chat(user, "You cut the wires from the airlock assembly.") new/obj/item/stack/cable_coil(get_turf(user), 1) src.state = 0 src.name = "secured airlock assembly" @@ -589,7 +589,7 @@ return W.loc = src - user << "You install the airlock electronics." + to_chat(user, "You install the airlock electronics.") src.state = 2 src.name = "near finished airlock assembly" src.electronics = W @@ -603,7 +603,7 @@ if(do_after(user, 40*W.toolspeed, target = src)) if( src.state != 2 ) return - user << "You remove the airlock electronics." + to_chat(user, "You remove the airlock electronics.") src.state = 1 src.name = "wired airlock assembly" var/obj/item/weapon/electronics/airlock/ae @@ -624,11 +624,11 @@ if(do_after(user, 40, target = src)) if(G.get_amount() < 1 || mineral) return if (G.type == /obj/item/stack/sheet/rglass) - user << "You install reinforced glass windows into the airlock assembly." + to_chat(user, "You install reinforced glass windows into the airlock assembly.") heat_proof_finished = 1 //reinforced glass makes the airlock heat-proof name = "near finished heat-proofed window airlock assembly" else - user << "You install regular glass windows into the airlock assembly." + to_chat(user, "You install regular glass windows into the airlock assembly.") name = "near finished window airlock assembly" G.use(1) mineral = "glass" @@ -651,7 +651,7 @@ "You start to install [G.name] into the airlock assembly...") if(do_after(user, 40, target = src)) if(G.get_amount() < 2 || mineral) return - user << "You install [M] plating into the airlock assembly." + to_chat(user, "You install [M] plating into the airlock assembly.") G.use(2) mineral = "[M]" name = "near finished [M] airlock assembly" @@ -665,7 +665,7 @@ if(do_after(user, 40*W.toolspeed, target = src)) if(src.loc && state == 2) - user << "You finish the airlock." + to_chat(user, "You finish the airlock.") var/obj/machinery/door/airlock/door if(mineral == "glass") door = new src.glass_type( src.loc ) diff --git a/code/game/objects/structures/electricchair.dm b/code/game/objects/structures/electricchair.dm index 25d4b89d64..c1726487fc 100644 --- a/code/game/objects/structures/electricchair.dm +++ b/code/game/objects/structures/electricchair.dm @@ -41,7 +41,7 @@ for(var/m in buckled_mobs) var/mob/living/buckled_mob = m buckled_mob.electrocute_act(85, src, 1) - buckled_mob << "You feel a deep shock course through your body!" + to_chat(buckled_mob, "You feel a deep shock course through your body!") spawn(1) buckled_mob.electrocute_act(85, src, 1) visible_message("The electric chair went off!", "You hear a deep sharp shock!") diff --git a/code/game/objects/structures/extinguisher.dm b/code/game/objects/structures/extinguisher.dm index 8e545595f8..bedd583a27 100644 --- a/code/game/objects/structures/extinguisher.dm +++ b/code/game/objects/structures/extinguisher.dm @@ -39,11 +39,11 @@ /obj/structure/extinguisher_cabinet/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wrench) && !stored_extinguisher) - user << "You start unsecuring [name]..." + to_chat(user, "You start unsecuring [name]...") playsound(loc, I.usesound, 50, 1) if(do_after(user, 60*I.toolspeed, target = src)) playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You unsecure [name]." + to_chat(user, "You unsecure [name].") deconstruct(TRUE) return @@ -55,7 +55,7 @@ return contents += I stored_extinguisher = I - user << "You place [I] in [src]." + to_chat(user, "You place [I] in [src].") update_icon() else toggle_cabinet(user) @@ -70,7 +70,7 @@ return if(stored_extinguisher) user.put_in_hands(stored_extinguisher) - user << "You take [stored_extinguisher] from [src]." + to_chat(user, "You take [stored_extinguisher] from [src].") stored_extinguisher = null if(!opened) opened = 1 @@ -83,7 +83,7 @@ /obj/structure/extinguisher_cabinet/attack_tk(mob/user) if(stored_extinguisher) stored_extinguisher.forceMove(loc) - user << "You telekinetically remove [stored_extinguisher] from [src]." + to_chat(user, "You telekinetically remove [stored_extinguisher] from [src].") stored_extinguisher = null opened = 1 playsound(loc, 'sound/machines/click.ogg', 15, 1, -3) @@ -102,7 +102,7 @@ /obj/structure/extinguisher_cabinet/proc/toggle_cabinet(mob/user) if(opened && broken) - user << "[src] is broken open." + to_chat(user, "[src] is broken open.") else playsound(loc, 'sound/machines/click.ogg', 15, 1, -3) opened = !opened diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm index 3bb0826128..8c7c248667 100644 --- a/code/game/objects/structures/false_walls.dm +++ b/code/game/objects/structures/false_walls.dm @@ -53,7 +53,7 @@ sleep(5) if(!QDELETED(src)) density = 0 - SetOpacity(0) + set_opacity(0) update_icon() else var/srcturf = get_turf(src) @@ -64,7 +64,7 @@ density = 1 sleep(5) if(!QDELETED(src)) - SetOpacity(1) + set_opacity(1) update_icon() air_update_turf(1) opening = 0 @@ -94,22 +94,22 @@ /obj/structure/falsewall/attackby(obj/item/weapon/W, mob/user, params) if(opening) - user << "You must wait until the door has stopped moving!" + to_chat(user, "You must wait until the door has stopped moving!") return if(istype(W, /obj/item/weapon/screwdriver)) if(density) var/turf/T = get_turf(src) if(T.density) - user << "[src] is blocked!" + to_chat(user, "[src] is blocked!") return if(!isfloorturf(T)) - user << "[src] bolts must be tightened on the floor!" + to_chat(user, "[src] bolts must be tightened on the floor!") return user.visible_message("[user] tightens some bolts on the wall.", "You tighten the bolts on the wall.") ChangeToWall() else - user << "You can't reach, close it first!" + to_chat(user, "You can't reach, close it first!") else if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W diff --git a/code/game/objects/structures/fireaxe.dm b/code/game/objects/structures/fireaxe.dm index c1c9790ead..970f1d594b 100644 --- a/code/game/objects/structures/fireaxe.dm +++ b/code/game/objects/structures/fireaxe.dm @@ -29,22 +29,22 @@ else if(istype(I, /obj/item/weapon/weldingtool) && user.a_intent == INTENT_HELP && !broken) var/obj/item/weapon/weldingtool/WT = I if(obj_integrity < max_integrity && WT.remove_fuel(2, user)) - user << "You begin repairing [src]." + to_chat(user, "You begin repairing [src].") playsound(loc, WT.usesound, 40, 1) if(do_after(user, 40*I.toolspeed, target = src)) obj_integrity = max_integrity playsound(loc, 'sound/items/Welder2.ogg', 50, 1) update_icon() - user << "You repair [src]." + to_chat(user, "You repair [src].") else - user << "[src] is already in good condition!" + to_chat(user, "[src] is already in good condition!") return else if(istype(I, /obj/item/stack/sheet/glass) && broken) var/obj/item/stack/sheet/glass/G = I if(G.get_amount() < 2) - user << "You need two glass sheets to fix [src]!" + to_chat(user, "You need two glass sheets to fix [src]!") return - user << "You start fixing [src]..." + to_chat(user, "You start fixing [src]...") if(do_after(user, 20, target = src) && G.use(2)) broken = 0 obj_integrity = max_integrity @@ -53,13 +53,13 @@ if(istype(I, /obj/item/weapon/twohanded/fireaxe) && !fireaxe) var/obj/item/weapon/twohanded/fireaxe/F = I if(F.wielded) - user << "Unwield the [F.name] first." + to_chat(user, "Unwield the [F.name] first.") return if(!user.drop_item()) return fireaxe = F F.forceMove(src) - user << "You place the [F.name] back in the [name]." + to_chat(user, "You place the [F.name] back in the [name].") update_icon() return else if(!broken) @@ -111,7 +111,7 @@ if(fireaxe) user.put_in_hands(fireaxe) fireaxe = null - user << "You take the fire axe from the [name]." + to_chat(user, "You take the fire axe from the [name].") src.add_fingerprint(user) update_icon() return @@ -165,10 +165,10 @@ add_overlay("glass_raised") /obj/structure/fireaxecabinet/proc/toggle_lock(mob/user) - user << " Resetting circuitry..." + to_chat(user, " Resetting circuitry...") playsound(src, 'sound/machines/locktoggle.ogg', 50, 1) if(do_after(user, 20, target = src)) - user << "You [locked ? "disable" : "re-enable"] the locking modules." + to_chat(user, "You [locked ? "disable" : "re-enable"] the locking modules.") locked = !locked update_icon() diff --git a/code/game/objects/structures/fireplace.dm b/code/game/objects/structures/fireplace.dm index 41a9f08f91..f98e24670d 100644 --- a/code/game/objects/structures/fireplace.dm +++ b/code/game/objects/structures/fireplace.dm @@ -26,10 +26,10 @@ /obj/structure/fireplace/proc/try_light(obj/item/O, mob/user) if(lit) - user << "It's already lit!" + to_chat(user, "It's already lit!") return FALSE if(!fuel_added) - user << "[src] needs some fuel to burn!" + to_chat(user, "[src] needs some fuel to burn!") return FALSE var/msg = O.ignition_effect(src, user) if(msg) @@ -43,8 +43,7 @@ var/space_remaining = MAXIMUM_BURN_TIMER - burn_time_remaining() var/space_for_logs = round(space_remaining / LOG_BURN_TIMER) if(space_for_logs < 1) - user << "You can't fit any more of [T] in \ - [src]!" + to_chat(user, "You can't fit any more of [T] in [src]!") return var/logs_used = min(space_for_logs, wood.amount) wood.use(logs_used) @@ -88,20 +87,20 @@ /obj/structure/fireplace/proc/adjust_light() if(!lit) - SetLuminosity(0) + set_light(0) return switch(burn_time_remaining()) if(0 to 500) - SetLuminosity(1) + set_light(1) if(500 to 1000) - SetLuminosity(2) + set_light(2) if(1000 to 1500) - SetLuminosity(3) + set_light(3) if(1500 to 2000) - SetLuminosity(4) + set_light(4) if(2000 to MAXIMUM_BURN_TIMER) - SetLuminosity(6) + set_light(6) /obj/structure/fireplace/process() if(!lit) diff --git a/code/game/objects/structures/ghost_role_spawners.dm b/code/game/objects/structures/ghost_role_spawners.dm index af8e3bb509..378f5030bf 100644 --- a/code/game/objects/structures/ghost_role_spawners.dm +++ b/code/game/objects/structures/ghost_role_spawners.dm @@ -26,7 +26,7 @@ /obj/effect/mob_spawn/human/seed_vault/Destroy() new/obj/structure/fluff/empty_terrarium(get_turf(src)) - ..() + return ..() //Ash walker eggs: Spawns in ash walker dens in lavaland. Ghosts become unbreathing lizards that worship the Necropolis and are advised to retrieve corpses to create more ash walkers. /obj/effect/mob_spawn/human/ash_walker @@ -47,7 +47,7 @@ /obj/effect/mob_spawn/human/ash_walker/special(mob/living/new_spawn) new_spawn.real_name = random_unique_lizard_name(gender) - 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. Glory to the Necropolis!") if(ishuman(new_spawn)) var/mob/living/carbon/human/H = new_spawn H.underwear = "Nude" @@ -74,20 +74,20 @@ /obj/effect/mob_spawn/human/exile/Destroy() new/obj/structure/fluff/empty_sleeper(get_turf(src)) - ..() + return ..() /obj/effect/mob_spawn/human/exile/special(mob/living/new_spawn) new_spawn.real_name = "Wish Granter's Victim ([rand(0,999)])" var/wish = rand(1,4) switch(wish) if(1) - new_spawn << "You wished to kill, and kill you did. You've lost track of how many, but the spark of excitement that murder once held has winked out. You feel only regret." + to_chat(new_spawn, "You wished to kill, and kill you did. You've lost track of how many, but the spark of excitement that murder once held has winked out. You feel only regret.") if(2) - new_spawn << "You wished for unending wealth, but no amount of money was worth this existence. Maybe charity might redeem your soul?" + to_chat(new_spawn, "You wished for unending wealth, but no amount of money was worth this existence. Maybe charity might redeem your soul?") if(3) - new_spawn << "You wished for power. Little good it did you, cast out of the light. You are the [gender == MALE ? "king" : "queen"] of a hell that holds no subjects. You feel only remorse." + to_chat(new_spawn, "You wished for power. Little good it did you, cast out of the light. You are the [gender == MALE ? "king" : "queen"] of a hell that holds no subjects. You feel only remorse.") if(4) - new_spawn << "You wished for immortality, even as your friends lay dying behind you. No matter how many times you cast yourself into the lava, you awaken in this room again within a few days. There is no escape." + to_chat(new_spawn, "You wished for immortality, even as your friends lay dying behind you. No matter how many times you cast yourself into the lava, you awaken in this room again within a few days. There is no escape.") //Golem shells: Spawns in Free Golem ships in lavaland. Ghosts become mineral golems and are advised to spread personal freedom. /obj/effect/mob_spawn/human/golem @@ -140,9 +140,9 @@ // also a tiny chance of being called "Plasma Meme" // which is clearly a feature - new_spawn << "[initial(X.info_text)]" + to_chat(new_spawn, "[initial(X.info_text)]") if(!owner) - new_spawn << "Build golem shells in the autolathe, and feed refined mineral sheets to the shells to bring them to life! You are generally a peaceful group unless provoked." + to_chat(new_spawn, "Build golem shells in the autolathe, and feed refined mineral sheets to the shells to bring them to life! You are generally a peaceful group unless provoked.") else new_spawn.mind.store_memory("Serve [owner.real_name], your creator.") new_spawn.mind.enslave_mind_to_creator(owner) @@ -210,7 +210,7 @@ /obj/effect/mob_spawn/human/hermit/Destroy() new/obj/structure/fluff/empty_cryostasis_sleeper(get_turf(src)) - ..() + return ..() //Broken rejuvenation pod: Spawns in animal hospitals in lavaland. Ghosts become disoriented interns and are advised to search for help. /obj/effect/mob_spawn/human/doctor/alive/lavaland @@ -250,7 +250,7 @@ /obj/effect/mob_spawn/human/prisoner_transport/Destroy() new/obj/structure/fluff/empty_sleeper/syndicate(get_turf(src)) - ..() + return ..() //Space Hotel Staff /obj/effect/mob_spawn/human/hotel_staff //not free antag u little shits diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 6b8485f0af..4a3ab87770 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -14,16 +14,16 @@ . = ..() switch(state) if(GIRDER_REINF) - user << "The support struts are screwed in place." + to_chat(user, "The support struts are screwed in place.") if(GIRDER_REINF_STRUTS) - user << "The support struts are unscrewed and the inner grille is intact." + to_chat(user, "The support struts are unscrewed and the inner grille is intact.") if(GIRDER_NORMAL) if(can_displace) - user << "The bolts are wrenched in place." + to_chat(user, "The bolts are wrenched in place.") if(GIRDER_DISPLACED) - user << "The bolts are loosened, but the screws are holding [src] together." + to_chat(user, "The bolts are loosened, but the screws are holding [src] together.") if(GIRDER_DISASSEMBLED) - user << "[src] is disassembled! You probably shouldn't be able to see this examine message." + to_chat(user, "[src] is disassembled! You probably shouldn't be able to see this examine message.") /obj/structure/girder/attackby(obj/item/W, mob/user, params) add_fingerprint(user) @@ -36,69 +36,69 @@ if(state != GIRDER_DISPLACED) return state = GIRDER_DISASSEMBLED - user << "You disassemble the girder." + to_chat(user, "You disassemble the girder.") var/obj/item/stack/sheet/metal/M = new (loc, 2) M.add_fingerprint(user) qdel(src) else if(state == GIRDER_REINF) playsound(src.loc, W.usesound, 100, 1) - user << "You start unsecuring support struts..." + to_chat(user, "You start unsecuring support struts...") if(do_after(user, 40*W.toolspeed, target = src)) if(state != GIRDER_REINF) return - user << "You unsecure the support struts." + to_chat(user, "You unsecure the support struts.") state = GIRDER_REINF_STRUTS else if(state == GIRDER_REINF_STRUTS) playsound(src.loc, W.usesound, 100, 1) - user << "You start securing support struts..." + to_chat(user, "You start securing support struts...") if(do_after(user, 40*W.toolspeed, target = src)) if(state != GIRDER_REINF_STRUTS) return - user << "You secure the support struts." + to_chat(user, "You secure the support struts.") state = GIRDER_REINF else if(istype(W, /obj/item/weapon/wrench)) if(state == GIRDER_DISPLACED) if(!isfloorturf(loc)) - user << "A floor must be present to secure the girder!" + to_chat(user, "A floor must be present to secure the girder!") return playsound(src.loc, W.usesound, 100, 1) - user << "You start securing the girder..." + to_chat(user, "You start securing the girder...") if(do_after(user, 40*W.toolspeed, target = src)) - user << "You secure the girder." + to_chat(user, "You secure the girder.") var/obj/structure/girder/G = new (loc) transfer_fingerprints_to(G) qdel(src) else if(state == GIRDER_NORMAL && can_displace) playsound(src.loc, W.usesound, 100, 1) - user << "You start unsecuring the girder..." + to_chat(user, "You start unsecuring the girder...") if(do_after(user, 40*W.toolspeed, target = src)) - user << "You unsecure the girder." + to_chat(user, "You unsecure the girder.") var/obj/structure/girder/displaced/D = new (loc) transfer_fingerprints_to(D) qdel(src) else if(istype(W, /obj/item/weapon/gun/energy/plasmacutter)) - user << "You start slicing apart the girder..." + to_chat(user, "You start slicing apart the girder...") playsound(src, 'sound/items/Welder.ogg', 100, 1) if(do_after(user, 40*W.toolspeed, target = src)) - user << "You slice apart the girder." + to_chat(user, "You slice apart the girder.") var/obj/item/stack/sheet/metal/M = new (loc, 2) M.add_fingerprint(user) qdel(src) else if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer)) var/obj/item/weapon/pickaxe/drill/jackhammer/D = W - user << "You smash through the girder!" + to_chat(user, "You smash through the girder!") new /obj/item/stack/sheet/metal(get_turf(src)) D.playDigSound() qdel(src) else if(istype(W, /obj/item/weapon/wirecutters) && state == GIRDER_REINF_STRUTS) playsound(src.loc, W.usesound, 100, 1) - user << "You start removing the inner grille..." + to_chat(user, "You start removing the inner grille...") if(do_after(user, 40*W.toolspeed, target = src)) - user << "You remove the inner grille." + to_chat(user, "You remove the inner grille.") new /obj/item/stack/sheet/plasteel(get_turf(src)) var/obj/structure/girder/G = new (loc) transfer_fingerprints_to(G) @@ -106,40 +106,40 @@ else if(istype(W, /obj/item/stack)) if(iswallturf(loc)) - user << "There is already a wall present!" + to_chat(user, "There is already a wall present!") return if(!isfloorturf(src.loc)) - user << "A floor must be present to build a false wall!" + to_chat(user, "A floor must be present to build a false wall!") return if (locate(/obj/structure/falsewall) in src.loc.contents) - user << "There is already a false wall present!" + to_chat(user, "There is already a false wall present!") return if(istype(W,/obj/item/stack/rods)) var/obj/item/stack/rods/S = W if(state == GIRDER_DISPLACED) if(S.get_amount() < 2) - user << "You need at least two rods to create a false wall!" + to_chat(user, "You need at least two rods to create a false wall!") return - user << "You start building a reinforced false wall..." + to_chat(user, "You start building a reinforced false wall...") if(do_after(user, 20, target = src)) if(!src.loc || !S || S.get_amount() < 2) return S.use(2) - user << "You create a false wall. Push on it to open or close the passage." + to_chat(user, "You create a false wall. Push on it to open or close the passage.") var/obj/structure/falsewall/iron/FW = new (loc) transfer_fingerprints_to(FW) qdel(src) else if(S.get_amount() < 5) - user << "You need at least five rods to add plating!" + to_chat(user, "You need at least five rods to add plating!") return - user << "You start adding plating..." + to_chat(user, "You start adding plating...") if (do_after(user, 40, target = src)) if(!src.loc || !S || S.get_amount() < 5) return S.use(5) - user << "You add the plating." + to_chat(user, "You add the plating.") var/turf/T = get_turf(src) T.ChangeTurf(/turf/closed/wall/mineral/iron) transfer_fingerprints_to(T) @@ -153,27 +153,27 @@ if(istype(S,/obj/item/stack/sheet/metal)) if(state == GIRDER_DISPLACED) if(S.get_amount() < 2) - user << "You need two sheets of metal to create a false wall!" + to_chat(user, "You need two sheets of metal to create a false wall!") return - user << "You start building a false wall..." + to_chat(user, "You start building a false wall...") if(do_after(user, 20, target = src)) if(!src.loc || !S || S.get_amount() < 2) return S.use(2) - user << "You create a false wall. Push on it to open or close the passage." + to_chat(user, "You create a false wall. Push on it to open or close the passage.") var/obj/structure/falsewall/F = new (loc) transfer_fingerprints_to(F) qdel(src) else if(S.get_amount() < 2) - user << "You need two sheets of metal to finish a wall!" + to_chat(user, "You need two sheets of metal to finish a wall!") return - user << "You start adding plating..." + to_chat(user, "You start adding plating...") if (do_after(user, 40, target = src)) if(loc == null || S.get_amount() < 2) return S.use(2) - user << "You add the plating." + to_chat(user, "You add the plating.") var/turf/T = get_turf(src) T.ChangeTurf(/turf/closed/wall) transfer_fingerprints_to(T) @@ -183,14 +183,14 @@ if(istype(S,/obj/item/stack/sheet/plasteel)) if(state == GIRDER_DISPLACED) if(S.get_amount() < 2) - user << "You need at least two sheets to create a false wall!" + to_chat(user, "You need at least two sheets to create a false wall!") return - user << "You start building a reinforced false wall..." + to_chat(user, "You start building a reinforced false wall...") if(do_after(user, 20, target = src)) if(!src.loc || !S || S.get_amount() < 2) return S.use(2) - user << "You create a reinforced false wall. Push on it to open or close the passage." + to_chat(user, "You create a reinforced false wall. Push on it to open or close the passage.") var/obj/structure/falsewall/reinforced/FW = new (loc) transfer_fingerprints_to(FW) qdel(src) @@ -198,12 +198,12 @@ if(state == GIRDER_REINF) if(S.get_amount() < 1) return - user << "You start finalizing the reinforced wall..." + to_chat(user, "You start finalizing the reinforced wall...") if(do_after(user, 50, target = src)) if(!src.loc || !S || S.get_amount() < 1) return S.use(1) - user << "You fully reinforce the wall." + to_chat(user, "You fully reinforce the wall.") var/turf/T = get_turf(src) T.ChangeTurf(/turf/closed/wall/r_wall) transfer_fingerprints_to(T) @@ -212,12 +212,12 @@ else if(S.get_amount() < 1) return - user << "You start reinforcing the girder..." + to_chat(user, "You start reinforcing the girder...") if (do_after(user, 60, target = src)) if(!src.loc || !S || S.get_amount() < 1) return S.use(1) - user << "You reinforce the girder." + to_chat(user, "You reinforce the girder.") var/obj/structure/girder/reinforced/R = new (loc) transfer_fingerprints_to(R) qdel(src) @@ -227,27 +227,27 @@ var/M = S.sheettype if(state == GIRDER_DISPLACED) if(S.get_amount() < 2) - user << "You need at least two sheets to create a false wall!" + to_chat(user, "You need at least two sheets to create a false wall!") return if(do_after(user, 20, target = src)) if(!src.loc || !S || S.get_amount() < 2) return S.use(2) - user << "You create a false wall. Push on it to open or close the passage." + to_chat(user, "You create a false wall. Push on it to open or close the passage.") var/F = text2path("/obj/structure/falsewall/[M]") var/obj/structure/FW = new F (loc) transfer_fingerprints_to(FW) qdel(src) else if(S.get_amount() < 2) - user << "You need at least two sheets to add plating!" + to_chat(user, "You need at least two sheets to add plating!") return - user << "You start adding plating..." + to_chat(user, "You start adding plating...") if (do_after(user, 40, target = src)) if(!src.loc || !S || S.get_amount() < 2) return S.use(2) - user << "You add the plating." + to_chat(user, "You add the plating.") var/turf/T = get_turf(src) T.ChangeTurf(text2path("/turf/closed/wall/mineral/[M]")) transfer_fingerprints_to(T) @@ -262,7 +262,7 @@ if(!user.drop_item()) return P.loc = src.loc - user << "You fit the pipe into \the [src]." + to_chat(user, "You fit the pipe into \the [src].") else return ..() @@ -341,21 +341,21 @@ var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0,user)) playsound(src.loc, W.usesound, 50, 1) - user << "You start slicing apart the girder..." + to_chat(user, "You start slicing apart the girder...") if(do_after(user, 40*W.toolspeed, target = src)) if( !WT.isOn() ) return - user << "You slice apart the girder." + to_chat(user, "You slice apart the girder.") var/obj/item/stack/sheet/runed_metal/R = new(get_turf(src)) R.amount = 1 transfer_fingerprints_to(R) qdel(src) else if(istype(W, /obj/item/weapon/gun/energy/plasmacutter)) - user << "You start slicing apart the girder..." + to_chat(user, "You start slicing apart the girder...") playsound(src, 'sound/items/Welder.ogg', 100, 1) if(do_after(user, 40*W.toolspeed, target = src)) - user << "You slice apart the girder." + to_chat(user, "You slice apart the girder.") var/obj/item/stack/sheet/runed_metal/R = new(get_turf(src)) R.amount = 1 transfer_fingerprints_to(R) @@ -363,7 +363,7 @@ else if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer)) var/obj/item/weapon/pickaxe/drill/jackhammer/D = W - user << "Your jackhammer smashes through the girder!" + to_chat(user, "Your jackhammer smashes through the girder!") var/obj/item/stack/sheet/runed_metal/R = new(get_turf(src)) R.amount = 2 transfer_fingerprints_to(R) @@ -373,7 +373,7 @@ else if(istype(W, /obj/item/stack/sheet/runed_metal)) var/obj/item/stack/sheet/runed_metal/R = W if(R.get_amount() < 1) - user << "You need at least one sheet of runed metal to construct a runed wall!" + to_chat(user, "You need at least one sheet of runed metal to construct a runed wall!") return 0 user.visible_message("[user] begins laying runed metal on [src]...", "You begin constructing a runed wall...") if(do_after(user, 50, target = src)) @@ -395,3 +395,25 @@ if(!(flags & NODECONSTRUCT)) new/obj/item/stack/sheet/runed_metal/(get_turf(src), 1) qdel(src) + +/obj/structure/girder/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + switch(the_rcd.mode) + if(RCD_FLOORWALL) + return list("mode" = RCD_FLOORWALL, "delay" = 20, "cost" = 8) + if(RCD_DECONSTRUCT) + return list("mode" = RCD_DECONSTRUCT, "delay" = 20, "cost" = 13) + return FALSE + +/obj/structure/girder/rcd_act(mob/user, obj/item/weapon/rcd/the_rcd, passed_mode) + var/turf/T = get_turf(src) + switch(passed_mode) + if(RCD_FLOORWALL) + to_chat(user, "You finish a wall.") + T.ChangeTurf(/turf/closed/wall) + qdel(src) + return TRUE + if(RCD_DECONSTRUCT) + to_chat(user, "You deconstruct the girder.") + qdel(src) + return TRUE + return FALSE diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index 528c924e3f..478b3273b2 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -18,6 +18,29 @@ var/grille_type = null var/broken_type = /obj/structure/grille/broken +/obj/structure/grille/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + switch(the_rcd.mode) + if(RCD_DECONSTRUCT) + return list("mode" = RCD_DECONSTRUCT, "delay" = 20, "cost" = 5) + if(RCD_WINDOWGRILLE) + return list("mode" = RCD_WINDOWGRILLE, "delay" = 40, "cost" = 10) + return FALSE + +/obj/structure/grille/rcd_act(mob/user, var/obj/item/weapon/rcd/the_rcd, passed_mode) + switch(passed_mode) + if(RCD_DECONSTRUCT) + to_chat(user, "You deconstruct the grille.") + qdel(src) + return TRUE + if(RCD_WINDOWGRILLE) + if(locate(/obj/structure/window) in loc) + return FALSE + to_chat(user, "You construct the window.") + var/obj/structure/window/WD = new the_rcd.window_type(loc) + WD.anchored = TRUE + return TRUE + return FALSE + /obj/structure/grille/ratvar_act() if(broken) new /obj/structure/grille/ratvar/broken(src.loc) @@ -110,16 +133,16 @@ if (!broken) var/obj/item/stack/ST = W if (ST.get_amount() < 2) - user << "You need at least two sheets of glass for that!" + to_chat(user, "You need at least two sheets of glass for that!") return var/dir_to_set = SOUTHWEST if(!anchored) - user << "[src] needs to be fastened to the floor first!" + to_chat(user, "[src] needs to be fastened to the floor first!") return for(var/obj/structure/window/WINDOW in loc) - user << "There is already a window there!" + to_chat(user, "There is already a window there!") return - user << "You start placing the window..." + to_chat(user, "You start placing the window...") if(do_after(user,20, target = src)) if(!src.loc || !anchored) //Grille broken or unanchored while waiting return @@ -135,7 +158,7 @@ WD.anchored = 0 WD.state = 0 ST.use(2) - user << "You place [WD] on [src]." + to_chat(user, "You place [WD] on [src].") return //window placing end @@ -230,17 +253,12 @@ /obj/structure/grille/ratvar/New() ..() - change_construction_value(1) if(broken) new /obj/effect/overlay/temp/ratvar/grille/broken(get_turf(src)) else new /obj/effect/overlay/temp/ratvar/grille(get_turf(src)) new /obj/effect/overlay/temp/ratvar/beam/grille(get_turf(src)) -/obj/structure/grille/ratvar/Destroy() - change_construction_value(-1) - return ..() - /obj/structure/grille/ratvar/narsie_act() take_damage(rand(1, 3), BRUTE) if(src) @@ -261,4 +279,3 @@ rods_broken = 0 grille_type = /obj/structure/grille/ratvar broken_type = null - diff --git a/code/game/objects/structures/guncase.dm b/code/game/objects/structures/guncase.dm index d52153f9f4..42a6664364 100644 --- a/code/game/objects/structures/guncase.dm +++ b/code/game/objects/structures/guncase.dm @@ -39,7 +39,7 @@ if(!user.drop_item()) return contents += I - user << "You place [I] in [src]." + to_chat(user, "You place [I] in [src].") update_icon() return diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index a9cbfdd05b..e8387750f3 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -23,11 +23,11 @@ /obj/structure/janitorialcart/proc/wet_mop(obj/item/weapon/mop, mob/user) if(reagents.total_volume < 1) - user << "[src] is out of water!" + to_chat(user, "[src] is out of water!") return 0 else reagents.trans_to(mop, 5) - user << "You wet [mop] in [src]." + to_chat(user, "You wet [mop] in [src].") playsound(loc, 'sound/effects/slosh.ogg', 25, 1) return 1 @@ -36,7 +36,7 @@ return I.loc = src updateUsrDialog() - user << "You put [I] into [src]." + to_chat(user, "You put [I] into [src].") return @@ -51,40 +51,40 @@ if(!mymop) m.janicart_insert(user, src) else - user << fail_msg + to_chat(user, fail_msg) else if(istype(I, /obj/item/weapon/storage/bag/trash)) if(!mybag) var/obj/item/weapon/storage/bag/trash/t=I t.janicart_insert(user, src) else - user << fail_msg + to_chat(user, fail_msg) else if(istype(I, /obj/item/weapon/reagent_containers/spray/cleaner)) if(!myspray) put_in_cart(I, user) myspray=I update_icon() else - user << fail_msg + to_chat(user, fail_msg) else if(istype(I, /obj/item/device/lightreplacer)) if(!myreplacer) var/obj/item/device/lightreplacer/l=I l.janicart_insert(user,src) else - user << fail_msg + to_chat(user, fail_msg) else if(istype(I, /obj/item/weapon/caution)) if(signs < max_signs) put_in_cart(I, user) signs++ update_icon() else - user << "[src] can't hold any more signs!" + to_chat(user, "[src] can't hold any more signs!") else if(mybag) mybag.attackby(I, user) else if(istype(I, /obj/item/weapon/crowbar)) user.visible_message("[user] begins to empty the contents of [src].", "You begin to empty the contents of [src]...") if(do_after(user, 30*I.toolspeed, target = src)) - usr << "You empty the contents of [src]'s bucket onto the floor." + to_chat(usr, "You empty the contents of [src]'s bucket onto the floor.") reagents.reaction(src.loc) src.reagents.clear_reagents() else @@ -117,29 +117,29 @@ if(href_list["garbage"]) if(mybag) user.put_in_hands(mybag) - user << "You take [mybag] from [src]." + to_chat(user, "You take [mybag] from [src].") mybag = null if(href_list["mop"]) if(mymop) user.put_in_hands(mymop) - user << "You take [mymop] from [src]." + to_chat(user, "You take [mymop] from [src].") mymop = null if(href_list["spray"]) if(myspray) user.put_in_hands(myspray) - user << "You take [myspray] from [src]." + to_chat(user, "You take [myspray] from [src].") myspray = null if(href_list["replacer"]) if(myreplacer) user.put_in_hands(myreplacer) - user << "You take [myreplacer] from [src]." + to_chat(user, "You take [myreplacer] from [src].") myreplacer = null if(href_list["sign"]) if(signs) var/obj/item/weapon/caution/Sign = locate() in src if(Sign) user.put_in_hands(Sign) - user << "You take \a [Sign] from [src]." + to_chat(user, "You take \a [Sign] from [src].") signs-- else WARNING("Signs ([signs]) didn't match contents") diff --git a/code/game/objects/structures/kitchen_spike.dm b/code/game/objects/structures/kitchen_spike.dm index 5e00e00e6e..d9a713dc06 100644 --- a/code/game/objects/structures/kitchen_spike.dm +++ b/code/game/objects/structures/kitchen_spike.dm @@ -19,7 +19,7 @@ var/obj/item/stack/rods/R = I if(R.get_amount() >= 4) R.use(4) - user << "You add spikes to the frame." + to_chat(user, "You add spikes to the frame.") var/obj/F = new /obj/structure/kitchenspike(src.loc) transfer_fingerprints_to(F) qdel(src) @@ -27,7 +27,7 @@ var/obj/item/weapon/weldingtool/WT = I if(!WT.remove_fuel(0, user)) return - user << "You begin cutting \the [src] apart..." + to_chat(user, "You begin cutting \the [src] apart...") playsound(src.loc, WT.usesound, 40, 1) if(do_after(user, 40*WT.toolspeed, 1, target = src)) if(!WT.isOn()) @@ -64,10 +64,10 @@ if(!has_buckled_mobs()) playsound(loc, I.usesound, 100, 1) if(do_after(user, 20*I.toolspeed, target = src)) - user << "You pry the spikes out of the frame." + to_chat(user, "You pry the spikes out of the frame.") deconstruct(TRUE) else - user << "You can't do that while something's on the spike!" + to_chat(user, "You can't do that while something's on the spike!") else return ..() @@ -127,7 +127,7 @@ M.adjustBruteLoss(30) if(!do_after(M, 1200, target = src)) if(M && M.buckled) - M << "You fail to free yourself!" + to_chat(M, "You fail to free yourself!") return if(!M.buckled) return diff --git a/code/game/objects/structures/ladders.dm b/code/game/objects/structures/ladders.dm index 8ba4ac7535..9db8b4e07e 100644 --- a/code/game/objects/structures/ladders.dm +++ b/code/game/objects/structures/ladders.dm @@ -67,7 +67,7 @@ else if(down) go_down(user,is_ghost) else - user << "[src] doesn't seem to lead anywhere!" + to_chat(user, "[src] doesn't seem to lead anywhere!") if(!is_ghost) add_fingerprint(user) diff --git a/code/game/objects/structures/lattice.dm b/code/game/objects/structures/lattice.dm index bb715800a5..312f6c32dc 100644 --- a/code/game/objects/structures/lattice.dm +++ b/code/game/objects/structures/lattice.dm @@ -39,11 +39,9 @@ new/obj/structure/lattice/clockwork/large(loc) /obj/structure/lattice/attackby(obj/item/C, mob/user, params) - if(istype(C, /obj/item/weapon/weldingtool)) - var/obj/item/weapon/weldingtool/WT = C - if(WT.remove_fuel(0, user)) - user << "Slicing [name] joints ..." - deconstruct() + if(istype(C, /obj/item/weapon/wirecutters)) + to_chat(user, "Slicing [name] joints ...") + deconstruct() else var/turf/T = get_turf(src) return T.attackby(C, user) //hand this off to the turf instead (for building plating, catwalks, etc) diff --git a/code/game/objects/structures/life_candle.dm b/code/game/objects/structures/life_candle.dm index 69fda57d04..bab1a84483 100644 --- a/code/game/objects/structures/life_candle.dm +++ b/code/game/objects/structures/life_candle.dm @@ -3,6 +3,7 @@ desc = "You are dead. Insert quarter to continue." icon = 'icons/obj/candle.dmi' icon_state = "candle1" + light_color = LIGHT_COLOR_FIRE var/icon_state_active = "candle1_lit" var/icon_state_inactive = "candle1" @@ -37,10 +38,10 @@ float(linked_minds.len) if(linked_minds.len) START_PROCESSING(SSobj, src) - SetLuminosity(lit_luminosity) + set_light(lit_luminosity) else STOP_PROCESSING(SSobj, src) - SetLuminosity(0) + set_light(0) /obj/structure/life_candle/update_icon() if(linked_minds.len) @@ -51,9 +52,9 @@ /obj/structure/life_candle/examine(mob/user) . = ..() if(linked_minds.len) - user << "[src] is active, and linked to [linked_minds.len] souls." + to_chat(user, "[src] is active, and linked to [linked_minds.len] souls.") else - user << "It is static, still, unmoving." + to_chat(user, "It is static, still, unmoving.") /obj/structure/life_candle/process() if(!linked_minds.len) diff --git a/code/game/objects/structures/memorial.dm b/code/game/objects/structures/memorial.dm new file mode 100644 index 0000000000..51dad9fef7 --- /dev/null +++ b/code/game/objects/structures/memorial.dm @@ -0,0 +1,21 @@ +/* + +At 7:30 AM on March 8th, 2017, ArcLumin died in a fatal car crash on impact. +Rest in peace, man. You did good work. +When a contributor for SS13 dies, all codebases feel it and suffer. +We may disagree on whether farts should be a thing, or what color to paint the bikeshed, +but we are all contributors together. + +Goodbye, man. We'll miss you. + +This memorial has been designed for him and any future coders to perish. + +*/ + +/obj/structure/fluff/arc + name = "Tomb of the Unknown Employee" + desc = "Here rests an unknown employee\nUnknown by name or rank\nWhose acts will not be forgotten" + icon = 'icons/obj/tomb.dmi' + icon_state = "memorial" + density = 1 + anchored = 1 \ No newline at end of file diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm index 56d4c5d267..129862dd62 100644 --- a/code/game/objects/structures/mineral_doors.dm +++ b/code/game/objects/structures/mineral_doors.dm @@ -125,9 +125,9 @@ /obj/structure/mineral_door/attackby(obj/item/weapon/W, mob/user, params) if(istype(W,/obj/item/weapon/pickaxe)) var/obj/item/weapon/pickaxe/digTool = W - user << "You start digging the [name]..." + to_chat(user, "You start digging the [name]...") if(do_after(user,digTool.digspeed*(1+round(max_integrity*0.01)), target = src) && src) - user << "You finish digging." + to_chat(user, "You finish digging.") deconstruct(TRUE) else if(user.a_intent != INTENT_HARM) attack_hand(user) @@ -165,7 +165,7 @@ sheetType = /obj/item/stack/sheet/mineral/uranium obj_integrity = 300 max_integrity = 300 - luminosity = 2 + light_range = 2 /obj/structure/mineral_door/sandstone name = "sandstone door" diff --git a/code/game/objects/structures/mirror.dm b/code/game/objects/structures/mirror.dm index 3ddf9aa175..76e00ae67a 100644 --- a/code/game/objects/structures/mirror.dm +++ b/code/game/objects/structures/mirror.dm @@ -20,7 +20,7 @@ var/userloc = H.loc - //see code/modules/mob/new_player/preferences.dm at approx line 545 for comments! + //see code/modules/mob/dead/new_player/preferences.dm at approx line 545 for comments! //this is largely copypasted from there. //handle facial hair (if necessary) @@ -66,12 +66,12 @@ if(broken) user.changeNext_move(CLICK_CD_MELEE) if(WT.remove_fuel(0, user)) - user << "You begin repairing [src]..." + to_chat(user, "You begin repairing [src]...") playsound(src, 'sound/items/Welder.ogg', 100, 1) if(do_after(user, 10*I.toolspeed, target = src)) if(!user || !WT || !WT.isOn()) return - user << "You repair [src]." + to_chat(user, "You repair [src].") broken = 0 icon_state = initial(icon_state) desc = initial(desc) @@ -164,7 +164,7 @@ H.dna.features["mcolor"] = sanitize_hexcolor(new_mutantcolor) else - H << "Invalid color. Your color is not bright enough." + to_chat(H, "Invalid color. Your color is not bright enough.") H.update_body() H.update_hair() @@ -179,14 +179,14 @@ if(H.gender == "male") if(alert(H, "Become a Witch?", "Confirmation", "Yes", "No") == "Yes") H.gender = "female" - H << "Man, you feel like a woman!" + to_chat(H, "Man, you feel like a woman!") else return else if(alert(H, "Become a Warlock?", "Confirmation", "Yes", "No") == "Yes") H.gender = "male" - H << "Whoa man, you feel like a man!" + to_chat(H, "Whoa man, you feel like a man!") else return H.dna.update_ui_block(DNA_GENDER_BLOCK) diff --git a/code/game/objects/structures/mop_bucket.dm b/code/game/objects/structures/mop_bucket.dm index 453861f507..604de1d6c1 100644 --- a/code/game/objects/structures/mop_bucket.dm +++ b/code/game/objects/structures/mop_bucket.dm @@ -15,10 +15,10 @@ /obj/structure/mopbucket/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/mop)) if(reagents.total_volume < 1) - user << "[src] is out of water!" + to_chat(user, "[src] is out of water!") else reagents.trans_to(I, 5) - user << "You wet [I] in [src]." + to_chat(user, "You wet [I] in [src].") playsound(loc, 'sound/effects/slosh.ogg', 25, 1) else return ..() \ No newline at end of file diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index 34094ad2ef..3b9efb6410 100644 --- a/code/game/objects/structures/morgue.dm +++ b/code/game/objects/structures/morgue.dm @@ -50,10 +50,10 @@ /obj/structure/bodycontainer/attack_hand(mob/user) if(locked) - user << "It's locked." + to_chat(user, "It's locked.") return if(!connected) - user << "That doesn't appear to have a tray." + to_chat(user, "That doesn't appear to have a tray.") return if(connected.loc == src) open() @@ -89,7 +89,7 @@ open() /obj/structure/bodycontainer/relay_container_resist(mob/living/user, obj/O) - user << "You slam yourself into the side of [O]." + to_chat(user, "You slam yourself into the side of [O].") container_resist(user) /obj/structure/bodycontainer/proc/open() @@ -156,7 +156,7 @@ var/global/list/crematoriums = new/list() var/id = 1 /obj/structure/bodycontainer/crematorium/attack_robot(mob/user) //Borgs can't use crematoriums without help - user << "[src] is locked against you." + to_chat(user, "[src] is locked against you.") return /obj/structure/bodycontainer/crematorium/Destroy() @@ -203,7 +203,7 @@ var/global/list/crematoriums = new/list() if (M.stat != DEAD) M.emote("scream") if(user) - user.attack_log +="\[[time_stamp()]\] Cremated [M]/[M.ckey]" + user.log_message("Cremated [M]/[M.ckey]", INDIVIDUAL_ATTACK_LOG) log_attack("\[[time_stamp()]\] [user]/[user.ckey] cremated [M]/[M.ckey]") else log_attack("\[[time_stamp()]\] UNKNOWN cremated [M]/[M.ckey]") @@ -258,7 +258,7 @@ var/global/list/crematoriums = new/list() connected.close() add_fingerprint(user) else - user << "That's not connected to anything!" + to_chat(user, "That's not connected to anything!") /obj/structure/tray/MouseDrop_T(atom/movable/O as mob|obj, mob/user) if(!istype(O, /atom/movable) || O.anchored || !Adjacent(user) || !user.Adjacent(O) || O.loc == user) diff --git a/code/game/objects/structures/musician.dm b/code/game/objects/structures/musician.dm index 236043a3df..4ebb05b5b8 100644 --- a/code/game/objects/structures/musician.dm +++ b/code/game/objects/structures/musician.dm @@ -83,18 +83,18 @@ cur_acc[i] = "n" for(var/line in lines) - //world << line + //to_chat(world, line) for(var/beat in splittext(lowertext(line), ",")) - //world << "beat: [beat]" + //to_chat(world, "beat: [beat]") var/list/notes = splittext(beat, "/") for(var/note in splittext(notes[1], "-")) - //world << "note: [note]" + //to_chat(world, "note: [note]") if(!playing || shouldStopPlaying(user))//If the instrument is playing, or special case playing = 0 return if(lentext(note) == 0) continue - //world << "Parse: [copytext(note,1,2)]" + //to_chat(world, "Parse: [copytext(note,1,2)]") var/cur_note = text2ascii(note) - 96 if(cur_note < 1 || cur_note > 7) continue @@ -218,12 +218,12 @@ else tempo = sanitize_tempo(5) // default 120 BPM if(lines.len > 50) - usr << "Too many lines!" + to_chat(usr, "Too many lines!") lines.Cut(51) var/linenum = 1 for(var/l in lines) if(lentext(l) > 50) - usr << "Line [linenum] too long!" + to_chat(usr, "Line [linenum] too long!") lines.Remove(l) else linenum++ @@ -339,7 +339,7 @@ /obj/structure/piano/attack_hand(mob/user) if(!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to do this!" + to_chat(user, "You don't have the dexterity to do this!") return 1 interact(user) @@ -357,7 +357,7 @@ if (istype(O, /obj/item/weapon/wrench)) if (!anchored && !isinspace()) playsound(src.loc, O.usesound, 50, 1) - user << " You begin to tighten \the [src] to the floor..." + to_chat(user, " You begin to tighten \the [src] to the floor...") if (do_after(user, 20*O.toolspeed, target = src)) user.visible_message( \ "[user] tightens \the [src]'s casters.", \ @@ -366,7 +366,7 @@ anchored = 1 else if(anchored) playsound(src.loc, O.usesound, 50, 1) - user << " You begin to loosen \the [src]'s casters..." + to_chat(user, " You begin to loosen \the [src]'s casters...") if (do_after(user, 40*O.toolspeed, target = src)) user.visible_message( \ "[user] loosens \the [src]'s casters.", \ diff --git a/code/game/objects/structures/noticeboard.dm b/code/game/objects/structures/noticeboard.dm index d2b8d0351b..1a5982821d 100644 --- a/code/game/objects/structures/noticeboard.dm +++ b/code/game/objects/structures/noticeboard.dm @@ -26,16 +26,16 @@ /obj/structure/noticeboard/attackby(obj/item/weapon/O, mob/user, params) if(istype(O, /obj/item/weapon/paper) || istype(O, /obj/item/weapon/photo)) if(!allowed(user)) - user << "You are not authorized to add notices" + to_chat(user, "You are not authorized to add notices") return if(notices < 5) if(!user.transferItemToLoc(O, src)) return notices++ icon_state = "nboard0[notices]" - user << "You pin the [O] to the noticeboard." + to_chat(user, "You pin the [O] to the noticeboard.") else - user << "The notice board is full" + to_chat(user, "The notice board is full") else return ..() @@ -73,7 +73,7 @@ add_fingerprint(usr) P.attackby(I, usr) else - usr << "You'll need something to write with!" + to_chat(usr, "You'll need something to write with!") if(href_list["read"]) var/obj/item/I = locate(href_list["read"]) in contents diff --git a/code/game/objects/structures/plasticflaps.dm b/code/game/objects/structures/plasticflaps.dm index 97a665146a..fd2d168f50 100644 --- a/code/game/objects/structures/plasticflaps.dm +++ b/code/game/objects/structures/plasticflaps.dm @@ -13,9 +13,9 @@ . = ..() switch(state) if(PLASTIC_FLAPS_NORMAL) - user << "[src] are screwed to the floor." + to_chat(user, "[src] are screwed to the floor.") if(PLASTIC_FLAPS_DETACHED) - user << "[src] are no longer screwed to the floor, and the flaps can be cut apart." + to_chat(user, "[src] are no longer screwed to the floor, and the flaps can be cut apart.") /obj/structure/plasticflaps/attackby(obj/item/W, mob/user, params) add_fingerprint(user) @@ -28,7 +28,7 @@ return state = PLASTIC_FLAPS_DETACHED anchored = FALSE - user << "You unscrew [src] from the floor." + to_chat(user, "You unscrew [src] from the floor.") else if(state == PLASTIC_FLAPS_DETACHED) playsound(src.loc, W.usesound, 100, 1) user.visible_message("[user] screws [src] to the floor.", "You start to screw [src] to the floor...", "You hear rustling noises.") @@ -37,7 +37,7 @@ return state = PLASTIC_FLAPS_NORMAL anchored = TRUE - user << "You screw [src] from the floor." + to_chat(user, "You screw [src] from the floor.") else if(istype(W, /obj/item/weapon/wirecutters)) if(state == PLASTIC_FLAPS_DETACHED) playsound(src.loc, W.usesound, 100, 1) @@ -45,7 +45,7 @@ if(do_after(user, 50*W.toolspeed, target = src)) if(state != PLASTIC_FLAPS_DETACHED) return - user << "You cut apart [src]." + to_chat(user, "You cut apart [src].") var/obj/item/stack/sheet/plastic/five/P = new(loc) P.add_fingerprint(user) qdel(src) diff --git a/code/game/objects/structures/reflector.dm b/code/game/objects/structures/reflector.dm index 7f8e9c9ff5..2365930c3b 100644 --- a/code/game/objects/structures/reflector.dm +++ b/code/game/objects/structures/reflector.dm @@ -43,10 +43,10 @@ return if(istype(W, /obj/item/weapon/wrench)) if(anchored) - user << "Unweld the [src] first!" + to_chat(user, "Unweld the [src] first!") if(do_after(user, 80*W.toolspeed, target = src)) playsound(src.loc, W.usesound, 50, 1) - user << "You dismantle the [src]." + to_chat(user, "You dismantle the [src].") new framebuildstacktype(loc, framebuildstackamount) new buildstacktype(loc, buildstackamount) qdel(src) @@ -63,7 +63,7 @@ if(!src || !WT.isOn()) return anchored = 1 - user << "You weld \the [src] to the floor." + to_chat(user, "You weld \the [src] to the floor.") if(1) if (WT.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1) @@ -74,7 +74,7 @@ if(!src || !WT.isOn()) return anchored = 0 - user << "You cut \the [src] free from the floor." + to_chat(user, "You cut \the [src] free from the floor.") //Finishing the frame else if(istype(W,/obj/item/stack/sheet)) if(finished) @@ -82,7 +82,7 @@ var/obj/item/stack/sheet/S = W if(istype(W, /obj/item/stack/sheet/glass)) if(S.get_amount() < 5) - user << "You need five sheets of glass to create a reflector!" + to_chat(user, "You need five sheets of glass to create a reflector!") return else S.use(5) @@ -90,7 +90,7 @@ qdel (src) if(istype(W,/obj/item/stack/sheet/rglass)) if(S.get_amount() < 10) - user << "You need ten sheets of reinforced glass to create a double reflector!" + to_chat(user, "You need ten sheets of reinforced glass to create a double reflector!") return else S.use(10) @@ -116,7 +116,7 @@ if(usr.stat || !usr.canmove || usr.restrained()) return if (src.anchored) - usr << "It is fastened to the floor!" + to_chat(usr, "It is fastened to the floor!") return 0 src.setDir(turn(src.dir, 270)) return 1 @@ -125,7 +125,7 @@ /obj/structure/reflector/AltClick(mob/user) ..() if(!user.canUseTopic(src, be_close=TRUE)) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return else rotate() diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm index 62c3fd3b40..cd52610be2 100644 --- a/code/game/objects/structures/safe.dm +++ b/code/game/objects/structures/safe.dm @@ -49,9 +49,9 @@ FLOOR SAFES /obj/structure/safe/proc/check_unlocked(mob/user, canhear) if(user && canhear) if(tumbler_1_pos == tumbler_1_open) - user << "You hear a [pick("tonk", "krunk", "plunk")] from [src]." + to_chat(user, "You hear a [pick("tonk", "krunk", "plunk")] from [src].") if(tumbler_2_pos == tumbler_2_open) - user << "You hear a [pick("tink", "krink", "plink")] from [src]." + to_chat(user, "You hear a [pick("tink", "krink", "plink")] from [src].") if(tumbler_1_pos == tumbler_1_open && tumbler_2_pos == tumbler_2_open) if(user) visible_message("[pick("Spring", "Sprang", "Sproing", "Clunk", "Krunk")]!") return 1 @@ -103,13 +103,13 @@ FLOOR SAFES if(href_list["open"]) if(check_unlocked()) - user << "You [open ? "close" : "open"] [src]." + to_chat(user, "You [open ? "close" : "open"] [src].") open = !open update_icon() updateUsrDialog() return else - user << "You can't [open ? "close" : "open"] [src], the lock is engaged!" + to_chat(user, "You can't [open ? "close" : "open"] [src], the lock is engaged!") return if(href_list["decrement"]) @@ -117,11 +117,11 @@ FLOOR SAFES if(dial == tumbler_1_pos + 1 || dial == tumbler_1_pos - 71) tumbler_1_pos = decrement(tumbler_1_pos) if(canhear) - user << "You hear a [pick("clack", "scrape", "clank")] from [src]." + to_chat(user, "You hear a [pick("clack", "scrape", "clank")] from [src].") if(tumbler_1_pos == tumbler_2_pos + 37 || tumbler_1_pos == tumbler_2_pos - 35) tumbler_2_pos = decrement(tumbler_2_pos) if(canhear) - user << "You hear a [pick("click", "chink", "clink")] from [src]." + to_chat(user, "You hear a [pick("click", "chink", "clink")] from [src].") check_unlocked(user, canhear) updateUsrDialog() return @@ -131,11 +131,11 @@ FLOOR SAFES if(dial == tumbler_1_pos - 1 || dial == tumbler_1_pos + 71) tumbler_1_pos = increment(tumbler_1_pos) if(canhear) - user << "You hear a [pick("clack", "scrape", "clank")] from [src]." + to_chat(user, "You hear a [pick("clack", "scrape", "clank")] from [src].") if(tumbler_1_pos == tumbler_2_pos - 37 || tumbler_1_pos == tumbler_2_pos + 35) tumbler_2_pos = increment(tumbler_2_pos) if(canhear) - user << "You hear a [pick("click", "chink", "clink")] from [src]." + to_chat(user, "You hear a [pick("click", "chink", "clink")] from [src].") check_unlocked(user, canhear) updateUsrDialog() return @@ -156,17 +156,17 @@ FLOOR SAFES if(I.w_class + space <= maxspace) space += I.w_class if(!user.drop_item()) - user << "\The [I] is stuck to your hand, you cannot put it in the safe!" + to_chat(user, "\The [I] is stuck to your hand, you cannot put it in the safe!") return I.forceMove(src) - user << "You put [I] in [src]." + to_chat(user, "You put [I] in [src].") updateUsrDialog() return else - user << "[I] won't fit in [src]." + to_chat(user, "[I] won't fit in [src].") return else if(istype(I, /obj/item/clothing/neck/stethoscope)) - user << "Hold [I] in one of your hands while you manipulate the dial!" + to_chat(user, "Hold [I] in one of your hands while you manipulate the dial!") else return ..() diff --git a/code/game/objects/structures/showcase.dm b/code/game/objects/structures/showcase.dm index 119ddde323..82e0615344 100644 --- a/code/game/objects/structures/showcase.dm +++ b/code/game/objects/structures/showcase.dm @@ -44,18 +44,18 @@ /obj/structure/showcase/attackby(obj/item/W, mob/user) if(istype(W, /obj/item/weapon/screwdriver) && !anchored) if(deconstruction_state == SHOWCASE_SCREWDRIVERED) - user << "You screw the screws back into the showcase." + to_chat(user, "You screw the screws back into the showcase.") playsound(loc, W.usesound, 100, 1) deconstruction_state = SHOWCASE_CONSTRUCTED else if (deconstruction_state == SHOWCASE_CONSTRUCTED) - user << "You unscrew the screws." + to_chat(user, "You unscrew the screws.") playsound(loc, W.usesound, 100, 1) deconstruction_state = SHOWCASE_SCREWDRIVERED if(istype(W, /obj/item/weapon/crowbar) && deconstruction_state == SHOWCASE_SCREWDRIVERED) if(do_after(user, 20*W.toolspeed, target = src)) playsound(loc, W.usesound, 100, 1) - user << "You start to crowbar the showcase apart..." + to_chat(user, "You start to crowbar the showcase apart...") new /obj/item/stack/sheet/metal (get_turf(src), 4) qdel(src) @@ -69,8 +69,8 @@ switch(deconstruction_state) if(SHOWCASE_CONSTRUCTED) - user << "The showcase is fully constructed." + to_chat(user, "The showcase is fully constructed.") if(SHOWCASE_SCREWDRIVERED) - user << "The showcase has its screws loosened." + to_chat(user, "The showcase has its screws loosened.") else - user << "If you see this, something is wrong." + to_chat(user, "If you see this, something is wrong.") diff --git a/code/game/objects/structures/spirit_board.dm b/code/game/objects/structures/spirit_board.dm index 5bcb2c9974..7cd9f1d8a1 100644 --- a/code/game/objects/structures/spirit_board.dm +++ b/code/game/objects/structures/spirit_board.dm @@ -57,8 +57,8 @@ light_amount = T.get_lumcount() - if(light_amount > 2) - M << "It's too bright here to use [src.name]!" + if(light_amount > 0.2) + to_chat(M, "It's too bright here to use [src.name]!") return 0 //mobs in range check @@ -66,12 +66,12 @@ for(var/mob/living/L in orange(1,src)) if(L.ckey && L.client) if((world.time - L.client.inactivity) < (world.time - 300) || L.stat != CONSCIOUS || L.restrained())//no playing with braindeads or corpses or handcuffed dudes. - M << "[L] doesn't seem to be paying attention..." + to_chat(M, "[L] doesn't seem to be paying attention...") else users_in_range++ if(users_in_range < 2) - M << "There aren't enough people to use the [src.name]!" + to_chat(M, "There aren't enough people to use the [src.name]!") return 0 return 1 \ No newline at end of file diff --git a/code/game/objects/structures/statues.dm b/code/game/objects/structures/statues.dm index d7e509c69d..1987a4699e 100644 --- a/code/game/objects/structures/statues.dm +++ b/code/game/objects/structures/statues.dm @@ -97,7 +97,7 @@ /obj/structure/statue/uranium obj_integrity = 300 - luminosity = 2 + light_range = 2 material_drop_type = /obj/item/stack/sheet/mineral/uranium var/last_event = 0 var/active = null diff --git a/code/game/objects/structures/table_frames.dm b/code/game/objects/structures/table_frames.dm index 559463d604..b6837015f1 100644 --- a/code/game/objects/structures/table_frames.dm +++ b/code/game/objects/structures/table_frames.dm @@ -24,7 +24,7 @@ /obj/structure/table_frame/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wrench)) - user << "You start disassembling [src]..." + to_chat(user, "You start disassembling [src]...") playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 30*I.toolspeed, target = src)) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) @@ -32,41 +32,41 @@ else if(istype(I, /obj/item/stack/sheet/plasteel)) var/obj/item/stack/sheet/plasteel/P = I if(P.get_amount() < 1) - user << "You need one plasteel sheet to do this!" + to_chat(user, "You need one plasteel sheet to do this!") return - user << "You start adding [P] to [src]..." + to_chat(user, "You start adding [P] to [src]...") if(do_after(user, 50, target = src) && P.use(1)) make_new_table(/obj/structure/table/reinforced) else if(istype(I, /obj/item/stack/sheet/metal)) var/obj/item/stack/sheet/metal/M = I if(M.get_amount() < 1) - user << "You need one metal sheet to do this!" + to_chat(user, "You need one metal sheet to do this!") return - user << "You start adding [M] to [src]..." + to_chat(user, "You start adding [M] to [src]...") if(do_after(user, 20, target = src) && M.use(1)) make_new_table(/obj/structure/table) else if(istype(I, /obj/item/stack/sheet/glass)) var/obj/item/stack/sheet/glass/G = I if(G.get_amount() < 1) - user << "You need one glass sheet to do this!" + to_chat(user, "You need one glass sheet to do this!") return - user << "You start adding [G] to [src]..." + to_chat(user, "You start adding [G] to [src]...") if(do_after(user, 20, target = src) && G.use(1)) make_new_table(/obj/structure/table/glass) else if(istype(I, /obj/item/stack/sheet/mineral/silver)) var/obj/item/stack/sheet/mineral/silver/S = I if(S.get_amount() < 1) - user << "You need one silver sheet to do this!" + to_chat(user, "You need one silver sheet to do this!") return - user << "You start adding [S] to [src]..." + to_chat(user, "You start adding [S] to [src]...") if(do_after(user, 20, target = src) && S.use(1)) make_new_table(/obj/structure/table/optable) else if(istype(I, /obj/item/stack/tile/carpet)) var/obj/item/stack/tile/carpet/C = I if(C.get_amount() < 1) - user << "You need one carpet sheet to do this!" + to_chat(user, "You need one carpet sheet to do this!") return - user << "You start adding [C] to [src]..." + to_chat(user, "You start adding [C] to [src]...") if(do_after(user, 20, target = src) && C.use(1)) make_new_table(/obj/structure/table/wood/fancy) else @@ -108,18 +108,18 @@ if(istype(I, /obj/item/stack/sheet/mineral/wood)) var/obj/item/stack/sheet/mineral/wood/W = I if(W.get_amount() < 1) - user << "You need one wood sheet to do this!" + to_chat(user, "You need one wood sheet to do this!") return - user << "You start adding [W] to [src]..." + to_chat(user, "You start adding [W] to [src]...") if(do_after(user, 20, target = src) && W.use(1)) make_new_table(/obj/structure/table/wood) return else if(istype(I, /obj/item/stack/tile/carpet)) var/obj/item/stack/tile/carpet/C = I if(C.get_amount() < 1) - user << "You need one carpet sheet to do this!" + to_chat(user, "You need one carpet sheet to do this!") return - user << "You start adding [C] to [src]..." + to_chat(user, "You start adding [C] to [src]...") if(do_after(user, 20, target = src) && C.use(1)) make_new_table(/obj/structure/table/wood/poker) else @@ -145,9 +145,9 @@ if(istype(I, /obj/item/stack/tile/brass)) var/obj/item/stack/tile/brass/W = I if(W.get_amount() < 1) - user << "You need one brass sheet to do this!" + to_chat(user, "You need one brass sheet to do this!") return - user << "You start adding [W] to [src]..." + to_chat(user, "You start adding [W] to [src]...") if(do_after(user, 20, target = src) && W.use(1)) make_new_table(/obj/structure/table/reinforced/brass) else diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 60f47a15d2..79224863e8 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -61,10 +61,10 @@ if(user.a_intent == INTENT_GRAB && user.pulling && isliving(user.pulling)) var/mob/living/pushed_mob = user.pulling if(pushed_mob.buckled) - user << "[pushed_mob] is buckled to [pushed_mob.buckled]!" + to_chat(user, "[pushed_mob] is buckled to [pushed_mob.buckled]!") return if(user.grab_state < GRAB_AGGRESSIVE) - user << "You need a better grip to do that!" + to_chat(user, "You need a better grip to do that!") return tablepush(user, pushed_mob) user.stop_pulling() @@ -100,14 +100,14 @@ /obj/structure/table/attackby(obj/item/I, mob/user, params) if(!(flags & NODECONSTRUCT)) if(istype(I, /obj/item/weapon/screwdriver) && deconstruction_ready) - user << "You start disassembling [src]..." + to_chat(user, "You start disassembling [src]...") playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 20*I.toolspeed, target = src)) deconstruct(TRUE) return if(istype(I, /obj/item/weapon/wrench) && deconstruction_ready) - user << "You start deconstructing [src]..." + to_chat(user, "You start deconstructing [src]...") playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 40*I.toolspeed, target = src)) playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) @@ -300,16 +300,16 @@ if(WT.remove_fuel(0, user)) playsound(src.loc, W.usesound, 50, 1) if(deconstruction_ready) - user << "You start strengthening the reinforced table..." + to_chat(user, "You start strengthening the reinforced table...") if (do_after(user, 50*W.toolspeed, target = src)) if(!src || !WT.isOn()) return - user << "You strengthen the table." + to_chat(user, "You strengthen the table.") deconstruction_ready = 0 else - user << "You start weakening the reinforced table..." + to_chat(user, "You start weakening the reinforced table...") if (do_after(user, 50*W.toolspeed, target = src)) if(!src || !WT.isOn()) return - user << "You weaken the table." + to_chat(user, "You weaken the table.") deconstruction_ready = 1 else . = ..() @@ -498,7 +498,7 @@ if(building) return building = TRUE - user << "You start constructing a rack..." + to_chat(user, "You start constructing a rack...") if(do_after(user, 50, target = src, progress=TRUE)) if(!user.drop_item()) return diff --git a/code/game/objects/structures/tank_dispenser.dm b/code/game/objects/structures/tank_dispenser.dm index 96b8571840..f5cc3da64f 100644 --- a/code/game/objects/structures/tank_dispenser.dm +++ b/code/game/objects/structures/tank_dispenser.dm @@ -54,18 +54,18 @@ default_unfasten_wrench(user, I, time = 20) return else if(user.a_intent != INTENT_HARM) - user << "[I] does not fit into [src]." + to_chat(user, "[I] does not fit into [src].") return else return ..() if(full) - user << "[src] can't hold any more of [I]." + to_chat(user, "[src] can't hold any more of [I].") return if(!user.drop_item()) return I.loc = src - user << "You put [I] in [src]." + to_chat(user, "You put [I] in [src].") update_icon() /obj/structure/tank_dispenser/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ diff --git a/code/game/objects/structures/target_stake.dm b/code/game/objects/structures/target_stake.dm index 5c0d2ff759..0c3ed5fb54 100644 --- a/code/game/objects/structures/target_stake.dm +++ b/code/game/objects/structures/target_stake.dm @@ -29,7 +29,7 @@ T.density = 1 T.layer = OBJ_LAYER + 0.01 T.loc = loc - user << "You slide the target into the stake." + to_chat(user, "You slide the target into the stake.") /obj/structure/target_stake/attack_hand(mob/user) if(pinned_target) @@ -43,10 +43,10 @@ if(ishuman(user)) if(!user.get_active_held_item()) user.put_in_hands(pinned_target) - user << "You take the target out of the stake." + to_chat(user, "You take the target out of the stake.") else pinned_target.loc = get_turf(user) - user << "You take the target out of the stake." + to_chat(user, "You take the target out of the stake.") /obj/structure/target_stake/bullet_act(obj/item/projectile/P) if(pinned_target) diff --git a/code/game/objects/structures/transit_tubes/station.dm b/code/game/objects/structures/transit_tubes/station.dm index 9550ef0e30..1b41c76eec 100644 --- a/code/game/objects/structures/transit_tubes/station.dm +++ b/code/game/objects/structures/transit_tubes/station.dm @@ -64,7 +64,7 @@ var/mob/living/GM = user.pulling if(user.grab_state >= GRAB_AGGRESSIVE) if(GM.buckled || GM.has_buckled_mobs()) - user << "[GM] is attached to something!" + to_chat(user, "[GM] is attached to something!") return for(var/obj/structure/transit_tube_pod/pod in loc) pod.visible_message("[user] starts putting [GM] into the [pod]!") diff --git a/code/game/objects/structures/transit_tubes/transit_tube.dm b/code/game/objects/structures/transit_tubes/transit_tube.dm index 3b0c24f370..135f5ca02f 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube.dm @@ -37,12 +37,12 @@ if(istype(W, /obj/item/weapon/wrench)) if(tube_construction) for(var/obj/structure/transit_tube_pod/pod in src.loc) - user << "Remove the pod first!" + to_chat(user, "Remove the pod first!") return user.visible_message("[user] starts to deattach \the [src].", "You start to deattach the [name]...") playsound(src.loc, W.usesound, 50, 1) if(do_after(user, 35*W.toolspeed, target = src)) - user << "You deattach the [name]." + to_chat(user, "You deattach the [name].") var/obj/structure/c_transit_tube/R = new tube_construction(loc) R.setDir(dir) transfer_fingerprints_to(R) 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 2f46c0b44f..aaab5f040f 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm @@ -15,7 +15,7 @@ /obj/structure/c_transit_tube/examine(mob/user) ..() - user << "Alt-click to rotate it clockwise." + to_chat(user, "Alt-click to rotate it clockwise.") /obj/structure/c_transit_tube/proc/tube_rotate() setDir(turn(dir, -90)) @@ -46,7 +46,7 @@ /obj/structure/c_transit_tube/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return @@ -64,13 +64,13 @@ /obj/structure/c_transit_tube/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wrench)) - user << "You start attaching the [name]..." + to_chat(user, "You start attaching the [name]...") add_fingerprint(user) playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 40*I.toolspeed, target = src)) if(QDELETED(src)) return - user << "You attach the [name]." + to_chat(user, "You attach the [name].") var/obj/structure/transit_tube/R = new build_type(loc, dir) transfer_fingerprints_to(R) qdel(src) 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 82bdade48f..b5458d81f8 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_pod.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_pod.dm @@ -69,9 +69,9 @@ if(!moving) user.changeNext_move(CLICK_CD_BREAKOUT) user.last_special = world.time + CLICK_CD_BREAKOUT - user << "You start trying to escape from the pod..." + to_chat(user, "You start trying to escape from the pod...") if(do_after(user, 600, target = src)) - user << "You manage to open the pod." + to_chat(user, "You manage to open the pod.") empty_pod() /obj/structure/transit_tube_pod/proc/empty_pod(atom/location) diff --git a/code/game/objects/structures/traps.dm b/code/game/objects/structures/traps.dm index b6c9e0ba7b..2b32864aec 100644 --- a/code/game/objects/structures/traps.dm +++ b/code/game/objects/structures/traps.dm @@ -4,58 +4,82 @@ icon = 'icons/obj/hand_of_god_structures.dmi' icon_state = "trap" density = 0 + anchored = TRUE alpha = 30 //initially quite hidden when not "recharging" var/last_trigger = 0 var/time_between_triggers = 600 //takes a minute to recharge -/obj/structure/trap/Crossed(atom/movable/AM) - if(last_trigger + time_between_triggers > world.time) - return - alpha = initial(alpha) - if(isliving(AM)) - var/mob/living/L = AM - last_trigger = world.time - alpha = 200 - trap_effect(L) - animate(src, alpha = initial(alpha), time = time_between_triggers) + var/list/static/ignore_typecache + + var/datum/effect_system/spark_spread/spark_system + +/obj/structure/trap/Initialize(mapload) + ..() + spark_system = new + spark_system.set_up(4,1,src) + spark_system.attach(src) + + if(!ignore_typecache) + ignore_typecache = typecacheof(list( + /obj/effect, + /mob/dead)) + +/obj/structure/trap/Destroy() + qdel(spark_system) + spark_system = null + . = ..() /obj/structure/trap/examine(mob/user) ..() - if(!isliving(user)) //bad ghosts, stop trying to powergame from beyond the grave + if(!isliving(user)) return - user << "You reveal a trap!" + if(get_dist(user, src) <= 1) + to_chat(user, "You reveal [src]!") + flare() + +/obj/structure/trap/proc/flare() + // Makes the trap visible, and starts the cooldown until it's + // able to be triggered again. + visible_message("[src] flares brightly!") alpha = 200 animate(src, alpha = initial(alpha), time = time_between_triggers) + last_trigger = world.time + spark_system.start() +/obj/structure/trap/Crossed(atom/movable/AM) + if(last_trigger + time_between_triggers > world.time) + return + // Don't want the traps triggered by sparks, ghosts or projectiles. + if(is_type_in_typecache(AM, ignore_typecache)) + return + flare() + if(isliving(AM)) + trap_effect(AM) /obj/structure/trap/proc/trap_effect(mob/living/L) return /obj/structure/trap/stun name = "shock trap" - desc = "A trap that will shock you, it will burn your flesh and render you immobile, You'd better avoid it." + desc = "A trap that will shock and render you immobile. You'd better avoid it." icon_state = "trap-shock" /obj/structure/trap/stun/trap_effect(mob/living/L) - L << "You are paralyzed from the intense shock!" + L.electrocute_act(30, src, safety=1) // electrocute act does a message. L.Weaken(5) - var/turf/Lturf = get_turf(L) - new /obj/effect/particle_effect/sparks/electricity(Lturf) - new /obj/effect/particle_effect/sparks(Lturf) - /obj/structure/trap/fire name = "flame trap" desc = "A trap that will set you ablaze. You'd better avoid it." icon_state = "trap-fire" - /obj/structure/trap/fire/trap_effect(mob/living/L) - L << "Spontaneous combustion!" + to_chat(L, "Spontaneous combustion!") L.Weaken(1) - var/turf/Lturf = get_turf(L) - new /obj/effect/hotspot(Lturf) - new /obj/effect/particle_effect/sparks(Lturf) + +/obj/structure/trap/fire/flare() + ..() + new /obj/effect/hotspot(get_turf(src)) /obj/structure/trap/chill @@ -63,12 +87,11 @@ desc = "A trap that will chill you to the bone. You'd better avoid it." icon_state = "trap-frost" - /obj/structure/trap/chill/trap_effect(mob/living/L) - L << "You're frozen solid!" + to_chat(L, "You're frozen solid!") L.Weaken(1) L.bodytemperature -= 300 - new /obj/effect/particle_effect/sparks(get_turf(L)) + L.apply_status_effect(/datum/status_effect/freon) /obj/structure/trap/damage @@ -78,12 +101,14 @@ /obj/structure/trap/damage/trap_effect(mob/living/L) - L << "The ground quakes beneath your feet!" + to_chat(L, "The ground quakes beneath your feet!") L.Weaken(5) L.adjustBruteLoss(35) - var/turf/Lturf = get_turf(L) - new /obj/effect/particle_effect/sparks(Lturf) - new /obj/structure/flora/rock(Lturf) + +/obj/structure/trap/damage/flare() + ..() + var/obj/structure/flora/rock/giant_rock = new(get_turf(src)) + QDEL_IN(giant_rock, 200) /obj/structure/trap/ward diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index 72d8e3987b..56a8d0410c 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -29,7 +29,7 @@ var/mob/living/GM = user.pulling if(user.grab_state >= GRAB_AGGRESSIVE) if(GM.loc != get_turf(src)) - user << "[GM] needs to be on [src]!" + to_chat(user, "[GM] needs to be on [src]!") return if(!swirlie) if(open) @@ -49,18 +49,18 @@ GM.visible_message("[user] slams [GM.name] into [src]!", "[user] slams you into [src]!") GM.adjustBruteLoss(5) else - user << "You need a tighter grip!" + to_chat(user, "You need a tighter grip!") else if(cistern && !open) if(!contents.len) - user << "The cistern is empty." + to_chat(user, "The cistern is empty.") else var/obj/item/I = pick(contents) if(ishuman(user)) user.put_in_hands(I) else I.loc = get_turf(src) - user << "You find [I] in the cistern." + to_chat(user, "You find [I] in the cistern.") w_items -= I.w_class else open = !open @@ -73,7 +73,7 @@ /obj/structure/toilet/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/weapon/crowbar)) - user << "You start to [cistern ? "replace the lid on the cistern" : "lift the lid off the cistern"]..." + to_chat(user, "You start to [cistern ? "replace the lid on the cistern" : "lift the lid off the cistern"]...") playsound(loc, 'sound/effects/stonedoor_openclose.ogg', 50, 1) if(do_after(user, 30*I.toolspeed, target = src)) user.visible_message("[user] [cistern ? "replaces the lid on the cistern" : "lifts the lid off the cistern"]!", "You [cistern ? "replace the lid on the cistern" : "lift the lid off the cistern"]!", "You hear grinding porcelain.") @@ -83,24 +83,24 @@ else if(cistern) if(user.a_intent != INTENT_HARM) if(I.w_class > WEIGHT_CLASS_NORMAL) - user << "[I] does not fit!" + to_chat(user, "[I] does not fit!") return if(w_items + I.w_class > WEIGHT_CLASS_HUGE) - user << "The cistern is full!" + to_chat(user, "The cistern is full!") return if(!user.drop_item()) - user << "\The [I] is stuck to your hand, you cannot put it in the cistern!" + to_chat(user, "\The [I] is stuck to your hand, you cannot put it in the cistern!") return I.loc = src w_items += I.w_class - user << "You carefully place [I] into the cistern." + to_chat(user, "You carefully place [I] into the cistern.") else if(istype(I, /obj/item/weapon/reagent_containers)) if (!open) return var/obj/item/weapon/reagent_containers/RG = I RG.reagents.add_reagent("water", min(RG.volume - RG.reagents.total_volume, RG.amount_per_transfer_from_this)) - user << "You fill [RG] from [src]. Gross." + to_chat(user, "You fill [RG] from [src]. Gross.") else return ..() @@ -123,47 +123,47 @@ var/mob/living/GM = user.pulling if(user.grab_state >= GRAB_AGGRESSIVE) if(GM.loc != get_turf(src)) - user << "[GM.name] needs to be on [src]." + to_chat(user, "[GM.name] needs to be on [src].") return user.changeNext_move(CLICK_CD_MELEE) user.visible_message("[user] slams [GM] into [src]!", "You slam [GM] into [src]!") GM.adjustBruteLoss(8) else - user << "You need a tighter grip!" + to_chat(user, "You need a tighter grip!") else if(exposed) if(!hiddenitem) - user << "There is nothing in the drain holder." + to_chat(user, "There is nothing in the drain holder.") else if(ishuman(user)) user.put_in_hands(hiddenitem) else hiddenitem.forceMove(get_turf(src)) - user << "You fish [hiddenitem] out of the drain enclosure." + to_chat(user, "You fish [hiddenitem] out of the drain enclosure.") hiddenitem = null else ..() /obj/structure/urinal/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/weapon/screwdriver)) - user << "You start to [exposed ? "screw the cap back into place" : "unscrew the cap to the drain protector"]..." + to_chat(user, "You start to [exposed ? "screw the cap back into place" : "unscrew the cap to the drain protector"]...") playsound(loc, 'sound/effects/stonedoor_openclose.ogg', 50, 1) if(do_after(user, 20*I.toolspeed, target = src)) user.visible_message("[user] [exposed ? "screws the cap back into place" : "unscrew the cap to the drain protector"]!", "You [exposed ? "screw the cap back into place" : "unscrew the cap on the drain"]!", "You hear metal and squishing noises.") exposed = !exposed else if(exposed) if (hiddenitem) - user << "There is already something in the drain enclosure." + to_chat(user, "There is already something in the drain enclosure.") return if(I.w_class > 1) - user << "[I] is too large for the drain enclosure." + to_chat(user, "[I] is too large for the drain enclosure.") return if(!user.drop_item()) - user << "\[I] is stuck to your hand, you cannot put it in the drain enclosure!" + to_chat(user, "\[I] is stuck to your hand, you cannot put it in the drain enclosure!") return I.forceMove(src) hiddenitem = I - user << "You place [I] into the drain enclosure." + to_chat(user, "You place [I] into the drain enclosure.") /obj/item/weapon/reagent_containers/food/urinalcake @@ -217,9 +217,9 @@ /obj/machinery/shower/attackby(obj/item/I, mob/user, params) if(I.type == /obj/item/device/analyzer) - user << "The water temperature seems to be [watertemp]." + to_chat(user, "The water temperature seems to be [watertemp].") if(istype(I, /obj/item/weapon/wrench)) - user << "You begin to adjust the temperature valve with \the [I]..." + to_chat(user, "You begin to adjust the temperature valve with \the [I]...") if(do_after(user, 50*I.toolspeed, target = src)) switch(watertemp) if("normal") @@ -381,11 +381,11 @@ /obj/machinery/shower/proc/check_heat(mob/living/carbon/C) if(watertemp == "freezing") C.bodytemperature = max(80, C.bodytemperature - 80) - C << "The water is freezing!" + to_chat(C, "The water is freezing!") else if(watertemp == "boiling") C.bodytemperature = min(500, C.bodytemperature + 35) C.adjustFireLoss(5) - C << "The water is searing!" + to_chat(C, "The water is searing!") @@ -406,6 +406,7 @@ desc = "A sink used for washing one's hands and face." anchored = 1 var/busy = 0 //Something's being washed at the moment + var/dispensedreagent = "water" // for whenever plumbing happens /obj/structure/sink/attack_hand(mob/living/user) @@ -417,7 +418,7 @@ return if(busy) - user << "Someone's already washing here." + to_chat(user, "Someone's already washing here.") return var/selected_area = parse_zone(user.zone_selected) var/washing_face = 0 @@ -449,15 +450,18 @@ /obj/structure/sink/attackby(obj/item/O, mob/user, params) if(busy) - user << "Someone's already washing here!" + to_chat(user, "Someone's already washing here!") return if(istype(O, /obj/item/weapon/reagent_containers)) var/obj/item/weapon/reagent_containers/RG = O if(RG.container_type & OPENCONTAINER) - RG.reagents.add_reagent("water", min(RG.volume - RG.reagents.total_volume, RG.amount_per_transfer_from_this)) - user << "You fill [RG] from [src]." - return 1 + if(!RG.reagents.holder_full()) + RG.reagents.add_reagent("[dispensedreagent]", min(RG.volume - RG.reagents.total_volume, RG.amount_per_transfer_from_this)) + to_chat(user, "You fill [RG] from [src].") + return TRUE + to_chat(user, "\The [RG] is full.") + return FALSE if(istype(O, /obj/item/weapon/melee/baton)) var/obj/item/weapon/melee/baton/B = O @@ -475,16 +479,16 @@ return if(istype(O, /obj/item/weapon/mop)) - O.reagents.add_reagent("water", 5) - user << "You wet [O] in [src]." + O.reagents.add_reagent("[dispensedreagent]", 5) + to_chat(user, "You wet [O] in [src].") playsound(loc, 'sound/effects/slosh.ogg', 25, 1) + return - if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/monkeycube)) - var/obj/item/weapon/reagent_containers/food/snacks/monkeycube/M = O - user << "You place [O] under a stream of water..." - user.drop_item() - M.loc = get_turf(src) - M.Expand() + if(istype(O, /obj/item/stack/medical/gauze)) + var/obj/item/stack/medical/gauze/G = O + new /obj/item/weapon/reagent_containers/glass/rag(src.loc) + to_chat(user, "You tear off a strip of gauze and make a rag.") + G.use(1) return if(!istype(O)) @@ -493,7 +497,7 @@ return if(user.a_intent != INTENT_HARM) - user << "You start washing [O]..." + to_chat(user, "You start washing [O]...") busy = 1 if(!do_after(user, 40, target = src)) busy = 0 @@ -501,6 +505,9 @@ busy = 0 O.clean_blood() O.acid_level = 0 + create_reagents(5) + reagents.add_reagent("[dispensedreagent]", 5) + reagents.reaction(O, TOUCH) user.visible_message("[user] washes [O] using [src].", \ "You wash [O] using [src].") return 1 diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index cbefa9d65b..4f820bb4ad 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -30,7 +30,7 @@ /obj/structure/windoor_assembly/examine(mob/user) ..() - user << "Alt-click to rotate it clockwise." + to_chat(user, "Alt-click to rotate it clockwise.") /obj/structure/windoor_assembly/New(loc, set_dir) ..() @@ -98,7 +98,7 @@ if(do_after(user, 40*W.toolspeed, target = src)) if(!src || !WT.isOn()) return - user << "You disassemble the windoor assembly." + to_chat(user, "You disassemble the windoor assembly.") var/obj/item/stack/sheet/rglass/RG = new (get_turf(src), 5) RG.add_fingerprint(user) if(secure) @@ -112,7 +112,7 @@ if(istype(W, /obj/item/weapon/wrench) && !anchored) for(var/obj/machinery/door/window/WD in loc) if(WD.dir == dir) - user << "There is already a windoor in that location!" + to_chat(user, "There is already a windoor in that location!") return playsound(loc, W.usesound, 100, 1) user.visible_message("[user] secures the windoor assembly to the floor.", "You start to secure the windoor assembly to the floor...") @@ -122,9 +122,9 @@ return for(var/obj/machinery/door/window/WD in loc) if(WD.dir == dir) - user << "There is already a windoor in that location!" + to_chat(user, "There is already a windoor in that location!") return - user << "You secure the windoor assembly." + to_chat(user, "You secure the windoor assembly.") anchored = 1 if(secure) name = "secure anchored windoor assembly" @@ -139,7 +139,7 @@ if(do_after(user, 40*W.toolspeed, target = src)) if(!src || !anchored) return - user << "You unsecure the windoor assembly." + to_chat(user, "You unsecure the windoor assembly.") anchored = 0 if(secure) name = "secure windoor assembly" @@ -150,16 +150,16 @@ else if(istype(W, /obj/item/stack/sheet/plasteel) && !secure) var/obj/item/stack/sheet/plasteel/P = W if(P.get_amount() < 2) - user << "You need more plasteel to do this!" + to_chat(user, "You need more plasteel to do this!") return - user << "You start to reinforce the windoor with plasteel..." + to_chat(user, "You start to reinforce the windoor with plasteel...") if(do_after(user,40, target = src)) if(!src || secure || P.get_amount() < 2) return P.use(2) - user << "You reinforce the windoor." + to_chat(user, "You reinforce the windoor.") secure = 1 if(anchored) name = "secure anchored windoor assembly" @@ -175,9 +175,9 @@ return var/obj/item/stack/cable_coil/CC = W if(!CC.use(1)) - user << "You need more cable to do this!" + to_chat(user, "You need more cable to do this!") return - user << "You wire the windoor." + to_chat(user, "You wire the windoor.") state = "02" if(secure) name = "secure wired windoor assembly" @@ -197,7 +197,7 @@ if(!src || state != "02") return - user << "You cut the windoor wires." + to_chat(user, "You cut the windoor wires.") new/obj/item/stack/cable_coil(get_turf(user), 1) state = "01" if(secure) @@ -217,7 +217,7 @@ if(!src || electronics) W.loc = src.loc return - user << "You install the airlock electronics." + to_chat(user, "You install the airlock electronics.") name = "near finished windoor assembly" electronics = W else @@ -234,7 +234,7 @@ if(do_after(user, 40*W.toolspeed, target = src)) if(!src || !electronics) return - user << "You remove the airlock electronics." + to_chat(user, "You remove the airlock electronics.") name = "wired windoor assembly" var/obj/item/weapon/electronics/airlock/ae ae = electronics @@ -255,7 +255,7 @@ //Crowbar to complete the assembly, Step 7 complete. else if(istype(W, /obj/item/weapon/crowbar)) if(!electronics) - usr << "The assembly is missing electronics!" + to_chat(usr, "The assembly is missing electronics!") return usr << browse(null, "window=windoor_access") playsound(loc, W.usesound, 100, 1) @@ -266,7 +266,7 @@ if(loc && electronics) density = 1 //Shouldn't matter but just incase - user << "You finish the windoor." + to_chat(user, "You finish the windoor.") if(secure) var/obj/machinery/door/window/brigdoor/windoor = new /obj/machinery/door/window/brigdoor(loc) @@ -326,13 +326,13 @@ if(usr.stat || !usr.canmove || usr.restrained()) return if(anchored) - usr << "[src] cannot be rotated while it is fastened to the floor!" + to_chat(usr, "[src] cannot be rotated while it is fastened to the floor!") return FALSE var/target_dir = turn(dir, 270) if(!valid_window_location(loc, target_dir)) - usr << "[src] cannot be rotated in that direction!" + to_chat(usr, "[src] cannot be rotated in that direction!") return FALSE setDir(target_dir) @@ -344,7 +344,7 @@ /obj/structure/windoor_assembly/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return @@ -360,11 +360,11 @@ return if(facing == "l") - usr << "The windoor will now slide to the right." + to_chat(usr, "The windoor will now slide to the right.") facing = "r" else facing = "l" - usr << "The windoor will now slide to the left." + to_chat(usr, "The windoor will now slide to the left.") update_icon() return diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 27aa40bcdf..9aabba3ed8 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -10,8 +10,10 @@ max_integrity = 25 obj_integrity = 25 var/ini_dir = null - var/state = 0 + var/state = WINDOW_OUT_OF_FRAME var/reinf = 0 + var/heat_resistance = 800 + var/decon_speed = 30 var/wtype = "glass" var/fulltile = 0 var/glass_type = /obj/item/stack/sheet/glass @@ -25,15 +27,15 @@ /obj/structure/window/examine(mob/user) ..() - user << "Alt-click to rotate it clockwise." + to_chat(user, "Alt-click to rotate it clockwise.") -/obj/structure/window/New(Loc,re=0) +/obj/structure/window/Initialize(mapload, direct) ..() obj_integrity = max_integrity - if(re) - reinf = re - if(reinf) - state = 2*anchored + if(direct) + setDir(direct) + if(reinf && anchored) + state = WINDOW_SCREWED_TO_FRAME ini_dir = dir air_update_turf(1) @@ -55,6 +57,20 @@ if(rods) debris += new /obj/item/stack/rods(src, rods) +/obj/structure/window/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + switch(the_rcd.mode) + if(RCD_DECONSTRUCT) + return list("mode" = RCD_DECONSTRUCT, "delay" = 20, "cost" = 5) + return FALSE + +/obj/structure/window/rcd_act(mob/user, var/obj/item/weapon/rcd/the_rcd) + switch(the_rcd.mode) + if(RCD_DECONSTRUCT) + to_chat(user, "You deconstruct the window.") + qdel(src) + return TRUE + return FALSE + /obj/structure/window/narsie_act() add_atom_colour(NARSIE_WINDOW_COLOUR, FIXED_COLOUR_PRIORITY) for(var/obj/item/weapon/shard/shard in debris) @@ -140,74 +156,77 @@ var/obj/item/weapon/weldingtool/WT = I if(obj_integrity < max_integrity) if(WT.remove_fuel(0,user)) - user << "You begin repairing [src]..." + to_chat(user, "You begin repairing [src]...") playsound(loc, WT.usesound, 40, 1) if(do_after(user, 40*I.toolspeed, target = src)) obj_integrity = max_integrity playsound(loc, 'sound/items/Welder2.ogg', 50, 1) update_nearby_icons() - user << "You repair [src]." + to_chat(user, "You repair [src].") else - user << "[src] is already in good condition!" + to_chat(user, "[src] is already in good condition!") return - if(!(flags&NODECONSTRUCT)) if(istype(I, /obj/item/weapon/screwdriver)) playsound(loc, I.usesound, 75, 1) - if(reinf && (state == 2 || state == 1)) - user << (state == 2 ? "You begin to unscrew the window from the frame..." : "You begin to screw the window to the frame...") - else if(reinf && state == 0) - user << (anchored ? "You begin to unscrew the frame from the floor..." : "You begin to screw the frame to the floor...") - else if(!reinf) - user << (anchored ? "You begin to unscrew the window from the floor..." : "You begin to screw the window to the floor...") - - if(do_after(user, 30*I.toolspeed, target = src)) - if(reinf && (state == 1 || state == 2)) - //If state was unfastened, fasten it, else do the reverse - state = (state == 1 ? 2 : 1) - user << (state == 1 ? "You unfasten the window from the frame." : "You fasten the window to the frame.") - else if(reinf && state == 0) + if(reinf) + if(state == WINDOW_SCREWED_TO_FRAME || state == WINDOW_IN_FRAME) + to_chat(user, "You begin to [state == WINDOW_SCREWED_TO_FRAME ? "unscrew the window from":"screw the window to"] the frame...") + if(do_after(user, decon_speed*I.toolspeed, target = src, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored))) + state = (state == WINDOW_IN_FRAME ? WINDOW_SCREWED_TO_FRAME : WINDOW_IN_FRAME) + to_chat(user, "You [state == WINDOW_IN_FRAME ? "unfasten the window from":"fasten the window to"] the frame.") + else if(state == WINDOW_OUT_OF_FRAME) + to_chat(user, "You begin to [anchored ? "unscrew the frame from":"screw the frame to"] the floor...") + if(do_after(user, decon_speed*I.toolspeed, target = src, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored))) + anchored = !anchored + update_nearby_icons() + to_chat(user, "You [anchored ? "fasten the frame to":"unfasten the frame from"] the floor.") + else //if we're not reinforced, we don't need to check or update state + to_chat(user, "You begin to [anchored ? "unscrew the window from":"screw the window to"] the floor...") + if(do_after(user, decon_speed*I.toolspeed, target = src, extra_checks = CALLBACK(src, .proc/check_anchored, anchored))) anchored = !anchored update_nearby_icons() - user << (anchored ? "You fasten the frame to the floor." : "You unfasten the frame from the floor.") - else if(!reinf) - anchored = !anchored - update_nearby_icons() - user << (anchored ? "You fasten the window to the floor." : "You unfasten the window.") + to_chat(user, "You [anchored ? "fasten the window to":"unfasten the window from"] the floor.") return - else if (istype(I, /obj/item/weapon/crowbar) && reinf && (state == 0 || state == 1)) - user << (state == 0 ? "You begin to lever the window into the frame..." : "You begin to lever the window out of the frame...") + + else if (istype(I, /obj/item/weapon/crowbar) && reinf && (state == WINDOW_OUT_OF_FRAME || state == WINDOW_IN_FRAME)) + to_chat(user, "You begin to lever the window [state == WINDOW_OUT_OF_FRAME ? "into":"out of"] the frame...") playsound(loc, I.usesound, 75, 1) - if(do_after(user, 40*I.toolspeed, target = src)) - //If state was out of frame, put into frame, else do the reverse - state = (state == 0 ? 1 : 0) - user << (state == 1 ? "You pry the window into the frame." : "You pry the window out of the frame.") + if(do_after(user, decon_speed*I.toolspeed, target = src, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored))) + state = (state == WINDOW_OUT_OF_FRAME ? WINDOW_IN_FRAME : WINDOW_OUT_OF_FRAME) + to_chat(user, "You pry the window [state == WINDOW_IN_FRAME ? "into":"out of"] the frame.") return else if(istype(I, /obj/item/weapon/wrench) && !anchored) playsound(loc, I.usesound, 75, 1) - user << " You begin to disassemble [src]..." - if(do_after(user, 40*I.toolspeed, target = src)) - if(QDELETED(src)) - return - + to_chat(user, " You begin to disassemble [src]...") + if(do_after(user, decon_speed*I.toolspeed, target = src, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored))) var/obj/item/stack/sheet/G = new glass_type(user.loc, glass_amount) G.add_fingerprint(user) - playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) - user << "You successfully disassemble [src]." + to_chat(user, "You successfully disassemble [src].") qdel(src) return return ..() +/obj/structure/window/proc/check_state(checked_state) + if(state == checked_state) + return TRUE + +/obj/structure/window/proc/check_anchored(checked_anchored) + if(anchored == checked_anchored) + return TRUE + +/obj/structure/window/proc/check_state_and_anchored(checked_state, checked_anchored) + return check_state(checked_state) && check_anchored(checked_anchored) + /obj/structure/window/mech_melee_attack(obj/mecha/M) if(!can_be_reached()) return ..() - /obj/structure/window/proc/can_be_reached(mob/user) if(!fulltile) if(get_dir(user,src) & dir) @@ -238,11 +257,9 @@ if(!disassembled) playsound(src, "shatter", 70, 1) var/turf/T = loc - if(!(flags & NODECONSTRUCT)) for(var/i in debris) var/obj/item/I = i - I.loc = T transfer_fingerprints_to(I) qdel(src) @@ -257,13 +274,13 @@ return if(anchored) - usr << "[src] cannot be rotated while it is fastened to the floor!" + to_chat(usr, "[src] cannot be rotated while it is fastened to the floor!") return FALSE var/target_dir = turn(dir, 90) if(!valid_window_location(loc, target_dir)) - usr << "[src] cannot be rotated in that direction!" + to_chat(usr, "[src] cannot be rotated in that direction!") return FALSE setDir(target_dir) @@ -272,7 +289,6 @@ add_fingerprint(usr) return TRUE - /obj/structure/window/verb/revrotate() set name = "Rotate Window Clockwise" set category = "Object" @@ -282,13 +298,13 @@ return if(anchored) - usr << "[src] cannot be rotated while it is fastened to the floor!" + to_chat(usr, "[src] cannot be rotated while it is fastened to the floor!") return FALSE var/target_dir = turn(dir, 270) if(!valid_window_location(loc, target_dir)) - usr << "[src] cannot be rotated in that direction!" + to_chat(usr, "[src] cannot be rotated in that direction!") return FALSE setDir(target_dir) @@ -300,7 +316,7 @@ /obj/structure/window/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return @@ -352,7 +368,8 @@ add_overlay(crack_overlay) /obj/structure/window/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) - if(exposed_temperature > T0C + (reinf ? 1600 : 800)) + + if(exposed_temperature > (T0C + heat_resistance)) take_damage(round(exposed_volume / 100), BURN, 0, 0) ..() @@ -374,6 +391,7 @@ name = "reinforced window" icon_state = "rwindow" reinf = 1 + heat_resistance = 1600 armor = list(melee = 50, bullet = 0, laser = 0, energy = 0, bomb = 25, bio = 100, rad = 100, fire = 80, acid = 100) max_integrity = 50 explosion_block = 1 @@ -391,6 +409,11 @@ name = "frosted window" icon_state = "fwindow" +/obj/structure/window/reinforced/highpressure + name = "high pressure window" + max_integrity = 1000 + heat_resistance = 50000 + pressure_resistance = 4*ONE_ATMOSPHERE /* Full Tile Windows (more obj_integrity) */ @@ -400,8 +423,9 @@ dir = FULLTILE_WINDOW_DIR max_integrity = 50 fulltile = 1 + flags = NONE smooth = SMOOTH_TRUE - canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile) + canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile,/obj/structure/window/reinforced/highpressure/fulltile, /obj/structure/window/reinforced/tinted/fulltile) glass_amount = 2 /obj/structure/window/fulltile/unanchored @@ -413,8 +437,22 @@ dir = FULLTILE_WINDOW_DIR max_integrity = 100 fulltile = 1 + flags = NONE smooth = SMOOTH_TRUE - canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile) + + canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile,/obj/structure/window/reinforced/highpressure/fulltile, /obj/structure/window/reinforced/tinted/fulltile) + level = 3 + glass_amount = 2 + +/obj/structure/window/reinforced/highpressure/fulltile + icon = 'icons/obj/smooth_structures/reinforced_window.dmi' + icon_state = "r_window" + dir = FULLTILE_WINDOW_DIR + max_integrity = 1000 + fulltile = 1 + flags = NONE + smooth = SMOOTH_TRUE + canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile,/obj/structure/window/reinforced/highpressure/fulltile, /obj/structure/window/reinforced/tinted/fulltile) level = 3 glass_amount = 2 @@ -426,8 +464,9 @@ icon_state = "tinted_window" dir = FULLTILE_WINDOW_DIR fulltile = 1 + flags = NONE smooth = SMOOTH_TRUE - canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile/) + canSmoothWith = list(/obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile,/obj/structure/window/reinforced/highpressure/fulltile, /obj/structure/window/reinforced/tinted/fulltile/) level = 3 glass_amount = 2 @@ -448,7 +487,9 @@ max_integrity = 100 wtype = "shuttle" fulltile = 1 + flags = NONE reinf = 1 + heat_resistance = 1600 armor = list(melee = 50, bullet = 0, laser = 0, energy = 0, bomb = 25, bio = 100, rad = 100, fire = 80, acid = 100) smooth = SMOOTH_TRUE canSmoothWith = null @@ -472,27 +513,22 @@ max_integrity = 80 armor = list(melee = 60, bullet = 25, laser = 0, energy = 0, bomb = 25, bio = 100, rad = 100, fire = 80, acid = 100) explosion_block = 2 //fancy AND hard to destroy. the most useful combination. + decon_speed = 40 glass_type = /obj/item/stack/tile/brass glass_amount = 1 reinf = FALSE var/made_glow = FALSE -/obj/structure/window/reinforced/clockwork/New(loc, direct) +/obj/structure/window/reinforced/clockwork/Initialize(mapload, direct) + if(fulltile) + made_glow = TRUE ..() for(var/obj/item/I in debris) debris -= I qdel(I) var/amount_of_gears = 2 - if(!fulltile) - if(direct) - var/obj/effect/E = new /obj/effect/overlay/temp/ratvar/window/single(get_turf(src)) - setDir(direct) - ini_dir = direct - E.setDir(direct) - made_glow = TRUE - else + if(fulltile) new /obj/effect/overlay/temp/ratvar/window(get_turf(src)) - made_glow = TRUE amount_of_gears = 4 for(var/i in 1 to amount_of_gears) debris += new/obj/item/clockwork/alloy_shards/medium/gear_bit() @@ -530,11 +566,11 @@ smooth = SMOOTH_TRUE canSmoothWith = null fulltile = 1 + flags = NONE dir = FULLTILE_WINDOW_DIR max_integrity = 120 level = 3 glass_amount = 2 - made_glow = TRUE /obj/structure/window/reinforced/clockwork/fulltile/unanchored anchored = FALSE diff --git a/code/game/sound.dm b/code/game/sound.dm index 29a55a4a1f..91b016d061 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -83,10 +83,8 @@ src << sound(null, repeat = 0, wait = 0, volume = 85, channel = 1) /client/proc/playtitlemusic() - while(!ticker.login_music) //wait for ticker init to set the login music - stoplag() - if(!ticker.login_music) - return + UNTIL(ticker.login_music) //wait for ticker init to set the login music + if(prefs && (prefs.toggles & SOUND_LOBBY)) src << sound(ticker.login_music, repeat = 0, wait = 0, volume = 85, channel = 1) // MAD JAMS @@ -124,30 +122,6 @@ soundin = pick('sound/machines/terminal_button01.ogg', 'sound/machines/terminal_button02.ogg', 'sound/machines/terminal_button03.ogg', \ 'sound/machines/terminal_button04.ogg', 'sound/machines/terminal_button05.ogg', 'sound/machines/terminal_button06.ogg', \ 'sound/machines/terminal_button07.ogg', 'sound/machines/terminal_button08.ogg') -/* //Scream emote sounds //when they get ported again - if ("malescream") - soundin = pick('sound/voice/scream/scream_m1.ogg', 'sound/voice/scream/scream_m2.ogg') - if ("femscream") - soundin = pick('sound/voice/scream/scream_f1.ogg', 'sound/voice/scream/scream_f2.ogg', 'sound/voice/scream/scream_f3.ogg') - if ("drakescream") - soundin = pick('sound/voice/scream/drake1.ogg', 'sound/voice/scream/drake2.ogg') - if ("birdscream") - soundin = pick('sound/voice/scream/bird1.ogg', 'sound/voice/scream/bird2.ogg') - if ("mothscream") - soundin = pick('sound/voice/scream/moth1.ogg') -*/ - //Vore sounds - if ("digestion_sounds") - soundin = pick('sound/vore/digest1.ogg', 'sound/vore/digest2.ogg', 'sound/vore/digest3.ogg', \ - 'sound/vore/digest4.ogg', 'sound/vore/digest5.ogg', 'sound/vore/digest6.ogg', \ - 'sound/vore/digest7.ogg', 'sound/vore/digest8.ogg', 'sound/vore/digest9.ogg', \ - 'sound/vore/digest10.ogg','sound/vore/digest11.ogg', 'sound/vore/digest12.ogg') - if ("death_gurgles") - soundin = pick('sound/vore/death1.ogg', 'sound/vore/death2.ogg', 'sound/vore/death3.ogg', \ - 'sound/vore/death4.ogg', 'sound/vore/death5.ogg', 'sound/vore/death6.ogg', \ - 'sound/vore/death7.ogg', 'sound/vore/death8.ogg', 'sound/vore/death9.ogg', 'sound/vore/death10.ogg') - if ("struggle_sounds") - soundin = pick('sound/vore/squish1.ogg', 'sound/vore/squish2.ogg', 'sound/vore/squish3.ogg', 'sound/vore/squish4.ogg') return soundin /proc/playsound_global(file, repeat=0, wait, channel, volume) diff --git a/code/game/turfs/basic.dm b/code/game/turfs/basic.dm new file mode 100644 index 0000000000..75285d3132 --- /dev/null +++ b/code/game/turfs/basic.dm @@ -0,0 +1,9 @@ +//used to optimize map expansion +/turf/basic/New() + +/turf/basic/ChangeTurf(var/T) + new T(src) + var/static/warned + if(!warned) + warned = TRUE + CRASH("Basic ChangeTurf") \ No newline at end of file diff --git a/code/game/turfs/closed.dm b/code/game/turfs/closed.dm index 551b239131..3f097953e9 100644 --- a/code/game/turfs/closed.dm +++ b/code/game/turfs/closed.dm @@ -29,15 +29,13 @@ /turf/closed/indestructible/splashscreen name = "Space Station 13" - icon = 'icons/misc/fullscreen.dmi' - icon_state = "title1" + icon = 'config/title_screens/images/blank.png' + icon_state = "" layer = FLY_LAYER - var/titlescreen = TITLESCREEN -/turf/closed/indestructible/splashscreen/Initialize() +/turf/closed/indestructible/splashscreen/New() + SStitle.title_screen = src ..() - if(titlescreen) - icon_state = pick("title1","title2","title3","title4","title5") /turf/closed/indestructible/riveted icon = 'icons/turf/walls/riveted.dmi' diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm index 795acbc7c1..00e11e2092 100644 --- a/code/game/turfs/open.dm +++ b/code/game/turfs/open.dm @@ -111,7 +111,7 @@ /turf/open/freon_gas_act() for(var/obj/I in contents) - if(!I.is_frozen) //let it go + if(!HAS_SECONDARY_FLAG(I, FROZEN)) //let it go I.make_frozen_visual() for(var/mob/living/L in contents) if(L.bodytemperature >= 10) @@ -153,8 +153,8 @@ if(C.m_intent == MOVE_INTENT_WALK && (lube&NO_SLIP_WHEN_WALKING)) return 0 if(!(lube&SLIDE_ICE)) - C << "You slipped[ O ? " on the [O.name]" : ""]!" - C.attack_log += "\[[time_stamp()]\] Slipped[O ? " on the [O.name]" : ""][(lube&SLIDE)? " (LUBE)" : ""]!" + to_chat(C, "You slipped[ O ? " on the [O.name]" : ""]!") + C.log_message("Slipped[O ? " on the [O.name]" : ""][(lube&SLIDE)? " (LUBE)" : ""]!", INDIVIDUAL_ATTACK_LOG) if(!(lube&SLIDE_ICE)) playsound(C.loc, 'sound/misc/slip.ogg', 50, 1, -3) @@ -225,7 +225,7 @@ wet_time = MAXIMUM_WET_TIME if(wet == TURF_WET_ICE && air.temperature > T0C) for(var/obj/O in contents) - if(O.is_frozen) + if(HAS_SECONDARY_FLAG(O, FROZEN)) O.make_unfrozen() MakeDry(TURF_WET_ICE) MakeSlippery(TURF_WET_WATER) diff --git a/code/game/turfs/simulated/chasm.dm b/code/game/turfs/simulated/chasm.dm index 2f478df8ba..e031bbe401 100644 --- a/code/game/turfs/simulated/chasm.dm +++ b/code/game/turfs/simulated/chasm.dm @@ -5,9 +5,10 @@ name = "chasm" desc = "Watch your step." baseturf = /turf/open/chasm - smooth = SMOOTH_TRUE | SMOOTH_BORDER + smooth = SMOOTH_TRUE | SMOOTH_BORDER | SMOOTH_MORE icon = 'icons/turf/floors/Chasms.dmi' icon_state = "smooth" + canSmoothWith = list(/turf/open/floor/fakepit, /turf/open/chasm) var/drop_x = 1 var/drop_y = 1 var/drop_z = 1 @@ -20,6 +21,34 @@ if(!drop_stuff()) STOP_PROCESSING(SSobj, src) +/turf/open/chasm/attackby(obj/item/C, mob/user, params, area/area_restriction) + ..() + if(istype(C, /obj/item/stack/rods)) + var/obj/item/stack/rods/R = C + var/obj/structure/lattice/L = locate(/obj/structure/lattice, src) + if(!L) + if(R.use(1)) + to_chat(user, "You construct a lattice.") + playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) + ReplaceWithLattice() + else + to_chat(user, "You need one rod to build a lattice.") + return + if(istype(C, /obj/item/stack/tile/plasteel)) + var/obj/structure/lattice/L = locate(/obj/structure/lattice, src) + if(L) + var/obj/item/stack/tile/plasteel/S = C + if(S.use(1)) + qdel(L) + playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) + to_chat(user, "You build a floor.") + ChangeTurf(/turf/open/floor/plating) + else + to_chat(user, "You need one floor tile to build a floor!") + else + to_chat(user, "The plating is going to need some support! Place metal rods first.") + + /turf/open/chasm/proc/drop_stuff(AM) . = 0 var/thing_to_check = src @@ -112,4 +141,4 @@ qdel(AM) /turf/open/chasm/straight_down/lava_land_surface/normal_air - initial_gas_mix = "o2=22;n2=82;TEMP=293.15" + initial_gas_mix = "o2=22;n2=82;TEMP=293.15" \ No newline at end of file diff --git a/code/game/turfs/simulated/floor.dm b/code/game/turfs/simulated/floor.dm index 88d58314cb..8a81e2b6d0 100644 --- a/code/game/turfs/simulated/floor.dm +++ b/code/game/turfs/simulated/floor.dm @@ -137,22 +137,38 @@ var/list/icons_to_ignore_at_floor_init = list("damaged1","damaged2","damaged3"," if(..()) return 1 if(intact && istype(C, /obj/item/weapon/crowbar)) - if(broken || burnt) - broken = 0 - burnt = 0 - user << "You remove the broken plating." - else - if(istype(src, /turf/open/floor/wood)) - user << "You forcefully pry off the planks, destroying them in the process." - else - user << "You remove the floor tile." - if(floor_tile) - new floor_tile(src) - make_plating() - playsound(src, C.usesound, 80, 1) + pry_tile(C, user) return 1 + if(intact && istype(C, /obj/item/stack/tile)) + var/obj/item/stack/tile/T = C + if(T.turf_type == type) + return + var/obj/item/weapon/crowbar/CB = user.is_holding_item_of_type(/obj/item/weapon/crowbar) + if(!CB) + return + var/turf/open/floor/plating/P = pry_tile(CB, user, TRUE) + if(!istype(P)) + return + P.attackby(T, user, params) return 0 +/turf/open/floor/proc/pry_tile(obj/item/C, mob/user, silent = FALSE) + playsound(src, C.usesound, 80, 1) + return remove_tile(user, silent) + +/turf/open/floor/proc/remove_tile(mob/user, silent = FALSE, make_tile = TRUE) + if(broken || burnt) + broken = 0 + burnt = 0 + if(user && !silent) + to_chat(user, "You remove the broken plating.") + else + if(user && !silent) + to_chat(user, "You remove the floor tile.") + if(floor_tile && make_tile) + new floor_tile(src) + return make_plating() + /turf/open/floor/singularity_pull(S, current_size) if(current_size == STAGE_THREE) if(prob(30)) @@ -183,3 +199,54 @@ var/list/icons_to_ignore_at_floor_init = list("damaged1","damaged2","damaged3"," /turf/open/floor/acid_melt() ChangeTurf(baseturf) + +/turf/open/floor/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + switch(the_rcd.mode) + if(RCD_FLOORWALL) + return list("mode" = RCD_FLOORWALL, "delay" = 20, "cost" = 16) + if(RCD_AIRLOCK) + return list("mode" = RCD_AIRLOCK, "delay" = 50, "cost" = 16) + if(RCD_DECONSTRUCT) + return list("mode" = RCD_DECONSTRUCT, "delay" = 50, "cost" = 33) + if(RCD_WINDOWGRILLE) + return list("mode" = RCD_WINDOWGRILLE, "delay" = 40, "cost" = 4) + return FALSE + +/turf/open/floor/rcd_act(mob/user, obj/item/weapon/rcd/the_rcd, passed_mode) + switch(passed_mode) + if(RCD_FLOORWALL) + to_chat(user, "You build a wall.") + ChangeTurf(/turf/closed/wall) + return TRUE + if(RCD_AIRLOCK) + if(locate(/obj/machinery/door/airlock) in src) + return FALSE + to_chat(user, "You build an airlock.") + var/obj/machinery/door/airlock/A = new the_rcd.airlock_type(src) + + A.electronics = new/obj/item/weapon/electronics/airlock(src) + + if(the_rcd.conf_access) + A.electronics.accesses = the_rcd.conf_access.Copy() + A.electronics.one_access = the_rcd.use_one_access + + if(A.electronics.one_access) + A.req_one_access = A.electronics.accesses + else + A.req_access = A.electronics.accesses + A.autoclose = TRUE + return TRUE + if(RCD_DECONSTRUCT) + if(istype(src, baseturf)) + return FALSE + to_chat(user, "You deconstruct [src].") + ChangeTurf(baseturf) + return TRUE + if(RCD_WINDOWGRILLE) + if(locate(/obj/structure/grille) in src) + return FALSE + to_chat(user, "You construct the grille.") + var/obj/structure/grille/G = new(src) + G.anchored = TRUE + return TRUE + return FALSE diff --git a/code/game/turfs/simulated/floor/fancy_floor.dm b/code/game/turfs/simulated/floor/fancy_floor.dm index d303d8ac53..0e9dda1b8c 100644 --- a/code/game/turfs/simulated/floor/fancy_floor.dm +++ b/code/game/turfs/simulated/floor/fancy_floor.dm @@ -2,6 +2,8 @@ * Wood floor * Grass floor * Carpet floor + * Fake pits + * Fake space */ /turf/open/floor/wood @@ -13,14 +15,31 @@ if(..()) return if(istype(C, /obj/item/weapon/screwdriver)) - if(broken || burnt) - return - user << "You unscrew the planks." - new floor_tile(src) - make_plating() - playsound(src, C.usesound, 80, 1) + pry_tile(C, user) return +/turf/open/floor/wood/pry_tile(obj/item/C, mob/user, silent = FALSE) + var/is_screwdriver = istype(C, /obj/item/weapon/screwdriver) + playsound(src, C.usesound, 80, 1) + return remove_tile(user, silent, make_tile = is_screwdriver) + +/turf/open/floor/wood/remove_tile(mob/user, silent = FALSE, make_tile = TRUE) + if(broken || burnt) + broken = 0 + burnt = 0 + if(user && !silent) + to_chat(user, "You remove the broken planks.") + else + if(make_tile) + if(user && !silent) + to_chat(user, "You unscrew the planks.") + if(floor_tile) + new floor_tile(src) + else + if(user && !silent) + to_chat(user, "You forcefully pry off the planks, destroying them in the process.") + return make_plating() + /turf/open/floor/wood/cold temperature = 255.37 @@ -79,10 +98,7 @@ ..() if(prob(15)) icon_state = "basalt[rand(0, 12)]" - switch(icon_state) - if("basalt1", "basalt2", "basalt3") - SetLuminosity(1, 1) - + set_basalt_light(src) /turf/open/floor/carpet name = "carpet" @@ -92,7 +108,7 @@ floor_tile = /obj/item/stack/tile/carpet broken_states = list("damaged") smooth = SMOOTH_TRUE - canSmoothWith = null + canSmoothWith = list(/turf/open/floor/carpet, /turf/open/chasm) flags = NONE /turf/open/floor/carpet/Initialize() @@ -122,6 +138,14 @@ update_icon() + +turf/open/floor/fakepit + desc = "A clever illusion designed to look like a bottomless pit." + smooth = SMOOTH_TRUE | SMOOTH_BORDER | SMOOTH_MORE + canSmoothWith = list(/turf/open/floor/fakepit, /turf/open/chasm) + icon = 'icons/turf/floors/Chasms.dmi' + icon_state = "smooth" + /turf/open/floor/fakespace icon = 'icons/turf/space.dmi' icon_state = "0" @@ -131,4 +155,4 @@ /turf/open/floor/fakespace/Initialize() ..() - icon_state = "[rand(0,25)]" + icon_state = "[rand(0,25)]" \ No newline at end of file diff --git a/code/game/turfs/simulated/floor/light_floor.dm b/code/game/turfs/simulated/floor/light_floor.dm index b078a220c4..8690982f26 100644 --- a/code/game/turfs/simulated/floor/light_floor.dm +++ b/code/game/turfs/simulated/floor/light_floor.dm @@ -1,7 +1,7 @@ /turf/open/floor/light name = "light floor" desc = "A wired glass tile embedded into the floor." - luminosity = 5 + light_range = 5 icon_state = "light_on" floor_tile = /obj/item/stack/tile/light broken_states = list("light_broken") @@ -22,24 +22,24 @@ switch(state) if(0) icon_state = "light_on-[coloredlights[currentcolor]]" - SetLuminosity(1) + set_light(1) if(1) var/num = pick("1","2","3","4") icon_state = "light_on_flicker[num]" - SetLuminosity(1) + set_light(1) if(2) icon_state = "light_on_broken" - SetLuminosity(1) + set_light(1) if(3) icon_state = "light_off" - SetLuminosity(0) + set_light(0) else - SetLuminosity(0) + set_light(0) icon_state = "light_off" /turf/open/floor/light/ChangeTurf(turf/T) - SetLuminosity(0) + set_light(0) return ..() /turf/open/floor/light/attack_hand(mob/user) @@ -67,9 +67,9 @@ qdel(C) state = 0 //fixing it by bashing it with a light bulb, fun eh? update_icon() - user << "You replace the light bulb." + to_chat(user, "You replace the light bulb.") else - user << "The lightbulb seems fine, no need to replace it." + to_chat(user, "The lightbulb seems fine, no need to replace it.") //Cycles through all of the colours diff --git a/code/game/turfs/simulated/floor/misc_floor.dm b/code/game/turfs/simulated/floor/misc_floor.dm index 82eb9c7bd7..79ad84e752 100644 --- a/code/game/turfs/simulated/floor/misc_floor.dm +++ b/code/game/turfs/simulated/floor/misc_floor.dm @@ -8,24 +8,88 @@ icon_state = "rockvault" floor_tile = /obj/item/stack/tile/plasteel -/turf/open/floor/bluegrid +//Circuit flooring, glows a little +/turf/open/floor/circuit icon = 'icons/turf/floors.dmi' icon_state = "bcircuit" - floor_tile = /obj/item/stack/tile/plasteel + var/icon_normal = "bcircuit" + light_color = LIGHT_COLOR_CYAN + floor_tile = /obj/item/stack/tile/circuit + var/on = TRUE -/turf/open/floor/bluegrid/Initialize() +/turf/open/floor/circuit/Initialize() SSmapping.nuke_tiles += src + update_icon() ..() -/turf/open/floor/bluegrid/Destroy() +/turf/open/floor/circuit/Destroy() SSmapping.nuke_tiles -= src return ..() -/turf/open/floor/greengrid - icon = 'icons/turf/floors.dmi' - icon_state = "gcircuit" - floor_tile = /obj/item/stack/tile/plasteel +/turf/open/floor/circuit/update_icon() + if(on) + if(LAZYLEN(SSmapping.nuke_threats)) + icon_state = "rcircuitanim" + light_color = LIGHT_COLOR_FLARE + else + icon_state = icon_normal + light_color = initial(light_color) + set_light(1.4, 0.5) + else + icon_state = "[icon_normal]off" + set_light(0) +/turf/open/floor/circuit/off + icon_state = "bcircuitoff" + on = FALSE + +/turf/open/floor/circuit/airless + initial_gas_mix = "TEMP=2.7" + +/turf/open/floor/circuit/telecomms + initial_gas_mix = "n2=100;TEMP=80" + +/turf/open/floor/circuit/green + icon_state = "gcircuit" + icon_normal = "gcircuit" + light_color = LIGHT_COLOR_GREEN + floor_tile = /obj/item/stack/tile/circuit/green + +/turf/open/floor/circuit/green/off + icon_state = "gcircuitoff" + on = FALSE + +/turf/open/floor/circuit/green/anim + icon_state = "gcircuitanim" + icon_normal = "gcircuitanim" + floor_tile = /obj/item/stack/tile/circuit/green/anim + +/turf/open/floor/circuit/green/airless + initial_gas_mix = "TEMP=2.7" + +/turf/open/floor/circuit/green/telecomms + initial_gas_mix = "n2=100;TEMP=80" + +/turf/open/floor/circuit/red + icon_state = "rcircuit" + icon_normal = "rcircuit" + light_color = LIGHT_COLOR_FLARE + floor_tile = /obj/item/stack/tile/circuit/red + +/turf/open/floor/circuit/red/off + icon_state = "rcircuitoff" + on = FALSE + +/turf/open/floor/circuit/red/anim + icon_state = "rcircuitanim" + icon_normal = "rcircuitanim" + floor_tile = /obj/item/stack/tile/circuit/red/anim + +/turf/open/floor/circuit/red/airless + initial_gas_mix = "TEMP=2.7" + +/turf/open/floor/circuit/red/telecomms + initial_gas_mix = "n2=100;TEMP=80" /turf/open/floor/pod name = "pod floor" @@ -201,4 +265,3 @@ for(var/obj/structure/spacevine/SV in src) if(!QDESTROYING(SV))//Helps avoid recursive loops qdel(SV) - UpdateAffectingLights() diff --git a/code/game/turfs/simulated/floor/plasteel_floor.dm b/code/game/turfs/simulated/floor/plasteel_floor.dm index 8d1275ba7d..3057df5d77 100644 --- a/code/game/turfs/simulated/floor/plasteel_floor.dm +++ b/code/game/turfs/simulated/floor/plasteel_floor.dm @@ -256,30 +256,6 @@ icon_state = "podhatchcorner" - -/turf/open/floor/plasteel/circuit - icon_state = "bcircuit" -/turf/open/floor/plasteel/airless/circuit - icon_state = "bcircuit" -/turf/open/floor/plasteel/circuit/off - icon_state = "bcircuitoff" - -/turf/open/floor/plasteel/circuit/gcircuit - icon_state = "gcircuit" -/turf/open/floor/plasteel/airless/circuit/gcircuit - icon_state = "gcircuit" -/turf/open/floor/plasteel/circuit/gcircuit/off - icon_state = "gcircuitoff" -/turf/open/floor/plasteel/circuit/gcircuit/animated - icon_state = "gcircuitanim" - -/turf/open/floor/plasteel/circuit/rcircuit - icon_state = "rcircuit" -/turf/open/floor/plasteel/circuit/rcircuit/animated - icon_state = "rcircuitanim" - - - /turf/open/floor/plasteel/loadingarea icon_state = "loadingarea" /turf/open/floor/plasteel/loadingarea/dirty diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm index c65865786c..13aaa09a2a 100644 --- a/code/game/turfs/simulated/floor/plating.dm +++ b/code/game/turfs/simulated/floor/plating.dm @@ -32,20 +32,20 @@ return if(istype(C, /obj/item/stack/rods)) if(broken || burnt) - user << "Repair the plating first!" + to_chat(user, "Repair the plating first!") return var/obj/item/stack/rods/R = C if (R.get_amount() < 2) - user << "You need two rods to make a reinforced floor!" + to_chat(user, "You need two rods to make a reinforced floor!") return else - user << "You begin reinforcing the floor..." + to_chat(user, "You begin reinforcing the floor...") if(do_after(user, 30, target = src)) if (R.get_amount() >= 2 && !istype(src, /turf/open/floor/engine)) ChangeTurf(/turf/open/floor/engine) playsound(src, 'sound/items/Deconstruct.ogg', 80, 1) R.use(2) - user << "You reinforce the floor." + to_chat(user, "You reinforce the floor.") return else if(istype(C, /obj/item/stack/tile)) if(!broken && !burnt) @@ -59,12 +59,12 @@ F.state = L.state playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) else - user << "This section is too damaged to support a tile! Use a welder to fix the damage." + to_chat(user, "This section is too damaged to support a tile! Use a welder to fix the damage.") else if(istype(C, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/welder = C if( welder.isOn() && (broken || burnt) ) if(welder.remove_fuel(0,user)) - user << "You fix some dents on the broken plating." + to_chat(user, "You fix some dents on the broken plating.") playsound(src, welder.usesound, 80, 1) icon_state = icon_plating burnt = 0 diff --git a/code/game/turfs/simulated/floor/plating/asteroid.dm b/code/game/turfs/simulated/floor/plating/asteroid.dm index 9cc15172f9..6eec8039a0 100644 --- a/code/game/turfs/simulated/floor/plating/asteroid.dm +++ b/code/game/turfs/simulated/floor/plating/asteroid.dm @@ -53,15 +53,15 @@ return if (dug) - user << "This area has already been dug!" + to_chat(user, "This area has already been dug!") return - user << "You start digging..." + to_chat(user, "You start digging...") playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) if(do_after(user, digging_speed, target = src)) if(istype(src, /turf/open/floor/plating/asteroid)) - user << "You dig a hole." + to_chat(user, "You dig a hole.") gets_dug() feedback_add_details("pick_used_mining","[W.type]") @@ -119,13 +119,18 @@ /turf/open/floor/plating/asteroid/basalt/Initialize() ..() - switch(icon_state) - if("basalt1", "basalt2", "basalt3") //5 and 9 are too dark to glow and make the amount of glows in tunnels too high - SetLuminosity(1, 1) //this is basically a 3.75% chance that a basalt floor glows + set_basalt_light(src) + +/proc/set_basalt_light(turf/open/floor/B) + switch(B.icon_state) + if("basalt1", "basalt2", "basalt3") + B.set_light(2, 0.6, LIGHT_COLOR_LAVA) //more light + if("basalt5", "basalt9") + B.set_light(1.4, 0.6, LIGHT_COLOR_LAVA) //barely anything! /turf/open/floor/plating/asteroid/basalt/gets_dug() if(!dug) - SetLuminosity(0) + set_light(0) ..() @@ -323,6 +328,3 @@ /turf/open/floor/plating/asteroid/snow/atmosphere initial_gas_mix = "o2=22;n2=82;TEMP=180" - - - diff --git a/code/game/turfs/simulated/floor/plating/lava.dm b/code/game/turfs/simulated/floor/plating/lava.dm index 4b52420394..ec6adb09cf 100644 --- a/code/game/turfs/simulated/floor/plating/lava.dm +++ b/code/game/turfs/simulated/floor/plating/lava.dm @@ -6,7 +6,10 @@ gender = PLURAL //"That's some lava." baseturf = /turf/open/floor/plating/lava //lava all the way down slowdown = 2 - luminosity = 1 + + light_range = 2 + light_power = 0.75 + light_color = LIGHT_COLOR_LAVA /turf/open/floor/plating/lava/ex_act() return diff --git a/code/game/turfs/simulated/floor/reinf_floor.dm b/code/game/turfs/simulated/floor/reinf_floor.dm index ab01971446..bbc61d54d3 100644 --- a/code/game/turfs/simulated/floor/reinf_floor.dm +++ b/code/game/turfs/simulated/floor/reinf_floor.dm @@ -24,7 +24,7 @@ if(!C || !user) return if(istype(C, /obj/item/weapon/wrench)) - user << "You begin removing rods..." + to_chat(user, "You begin removing rods...") playsound(src, C.usesound, 80, 1) if(do_after(user, 30*C.toolspeed, target = src)) if(!istype(src, /turf/open/floor/engine)) diff --git a/code/game/turfs/simulated/minerals.dm b/code/game/turfs/simulated/minerals.dm index 175564a72d..38095ae38d 100644 --- a/code/game/turfs/simulated/minerals.dm +++ b/code/game/turfs/simulated/minerals.dm @@ -46,7 +46,7 @@ /turf/closed/mineral/attackby(obj/item/weapon/pickaxe/P, mob/user, params) if (!user.IsAdvancedToolUser()) - usr << "You don't have the dexterity to do this!" + to_chat(usr, "You don't have the dexterity to do this!") return if (istype(P, /obj/item/weapon/pickaxe)) @@ -57,12 +57,12 @@ if(last_act+P.digspeed > world.time)//prevents message spam return last_act = world.time - user << "You start picking..." + to_chat(user, "You start picking...") P.playDigSound() if(do_after(user,P.digspeed, target = src)) if(ismineralturf(src)) - user << "You finish cutting into the rock." + to_chat(user, "You finish cutting into the rock.") gets_drilled(user) feedback_add_details("pick_used_mining","[P.type]") else @@ -86,10 +86,10 @@ ..() /turf/closed/mineral/attack_alien(mob/living/carbon/alien/M) - M << "You start digging into the rock..." + to_chat(M, "You start digging into the rock...") playsound(src, 'sound/effects/break_stone.ogg', 50, 1) if(do_after(M,40, target = src)) - M << "You tunnel into the rock." + to_chat(M, "You tunnel into the rock.") gets_drilled(M) /turf/closed/mineral/Bumped(AM as mob|obj) @@ -206,9 +206,9 @@ /turf/closed/mineral/random/labormineral mineralSpawnChanceList = list( - /turf/closed/mineral/uranium = 2, /turf/closed/mineral/diamond = 1, /turf/closed/mineral/gold = 3, /turf/closed/mineral/titanium = 4, - /turf/closed/mineral/silver = 6, /turf/closed/mineral/plasma = 15, /turf/closed/mineral/iron = 80, - /turf/closed/mineral/gibtonite = 3) + /turf/closed/mineral/uranium = 3, /turf/closed/mineral/diamond = 1, /turf/closed/mineral/gold = 8, /turf/closed/mineral/titanium = 8, + /turf/closed/mineral/silver = 20, /turf/closed/mineral/plasma = 30, /turf/closed/mineral/iron = 95, + /turf/closed/mineral/gibtonite = 2) icon_state = "rock_labor" @@ -219,9 +219,9 @@ initial_gas_mix = "o2=14;n2=23;TEMP=300" defer_change = 1 mineralSpawnChanceList = list( - /turf/closed/mineral/uranium/volcanic = 2, /turf/closed/mineral/diamond/volcanic = 1, /turf/closed/mineral/gold/volcanic = 3, /turf/closed/mineral/titanium/volcanic = 4, - /turf/closed/mineral/silver/volcanic = 6, /turf/closed/mineral/plasma/volcanic = 15, /turf/closed/mineral/iron/volcanic = 80, - /turf/closed/mineral/gibtonite/volcanic = 3) + /turf/closed/mineral/uranium/volcanic = 3, /turf/closed/mineral/diamond/volcanic = 1, /turf/closed/mineral/gold/volcanic = 8, /turf/closed/mineral/titanium/volcanic = 8, + /turf/closed/mineral/silver/volcanic = 20, /turf/closed/mineral/plasma/volcanic = 30, /turf/closed/mineral/bscrystal/volcanic = 1, /turf/closed/mineral/gibtonite/volcanic = 2, + /turf/closed/mineral/iron/volcanic = 95) diff --git a/code/game/turfs/simulated/wall/mineral_walls.dm b/code/game/turfs/simulated/wall/mineral_walls.dm index 774072208d..20d26dbdab 100644 --- a/code/game/turfs/simulated/wall/mineral_walls.dm +++ b/code/game/turfs/simulated/wall/mineral_walls.dm @@ -174,7 +174,7 @@ icon_state = "map-shuttle" sheet_type = /obj/item/stack/sheet/mineral/titanium smooth = SMOOTH_MORE|SMOOTH_DIAGONAL - canSmoothWith = list(/turf/closed/wall/mineral/titanium, /obj/machinery/door/airlock/shuttle, /obj/machinery/door/airlock/, /turf/closed/wall/shuttle, /obj/structure/window/shuttle, /obj/structure/shuttle/engine, /obj/structure/shuttle/engine/heater, ) + canSmoothWith = list(/turf/closed/wall/mineral/titanium, /obj/machinery/door/airlock/shuttle, /obj/machinery/door/airlock/, /turf/closed/wall/shuttle, /obj/structure/window/shuttle, /obj/structure/shuttle/engine/heater) /turf/closed/wall/mineral/titanium/nodiagonal smooth = SMOOTH_MORE diff --git a/code/game/turfs/simulated/wall/misc_walls.dm b/code/game/turfs/simulated/wall/misc_walls.dm index c77de9c279..a0ed982144 100644 --- a/code/game/turfs/simulated/wall/misc_walls.dm +++ b/code/game/turfs/simulated/wall/misc_walls.dm @@ -61,7 +61,7 @@ /turf/closed/wall/clockwork/examine(mob/user) ..() if((is_servant_of_ratvar(user) || isobserver(user)) && linkedcache) - user << "It is linked to a Tinkerer's Cache, generating components!" + to_chat(user, "It is linked to a Tinkerer's Cache, generating components!") /turf/closed/wall/clockwork/Destroy() if(linkedcache) diff --git a/code/game/turfs/simulated/wall/reinf_walls.dm b/code/game/turfs/simulated/wall/reinf_walls.dm index 467ebf814d..c95f6090a3 100644 --- a/code/game/turfs/simulated/wall/reinf_walls.dm +++ b/code/game/turfs/simulated/wall/reinf_walls.dm @@ -17,19 +17,19 @@ ..() switch(d_state) if(INTACT) - user << "The outer grille is fully intact." + to_chat(user, "The outer grille is fully intact.") if(SUPPORT_LINES) - user << "The outer grille has been cut, and the support lines are screwed securely to the outer cover." + to_chat(user, "The outer grille has been cut, and the support lines are screwed securely to the outer cover.") if(COVER) - user << "The support lines have been unscrewed, and the metal cover is welded firmly in place." + to_chat(user, "The support lines have been unscrewed, and the metal cover is welded firmly in place.") if(CUT_COVER) - user << "The metal cover has been sliced through, and is connected loosely to the girder." + to_chat(user, "The metal cover has been sliced through, and is connected loosely to the girder.") if(BOLTS) - user << "The outer cover has been pried away, and the bolts anchoring the support rods are wrenched in place." + to_chat(user, "The outer cover has been pried away, and the bolts anchoring the support rods are wrenched in place.") if(SUPPORT_RODS) - user << "The bolts anchoring the support rods have been loosened, but are still welded firmly to the girder." + to_chat(user, "The bolts anchoring the support rods have been loosened, but are still welded firmly to the girder.") if(SHEATH) - user << "The support rods have been sliced through, and the outer sheath is connected loosely to the girder." + to_chat(user, "The support rods have been sliced through, and the outer sheath is connected loosely to the girder.") /turf/closed/wall/r_wall/devastate_wall() new sheet_type(src, sheet_amount) @@ -43,12 +43,12 @@ playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1) else playsound(src, 'sound/effects/bang.ogg', 50, 1) - M << "This wall is far too strong for you to destroy." + to_chat(M, "This wall is far too strong for you to destroy.") /turf/closed/wall/r_wall/try_destroy(obj/item/weapon/W, mob/user, turf/T) if(istype(W, /obj/item/weapon/pickaxe/drill/jackhammer)) var/obj/item/weapon/pickaxe/drill/jackhammer/D = W - user << "You begin to smash though the [name]..." + to_chat(user, "You begin to smash though the [name]...") if(do_after(user, 50, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W) return 1 @@ -66,170 +66,170 @@ playsound(src, W.usesound, 100, 1) d_state = SUPPORT_LINES update_icon() - user << "You cut the outer grille." + to_chat(user, "You cut the outer grille.") return 1 if(SUPPORT_LINES) if(istype(W, /obj/item/weapon/screwdriver)) - user << "You begin unsecuring the support lines..." + to_chat(user, "You begin unsecuring the support lines...") playsound(src, W.usesound, 100, 1) if(do_after(user, 40*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W || d_state != SUPPORT_LINES) return 1 d_state = COVER update_icon() - user << "You unsecure the support lines." + to_chat(user, "You unsecure the support lines.") return 1 else if(istype(W, /obj/item/weapon/wirecutters)) playsound(src, W.usesound, 100, 1) d_state = INTACT update_icon() - user << "You repair the outer grille." + to_chat(user, "You repair the outer grille.") return 1 if(COVER) if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0,user)) - user << "You begin slicing through the metal cover..." + to_chat(user, "You begin slicing through the metal cover...") playsound(src, W.usesound, 100, 1) if(do_after(user, 60*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !WT || !WT.isOn() || d_state != COVER) return 1 d_state = CUT_COVER update_icon() - user << "You press firmly on the cover, dislodging it." + to_chat(user, "You press firmly on the cover, dislodging it.") return 1 if(istype(W, /obj/item/weapon/gun/energy/plasmacutter)) - user << "You begin slicing through the metal cover..." + to_chat(user, "You begin slicing through the metal cover...") playsound(src, 'sound/items/Welder.ogg', 100, 1) if(do_after(user, 60*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W || d_state != COVER) return 1 d_state = CUT_COVER update_icon() - user << "You press firmly on the cover, dislodging it." + to_chat(user, "You press firmly on the cover, dislodging it.") return 1 if(istype(W, /obj/item/weapon/screwdriver)) - user << "You begin securing the support lines..." + to_chat(user, "You begin securing the support lines...") playsound(src, W.usesound, 100, 1) if(do_after(user, 40*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W || d_state != COVER) return 1 d_state = SUPPORT_LINES update_icon() - user << "The support lines have been secured." + to_chat(user, "The support lines have been secured.") return 1 if(CUT_COVER) if(istype(W, /obj/item/weapon/crowbar)) - user << "You struggle to pry off the cover..." + to_chat(user, "You struggle to pry off the cover...") playsound(src, W.usesound, 100, 1) if(do_after(user, 100*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W || d_state != CUT_COVER) return 1 d_state = BOLTS update_icon() - user << "You pry off the cover." + to_chat(user, "You pry off the cover.") return 1 if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0,user)) - user << "You begin welding the metal cover back to the frame..." + to_chat(user, "You begin welding the metal cover back to the frame...") playsound(src, WT.usesound, 100, 1) if(do_after(user, 60*WT.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !WT || !WT.isOn() || d_state != CUT_COVER) return 1 d_state = COVER update_icon() - user << "The metal cover has been welded securely to the frame." + to_chat(user, "The metal cover has been welded securely to the frame.") return 1 if(BOLTS) if(istype(W, /obj/item/weapon/wrench)) - user << "You start loosening the anchoring bolts which secure the support rods to their frame..." + to_chat(user, "You start loosening the anchoring bolts which secure the support rods to their frame...") playsound(src, W.usesound, 100, 1) if(do_after(user, 40*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W || d_state != BOLTS) return 1 d_state = SUPPORT_RODS update_icon() - user << "You remove the bolts anchoring the support rods." + to_chat(user, "You remove the bolts anchoring the support rods.") return 1 if(istype(W, /obj/item/weapon/crowbar)) - user << "You start to pry the cover back into place..." + to_chat(user, "You start to pry the cover back into place...") playsound(src, W.usesound, 100, 1) if(do_after(user, 20*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W || d_state != BOLTS) return 1 d_state = CUT_COVER update_icon() - user << "The metal cover has been pried back into place." + to_chat(user, "The metal cover has been pried back into place.") return 1 if(SUPPORT_RODS) if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0,user)) - user << "You begin slicing through the support rods..." + to_chat(user, "You begin slicing through the support rods...") playsound(src, W.usesound, 100, 1) if(do_after(user, 100*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !WT || !WT.isOn() || d_state != SUPPORT_RODS) return 1 d_state = SHEATH update_icon() - user << "You slice through the support rods." + to_chat(user, "You slice through the support rods.") return 1 if(istype(W, /obj/item/weapon/gun/energy/plasmacutter)) - user << "You begin slicing through the support rods..." + to_chat(user, "You begin slicing through the support rods...") playsound(src, 'sound/items/Welder.ogg', 100, 1) if(do_after(user, 100*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W || d_state != SUPPORT_RODS) return 1 d_state = SHEATH update_icon() - user << "You slice through the support rods." + to_chat(user, "You slice through the support rods.") return 1 if(istype(W, /obj/item/weapon/wrench)) - user << "You start tightening the bolts which secure the support rods to their frame..." + to_chat(user, "You start tightening the bolts which secure the support rods to their frame...") playsound(src, W.usesound, 100, 1) if(do_after(user, 40*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W || d_state != SUPPORT_RODS) return 1 d_state = BOLTS update_icon() - user << "You tighten the bolts anchoring the support rods." + to_chat(user, "You tighten the bolts anchoring the support rods.") return 1 if(SHEATH) if(istype(W, /obj/item/weapon/crowbar)) - user << "You struggle to pry off the outer sheath..." + to_chat(user, "You struggle to pry off the outer sheath...") playsound(src, W.usesound, 100, 1) if(do_after(user, 100*W.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !W || d_state != SHEATH) return 1 - user << "You pry off the outer sheath." + to_chat(user, "You pry off the outer sheath.") dismantle_wall() return 1 if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0,user)) - user << "You begin welding the support rods back together..." + to_chat(user, "You begin welding the support rods back together...") playsound(src, WT.usesound, 100, 1) if(do_after(user, 100*WT.toolspeed, target = src)) if(!istype(src, /turf/closed/wall/r_wall) || !WT || !WT.isOn() || d_state != SHEATH) return 1 d_state = SUPPORT_RODS update_icon() - user << "You weld the support rods back together." + to_chat(user, "You weld the support rods back together.") return 1 return 0 @@ -248,3 +248,9 @@ if(current_size >= STAGE_FIVE) if(prob(30)) dismantle_wall() + +/turf/closed/wall/r_vall/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + return FALSE + +/turf/closed/wall/r_vall/rcd_act(mob/user, obj/item/weapon/rcd/the_rcd, passed_mode) + return FALSE \ No newline at end of file diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index ff071b0599..2fd5b4433f 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -114,12 +114,12 @@ dismantle_wall(1) else playsound(src, 'sound/effects/bang.ogg', 50, 1) - user << text("You punch the wall.") + to_chat(user, text("You punch the wall.")) return 1 /turf/closed/wall/attack_hand(mob/user) user.changeNext_move(CLICK_CD_MELEE) - user << "You push the wall but nothing happens!" + to_chat(user, "You push the wall but nothing happens!") playsound(src, 'sound/weapons/Genhit.ogg', 25, 1) src.add_fingerprint(user) ..() @@ -128,7 +128,7 @@ /turf/closed/wall/attackby(obj/item/weapon/W, mob/user, params) user.changeNext_move(CLICK_CD_MELEE) if (!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to do this!" + to_chat(user, "You don't have the dexterity to do this!") return //get the user's location @@ -154,8 +154,8 @@ //check for wall mounted frames if(istype(W,/obj/item/wallframe)) var/obj/item/wallframe/F = W - if(F.try_build(src)) - F.attach(src) + if(F.try_build(src, user)) + F.attach(src, user) return 1 //Poster stuff else if(istype(W,/obj/item/weapon/poster)) @@ -169,23 +169,23 @@ if( istype(W, /obj/item/weapon/weldingtool) ) var/obj/item/weapon/weldingtool/WT = W if( WT.remove_fuel(0,user) ) - user << "You begin slicing through the outer plating..." + to_chat(user, "You begin slicing through the outer plating...") playsound(src, W.usesound, 100, 1) if(do_after(user, slicing_duration*W.toolspeed, target = src)) if(!iswallturf(src) || !user || !WT || !WT.isOn() || !T) return 1 if( user.loc == T && user.get_active_held_item() == WT ) - user << "You remove the outer plating." + to_chat(user, "You remove the outer plating.") dismantle_wall() return 1 else if( istype(W, /obj/item/weapon/gun/energy/plasmacutter) ) - user << "You begin slicing through the outer plating..." + to_chat(user, "You begin slicing through the outer plating...") playsound(src, 'sound/items/Welder.ogg', 100, 1) if(do_after(user, slicing_duration*W.toolspeed, target = src)) if(!iswallturf(src) || !user || !W || !T) return 1 if( user.loc == T && user.get_active_held_item() == W ) - user << "You remove the outer plating." + to_chat(user, "You remove the outer plating.") dismantle_wall() visible_message("The wall was sliced apart by [user]!", "You hear metal being sliced apart.") return 1 @@ -257,3 +257,17 @@ /turf/closed/wall/acid_melt() dismantle_wall(1) + +/turf/closed/wall/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + switch(the_rcd.mode) + if(RCD_DECONSTRUCT) + return list("mode" = RCD_DECONSTRUCT, "delay" = 40, "cost" = 26) + return FALSE + +/turf/closed/wall/rcd_act(mob/user, obj/item/weapon/rcd/the_rcd, passed_mode) + switch(passed_mode) + if(RCD_DECONSTRUCT) + to_chat(user, "You deconstruct the wall.") + ChangeTurf(/turf/open/floor/plating) + return TRUE + return FALSE \ No newline at end of file diff --git a/code/game/turfs/space/space.dm b/code/game/turfs/space/space.dm index 4812d20fbb..0117c29156 100644 --- a/code/game/turfs/space/space.dm +++ b/code/game/turfs/space/space.dm @@ -14,6 +14,8 @@ var/global/datum/gas_mixture/space/space_gas = new plane = PLANE_SPACE + light_power = 0.25 + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED /turf/open/space/Initialize() icon_state = SPACE_ICON_STATE @@ -23,9 +25,19 @@ stack_trace("Warning: [src]([type]) initialized multiple times!") initialized = TRUE + var/area/A = loc + if(!IS_DYNAMIC_LIGHTING(src) && IS_DYNAMIC_LIGHTING(A)) + add_overlay(/obj/effect/fullbright) + if(requires_activation) SSair.add_to_active(src) + if (light_power && light_range) + update_light() + + if (opacity) + has_opaque_atom = TRUE + /turf/open/space/attack_ghost(mob/dead/observer/user) if(destination_z) var/turf/T = locate(destination_x, destination_y, destination_z) @@ -52,15 +64,14 @@ if(isspaceturf(t)) //let's NOT update this that much pls continue - SetLuminosity(4,5) - light.mode = LIGHTING_STARLIGHT + set_light(2) return - SetLuminosity(0) + set_light(0) /turf/open/space/attack_paw(mob/user) return src.attack_hand(user) -/turf/open/space/attackby(obj/item/C, mob/user, area/area_restriction) +/turf/open/space/attackby(obj/item/C, mob/user, params, area/area_restriction) ..() if(istype(C, /obj/item/stack/rods)) if(istype(area_restriction) && !istype(get_area(src), area_restriction)) @@ -69,22 +80,22 @@ var/obj/structure/lattice/L = locate(/obj/structure/lattice, src) var/obj/structure/lattice/catwalk/W = locate(/obj/structure/lattice/catwalk, src) if(W) - user << "There is already a catwalk here!" + to_chat(user, "There is already a catwalk here!") return if(L) if(R.use(1)) - user << "You construct a catwalk." + to_chat(user, "You construct a catwalk.") playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) new/obj/structure/lattice/catwalk(src) else - user << "You need two rods to build a catwalk!" + to_chat(user, "You need two rods to build a catwalk!") return if(R.use(1)) - user << "You construct a lattice." + to_chat(user, "You construct a lattice.") playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) ReplaceWithLattice() else - user << "You need one rod to build a lattice." + to_chat(user, "You need one rod to build a lattice.") return if(istype(C, /obj/item/stack/tile/plasteel)) var/obj/structure/lattice/L = locate(/obj/structure/lattice, src) @@ -93,12 +104,12 @@ if(S.use(1)) qdel(L) playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) - user << "You build a floor." + to_chat(user, "You build a floor.") ChangeTurf(/turf/open/floor/plating) else - user << "You need one floor tile to build a floor!" + to_chat(user, "You need one floor tile to build a floor!") else - user << "The plating is going to need some support! Place metal rods first." + to_chat(user, "The plating is going to need some support! Place metal rods first.") /turf/open/space/Entered(atom/movable/A) ..() @@ -175,3 +186,18 @@ /turf/open/space/acid_act(acidpwr, acid_volume) return 0 + + +/turf/open/space/rcd_vals(mob/user, obj/item/weapon/rcd/the_rcd) + switch(the_rcd.mode) + if(RCD_FLOORWALL) + return list("mode" = RCD_FLOORWALL, "delay" = 0, "cost" = 2) + return FALSE + +/turf/open/space/rcd_act(mob/user, obj/item/weapon/rcd/the_rcd, passed_mode) + switch(passed_mode) + if(RCD_FLOORWALL) + to_chat(user, "You build a floor.") + ChangeTurf(/turf/open/floor/plating) + return TRUE + return FALSE \ No newline at end of file diff --git a/code/game/turfs/space/transit.dm b/code/game/turfs/space/transit.dm index f6c32d5c56..5cea451da2 100644 --- a/code/game/turfs/space/transit.dm +++ b/code/game/turfs/space/transit.dm @@ -30,8 +30,9 @@ var/list/possible_transtitons = list() var/k = 1 - for(var/a in map_transition_config) - if(map_transition_config[a] == CROSSLINKED) // Only pick z-levels connected to station space + var/list/config_list = SSmapping.config.transition_config + for(var/a in config_list) + if(config_list[a] == CROSSLINKED) // Only pick z-levels connected to station space possible_transtitons += k k++ var/_z = pick(possible_transtitons) @@ -58,8 +59,8 @@ AM.newtonian_move(dir) //Overwrite because we dont want people building rods -/turf/open/space/transit/attackby(obj/item/C, mob/user) - ..(C, user, /area/shuttle) +/turf/open/space/transit/attackby(obj/item/C, mob/user, params) + ..(C, user, params, /area/shuttle) /turf/open/space/transit/Initialize() ..() @@ -80,8 +81,6 @@ if(EAST) angle = 90 state = ((x+p*y) % 15) + 1 - if(state < 1) - state += 15 if(WEST) angle = -90 state = ((x-p*y) % 15) + 1 @@ -89,8 +88,6 @@ state += 15 else state = ((p*x+y) % 15) + 1 - if(state < 1) - state += 15 icon_state = "speedspace_ns_[state]" transform = turn(matrix(), angle) diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index f044053c61..b1127dad9d 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -26,8 +26,9 @@ var/requires_activation //add to air processing after initialize? var/changing_turf = FALSE -/turf/SDQL_update(const/var_name, new_value) - if(var_name == "x" || var_name == "y" || var_name == "z") +/turf/vv_edit_var(var_name, new_value) + var/static/list/banned_edits = list("x", "y", "z") + if(var_name in banned_edits) return FALSE . = ..() @@ -44,23 +45,42 @@ for(var/atom/movable/AM in src) Entered(AM) + var/area/A = loc + if(!IS_DYNAMIC_LIGHTING(src) && IS_DYNAMIC_LIGHTING(A)) + add_overlay(/obj/effect/fullbright) + if(requires_activation) CalculateAdjacentTurfs() SSair.add_to_active(src) + if (light_power && light_range) + update_light() + + if (opacity) + has_opaque_atom = TRUE + /turf/proc/Initalize_Atmos(times_fired) CalculateAdjacentTurfs() /turf/Destroy(force) + . = QDEL_HINT_IWILLGC if(!changing_turf) stack_trace("Incorrect turf deletion") changing_turf = FALSE + if(force) + ..() + //this will completely wipe turf state + var/turf/basic/B = new /turf/basic(src) + for(var/A in B.contents) + qdel(A) + for(var/I in B.vars) + B.vars[I] = null + return SSair.remove_from_active(src) visibilityChanged() initialized = FALSE requires_activation = FALSE ..() - return QDEL_HINT_IWILLGC /turf/attack_hand(mob/user) user.Move_Pulled(src) @@ -110,7 +130,7 @@ var/list/large_dense = list() //Next, check objects to block entry that are on the border for(var/atom/movable/border_obstacle in src) - if(border_obstacle.flags&ON_BORDER) + if(border_obstacle.flags & ON_BORDER) if(!border_obstacle.CanPass(mover, mover.loc, 1) && (forget != border_obstacle)) mover.Bump(border_obstacle, 1) return 0 @@ -123,10 +143,16 @@ return 0 //Finally, check objects/mobs to block entry that are not on the border + var/atom/movable/tompost_bump + var/top_layer = 0 for(var/atom/movable/obstacle in large_dense) if(!obstacle.CanPass(mover, mover.loc, 1) && (forget != obstacle)) - mover.Bump(obstacle, 1) - return 0 + if(obstacle.layer > top_layer) + tompost_bump = obstacle + top_layer = obstacle.layer + if(tompost_bump) + mover.Bump(tompost_bump,1) + return 0 return 1 //Nothing found to block so return success! /turf/Entered(atom/movable/AM) @@ -160,7 +186,7 @@ //melting if(isobj(AM) && air && air.temperature > T0C) var/obj/O = AM - if(O.is_frozen) + if(HAS_SECONDARY_FLAG(O, FROZEN)) O.make_unfrozen() /turf/proc/is_plasteel_floor() @@ -276,7 +302,7 @@ /turf/storage_contents_dump_act(obj/item/weapon/storage/src_object, mob/user) if(src_object.contents.len) - usr << "You start dumping out the contents..." + to_chat(usr, "You start dumping out the contents...") if(!do_after(usr,20,target=src_object)) return 0 @@ -392,7 +418,6 @@ T0.ChangeTurf(turf_type) - T0.redraw_lighting() SSair.remove_from_active(T0) T0.CalculateAdjacentTurfs() SSair.add_to_active(T0,1) @@ -462,4 +487,4 @@ /turf/proc/remove_decal(group) LAZYINITLIST(decals) cut_overlay(decals[group]) - decals[group] = null \ No newline at end of file + decals[group] = null diff --git a/code/modules/VR/vr_human.dm b/code/modules/VR/vr_human.dm index f5d4fad7e5..f8d59e060b 100644 --- a/code/modules/VR/vr_human.dm +++ b/code/modules/VR/vr_human.dm @@ -6,7 +6,7 @@ var/datum/action/quit_vr/quit_action -/mob/living/carbon/human/virtual_reality/New() +/mob/living/carbon/human/virtual_reality/Initialize() ..() quit_action = new() quit_action.Grant(src) diff --git a/code/modules/VR/vr_sleeper.dm b/code/modules/VR/vr_sleeper.dm index 7a21dc9ad2..9eda00a8ea 100644 --- a/code/modules/VR/vr_sleeper.dm +++ b/code/modules/VR/vr_sleeper.dm @@ -93,31 +93,31 @@ switch(action) if("vr_connect") if(ishuman(occupant) && occupant.mind) - occupant << "Transfering to virtual reality..." + to_chat(occupant, "Transfering to virtual reality...") if(vr_human) vr_human.revert_to_reality(FALSE, FALSE) occupant.mind.transfer_to(vr_human) vr_human.real_me = occupant - vr_human << "Transfer successful! you are now playing as [vr_human] in VR!" + to_chat(vr_human, "Transfer successful! you are now playing as [vr_human] in VR!") SStgui.close_user_uis(vr_human, src) else if(allow_creating_vr_humans) - occupant << "Virtual avatar not found, attempting to create one..." + to_chat(occupant, "Virtual avatar not found, attempting to create one...") var/turf/T = get_vr_spawnpoint() if(T) build_virtual_human(occupant, T) - vr_human << "Transfer successful! you are now playing as [vr_human] in VR!" + to_chat(vr_human, "Transfer successful! you are now playing as [vr_human] in VR!") else - occupant << "Virtual world misconfigured, aborting transfer" + to_chat(occupant, "Virtual world misconfigured, aborting transfer") else - occupant << "The virtual world does not support the creation of new virtual avatars, aborting transfer" + to_chat(occupant, "The virtual world does not support the creation of new virtual avatars, aborting transfer") . = TRUE if("delete_avatar") if(!occupant || usr == occupant) if(vr_human) qdel(vr_human) else - usr << "The VR Sleeper's safeties prevent you from doing that." + to_chat(usr, "The VR Sleeper's safeties prevent you from doing that.") . = TRUE if("toggle_open") if(state_open) diff --git a/code/modules/admin/DB_ban/functions.dm b/code/modules/admin/DB_ban/functions.dm index a412d64c4a..236df58699 100644 --- a/code/modules/admin/DB_ban/functions.dm +++ b/code/modules/admin/DB_ban/functions.dm @@ -7,7 +7,7 @@ return if(!dbcon.Connect()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return var/bantype_pass = 0 @@ -71,10 +71,11 @@ computerid = bancid ip = banip - var/DBQuery/query = dbcon.NewQuery("SELECT id FROM [format_table_name("player")] WHERE ckey = '[ckey]'") - query.Execute() + var/DBQuery/query_add_ban_get_id = dbcon.NewQuery("SELECT id FROM [format_table_name("player")] WHERE ckey = '[ckey]'") + if(!query_add_ban_get_id.warn_execute()) + return var/validckey = 0 - if(query.NextRow()) + if(query_add_ban_get_id.NextRow()) validckey = 1 if(!validckey) if(!banned_mob || (banned_mob && !IsGuestKey(banned_mob.key))) @@ -92,7 +93,7 @@ if(blockselfban) if(a_ckey == ckey) - usr << "You cannot apply this ban type on yourself." + to_chat(usr, "You cannot apply this ban type on yourself.") return var/who @@ -112,18 +113,23 @@ reason = sanitizeSQL(reason) if(maxadminbancheck) - var/DBQuery/adm_query = dbcon.NewQuery("SELECT count(id) AS num FROM [format_table_name("ban")] WHERE (a_ckey = '[a_ckey]') AND (bantype = 'ADMIN_PERMABAN' OR (bantype = 'ADMIN_TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned)") - adm_query.Execute() - if(adm_query.NextRow()) - var/adm_bans = text2num(adm_query.item[1]) + var/DBQuery/query_check_adminban_amt = dbcon.NewQuery("SELECT count(id) AS num FROM [format_table_name("ban")] WHERE (a_ckey = '[a_ckey]') AND (bantype = 'ADMIN_PERMABAN' OR (bantype = 'ADMIN_TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned)") + if(!query_check_adminban_amt.warn_execute()) + return + if(query_check_adminban_amt.NextRow()) + var/adm_bans = text2num(query_check_adminban_amt.item[1]) if(adm_bans >= MAX_ADMIN_BANS_PER_ADMIN) - usr << "You already logged [MAX_ADMIN_BANS_PER_ADMIN] admin ban(s) or more. Do not abuse this function!" + to_chat(usr, "You already logged [MAX_ADMIN_BANS_PER_ADMIN] admin ban(s) or more. Do not abuse this function!") return - + if(!computerid) + computerid = "0" + if(!ip) + ip = "0.0.0.0" var/sql = "INSERT INTO [format_table_name("ban")] (`bantime`,`server_ip`,`server_port`,`bantype`,`reason`,`job`,`duration`,`expiration_time`,`ckey`,`computerid`,`ip`,`a_ckey`,`a_computerid`,`a_ip`,`who`,`adminwho`) VALUES (Now(), INET_ATON('[world.internet_address]'), '[world.port]', '[bantype_str]', '[reason]', '[job]', [(duration)?"[duration]":"0"], Now() + INTERVAL [(duration>0) ? duration : 0] MINUTE, '[ckey]', '[computerid]', INET_ATON('[ip]'), '[a_ckey]', '[a_computerid]', INET_ATON('[a_ip]'), '[who]', '[adminwho]')" - var/DBQuery/query_insert = dbcon.NewQuery(sql) - query_insert.Execute() - usr << "Ban saved to database." + var/DBQuery/query_add_ban = dbcon.NewQuery(sql) + if(!query_add_ban.warn_execute()) + return + to_chat(usr, "Ban saved to database.") message_admins("[key_name_admin(usr)] has added a [bantype_str] for [ckey] [(job)?"([job])":""] [(duration > 0)?"([duration] minutes)":""] with the reason: \"[reason]\" to the ban database.",1) if(announceinirc) @@ -187,24 +193,25 @@ var/ban_id var/ban_number = 0 //failsafe - var/DBQuery/query = dbcon.NewQuery(sql) - query.Execute() - while(query.NextRow()) - ban_id = query.item[1] + var/DBQuery/query_unban_get_id = dbcon.NewQuery(sql) + if(!query_unban_get_id.warn_execute()) + return + while(query_unban_get_id.NextRow()) + ban_id = query_unban_get_id.item[1] ban_number++; if(ban_number == 0) - usr << "Database update failed due to no bans fitting the search criteria. If this is not a legacy ban you should contact the database admin." + to_chat(usr, "Database update failed due to no bans fitting the search criteria. If this is not a legacy ban you should contact the database admin.") return if(ban_number > 1) - usr << "Database update failed due to multiple bans fitting the search criteria. Note down the ckey, job and current time and contact the database admin." + to_chat(usr, "Database update failed due to multiple bans fitting the search criteria. Note down the ckey, job and current time and contact the database admin.") return if(istext(ban_id)) ban_id = text2num(ban_id) if(!isnum(ban_id)) - usr << "Database update failed due to a ban ID mismatch. Contact the database admin." + to_chat(usr, "Database update failed due to a ban ID mismatch. Contact the database admin.") return DB_ban_unban_by_id(ban_id) @@ -215,23 +222,24 @@ return if(!isnum(banid) || !istext(param)) - usr << "Cancelled" + to_chat(usr, "Cancelled") return - var/DBQuery/query = dbcon.NewQuery("SELECT ckey, duration, reason FROM [format_table_name("ban")] WHERE id = [banid]") - query.Execute() + var/DBQuery/query_edit_ban_get_details = dbcon.NewQuery("SELECT ckey, duration, reason FROM [format_table_name("ban")] WHERE id = [banid]") + if(!query_edit_ban_get_details.warn_execute()) + return var/eckey = usr.ckey //Editing admin ckey var/pckey //(banned) Player ckey var/duration //Old duration var/reason //Old reason - if(query.NextRow()) - pckey = query.item[1] - duration = query.item[2] - reason = query.item[3] + if(query_edit_ban_get_details.NextRow()) + pckey = query_edit_ban_get_details.item[1] + duration = query_edit_ban_get_details.item[2] + reason = query_edit_ban_get_details.item[3] else - usr << "Invalid ban id. Contact the database admin" + to_chat(usr, "Invalid ban id. Contact the database admin") return reason = sanitizeSQL(reason) @@ -243,31 +251,33 @@ value = input("Insert the new reason for [pckey]'s ban", "New Reason", "[reason]", null) as null|text value = sanitizeSQL(value) if(!value) - usr << "Cancelled" + to_chat(usr, "Cancelled") return - var/DBQuery/update_query = dbcon.NewQuery("UPDATE [format_table_name("ban")] SET reason = '[value]', edits = CONCAT(edits,'- [eckey] changed ban reason from \\\"[reason]\\\" to \\\"[value]\\\"
    ') WHERE id = [banid]") - update_query.Execute() + var/DBQuery/query_edit_ban_reason = dbcon.NewQuery("UPDATE [format_table_name("ban")] SET reason = '[value]', edits = CONCAT(edits,'- [eckey] changed ban reason from \\\"[reason]\\\" to \\\"[value]\\\"
    ') WHERE id = [banid]") + if(!query_edit_ban_reason.warn_execute()) + return message_admins("[key_name_admin(usr)] has edited a ban for [pckey]'s reason from [reason] to [value]",1) if("duration") if(!value) value = input("Insert the new duration (in minutes) for [pckey]'s ban", "New Duration", "[duration]", null) as null|num if(!isnum(value) || !value) - usr << "Cancelled" + to_chat(usr, "Cancelled") return - var/DBQuery/update_query = dbcon.NewQuery("UPDATE [format_table_name("ban")] SET duration = [value], edits = CONCAT(edits,'- [eckey] changed ban duration from [duration] to [value]
    '), expiration_time = DATE_ADD(bantime, INTERVAL [value] MINUTE) WHERE id = [banid]") + var/DBQuery/query_edit_ban_duration = dbcon.NewQuery("UPDATE [format_table_name("ban")] SET duration = [value], edits = CONCAT(edits,'- [eckey] changed ban duration from [duration] to [value]
    '), expiration_time = DATE_ADD(bantime, INTERVAL [value] MINUTE) WHERE id = [banid]") + if(!query_edit_ban_duration.warn_execute()) + return message_admins("[key_name_admin(usr)] has edited a ban for [pckey]'s duration from [duration] to [value]",1) - update_query.Execute() if("unban") if(alert("Unban [pckey]?", "Unban?", "Yes", "No") == "Yes") DB_ban_unban_by_id(banid) return else - usr << "Cancelled" + to_chat(usr, "Cancelled") return else - usr << "Cancelled" + to_chat(usr, "Cancelled") return /datum/admins/proc/DB_ban_unban_by_id(id) @@ -283,18 +293,19 @@ var/ban_number = 0 //failsafe var/pckey - var/DBQuery/query = dbcon.NewQuery(sql) - query.Execute() - while(query.NextRow()) - pckey = query.item[1] + var/DBQuery/query_unban_get_ckey = dbcon.NewQuery(sql) + if(!query_unban_get_ckey.warn_execute()) + return + while(query_unban_get_ckey.NextRow()) + pckey = query_unban_get_ckey.item[1] ban_number++; if(ban_number == 0) - usr << "Database update failed due to a ban id not being present in the database." + to_chat(usr, "Database update failed due to a ban id not being present in the database.") return if(ban_number > 1) - usr << "Database update failed due to multiple bans having the same ID. Contact the database admin." + to_chat(usr, "Database update failed due to multiple bans having the same ID. Contact the database admin.") return if(!src.owner || !istype(src.owner, /client)) @@ -305,12 +316,11 @@ var/unban_ip = src.owner:address var/sql_update = "UPDATE [format_table_name("ban")] SET unbanned = 1, unbanned_datetime = Now(), unbanned_ckey = '[unban_ckey]', unbanned_computerid = '[unban_computerid]', unbanned_ip = INET_ATON('[unban_ip]') WHERE id = [id]" + var/DBQuery/query_unban = dbcon.NewQuery(sql_update) + if(!query_unban.warn_execute()) + return message_admins("[key_name_admin(usr)] has lifted [pckey]'s ban.",1) - var/DBQuery/query_update = dbcon.NewQuery(sql_update) - query_update.Execute() - - /client/proc/DB_ban_panel() set category = "Admin" set name = "Banning Panel" @@ -322,7 +332,7 @@ holder.DB_ban_panel() -/datum/admins/proc/DB_ban_panel(playerckey = null, adminckey = null) +/datum/admins/proc/DB_ban_panel(playerckey = null, adminckey = null, page = 0) if(!usr.client) return @@ -330,7 +340,7 @@ return if(!dbcon.Connect()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return var/output = "
    " @@ -383,7 +393,30 @@ output += "Please note that all jobban bans or unbans are in-effect the following round." if(adminckey || playerckey) - + playerckey = sanitizeSQL(ckey(playerckey)) + adminckey = sanitizeSQL(ckey(adminckey)) + var/playersearch = "" + var/adminsearch = "" + if(playerckey) + playersearch = "AND ckey = '[playerckey]' " + if(adminckey) + adminsearch = "AND a_ckey = '[adminckey]' " + var/bancount = 0 + var/bansperpage = 15 + var/pagecount = 0 + page = text2num(page) + var/DBQuery/query_count_bans = dbcon.NewQuery("SELECT COUNT(id) FROM [format_table_name("ban")] WHERE 1 [playersearch] [adminsearch]") + if(!query_count_bans.warn_execute()) + return + if(query_count_bans.NextRow()) + bancount = text2num(query_count_bans.item[1]) + if(bancount > bansperpage) + output += "
    Page: " + while(bancount > 0) + output+= "|[pagecount == page ? "\[[pagecount]\]" : "\[[pagecount]\]"]" + bancount -= bansperpage + pagecount++ + output += "|" var/blcolor = "#ffeeee" //banned light var/bdcolor = "#ffdddd" //banned dark var/ulcolor = "#eeffee" //unbanned light @@ -397,33 +430,25 @@ output += "" output += "" output += "" + var/limit = " LIMIT [bansperpage * page], [bansperpage]" + var/DBQuery/query_search_bans = dbcon.NewQuery("SELECT id, bantime, bantype, reason, job, duration, expiration_time, ckey, a_ckey, unbanned, unbanned_ckey, unbanned_datetime, edits FROM [format_table_name("ban")] WHERE 1 [playersearch] [adminsearch] ORDER BY bantime DESC[limit]") + if(!query_search_bans.warn_execute()) + return - adminckey = ckey(adminckey) - playerckey = ckey(playerckey) - var/adminsearch = "" - var/playersearch = "" - if(adminckey) - adminsearch = "AND a_ckey = '[adminckey]' " - if(playerckey) - playersearch = "AND ckey = '[playerckey]' " - - var/DBQuery/select_query = dbcon.NewQuery("SELECT id, bantime, bantype, reason, job, duration, expiration_time, ckey, a_ckey, unbanned, unbanned_ckey, unbanned_datetime, edits FROM [format_table_name("ban")] WHERE 1 [playersearch] [adminsearch] ORDER BY bantime DESC") - select_query.Execute() - - while(select_query.NextRow()) - var/banid = select_query.item[1] - var/bantime = select_query.item[2] - var/bantype = select_query.item[3] - var/reason = select_query.item[4] - var/job = select_query.item[5] - var/duration = select_query.item[6] - var/expiration = select_query.item[7] - var/ckey = select_query.item[8] - var/ackey = select_query.item[9] - var/unbanned = select_query.item[10] - var/unbanckey = select_query.item[11] - var/unbantime = select_query.item[12] - var/edits = select_query.item[13] + while(query_search_bans.NextRow()) + var/banid = query_search_bans.item[1] + var/bantime = query_search_bans.item[2] + var/bantype = query_search_bans.item[3] + var/reason = query_search_bans.item[4] + var/job = query_search_bans.item[5] + var/duration = query_search_bans.item[6] + var/expiration = query_search_bans.item[7] + var/ckey = query_search_bans.item[8] + var/ackey = query_search_bans.item[9] + var/unbanned = query_search_bans.item[10] + var/unbanckey = query_search_bans.item[11] + var/unbantime = query_search_bans.item[12] + var/edits = query_search_bans.item[13] var/lcolor = blcolor var/dcolor = bdcolor diff --git a/code/modules/admin/IsBanned.dm b/code/modules/admin/IsBanned.dm index ab45acfd41..e69897e183 100644 --- a/code/modules/admin/IsBanned.dm +++ b/code/modules/admin/IsBanned.dm @@ -74,18 +74,17 @@ if(computer_id) cidquery = " OR computerid = '[computer_id]' " - var/DBQuery/query = dbcon.NewQuery("SELECT ckey, a_ckey, reason, expiration_time, duration, bantime, bantype FROM [format_table_name("ban")] WHERE (ckey = '[ckeytext]' [ipquery] [cidquery]) AND (bantype = 'PERMABAN' OR bantype = 'ADMIN_PERMABAN' OR ((bantype = 'TEMPBAN' OR bantype = 'ADMIN_TEMPBAN') AND expiration_time > Now())) AND isnull(unbanned)") - - query.Execute() - - while(query.NextRow()) - var/pckey = query.item[1] - var/ackey = query.item[2] - var/reason = query.item[3] - var/expiration = query.item[4] - var/duration = query.item[5] - var/bantime = query.item[6] - var/bantype = query.item[7] + var/DBQuery/query_ban_check = dbcon.NewQuery("SELECT ckey, a_ckey, reason, expiration_time, duration, bantime, bantype FROM [format_table_name("ban")] WHERE (ckey = '[ckeytext]' [ipquery] [cidquery]) AND (bantype = 'PERMABAN' OR bantype = 'ADMIN_PERMABAN' OR ((bantype = 'TEMPBAN' OR bantype = 'ADMIN_TEMPBAN') AND expiration_time > Now())) AND isnull(unbanned)") + if(!query_ban_check.Execute()) + return + while(query_ban_check.NextRow()) + var/pckey = query_ban_check.item[1] + var/ackey = query_ban_check.item[2] + var/reason = query_ban_check.item[3] + var/expiration = query_ban_check.item[4] + var/duration = query_ban_check.item[5] + var/bantime = query_ban_check.item[6] + var/bantype = query_ban_check.item[7] if (bantype == "ADMIN_PERMABAN" || bantype == "ADMIN_TEMPBAN") //admin bans MUST match on ckey to prevent cid-spoofing attacks // as well as dynamic ip abuse @@ -182,7 +181,7 @@ return null if (C) //user is already connected!. - 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 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/NewBan.dm b/code/modules/admin/NewBan.dm index 7ab4fda04a..0855ac13b9 100644 --- a/code/modules/admin/NewBan.dm +++ b/code/modules/admin/NewBan.dm @@ -103,7 +103,7 @@ var/savefile/Banlist Banlist.cd = "/base" if ( Banlist.dir.Find("[ckey][computerid]") ) - usr << text("Ban already exists.") + to_chat(usr, text("Ban already exists.")) return 0 else Banlist.dir.Add("[ckey][computerid]") diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 17c14c940e..c744172b2b 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -4,11 +4,11 @@ var/global/BSACooldown = 0 //////////////////////////////// /proc/message_admins(msg) msg = "ADMIN LOG: [msg]" - admins << msg + to_chat(admins, msg) /proc/relay_msg_admins(msg) msg = "RELAY: [msg]" - admins << msg + to_chat(admins, msg) ///////////////////////////////////////////////////////////////////////////////////////////////Panels @@ -25,7 +25,7 @@ var/global/BSACooldown = 0 log_game("[key_name_admin(usr)] checked the player panel while in game.") if(!M) - usr << "You seem to be selecting a mob that doesn't exist anymore." + to_chat(usr, "You seem to be selecting a mob that doesn't exist anymore.") return var/body = "Options for [M.key]" @@ -82,7 +82,8 @@ var/global/BSACooldown = 0 body += "

    " body += "Traitor panel | " body += "Narrate to | " - body += "Subtle message" + body += "Subtle message | " + body += "Individual Round Logs" if (M.client) if(!isnewplayer(M)) @@ -156,9 +157,6 @@ var/global/BSACooldown = 0 body += "

    " body += "Other actions:" body += "
    " - body += "Make Mentor | " - body += "Remove Mentor | " - body += "
    " body += "Forcesay | " body += "Thunderdome 1 | " body += "Thunderdome 2 | " @@ -180,7 +178,7 @@ var/global/BSACooldown = 0 if (!istype(src,/datum/admins)) src = usr.client.holder if (!istype(src,/datum/admins)) - usr << "Error: you are not an admin!" + to_chat(usr, "Error: you are not an admin!") return var/dat dat = text("Admin Newscaster

    Admin Newscaster Unit

    ") @@ -376,8 +374,8 @@ var/global/BSACooldown = 0 else dat+="I'm sorry to break your immersion. This shit's bugged. Report this bug to Agouri, polyxenitopalidou@gmail.com" - //world << "Channelname: [src.admincaster_feed_channel.channel_name] [src.admincaster_feed_channel.author]" - //world << "Msg: [src.admincaster_feed_message.author] [src.admincaster_feed_message.body]" + //to_chat(world, "Channelname: [src.admincaster_feed_channel.channel_name] [src.admincaster_feed_channel.author]") + //to_chat(world, "Msg: [src.admincaster_feed_message.author] [src.admincaster_feed_message.body]") usr << browse(dat, "window=admincaster_main;size=400x600") onclose(usr, "admincaster_main") @@ -451,7 +449,7 @@ var/global/BSACooldown = 0 if(message) if(!check_rights(R_SERVER,0)) message = adminscrub(message,500) - world << "[usr.client.holder.fakekey ? "Administrator" : usr.key] Announces:\n \t [message]" + to_chat(world, "[usr.client.holder.fakekey ? "Administrator" : usr.key] Announces:\n \t [message]") log_admin("Announce: [key_name(usr)] : [message]") feedback_add_details("admin_verb","A") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -473,7 +471,7 @@ var/global/BSACooldown = 0 else message_admins("[key_name(usr)] set the admin notice.") log_admin("[key_name(usr)] set the admin notice:\n[new_admin_notice]") - world << "Admin Notice:\n \t [new_admin_notice]" + to_chat(world, "Admin Notice:\n \t [new_admin_notice]") feedback_add_details("admin_verb","SAN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! admin_notice = new_admin_notice return @@ -493,7 +491,7 @@ var/global/BSACooldown = 0 set name="Toggle Dead OOC" dooc_allowed = !( dooc_allowed ) - log_admin("[key_name(usr)] toggled Dead OOC.") + log_admin("[key_name(usr)] toggled OOC.") message_admins("[key_name_admin(usr)] toggled Dead OOC.") feedback_add_details("admin_verb","TDOOC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /* @@ -522,7 +520,7 @@ var/global/BSACooldown = 0 feedback_add_details("admin_verb","SN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return 1 else - usr << "Error: Start Now: Game has already started." + to_chat(usr, "Error: Start Now: Game has already started.") return 0 @@ -532,9 +530,9 @@ var/global/BSACooldown = 0 set name="Toggle Entering" enter_allowed = !( enter_allowed ) if (!( enter_allowed )) - world << "New players may no longer enter the game." + to_chat(world, "New players may no longer enter the game.") else - world << "New players may now enter the game." + to_chat(world, "New players may now enter the game.") log_admin("[key_name(usr)] toggled new player game entering.") message_admins("[key_name_admin(usr)] toggled new player game entering.") world.update_status() @@ -546,9 +544,9 @@ var/global/BSACooldown = 0 set name="Toggle AI" config.allow_ai = !( config.allow_ai ) if (!( config.allow_ai )) - world << "The AI job is no longer chooseable." + to_chat(world, "The AI job is no longer chooseable.") else - world << "The AI job is chooseable now." + to_chat(world, "The AI job is chooseable now.") log_admin("[key_name(usr)] toggled AI allowed.") world.update_status() feedback_add_details("admin_verb","TAI") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -559,9 +557,9 @@ var/global/BSACooldown = 0 set name="Toggle Respawn" abandon_allowed = !( abandon_allowed ) if (abandon_allowed) - world << "You may now respawn." + to_chat(world, "You may now respawn.") else - world << "You may no longer respawn :(" + to_chat(world, "You may no longer respawn :(") message_admins("[key_name_admin(usr)] toggled respawn to [abandon_allowed ? "On" : "Off"].") log_admin("[key_name(usr)] toggled respawn to [abandon_allowed ? "On" : "Off"].") world.update_status() @@ -578,10 +576,10 @@ var/global/BSACooldown = 0 if(newtime) ticker.SetTimeLeft(newtime * 10) if(newtime < 0) - world << "The game start has been delayed." + to_chat(world, "The game start has been delayed.") log_admin("[key_name(usr)] delayed the round start.") else - world << "The game will start in [newtime] seconds." + to_chat(world, "The game will start in [newtime] seconds.") world << 'sound/ai/attention.ogg' log_admin("[key_name(usr)] set the pre-game delay to [newtime] seconds.") feedback_add_details("admin_verb","DELAY") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -645,10 +643,10 @@ var/global/BSACooldown = 0 set name = "Show Traitor Panel" if(!istype(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return if(!M.mind) - usr << "This mob has no mind!" + to_chat(usr, "This mob has no mind!") return M.mind.edit_memory() @@ -661,9 +659,9 @@ var/global/BSACooldown = 0 set name="Toggle tinted welding helmes" tinted_weldhelh = !( tinted_weldhelh ) if (tinted_weldhelh) - world << "The tinted_weldhelh has been enabled!" + to_chat(world, "The tinted_weldhelh has been enabled!") else - world << "The tinted_weldhelh has been disabled!" + to_chat(world, "The tinted_weldhelh has been disabled!") log_admin("[key_name(usr)] toggled tinted_weldhelh.") message_admins("[key_name_admin(usr)] toggled tinted_weldhelh.") feedback_add_details("admin_verb","TTWH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -674,9 +672,9 @@ var/global/BSACooldown = 0 set name="Toggle guests" guests_allowed = !( guests_allowed ) if (!( guests_allowed )) - world << "Guests may no longer enter the game." + to_chat(world, "Guests may no longer enter the game.") else - world << "Guests may now enter the game." + to_chat(world, "Guests may now enter the game.") log_admin("[key_name(usr)] toggled guests game entering [guests_allowed?"":"dis"]allowed.") message_admins("[key_name_admin(usr)] toggled guests game entering [guests_allowed?"":"dis"]allowed.") feedback_add_details("admin_verb","TGU") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -686,35 +684,35 @@ var/global/BSACooldown = 0 for(var/mob/living/silicon/S in mob_list) ai_number++ if(isAI(S)) - usr << "AI [key_name(S, usr)]'s laws:" + to_chat(usr, "AI [key_name(S, usr)]'s laws:") else if(iscyborg(S)) var/mob/living/silicon/robot/R = S - usr << "CYBORG [key_name(S, usr)] [R.connected_ai?"(Slaved to: [R.connected_ai])":"(Independant)"]: laws:" + to_chat(usr, "CYBORG [key_name(S, usr)] [R.connected_ai?"(Slaved to: [R.connected_ai])":"(Independant)"]: laws:") else if (ispAI(S)) - usr << "pAI [key_name(S, usr)]'s laws:" + to_chat(usr, "pAI [key_name(S, usr)]'s laws:") else - usr << "SOMETHING SILICON [key_name(S, usr)]'s laws:" + to_chat(usr, "SOMETHING SILICON [key_name(S, usr)]'s laws:") if (S.laws == null) - usr << "[key_name(S, usr)]'s laws are null?? Contact a coder." + to_chat(usr, "[key_name(S, usr)]'s laws are null?? Contact a coder.") else S.laws.show_laws(usr) if(!ai_number) - usr << "No AIs located" //Just so you know the thing is actually working and not just ignoring you. + to_chat(usr, "No AIs located" ) /datum/admins/proc/output_all_devil_info() var/devil_number = 0 for(var/D in ticker.mode.devils) devil_number++ - usr << "Devil #[devil_number]:

    " + ticker.mode.printdevilinfo(D) + to_chat(usr, "Devil #[devil_number]:

    " + ticker.mode.printdevilinfo(D)) if(!devil_number) - usr << "No Devils located" //Just so you know the thing is actually working and not just ignoring you. + to_chat(usr, "No Devils located" ) /datum/admins/proc/output_devil_info(mob/living/M) if(istype(M) && M.mind && M.mind.devilinfo) - usr << ticker.mode.printdevilinfo(M.mind) + to_chat(usr, ticker.mode.printdevilinfo(M.mind)) else - usr << "[M] is not a devil." + to_chat(usr, "[M] is not a devil.") /datum/admins/proc/manage_free_slots() if(!check_rights()) @@ -776,7 +774,7 @@ var/global/BSACooldown = 0 if(kick_only_afk && !C.is_afk()) //Ignore clients who are not afk continue if(message) - C << message + to_chat(C, message) kicked_client_names.Add("[C.ckey]") qdel(C) return kicked_client_names @@ -825,8 +823,4 @@ var/global/BSACooldown = 0 string = pick( "Admin login: [key_name(src)]") if(string) - message_admins("[string]") - - -/datum/admins/SDQL_update() - return FALSE //No. \ No newline at end of file + message_admins("[string]") \ No newline at end of file diff --git a/code/modules/admin/admin_investigate.dm b/code/modules/admin/admin_investigate.dm index 8a35d35c93..12c587c868 100644 --- a/code/modules/admin/admin_investigate.dm +++ b/code/modules/admin/admin_investigate.dm @@ -31,20 +31,20 @@ if(!holder) return switch(subject) - if("singulo", "wires", "telesci", "gravity", "records", "cargo", "supermatter", "atmos", "kudzu") //general one-round-only stuff + if("singulo", "wires", "telesci", "gravity", "records", "cargo", "supermatter", "atmos", "botany") //general one-round-only stuff var/F = investigate_subject2file(subject) if(!F) - src << "Error: admin_investigate: [INVESTIGATE_DIR][subject] is an invalid path or cannot be accessed." + to_chat(src, "Error: admin_investigate: [INVESTIGATE_DIR][subject] is an invalid path or cannot be accessed.") return src << browse(F,"window=investigate[subject];size=800x300") if("hrefs") //persistent logs and stuff if(href_logfile) src << browse(href_logfile,"window=investigate[subject];size=800x300") else if(!config.log_hrefs) - src << "Href logging is off and no logfile was found." + to_chat(src, "Href logging is off and no logfile was found.") return else - src << "No href logfile was found." + to_chat(src, "No href logfile was found.") return if("notes, memos, watchlist") browse_messages() diff --git a/code/modules/admin/admin_memo.dm b/code/modules/admin/admin_memo.dm deleted file mode 100644 index 7645c889df..0000000000 --- a/code/modules/admin/admin_memo.dm +++ /dev/null @@ -1,131 +0,0 @@ -/client/proc/admin_memo() - set name = "Admin Memos" - set category = "Server" - if(!check_rights(0)) - return - if(!dbcon.IsConnected()) - src << "Failed to establish database connection." - return - var/memotask = input(usr,"Choose task.","Memo") in list("Show","Write","Edit","Remove") - if(!memotask) - return - admin_memo_output(memotask) - -/client/proc/admin_memo_output(task) - if(!task) - return - if(!dbcon.IsConnected()) - src << "Failed to establish database connection." - return - var/sql_ckey = sanitizeSQL(src.ckey) - switch(task) - if("Write") - var/DBQuery/query_memocheck = dbcon.NewQuery("SELECT ckey FROM [format_table_name("memo")] WHERE ckey = '[sql_ckey]'") - if(!query_memocheck.Execute()) - var/err = query_memocheck.ErrorMsg() - log_game("SQL ERROR obtaining ckey from memo table. Error : \[[err]\]\n") - return - if(query_memocheck.NextRow()) - src << "You already have set an admin memo." - return - var/memotext = input(src,"Write your Memo","Memo") as message - if(!memotext) - return - memotext = sanitizeSQL(memotext) - var/timestamp = SQLtime() - var/DBQuery/query_memoadd = dbcon.NewQuery("INSERT INTO [format_table_name("memo")] (ckey, memotext, timestamp) VALUES ('[sql_ckey]', '[memotext]', '[timestamp]')") - if(!query_memoadd.Execute()) - var/err = query_memoadd.ErrorMsg() - log_game("SQL ERROR adding new memo. Error : \[[err]\]\n") - return - log_admin("[key_name(src)] has set an admin memo: [memotext]") - message_admins("[key_name_admin(src)] has set an admin memo:
    [memotext]") - if("Edit") - var/DBQuery/query_memolist = dbcon.NewQuery("SELECT ckey FROM [format_table_name("memo")]") - if(!query_memolist.Execute()) - var/err = query_memolist.ErrorMsg() - log_game("SQL ERROR obtaining ckey from memo table. Error : \[[err]\]\n") - return - var/list/memolist = list() - while(query_memolist.NextRow()) - var/lkey = query_memolist.item[1] - memolist += "[lkey]" - if(!memolist.len) - src << "No memos found in database." - return - var/target_ckey = input(src, "Select whose memo to edit", "Select memo") as null|anything in memolist - if(!target_ckey) - return - var/target_sql_ckey = sanitizeSQL(target_ckey) - var/DBQuery/query_memofind = dbcon.NewQuery("SELECT memotext FROM [format_table_name("memo")] WHERE ckey = '[target_sql_ckey]'") - if(!query_memofind.Execute()) - var/err = query_memofind.ErrorMsg() - log_game("SQL ERROR obtaining memotext from memo table. Error : \[[err]\]\n") - return - if(query_memofind.NextRow()) - var/old_memo = query_memofind.item[1] - var/new_memo = input("Input new memo", "New Memo", "[old_memo]", null) as message - if(!new_memo) - return - new_memo = sanitizeSQL(new_memo) - var/edit_text = "Edited by [sql_ckey] on [SQLtime()] from
    [old_memo]
    to
    [new_memo]
    " - edit_text = sanitizeSQL(edit_text) - var/DBQuery/update_query = dbcon.NewQuery("UPDATE [format_table_name("memo")] SET memotext = '[new_memo]', last_editor = '[sql_ckey]', edits = CONCAT(IFNULL(edits,''),'[edit_text]') WHERE ckey = '[target_sql_ckey]'") - if(!update_query.Execute()) - var/err = update_query.ErrorMsg() - log_game("SQL ERROR editing memo. Error : \[[err]\]\n") - return - if(target_sql_ckey == sql_ckey) - log_admin("[key_name(src)] has edited their admin memo from [old_memo] to [new_memo]") - message_admins("[key_name_admin(src)] has edited their admin memo from
    [old_memo]
    to
    [new_memo]") - else - log_admin("[key_name(src)] has edited [target_sql_ckey]'s admin memo from [old_memo] to [new_memo]") - message_admins("[key_name_admin(src)] has edited [target_sql_ckey]'s admin memo from
    [old_memo]
    to
    [new_memo]") - if("Show") - var/DBQuery/query_memoshow = dbcon.NewQuery("SELECT ckey, memotext, timestamp, last_editor FROM [format_table_name("memo")]") - if(!query_memoshow.Execute()) - var/err = query_memoshow.ErrorMsg() - log_game("SQL ERROR obtaining ckey, memotext, timestamp, last_editor from memo table. Error : \[[err]\]\n") - return - var/output = null - while(query_memoshow.NextRow()) - var/ckey = query_memoshow.item[1] - var/memotext = query_memoshow.item[2] - var/timestamp = query_memoshow.item[3] - var/last_editor = query_memoshow.item[4] - output += "Admin memo by [ckey] on [timestamp]" - if(last_editor) - output += "
    Last edit by [last_editor] (Click here to see edit log)" - output += "
    [memotext]

    " - if(!output) - src << "No memos found in database." - return - src << output - if("Remove") - var/DBQuery/query_memodellist = dbcon.NewQuery("SELECT ckey FROM [format_table_name("memo")]") - if(!query_memodellist.Execute()) - var/err = query_memodellist.ErrorMsg() - log_game("SQL ERROR obtaining ckey from memo table. Error : \[[err]\]\n") - return - var/list/memolist = list() - while(query_memodellist.NextRow()) - var/ckey = query_memodellist.item[1] - memolist += "[ckey]" - if(!memolist.len) - src << "No memos found in database." - return - var/target_ckey = input(src, "Select whose memo to delete", "Select memo") as null|anything in memolist - if(!target_ckey) - return - var/target_sql_ckey = sanitizeSQL(target_ckey) - var/DBQuery/query_memodel = dbcon.NewQuery("DELETE FROM [format_table_name("memo")] WHERE ckey = '[target_sql_ckey]'") - if(!query_memodel.Execute()) - var/err = query_memodel.ErrorMsg() - log_game("SQL ERROR removing memo. Error : \[[err]\]\n") - return - if(target_sql_ckey == sql_ckey) - log_admin("[key_name(src)] has removed their admin memo.") - message_admins("[key_name_admin(src)] has removed their admin memo.") - else - log_admin("[key_name(src)] has removed [target_sql_ckey]'s admin memo.") - message_admins("[key_name_admin(src)] has removed [target_sql_ckey]'s admin memo.") \ No newline at end of file diff --git a/code/modules/admin/admin_ranks.dm b/code/modules/admin/admin_ranks.dm index 3b981bfda2..079415f864 100644 --- a/code/modules/admin/admin_ranks.dm +++ b/code/modules/admin/admin_ranks.dm @@ -6,9 +6,6 @@ var/list/admin_ranks = list() //list of all admin_rank datums var/list/adds var/list/subs -/datum/admin_rank/SDQL_update() - return FALSE //Nice try trivialadmin! - /datum/admin_rank/New(init_name, init_rights, list/init_adds, list/init_subs) name = init_name switch(name) @@ -134,11 +131,12 @@ var/list/admin_ranks = list() //list of all admin_rank datums load_admin_ranks() return - var/DBQuery/query = dbcon.NewQuery("SELECT rank, flags FROM [format_table_name("admin_ranks")]") - query.Execute() - while(query.NextRow()) - var/rank_name = ckeyEx(query.item[1]) - var/flags = query.item[2] + var/DBQuery/query_load_admin_ranks = dbcon.NewQuery("SELECT rank, flags FROM [format_table_name("admin_ranks")]") + if(!query_load_admin_ranks.Execute()) + return + while(query_load_admin_ranks.NextRow()) + var/rank_name = ckeyEx(query_load_admin_ranks.item[1]) + var/flags = query_load_admin_ranks.item[2] if(istext(flags)) flags = text2num(flags) var/datum/admin_rank/R = new(rank_name, flags) @@ -208,11 +206,12 @@ var/list/admin_ranks = list() //list of all admin_rank datums load_admins() return - var/DBQuery/query = dbcon.NewQuery("SELECT ckey, rank FROM [format_table_name("admin")]") - query.Execute() - while(query.NextRow()) - var/ckey = ckey(query.item[1]) - var/rank = ckeyEx(query.item[2]) + var/DBQuery/query_load_admins = dbcon.NewQuery("SELECT ckey, rank FROM [format_table_name("admin")]") + if(!query_load_admins.Execute()) + return + while(query_load_admins.NextRow()) + var/ckey = ckey(query_load_admins.item[1]) + var/rank = ckeyEx(query_load_admins.item[2]) if(target && ckey != target) continue @@ -268,14 +267,14 @@ var/list/admin_ranks = list() //list of all admin_rank datums if(!new_ckey) return if(new_ckey in admin_datums) - usr << "Error: Topic 'editrights': [new_ckey] is already an admin" + to_chat(usr, "Error: Topic 'editrights': [new_ckey] is already an admin") return adm_ckey = new_ckey task = "rank" else adm_ckey = ckey(href_list["ckey"]) if(!adm_ckey) - usr << "Error: Topic 'editrights': No valid ckey" + to_chat(usr, "Error: Topic 'editrights': No valid ckey") return var/datum/admins/D = admin_datums[adm_ckey] @@ -378,5 +377,5 @@ var/list/admin_ranks = list() //list of all admin_rank datums var/sql_ckey = sanitizeSQL(ckey) var/sql_admin_rank = sanitizeSQL(newrank) - var/DBQuery/query_update = dbcon.NewQuery("UPDATE [format_table_name("player")] SET lastadminrank = '[sql_admin_rank]' WHERE ckey = '[sql_ckey]'") - query_update.Execute() + var/DBQuery/query_admin_rank_update = dbcon.NewQuery("UPDATE [format_table_name("player")] SET lastadminrank = '[sql_admin_rank]' WHERE ckey = '[sql_ckey]'") + query_admin_rank_update.Execute() diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 3e38526ebc..8a93993cb2 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -7,8 +7,6 @@ var/list/admin_verbs_default = list( /client/proc/hide_verbs, /*hides all our adminverbs*/ /client/proc/hide_most_verbs, /*hides all our hideable adminverbs*/ /client/proc/debug_variables, /*allows us to -see- the variables of any instance in the game. +VAREDIT needed to modify*/ - /client/proc/admin_memo, /*admin memo system. show/delete/write. +SERVER needed to delete admin memos of others*/ - /client/proc/mentor_memo, /*mentor memo system. show/delete/write. +SERVER needed to delete mentor memos of others*/ /client/proc/deadchat, /*toggles deadchat on/off*/ /client/proc/dsay, /*talk in deadchat using our ckey/fakekey*/ /client/proc/toggleprayers, /*toggles prayers on/off*/ @@ -21,7 +19,8 @@ var/list/admin_verbs_default = list( /client/proc/reestablish_db_connection,/*reattempt a connection to the database*/ /client/proc/cmd_admin_pm_context, /*right-click adminPM interface*/ /client/proc/cmd_admin_pm_panel, /*admin-pm list*/ - /client/proc/stop_sounds + /client/proc/stop_sounds, + /client/proc/mentor_memo, /*mentor memo system. show/delete/write. +SERVER needed to delete mentor memos of others*/ ) var/list/admin_verbs_admin = list( /client/proc/player_panel_new, /*shows an interface for all players, with links to various panels*/ @@ -119,10 +118,8 @@ var/list/admin_verbs_server = list( /client/proc/cmd_admin_delete, /*delete an instance/object/mob/etc*/ /client/proc/cmd_debug_del_all, /client/proc/toggle_random_events, -#if SERVERTOOLS /client/proc/forcerandomrotate, /client/proc/adminchangemap, -#endif /client/proc/panicbunker, /client/proc/toggle_hub @@ -150,7 +147,6 @@ var/list/admin_verbs_debug = list( /client/proc/get_dynex_range, //*debug verbs for dynex explosions. /client/proc/set_dynex_scale, /client/proc/cmd_display_del_log, - /client/proc/reset_latejoin_spawns, /client/proc/create_outfits, /client/proc/modify_goals, /client/proc/debug_huds, @@ -159,7 +155,8 @@ var/list/admin_verbs_debug = list( /client/proc/jump_to_ruin, /client/proc/clear_dynamic_transit, /client/proc/toggle_medal_disable, - /client/proc/view_runtimes + /client/proc/view_runtimes, + /client/proc/pump_random_event ) var/list/admin_verbs_possess = list( /proc/possess, @@ -327,7 +324,7 @@ var/list/admin_verbs_hideable = list( verbs.Remove(/client/proc/hide_most_verbs, admin_verbs_hideable) verbs += /client/proc/show_verbs - src << "Most of your adminverbs have been hidden." + to_chat(src, "Most of your adminverbs have been hidden.") feedback_add_details("admin_verb","HMV") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return @@ -338,7 +335,7 @@ var/list/admin_verbs_hideable = list( remove_admin_verbs() verbs += /client/proc/show_verbs - src << "Almost all of your adminverbs have been hidden." + to_chat(src, "Almost all of your adminverbs have been hidden.") feedback_add_details("admin_verb","TAVVH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return @@ -349,7 +346,7 @@ var/list/admin_verbs_hideable = list( verbs -= /client/proc/show_verbs add_admin_verbs() - src << "All of your adminverbs are now visible." + to_chat(src, "All of your adminverbs are now visible.") feedback_add_details("admin_verb","TAVVS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -372,7 +369,7 @@ var/list/admin_verbs_hideable = list( ghost.reenter_corpse() feedback_add_details("admin_verb","P") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! else if(isnewplayer(mob)) - src << "Error: Aghost: Can't admin-ghost whilst in the lobby. Join or Observe first." + to_chat(src, "Error: Aghost: Can't admin-ghost whilst in the lobby. Join or Observe first.") else //ghostize log_admin("[key_name(usr)] admin ghosted.") @@ -391,10 +388,10 @@ var/list/admin_verbs_hideable = list( if(holder && mob) if(mob.invisibility == INVISIBILITY_OBSERVER) mob.invisibility = initial(mob.invisibility) - mob << "Invisimin off. Invisibility reset." + to_chat(mob, "Invisimin off. Invisibility reset.") else mob.invisibility = INVISIBILITY_OBSERVER - mob << "Invisimin on. You are now as invisible as a ghost." + to_chat(mob, "Invisimin on. You are now as invisible as a ghost.") /client/proc/player_panel_new() set name = "Player Panel" @@ -552,7 +549,7 @@ var/list/admin_verbs_hideable = list( var/ex_power = input("Explosive Power:") as null|num var/range = round((2 * ex_power)**DYN_EX_SCALE) - usr << "Estimated Explosive Range: (Devestation: [round(range*0.25)], Heavy: [round(range*0.5)], Light: [round(range)])" + to_chat(usr, "Estimated Explosive Range: (Devestation: [round(range*0.25)], Heavy: [round(range*0.5)], Light: [round(range)])") /client/proc/get_dynex_power() set category = "Debug" @@ -561,7 +558,7 @@ var/list/admin_verbs_hideable = list( var/ex_range = input("Light Explosion Range:") as null|num var/power = (0.5 * ex_range)**(1/DYN_EX_SCALE) - usr << "Estimated Explosive Power: [power]" + to_chat(usr, "Estimated Explosive Power: [power]") /client/proc/set_dynex_scale() set category = "Debug" @@ -652,10 +649,10 @@ var/list/admin_verbs_hideable = list( if(config) if(config.log_hrefs) config.log_hrefs = 0 - src << "Stopped logging hrefs" + to_chat(src, "Stopped logging hrefs") else config.log_hrefs = 1 - src << "Started logging hrefs" + to_chat(src, "Started logging hrefs") /client/proc/check_ai_laws() set name = "Check AI Laws" @@ -678,7 +675,7 @@ var/list/admin_verbs_hideable = list( admin_datums -= ckey verbs += /client/proc/readmin - src << "You are now a normal player." + to_chat(src, "You are now a normal player.") log_admin("[src] deadmined themself.") message_admins("[src] deadmined themself.") feedback_add_details("admin_verb","DAS") @@ -696,7 +693,7 @@ var/list/admin_verbs_hideable = list( deadmins -= ckey verbs -= /client/proc/readmin - src << "You are now an admin." + to_chat(src, "You are now an admin.") message_admins("[src] re-adminned themselves.") log_admin("[src] re-adminned themselves.") feedback_add_details("admin_verb","RAS") diff --git a/code/modules/admin/banjob.dm b/code/modules/admin/banjob.dm index 53c9a19e94..75525b93f8 100644 --- a/code/modules/admin/banjob.dm +++ b/code/modules/admin/banjob.dm @@ -4,12 +4,11 @@ return 0 if(!M.client) //no cache. fallback to a DBQuery - var/DBQuery/query = dbcon.NewQuery("SELECT reason FROM [format_table_name("ban")] WHERE ckey = '[sanitizeSQL(M.ckey)]' AND (bantype = 'JOB_PERMABAN' OR (bantype = 'JOB_TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned) AND job = '[sanitizeSQL(rank)]'") - if(!query.Execute()) - log_game("SQL ERROR obtaining jobbans. Error : \[[query.ErrorMsg()]\]\n") + var/DBQuery/query_jobban_check_ban = dbcon.NewQuery("SELECT reason FROM [format_table_name("ban")] WHERE ckey = '[sanitizeSQL(M.ckey)]' AND (bantype = 'JOB_PERMABAN' OR (bantype = 'JOB_TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned) AND job = '[sanitizeSQL(rank)]'") + if(!query_jobban_check_ban.warn_execute()) return - if(query.NextRow()) - var/reason = query.item[1] + if(query_jobban_check_ban.NextRow()) + var/reason = query_jobban_check_ban.item[1] return reason ? reason : 1 //we don't want to return "" if there is no ban reason, as that would evaluate to false else return 0 @@ -25,12 +24,11 @@ /proc/jobban_buildcache(client/C) if(C && istype(C)) C.jobbancache = list() - var/DBQuery/query = dbcon.NewQuery("SELECT job, reason FROM [format_table_name("ban")] WHERE ckey = '[sanitizeSQL(C.ckey)]' AND (bantype = 'JOB_PERMABAN' OR (bantype = 'JOB_TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned)") - if(!query.Execute()) - log_game("SQL ERROR obtaining jobbans. Error : \[[query.ErrorMsg()]\]\n") + var/DBQuery/query_jobban_build_cache = dbcon.NewQuery("SELECT job, reason FROM [format_table_name("ban")] WHERE ckey = '[sanitizeSQL(C.ckey)]' AND (bantype = 'JOB_PERMABAN' OR (bantype = 'JOB_TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned)") + if(!query_jobban_build_cache.warn_execute()) return - while(query.NextRow()) - C.jobbancache[query.item[1]] = query.item[2] + while(query_jobban_build_cache.NextRow()) + C.jobbancache[query_jobban_build_cache.item[1]] = query_jobban_build_cache.item[2] /proc/ban_unban_log_save(var/formatted_log) text2file(formatted_log,"data/ban_unban_log.txt") diff --git a/code/modules/admin/create_poll.dm b/code/modules/admin/create_poll.dm index 9c03cc4d57..8f71cb20df 100644 --- a/code/modules/admin/create_poll.dm +++ b/code/modules/admin/create_poll.dm @@ -4,20 +4,16 @@ if(!check_rights(R_PERMISSIONS)) return if(!dbcon.IsConnected()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return var/returned = create_poll_function() if(returned) var/DBQuery/query_check_option = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_option")] WHERE pollid = [returned]") - if(!query_check_option.Execute()) - var/err = query_check_option.ErrorMsg() - log_game("SQL ERROR obtaining id from poll_option table. Error : \[[err]\]\n") + if(!query_check_option.warn_execute()) return if(query_check_option.NextRow()) var/DBQuery/query_log_get = dbcon.NewQuery("SELECT polltype, question, adminonly FROM [format_table_name("poll_question")] WHERE id = [returned]") - if(!query_log_get.Execute()) - var/err = query_log_get.ErrorMsg() - log_game("SQL ERROR obtaining polltype, question, adminonly from poll_question table. Error : \[[err]\]\n") + if(!query_log_get.warn_execute()) return if(query_log_get.NextRow()) var/polltype = query_log_get.item[1] @@ -26,11 +22,9 @@ log_admin("[key_name(usr)] has created a new server poll. Poll type: [polltype] - Admin Only: [adminonly ? "Yes" : "No"] - Question: [question]") message_admins("[key_name_admin(usr)] has created a new server poll. Poll type: [polltype] - Admin Only: [adminonly ? "Yes" : "No"]
    Question: [question]") else - src << "Poll question created without any options, poll will be deleted." + to_chat(src, "Poll question created without any options, poll will be deleted.") var/DBQuery/query_del_poll = dbcon.NewQuery("DELETE FROM [format_table_name("poll_question")] WHERE id = [returned]") - if(!query_del_poll.Execute()) - var/err = query_del_poll.ErrorMsg() - log_game("SQL ERROR deleting poll question [returned]. Error : \[[err]\]\n") + if(!query_del_poll.warn_execute()) return /client/proc/create_poll_function() @@ -58,24 +52,20 @@ return endtime = sanitizeSQL(endtime) var/DBQuery/query_validate_time = dbcon.NewQuery("SELECT STR_TO_DATE('[endtime]','%Y-%c-%d %T')") - if(!query_validate_time.Execute()) - var/err = query_validate_time.ErrorMsg() - log_game("SQL ERROR validating endtime. Error : \[[err]\]\n") + if(!query_validate_time.warn_execute()) return if(query_validate_time.NextRow()) endtime = query_validate_time.item[1] if(!endtime) - src << "Datetime entered is invalid." + to_chat(src, "Datetime entered is invalid.") return var/DBQuery/query_time_later = dbcon.NewQuery("SELECT TIMESTAMP('[endtime]') < NOW()") - if(!query_time_later.Execute()) - var/err = query_time_later.ErrorMsg() - log_game("SQL ERROR comparing endtime to NOW(). Error : \[[err]\]\n") + if(!query_time_later.warn_execute()) return if(query_time_later.NextRow()) var/checklate = text2num(query_time_later.item[1]) if(checklate) - src << "Datetime entered is not later than current server time." + to_chat(src, "Datetime entered is not later than current server time.") return var/adminonly switch(alert("Admin only poll?",,"Yes","No","Cancel")) @@ -99,9 +89,7 @@ return question = sanitizeSQL(question) var/DBQuery/query_polladd_question = dbcon.NewQuery("INSERT INTO [format_table_name("poll_question")] (polltype, starttime, endtime, question, adminonly, multiplechoiceoptions, createdby_ckey, createdby_ip, dontshow) VALUES ('[polltype]', '[starttime]', '[endtime]', '[question]', '[adminonly]', '[choice_amount]', '[sql_ckey]', INET_ATON('[address]'), '[dontshow]')") - if(!query_polladd_question.Execute()) - var/err = query_polladd_question.ErrorMsg() - log_game("SQL ERROR adding new poll question to table. Error : \[[err]\]\n") + if(!query_polladd_question.warn_execute()) return if(polltype == POLLTYPE_TEXT) log_admin("[key_name(usr)] has created a new server poll. Poll type: [polltype] - Admin Only: [adminonly ? "Yes" : "No"] - Question: [question]") @@ -109,9 +97,7 @@ return var/pollid = 0 var/DBQuery/query_get_id = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_question")] WHERE question = '[question]' AND starttime = '[starttime]' AND endtime = '[endtime]' AND createdby_ckey = '[sql_ckey]' AND createdby_ip = INET_ATON('[address]')") - if(!query_get_id.Execute()) - var/err = query_get_id.ErrorMsg() - log_game("SQL ERROR obtaining id from poll_question table. Error : \[[err]\]\n") + if(!query_get_id.warn_execute()) return if(query_get_id.NextRow()) pollid = query_get_id.item[1] @@ -143,7 +129,7 @@ if(!maxval) return pollid if(minval >= maxval) - src << "Minimum rating value can't be more than maximum rating value" + to_chat(src, "Minimum rating value can't be more than maximum rating value") return pollid descmin = input("Optional: Set description for minimum rating","Minimum rating description") as message|null if(descmin) @@ -161,9 +147,7 @@ else if(descmax == null) return pollid var/DBQuery/query_polladd_option = dbcon.NewQuery("INSERT INTO [format_table_name("poll_option")] (pollid, text, percentagecalc, minval, maxval, descmin, descmid, descmax) VALUES ('[pollid]', '[option]', '[percentagecalc]', '[minval]', '[maxval]', '[descmin]', '[descmid]', '[descmax]')") - if(!query_polladd_option.Execute()) - var/err = query_polladd_option.ErrorMsg() - log_game("SQL ERROR adding new poll option to table. Error : \[[err]\]\n") + if(!query_polladd_option.warn_execute()) return pollid switch(alert(" ",,"Add option","Finish", "Cancel")) if("Add option") diff --git a/code/modules/admin/fun_balloon.dm b/code/modules/admin/fun_balloon.dm index 0405adb1cd..5ca3e50c57 100644 --- a/code/modules/admin/fun_balloon.dm +++ b/code/modules/admin/fun_balloon.dm @@ -56,7 +56,7 @@ var/mob/dead/observer/ghost = pick_n_take(candidates) var/mob/living/body = pick_n_take(bodies) - body << "Your mob has been taken over by a ghost!" + to_chat(body, "Your mob has been taken over by a ghost!") message_admins("[key_name_admin(ghost)] has taken control of ([key_name_admin(body)])") body.ghostize(0) body.key = ghost.key @@ -81,7 +81,7 @@ var/turf/T = find_safe_turf() new /obj/effect/overlay/temp/gravpush(get_turf(M)) M.forceMove(T) - M << "Pop!" + to_chat(M, "Pop!") /obj/effect/station_crash name = "station crash" @@ -133,16 +133,16 @@ else var/mob/living/L = M if(L.pulling && istype(L.pulling, /obj/item/bodypart/head)) - L << "Your offering is accepted. You may pass." + to_chat(L, "Your offering is accepted. You may pass.") qdel(L.pulling) var/turf/LA = pick(warp_points) L.forceMove(LA) L.hallucination = 0 - L << "The battle is won. Your bloodlust subsides." + to_chat(L, "The battle is won. Your bloodlust subsides.") for(var/obj/item/weapon/twohanded/required/chainsaw/doomslayer/chainsaw in L) qdel(chainsaw) else - L << "You are not yet worthy of passing. Drag a severed head to the barrier to be allowed entry to the hall of champions." + to_chat(L, "You are not yet worthy of passing. Drag a severed head to the barrier to be allowed entry to the hall of champions.") /obj/effect/landmark/shuttle_arena_safe name = "hall of champions" @@ -167,7 +167,7 @@ var/obj/effect/landmark/LA = pick(warp_points) M.forceMove(get_turf(LA)) - M << "You're trapped in a deadly arena! To escape, you'll need to drag a severed head to the escape portals." + to_chat(M, "You're trapped in a deadly arena! To escape, you'll need to drag a severed head to the escape portals.") spawn() var/obj/effect/mine/pickup/bloodbath/B = new(M) B.mineEffect(M) diff --git a/code/modules/admin/holder2.dm b/code/modules/admin/holder2.dm index b35c037656..992aef1eb6 100644 --- a/code/modules/admin/holder2.dm +++ b/code/modules/admin/holder2.dm @@ -8,6 +8,8 @@ var/list/admin_datums = list() var/datum/marked_datum + var/spamcooldown = 0 + var/admincaster_screen = 0 //TODO: remove all these 5 variables, they are completly unacceptable var/datum/newscaster/feed_message/admincaster_feed_message = new /datum/newscaster/feed_message var/datum/newscaster/wanted_message/admincaster_wanted_message = new /datum/newscaster/wanted_message @@ -16,13 +18,11 @@ var/list/admin_datums = list() /datum/admins/New(datum/admin_rank/R, ckey) if(!ckey) - spawn(0) - del(src) + QDEL_IN(src, 0) throw EXCEPTION("Admin datum created without a ckey") return if(!istype(R)) - spawn(0) - del(src) + QDEL_IN(src, 0) throw EXCEPTION("Admin datum created without a rank") return rank = R @@ -67,7 +67,7 @@ generally it would be used like so: /proc/admin_proc() if(!check_rights(R_ADMIN)) return - world << "you have enough rights!" + to_chat(world, "you have enough rights!") NOTE: it checks usr! not src! So if you're checking somebody's rank in a proc which they did not call you will have to do something like if(client.rights & R_ADMIN) yourself. @@ -78,7 +78,7 @@ you will have to do something like if(client.rights & R_ADMIN) yourself. return 1 else if(show_msg) - usr << "Error: You do not have sufficient rights to do that. You require one of the following flags:[rights2text(rights_required," ")]." + to_chat(usr, "Error: You do not have sufficient rights to do that. You require one of the following flags:[rights2text(rights_required," ")].") return 0 //probably a bit iffy - will hopefully figure out a better solution diff --git a/code/modules/admin/ipintel.dm b/code/modules/admin/ipintel.dm index d6c02ee1e5..d4e354db09 100644 --- a/code/modules/admin/ipintel.dm +++ b/code/modules/admin/ipintel.dm @@ -34,7 +34,7 @@ return cachedintel if(dbcon.Connect()) - var/DBQuery/query = dbcon.NewQuery({" + var/DBQuery/query_get_ip_intel = dbcon.NewQuery({" SELECT date, intel, TIMESTAMPDIFF(MINUTE,date,NOW()) FROM [format_table_name("ipintel")] WHERE @@ -49,22 +49,22 @@ date + INTERVAL [config.ipintel_save_bad] HOUR > NOW() )) "}) - query.Execute() - if (query.NextRow()) + if(!query_get_ip_intel.Execute()) + return + if (query_get_ip_intel.NextRow()) res.cache = TRUE - res.cachedate = query.item[1] - res.intel = text2num(query.item[2]) - res.cacheminutesago = text2num(query.item[3]) - res.cacherealtime = world.realtime - (text2num(query.item[3])*10*60) + res.cachedate = query_get_ip_intel.item[1] + res.intel = text2num(query_get_ip_intel.item[2]) + res.cacheminutesago = text2num(query_get_ip_intel.item[3]) + res.cacherealtime = world.realtime - (text2num(query_get_ip_intel.item[3])*10*60) SSipintel.cache[ip] = res return res.intel = ip_intel_query(ip) if (updatecache && res.intel >= 0) SSipintel.cache[ip] = res if(dbcon.Connect()) - var/DBQuery/query = dbcon.NewQuery("INSERT INTO [format_table_name("ipintel")] (ip, intel) VALUES (INET_ATON('[ip]'), [res.intel]) ON DUPLICATE KEY UPDATE intel = VALUES(intel), date = NOW()") - query.Execute() - return + var/DBQuery/query_add_ip_intel = dbcon.NewQuery("INSERT INTO [format_table_name("ipintel")] (ip, intel) VALUES (INET_ATON('[ip]'), [res.intel]) ON DUPLICATE KEY UPDATE intel = VALUES(intel), date = NOW()") + query_add_ip_intel.Execute() diff --git a/code/modules/admin/permissionverbs/permissionedit.dm b/code/modules/admin/permissionverbs/permissionedit.dm index ae419b2108..c79eb6541e 100644 --- a/code/modules/admin/permissionverbs/permissionedit.dm +++ b/code/modules/admin/permissionverbs/permissionedit.dm @@ -61,7 +61,7 @@ return if(!dbcon.Connect()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return if(!adm_ckey || !new_rank) @@ -75,28 +75,33 @@ if(!istext(adm_ckey) || !istext(new_rank)) return - var/DBQuery/select_query = dbcon.NewQuery("SELECT id FROM [format_table_name("admin")] WHERE ckey = '[adm_ckey]'") - select_query.Execute() + var/DBQuery/query_get_admin = dbcon.NewQuery("SELECT id FROM [format_table_name("admin")] WHERE ckey = '[adm_ckey]'") + if(!query_get_admin.warn_execute()) + return var/new_admin = 1 var/admin_id - while(select_query.NextRow()) + while(query_get_admin.NextRow()) new_admin = 0 - admin_id = text2num(select_query.item[1]) + admin_id = text2num(query_get_admin.item[1]) if(new_admin) - var/DBQuery/insert_query = dbcon.NewQuery("INSERT INTO `[format_table_name("admin")]` (`id`, `ckey`, `rank`, `level`, `flags`) VALUES (null, '[adm_ckey]', '[new_rank]', -1, 0)") - insert_query.Execute() - var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `[format_table_name("admin_log")]` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Added new admin [adm_ckey] to rank [new_rank]');") - log_query.Execute() - usr << "New admin added." + var/DBQuery/query_add_admin = dbcon.NewQuery("INSERT INTO `[format_table_name("admin")]` (`id`, `ckey`, `rank`, `level`, `flags`) VALUES (null, '[adm_ckey]', '[new_rank]', -1, 0)") + if(!query_add_admin.warn_execute()) + return + var/DBQuery/query_add_admin_log = dbcon.NewQuery("INSERT INTO `[format_table_name("admin_log")]` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Added new admin [adm_ckey] to rank [new_rank]');") + if(!query_add_admin_log.warn_execute()) + return + to_chat(usr, "New admin added.") else if(!isnull(admin_id) && isnum(admin_id)) - var/DBQuery/insert_query = dbcon.NewQuery("UPDATE `[format_table_name("admin")]` SET rank = '[new_rank]' WHERE id = [admin_id]") - insert_query.Execute() - var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `[format_table_name("admin_log")]` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Edited the rank of [adm_ckey] to [new_rank]');") - log_query.Execute() - usr << "Admin rank changed." + var/DBQuery/query_change_admin = dbcon.NewQuery("UPDATE `[format_table_name("admin")]` SET rank = '[new_rank]' WHERE id = [admin_id]") + if(!query_change_admin.warn_execute()) + return + var/DBQuery/query_change_admin_log = dbcon.NewQuery("INSERT INTO `[format_table_name("admin_log")]` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Edited the rank of [adm_ckey] to [new_rank]');") + if(!query_change_admin_log.warn_execute()) + return + to_chat(usr, "Admin rank changed.") /datum/admins/proc/log_admin_permission_modification(adm_ckey, new_permission) @@ -108,23 +113,25 @@ return if(!dbcon.Connect()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return if(!adm_ckey || !istext(adm_ckey) || !isnum(new_permission)) return - var/DBQuery/select_query = dbcon.NewQuery("SELECT id, flags FROM [format_table_name("admin")] WHERE ckey = '[adm_ckey]'") - select_query.Execute() + var/DBQuery/query_get_perms = dbcon.NewQuery("SELECT id, flags FROM [format_table_name("admin")] WHERE ckey = '[adm_ckey]'") + if(!query_get_perms.warn_execute()) + return var/admin_id - while(select_query.NextRow()) - admin_id = text2num(select_query.item[1]) + while(query_get_perms.NextRow()) + admin_id = text2num(query_get_perms.item[1]) if(!admin_id) return - var/DBQuery/insert_query = dbcon.NewQuery("UPDATE `[format_table_name("admin")]` SET flags = [new_permission] WHERE id = [admin_id]") - insert_query.Execute() - var/DBQuery/log_query = dbcon.NewQuery("INSERT INTO `[format_table_name("admin_log")]` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Edit permission [rights2text(new_permission)] (flag = [new_permission]) to admin [adm_ckey]');") - log_query.Execute() + var/DBQuery/query_change_perms = dbcon.NewQuery("UPDATE `[format_table_name("admin")]` SET flags = [new_permission] WHERE id = [admin_id]") + if(!query_change_perms.warn_execute()) + return + var/DBQuery/query_change_perms_log = dbcon.NewQuery("INSERT INTO `[format_table_name("admin_log")]` (`id` ,`datetime` ,`adminckey` ,`adminip` ,`log` ) VALUES (NULL , NOW( ) , '[usr.ckey]', '[usr.client.address]', 'Edit permission [rights2text(new_permission)] (flag = [new_permission]) to admin [adm_ckey]');") + query_change_perms_log.warn_execute() diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index a631993357..f4eb7be6f3 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -349,12 +349,16 @@ var/brains = 0 var/other_players = 0 var/living_skipped = 0 + var/drones = 0 for(var/mob/M in mob_list) if(M.ckey) if(isnewplayer(M)) lobby_players++ continue else if(M.stat != DEAD && M.mind && !isbrain(M)) + if(isdrone(M)) + drones++ + continue if(M.z == ZLEVEL_CENTCOM) living_skipped++ continue @@ -373,7 +377,7 @@ other_players++ dat += "
    Players:|[connected_players - lobby_players] ingame|[connected_players] connected|[lobby_players] lobby|" dat += "
    Living Players:|[living_players_connected] active|[living_players - living_players_connected] disconnected|[living_players_antagonist] antagonists|" - dat += "
    SKIPPED \[On centcom Z-level\]: [living_skipped] living players|" + dat += "
    SKIPPED \[On centcom Z-level\]: [living_skipped] living players|[drones] living drones|" dat += "
    Dead/Observing players:|[observers_connected] active|[observers - observers_connected] disconnected|[brains] brains|" if(other_players) dat += "
    [other_players] players in invalid state or the statistics code is bugged!" diff --git a/code/modules/admin/secrets.dm b/code/modules/admin/secrets.dm index 064e02e563..57a20d8247 100644 --- a/code/modules/admin/secrets.dm +++ b/code/modules/admin/secrets.dm @@ -9,7 +9,6 @@ Show Job Debug
    Admin Log
    Show Admin List
    - Mentor Log

    "} @@ -29,11 +28,13 @@ List Fingerprints
    Enable/Disable CTF

    Reset Thunderdome to default state
    + Rename Station Name
    Reset Station Name

    Shuttles

    Move Ferry
    + Toggle Arrivals Ferry
    Move Mining Shuttle
    Move Labor Shuttle

    @@ -149,14 +150,25 @@ message_admins("[key_name_admin(usr)] has cured all diseases.") for(var/datum/disease/D in SSdisease.processing) D.cure(D) + if("set_name") + if(!check_rights(R_ADMIN)) + return + var/new_name = input(usr, "Please input a new name for the station.", "What?", "") as text|null + if(!new_name) + return + change_station_name(new_name) + log_admin("[key_name(usr)] renamed the station to \"[new_name]\".") + message_admins("[key_name_admin(usr)] renamed the station to: [new_name].") + priority_announce("[command_name()] has renamed the station to \"[new_name]\".") if("reset_name") if(!check_rights(R_ADMIN)) return - world.name = new_station_name() - station_name = world.name + var/new_name = new_station_name() + change_station_name(new_name) log_admin("[key_name(usr)] reset the station name.") message_admins("[key_name_admin(usr)] reset the station name.") + priority_announce("[command_name()] has renamed the station to \"[new_name]\".") if("list_bombers") if(!check_rights(R_ADMIN)) @@ -208,7 +220,20 @@ if(!SSshuttle.toggleShuttle("ferry","ferry_home","ferry_away")) message_admins("[key_name_admin(usr)] moved the centcom ferry") log_admin("[key_name(usr)] moved the centcom ferry") - + + if("togglearrivals") + if(!check_rights(R_ADMIN)) + return + var/obj/docking_port/mobile/arrivals/A = SSshuttle.arrivals + if(A) + var/new_perma = !A.perma_docked + A.perma_docked = new_perma + feedback_inc("admin_secrets_fun_used",1) + feedback_add_details("admin_secrets_fun_used","ShA[new_perma ? "s" : "g"]") + message_admins("[key_name_admin(usr)] [new_perma ? "stopped" : "started"] the arrivals shuttle") + log_admin("[key_name(usr)] [new_perma ? "stopped" : "started"] the arrivals shuttle") + else + to_chat(usr, "There is no arrivals shuttle") if("showailaws") if(!check_rights(R_ADMIN)) return @@ -417,7 +442,7 @@ H.equip_to_slot_or_del(I, slot_w_uniform) I.flags |= NODROP else - H << "You're not kawaii enough for this." + to_chat(H, "You're not kawaii enough for this.") if("whiteout") if(!check_rights(R_FUN)) @@ -453,7 +478,7 @@ feedback_inc("admin_secrets_fun_used",1) feedback_add_details("admin_secrets_fun_used","RET") for(var/mob/living/carbon/human/H in player_list) - H << "You suddenly feel stupid." + to_chat(H, "You suddenly feel stupid.") H.setBrainLoss(60) message_admins("[key_name_admin(usr)] made everybody retarded") @@ -578,11 +603,7 @@ if("ctfbutton") if(!check_rights(R_ADMIN)) return - var/ctf_enabled = FALSE - for(var/obj/machinery/capture_the_flag/CTF in machines) - ctf_enabled = CTF.toggle_ctf() - message_admins("[key_name_admin(usr)] has [ctf_enabled? "enabled" : "disabled"] CTF!") - notify_ghosts("CTF has been [ctf_enabled? "enabled" : "disabled"]!",'sound/effects/ghost2.ogg') + toggle_all_ctf(usr) if("masspurrbation") if(!check_rights(R_FUN)) return @@ -598,14 +619,6 @@ purrbation.") log_admin("[key_name(usr)] has removed everyone from purrbation.") - if("mentor_log") - var/dat = "Mentor Log
    " - for(var/l in mentor_log) - dat += "
  • [l]
  • " - if(!mentor_log.len) - dat += "No mentors have done anything this round!" - usr << browse(dat, "window=mentor_log") - if(E) E.processing = 0 if(E.announceWhen>0) @@ -615,4 +628,4 @@ if (usr) log_admin("[key_name(usr)] used secret [item]") if (ok) - world << text("A secret has been activated by []!", usr.key) + to_chat(world, text("A secret has been activated by []!", usr.key)) diff --git a/code/modules/admin/sql_message_system.dm b/code/modules/admin/sql_message_system.dm index 2c81258828..5e959f140e 100644 --- a/code/modules/admin/sql_message_system.dm +++ b/code/modules/admin/sql_message_system.dm @@ -1,6 +1,6 @@ /proc/create_message(type, target_ckey, admin_ckey, text, timestamp, server, secret, logged = 1, browse) if(!dbcon.IsConnected()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return if(!type) return @@ -10,9 +10,7 @@ return new_ckey = sanitizeSQL(new_ckey) var/DBQuery/query_find_ckey = dbcon.NewQuery("SELECT ckey FROM [format_table_name("player")] WHERE ckey = '[new_ckey]'") - if(!query_find_ckey.Execute()) - var/err = query_find_ckey.ErrorMsg() - log_game("SQL ERROR obtaining ckey from player table. Error : \[[err]\]\n") + if(!query_find_ckey.warn_execute()) return if(!query_find_ckey.NextRow()) if(alert(usr, "[new_ckey] has not been seen before, are you sure you want to create a [type] for them?", "Unknown ckey", "Yes", "No", "Cancel") != "Yes") @@ -47,9 +45,7 @@ else return var/DBQuery/query_create_message = dbcon.NewQuery("INSERT INTO [format_table_name("messages")] (type, targetckey, adminckey, text, timestamp, server, secret) VALUES ('[type]', '[target_ckey]', '[admin_ckey]', '[text]', '[timestamp]', '[server]', '[secret]')") - if(!query_create_message.Execute()) - var/err = query_create_message.ErrorMsg() - log_game("SQL ERROR creating new [type] in messages table. Error : \[[err]\]\n") + if(!query_create_message.warn_execute()) return if(logged) log_admin_private("[key_name(usr)] has created a [type][(type == "note" || type == "message" || type == "watchlist entry") ? " for [target_ckey]" : ""]: [text]") @@ -61,7 +57,7 @@ /proc/delete_message(message_id, logged = 1, browse) if(!dbcon.IsConnected()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return message_id = text2num(message_id) if(!message_id) @@ -70,18 +66,14 @@ var/target_ckey var/text var/DBQuery/query_find_del_message = dbcon.NewQuery("SELECT type, targetckey, adminckey, text FROM [format_table_name("messages")] WHERE id = [message_id]") - if(!query_find_del_message.Execute()) - var/err = query_find_del_message.ErrorMsg() - log_game("SQL ERROR obtaining type, targetckey, adminckey text from messages table. Error : \[[err]\]\n") + if(!query_find_del_message.warn_execute()) return if(query_find_del_message.NextRow()) type = query_find_del_message.item[1] target_ckey = query_find_del_message.item[2] text = query_find_del_message.item[4] var/DBQuery/query_del_message = dbcon.NewQuery("DELETE FROM [format_table_name("messages")] WHERE id = [message_id]") - if(!query_del_message.Execute()) - var/err = query_del_message.ErrorMsg() - log_game("SQL ERROR deleting [type] from messages table. Error : \[[err]\]\n") + if(!query_del_message.warn_execute()) return if(logged) log_admin_private("[key_name(usr)] has deleted a [type][(type == "note" || type == "message" || type == "watchlist entry") ? " for" : " made by"] [target_ckey]: [text]") @@ -93,15 +85,13 @@ /proc/edit_message(message_id, browse) if(!dbcon.IsConnected()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return message_id = text2num(message_id) if(!message_id) return var/DBQuery/query_find_edit_message = dbcon.NewQuery("SELECT type, targetckey, adminckey, text FROM [format_table_name("messages")] WHERE id = [message_id]") - if(!query_find_edit_message.Execute()) - var/err = query_find_edit_message.ErrorMsg() - log_game("SQL ERROR obtaining type, targetckey, adminckey, text from messages table. Error : \[[err]\]\n") + if(!query_find_edit_message.warn_execute()) return if(query_find_edit_message.NextRow()) var/type = query_find_edit_message.item[1] @@ -115,9 +105,7 @@ new_text = sanitizeSQL(new_text) var/edit_text = sanitizeSQL("Edited by [editor_ckey] on [SQLtime()] from
    [old_text]
    to
    [new_text]
    ") var/DBQuery/query_edit_message = dbcon.NewQuery("UPDATE [format_table_name("messages")] SET text = '[new_text]', lasteditor = '[editor_ckey]', edits = CONCAT(IFNULL(edits,''),'[edit_text]') WHERE id = [message_id]") - if(!query_edit_message.Execute()) - var/err = query_edit_message.ErrorMsg() - log_game("SQL ERROR editing messages table. Error : \[[err]\]\n") + if(!query_edit_message.warn_execute()) return log_admin_private("[key_name(usr)] has edited a [type] [(type == "note" || type == "message" || type == "watchlist entry") ? " for [target_ckey]" : ""] made by [admin_ckey] from [old_text] to [new_text]") message_admins("[key_name_admin(usr)] has edited a [type] [(type == "note" || type == "message" || type == "watchlist entry") ? " for [target_ckey]" : ""] made by [admin_ckey] from
    [old_text]
    to
    [new_text]") @@ -128,15 +116,13 @@ /proc/toggle_message_secrecy(message_id) if(!dbcon.IsConnected()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return message_id = text2num(message_id) if(!message_id) return var/DBQuery/query_find_message_secret = dbcon.NewQuery("SELECT type, targetckey, adminckey, secret FROM [format_table_name("messages")] WHERE id = [message_id]") - if(!query_find_message_secret.Execute()) - var/err = query_find_message_secret.ErrorMsg() - log_game("SQL ERROR obtaining type, targetckey, adminckey, secret from messages table. Error : \[[err]\]\n") + if(!query_find_message_secret.warn_execute()) return if(query_find_message_secret.NextRow()) var/type = query_find_message_secret.item[1] @@ -146,9 +132,7 @@ var/editor_ckey = sanitizeSQL(usr.ckey) var/edit_text = "Made [secret ? "not secret" : "secret"] by [editor_ckey] on [SQLtime()]
    " var/DBQuery/query_message_secret = dbcon.NewQuery("UPDATE [format_table_name("messages")] SET secret = NOT secret, lasteditor = '[editor_ckey]', edits = CONCAT(IFNULL(edits,''),'[edit_text]') WHERE id = [message_id]") - if(!query_message_secret.Execute()) - var/err = query_message_secret.ErrorMsg() - log_game("SQL ERROR toggling message secrecy. Error : \[[err]\]\n") + if(!query_message_secret.warn_execute()) return log_admin_private("[key_name(usr)] has toggled [target_ckey]'s [type] made by [admin_ckey] to [secret ? "not secret" : "secret"]") message_admins("[key_name_admin(usr)] has toggled [target_ckey]'s [type] made by [admin_ckey] to [secret ? "not secret" : "secret"]") @@ -156,7 +140,7 @@ /proc/browse_messages(type, target_ckey, index, linkless = 0, filter) if(!dbcon.IsConnected()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return var/output var/ruler = "
    " @@ -183,9 +167,7 @@ output += "|\[Filter offline clients\]" output += ruler var/DBQuery/query_get_type_messages = dbcon.NewQuery("SELECT id, targetckey, adminckey, text, timestamp, server, lasteditor FROM [format_table_name("messages")] WHERE type = '[type]'") - if(!query_get_type_messages.Execute()) - var/err = query_get_type_messages.ErrorMsg() - log_game("SQL ERROR obtaining id, targetckey, adminckey, text, timestamp, server, lasteditor from messages table. Error : \[[err]\]\n") + if(!query_get_type_messages.warn_execute()) return while(query_get_type_messages.NextRow()) var/id = query_get_type_messages.item[1] @@ -208,10 +190,8 @@ output += "
    [text]
    " if(target_ckey) target_ckey = sanitizeSQL(target_ckey) - var/DBQuery/query_get_messages = dbcon.NewQuery("SELECT type, secret, id, adminckey, text, timestamp, server, lasteditor FROM [format_table_name("messages")] WHERE type <> 'memo' AND targetckey = '[target_ckey]' ORDER BY timestamp") - if(!query_get_messages.Execute()) - var/err = query_get_messages.ErrorMsg() - log_game("SQL ERROR obtaining type, secret, id, adminckey, text, timestamp, server, lasteditor from messages table. Error : \[[err]\]\n") + var/DBQuery/query_get_messages = dbcon.NewQuery("SELECT type, secret, id, adminckey, text, timestamp, server, lasteditor FROM [format_table_name("messages")] WHERE type <> 'memo' AND targetckey = '[target_ckey]' ORDER BY timestamp DESC") + if(!query_get_messages.warn_execute()) return var/messagedata var/watchdata @@ -286,9 +266,7 @@ else search = "^[index]" var/DBQuery/query_list_messages = dbcon.NewQuery("SELECT DISTINCT targetckey FROM [format_table_name("messages")] WHERE type <> 'memo' AND targetckey REGEXP '[search]' ORDER BY targetckey") - if(!query_list_messages.Execute()) - var/err = query_list_messages.ErrorMsg() - log_game("SQL ERROR obtaining distinct targetckey from messages table. Error : \[[err]\]\n") + if(!query_list_messages.warn_execute()) return while(query_list_messages.NextRow()) index_ckey = query_list_messages.item[1] @@ -300,7 +278,7 @@ proc/get_message_output(type, target_ckey) if(!dbcon.IsConnected()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return if(!type) return @@ -311,9 +289,7 @@ proc/get_message_output(type, target_ckey) if(type == "message" || type == "watchlist entry") query += " AND targetckey = '[target_ckey]'" var/DBQuery/query_get_message_output = dbcon.NewQuery(query) - if(!query_get_message_output.Execute()) - var/err = query_get_message_output.ErrorMsg() - log_game("SQL ERROR obtaining id, adminckey, text, timestamp, lasteditor from messages table. Error : \[[err]\]\n") + if(!query_get_message_output.warn_execute()) return while(query_get_message_output.NextRow()) var/message_id = query_get_message_output.item[1] @@ -326,13 +302,11 @@ proc/get_message_output(type, target_ckey) output += "Admin message left by [admin_ckey] on [timestamp]" output += "
    [text]
    " var/DBQuery/query_message_read = dbcon.NewQuery("UPDATE [format_table_name("messages")] SET type = 'message sent' WHERE id = [message_id]") - if(!query_message_read.Execute()) - var/err = query_message_read.ErrorMsg() - log_game("SQL ERROR updating message type. Error : \[[err]\]\n") + if(!query_message_read.warn_execute()) return if("watchlist entry") message_admins("Notice: [key_name_admin(target_ckey)] is on the watchlist and has just connected - Reason: [text]") - send2irc("Watchlist", "[key_name(target_ckey)] is on the watchlist and has just connected - Reason: [text]") + send2irc_adminless_only("Watchlist", "[key_name(target_ckey)] is on the watchlist and has just connected - Reason: [text]") if("memo") output += "Memo by [admin_ckey] on [timestamp]" if(editor_ckey) @@ -361,8 +335,6 @@ proc/get_message_output(type, target_ckey) var/admin_ckey = note.group[3] var/DBQuery/query_convert_time = dbcon.NewQuery("SELECT ADDTIME(STR_TO_DATE('[timestamp]','%d-%b-%Y'), '0')") if(!query_convert_time.Execute()) - var/err = query_convert_time.ErrorMsg() - log_game("SQL ERROR converting timestamp. Error : \[[err]\]\n") return if(query_convert_time.NextRow()) timestamp = query_convert_time.item[1] @@ -374,7 +346,7 @@ proc/get_message_output(type, target_ckey) /*alternatively this proc can be run once to pass through every note and attempt to convert it before deleting the file, if done then AUTOCONVERT_NOTES should be turned off this proc can take several minutes to execute fully if converting and cause DD to hang if converting a lot of notes; it's not advised to do so while a server is live /proc/mass_convert_notes() - world << "Beginning mass note conversion" + to_chat(world, "Beginning mass note conversion") var/savefile/notesfile = new(NOTESFILE) if(!notesfile) log_game("Error: Cannot access [NOTESFILE]") @@ -382,7 +354,7 @@ this proc can take several minutes to execute fully if converting and cause DD t notesfile.cd = "/" for(var/ckey in notesfile.dir) convert_notes_sql(ckey) - world << "Deleting NOTESFILE" + to_chat(world, "Deleting NOTESFILE") fdel(NOTESFILE) - world << "Finished mass note conversion, remember to turn off AUTOCONVERT_NOTES"*/ + to_chat(world, "Finished mass note conversion, remember to turn off AUTOCONVERT_NOTES")*/ #undef NOTESFILE diff --git a/code/modules/admin/stickyban.dm b/code/modules/admin/stickyban.dm index ae3f59e928..fc64eb2cf8 100644 --- a/code/modules/admin/stickyban.dm +++ b/code/modules/admin/stickyban.dm @@ -21,7 +21,7 @@ ban["ckey"] = ckey if (get_stickyban_from_ckey(ckey)) - usr << "Error: Can not add a stickyban: User already has a current sticky ban" + to_chat(usr, "Error: Can not add a stickyban: User already has a current sticky ban") if (data["reason"]) ban["message"] = data["reason"] @@ -43,12 +43,12 @@ var/ban = get_stickyban_from_ckey(ckey) if (!ban) - usr << "Error: No sticky ban for [ckey] found!" + to_chat(usr, "Error: No sticky ban for [ckey] found!") return if (alert("Are you sure you want to remove the sticky ban on [ckey]?","Are you sure","Yes","No") == "No") return if (!get_stickyban_from_ckey(ckey)) - usr << "Error: The ban disappeared." + to_chat(usr, "Error: The ban disappeared.") return world.SetConfig("ban",ckey, null) @@ -64,7 +64,7 @@ var/alt = ckey(data["alt"]) var/ban = get_stickyban_from_ckey(ckey) if (!ban) - usr << "Error: No sticky ban for [ckey] found!" + to_chat(usr, "Error: No sticky ban for [ckey] found!") return var/found = 0 @@ -75,7 +75,7 @@ break if (!found) - usr << "Error: [alt] is not linked to [ckey]'s sticky ban!" + to_chat(usr, "Error: [alt] is not linked to [ckey]'s sticky ban!") return if (alert("Are you sure you want to disassociate [alt] from [ckey]'s sticky ban? \nNote: Nothing stops byond from re-linking them","Are you sure","Yes","No") == "No") @@ -84,7 +84,7 @@ //we have to do this again incase something changes ban = get_stickyban_from_ckey(ckey) if (!ban) - usr << "Error: The ban disappeared." + to_chat(usr, "Error: The ban disappeared.") return found = 0 @@ -95,7 +95,7 @@ break if (!found) - usr << "Error: [alt] link to [ckey]'s sticky ban disappeared." + to_chat(usr, "Error: [alt] link to [ckey]'s sticky ban disappeared.") return world.SetConfig("ban",ckey,list2stickyban(ban)) @@ -109,7 +109,7 @@ var/ckey = data["ckey"] var/ban = get_stickyban_from_ckey(ckey) if (!ban) - usr << "Error: No sticky ban for [ckey] found!" + to_chat(usr, "Error: No sticky ban for [ckey] found!") return var/oldreason = ban["message"] var/reason = input(usr,"Reason","Reason","[ban["message"]]") as text|null @@ -118,7 +118,7 @@ //we have to do this again incase something changed while we waited for input ban = get_stickyban_from_ckey(ckey) if (!ban) - usr << "Error: The ban disappeared." + to_chat(usr, "Error: The ban disappeared.") return ban["message"] = "[reason]" @@ -135,11 +135,11 @@ return var/ban = get_stickyban_from_ckey(ckey) if (!ban) - usr << "Error: No sticky ban for [ckey] found!" + to_chat(usr, "Error: No sticky ban for [ckey] found!") return var/cached_ban = SSstickyban.cache[ckey] if (!cached_ban) - usr << "Error: No cached sticky ban for [ckey] found!" + to_chat(usr, "Error: No cached sticky ban for [ckey] found!") world.SetConfig("ban",ckey,null) log_admin_private("[key_name(usr)] has reverted [ckey]'s sticky ban to it's state at round start.") diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 9eed5ccf1d..a28dfc0dfa 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -6,6 +6,9 @@ log_admin("[key_name(usr)] tried to use the admin panel without authorization.") return if(href_list["rejectadminhelp"]) + if(world.time && (spamcooldown > world.time)) + to_chat(usr, "Please wait [max(round((spamcooldown - world.time)*0.1, 0.1), 0)] seconds.") + return if(!check_rights(R_ADMIN)) return var/client/C = locate(href_list["rejectadminhelp"]) in clients @@ -16,14 +19,18 @@ C << 'sound/effects/adminhelp.ogg' - C << "- AdminHelp Rejected! -" - C << "Your admin help was rejected. The adminhelp verb has been returned to you so that you may try again." - C << "Please try to be calm, clear, and descriptive in admin helps, do not assume the admin has seen any related events, and clearly state the names of anybody you are reporting." + to_chat(C, "- AdminHelp Rejected! -") + to_chat(C, "Your admin help was rejected. The adminhelp verb has been returned to you so that you may try again.") + to_chat(C, "Please try to be calm, clear, and descriptive in admin helps, do not assume the admin has seen any related events, and clearly state the names of anybody you are reporting.") message_admins("[key_name_admin(usr)] Rejected [C.key]'s admin help. [C.key]'s Adminhelp verb has been returned to them.") log_admin_private("[key_name(usr)] Rejected [C.key]'s admin help.") + spamcooldown = world.time + 150 // 15 seconds else if(href_list["icissue"]) + if(world.time && spamcooldown > world.time) + to_chat(usr, "Please wait [max(round((spamcooldown - world.time)*0.1, 0.1), 0)] seconds.") + return var/client/C = locate(href_list["icissue"]) in clients if(!C) return @@ -32,17 +39,18 @@ msg += "Losing is part of the game!
    " msg += "Your character will frequently die, sometimes without even a possibility of avoiding it. Events will often be out of your control. No matter how good or prepared you are, sometimes you just lose." - C << msg + to_chat(C, msg) message_admins("[key_name_admin(usr)] marked [C.key]'s admin help as an IC issue.") log_admin_private("[key_name(usr)] marked [C.key]'s admin help as an IC issue.") + spamcooldown = world.time + 150 // 15 seconds else if(href_list["stickyban"]) stickyban(href_list["stickyban"],href_list) else if(href_list["makeAntag"]) if (!ticker.mode) - usr << "Not until the round starts!" + to_chat(usr, "Not until the round starts!") return switch(href_list["makeAntag"]) if("traitors") @@ -173,8 +181,9 @@ else if(href_list["dbsearchckey"] || href_list["dbsearchadmin"]) var/adminckey = href_list["dbsearchadmin"] var/playerckey = href_list["dbsearchckey"] + var/page = href_list["dbsearchpage"] - DB_ban_panel(playerckey, adminckey) + DB_ban_panel(playerckey, adminckey, page) return else if(href_list["dbbanedit"]) @@ -201,33 +210,33 @@ switch(bantype) if(BANTYPE_PERMA) if(!banckey || !banreason) - usr << "Not enough parameters (Requires ckey and reason)." + to_chat(usr, "Not enough parameters (Requires ckey and reason).") return banduration = null banjob = null if(BANTYPE_TEMP) if(!banckey || !banreason || !banduration) - usr << "Not enough parameters (Requires ckey, reason and duration)." + to_chat(usr, "Not enough parameters (Requires ckey, reason and duration).") return banjob = null if(BANTYPE_JOB_PERMA) if(!banckey || !banreason || !banjob) - usr << "Not enough parameters (Requires ckey, reason and job)." + to_chat(usr, "Not enough parameters (Requires ckey, reason and job).") return banduration = null if(BANTYPE_JOB_TEMP) if(!banckey || !banreason || !banjob || !banduration) - usr << "Not enough parameters (Requires ckey, reason and job)." + to_chat(usr, "Not enough parameters (Requires ckey, reason and job).") return if(BANTYPE_ADMIN_PERMA) if(!banckey || !banreason) - usr << "Not enough parameters (Requires ckey and reason)." + to_chat(usr, "Not enough parameters (Requires ckey and reason).") return banduration = null banjob = null if(BANTYPE_ADMIN_TEMP) if(!banckey || !banreason || !banduration) - usr << "Not enough parameters (Requires ckey, reason and duration)." + to_chat(usr, "Not enough parameters (Requires ckey, reason and duration).") return banjob = null @@ -250,7 +259,7 @@ message_admins("Ban process: A mob matching [playermob.ckey] was found at location [playermob.x], [playermob.y], [playermob.z]. Custom ip and computer id fields replaced with the ip and computer id from the located mob.") if(!DB_ban_record(bantype, playermob, banduration, banreason, banjob, banckey, banip, bancid )) - usr << "Failed to apply ban." + to_chat(usr, "Failed to apply ban.") return create_message("note", banckey, null, banreason, null, null, 0, 0) @@ -387,7 +396,7 @@ var/mob/M = locate(href_list["mob"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob." + to_chat(usr, "This can only be used on instances of type /mob.") return var/delmob = 0 @@ -525,10 +534,10 @@ return var/mob/M = locate(href_list["appearanceban"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return if(!M.ckey) //sanity - usr << "This mob has no ckey" + to_chat(usr, "This mob has no ckey") return @@ -542,7 +551,7 @@ if(M.client) jobban_buildcache(M.client) message_admins("[key_name_admin(usr)] removed [key_name_admin(M)]'s appearance ban.") - M << "[usr.client.ckey] has removed your appearance ban." + to_chat(M, "[usr.client.ckey] has removed your appearance ban.") else switch(alert("Appearance ban [M.ckey]?",,"Yes","No", "Cancel")) if("Yes") @@ -550,7 +559,7 @@ if(!reason) return if(!DB_ban_record(BANTYPE_JOB_PERMA, M, -1, reason, "appearance")) - usr << "Failed to apply ban." + to_chat(usr, "Failed to apply ban.") return if(M.client) jobban_buildcache(M.client) @@ -559,24 +568,24 @@ feedback_inc("ban_appearance",1) create_message("note", M.ckey, null, "Appearance banned - [reason]", null, null, 0, 0) message_admins("[key_name_admin(usr)] appearance banned [key_name_admin(M)].") - M << "You have been appearance banned by [usr.client.ckey]." - M << "The reason is: [reason]" - M << "Appearance ban can be lifted only upon request." + to_chat(M, "You have been appearance banned by [usr.client.ckey].") + to_chat(M, "The reason is: [reason]") + to_chat(M, "Appearance ban can be lifted only upon request.") if(config.banappeals) - M << "To try to resolve this matter head to [config.banappeals]" + to_chat(M, "To try to resolve this matter head to [config.banappeals]") else - M << "No ban appeals URL has been set." + to_chat(M, "No ban appeals URL has been set.") if("No") return else if(href_list["jobban2"]) var/mob/M = locate(href_list["jobban2"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob." + to_chat(usr, "This can only be used on instances of type /mob.") return if(!M.ckey) //sanity - usr << "This mob has no ckey." + to_chat(usr, "This mob has no ckey.") return var/dat = "Job-Ban Panel: [key_name(M)]" @@ -862,10 +871,10 @@ return var/mob/M = locate(href_list["jobban4"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob" + to_chat(usr, "This can only be used on instances of type /mob") return if(!SSjob) - usr << "Jobs subsystem not initialized yet!" + to_chat(usr, "Jobs subsystem not initialized yet!") return //get jobs for department if specified, otherwise just return the one job in a list. var/list/joblist = list() @@ -935,7 +944,7 @@ var/msg for(var/job in notbannedlist) if(!DB_ban_record(BANTYPE_JOB_TEMP, M, mins, reason, job)) - usr << "Failed to apply ban." + to_chat(usr, "Failed to apply ban.") return if(M.client) jobban_buildcache(M.client) @@ -949,9 +958,9 @@ msg += ", [job]" create_message("note", M.ckey, null, "Banned from [msg] - [reason]", null, null, 0, 0) message_admins("[key_name_admin(usr)] banned [key_name_admin(M)] from [msg] for [mins] minutes.") - M << "You have been [(msg == ("ooc" || "appearance")) ? "banned" : "jobbanned"] by [usr.client.ckey] from: [msg]." - M << "The reason is: [reason]" - M << "This jobban will be lifted in [mins] minutes." + to_chat(M, "You have been [(msg == ("ooc" || "appearance")) ? "banned" : "jobbanned"] by [usr.client.ckey] from: [msg].") + to_chat(M, "The reason is: [reason]") + to_chat(M, "This jobban will be lifted in [mins] minutes.") href_list["jobban2"] = 1 // lets it fall through and refresh return 1 if("No") @@ -960,7 +969,7 @@ var/msg for(var/job in notbannedlist) if(!DB_ban_record(BANTYPE_JOB_PERMA, M, -1, reason, job)) - usr << "Failed to apply ban." + to_chat(usr, "Failed to apply ban.") return if(M.client) jobban_buildcache(M.client) @@ -974,9 +983,9 @@ msg += ", [job]" create_message("note", M.ckey, null, "Banned from [msg] - [reason]", null, null, 0, 0) message_admins("[key_name_admin(usr)] banned [key_name_admin(M)] from [msg].") - M << "You have been [(msg == ("ooc" || "appearance")) ? "banned" : "jobbanned"] by [usr.client.ckey] from: [msg]." - M << "The reason is: [reason]" - M << "Jobban can be lifted only upon request." + to_chat(M, "You have been [(msg == ("ooc" || "appearance")) ? "banned" : "jobbanned"] by [usr.client.ckey] from: [msg].") + to_chat(M, "The reason is: [reason]") + to_chat(M, "Jobban can be lifted only upon request.") href_list["jobban2"] = 1 // lets it fall through and refresh return 1 if("Cancel") @@ -1007,7 +1016,7 @@ continue if(msg) message_admins("[key_name_admin(usr)] unbanned [key_name_admin(M)] from [msg].") - M << "You have been un-jobbanned by [usr.client.ckey] from [msg]." + to_chat(M, "You have been un-jobbanned by [usr.client.ckey] from [msg].") href_list["jobban2"] = 1 // lets it fall through and refresh return 1 return 0 //we didn't do anything! @@ -1016,9 +1025,9 @@ var/mob/M = locate(href_list["boot2"]) if (ismob(M)) if(!check_if_greater_rights_than(M.client)) - usr << "Error: They have more rights than you do." + to_chat(usr, "Error: They have more rights than you do.") return - M << "You have been kicked from the server by [usr.client.holder.fakekey ? "an Administrator" : "[usr.client.ckey]"]." + to_chat(M, "You have been kicked from the server by [usr.client.holder.fakekey ? "an Administrator" : "[usr.client.ckey]"].") log_admin("[key_name(usr)] kicked [key_name(M)].") message_admins("[key_name_admin(usr)] kicked [key_name_admin(M)].") //M.client = null @@ -1101,9 +1110,7 @@ else if(href_list["messageedits"]) var/message_id = sanitizeSQL("[href_list["messageedits"]]") var/DBQuery/query_get_message_edits = dbcon.NewQuery("SELECT edits FROM [format_table_name("messages")] WHERE id = '[message_id]'") - if(!query_get_message_edits.Execute()) - var/err = query_get_message_edits.ErrorMsg() - log_game("SQL ERROR obtaining edits from messages table. Error : \[[err]\]\n") + if(!query_get_message_edits.warn_execute()) return if(query_get_message_edits.NextRow()) var/edit_log = query_get_message_edits.item[1] @@ -1129,18 +1136,18 @@ if(!reason) return if(!DB_ban_record(BANTYPE_TEMP, M, mins, reason)) - usr << "Failed to apply ban." + to_chat(usr, "Failed to apply ban.") return AddBan(M.ckey, M.computer_id, reason, usr.ckey, 1, mins) ban_unban_log_save("[key_name(usr)] has banned [key_name(M)]. - Reason: [reason] - This will be removed in [mins] minutes.") - M << "You have been banned by [usr.client.ckey].\nReason: [reason]" - M << "This is a temporary ban, it will be removed in [mins] minutes." + to_chat(M, "You have been banned by [usr.client.ckey].\nReason: [reason]") + to_chat(M, "This is a temporary ban, it will be removed in [mins] minutes.") feedback_inc("ban_tmp",1) feedback_inc("ban_tmp_mins",mins) if(config.banappeals) - M << "To try to resolve this matter head to [config.banappeals]" + to_chat(M, "To try to resolve this matter head to [config.banappeals]") else - M << "No ban appeals URL has been set." + to_chat(M, "No ban appeals URL has been set.") log_admin_private("[key_name(usr)] has banned [M.ckey].\nReason: [key_name(M)]\nThis will be removed in [mins] minutes.") message_admins("[key_name_admin(usr)] has banned [key_name_admin(M)].\nReason: [reason]\nThis will be removed in [mins] minutes.") @@ -1156,14 +1163,14 @@ AddBan(M.ckey, M.computer_id, reason, usr.ckey, 0, 0, M.lastKnownIP) if("No") AddBan(M.ckey, M.computer_id, reason, usr.ckey, 0, 0) - M << "You have been banned by [usr.client.ckey].\nReason: [reason]" - M << "This is a permanent ban." + to_chat(M, "You have been banned by [usr.client.ckey].\nReason: [reason]") + to_chat(M, "This is a permanent ban.") if(config.banappeals) - M << "To try to resolve this matter head to [config.banappeals]" + to_chat(M, "To try to resolve this matter head to [config.banappeals]") else - M << "No ban appeals URL has been set." + to_chat(M, "No ban appeals URL has been set.") if(!DB_ban_record(BANTYPE_PERMA, M, -1, reason)) - usr << "Failed to apply ban." + to_chat(usr, "Failed to apply ban.") return ban_unban_log_save("[key_name(usr)] has permabanned [key_name(M)]. - Reason: [reason] - This is a permanent ban.") log_admin_private("[key_name(usr)] has banned [key_name_admin(M)].\nReason: [reason]\nThis is a permanent ban.") @@ -1216,7 +1223,7 @@ master_mode = href_list["c_mode2"] log_admin("[key_name(usr)] set the mode as [master_mode].") message_admins("[key_name_admin(usr)] set the mode as [master_mode].") - world << "The mode is now: [master_mode]" + to_chat(world, "The mode is now: [master_mode]") Game() // updates the main game menu world.save_mode(master_mode) .(href, list("c_mode"=1)) @@ -1241,7 +1248,7 @@ var/mob/living/carbon/human/H = locate(href_list["monkeyone"]) if(!istype(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human.") return log_admin("[key_name(usr)] attempting to monkeyize [key_name(H)].") @@ -1254,7 +1261,7 @@ var/mob/living/carbon/monkey/Mo = locate(href_list["humanone"]) if(!istype(Mo)) - usr << "This can only be used on instances of type /mob/living/carbon/monkey." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/monkey.") return log_admin("[key_name(usr)] attempting to humanize [key_name(Mo)].") @@ -1267,7 +1274,7 @@ var/mob/living/carbon/human/H = locate(href_list["corgione"]) if(!istype(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human.") return log_admin("[key_name(usr)] attempting to corgize [key_name(H)].") @@ -1281,7 +1288,7 @@ var/mob/M = locate(href_list["forcespeech"]) if(!ismob(M)) - usr << "this can only be used on instances of type /mob." + to_chat(usr, "this can only be used on instances of type /mob.") var/speech = input("What will [key_name(M)] say?.", "Force speech", "")// Don't need to sanitize, since it does that in say(), we also trust our admins. if(!speech) @@ -1297,17 +1304,17 @@ var/mob/M = locate(href_list["sendtoprison"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob." + to_chat(usr, "This can only be used on instances of type /mob.") return if(isAI(M)) - usr << "This cannot be used on instances of type /mob/living/silicon/ai." + to_chat(usr, "This cannot be used on instances of type /mob/living/silicon/ai.") return if(alert(usr, "Send [key_name(M)] to Prison?", "Message", "Yes", "No") != "Yes") return M.loc = pick(prisonwarp) - M << "You have been sent to Prison!" + to_chat(M, "You have been sent to Prison!") log_admin("[key_name(usr)] has sent [key_name(M)] to Prison!") message_admins("[key_name_admin(usr)] has sent [key_name_admin(M)] Prison!") @@ -1319,11 +1326,11 @@ var/mob/M = locate(href_list["sendbacktolobby"]) if(!isobserver(M)) - usr << "You can only send ghost players back to the Lobby." + to_chat(usr, "You can only send ghost players back to the Lobby.") return if(!M.client) - usr << "[M] doesn't seem to have an active client." + to_chat(usr, "[M] doesn't seem to have an active client.") return if(alert(usr, "Send [key_name(M)] back to Lobby?", "Message", "Yes", "No") != "Yes") @@ -1332,7 +1339,7 @@ log_admin("[key_name(usr)] has sent [key_name(M)] back to the Lobby.") message_admins("[key_name(usr)] has sent [key_name(M)] back to the Lobby.") - var/mob/new_player/NP = new() + var/mob/dead/new_player/NP = new() NP.ckey = M.ckey qdel(M) @@ -1345,10 +1352,10 @@ var/mob/M = locate(href_list["tdome1"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob." + to_chat(usr, "This can only be used on instances of type /mob.") return if(isAI(M)) - usr << "This cannot be used on instances of type /mob/living/silicon/ai." + to_chat(usr, "This cannot be used on instances of type /mob/living/silicon/ai.") return for(var/obj/item/I in M) @@ -1358,7 +1365,7 @@ sleep(5) M.loc = pick(tdome1) spawn(50) - M << "You have been sent to the Thunderdome." + to_chat(M, "You have been sent to the Thunderdome.") log_admin("[key_name(usr)] has sent [key_name(M)] to the thunderdome. (Team 1)") message_admins("[key_name_admin(usr)] has sent [key_name_admin(M)] to the thunderdome. (Team 1)") @@ -1371,10 +1378,10 @@ var/mob/M = locate(href_list["tdome2"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob." + to_chat(usr, "This can only be used on instances of type /mob.") return if(isAI(M)) - usr << "This cannot be used on instances of type /mob/living/silicon/ai." + to_chat(usr, "This cannot be used on instances of type /mob/living/silicon/ai.") return for(var/obj/item/I in M) @@ -1384,7 +1391,7 @@ sleep(5) M.loc = pick(tdome2) spawn(50) - M << "You have been sent to the Thunderdome." + to_chat(M, "You have been sent to the Thunderdome.") log_admin("[key_name(usr)] has sent [key_name(M)] to the thunderdome. (Team 2)") message_admins("[key_name_admin(usr)] has sent [key_name_admin(M)] to the thunderdome. (Team 2)") @@ -1397,17 +1404,17 @@ var/mob/M = locate(href_list["tdomeadmin"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob." + to_chat(usr, "This can only be used on instances of type /mob.") return if(isAI(M)) - usr << "This cannot be used on instances of type /mob/living/silicon/ai." + to_chat(usr, "This cannot be used on instances of type /mob/living/silicon/ai.") return M.Paralyse(5) sleep(5) M.loc = pick(tdomeadmin) spawn(50) - M << "You have been sent to the Thunderdome." + to_chat(M, "You have been sent to the Thunderdome.") log_admin("[key_name(usr)] has sent [key_name(M)] to the thunderdome. (Admin.)") message_admins("[key_name_admin(usr)] has sent [key_name_admin(M)] to the thunderdome. (Admin.)") @@ -1420,10 +1427,10 @@ var/mob/M = locate(href_list["tdomeobserve"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob." + to_chat(usr, "This can only be used on instances of type /mob.") return if(isAI(M)) - usr << "This cannot be used on instances of type /mob/living/silicon/ai." + to_chat(usr, "This cannot be used on instances of type /mob/living/silicon/ai.") return for(var/obj/item/I in M) @@ -1437,7 +1444,7 @@ sleep(5) M.loc = pick(tdomeobserve) spawn(50) - M << "You have been sent to the Thunderdome." + to_chat(M, "You have been sent to the Thunderdome.") log_admin("[key_name(usr)] has sent [key_name(M)] to the thunderdome. (Observer.)") message_admins("[key_name_admin(usr)] has sent [key_name_admin(M)] to the thunderdome. (Observer.)") @@ -1447,7 +1454,7 @@ var/mob/living/L = locate(href_list["revive"]) if(!istype(L)) - usr << "This can only be used on instances of type /mob/living." + to_chat(usr, "This can only be used on instances of type /mob/living.") return L.revive(full_heal = 1, admin_revive = 1) @@ -1460,7 +1467,7 @@ var/mob/living/carbon/human/H = locate(href_list["makeai"]) if(!istype(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human.") return message_admins("Admin [key_name_admin(usr)] AIized [key_name_admin(H)]!") @@ -1473,7 +1480,7 @@ var/mob/living/carbon/human/H = locate(href_list["makealien"]) if(!istype(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human.") return usr.client.cmd_admin_alienize(H) @@ -1484,7 +1491,7 @@ var/mob/living/carbon/human/H = locate(href_list["makeslime"]) if(!istype(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human.") return usr.client.cmd_admin_slimeize(H) @@ -1495,7 +1502,7 @@ var/mob/living/carbon/human/H = locate(href_list["makeblob"]) if(!istype(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human.") return usr.client.cmd_admin_blobize(H) @@ -1507,7 +1514,7 @@ var/mob/living/carbon/human/H = locate(href_list["makerobot"]) if(!istype(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human.") return usr.client.cmd_admin_robotize(H) @@ -1518,7 +1525,7 @@ var/mob/M = locate(href_list["makeanimal"]) if(isnewplayer(M)) - usr << "This cannot be used on instances of type /mob/new_player." + to_chat(usr, "This cannot be used on instances of type /mob/dead/new_player.") return usr.client.cmd_admin_animalize(M) @@ -1574,7 +1581,7 @@ else if(href_list["adminmoreinfo"]) var/mob/M = locate(href_list["adminmoreinfo"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob." + to_chat(usr, "This can only be used on instances of type /mob.") return var/location_description = "" @@ -1619,12 +1626,12 @@ else gender_description = "[M.gender]" - src.owner << "Info about [M.name]: " - src.owner << "Mob type = [M.type]; Gender = [gender_description] Damage = [health_description]" - src.owner << "Name = [M.name]; Real_name = [M.real_name]; Mind_name = [M.mind?"[M.mind.name]":""]; Key = [M.key];" - src.owner << "Location = [location_description];" - src.owner << "[special_role_description]" - src.owner << "(PM) (PP) (VV) (SM) (FLW) (CA)" + to_chat(src.owner, "Info about [M.name]: ") + to_chat(src.owner, "Mob type = [M.type]; Gender = [gender_description] Damage = [health_description]") + to_chat(src.owner, "Name = [M.name]; Real_name = [M.real_name]; Mind_name = [M.mind?"[M.mind.name]":""]; Key = [M.key];") + to_chat(src.owner, "Location = [location_description];") + to_chat(src.owner, "[special_role_description]") + to_chat(src.owner, "(PM) (PP) (VV) (SM) (FLW) (CA)") else if(href_list["addjobslot"]) if(!check_rights(R_ADMIN)) @@ -1685,7 +1692,7 @@ var/mob/living/carbon/human/H = locate(href_list["adminspawncookie"]) if(!ishuman(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human.") return var/obj/item/weapon/reagent_containers/food/snacks/cookie/cookie = new(H) @@ -1700,7 +1707,7 @@ log_admin("[key_name(H)] got their cookie, spawned by [key_name(src.owner)].") message_admins("[key_name(H)] got their cookie, spawned by [key_name(src.owner)].") feedback_inc("admin_cookies_spawned",1) - H << "Your prayers have been answered!! You received the best cookie!" + to_chat(H, "Your prayers have been answered!! You received the best cookie!") H << 'sound/effects/pray_chaplain.ogg' else if(href_list["adminsmite"]) @@ -1724,7 +1731,7 @@ T.Beam(H, icon_state="lightning[rand(1,12)]", time = 5) H.adjustFireLoss(75) H.electrocution_animation(40) - H << "The gods have punished you for your sins!" + to_chat(H, "The gods have punished you for your sins!") if(ADMIN_PUNISHMENT_BRAINDAMAGE) H.adjustBrainLoss(75) if(ADMIN_PUNISHMENT_GIB) @@ -1740,10 +1747,10 @@ else if(href_list["CentcommReply"]) var/mob/living/carbon/human/H = locate(href_list["CentcommReply"]) in mob_list if(!istype(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human" + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human") return if(!istype(H.ears, /obj/item/device/radio/headset)) - usr << "The person you are trying to contact is not wearing a headset." + to_chat(usr, "The person you are trying to contact is not wearing a headset.") return message_admins("[src.owner] has started answering [key_name(H)]'s Centcomm request.") @@ -1752,18 +1759,18 @@ message_admins("[src.owner] decided not to answer [key_name(H)]'s Centcomm request.") return - src.owner << "You sent [input] to [H] via a secure channel." + to_chat(src.owner, "You sent [input] to [H] via a secure channel.") log_admin("[src.owner] replied to [key_name(H)]'s Centcom message with the message [input].") message_admins("[src.owner] replied to [key_name(H)]'s Centcom message with: \"[input]\"") - H << "You hear something crackle in your ears for a moment before a voice speaks. \"Please stand by for a message from Central Command. Message as follows. [input]. Message ends.\"" + to_chat(H, "You hear something crackle in your ears for a moment before a voice speaks. \"Please stand by for a message from Central Command. Message as follows. [input]. Message ends.\"") else if(href_list["SyndicateReply"]) var/mob/living/carbon/human/H = locate(href_list["SyndicateReply"]) if(!istype(H)) - usr << "This can only be used on instances of type /mob/living/carbon/human." + to_chat(usr, "This can only be used on instances of type /mob/living/carbon/human.") return if(!istype(H.ears, /obj/item/device/radio/headset)) - usr << "The person you are trying to contact is not wearing a headset." + to_chat(usr, "The person you are trying to contact is not wearing a headset.") return message_admins("[src.owner] has started answering [key_name(H)]'s syndicate request.") @@ -1772,10 +1779,10 @@ message_admins("[src.owner] decided not to answer [key_name(H)]'s syndicate request.") return - src.owner << "You sent [input] to [H] via a secure channel." + to_chat(src.owner, "You sent [input] to [H] via a secure channel.") log_admin("[src.owner] replied to [key_name(H)]'s Syndicate message with the message [input].") message_admins("[src.owner] replied to [key_name(H)]'s Syndicate message with: \"[input]\"") - H << "You hear something crackle in your ears for a moment before a voice speaks. \"Please stand by for a message from your benefactor. Message as follows, agent. [input]. Message ends.\"" + to_chat(H, "You hear something crackle in your ears for a moment before a voice speaks. \"Please stand by for a message from your benefactor. Message as follows, agent. [input]. Message ends.\"") else if(href_list["reject_custom_name"]) if(!check_rights(R_ADMIN)) @@ -1820,6 +1827,17 @@ var/mob/M = locate(href_list["subtlemessage"]) usr.client.cmd_admin_subtle_message(M) + else if(href_list["individuallog"]) + if(!check_rights(R_ADMIN)) + return + + var/mob/M = locate(href_list["individuallog"]) in mob_list + if(!ismob(M)) + to_chat(usr, "This can only be used on instances of type /mob.") + return + + show_individual_logging_panel(M, href_list["log_type"]) + else if(href_list["traitor"]) if(!check_rights(R_ADMIN)) return @@ -1830,7 +1848,7 @@ var/mob/M = locate(href_list["traitor"]) if(!ismob(M)) - usr << "This can only be used on instances of type /mob." + to_chat(usr, "This can only be used on instances of type /mob.") return show_traitor_panel(M) @@ -1909,7 +1927,7 @@ switch(where) if("inhand") if (!iscarbon(usr) && !iscyborg(usr)) - usr << "Can only spawn in hand when you're a carbon mob or cyborg." + to_chat(usr, "Can only spawn in hand when you're a carbon mob or cyborg.") where = "onfloor" target = usr @@ -1921,10 +1939,10 @@ target = locate(loc.x + X,loc.y + Y,loc.z + Z) if("inmarked") if(!marked_datum) - usr << "You don't have any object marked. Abandoning spawn." + to_chat(usr, "You don't have any object marked. Abandoning spawn.") return else if(!istype(marked_datum,/atom)) - usr << "The object you have marked cannot be used as a target. Target must be of type /atom. Abandoning spawn." + to_chat(usr, "The object you have marked cannot be used as a target. Target must be of type /atom. Abandoning spawn.") return else target = marked_datum @@ -2178,7 +2196,7 @@ if(ticker && ticker.current_state == GAME_STATE_PLAYING) var/afkonly = text2num(href_list["afkonly"]) if(alert("Are you sure you want to kick all [afkonly ? "AFK" : ""] clients from the lobby??","Message","Yes","Cancel") != "Yes") - usr << "Kick clients from lobby aborted" + to_chat(usr, "Kick clients from lobby aborted") return var/list/listkicked = kick_clients_in_lobby("You were kicked from the lobby by [usr.client.holder.fakekey ? "an Administrator" : "[usr.client.ckey]"].", afkonly) @@ -2188,7 +2206,7 @@ message_admins("[key_name_admin(usr)] has kicked [afkonly ? "all AFK" : "all"] clients from the lobby. [length(listkicked)] clients kicked: [strkicked ? strkicked : "--"]") log_admin("[key_name(usr)] has kicked [afkonly ? "all AFK" : "all"] clients from the lobby. [length(listkicked)] clients kicked: [strkicked ? strkicked : "--"]") else - usr << "You may only use this when the game is running." + to_chat(usr, "You may only use this when the game is running.") else if(href_list["create_outfit"]) if(!check_rights(R_ADMIN)) @@ -2250,24 +2268,24 @@ else if(href_list["viewruntime"]) var/datum/error_viewer/error_viewer = locate(href_list["viewruntime"]) if(!istype(error_viewer)) - usr << "That runtime viewer no longer exists." + to_chat(usr, "That runtime viewer no longer exists.") return if(href_list["viewruntime_backto"]) error_viewer.show_to(owner, locate(href_list["viewruntime_backto"]), href_list["viewruntime_linear"]) else error_viewer.show_to(owner, null, href_list["viewruntime_linear"]) - else if(href_list["mentor"]) + if(!check_rights(R_ADMIN)) return var/mob/M = locate(href_list["mentor"]) if(!ismob(M)) - usr << "this can be only used on instances of type /mob" + to_chat(usr, "this can be only used on instances of type /mob") return if(!M.client) - usr << "no client" + to_chat(usr, "no client") return log_admin("[key_name(usr)] has granted [key_name(M)] mentor access") @@ -2280,7 +2298,7 @@ load_mentors() M.verbs += /client/proc/cmd_mentor_say M.verbs += /client/proc/show_mentor_memo - M << "\blue You've been granted mentor access! Help people who send mentor-pms" + to_chat(M, "\blue You've been granted mentor access! Help people who send mentor-pms") else if(href_list["removementor"]) if(!check_rights(R_ADMIN)) return @@ -2298,7 +2316,7 @@ var/err = query.ErrorMsg() log_game("SQL ERROR during removing mentor. Error : \[[err]\]\n") load_mentors() - M << "\blue Your mentor access has been removed" + to_chat(M, "\blue Your mentor access has been removed") M.verbs -= /client/proc/cmd_mentor_say M.verbs -= /client/proc/show_mentor_memo diff --git a/code/modules/admin/verbs/BrokenInhands.dm b/code/modules/admin/verbs/BrokenInhands.dm index 058257f1f7..89eccf285d 100644 --- a/code/modules/admin/verbs/BrokenInhands.dm +++ b/code/modules/admin/verbs/BrokenInhands.dm @@ -29,6 +29,6 @@ var/F = file("broken_icons.txt") fdel(F) F << text - world << "Completely successfully and written to [F]" + to_chat(world, "Completely successfully and written to [F]") diff --git a/code/modules/admin/verbs/SDQL2/SDQL_2.dm b/code/modules/admin/verbs/SDQL2/SDQL_2.dm index 5d935439a8..b666467c7a 100644 --- a/code/modules/admin/verbs/SDQL2/SDQL_2.dm +++ b/code/modules/admin/verbs/SDQL2/SDQL_2.dm @@ -18,10 +18,6 @@ */ -/datum/proc/SDQL_update(const/var_name, new_value) - vars[var_name] = new_value - return TRUE - /client/proc/SDQL2_query(query_text as message) set category = "Debug" if(!check_rights(R_DEBUG)) //Shouldn't happen... but just to be safe. @@ -38,7 +34,7 @@ if(!query_text || length(query_text) < 1) return - //world << query_text + //to_chat(world, query_text) var/list/query_list = SDQL2_tokenize(query_text) @@ -75,15 +71,8 @@ var/list/objs = list() for(var/type in select_types) - var/char = copytext(type, 1, 2) - - if(char == "/" || char == "*") - for(var/from in from_objs) - objs += SDQL_get_all(type, from) - CHECK_TICK - - else if(char == "'" || char == "\"") - objs += locate(copytext(type, 2, length(type))) + objs += SDQL_get_all(type, from_objs) + CHECK_TICK if("where" in query_tree) var/objs_temp = objs @@ -95,19 +84,8 @@ switch(query_tree[1]) if("call") - var/list/call_list = query_tree["call"] - var/list/args_list = query_tree["args"] - for(var/datum/d in objs) - var/list/new_args = list() - for(var/a in args_list) - new_args += SDQL_expression(d,a) - for(var/v in call_list) - if(copytext(v,1,8) == "global.") - v = "/proc/[copytext(v,8)]" - SDQL_callproc_global(v,new_args) - else - SDQL_callproc(d, v, new_args) + SDQL_var(d, query_tree["call"][1], source = d) CHECK_TICK if("delete") @@ -146,7 +124,7 @@ var/i = 0 for(var/v in sets) if(++i == sets.len) - temp.SDQL_update(v, SDQL_expression(d, set_list[sets])) + temp.vv_edit_var(v, SDQL_expression(d, set_list[sets])) break if(temp.vars.Find(v) && (istype(temp.vars[v], /datum))) temp = temp.vars[v] @@ -155,10 +133,10 @@ CHECK_TICK catch(var/exception/e) - usr << "A runtime error has occured in your SDQL2-query." - usr << "\[NAME\][e.name]" - usr << "\[FILE\][e.file]" - usr << "\[LINE\][e.line]" + to_chat(usr, "A runtime error has occured in your SDQL2-query.") + to_chat(usr, "\[NAME\][e.name]") + to_chat(usr, "\[FILE\][e.file]") + to_chat(usr, "\[LINE\][e.line]") /proc/SDQL_callproc_global(procname,args_list) set waitfor = FALSE @@ -193,7 +171,7 @@ querys[querys_pos] = parsed_tree querys_pos++ else //There was an error so don't run anything, and tell the user which query has errored. - usr << "Parsing error on [querys_pos]\th query. Nothing was executed." + to_chat(usr, "Parsing error on [querys_pos]\th query. Nothing was executed.") return list() query_tree = list() do_parse = 0 @@ -214,51 +192,36 @@ for(var/item in query_tree) if(istype(item, /list)) - usr << "[spaces](" + to_chat(usr, "[spaces](") SDQL_testout(item, indent + 1) - usr << "[spaces])" + to_chat(usr, "[spaces])") else - usr << "[spaces][item]" + to_chat(usr, "[spaces][item]") if(!isnum(item) && query_tree[item]) if(istype(query_tree[item], /list)) - usr << "[spaces] (" + to_chat(usr, "[spaces] (") SDQL_testout(query_tree[item], indent + 2) - usr << "[spaces] )" + to_chat(usr, "[spaces] )") else - usr << "[spaces] [query_tree[item]]" + to_chat(usr, "[spaces] [query_tree[item]]") /proc/SDQL_from_objs(list/tree) if("world" in tree) - return list(world) - - var/list/out = list() - - for(var/type in tree) - var/char = copytext(type, 1, 2) - - if(char == "/") - out += SDQL_get_all(type, world) - - else if(char == "'" || char == "\"") - out += locate(copytext(type, 2, length(type))) - - return out - + return world + return SDQL_expression(world, tree) /proc/SDQL_get_all(type, location) var/list/out = list() - if(type == "*") - for(var/datum/d in location) - out += d - - return out +// If only a single object got returned, wrap it into a list so the for loops run on it. + if(!islist(location) && location != world) + location = list(location) type = text2path(type) var/typecache = typecacheof(type) @@ -355,7 +318,7 @@ if("or", "||") result = (result || val) else - usr << "SDQL2: Unknown op [op]" + to_chat(usr, "SDQL2: Unknown op [op]") result = null else result = val @@ -398,51 +361,89 @@ else if(expression[i] == "\[") var/list/expressions_list = expression[++i] - var/list/val2 = list() + val = list() for(var/list/expression_list in expressions_list) - val2[++val2.len] = SDQL_expression(object, expression_list) - val = val2 + var/result = SDQL_expression(object, expression_list) + var/assoc + if(expressions_list[expression_list] != null) + assoc = SDQL_expression(object, expressions_list[expression_list]) + if(assoc != null) + // Need to insert the key like this to prevent duplicate keys fucking up. + var/list/dummy = list() + dummy[result] = assoc + result = dummy + val += result else - val = SDQL_var(object, expression, i) + val = SDQL_var(object, expression, i, object) i = expression.len return list("val" = val, "i" = i) -/proc/SDQL_var(datum/object, list/expression, start = 1) +/proc/SDQL_var(datum/object, list/expression, start = 1, source) var/v - if(expression[start] in object.vars) - v = object.vars[expression[start]] - else if(expression[start] == "{" && start < expression.len) + var/static/list/exclude = list("usr", "src", "marked", "global") + var/long = start < expression.len + if(object == world && long && expression[start + 1] == ".") + to_chat(usr, "Sorry, but global variables are not supported at the moment.") + return null + else if(expression [start] == "{" && long) if(lowertext(copytext(expression[start + 1], 1, 3)) != "0x") - usr << "Invalid pointer syntax: [expression[start + 1]]" + to_chat(usr, "Invalid pointer syntax: [expression[start + 1]]") return null v = locate("\[[expression[start + 1]]]") if(!v) - usr << "Invalid pointer: [expression[start + 1]]" + to_chat(usr, "Invalid pointer: [expression[start + 1]]") return null start++ - else + else if((!long || expression[start + 1] == ".") && (expression[start] in object.vars)) + v = object.vars[expression[start]] + else if(long && expression[start + 1] == ":" && hascall(object, expression[start])) + v = expression[start] + else if(!long || expression[start + 1] == ".") switch(expression[start]) if("usr") v = usr if("src") - v = object + v = source if("marked") if(usr.client && usr.client.holder && usr.client.holder.marked_datum) v = usr.client.holder.marked_datum else return null + if("global") + v = world else return null - if(start < expression.len && expression[start + 1] == ".") - return SDQL_var(v, expression[start + 2]) - else - return v + else if(object == world) // Shitty ass hack kill me. + v = expression[start] + if(long) + if(expression[start + 1] == ".") + return SDQL_var(v, expression[start + 2], source = source) + else if(expression[start + 1] == ":") + return SDQL_function(object, v, expression[start + 2], source) + else if(expression[start + 1] == "\[" && islist(v)) + var/list/L = v + var/index = SDQL_expression(source, expression[start + 2]) + if(isnum(index) && (!IsInteger(index) || L.len < index)) + to_chat(usr, "Invalid list index: [index]") + return null + return L[index] + return v + +/proc/SDQL_function(var/datum/object, var/procname, var/list/arguments, source) + set waitfor = FALSE + var/list/new_args = list() + for(var/arg in arguments) + new_args += SDQL_expression(source, arg) + if(object == world) // Global proc. + procname = "/proc/[procname]" + return call(procname)(arglist(new_args)) + return call(object, procname)(arglist(new_args)) // Spawn in case the function sleeps. /proc/SDQL2_tokenize(query_text) var/list/whitespace = list(" ", "\n", "\t") - var/list/single = list("(", ")", ",", "+", "-", ".", ";", "{", "}", "\[", "]") + var/list/single = list("(", ")", ",", "+", "-", ".", ";", "{", "}", "\[", "]", ":") var/list/multi = list( "=" = list("", "="), "<" = list("", "=", ">"), @@ -484,7 +485,7 @@ else if(char == "'") if(word != "") - usr << "\red SDQL2: You have an error in your SDQL syntax, unexpected ' in query: \"[query_text]\" following \"[word]\". Please check your syntax, and try again." + to_chat(usr, "\red SDQL2: You have an error in your SDQL syntax, unexpected ' in query: \"[query_text]\" following \"[word]\". Please check your syntax, and try again.") return null word = "'" @@ -504,7 +505,7 @@ word += char if(i > len) - usr << "\red SDQL2: You have an error in your SDQL syntax, unmatched ' in query: \"[query_text]\". Please check your syntax, and try again." + to_chat(usr, "\red SDQL2: You have an error in your SDQL syntax, unmatched ' in query: \"[query_text]\". Please check your syntax, and try again.") return null query_list += "[word]'" @@ -512,7 +513,7 @@ else if(char == "\"") if(word != "") - usr << "\red SDQL2: You have an error in your SDQL syntax, unexpected \" in query: \"[query_text]\" following \"[word]\". Please check your syntax, and try again." + to_chat(usr, "\red SDQL2: You have an error in your SDQL syntax, unexpected \" in query: \"[query_text]\" following \"[word]\". Please check your syntax, and try again.") return null word = "\"" @@ -532,7 +533,7 @@ word += char if(i > len) - usr << "\red SDQL2: You have an error in your SDQL syntax, unmatched \" in query: \"[query_text]\". Please check your syntax, and try again." + to_chat(usr, "\red SDQL2: You have an error in your SDQL syntax, unmatched \" in query: \"[query_text]\". Please check your syntax, and try again.") return null query_list += "[word]\"" diff --git a/code/modules/admin/verbs/SDQL2/SDQL_2_parser.dm b/code/modules/admin/verbs/SDQL2/SDQL_2_parser.dm index 591e824312..61945f1dde 100644 --- a/code/modules/admin/verbs/SDQL2/SDQL_2_parser.dm +++ b/code/modules/admin/verbs/SDQL2/SDQL_2_parser.dm @@ -62,7 +62,7 @@ /datum/SDQL_parser/proc/parse_error(error_message) error = 1 - usr << "SQDL2 Parsing Error: [error_message]" + to_chat(usr, "SQDL2 Parsing Error: [error_message]") return query.len + 1 /datum/SDQL_parser/proc/parse() @@ -116,18 +116,7 @@ i = select_list(i + 1, select) node += "select" node["select"] = select - var/list/from = list() - if(tokenl(i) in list("from", "in")) - i = from_list(i + 1, from) - else - from += "world" - node += "from" - node["from"] = from - if(tokenl(i) == "where") - var/list/where = list() - i = bool_expression(i + 1, where) - node += "where" - node["where"] = where + selectors(i, node) return i //delete_query: 'DELETE' select_list [('FROM' | 'IN') from_list] ['WHERE' bool_expression] @@ -136,18 +125,7 @@ i = select_list(i + 1, select) node += "delete" node["delete"] = select - var/list/from = list() - if(tokenl(i) in list("from", "in")) - i = from_list(i + 1, from) - else - from += "world" - node += "from" - node["from"] = from - if(tokenl(i) == "where") - var/list/where = list() - i = bool_expression(i + 1, where) - node += "where" - node["where"] = where + selectors(i, node) return i //update_query: 'UPDATE' select_list [('FROM' | 'IN') from_list] 'SET' assignments ['WHERE' bool_expression] @@ -156,52 +134,28 @@ i = select_list(i + 1, select) node += "update" node["update"] = select - var/list/from = list() - if(tokenl(i) in list("from", "in")) - i = from_list(i + 1, from) - else - from += "world" - node += "from" - node["from"] = from if(tokenl(i) != "set") i = parse_error("UPDATE has misplaced SET") var/list/set_assignments = list() i = assignments(i + 1, set_assignments) node += "set" node["set"] = set_assignments - if(tokenl(i) == "where") - var/list/where = list() - i = bool_expression(i + 1, where) - node += "where" - node["where"] = where + selectors(i, node) return i //call_query: 'CALL' call_function ['ON' select_list [('FROM' | 'IN') from_list] ['WHERE' bool_expression]] /datum/SDQL_parser/proc/call_query(i, list/node) var/list/func = list() - var/list/arguments = list() - i = call_function(i + 1, func, arguments) + i = variable(i + 1, func) // Yes technically does anything variable() matches but I don't care, if admins fuck up this badly then they shouldn't be allowed near SDQL. node += "call" node["call"] = func - node["args"] = arguments if(tokenl(i) != "on") return i var/list/select = list() i = select_list(i + 1, select) node += "on" node["on"] = select - var/list/from = list() - if(tokenl(i) in list("from", "in")) - i = from_list(i + 1, from) - else - from += "world" - node += "from" - node["from"] = from - if(tokenl(i) == "where") - var/list/where = list() - i = bool_expression(i + 1, where) - node += "where" - node["where"] = where + selectors(i, node) return i //select_list: select_item [',' select_list] @@ -211,13 +165,6 @@ i = select_list(i + 1, node) return i -//from_list: from_item [',' from_list] -/datum/SDQL_parser/proc/from_list(i, list/node) - i = from_item(i, node) - if(token(i) == ",") - i = from_list(i + 1, node) - return i - //assignments: assignment, [',' assignments] /datum/SDQL_parser/proc/assignments(i, list/node) i = assignment(i, node) @@ -236,13 +183,33 @@ i = object_type(i, node) return i +// Standardized method for handling the IN/FROM and WHERE options. +/datum/SDQL_parser/proc/selectors(i, list/node) + while (token(i)) + var/tok = tokenl(i) + if(tok in list("from", "in")) + var/list/from = list() + i = from_item(i + 1, from) + node["from"] = from + continue + if(tok == "where") + var/list/where = list() + i = bool_expression(i + 1, where) + node["where"] = where + continue + parse_error("Expected either FROM, IN or WHERE token, found [token(i)] instead.") + return i + 1 + if(!node.Find("from")) + node["from"] = list("world") + return i + //from_item: 'world' | object_type /datum/SDQL_parser/proc/from_item(i, list/node) if(token(i) == "world") node += "world" i++ else - i = object_type(i, node) + i = expression(i, node) return i //bool_expression: expression [bool_operator bool_expression] @@ -280,6 +247,19 @@ if(token(i + 1) == ".") L += "." i = variable(i + 2, L) + else if(token(i + 1) == "(") // OH BOY PROC + var/list/arguments = list() + i = call_function(i, null, arguments) + L += ":" + L[++L.len] = arguments + else if(token(i + 1) == "\[") + var/list/expression = list() + i = expression(i + 2, expression) + if (token(i) != "]") + parse_error("Missing ] at the end of list access.") + L += "\[" + L[++L.len] = expression + i++ else i++ return i @@ -291,17 +271,36 @@ return i + 1 node += token(i) var/list/expression_list = list() - if(token(i + 1) != "]") + i++ + if(token(i) != "]") var/list/temp_expression_list = list() + var/tok do - i = expression(i + 1, temp_expression_list) - if(token(i) == ",") + tok = token(i) + if(tok == "," || tok == ":") + if(temp_expression_list == null) + parse_error("Found ',' or ':' without expression in an array.") + return i + 1 expression_list[++expression_list.len] = temp_expression_list - temp_expression_list = list() + temp_expression_list = null + if(tok == ":") + temp_expression_list = list() + i = expression(i + 1, temp_expression_list) + expression_list[expression_list[expression_list.len]] = temp_expression_list + temp_expression_list = null + tok = token(i) + if(tok != ",") + if(tok == "]") + break + parse_error("Expected ',' or ']' after array assoc value, but found '[token(i)]'") + return i + i++ + continue + temp_expression_list = list() + i = expression(i, temp_expression_list) while(token(i) && token(i) != "]") - expression_list[++expression_list.len] = temp_expression_list - else - i++ + if(temp_expression_list) + expression_list[++expression_list.len] = temp_expression_list node[++node.len] = expression_list return i + 1 diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm index f9e2f792a2..d2d85eaab3 100644 --- a/code/modules/admin/verbs/adminhelp.dm +++ b/code/modules/admin/verbs/adminhelp.dm @@ -81,12 +81,12 @@ set name = "Adminhelp" if(say_disabled) //This is here to try to identify lag problems - usr << "Speech is currently admin-disabled." + to_chat(usr, "Speech is currently admin-disabled.") return //handle muting and automuting if(prefs.muted & MUTE_ADMINHELP) - src << "Error: Admin-PM: You cannot send adminhelps (Muted)." + to_chat(src, "Error: Admin-PM: You cannot send adminhelps (Muted).") return if(src.handle_spam_prevention(msg,MUTE_ADMINHELP)) return @@ -108,7 +108,7 @@ return //this doesn't happen var/ref_client = "\ref[src]" - msg = "HELP: [key_name(src)] [ADMIN_QUE(mob)] [ADMIN_PP(mob)] [ADMIN_VV(mob)] [ADMIN_SM(mob)] [ADMIN_FLW(mob)] [ADMIN_TP(mob)] (REJT) (IC): [msg]" + msg = "HELP: [key_name(src)] [ADMIN_QUE(mob)] [ADMIN_PP(mob)] [ADMIN_VV(mob)] [ADMIN_SM(mob)] [ADMIN_FLW(mob)] [ADMIN_TP(mob)] [ADMIN_SMITE(mob)] (REJT) (IC): [msg]" //send this msg to all admins @@ -116,17 +116,17 @@ if(X.prefs.toggles & SOUND_ADMINHELP) X << 'sound/effects/adminhelp.ogg' window_flash(X, ignorepref = TRUE) - X << msg + to_chat(X, msg) //show it to the person adminhelping too - src << "PM to-Admins: [original_msg]" + to_chat(src, "PM to-Admins: [original_msg]") //send it to irc if nobody is on and tell us how many were on var/admin_number_present = send2irc_adminless_only(ckey,original_msg) log_admin_private("HELP: [key_name(src)]: [original_msg] - heard by [admin_number_present] non-AFK admins who have +BAN.") if(admin_number_present <= 0) - src << "No active admins are online, your adminhelp was sent to the admin irc." + to_chat(src, "No active admins are online, your adminhelp was sent to the admin irc.") feedback_add_details("admin_verb","AH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return @@ -167,7 +167,7 @@ return /proc/send2otherserver(source,msg,type = "Ahelp") - if(global.cross_allowed) + if(config.cross_allowed) var/list/message = list() message["message_sender"] = source message["message"] = msg @@ -175,7 +175,7 @@ message["key"] = global.comms_key message["crossmessage"] = type - world.Export("[global.cross_address]?[list2params(message)]") + world.Export("[config.cross_address]?[list2params(message)]") /proc/ircadminwho() diff --git a/code/modules/admin/verbs/adminjump.dm b/code/modules/admin/verbs/adminjump.dm index 46dc316c1f..ad93c4d35c 100644 --- a/code/modules/admin/verbs/adminjump.dm +++ b/code/modules/admin/verbs/adminjump.dm @@ -3,7 +3,7 @@ set desc = "Area to jump to" set category = "Admin" if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return if(!A) @@ -18,7 +18,7 @@ var/turf/T = safepick(turfs) if(!T) - src << "Nowhere to jump to!" + to_chat(src, "Nowhere to jump to!") return usr.forceMove(T) log_admin("[key_name(usr)] jumped to [A]") @@ -29,7 +29,7 @@ set name = "Jump to Turf" set category = "Admin" if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return log_admin("[key_name(usr)] jumped to [T.x],[T.y],[T.z] in [T.loc]") @@ -43,7 +43,7 @@ set name = "Jump to Mob" if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return log_admin("[key_name(usr)] jumped to [key_name(M)]") @@ -55,14 +55,14 @@ feedback_add_details("admin_verb","JM") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! A.forceMove(M.loc) else - A << "This mob is not located in the game world." + to_chat(A, "This mob is not located in the game world.") /client/proc/jumptocoord(tx as num, ty as num, tz as num) set category = "Admin" set name = "Jump to Coordinate" if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return if(src.mob) @@ -78,7 +78,7 @@ set name = "Jump to Key" if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/list/keys = list() @@ -86,7 +86,7 @@ keys += M.client var/selection = input("Please, select a player!", "Admin Jumping", null, null) as null|anything in sortKey(keys) if(!selection) - src << "No keys found." + to_chat(src, "No keys found.") return var/mob/M = selection:mob log_admin("[key_name(usr)] jumped to [key_name(M)]") @@ -101,7 +101,7 @@ set name = "Get Mob" set desc = "Mob to teleport" if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return log_admin("[key_name(usr)] teleported [key_name(M)]") @@ -115,7 +115,7 @@ set desc = "Key to teleport" if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/list/keys = list() @@ -139,7 +139,7 @@ set category = "Admin" set name = "Send Mob" if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/area/A = input(usr, "Pick an area.", "Pick an area") in sortedAreas|null if(A && istype(A)) @@ -148,5 +148,5 @@ log_admin("[key_name(usr)] teleported [key_name(M)] to [A]") message_admins("[key_name_admin(usr)] teleported [key_name_admin(M)] to [A]") else - src << "Failed to move mob to a valid location." + to_chat(src, "Failed to move mob to a valid location.") feedback_add_details("admin_verb","SMOB") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 81f160769f..8bc398ea01 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -6,7 +6,7 @@ set category = null set name = "Admin PM Mob" if(!holder) - src << "Error: Admin-PM-Context: Only administrators may use this command." + to_chat(src, "Error: Admin-PM-Context: Only administrators may use this command.") return if( !ismob(M) || !M.client ) return @@ -18,7 +18,7 @@ set category = "Admin" set name = "Admin PM" if(!holder) - src << "Error: Admin-PM-Panel: Only administrators may use this command." + to_chat(src, "Error: Admin-PM-Panel: Only administrators may use this command.") return var/list/client/targets[0] for(var/client/T) @@ -37,7 +37,7 @@ /client/proc/cmd_ahelp_reply(whom) if(prefs.muted & MUTE_ADMINHELP) - src << "Error: Admin-PM: You are unable to use admin PM-s (muted)." + to_chat(src, "Error: Admin-PM: You are unable to use admin PM-s (muted).") return var/client/C if(istext(whom)) @@ -48,7 +48,7 @@ C = whom if(!C) if(holder) - src << "Error: Admin-PM: Client not found." + to_chat(src, "Error: Admin-PM: Client not found.") return message_admins("[key_name_admin(src)] has started replying to [key_name(C, 0, 0)]'s admin help.") var/msg = input(src,"Message:", "Private message to [key_name(C, 0, 0)]") as text|null @@ -61,7 +61,7 @@ //Fetching a message if needed. src is the sender and C is the target client /client/proc/cmd_admin_pm(whom, msg) if(prefs.muted & MUTE_ADMINHELP) - src << "Error: Admin-PM: You are unable to use admin PM-s (muted)." + to_chat(src, "Error: Admin-PM: You are unable to use admin PM-s (muted).") return var/client/C @@ -84,14 +84,14 @@ if(!msg) return if(holder) - src << "Error: Use the admin IRC channel, nerd." + to_chat(src, "Error: Use the admin IRC channel, nerd.") return else if(!C) if(holder) - src << "Error: Admin-PM: Client not found." + to_chat(src, "Error: Admin-PM: Client not found.") else adminhelp(msg) //admin we are replying to left. adminhelp instead return @@ -104,12 +104,12 @@ return if(prefs.muted & MUTE_ADMINHELP) - src << "Error: Admin-PM: You are unable to use admin PM-s (muted)." + to_chat(src, "Error: Admin-PM: You are unable to use admin PM-s (muted).") return if(!C) if(holder) - src << "Error: Admin-PM: Client not found." + to_chat(src, "Error: Admin-PM: Client not found.") else adminhelp(msg) //admin we are replying to has vanished, adminhelp instead return @@ -131,18 +131,18 @@ var/keywordparsedmsg = keywords_lookup(msg) if(irc) - src << "PM to-Admins: [rawmsg]" + to_chat(src, "PM to-Admins: [rawmsg]") ircreplyamount-- send2irc("Reply: [ckey]",rawmsg) else if(C.holder) if(holder) //both are admins - C << "Admin PM from-[key_name(src, C, 1)]: [keywordparsedmsg]" - src << "Admin PM to-[key_name(C, src, 1)]: [keywordparsedmsg]" + to_chat(C, "Admin PM from-[key_name(src, C, 1)]: [keywordparsedmsg]") + to_chat(src, "Admin PM to-[key_name(C, src, 1)]: [keywordparsedmsg]") else //recipient is an admin but sender is not - C << "Reply PM from-[key_name(src, C, 1)]: [keywordparsedmsg]" - src << "PM to-Admins: [msg]" + to_chat(C, "Reply PM from-[key_name(src, C, 1)]: [keywordparsedmsg]") + to_chat(src, "PM to-Admins: [msg]") //play the recieving admin the adminhelp sound (if they have them enabled) if(C.prefs.toggles & SOUND_ADMINHELP) @@ -150,10 +150,10 @@ else if(holder) //sender is an admin but recipient is not. Do BIG RED TEXT - C << "-- Administrator private message --" - C << "Admin PM from-[key_name(src, C, 0)]: [msg]" - C << "Click on the administrator's name to reply." - src << "Admin PM to-[key_name(C, src, 1)]: [msg]" + to_chat(C, "-- Administrator private message --") + to_chat(C, "Admin PM from-[key_name(src, C, 0)]: [msg]") + to_chat(C, "Click on the administrator's name to reply.") + to_chat(src, "Admin PM to-[key_name(C, src, 1)]: [msg]") //always play non-admin recipients the adminhelp sound C << 'sound/effects/adminhelp.ogg' @@ -172,20 +172,20 @@ return else //neither are admins - src << "Error: Admin-PM: Non-admin to non-admin PM communication is forbidden." + to_chat(src, "Error: Admin-PM: Non-admin to non-admin PM communication is forbidden.") return if(irc) log_admin_private("PM: [key_name(src)]->IRC: [rawmsg]") for(var/client/X in admins) - X << "PM: [key_name(src, X, 0)]->IRC: \blue [keywordparsedmsg]" //inform X + to_chat(X, "PM: [key_name(src, X, 0)]->IRC: \blue [keywordparsedmsg]" ) else window_flash(C, ignorepref = TRUE) log_admin_private("PM: [key_name(src)]->[key_name(C)]: [rawmsg]") //we don't use message_admins here because the sender/receiver might get it too for(var/client/X in admins) if(X.key!=key && X.key!=C.key) //check client/X is an admin and isn't the sender or recipient - X << "PM: [key_name(src, X, 0)]->[key_name(C, X, 0)]: \blue [keywordparsedmsg]" //inform X + to_chat(X, "PM: [key_name(src, X, 0)]->[key_name(C, X, 0)]: \blue [keywordparsedmsg]" ) @@ -211,9 +211,9 @@ log_admin_private("IRC PM: [sender] -> [key_name(C)] : [msg]") msg = emoji_parse(msg) - C << "-- Administrator private message --" - C << "Admin PM from-[adminname]: [msg]" - C << "Click on the administrator's name to reply." + to_chat(C, "-- Administrator private message --") + to_chat(C, "Admin PM from-[adminname]: [msg]") + to_chat(C, "Click on the administrator's name to reply.") window_flash(C, ignorepref = TRUE) //always play non-admin recipients the adminhelp sound C << 'sound/effects/adminhelp.ogg' diff --git a/code/modules/admin/verbs/adminsay.dm b/code/modules/admin/verbs/adminsay.dm index b93600431f..70e9badb10 100644 --- a/code/modules/admin/verbs/adminsay.dm +++ b/code/modules/admin/verbs/adminsay.dm @@ -13,10 +13,10 @@ msg = keywords_lookup(msg) if(check_rights(R_ADMIN,0)) msg = "ADMIN: [key_name(usr, 1)] (FLW): [msg]" - admins << msg + to_chat(admins, msg) else msg = "ADMIN: [key_name(usr, 1)]: [msg]" - admins << msg + to_chat(admins, msg) feedback_add_details("admin_verb","M") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/atmosdebug.dm b/code/modules/admin/verbs/atmosdebug.dm index 915ea7c4e6..2f25fa5b1a 100644 --- a/code/modules/admin/verbs/atmosdebug.dm +++ b/code/modules/admin/verbs/atmosdebug.dm @@ -2,30 +2,30 @@ set category = "Mapping" set name = "Check Plumbing" if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return feedback_add_details("admin_verb","CP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //all plumbing - yes, some things might get stated twice, doesn't matter. for (var/obj/machinery/atmospherics/plumbing in machines) if (plumbing.nodealert) - usr << "Unconnected [plumbing.name] located at [plumbing.x],[plumbing.y],[plumbing.z] ([get_area(plumbing.loc)])" + to_chat(usr, "Unconnected [plumbing.name] located at [plumbing.x],[plumbing.y],[plumbing.z] ([get_area(plumbing.loc)])") //Manifolds for (var/obj/machinery/atmospherics/pipe/manifold/pipe in machines) if (!pipe.NODE1 || !pipe.NODE2 || !pipe.NODE3) - usr << "Unconnected [pipe.name] located at [pipe.x],[pipe.y],[pipe.z] ([get_area(pipe.loc)])" + to_chat(usr, "Unconnected [pipe.name] located at [pipe.x],[pipe.y],[pipe.z] ([get_area(pipe.loc)])") //Pipes for (var/obj/machinery/atmospherics/pipe/simple/pipe in machines) if (!pipe.NODE1 || !pipe.NODE2) - usr << "Unconnected [pipe.name] located at [pipe.x],[pipe.y],[pipe.z] ([get_area(pipe.loc)])" + to_chat(usr, "Unconnected [pipe.name] located at [pipe.x],[pipe.y],[pipe.z] ([get_area(pipe.loc)])") /client/proc/powerdebug() set category = "Mapping" set name = "Check Power" if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return feedback_add_details("admin_verb","CPOW") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -33,9 +33,9 @@ if (!PN.nodes || !PN.nodes.len) if(PN.cables && (PN.cables.len > 1)) var/obj/structure/cable/C = PN.cables[1] - usr << "Powernet with no nodes! (number [PN.number]) - example cable at [C.x], [C.y], [C.z] in area [get_area(C.loc)]" + to_chat(usr, "Powernet with no nodes! (number [PN.number]) - example cable at [C.x], [C.y], [C.z] in area [get_area(C.loc)]") if (!PN.cables || (PN.cables.len < 10)) if(PN.cables && (PN.cables.len > 1)) var/obj/structure/cable/C = PN.cables[1] - usr << "Powernet with fewer than 10 cables! (number [PN.number]) - example cable at [C.x], [C.y], [C.z] in area [get_area(C.loc)]" \ No newline at end of file + to_chat(usr, "Powernet with fewer than 10 cables! (number [PN.number]) - example cable at [C.x], [C.y], [C.z] in area [get_area(C.loc)]") \ No newline at end of file diff --git a/code/modules/admin/verbs/bluespacearty.dm b/code/modules/admin/verbs/bluespacearty.dm index 814ee68d4d..3353986ac3 100644 --- a/code/modules/admin/verbs/bluespacearty.dm +++ b/code/modules/admin/verbs/bluespacearty.dm @@ -8,7 +8,7 @@ var/mob/living/target = M if(!isliving(target)) - usr << "This can only be used on instances of type /mob/living" + to_chat(usr, "This can only be used on instances of type /mob/living") return if(alert(usr, "Are you sure you wish to hit [key_name(target)] with Blue Space Artillery?", "Confirm Firing?" , "Yes" , "No") != "Yes") @@ -23,7 +23,7 @@ else T.break_tile() - target << "You're hit by bluespace artillery!" + to_chat(target, "You're hit by bluespace artillery!") log_admin("[key_name(target)] has been hit by Bluespace Artillery fired by [key_name(usr)]") message_admins("[ADMIN_LOOKUPFLW(target)] has been hit by Bluespace Artillery fired by [ADMIN_LOOKUPFLW(usr)]") diff --git a/code/modules/admin/verbs/buildmode.dm b/code/modules/admin/verbs/buildmode.dm index c68066cac0..affda973a0 100644 --- a/code/modules/admin/verbs/buildmode.dm +++ b/code/modules/admin/verbs/buildmode.dm @@ -116,45 +116,45 @@ /datum/buildmode/proc/show_help(mob/user) switch(mode) if(BASIC_BUILDMODE) - user << "\blue ***********************************************************" - user << "\blue Left Mouse Button = Construct / Upgrade" - user << "\blue Right Mouse Button = Deconstruct / Delete / Downgrade" - user << "\blue Left Mouse Button + ctrl = R-Window" - user << "\blue Left Mouse Button + alt = Airlock" - user << "" - user << "\blue Use the button in the upper left corner to" - user << "\blue change the direction of built objects." - user << "\blue ***********************************************************" + to_chat(user, "\blue ***********************************************************") + to_chat(user, "\blue Left Mouse Button = Construct / Upgrade") + to_chat(user, "\blue Right Mouse Button = Deconstruct / Delete / Downgrade") + to_chat(user, "\blue Left Mouse Button + ctrl = R-Window") + to_chat(user, "\blue Left Mouse Button + alt = Airlock") + to_chat(user, "") + to_chat(user, "\blue Use the button in the upper left corner to") + to_chat(user, "\blue change the direction of built objects.") + to_chat(user, "\blue ***********************************************************") if(ADV_BUILDMODE) - user << "\blue ***********************************************************" - user << "\blue Right Mouse Button on buildmode button = Set object type" - user << "\blue Left Mouse Button on turf/obj = Place objects" - user << "\blue Right Mouse Button = Delete objects" - user << "" - user << "\blue Use the button in the upper left corner to" - user << "\blue change the direction of built objects." - user << "\blue ***********************************************************" + to_chat(user, "\blue ***********************************************************") + to_chat(user, "\blue Right Mouse Button on buildmode button = Set object type") + to_chat(user, "\blue Left Mouse Button on turf/obj = Place objects") + to_chat(user, "\blue Right Mouse Button = Delete objects") + to_chat(user, "") + to_chat(user, "\blue Use the button in the upper left corner to") + to_chat(user, "\blue change the direction of built objects.") + to_chat(user, "\blue ***********************************************************") if(VAR_BUILDMODE) - user << "\blue ***********************************************************" - user << "\blue Right Mouse Button on buildmode button = Select var(type) & value" - user << "\blue Left Mouse Button on turf/obj/mob = Set var(type) & value" - user << "\blue Right Mouse Button on turf/obj/mob = Reset var's value" - user << "\blue ***********************************************************" + to_chat(user, "\blue ***********************************************************") + to_chat(user, "\blue Right Mouse Button on buildmode button = Select var(type) & value") + to_chat(user, "\blue Left Mouse Button on turf/obj/mob = Set var(type) & value") + to_chat(user, "\blue Right Mouse Button on turf/obj/mob = Reset var's value") + to_chat(user, "\blue ***********************************************************") if(THROW_BUILDMODE) - user << "\blue ***********************************************************" - user << "\blue Left Mouse Button on turf/obj/mob = Select" - user << "\blue Right Mouse Button on turf/obj/mob = Throw" - user << "\blue ***********************************************************" + to_chat(user, "\blue ***********************************************************") + to_chat(user, "\blue Left Mouse Button on turf/obj/mob = Select") + to_chat(user, "\blue Right Mouse Button on turf/obj/mob = Throw") + to_chat(user, "\blue ***********************************************************") if(AREA_BUILDMODE) - user << "\blue ***********************************************************" - user << "\blue Left Mouse Button on turf/obj/mob = Select corner" - user << "\blue Right Mouse Button on buildmode button = Select generator" - user << "\blue ***********************************************************" + to_chat(user, "\blue ***********************************************************") + to_chat(user, "\blue Left Mouse Button on turf/obj/mob = Select corner") + to_chat(user, "\blue Right Mouse Button on buildmode button = Select generator") + to_chat(user, "\blue ***********************************************************") if(COPY_BUILDMODE) - user << "\blue ***********************************************************" - user << "\blue Left Mouse Button on obj/turf/mob = Spawn a Copy of selected target" - user << "\blue Right Mouse Button on obj/mob = Select target to copy" - user << "\blue ***********************************************************" + to_chat(user, "\blue ***********************************************************") + to_chat(user, "\blue Left Mouse Button on obj/turf/mob = Spawn a Copy of selected target") + to_chat(user, "\blue Right Mouse Button on obj/mob = Select target to copy") + to_chat(user, "\blue ***********************************************************") /datum/buildmode/proc/change_settings(mob/user) switch(mode) @@ -284,7 +284,7 @@ var/obj/structure/window/reinforced/WIN = new/obj/structure/window/reinforced(get_turf(object)) WIN.setDir(WEST) if(NORTHWEST) - var/obj/structure/window/reinforced/WIN = new/obj/structure/window/reinforced(get_turf(object)) + var/obj/structure/window/reinforced/WIN = new/obj/structure/window/reinforced/fulltile(get_turf(object)) WIN.setDir(NORTHWEST) log_admin("Build Mode: [key_name(user)] built a window at ([object.x],[object.y],[object.z])") if(ADV_BUILDMODE) @@ -308,13 +308,13 @@ log_admin("Build Mode: [key_name(user)] modified [object.name]'s [varholder] to [valueholder]") object.vars[varholder] = valueholder else - user << "[initial(object.name)] does not have a var called '[varholder]'" + to_chat(user, "[initial(object.name)] does not have a var called '[varholder]'") if(right_click) if(object.vars.Find(varholder)) log_admin("Build Mode: [key_name(user)] modified [object.name]'s [varholder] to [valueholder]") object.vars[varholder] = initial(object.vars[varholder]) else - user << "[initial(object.name)] does not have a var called '[varholder]'" + to_chat(user, "[initial(object.name)] does not have a var called '[varholder]'") if(THROW_BUILDMODE) if(left_click) @@ -335,7 +335,7 @@ if(left_click) //rectangular if(cornerA && cornerB) if(!generator_path) - user << "Select generator type first." + to_chat(user, "Select generator type first.") var/datum/mapGenerator/G = new generator_path G.defineRegion(cornerA,cornerB,1) G.generate() @@ -352,4 +352,4 @@ DuplicateObject(stored,perfectcopy=1,newloc=T) else if(right_click) if(ismovableatom(object)) // No copying turfs for now. - stored = object \ No newline at end of file + stored = object diff --git a/code/modules/admin/verbs/deadsay.dm b/code/modules/admin/verbs/deadsay.dm index 452d1e9de2..7f4c9efc52 100644 --- a/code/modules/admin/verbs/deadsay.dm +++ b/code/modules/admin/verbs/deadsay.dm @@ -3,12 +3,12 @@ set name = "Dsay" //Gave this shit a shorter name so you only have to time out "dsay" rather than "dead say" to use it --NeoFite set hidden = 1 if(!src.holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return if(!src.mob) return if(prefs.muted & MUTE_DEADCHAT) - src << "You cannot send DSAY messages (muted)." + to_chat(src, "You cannot send DSAY messages (muted).") return if (src.handle_spam_prevention(msg,MUTE_DEADCHAT)) diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 44f4baaa5f..c8dd86a57b 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -53,12 +53,12 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that return if(targetselected && !hascall(target,procname)) - usr << "Error: callproc(): type [target.type] has no proc named [procname]." + to_chat(usr, "Error: callproc(): type [target.type] has no proc named [procname].") return else var/procpath = text2path(procname) if (!procpath) - usr << "Error: callproc(): proc [procname] does not exist. (Did you forget the /proc/ part?)" + to_chat(usr, "Error: callproc(): proc [procname] does not exist. (Did you forget the /proc/ part?)") return var/list/lst = get_callproc_args() if(!lst) @@ -66,7 +66,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that if(targetselected) if(!target) - usr << "Error: callproc(): owner of proc no longer exists." + to_chat(usr, "Error: callproc(): owner of proc no longer exists.") return log_admin("[key_name(src)] called [target]'s [procname]() with [lst.len ? "the arguments [list2params(lst)]":"no arguments"].") message_admins("[key_name(src)] called [target]'s [procname]() with [lst.len ? "the arguments [list2params(lst)]":"no arguments"].") @@ -78,7 +78,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that returnval = call(procname)(arglist(lst)) // Pass the lst as an argument list to the proc . = get_callproc_returnval(returnval, procname) if(.) - usr << . + to_chat(usr, .) feedback_add_details("admin_verb","APC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/callproc_datum(datum/A as null|area|mob|obj|turf) @@ -93,14 +93,14 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that if(!procname) return if(!hascall(A,procname)) - usr << "Error: callproc_datum(): type [A.type] has no proc named [procname]." + to_chat(usr, "Error: callproc_datum(): type [A.type] has no proc named [procname].") return var/list/lst = get_callproc_args() if(!lst) return if(!A || !IsValidSrc(A)) - usr << "Error: callproc_datum(): owner of proc no longer exists." + to_chat(usr, "Error: callproc_datum(): owner of proc no longer exists.") return log_admin("[key_name(src)] called [A]'s [procname]() with [lst.len ? "the arguments [list2params(lst)]":"no arguments"].") message_admins("[key_name(src)] called [A]'s [procname]() with [lst.len ? "the arguments [list2params(lst)]":"no arguments"].") @@ -109,7 +109,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that var/returnval = call(A,procname)(arglist(lst)) // Pass the lst as an argument list to the proc . = get_callproc_returnval(returnval,procname) if(.) - usr << . + to_chat(usr, .) @@ -174,7 +174,7 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that if(id in hardcoded_gases || env_gases[id][MOLES]) t+= "[env_gases[id][GAS_META][META_GAS_NAME]] : [env_gases[id][MOLES]]\n" - usr << t + to_chat(usr, t) feedback_add_details("admin_verb","ASL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_robotize(mob/M in mob_list) @@ -507,33 +507,33 @@ var/list/TYPES_SHORTCUTS = list( var/list/areas_without_intercom = areas_all - areas_with_intercom var/list/areas_without_camera = areas_all - areas_with_camera - world << "AREAS WITHOUT AN APC:" + to_chat(world, "AREAS WITHOUT AN APC:") for(var/areatype in areas_without_APC) - world << "* [areatype]" + to_chat(world, "* [areatype]") - world << "AREAS WITHOUT AN AIR ALARM:" + to_chat(world, "AREAS WITHOUT AN AIR ALARM:") for(var/areatype in areas_without_air_alarm) - world << "* [areatype]" + to_chat(world, "* [areatype]") - world << "AREAS WITHOUT A REQUEST CONSOLE:" + to_chat(world, "AREAS WITHOUT A REQUEST CONSOLE:") for(var/areatype in areas_without_RC) - world << "* [areatype]" + to_chat(world, "* [areatype]") - world << "AREAS WITHOUT ANY LIGHTS:" + to_chat(world, "AREAS WITHOUT ANY LIGHTS:") for(var/areatype in areas_without_light) - world << "* [areatype]" + to_chat(world, "* [areatype]") - world << "AREAS WITHOUT A LIGHT SWITCH:" + to_chat(world, "AREAS WITHOUT A LIGHT SWITCH:") for(var/areatype in areas_without_LS) - world << "* [areatype]" + to_chat(world, "* [areatype]") - world << "AREAS WITHOUT ANY INTERCOMS:" + to_chat(world, "AREAS WITHOUT ANY INTERCOMS:") for(var/areatype in areas_without_intercom) - world << "* [areatype]" + to_chat(world, "* [areatype]") - world << "AREAS WITHOUT ANY CAMERAS:" + to_chat(world, "AREAS WITHOUT ANY CAMERAS:") for(var/areatype in areas_without_camera) - world << "* [areatype]" + to_chat(world, "* [areatype]") /client/proc/cmd_admin_dress(mob/living/carbon/human/M in mob_list) set category = "Fun" @@ -663,19 +663,19 @@ var/list/TYPES_SHORTCUTS = list( switch(input("Which list?") in list("Players","Admins","Mobs","Living Mobs","Dead Mobs","Clients","Joined Clients")) if("Players") - usr << jointext(player_list,",") + to_chat(usr, jointext(player_list,",")) if("Admins") - usr << jointext(admins,",") + to_chat(usr, jointext(admins,",")) if("Mobs") - usr << jointext(mob_list,",") + to_chat(usr, jointext(mob_list,",")) if("Living Mobs") - usr << jointext(living_mob_list,",") + to_chat(usr, jointext(living_mob_list,",")) if("Dead Mobs") - usr << jointext(dead_mob_list,",") + to_chat(usr, jointext(dead_mob_list,",")) if("Clients") - usr << jointext(clients,",") + to_chat(usr, jointext(clients,",")) if("Joined Clients") - usr << jointext(joined_player_list,",") + to_chat(usr, jointext(joined_player_list,",")) /client/proc/cmd_display_del_log() set category = "Debug" @@ -734,8 +734,8 @@ var/list/TYPES_SHORTCUTS = list( if(istype(landmark)) var/datum/map_template/ruin/template = landmark.ruin_template usr.forceMove(get_turf(landmark)) - usr << "[template.name]" - usr << "[template.description]" + to_chat(usr, "[template.name]") + to_chat(usr, "[template.description]") /client/proc/clear_dynamic_transit() set category = "Debug" @@ -771,4 +771,17 @@ var/list/TYPES_SHORTCUTS = list( if(!holder) return - error_cache.show_to(src) \ No newline at end of file + error_cache.show_to(src) + +/client/proc/pump_random_event() + set category = "Debug" + set name = "Pump Random Event" + set desc = "Schedules the event subsystem to fire a new random event immediately. Some events may fire without notification." + if(!holder) + return + + SSevent.scheduled = world.time + + message_admins("[key_name_admin(src)] pumped a random event.") + feedback_add_details("admin_verb","PRE") + log_admin("[key_name(src)] pumped a random event.") \ No newline at end of file diff --git a/code/modules/admin/verbs/diagnostics.dm b/code/modules/admin/verbs/diagnostics.dm index 7d75d17956..8cc400891f 100644 --- a/code/modules/admin/verbs/diagnostics.dm +++ b/code/modules/admin/verbs/diagnostics.dm @@ -13,9 +13,9 @@ if(T.active_hotspot) burning = 1 - usr << "@[target.x],[target.y]: [GM.temperature] Kelvin, [GM.return_pressure()] kPa [(burning)?("\red BURNING"):(null)]" + to_chat(usr, "@[target.x],[target.y]: [GM.temperature] Kelvin, [GM.return_pressure()] kPa [(burning)?("\red BURNING"):(null)]") for(var/id in GM_gases) - usr << "[GM_gases[id][GAS_META][META_GAS_NAME]]: [GM_gases[id][MOLES]]" + to_chat(usr, "[GM_gases[id][GAS_META][META_GAS_NAME]]: [GM_gases[id][MOLES]]") feedback_add_details("admin_verb","DAST") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/fix_next_move() diff --git a/code/modules/admin/verbs/fps.dm b/code/modules/admin/verbs/fps.dm index 97ddc23ccc..e669001e8f 100644 --- a/code/modules/admin/verbs/fps.dm +++ b/code/modules/admin/verbs/fps.dm @@ -10,7 +10,7 @@ var/new_fps = round(input("Sets game frames-per-second. Can potentially break the game (default: [config.fps])","FPS", world.fps) as num|null) if(new_fps <= 0) - src << "Error: set_server_fps(): Invalid world.fps value. No changes made." + to_chat(src, "Error: set_server_fps(): Invalid world.fps value. No changes made.") return if(new_fps > config.fps*1.5) if(alert(src, "You are setting fps to a high value:\n\t[new_fps] frames-per-second\n\tconfig.fps = [config.fps]","Warning!","Confirm","ABORT-ABORT-ABORT") != "Confirm") diff --git a/code/modules/admin/verbs/getlogs.dm b/code/modules/admin/verbs/getlogs.dm index 7da3b74446..bba9b79003 100644 --- a/code/modules/admin/verbs/getlogs.dm +++ b/code/modules/admin/verbs/getlogs.dm @@ -24,16 +24,16 @@ set category = null if(!src.holder) - src << "Only Admins may use this command." + to_chat(src, "Only Admins may use this command.") return var/client/target = input(src,"Choose somebody to grant access to the server's runtime logs (permissions expire at the end of each round):","Grant Permissions",null) as null|anything in clients if(!istype(target,/client)) - src << "Error: giveruntimelog(): Client not found." + to_chat(src, "Error: giveruntimelog(): Client not found.") return target.verbs |= /client/proc/getruntimelog - target << "You have been granted access to runtime logs. Please use them responsibly or risk being banned." + to_chat(target, "You have been granted access to runtime logs. Please use them responsibly or risk being banned.") return @@ -52,8 +52,8 @@ return message_admins("[key_name_admin(src)] accessed file: [path]") - src << ftp( file(path) ) - src << "Attempting to send file, this may take a fair few minutes if the file is very large." + src << ftp(file(path)) + to_chat(src, "Attempting to send file, this may take a fair few minutes if the file is very large.") return @@ -72,8 +72,8 @@ return message_admins("[key_name_admin(src)] accessed file: [path]") - src << ftp( file(path) ) - src << "Attempting to send file, this may take a fair few minutes if the file is very large." + src << ftp(file(path)) + to_chat(src, "Attempting to send file, this may take a fair few minutes if the file is very large.") return @@ -88,7 +88,7 @@ if(fexists("[diary]")) src << ftp(diary) else - src << "Server log not found, try using .getserverlog." + to_chat(src, "Server log not found, try using .getserverlog.") return feedback_add_details("admin_verb","VTL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return @@ -102,7 +102,7 @@ if(fexists("[diaryofmeanpeople]")) src << ftp(diaryofmeanpeople) else - src << "Server attack log not found, try using .getserverlog." + to_chat(src, "Server attack log not found, try using .getserverlog.") return feedback_add_details("admin_verb","SSAL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return diff --git a/code/modules/admin/verbs/individual_logging.dm b/code/modules/admin/verbs/individual_logging.dm new file mode 100644 index 0000000000..8130f84ff0 --- /dev/null +++ b/code/modules/admin/verbs/individual_logging.dm @@ -0,0 +1,27 @@ +/proc/show_individual_logging_panel(mob/M, type = INDIVIDUAL_ATTACK_LOG) + if(!M || !ismob(M)) + return + var/dat = "
    Attack log | " + dat += "Say log | " + dat += "Emote log | " + dat += "OOC log | " + dat += "Show all | " + dat += "Refresh
    " + + dat += "
    " + + + + if(type == INDIVIDUAL_SHOW_ALL_LOG) + dat += "
    Displaying all logs of [key_name(M)]


    " + for(var/log_type in M.logging) + dat += "
    [log_type]

    " + for(var/entry in M.logging[log_type]) + dat += "[entry]: [M.logging[log_type][entry]]
    " + dat += "
    " + else + dat += "
    [type] of [key_name(M)]

    " + for(var/entry in M.logging[type]) + dat += "[entry]: [M.logging[type][entry]]
    " + + usr << browse(dat, "window=invidual_logging;size=600x480") \ No newline at end of file diff --git a/code/modules/admin/verbs/map_template_loadverb.dm b/code/modules/admin/verbs/map_template_loadverb.dm index d2e50a084c..9fdb316971 100644 --- a/code/modules/admin/verbs/map_template_loadverb.dm +++ b/code/modules/admin/verbs/map_template_loadverb.dm @@ -21,7 +21,7 @@ if(template.load(T, centered = TRUE)) message_admins("[key_name_admin(usr)] has placed a map template ([template.name]) at (JMP)") else - usr << "Failed to place map" + to_chat(usr, "Failed to place map") usr.client.images -= preview /client/proc/map_template_upload() @@ -32,13 +32,13 @@ if(!map) return if(copytext("[map]",-4) != ".dmm") - usr << "Bad map file: [map]" + to_chat(usr, "Bad map file: [map]") return var/datum/map_template/M = new(map, "[map]") if(M.preload_size(map)) - usr << "Map template '[map]' ready to place ([M.width]x[M.height])" + to_chat(usr, "Map template '[map]' ready to place ([M.width]x[M.height])") SSmapping.map_templates[M.name] = M message_admins("[key_name_admin(usr)] has uploaded a map template ([map])") else - usr << "Map template '[map]' failed to load properly" + to_chat(usr, "Map template '[map]' failed to load properly") diff --git a/code/modules/admin/verbs/mapping.dm b/code/modules/admin/verbs/mapping.dm index ba8661a6db..5b470e236f 100644 --- a/code/modules/admin/verbs/mapping.dm +++ b/code/modules/admin/verbs/mapping.dm @@ -215,9 +215,9 @@ var/list/admin_verbs_debug_mapping = list( if(i*10+j <= atom_list.len) temp_atom = atom_list[i*10+j] line += " no.[i+10+j]@\[[temp_atom.x], [temp_atom.y], [temp_atom.z]\]; " - world << line*/ + to_chat(world, line)*/ - world << "There are [count] objects of type [type_path] on z-level [num_level]" + to_chat(world, "There are [count] objects of type [type_path] on z-level [num_level]") feedback_add_details("admin_verb","mOBJZ") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/count_objects_all() @@ -242,9 +242,9 @@ var/list/admin_verbs_debug_mapping = list( if(i*10+j <= atom_list.len) temp_atom = atom_list[i*10+j] line += " no.[i+10+j]@\[[temp_atom.x], [temp_atom.y], [temp_atom.z]\]; " - world << line*/ + to_chat(world, line)*/ - world << "There are [count] objects of type [type_path] in the game world" + to_chat(world, "There are [count] objects of type [type_path] in the game world") feedback_add_details("admin_verb","mOBJ") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/maprotation.dm b/code/modules/admin/verbs/maprotation.dm index 91d2869817..5af1fe90af 100644 --- a/code/modules/admin/verbs/maprotation.dm +++ b/code/modules/admin/verbs/maprotation.dm @@ -7,27 +7,27 @@ message_admins("[key_name_admin(usr)] is forcing a random map rotation.") log_admin("[key_name(usr)] is forcing a random map rotation.") ticker.maprotatechecked = 1 - maprotate() + SSmapping.maprotate() /client/proc/adminchangemap() set category = "Server" set name = "Change Map" var/list/maprotatechoices = list() for (var/map in config.maplist) - var/datum/votablemap/VM = config.maplist[map] - var/mapname = VM.friendlyname + var/datum/map_config/VM = config.maplist[map] + var/mapname = VM.map_name if (VM == config.defaultmap) mapname += " (Default)" - if (VM.minusers > 0 || VM.maxusers > 0) + if (VM.config_min_users > 0 || VM.config_max_users > 0) mapname += " \[" - if (VM.minusers > 0) - mapname += "[VM.minusers]" + if (VM.config_min_users > 0) + mapname += "[VM.config_min_users]" else mapname += "0" mapname += "-" - if (VM.maxusers > 0) - mapname += "[VM.maxusers]" + if (VM.config_max_users > 0) + mapname += "[VM.config_max_users]" else mapname += "inf" mapname += "\]" @@ -37,8 +37,8 @@ if (!chosenmap) return ticker.maprotatechecked = 1 - var/datum/votablemap/VM = maprotatechoices[chosenmap] - message_admins("[key_name_admin(usr)] is changing the map to [VM.name]([VM.friendlyname])") - log_admin("[key_name(usr)] is changing the map to [VM.name]([VM.friendlyname])") - if (changemap(VM) == 0) - message_admins("[key_name_admin(usr)] has changed the map to [VM.name]([VM.friendlyname])") \ No newline at end of file + var/datum/map_config/VM = maprotatechoices[chosenmap] + message_admins("[key_name_admin(usr)] is changing the map to [VM.map_name]") + log_admin("[key_name(usr)] is changing the map to [VM.map_name]") + if (SSmapping.changemap(VM) == 0) + message_admins("[key_name_admin(usr)] has changed the map to [VM.map_name]") \ No newline at end of file diff --git a/code/modules/admin/verbs/massmodvar.dm b/code/modules/admin/verbs/massmodvar.dm index 9419883f59..764838b011 100644 --- a/code/modules/admin/verbs/massmodvar.dm +++ b/code/modules/admin/verbs/massmodvar.dm @@ -38,7 +38,7 @@ var/var_value = O.vars[variable] if(variable in VVckey_edit) - src << "It's forbidden to mass-modify ckeys. It'll crash everyone's client you dummy." + to_chat(src, "It's forbidden to mass-modify ckeys. It'll crash everyone's client you dummy.") return if(variable in VVlocked) if(!check_rights(R_DEBUG)) @@ -56,11 +56,11 @@ default = vv_get_class(var_value) if(isnull(default)) - src << "Unable to determine variable type." + to_chat(src, "Unable to determine variable type.") else - src << "Variable appears to be [uppertext(default)]." + to_chat(src, "Variable appears to be [uppertext(default)].") - src << "Variable contains: [var_value]" + to_chat(src, "Variable contains: [var_value]") if(default == VV_NUM) var/dir_text = "" @@ -75,7 +75,7 @@ dir_text += "WEST" if(dir_text) - src << "If a direction, direction is: [dir_text]" + to_chat(src, "If a direction, direction is: [dir_text]") var/value = vv_get_value(default_class = default) var/new_value = value["value"] @@ -97,9 +97,9 @@ switch(class) if(VV_RESTORE_DEFAULT) - src << "Finding items..." + to_chat(src, "Finding items...") var/list/items = get_all_of_type(O.type, method) - src << "Changing [items.len] items..." + to_chat(src, "Changing [items.len] items...") for(var/thing in items) if (!thing) continue @@ -123,9 +123,9 @@ for(var/V in varsvars) new_value = replacetext(new_value,"\[[V]]","[O.vars[V]]") - src << "Finding items..." + to_chat(src, "Finding items...") var/list/items = get_all_of_type(O.type, method) - src << "Changing [items.len] items..." + to_chat(src, "Changing [items.len] items...") for(var/thing in items) if (!thing) continue @@ -151,9 +151,9 @@ many = FALSE var/type = value["type"] - src << "Finding items..." + to_chat(src, "Finding items...") var/list/items = get_all_of_type(O.type, method) - src << "Changing [items.len] items..." + to_chat(src, "Changing [items.len] items...") for(var/thing in items) if (!thing) continue @@ -169,9 +169,9 @@ CHECK_TICK else - src << "Finding items..." + to_chat(src, "Finding items...") var/list/items = get_all_of_type(O.type, method) - src << "Changing [items.len] items..." + to_chat(src, "Changing [items.len] items...") for(var/thing in items) if (!thing) continue @@ -185,13 +185,13 @@ var/count = rejected+accepted if (!count) - src << "No objects found" + to_chat(src, "No objects found") return if (!accepted) - src << "Every object rejected your edit" + to_chat(src, "Every object rejected your edit") return if (rejected) - src << "[rejected] out of [count] objects rejected your edit" + to_chat(src, "[rejected] out of [count] objects rejected your edit") log_world("### MassVarEdit by [src]: [O.type] (A/R [accepted]/[rejected]) [variable]=[html_encode("[O.vars[variable]]")]([list2params(value)])") log_admin("[key_name(src)] mass modified [original_name]'s [variable] to [O.vars[variable]] ([accepted] objects modified)") diff --git a/code/modules/admin/verbs/modifyvariables.dm b/code/modules/admin/verbs/modifyvariables.dm index 9829747a0b..d5ec71b3d3 100644 --- a/code/modules/admin/verbs/modifyvariables.dm +++ b/code/modules/admin/verbs/modifyvariables.dm @@ -335,7 +335,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width L[var_value] = mod_list_add_ass(O) //hehe if (O) if (O.vv_edit_var(objectvar, L) == FALSE) - src << "Your edit was rejected by the object." + to_chat(src, "Your edit was rejected by the object.") return log_world("### ListVarEdit by [src]: [(O ? O.type : "/list")] [objectvar]: ADDED=[var_value]") log_admin("[key_name(src)] modified [original_name]'s [objectvar]: ADDED=[var_value]") @@ -345,7 +345,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width if(!check_rights(R_VAREDIT)) return if(!istype(L, /list)) - src << "Not a List." + to_chat(src, "Not a List.") return if(L.len > 1000) @@ -378,7 +378,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width L = L.Copy() listclearnulls(L) if (!O.vv_edit_var(objectvar, L)) - src << "Your edit was rejected by the object." + to_chat(src, "Your edit was rejected by the object.") return log_world("### ListVarEdit by [src]: [O.type] [objectvar]: CLEAR NULLS") log_admin("[key_name(src)] modified [original_name]'s [objectvar]: CLEAR NULLS") @@ -388,7 +388,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width if(variable == "(CLEAR DUPES)") L = uniqueList(L) if (!O.vv_edit_var(objectvar, L)) - src << "Your edit was rejected by the object." + to_chat(src, "Your edit was rejected by the object.") return log_world("### ListVarEdit by [src]: [O.type] [objectvar]: CLEAR DUPES") log_admin("[key_name(src)] modified [original_name]'s [objectvar]: CLEAR DUPES") @@ -398,7 +398,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width if(variable == "(SHUFFLE)") L = shuffle(L) if (!O.vv_edit_var(objectvar, L)) - src << "Your edit was rejected by the object." + to_chat(src, "Your edit was rejected by the object.") return log_world("### ListVarEdit by [src]: [O.type] [objectvar]: SHUFFLE") log_admin("[key_name(src)] modified [original_name]'s [objectvar]: SHUFFLE") @@ -427,9 +427,9 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width default = vv_get_class(variable) - src << "Variable appears to be [uppertext(default)]." + to_chat(src, "Variable appears to be [uppertext(default)].") - src << "Variable contains: [L[index]]" + to_chat(src, "Variable contains: [L[index]]") if(default == VV_NUM) var/dir_text = "" @@ -444,7 +444,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width dir_text += "WEST" if(dir_text) - usr << "If a direction, direction is: [dir_text]" + to_chat(usr, "If a direction, direction is: [dir_text]") var/original_var if(assoc) @@ -475,7 +475,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width L.Cut(index, index+1) if (O) if (O.vv_edit_var(objectvar, L)) - src << "Your edit was rejected by the object." + to_chat(src, "Your edit was rejected by the object.") return log_world("### ListVarEdit by [src]: [O.type] [objectvar]: REMOVED=[html_encode("[original_var]")]") log_admin("[key_name(src)] modified [original_name]'s [objectvar]: REMOVED=[original_var]") @@ -494,7 +494,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width L[index] = new_var if (O) if (O.vv_edit_var(objectvar, L) == FALSE) - src << "Your edit was rejected by the object." + to_chat(src, "Your edit was rejected by the object.") return log_world("### ListVarEdit by [src]: [(O ? O.type : "/list")] [objectvar]: [original_var]=[new_var]") log_admin("[key_name(src)] modified [original_name]'s [objectvar]: [original_var]=[new_var]") @@ -510,7 +510,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width if(param_var_name) if(!param_var_name in O.vars) - src << "A variable with this name ([param_var_name]) doesn't exist in this datum ([O])" + to_chat(src, "A variable with this name ([param_var_name]) doesn't exist in this datum ([O])") return variable = param_var_name @@ -547,11 +547,11 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width var/default = vv_get_class(var_value) if(isnull(default)) - src << "Unable to determine variable type." + to_chat(src, "Unable to determine variable type.") else - src << "Variable appears to be [uppertext(default)]." + to_chat(src, "Variable appears to be [uppertext(default)].") - src << "Variable contains: [var_value]" + to_chat(src, "Variable contains: [var_value]") if(default == VV_NUM) var/dir_text = "" @@ -566,7 +566,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width dir_text += "WEST" if(dir_text) - src << "If a direction, direction is: [dir_text]" + to_chat(src, "If a direction, direction is: [dir_text]") if(autodetect_class && default != VV_NULL) if (default == VV_TEXT) @@ -603,7 +603,7 @@ var/list/VVpixelmovement = list("step_x", "step_y", "bound_height", "bound_width if (O.vv_edit_var(variable, var_new) == FALSE) - src << "Your edit was rejected by the object." + to_chat(src, "Your edit was rejected by the object.") return log_world("### VarEdit by [src]: [O.type] [variable]=[html_encode("[O.vars[variable]]")]") log_admin("[key_name(src)] modified [original_name]'s [variable] to [O.vars[variable]]") diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm index c4034ab2e2..c7aa3982b8 100644 --- a/code/modules/admin/verbs/one_click_antag.dm +++ b/code/modules/admin/verbs/one_click_antag.dm @@ -199,9 +199,9 @@ for(var/i = 0, iThe world before you suddenly glows a brilliant yellow. You hear the whooshing steam and clanking cogs of a billion billion machines, and all at once \ + to_chat(H, "The world before you suddenly glows a brilliant yellow. You hear the whooshing steam and clanking cogs of a billion billion machines, and all at once \ you see the truth. Ratvar, the Clockwork Justiciar, lies derelict and forgotten in an unseen realm, and he has selected you as one of his harbringers. You are now a servant of \ - Ratvar, and you will bring him back." + Ratvar, and you will bring him back.
    ") add_servant_of_ratvar(H, TRUE) ticker.mode.equip_servant(H) candidates.Remove(H) @@ -331,14 +331,14 @@ Commando.mind.objectives += missionobj //Greet the commando - Commando << "You are the [numagents==1?"Deathsquad Officer":"Death Commando"]." + to_chat(Commando, "You are the [numagents==1?"Deathsquad Officer":"Death Commando"].") var/missiondesc = "Your squad is being sent on a mission to [station_name()] by Nanotrasen's Security Division." if(numagents == 1) //If Squad Leader missiondesc += " Lead your squad to ensure the completion of the mission. Board the shuttle when your team is ready." else missiondesc += " Follow orders given to you by your squad leader." missiondesc += "
    Your Mission: [mission]" - Commando << missiondesc + to_chat(Commando, missiondesc) if(config.enforce_human_authority) Commando.set_species(/datum/species/human) @@ -423,8 +423,8 @@ newmob.set_species(/datum/species/human) //Greet the official - newmob << "You are a Centcom Official." - newmob << "
    Central Command is sending you to [station_name()] with the task: [mission]" + to_chat(newmob, "You are a Centcom Official.") + to_chat(newmob, "
    Central Command is sending you to [station_name()] with the task: [mission]") //Logging and cleanup message_admins("Centcom Official [key_name_admin(newmob)] has spawned with the task: [mission]") @@ -520,14 +520,14 @@ ERTOperative.mind.objectives += missionobj //Greet the commando - ERTOperative << "You are [numagents==1?"the Emergency Response Team Commander":"an Emergency Response Officer"]." + to_chat(ERTOperative, "You are [numagents==1?"the Emergency Response Team Commander":"an Emergency Response Officer"].") var/missiondesc = "Your squad is being sent on a Code [alert] mission to [station_name()] by Nanotrasen's Security Division." if(numagents == 1) //If Squad Leader missiondesc += " Lead your squad to ensure the completion of the mission. Avoid civilian casualites when possible. Board the shuttle when your team is ready." else missiondesc += " Follow orders given to you by your commander. Avoid civilian casualites when possible." missiondesc += "
    Your Mission: [mission]" - ERTOperative << missiondesc + to_chat(ERTOperative, missiondesc) if(config.enforce_human_authority) ERTOperative.set_species(/datum/species/human) diff --git a/code/modules/admin/verbs/onlyone.dm b/code/modules/admin/verbs/onlyone.dm index 00e41b0886..6b1c432c78 100644 --- a/code/modules/admin/verbs/onlyone.dm +++ b/code/modules/admin/verbs/onlyone.dm @@ -75,8 +75,8 @@ var/highlander = FALSE antiwelder.icon_state = "bloodhand_right" put_in_hands(antiwelder) - src << "Your [H1.name] cries out for blood. Claim the lives of others, and your own will be restored!\n\ - Activate it in your hand, and it will lead to the nearest target. Attack the nuclear authentication disk with it, and you will store it." + to_chat(src, "Your [H1.name] cries out for blood. Claim the lives of others, and your own will be restored!\n\ + Activate it in your hand, and it will lead to the nearest target. Attack the nuclear authentication disk with it, and you will store it.") /proc/only_me() if(!ticker || !ticker.mode) @@ -94,7 +94,7 @@ var/highlander = FALSE hijack_objective.owner = H.mind H.mind.objectives += hijack_objective - H << "You are the multiverse summoner. Activate your blade to summon copies of yourself from another universe to fight by your side." + to_chat(H, "You are the multiverse summoner. Activate your blade to summon copies of yourself from another universe to fight by your side.") H.mind.announce_objectives() var/datum/gang/multiverse/G = new(src, "[H.real_name]") diff --git a/code/modules/admin/verbs/panicbunker.dm b/code/modules/admin/verbs/panicbunker.dm index ff530656cb..ac31c26071 100644 --- a/code/modules/admin/verbs/panicbunker.dm +++ b/code/modules/admin/verbs/panicbunker.dm @@ -2,7 +2,7 @@ set category = "Server" set name = "Toggle Panic Bunker" if (!config.sql_enabled) - usr << "The Database is not enabled!" + to_chat(usr, "The Database is not enabled!") return config.panic_bunker = (!config.panic_bunker) diff --git a/code/modules/admin/verbs/playsound.dm b/code/modules/admin/verbs/playsound.dm index a0207dd5ea..0841b9cc3b 100644 --- a/code/modules/admin/verbs/playsound.dm +++ b/code/modules/admin/verbs/playsound.dm @@ -13,7 +13,7 @@ var/sound/admin_sound var/freq = 1 if(SSevent.holidays && SSevent.holidays[APRIL_FOOLS]) freq = pick(0.5, 0.7, 0.8, 0.85, 0.9, 0.95, 1.1, 1.2, 1.4, 1.6, 2.0, 2.5) - src << "You feel the Honkmother messing with your song..." + to_chat(src, "You feel the Honkmother messing with your song...") var/sound/admin_sound = new() admin_sound.file = S @@ -23,11 +23,11 @@ var/sound/admin_sound admin_sound.wait = 1 admin_sound.repeat = 0 admin_sound.status = SOUND_STREAM - + for(var/mob/M in player_list) if(M.client.prefs.toggles & SOUND_MIDI) M << admin_sound - + feedback_add_details("admin_verb","PGS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/admin/verbs/possess.dm b/code/modules/admin/verbs/possess.dm index d0adc45618..ed677ef8e8 100644 --- a/code/modules/admin/verbs/possess.dm +++ b/code/modules/admin/verbs/possess.dm @@ -4,7 +4,7 @@ if(istype(O,/obj/singularity)) if(config.forbid_singulo_possession) - usr << "It is forbidden to possess singularities." + to_chat(usr, "It is forbidden to possess singularities.") return var/turf/T = get_turf(O) diff --git a/code/modules/admin/verbs/pray.dm b/code/modules/admin/verbs/pray.dm index b8593ff877..eb772f5174 100644 --- a/code/modules/admin/verbs/pray.dm +++ b/code/modules/admin/verbs/pray.dm @@ -3,7 +3,7 @@ set name = "Pray" if(say_disabled) //This is here to try to identify lag problems - usr << "Speech is currently admin-disabled." + to_chat(usr, "Speech is currently admin-disabled.") return msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN) @@ -12,7 +12,7 @@ log_prayer("[src.key]/([src.name]): [msg]") if(usr.client) if(usr.client.prefs.muted & MUTE_PRAY) - usr << "You cannot pray (muted)." + to_chat(usr, "You cannot pray (muted).") return if(src.client.handle_spam_prevention(msg,MUTE_PRAY)) return @@ -37,11 +37,11 @@ for(var/client/C in admins) if(C.prefs.chat_toggles & CHAT_PRAYER) - C << msg + to_chat(C, msg) if(C.prefs.toggles & SOUND_PRAYERS) if(usr.job == "Chaplain") C << 'sound/effects/pray.ogg' - usr << "Your prayers have been received by the gods." + to_chat(usr, "Your prayers have been received by the gods.") feedback_add_details("admin_verb","PR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //log_admin("HELP: [key_name(src)]: [msg]") @@ -53,7 +53,7 @@ [ADMIN_FULLMONTY(Sender)] [ADMIN_BSA(Sender)] \ [ADMIN_CENTCOM_REPLY(Sender)]:
    \ [msg]" - admins << msg + to_chat(admins, msg) for(var/obj/machinery/computer/communications/C in machines) C.overrideCooldown() @@ -64,7 +64,7 @@ [ADMIN_FULLMONTY(Sender)] [ADMIN_BSA(Sender)] \ [ADMIN_SYNDICATE_REPLY(Sender)]:
    \ [msg]" - admins << msg + to_chat(admins, msg) for(var/obj/machinery/computer/communications/C in machines) C.overrideCooldown() @@ -76,6 +76,6 @@ [ADMIN_CENTCOM_REPLY(Sender)] \ [ADMIN_SET_SD_CODE]: \ [msg]" - admins << msg + to_chat(admins, msg) for(var/obj/machinery/computer/communications/C in machines) C.overrideCooldown() diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index 616d562d59..73df3e3a71 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -2,7 +2,7 @@ set category = null set name = "Drop Everything" if(!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/confirm = alert(src, "Make [M] drop everything?", "Message", "Yes", "No") @@ -26,7 +26,7 @@ if(!ismob(M)) return if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return message_admins("[key_name_admin(src)] has started answering [key_name(M.key, 0, 0)]'s prayer.") @@ -38,7 +38,7 @@ if(usr) if (usr.client) if(usr.client.holder) - M << "You hear a voice in your head... [msg]" + to_chat(M, "You hear a voice in your head... [msg]") log_admin("SubtlePM: [key_name(usr)] -> [key_name(M)] : [msg]") message_admins(" SubtleMessage: [key_name_admin(usr)] -> [key_name_admin(M)] : [msg]") @@ -49,14 +49,14 @@ set name = "Global Narrate" if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/msg = input("Message:", text("Enter the text you wish to appear to everyone:")) as text if (!msg) return - world << "[msg]" + to_chat(world, "[msg]") log_admin("GlobalNarrate: [key_name(usr)] : [msg]") message_admins("[key_name_admin(usr)] Sent a global narrate") feedback_add_details("admin_verb","GLN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -66,7 +66,7 @@ set name = "Direct Narrate" if(!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return if(!M) @@ -80,7 +80,7 @@ if( !msg ) return - M << msg + to_chat(M, msg) log_admin("DirectNarrate: [key_name(usr)] to ([M.name]/[M.key]): [msg]") message_admins(" DirectNarrate: [key_name(usr)] to ([M.name]/[M.key]): [msg]
    ") feedback_add_details("admin_verb","DIRN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -90,7 +90,7 @@ set name = "Local Narrate" if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return if(!A) return @@ -101,7 +101,7 @@ if (!msg) return for(var/mob/M in view(range,A)) - M << msg + to_chat(M, msg) log_admin("LocalNarrate: [key_name(usr)] at ([get_area(A)]): [msg]") message_admins(" LocalNarrate: [key_name_admin(usr)] at ([get_area(A)]): [msg]
    ") @@ -111,10 +111,10 @@ set category = "Special Verbs" set name = "Godmode" if(!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return M.status_flags ^= GODMODE - usr << "Toggled [(M.status_flags & GODMODE) ? "ON" : "OFF"]" + to_chat(usr, "Toggled [(M.status_flags & GODMODE) ? "ON" : "OFF"]") log_admin("[key_name(usr)] has toggled [key_name(M)]'s nodamage to [(M.status_flags & GODMODE) ? "On" : "Off"]") message_admins("[key_name_admin(usr)] has toggled [key_name_admin(M)]'s nodamage to [(M.status_flags & GODMODE) ? "On" : "Off"]") @@ -172,7 +172,7 @@ log_admin("SPAM AUTOMUTE: [muteunmute] [key_name(whom)] from [mute_string]") message_admins("SPAM AUTOMUTE: [muteunmute] [key_name_admin(whom)] from [mute_string].") if(C) - C << "You have been [muteunmute] from [mute_string] by the SPAM AUTOMUTE system. Contact an admin." + to_chat(C, "You have been [muteunmute] from [mute_string] by the SPAM AUTOMUTE system. Contact an admin.") feedback_add_details("admin_verb","AUTOMUTE") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return @@ -186,7 +186,7 @@ log_admin("[key_name(usr)] has [muteunmute] [key_name(whom)] from [mute_string]") message_admins("[key_name_admin(usr)] has [muteunmute] [key_name_admin(whom)] from [mute_string].") if(C) - C << "You have been [muteunmute] from [mute_string] by [key_name(usr, include_name = FALSE)]." + to_chat(C, "You have been [muteunmute] from [mute_string] by [key_name(usr, include_name = FALSE)].") feedback_add_details("admin_verb","MUTE") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -207,7 +207,7 @@ if(candidates.len) ckey = input("Pick the player you want to respawn as a xeno.", "Suitable Candidates") as null|anything in candidates else - usr << "Error: create_xeno(): no suitable candidates." + to_chat(usr, "Error: create_xeno(): no suitable candidates.") if(!istext(ckey)) return 0 @@ -244,7 +244,7 @@ Traitors and the like can also be revived with the previous role mostly intact. set name = "Respawn Character" set desc = "Respawn a person that has been gibbed/dusted/killed. They must be a ghost for this to work and preferably should not have a body to go back into." if(!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/input = ckey(input(src, "Please specify which key will be respawned.", "Key", "")) if(!input) @@ -257,7 +257,7 @@ Traitors and the like can also be revived with the previous role mostly intact. break if(!G_found)//If a ghost was not found. - usr << "There is no active key like that in the game or the person is not currently a ghost." + to_chat(usr, "There is no active key like that in the game or the person is not currently a ghost.") return if(G_found.mind && !G_found.mind.active) //mind isn't currently in use by someone/something @@ -289,7 +289,7 @@ Traitors and the like can also be revived with the previous role mostly intact. //Now to give them their mind back. G_found.mind.transfer_to(new_xeno) //be careful when doing stuff like this! I've already checked the mind isn't in use new_xeno.key = G_found.key - new_xeno << "You have been fully respawned. Enjoy the game." + to_chat(new_xeno, "You have been fully respawned. Enjoy the game.") message_admins("[key_name_admin(usr)] has respawned [new_xeno.key] as a filthy xeno.") return //all done. The ghost is auto-deleted @@ -299,7 +299,7 @@ Traitors and the like can also be revived with the previous role mostly intact. var/mob/living/carbon/monkey/new_monkey = new(pick(latejoin)) G_found.mind.transfer_to(new_monkey) //be careful when doing stuff like this! I've already checked the mind isn't in use new_monkey.key = G_found.key - new_monkey << "You have been fully respawned. Enjoy the game." + to_chat(new_monkey, "You have been fully respawned. Enjoy the game.") message_admins("[key_name_admin(usr)] has respawned [new_monkey.key] as a filthy xeno.") return //all done. The ghost is auto-deleted @@ -395,11 +395,11 @@ Traitors and the like can also be revived with the previous role mostly intact. data_core.manifest_inject(new_character) if(alert(new_character,"Would you like an active AI to announce this character?",,"No","Yes")=="Yes") - call(/mob/new_player/proc/AnnounceArrival)(new_character, new_character.mind.assigned_role) + AnnounceArrival(new_character, new_character.mind.assigned_role) message_admins("[admin] has respawned [player_key] as [new_character.real_name].") - new_character << "You have been fully respawned. Enjoy the game." + to_chat(new_character, "You have been fully respawned. Enjoy the game.") feedback_add_details("admin_verb","RSPCH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! return new_character @@ -408,7 +408,7 @@ Traitors and the like can also be revived with the previous role mostly intact. set category = "Fun" set name = "Add Custom AI law" if(!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/input = input(usr, "Please enter anything you want the AI to do. Anything. Serious.", "What?", "") as text|null if(!input) @@ -430,7 +430,7 @@ Traitors and the like can also be revived with the previous role mostly intact. set category = "Special Verbs" set name = "Rejuvenate" if(!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return if(!mob) return @@ -447,19 +447,19 @@ Traitors and the like can also be revived with the previous role mostly intact. set category = "Special Verbs" set name = "Create Command Report" if(!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/input = input(usr, "Please enter anything you want. Anything. Serious.", "What?", "") as message|null if(!input) return var/confirm = alert(src, "Do you want to announce the contents of the report to the crew?", "Announce", "Yes", "No") + var/announce_command_report = TRUE if(confirm == "Yes") priority_announce(input, null, 'sound/AI/commandreport.ogg') - else - priority_announce("A report has been downloaded and printed out at all communications consoles.", "Incoming Classified Message", 'sound/AI/commandreport.ogg') + announce_command_report = FALSE - print_command_report(input,"[confirm=="Yes" ? "" : "Classified "][command_name()] Update") + print_command_report(input,"[confirm=="Yes" ? "" : "Classified "][command_name()] Update",announce=announce_command_report) log_admin("[key_name(src)] has created a command report: [input]") message_admins("[key_name_admin(src)] has created a command report") @@ -469,7 +469,7 @@ Traitors and the like can also be revived with the previous role mostly intact. set category = "Special Verbs" set name = "Change Command Name" if(!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/input = input(usr, "Please input a new name for Central Command.", "What?", "") as text|null if(!input) @@ -483,7 +483,7 @@ Traitors and the like can also be revived with the previous role mostly intact. set name = "Delete" if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return if (alert(src, "Are you sure you want to delete:\n[O]\nat ([O.x], [O.y], [O.z])?", "Confirmation", "Yes", "No") == "Yes") @@ -501,17 +501,17 @@ Traitors and the like can also be revived with the previous role mostly intact. set name = "Manage Job Slots" if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return holder.manage_free_slots() feedback_add_details("admin_verb","MFS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/cmd_admin_explosion(atom/O as obj|mob|turf in world) - set category = "Dangerous" + set category = "Special Verbs" set name = "Explosion" if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/devastation = input("Range of total devastation. -1 to none", text("Input")) as num|null @@ -539,11 +539,11 @@ Traitors and the like can also be revived with the previous role mostly intact. return /client/proc/cmd_admin_emp(atom/O as obj|mob|turf in world) - set category = "Dangerous" + set category = "Special Verbs" set name = "EM Pulse" if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/heavy = input("Range of heavy pulse.", text("Input")) as num|null @@ -567,7 +567,7 @@ Traitors and the like can also be revived with the previous role mostly intact. set name = "Gib" if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/confirm = alert(src, "Drop a brain?", "Confirm", "Yes", "No","Cancel") @@ -606,7 +606,7 @@ Traitors and the like can also be revived with the previous role mostly intact. var/list/L = M.get_contents() for(var/t in L) - usr << "[t]" + to_chat(usr, "[t]") feedback_add_details("admin_verb","CC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggle_view_range() @@ -633,7 +633,7 @@ Traitors and the like can also be revived with the previous role mostly intact. return if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/confirm = alert(src, "You sure?", "Confirm", "Yes", "No") @@ -664,29 +664,19 @@ Traitors and the like can also be revived with the previous role mostly intact. return -/client/proc/cmd_admin_attack_log(mob/M in mob_list) - set category = "Special Verbs" - set name = "Attack Log" - - usr << "Attack Log for [mob]" - for(var/t in M.attack_log) - usr << t - feedback_add_details("admin_verb","ATTL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! - - /client/proc/everyone_random() - set category = "Dangerous" + set category = "Fun" set name = "Make Everyone Random" set desc = "Make everyone have a random appearance. You can only use this before rounds!" if(ticker && ticker.mode) - usr << "Nope you can't do this, the game's already started. This only works before rounds!" + to_chat(usr, "Nope you can't do this, the game's already started. This only works before rounds!") return if(config.force_random_names) config.force_random_names = 0 message_admins("Admin [key_name_admin(usr)] has disabled \"Everyone is Special\" mode.") - usr << "Disabled." + to_chat(usr, "Disabled.") return @@ -698,9 +688,9 @@ Traitors and the like can also be revived with the previous role mostly intact. message_admins("Admin [key_name_admin(usr)] has forced the players to have random appearances.") if(notifyplayers == "Yes") - world << "Admin [usr.key] has forced the players to have completely random identities!" + to_chat(world, "Admin [usr.key] has forced the players to have completely random identities!") - usr << "Remember: you can always disable the randomness by using the verb again, assuming the round hasn't started yet." + to_chat(usr, "Remember: you can always disable the randomness by using the verb again, assuming the round hasn't started yet.") config.force_random_names = 1 feedback_add_details("admin_verb","MER") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -712,11 +702,11 @@ Traitors and the like can also be revived with the previous role mostly intact. set desc = "Toggles random events such as meteors, black holes, blob (but not space dust) on/off" if(!config.allow_random_events) config.allow_random_events = 1 - usr << "Random events enabled" + to_chat(usr, "Random events enabled") message_admins("Admin [key_name_admin(usr)] has enabled random events.") else config.allow_random_events = 0 - usr << "Random events disabled" + to_chat(usr, "Random events disabled") message_admins("Admin [key_name_admin(usr)] has disabled random events.") feedback_add_details("admin_verb","TRE") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -727,7 +717,7 @@ Traitors and the like can also be revived with the previous role mostly intact. set desc = "Changes the security level. Announcement only, i.e. setting to Delta won't activate nuke" if (!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return var/level = input("Select security level to change to","Set Security Level") as null|anything in list("green","blue","red","delta") @@ -740,7 +730,7 @@ Traitors and the like can also be revived with the previous role mostly intact. /client/proc/toggle_nuke(obj/machinery/nuclearbomb/N in nuke_list) set name = "Toggle Nuke" - set category = "Dangerous" + set category = "Fun" set popup_menu = 0 if(!check_rights(R_DEBUG)) return @@ -757,24 +747,6 @@ Traitors and the like can also be revived with the previous role mostly intact. message_admins("[ADMIN_LOOKUPFLW(usr)] [N.timing ? "activated" : "deactivated"] a nuke at [ADMIN_COORDJMP(N)].") feedback_add_details("admin_verb","TN") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -/client/proc/reset_latejoin_spawns() - set category = "Debug" - set name = "Remove Latejoin Spawns" - - if(!check_rights(R_DEBUG)) - return - var/confirm = alert(src, "Disable Latejoin spawns??", "Message", "Yes", "No") - if(confirm != "Yes") - return - - latejoin.Cut() - - log_admin("[key_name(usr)] removed latejoin spawnpoints.") - message_admins("[key_name_admin(usr)] removed latejoin spawnpoints.") - - - - var/list/datum/outfit/custom_outfits = list() //Admin created outfits /client/proc/create_outfits() @@ -969,7 +941,7 @@ var/list/datum/outfit/custom_outfits = list() //Admin created outfits var/datum/atom_hud/antag/H = G.ganghud (adding_hud) ? H.add_hud_to(usr) : H.remove_hud_from(usr) - usr << "You toggled your admin antag HUD [adding_hud ? "ON" : "OFF"]." + to_chat(usr, "You toggled your admin antag HUD [adding_hud ? "ON" : "OFF"].") message_admins("[key_name_admin(usr)] toggled their admin antag HUD [adding_hud ? "ON" : "OFF"].") log_admin("[key_name(usr)] toggled their admin antag HUD [adding_hud ? "ON" : "OFF"].") feedback_add_details("admin_verb","TAH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -983,7 +955,7 @@ var/list/datum/outfit/custom_outfits = list() //Admin created outfits M.ui_interact(usr) /client/proc/mass_zombie_infection() - set category = "Dangerous" + set category = "Fun" set name = "Mass Zombie Infection" set desc = "Infects all humans with a latent organ that will zombify \ them on death." @@ -1003,7 +975,7 @@ var/list/datum/outfit/custom_outfits = list() //Admin created outfits feedback_add_details("admin_verb","MZI") /client/proc/mass_zombie_cure() - set category = "Dangerous" + set category = "Fun" set name = "Mass Zombie Cure" set desc = "Removes the zombie infection from all humans, returning them to normal." if(!holder) @@ -1021,7 +993,7 @@ var/list/datum/outfit/custom_outfits = list() //Admin created outfits feedback_add_details("admin_verb","MZC") /client/proc/polymorph_all() - set category = "Dangerous" + set category = "Fun" set name = "Polymorph All" set desc = "Applies the effects of the bolt of change to every single mob." @@ -1109,7 +1081,7 @@ var/list/datum/outfit/custom_outfits = list() //Admin created outfits return if(ON_PURRBATION(H)) return - H << "Something is nya~t right." + to_chat(H, "Something is nya~t right.") H.dna.features["tail_human"] = "Cat" H.dna.features["ears"] = "Cat" H.regenerate_icons() @@ -1120,7 +1092,7 @@ var/list/datum/outfit/custom_outfits = list() //Admin created outfits return if(!ON_PURRBATION(H)) return - H << "You are no longer a cat." + to_chat(H, "You are no longer a cat.") H.dna.features["tail_human"] = "None" H.dna.features["ears"] = "None" H.regenerate_icons() diff --git a/code/modules/admin/verbs/reestablish_db_connection.dm b/code/modules/admin/verbs/reestablish_db_connection.dm index d80ad68c8d..f8daf79da6 100644 --- a/code/modules/admin/verbs/reestablish_db_connection.dm +++ b/code/modules/admin/verbs/reestablish_db_connection.dm @@ -2,7 +2,7 @@ set category = "Special Verbs" set name = "Reestablish DB Connection" if (!config.sql_enabled) - usr << "The Database is not enabled!" + to_chat(usr, "The Database is not enabled!") return if (dbcon && dbcon.IsConnected()) diff --git a/code/modules/admin/verbs/tripAI.dm b/code/modules/admin/verbs/tripAI.dm index c7172750df..b35c8d3ebf 100644 --- a/code/modules/admin/verbs/tripAI.dm +++ b/code/modules/admin/verbs/tripAI.dm @@ -3,18 +3,18 @@ set name = "Create AI Triumvirate" if(ticker.current_state > GAME_STATE_PREGAME) - usr << "This option is currently only usable during pregame. This may change at a later date." + to_chat(usr, "This option is currently only usable during pregame. This may change at a later date.") return var/datum/job/job = SSjob.GetJob("AI") if(!job) - usr << "Unable to locate the AI job" + to_chat(usr, "Unable to locate the AI job") return if(ticker.triai) ticker.triai = 0 - usr << "Only one AI will be spawned at round start." + to_chat(usr, "Only one AI will be spawned at round start.") message_admins("[key_name_admin(usr)] has toggled off triple AIs at round start.") else ticker.triai = 1 - usr << "There will be an AI Triumvirate at round start." + to_chat(usr, "There will be an AI Triumvirate at round start.") message_admins("[key_name_admin(usr)] has toggled on triple AIs at round start.") diff --git a/code/modules/assembly/assembly.dm b/code/modules/assembly/assembly.dm index 797215184a..c5e9e31a07 100644 --- a/code/modules/assembly/assembly.dm +++ b/code/modules/assembly/assembly.dm @@ -39,7 +39,7 @@ /obj/item/device/assembly/proc/is_secured(mob/user) if(!secured) - user << "The [name] is unsecured!" + to_chat(user, "The [name] is unsecured!") return 0 return 1 @@ -87,15 +87,15 @@ if((!A.secured) && (!secured)) holder = new/obj/item/device/assembly_holder(get_turf(src)) holder.assemble(src,A,user) - user << "You attach and secure \the [A] to \the [src]!" + to_chat(user, "You attach and secure \the [A] to \the [src]!") else - user << "Both devices must be in attachable mode to be attached together." + to_chat(user, "Both devices must be in attachable mode to be attached together.") return if(istype(W, /obj/item/weapon/screwdriver)) if(toggle_secure()) - user << "\The [src] is ready!" + to_chat(user, "\The [src] is ready!") else - user << "\The [src] can now be attached!" + to_chat(user, "\The [src] can now be attached!") return ..() @@ -103,9 +103,9 @@ /obj/item/device/assembly/examine(mob/user) ..() if(secured) - user << "\The [src] is secured and ready to be used." + to_chat(user, "\The [src] is secured and ready to be used.") else - user << "\The [src] can be attached to other things." + to_chat(user, "\The [src] can be attached to other things.") /obj/item/device/assembly/attack_self(mob/user) diff --git a/code/modules/assembly/bomb.dm b/code/modules/assembly/bomb.dm index 1017b5af82..481e692a5d 100644 --- a/code/modules/assembly/bomb.dm +++ b/code/modules/assembly/bomb.dm @@ -30,7 +30,7 @@ return if(istype(W, /obj/item/weapon/wrench) && !status) //This is basically bomb assembly code inverted. apparently it works. - user << "You disassemble [src]." + to_chat(user, "You disassemble [src].") bombassembly.loc = user.loc bombassembly.master = null @@ -47,11 +47,11 @@ status = 1 bombers += "[key_name(user)] welded a single tank bomb. Temp: [bombtank.air_contents.temperature-T0C]" message_admins("[key_name_admin(user)] welded a single tank bomb. Temp: [bombtank.air_contents.temperature-T0C]") - user << "A pressure hole has been bored to [bombtank] valve. \The [bombtank] can now be ignited." + to_chat(user, "A pressure hole has been bored to [bombtank] valve. \The [bombtank] can now be ignited.") else status = 0 bombers += "[key_name(user)] unwelded a single tank bomb. Temp: [bombtank.air_contents.temperature-T0C]" - user << "The hole has been closed." + to_chat(user, "The hole has been closed.") add_fingerprint(user) ..() diff --git a/code/modules/assembly/doorcontrol.dm b/code/modules/assembly/doorcontrol.dm index 98664cf42d..14ad9a6c3b 100644 --- a/code/modules/assembly/doorcontrol.dm +++ b/code/modules/assembly/doorcontrol.dm @@ -11,7 +11,7 @@ /obj/item/device/assembly/control/examine(mob/user) ..() if(id) - user << "Its channel ID is '[id]'." + to_chat(user, "Its channel ID is '[id]'.") /obj/item/device/assembly/control/activate() diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm index 1625708c8e..3a987633dd 100644 --- a/code/modules/assembly/flash.dm +++ b/code/modules/assembly/flash.dm @@ -92,12 +92,12 @@ terrible_conversion_proc(M, user) M.Weaken(rand(4,6)) visible_message("[user] blinds [M] with the flash!") - user << "You blind [M] with the flash!" - M << "[user] blinds you with the flash!" + to_chat(user, "You blind [M] with the flash!") + to_chat(M, "[user] blinds you with the flash!") else visible_message("[user] fails to blind [M] with the flash!") - user << "You fail to blind [M] with the flash!" - M << "[user] fails to blind you with the flash!" + to_chat(user, "You fail to blind [M] with the flash!") + to_chat(M, "[user] fails to blind you with the flash!") else if(M.flash_act()) M.confused += power @@ -160,11 +160,11 @@ resisted = 1 if(resisted) - user << "This mind seems resistant to the flash!" + to_chat(user, "This mind seems resistant to the flash!") else - user << "They must be conscious before you can convert them!" + to_chat(user, "They must be conscious before you can convert them!") else - user << "This mind is so vacant that it is not susceptible to influence!" + to_chat(user, "This mind is so vacant that it is not susceptible to influence!") /obj/item/device/assembly/flash/cyborg @@ -199,7 +199,7 @@ /obj/item/device/assembly/flash/armimplant/burn_out() if(I && I.owner) - I.owner << "Your photon projector implant overheats and deactivates!" + to_chat(I.owner, "Your photon projector implant overheats and deactivates!") I.Retract() overheat = FALSE addtimer(CALLBACK(src, .proc/cooldown), flashcd * 2) @@ -207,7 +207,7 @@ /obj/item/device/assembly/flash/armimplant/try_use_flash(mob/user = null) if(overheat) if(I && I.owner) - I.owner << "Your photon projector is running too hot to be used again so quickly!" + to_chat(I.owner, "Your photon projector is running too hot to be used again so quickly!") return FALSE overheat = TRUE addtimer(CALLBACK(src, .proc/cooldown), flashcd) @@ -247,10 +247,10 @@ if(istype(W, /obj/item/device/assembly/flash/handheld)) var/obj/item/device/assembly/flash/handheld/flash = W if(flash.crit_fail) - user << "No sense replacing it with a broken bulb." + to_chat(user, "No sense replacing it with a broken bulb.") return else - user << "You begin to replace the bulb." + to_chat(user, "You begin to replace the bulb.") if(do_after(user, 20, target = src)) if(flash.crit_fail || !flash || QDELETED(flash)) return diff --git a/code/modules/assembly/holder.dm b/code/modules/assembly/holder.dm index 8850bebceb..32c2c96894 100644 --- a/code/modules/assembly/holder.dm +++ b/code/modules/assembly/holder.dm @@ -100,7 +100,7 @@ /obj/item/device/assembly_holder/attack_self(mob/user) src.add_fingerprint(user) if(!a_left || !a_right) - user << "Assembly part missing!" + to_chat(user, "Assembly part missing!") return if(istype(a_left,a_right.type))//If they are the same type it causes issues due to window code switch(alert("Which side would you like to use?",,"Left","Right")) diff --git a/code/modules/assembly/infrared.dm b/code/modules/assembly/infrared.dm index 658eecb437..bf85dcc45b 100644 --- a/code/modules/assembly/infrared.dm +++ b/code/modules/assembly/infrared.dm @@ -145,7 +145,7 @@ /obj/item/device/assembly/infra/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return diff --git a/code/modules/assembly/mousetrap.dm b/code/modules/assembly/mousetrap.dm index 22ed935ccc..45165f94eb 100644 --- a/code/modules/assembly/mousetrap.dm +++ b/code/modules/assembly/mousetrap.dm @@ -11,9 +11,9 @@ /obj/item/device/assembly/mousetrap/examine(mob/user) ..() if(armed) - user << "The mousetrap is armed!" + to_chat(user, "The mousetrap is armed!") else - user << "The mousetrap is not armed." + to_chat(user, "The mousetrap is not armed.") /obj/item/device/assembly/mousetrap/activate() if(..()) @@ -22,7 +22,7 @@ if(ishuman(usr)) var/mob/living/carbon/human/user = usr if((user.getBrainLoss() >= 60) || user.disabilities & CLUMSY && prob(50)) - user << "Your hand slips, setting off the trigger!" + to_chat(user, "Your hand slips, setting off the trigger!") pulse(0) update_icon() if(usr) @@ -75,7 +75,7 @@ /obj/item/device/assembly/mousetrap/attack_self(mob/living/carbon/human/user) if(!armed) - user << "You arm [src]." + to_chat(user, "You arm [src].") else if(((user.getBrainLoss() >= 60) || user.disabilities & CLUMSY) && prob(50)) var/which_hand = "l_hand" @@ -85,7 +85,7 @@ user.visible_message("[user] accidentally sets off [src], breaking their fingers.", \ "You accidentally trigger [src]!") return - user << "You disarm [src]." + to_chat(user, "You disarm [src].") armed = !armed update_icon() playsound(user.loc, 'sound/weapons/handcuffs.ogg', 30, 1, -3) diff --git a/code/modules/assembly/signaler.dm b/code/modules/assembly/signaler.dm index 5cb6a24e26..342745bfb1 100644 --- a/code/modules/assembly/signaler.dm +++ b/code/modules/assembly/signaler.dm @@ -102,7 +102,7 @@ Code: if(secured && signaler2.secured) code = signaler2.code frequency = signaler2.frequency - user << "You transfer the frequency and code of \the [signaler2.name] to \the [name]" + to_chat(user, "You transfer the frequency and code of \the [signaler2.name] to \the [name]") else ..() diff --git a/code/modules/assembly/voice.dm b/code/modules/assembly/voice.dm index 44140b67c3..db1070e5bb 100644 --- a/code/modules/assembly/voice.dm +++ b/code/modules/assembly/voice.dm @@ -67,7 +67,7 @@ if(istype(W, /obj/item/device/multitool)) mode %= modes.len mode++ - user << "You set [src] into a [modes[mode]] mode." + to_chat(user, "You set [src] into a [modes[mode]] mode.") listening = 0 recorded = "" else diff --git a/code/modules/atmospherics/environmental/LINDA_fire.dm b/code/modules/atmospherics/environmental/LINDA_fire.dm index 4c52f127f5..316e593c6e 100644 --- a/code/modules/atmospherics/environmental/LINDA_fire.dm +++ b/code/modules/atmospherics/environmental/LINDA_fire.dm @@ -49,7 +49,8 @@ icon = 'icons/effects/fire.dmi' icon_state = "1" layer = ABOVE_OPEN_TURF_LAYER - luminosity = 3 + light_range = 3 + light_color = LIGHT_COLOR_FIRE var/volume = 125 var/temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST @@ -147,7 +148,7 @@ return 1 /obj/effect/hotspot/Destroy() - SetLuminosity(0) + set_light(0) SSair.hotspots -= src var/turf/open/T = loc if(istype(T) && T.active_hotspot == src) diff --git a/code/modules/atmospherics/gasmixtures/gas_mixture.dm b/code/modules/atmospherics/gasmixtures/gas_mixture.dm index d3e046c39f..e93dedd232 100644 --- a/code/modules/atmospherics/gasmixtures/gas_mixture.dm +++ b/code/modules/atmospherics/gasmixtures/gas_mixture.dm @@ -149,7 +149,7 @@ var/list/gaslist_cache = null if(thermal_energy() > (PLASMA_BINDING_ENERGY*10)) if(cached_gases["plasma"] && cached_gases["co2"] && cached_gases["plasma"][MOLES] > MINIMUM_HEAT_CAPACITY && cached_gases["co2"][MOLES] > MINIMUM_HEAT_CAPACITY && (cached_gases["plasma"][MOLES]+cached_gases["co2"][MOLES])/total_moles() >= FUSION_PURITY_THRESHOLD)//Fusion wont occur if the level of impurities is too high. //fusion converts plasma and co2 to o2 and n2 (exothermic) - //world << "pre [temperature, [cached_gases["plasma"][MOLES]], [cached_gases["co2"][MOLES]] + //to_chat(world, "pre [temperature, [cached_gases["plasma"][MOLES]], [cached_gases["co2"][MOLES]]) var/old_heat_capacity = heat_capacity() var/carbon_efficency = min(cached_gases["plasma"][MOLES]/cached_gases["co2"][MOLES],MAX_CARBON_EFFICENCY) var/reaction_energy = thermal_energy() @@ -177,7 +177,7 @@ var/list/gaslist_cache = null if(new_heat_capacity > MINIMUM_HEAT_CAPACITY) temperature = max(((temperature*old_heat_capacity + reaction_energy)/new_heat_capacity),TCMB) //Prevents whatever mechanism is causing it to hit negative temperatures. - //world << "post [temperature], [cached_gases["plasma"][MOLES]], [cached_gases["co2"][MOLES]] + //to_chat(world, "post [temperature], [cached_gases["plasma"][MOLES]], [cached_gases["co2"][MOLES]]) */ if(holder) if(cached_gases["freon"]) @@ -192,10 +192,10 @@ var/list/gaslist_cache = null fuel_burnt = 0 if(temperature > FIRE_MINIMUM_TEMPERATURE_TO_EXIST) - //world << "pre [temperature], [cached_gases["o2"][MOLES]], [cached_gases["plasma"][MOLES]]" + //to_chat(world, "pre [temperature], [cached_gases["o2"][MOLES]], [cached_gases["plasma"][MOLES]]") if(fire()) reacting = 1 - //world << "post [temperature], [cached_gases["o2"][MOLES]], [cached_gases["plasma"][MOLES]]" + //to_chat(world, "post [temperature], [cached_gases["o2"][MOLES]], [cached_gases["plasma"][MOLES]]") return reacting diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index 36b8f38a2b..8bb429f29b 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -152,7 +152,7 @@ /obj/machinery/airalarm/ui_status(mob/user) if(user.has_unlimited_silicon_privilege && aidisabled) - user << "AI control has been disabled." + to_chat(user, "AI control has been disabled.") else if(!shorted) return ..() return UI_CLOSE @@ -404,7 +404,7 @@ signal.data["sigtype"] = "command" radio_connection.post_signal(src, signal, RADIO_FROM_AIRALARM) -// world << text("Signal [] Broadcasted to []", command, target) +// to_chat(world, text("Signal [] Broadcasted to []", command, target)) return 1 @@ -631,7 +631,7 @@ if(2) if(istype(W, /obj/item/weapon/wirecutters) && panel_open && wires.is_all_cut()) playsound(src.loc, W.usesound, 50, 1) - user << "You cut the final wires." + to_chat(user, "You cut the final wires.") new /obj/item/stack/cable_coil(loc, 5) buildstage = 1 update_icon() @@ -639,18 +639,18 @@ else if(istype(W, /obj/item/weapon/screwdriver)) // Opening that Air Alarm up. playsound(src.loc, W.usesound, 50, 1) panel_open = !panel_open - user << "The wires have been [panel_open ? "exposed" : "unexposed"]." + to_chat(user, "The wires have been [panel_open ? "exposed" : "unexposed"].") update_icon() return else if(istype(W, /obj/item/weapon/card/id) || istype(W, /obj/item/device/pda))// trying to unlock the interface with an ID card if(stat & (NOPOWER|BROKEN)) - user << "It does nothing!" + to_chat(user, "It does nothing!") else if(src.allowed(usr) && !wires.is_cut(WIRE_IDSCAN)) locked = !locked - user << "You [ locked ? "lock" : "unlock"] the air alarm interface." + to_chat(user, "You [ locked ? "lock" : "unlock"] the air alarm interface.") else - user << "Access denied." + to_chat(user, "Access denied.") return else if(panel_open && is_wire_tool(W)) wires.interact(user) @@ -672,14 +672,14 @@ if(istype(W, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/cable = W if(cable.get_amount() < 5) - user << "You need five lengths of cable to wire the fire alarm!" + to_chat(user, "You need five lengths of cable to wire the fire alarm!") return user.visible_message("[user.name] wires the air alarm.", \ "You start wiring the air alarm...") if (do_after(user, 20, target = src)) if (cable.get_amount() >= 5 && buildstage == 1) cable.use(5) - user << "You wire the air alarm." + to_chat(user, "You wire the air alarm.") wires.repair() aidisabled = 0 locked = 1 @@ -692,14 +692,14 @@ if(0) if(istype(W, /obj/item/weapon/electronics/airalarm)) if(user.temporarilyRemoveItemFromInventory(W)) - user << "You insert the circuit." + to_chat(user, "You insert the circuit.") buildstage = 1 update_icon() qdel(W) return if(istype(W, /obj/item/weapon/wrench)) - user << "You detach \the [src] from the wall." + to_chat(user, "You detach \the [src] from the wall.") playsound(src.loc, W.usesound, 50, 1) new /obj/item/wallframe/airalarm( user.loc ) qdel(src) diff --git a/code/modules/atmospherics/machinery/atmosmachinery.dm b/code/modules/atmospherics/machinery/atmosmachinery.dm index 5a793d0bd9..913d314ec5 100644 --- a/code/modules/atmospherics/machinery/atmosmachinery.dm +++ b/code/modules/atmospherics/machinery/atmosmachinery.dm @@ -127,7 +127,7 @@ Pipelines + Other Objects -> Pipe network if(can_unwrench(user)) var/turf/T = get_turf(src) if (level==1 && isturf(T) && T.intact) - user << "You must remove the plating first!" + to_chat(user, "You must remove the plating first!") return 1 var/datum/gas_mixture/int_air = return_air() var/datum/gas_mixture/env_air = loc.return_air() @@ -137,9 +137,9 @@ Pipelines + Other Objects -> Pipe network var/internal_pressure = int_air.return_pressure()-env_air.return_pressure() playsound(src.loc, W.usesound, 50, 1) - user << "You begin to unfasten \the [src]..." + to_chat(user, "You begin to unfasten \the [src]...") if (internal_pressure > 2*ONE_ATMOSPHERE) - user << "As you begin unwrenching \the [src] a gush of air blows in your face... maybe you should reconsider?" + to_chat(user, "As you begin unwrenching \the [src] a gush of air blows in your face... maybe you should reconsider?") unsafe_wrenching = TRUE //Oh dear oh dear if (do_after(user, 20*W.toolspeed, target = src) && !QDELETED(src)) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/circulator.dm b/code/modules/atmospherics/machinery/components/binary_devices/circulator.dm index c6b5e0dd8d..cdba28e6dd 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/circulator.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/circulator.dm @@ -40,7 +40,7 @@ last_pressure_delta = pressure_delta - //world << "pressure_delta = [pressure_delta]; transfer_moles = [transfer_moles];" + //to_chat(world, "pressure_delta = [pressure_delta]; transfer_moles = [transfer_moles];") //Actually transfer the gas var/datum/gas_mixture/removed = air2.remove(transfer_moles) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/passive_gate.dm b/code/modules/atmospherics/machinery/components/binary_devices/passive_gate.dm index f14fc21ab1..fe0716a901 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/passive_gate.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/passive_gate.dm @@ -169,7 +169,7 @@ Passive gate is similar to the regular pump except: /obj/machinery/atmospherics/components/binary/passive_gate/can_unwrench(mob/user) if(..()) if(on) - user << "You cannot unwrench this [src], turn it off first!" + to_chat(user, "You cannot unwrench this [src], turn it off first!") else return 1 diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index 92c3b8c846..8b0faba51c 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -184,7 +184,7 @@ Thus, the two variables affect pump operation are set in New(): var/turf/T = get_turf(src) var/area/A = get_area(src) if(!(stat & NOPOWER) && on) - user << "You cannot unwrench this [src], turn it off first!" + to_chat(user, "You cannot unwrench this [src], turn it off first!") else investigate_log("Pump, [src.name], was unwrenched by [key_name(usr)] at [x], [y], [z], [A]", "atmos") message_admins("Pump, [src.name], was unwrenched by [ADMIN_LOOKUPFLW(user)] at [ADMIN_COORDJMP(T)]") diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index ecdbd35d0d..f8d517eb61 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -181,7 +181,7 @@ Thus, the two variables affect pump operation are set in New(): var/turf/T = get_turf(src) //var/area/A = get_area(src) if(!(stat & NOPOWER) && on) - user << "You cannot unwrench this [src], turn it off first!" + to_chat(user, "You cannot unwrench this [src], turn it off first!") else investigate_log("Volume Pump, [src.name], was unwrenched by [key_name(usr)] at [x], [y], [z], [loc.loc]", "atmos") message_admins("Volume Pump, [src.name], was unwrenched by [ADMIN_LOOKUPFLW(usr)] at [ADMIN_COORDJMP(T)]") diff --git a/code/modules/atmospherics/machinery/components/components_base.dm b/code/modules/atmospherics/machinery/components/components_base.dm index 6fd8ee734b..83f5e2cb6a 100644 --- a/code/modules/atmospherics/machinery/components/components_base.dm +++ b/code/modules/atmospherics/machinery/components/components_base.dm @@ -167,6 +167,6 @@ UI Stuff /obj/machinery/atmospherics/components/ui_status(mob/user) if(allowed(user)) return ..() - user << "Access denied." + to_chat(user, "Access denied.") return UI_CLOSE diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm index db101b81d5..150449d214 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm @@ -232,7 +232,7 @@ return occupant /obj/machinery/atmospherics/components/unary/cryo_cell/container_resist(mob/living/user) - user << "You struggle inside the cryotube, kicking the release with your foot... (This will take around 30 seconds.)" + to_chat(user, "You struggle inside the cryotube, kicking the release with your foot... (This will take around 30 seconds.)") audible_message("You hear a thump from [src].") if(do_after(user, 300)) if(occupant == user) // Check they're still here. @@ -242,11 +242,11 @@ ..() if(occupant) if(on) - user << "Someone's inside [src]!" + to_chat(user, "[occupant] is inside [src]!") else - user << "You can barely make out a form floating in [src]." + to_chat(user, "You can barely make out a form floating in [src].") else - user << "[src] seems empty." + to_chat(user, "[src] seems empty.") /obj/machinery/atmospherics/components/unary/cryo_cell/MouseDrop_T(mob/target, mob/user) if(user.stat || user.lying || !Adjacent(user) || !user.Adjacent(target) || !iscarbon(target) || !user.IsAdvancedToolUser()) @@ -257,7 +257,7 @@ if(istype(I, /obj/item/weapon/reagent_containers/glass)) . = 1 //no afterattack if(beaker) - user << "A beaker is already loaded into [src]!" + to_chat(user, "A beaker is already loaded into [src]!") return if(!user.drop_item()) return diff --git a/code/modules/atmospherics/machinery/components/unary_devices/portables_connector.dm b/code/modules/atmospherics/machinery/components/unary_devices/portables_connector.dm index 8d1c435b10..99e59e0891 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/portables_connector.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/portables_connector.dm @@ -30,7 +30,7 @@ /obj/machinery/atmospherics/components/unary/portables_connector/can_unwrench(mob/user) if(..()) if(connected_device) - user << "You cannot unwrench this [src], detach [connected_device] first!" + to_chat(user, "You cannot unwrench this [src], detach [connected_device] first!") else return 1 diff --git a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm index ee7d5a79db..ca5e496037 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm @@ -57,7 +57,7 @@ newtype = heater name = initial(newtype.name) build_path = initial(newtype.build_path) - user << "You change the circuitboard setting to \"[new_setting]\"." + to_chat(user, "You change the circuitboard setting to \"[new_setting]\".") else return ..() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm index 22e701f8e6..d5a37fa150 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm @@ -248,7 +248,7 @@ var/obj/item/weapon/weldingtool/WT = W if (WT.remove_fuel(0,user)) playsound(loc, WT.usesound, 40, 1) - user << "You begin welding the vent..." + to_chat(user, "You begin welding the vent...") if(do_after(user, 20*W.toolspeed, target = src)) if(!src || !WT.isOn()) return playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1) @@ -268,14 +268,14 @@ /obj/machinery/atmospherics/components/unary/vent_pump/can_unwrench(mob/user) if(..()) if(!(stat & NOPOWER) && on) - user << "You cannot unwrench this [src], turn it off first!" + to_chat(user, "You cannot unwrench this [src], turn it off first!") else return 1 /obj/machinery/atmospherics/components/unary/vent_pump/examine(mob/user) ..() if(welded) - user << "It seems welded shut." + to_chat(user, "It seems welded shut.") /obj/machinery/atmospherics/components/unary/vent_pump/power_change() ..() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm index 455d75d696..fea01d9868 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm @@ -340,7 +340,7 @@ var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0,user)) playsound(loc, WT.usesound, 40, 1) - user << "Now welding the scrubber." + to_chat(user, "Now welding the scrubber.") if(do_after(user, 20*W.toolspeed, target = src)) if(!src || !WT.isOn()) return @@ -361,7 +361,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/can_unwrench(mob/user) if(..()) if (!(stat & NOPOWER) && on) - user << "You cannot unwrench this [src], turn it off first!" + to_chat(user, "You cannot unwrench this [src], turn it off first!") else return 1 diff --git a/code/modules/atmospherics/machinery/other/meter.dm b/code/modules/atmospherics/machinery/other/meter.dm index e058151c6a..f9e3b79ed6 100644 --- a/code/modules/atmospherics/machinery/other/meter.dm +++ b/code/modules/atmospherics/machinery/other/meter.dm @@ -94,13 +94,13 @@ /obj/machinery/meter/examine(mob/user) ..() - user << status() + to_chat(user, status()) /obj/machinery/meter/attackby(obj/item/weapon/W, mob/user, params) if (istype(W, /obj/item/weapon/wrench)) playsound(src.loc, W.usesound, 50, 1) - user << "You begin to unfasten \the [src]..." + to_chat(user, "You begin to unfasten \the [src]...") if (do_after(user, 40*W.toolspeed, target = src)) user.visible_message( \ "[user] unfastens \the [src].", \ @@ -122,7 +122,7 @@ if(stat & (NOPOWER|BROKEN)) return 1 else - usr << status() + to_chat(usr, status()) return 1 /obj/machinery/meter/singularity_pull(S, current_size) diff --git a/code/modules/atmospherics/machinery/portable/canister.dm b/code/modules/atmospherics/machinery/portable/canister.dm index 9b992ce623..54f1c06252 100644 --- a/code/modules/atmospherics/machinery/portable/canister.dm +++ b/code/modules/atmospherics/machinery/portable/canister.dm @@ -204,11 +204,11 @@ if(!WT.remove_fuel(0, user)) return playsound(loc, WT.usesound, 40, 1) - user << "You begin cutting [src] apart..." + to_chat(user, "You begin cutting [src] apart...") if(do_after(user, 30, target = src)) deconstruct(TRUE) else - user << "You cannot slice [src] apart when it isn't broken." + to_chat(user, "You cannot slice [src] apart when it isn't broken.") return 1 else return ..() diff --git a/code/modules/atmospherics/machinery/portable/portable_atmospherics.dm b/code/modules/atmospherics/machinery/portable/portable_atmospherics.dm index d0a0a9822a..9837badf0c 100644 --- a/code/modules/atmospherics/machinery/portable/portable_atmospherics.dm +++ b/code/modules/atmospherics/machinery/portable/portable_atmospherics.dm @@ -101,10 +101,10 @@ else var/obj/machinery/atmospherics/components/unary/portables_connector/possible_port = locate(/obj/machinery/atmospherics/components/unary/portables_connector) in loc if(!possible_port) - user << "Nothing happens." + to_chat(user, "Nothing happens.") return if(!connect(possible_port)) - user << "[name] failed to connect to the port." + to_chat(user, "[name] failed to connect to the port.") return playsound(src.loc, W.usesound, 50, 1) user.visible_message( \ diff --git a/code/modules/atmospherics/machinery/portable/pump.dm b/code/modules/atmospherics/machinery/portable/pump.dm index 4144cf57d0..4ee7fca1b1 100644 --- a/code/modules/atmospherics/machinery/portable/pump.dm +++ b/code/modules/atmospherics/machinery/portable/pump.dm @@ -15,7 +15,7 @@ volume = 1000 -/obj/machinery/portable_atmospherics/pump/New() +/obj/machinery/portable_atmospherics/pump/Initialize() ..() pump = new(src, FALSE) pump.on = TRUE diff --git a/code/modules/awaymissions/capture_the_flag.dm b/code/modules/awaymissions/capture_the_flag.dm index 0310ab5ae3..1758388ed6 100644 --- a/code/modules/awaymissions/capture_the_flag.dm +++ b/code/modules/awaymissions/capture_the_flag.dm @@ -21,7 +21,6 @@ armour_penetration = 1000 resistance_flags = INDESTRUCTIBLE anchored = TRUE - flags = HANDSLOW var/team = WHITE_TEAM var/reset_cooldown = 0 var/obj/effect/ctf/flag_reset/reset @@ -35,6 +34,7 @@ /obj/item/weapon/twohanded/ctf/Initialize() ..() + SET_SECONDARY_FLAG(src, SLOWS_WHILE_IN_HAND) if(!reset) reset = new reset_path(get_turf(src)) @@ -44,15 +44,14 @@ for(var/mob/M in player_list) var/area/mob_area = get_area(M) if(istype(mob_area, /area/ctf)) - M << "\The [src] has been returned \ - to base!" + to_chat(M, "\The [src] has been returned to base!") STOP_PROCESSING(SSobj, src) /obj/item/weapon/twohanded/ctf/attack_hand(mob/living/user) if(!user) return if(team in user.faction) - user << "You can't move your own flag!" + to_chat(user, "You can't move your own flag!") return if(loc == user) if(!user.dropItemToGround(src)) @@ -66,7 +65,7 @@ for(var/mob/M in player_list) var/area/mob_area = get_area(M) if(istype(mob_area, /area/ctf)) - M << "\The [src] has been taken!" + to_chat(M, "\The [src] has been taken!") STOP_PROCESSING(SSobj, src) /obj/item/weapon/twohanded/ctf/dropped(mob/user) @@ -77,7 +76,7 @@ for(var/mob/M in player_list) var/area/mob_area = get_area(M) if(istype(mob_area, /area/ctf)) - M << "\The [src] has been dropped!" + to_chat(M, "\The [src] has been dropped!") anchored = TRUE @@ -117,6 +116,13 @@ desc = "This is where a blue banner used to play capture the flag \ would go." +/proc/toggle_all_ctf(mob/user) + var/ctf_enabled = FALSE + for(var/obj/machinery/capture_the_flag/CTF in machines) + ctf_enabled = CTF.toggle_ctf() + message_admins("[key_name_admin(user)] has [ctf_enabled? "enabled" : "disabled"] CTF!") + notify_ghosts("CTF has been [ctf_enabled? "enabled" : "disabled"]!",'sound/effects/ghost2.ogg') + /obj/machinery/capture_the_flag name = "CTF Controller" desc = "Used for running friendly games of capture the flag." @@ -138,12 +144,14 @@ var/ctf_enabled = FALSE var/ctf_gear = /datum/outfit/ctf var/instagib_gear = /datum/outfit/ctf/instagib - var/list/dead_barricades = list() + + var/list/obj/effect/ctf/dead_barricade/dead_barricades = list() + var/list/obj/structure/barricade/security/ctf/living_barricades = list() var/static/ctf_object_typecache var/static/arena_cleared = FALSE -/obj/machinery/capture_the_flag/New() +/obj/machinery/capture_the_flag/Initialize() ..() if(!ctf_object_typecache) ctf_object_typecache = typecacheof(list( @@ -173,8 +181,8 @@ else // The changes that you've been hit with no shield but not // instantly critted are low, but have some healing. - M.adjustBruteLoss(-1) - M.adjustFireLoss(-1) + M.adjustBruteLoss(-5) + M.adjustFireLoss(-5) /obj/machinery/capture_the_flag/red name = "Red CTF Controller" @@ -192,12 +200,17 @@ /obj/machinery/capture_the_flag/attack_ghost(mob/user) if(ctf_enabled == FALSE) + if(user.client && user.client.holder) + var/response = alert("Enable CTF?", "CTF", "Yes", "No") + if(response == "Yes") + toggle_all_ctf(user) return + if(ticker.current_state < GAME_STATE_PLAYING) return if(user.ckey in team_members) if(user.ckey in recently_dead_ckeys) - user << "It must be more than [respawn_cooldown/10] seconds from your last death to respawn!" + to_chat(user, "It must be more than [respawn_cooldown/10] seconds from your last death to respawn!") return var/client/new_team_member = user.client if(user.mind && user.mind.current) @@ -209,10 +222,10 @@ if(CTF == src || CTF.ctf_enabled == FALSE) continue if(user.ckey in CTF.team_members) - user << "No switching teams while the round is going!" + to_chat(user, "No switching teams while the round is going!") return if(CTF.team_members.len < src.team_members.len) - user << "[src.team] has more team members than [CTF.team]. Try joining [CTF.team] to even things up." + to_chat(user, "[src.team] has more team members than [CTF.team]. Try joining [CTF.team] to even things up.") return team_members |= user.ckey var/client/new_team_member = user.client @@ -254,7 +267,7 @@ for(var/mob/M in player_list) var/area/mob_area = get_area(M) if(istype(mob_area, /area/ctf)) - M << "[user.real_name] has captured \the [flag], scoring a point for [team] team! They now have [points]/[points_to_win] points!" + to_chat(M, "[user.real_name] has captured \the [flag], scoring a point for [team] team! They now have [points]/[points_to_win] points!") if(points >= points_to_win) victory() @@ -262,8 +275,8 @@ for(var/mob/M in mob_list) var/area/mob_area = get_area(M) if(istype(mob_area, /area/ctf)) - M << "[team] team wins!" - M << "The game has been reset! Teams have been cleared. The machines will be active again in 30 seconds." + to_chat(M, "[team] team wins!") + to_chat(M, "The game has been reset! Teams have been cleared. The machines will be active again in 30 seconds.") for(var/obj/item/weapon/twohanded/ctf/W in M) M.dropItemToGround(W) M.dust() @@ -289,9 +302,16 @@ /obj/machinery/capture_the_flag/proc/start_ctf() ctf_enabled = TRUE - for(var/obj/effect/ctf/dead_barricade/ded in dead_barricades) - ded.respawn() + for(var/d in dead_barricades) + var/obj/effect/ctf/dead_barricade/D = d + D.respawn() + dead_barricades.Cut() + + for(var/b in living_barricades) + var/obj/structure/barricade/security/ctf/B = b + B.obj_integrity = B.max_integrity + notify_ghosts("[name] has been activated!", enter_link="(Click to join the [team] team!) or click on the controller directly!", source = src, action=NOTIFY_ATTACK) if(!arena_cleared) @@ -433,6 +453,7 @@ ears = /obj/item/device/radio/headset uniform = /obj/item/clothing/under/syndicate suit = /obj/item/clothing/suit/space/hardsuit/shielded/ctf + toggle_helmet = FALSE // see the whites of their eyes shoes = /obj/item/clothing/shoes/combat gloves = /obj/item/clothing/gloves/combat id = /obj/item/weapon/card/id/syndicate @@ -514,7 +535,7 @@ /obj/structure/trap/ctf/trap_effect(mob/living/L) if(!(src.team in L.faction)) - L << "Stay out of the enemy spawn!" + to_chat(L, "Stay out of the enemy spawn!") L.death() /obj/structure/trap/ctf/red @@ -528,6 +549,18 @@ /obj/structure/barricade/security/ctf name = "barrier" desc = "A barrier. Provides cover in fire fights." + deploy_time = 0 + deploy_message = 0 + +/obj/structure/barricade/security/ctf/Initialize(mapload) + ..() + for(var/obj/machinery/capture_the_flag/CTF in machines) + CTF.living_barricades += src + +/obj/structure/barricade/security/ctf/Destroy() + for(var/obj/machinery/capture_the_flag/CTF in machines) + CTF.living_barricades -= src + . = ..() /obj/structure/barricade/security/ctf/make_debris() new /obj/effect/ctf/dead_barricade(get_turf(src)) @@ -549,7 +582,7 @@ alpha = 255 invisibility = 0 -/obj/effect/ctf/ammo/New() +/obj/effect/ctf/ammo/Initialize(mapload) ..() QDEL_IN(src, AMMO_DROP_LIFETIME) @@ -572,7 +605,7 @@ for(var/obj/item/weapon/gun/G in M) qdel(G) O.equip(M) - M << "Ammunition reloaded!" + to_chat(M, "Ammunition reloaded!") playsound(get_turf(M), 'sound/weapons/shotgunpump.ogg', 50, 1, -1) qdel(src) break @@ -583,7 +616,8 @@ icon = 'icons/obj/objects.dmi' icon_state = "barrier0" -/obj/effect/ctf/dead_barricade/New() +/obj/effect/ctf/dead_barricade/Initialize(mapload) + ..() for(var/obj/machinery/capture_the_flag/CTF in machines) CTF.dead_barricades += src @@ -627,5 +661,13 @@ for(var/mob/M in player_list) var/area/mob_area = get_area(M) if(istype(mob_area, /area/ctf)) - M << "[user.real_name] has captured \the [src], claiming it for [CTF.team]! Go take it back!" + to_chat(M, "[user.real_name] has captured \the [src], claiming it for [CTF.team]! Go take it back!") break + +#undef WHITE_TEAM +#undef RED_TEAM +#undef BLUE_TEAM +#undef FLAG_RETURN_TIME +#undef INSTAGIB_RESPAWN +#undef DEFAULT_RESPAWN +#undef AMMO_DROP_LIFETIME diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index a70e280af4..620633d6dc 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -25,10 +25,10 @@ if(ticker.current_state != GAME_STATE_PLAYING || !loc) return if(!uses) - user << "This spawner is out of charges!" + to_chat(user, "This spawner is out of charges!") return if(jobban_isbanned(user, "lavaland")) - user << "You are jobanned!" + to_chat(user, "You are jobanned!") return var/ghost_role = alert("Become [mob_name]? (Warning, You can no longer be cloned!)",,"Yes","No") if(ghost_role == "No" || !loc) @@ -71,7 +71,7 @@ if(ckey) M.ckey = ckey - M << "[flavour_text]" + to_chat(M, "[flavour_text]") var/datum/mind/MM = M.mind if(objectives) for(var/objective in objectives) diff --git a/code/modules/awaymissions/gateway.dm b/code/modules/awaymissions/gateway.dm index d3aeec4b8f..bb2b4d6793 100644 --- a/code/modules/awaymissions/gateway.dm +++ b/code/modules/awaymissions/gateway.dm @@ -126,10 +126,10 @@ var/obj/machinery/gateway/centerstation/the_gateway = null if(!powered()) return if(!awaygate) - user << "Error: No destination found." + to_chat(user, "Error: No destination found.") return if(world.time < wait) - user << "Error: Warpspace triangulation in progress. Estimated time to completion: [round(((wait - world.time) / 10) / 60)] minutes." + to_chat(user, "Error: Warpspace triangulation in progress. Estimated time to completion: [round(((wait - world.time) / 10) / 60)] minutes.") return for(var/obj/machinery/gateway/G in linked) @@ -166,10 +166,10 @@ var/obj/machinery/gateway/centerstation/the_gateway = null /obj/machinery/gateway/centeraway/attackby(obj/item/device/W, mob/user, params) if(istype(W,/obj/item/device/multitool)) if(calibrated) - user << "\black The gate is already calibrated, there is no work for you to do here." + to_chat(user, "\black The gate is already calibrated, there is no work for you to do here.") return else - user << "Recalibration successful!: \black This gate's systems have been fine tuned. Travel to this gate will now be on target." + to_chat(user, "Recalibration successful!: \black This gate's systems have been fine tuned. Travel to this gate will now be on target.") calibrated = TRUE return @@ -200,7 +200,7 @@ var/obj/machinery/gateway/centerstation/the_gateway = null if(!detect()) return if(!stationgate) - user << "Error: No destination found." + to_chat(user, "Error: No destination found.") return for(var/obj/machinery/gateway/G in linked) @@ -219,7 +219,7 @@ var/obj/machinery/gateway/centerstation/the_gateway = null if(istype(AM, /mob/living/carbon)) var/mob/living/carbon/C = AM for(var/obj/item/weapon/implant/exile/E in C.implants)//Checking that there is an exile implant - AM << "\black The station gate has detected your exile implant and is blocking your entry." + to_chat(AM, "\black The station gate has detected your exile implant and is blocking your entry.") return AM.forceMove(get_step(stationgate.loc, SOUTH)) AM.setDir(SOUTH) diff --git a/code/modules/awaymissions/mission_code/Academy.dm b/code/modules/awaymissions/mission_code/Academy.dm index b546c0d1a3..d3fcaa4493 100644 --- a/code/modules/awaymissions/mission_code/Academy.dm +++ b/code/modules/awaymissions/mission_code/Academy.dm @@ -134,7 +134,7 @@ ..() if(!used) if(!ishuman(user) || !user.mind || (user.mind in ticker.mode.wizards)) - user << "You feel the magic of the dice is restricted to ordinary humans!" + to_chat(user, "You feel the magic of the dice is restricted to ordinary humans!") return if(rigged) effect(user,rigged) @@ -143,7 +143,7 @@ /obj/item/weapon/dice/d20/fate/equipped(mob/user, slot) if(!ishuman(user) || !user.mind || (user.mind in ticker.mode.wizards)) - user << "You feel the magic of the dice is restricted to ordinary humans! You should leave it alone." + to_chat(user, "You feel the magic of the dice is restricted to ordinary humans! You should leave it alone.") user.drop_item() @@ -246,7 +246,7 @@ new /obj/item/weapon/card/id/captains_spare(get_turf(src)) if(19) //Instrinct Resistance - user << "You feel robust." + to_chat(user, "You feel robust.") var/datum/species/S = user.dna.species S.brutemod *= 0.5 S.burnmod *= 0.5 diff --git a/code/modules/awaymissions/mission_code/Cabin.dm b/code/modules/awaymissions/mission_code/Cabin.dm index 3a33c4ac99..358ccc5d85 100644 --- a/code/modules/awaymissions/mission_code/Cabin.dm +++ b/code/modules/awaymissions/mission_code/Cabin.dm @@ -32,10 +32,10 @@ /obj/structure/firepit/proc/toggleFirepit() if(active) - SetLuminosity(8) + set_light(8) icon_state = "firepit-active" else - SetLuminosity(0) + set_light(0) icon_state = "firepit" /obj/structure/firepit/extinguish() diff --git a/code/modules/awaymissions/mission_code/wildwest.dm b/code/modules/awaymissions/mission_code/wildwest.dm index 5ede447068..64d3374320 100644 --- a/code/modules/awaymissions/mission_code/wildwest.dm +++ b/code/modules/awaymissions/mission_code/wildwest.dm @@ -25,18 +25,18 @@ usr.set_machine(src) if(chargesa <= 0) - user << "The Wish Granter lies silent." + to_chat(user, "The Wish Granter lies silent.") return else if(!ishuman(user)) - user << "You feel a dark stirring inside of the Wish Granter, something you want nothing of. Your instincts are better than any man's." + to_chat(user, "You feel a dark stirring inside of the Wish Granter, something you want nothing of. Your instincts are better than any man's.") return else if(is_special_character(user)) - user << "Even to a heart as dark as yours, you know nothing good will come of this. Something instinctual makes you pull away." + to_chat(user, "Even to a heart as dark as yours, you know nothing good will come of this. Something instinctual makes you pull away.") else if (!insistinga) - user << "Your first touch makes the Wish Granter stir, listening to you. Are you really sure you want to do this?" + to_chat(user, "Your first touch makes the Wish Granter stir, listening to you. Are you really sure you want to do this?") insistinga++ else @@ -45,36 +45,36 @@ var/wish = input("You want...","Wish") as null|anything in list("Power","Wealth","Immortality","To Kill","Peace") switch(wish) if("Power") - user << "Your wish is granted, but at a terrible cost..." - user << "The Wish Granter punishes you for your selfishness, claiming your soul and warping your body to match the darkness in your heart." + to_chat(user, "Your wish is granted, but at a terrible cost...") + to_chat(user, "The Wish Granter punishes you for your selfishness, claiming your soul and warping your body to match the darkness in your heart.") user.dna.add_mutation(LASEREYES) user.dna.add_mutation(COLDRES) user.dna.add_mutation(XRAY) user.set_species(/datum/species/shadow) if("Wealth") - user << "Your wish is granted, but at a terrible cost..." - user << "The Wish Granter punishes you for your selfishness, claiming your soul and warping your body to match the darkness in your heart." + to_chat(user, "Your wish is granted, but at a terrible cost...") + to_chat(user, "The Wish Granter punishes you for your selfishness, claiming your soul and warping your body to match the darkness in your heart.") new /obj/structure/closet/syndicate/resources/everything(loc) user.set_species(/datum/species/shadow) if("Immortality") - user << "Your wish is granted, but at a terrible cost..." - user << "The Wish Granter punishes you for your selfishness, claiming your soul and warping your body to match the darkness in your heart." + to_chat(user, "Your wish is granted, but at a terrible cost...") + to_chat(user, "The Wish Granter punishes you for your selfishness, claiming your soul and warping your body to match the darkness in your heart.") user.verbs += /mob/living/carbon/proc/immortality user.set_species(/datum/species/shadow) if("To Kill") - user << "Your wish is granted, but at a terrible cost..." - user << "The Wish Granter punishes you for your wickedness, claiming your soul and warping your body to match the darkness in your heart." + to_chat(user, "Your wish is granted, but at a terrible cost...") + to_chat(user, "The Wish Granter punishes you for your wickedness, claiming your soul and warping your body to match the darkness in your heart.") ticker.mode.traitors += user.mind user.mind.special_role = "traitor" var/datum/objective/hijack/hijack = new hijack.owner = user.mind user.mind.objectives += hijack - user << "Your inhibitions are swept away, the bonds of loyalty broken, you are free to murder as you please!" + to_chat(user, "Your inhibitions are swept away, the bonds of loyalty broken, you are free to murder as you please!") user.mind.announce_objectives() user.set_species(/datum/species/shadow) if("Peace") - user << "Whatever alien sentience that the Wish Granter possesses is satisfied with your wish. There is a distant wailing as the last of the Faithless begin to die, then silence." - user << "You feel as if you just narrowly avoided a terrible fate..." + to_chat(user, "Whatever alien sentience that the Wish Granter possesses is satisfied with your wish. There is a distant wailing as the last of the Faithless begin to die, then silence.") + to_chat(user, "You feel as if you just narrowly avoided a terrible fate...") for(var/mob/living/simple_animal/hostile/faithless/F in mob_list) F.death() @@ -118,13 +118,10 @@ var/mob/living/carbon/C = usr if(!C.stat) - C << "You're not dead yet!" + to_chat(C, "You're not dead yet!") return - C << "Death is not your end!" - - spawn(rand(80,120)) - C.revive(full_heal = 1, admin_revive = 1) - C << "You have regenerated." - C.visible_message("[usr] appears to wake from the dead, having healed all wounds.") - C.update_canmove() - return 1 \ No newline at end of file + if(C.has_status_effect(STATUS_EFFECT_WISH_GRANTERS_GIFT)) + to_chat(C, "You're already resurrecting!") + return + C.apply_status_effect(STATUS_EFFECT_WISH_GRANTERS_GIFT) + return 1 diff --git a/code/modules/awaymissions/signpost.dm b/code/modules/awaymissions/signpost.dm index 5567f0c0cf..62cb49cb87 100644 --- a/code/modules/awaymissions/signpost.dm +++ b/code/modules/awaymissions/signpost.dm @@ -9,7 +9,7 @@ /obj/structure/signpost/New() . = ..() - SetLuminosity(2) + set_light(2) /obj/structure/signpost/attackby(obj/item/weapon/W, mob/user, params) return attack_hand(user) @@ -22,10 +22,9 @@ if(T) var/area/A = get_area(T) user.forceMove(T) - user << "You blink and find yourself \ - in [A.name]." + to_chat(user, "You blink and find yourself in [A.name].") else - user << "Nothing happens. You feel that this is a bad sign." + to_chat(user, "Nothing happens. You feel that this is a bad sign.") if("No") return diff --git a/code/modules/awaymissions/zlevel.dm b/code/modules/awaymissions/zlevel.dm index a470362a2e..19b023fe66 100644 --- a/code/modules/awaymissions/zlevel.dm +++ b/code/modules/awaymissions/zlevel.dm @@ -6,10 +6,10 @@ var/global/list/potentialRandomZlevels = generateMapList(filename = "config/away return if(potentialRandomZlevels && potentialRandomZlevels.len) - world << "Loading away mission..." + to_chat(world, "Loading away mission...") var/map = pick(potentialRandomZlevels) load_new_z_level(map) - world << "Away mission loaded." + to_chat(world, "Away mission loaded.") /proc/reset_gateway_spawns(reset = FALSE) for(var/obj/machinery/gateway/G in world) @@ -28,7 +28,7 @@ var/global/list/potentialRandomZlevels = generateMapList(filename = "config/away /obj/effect/landmark/awaystart/Destroy() awaydestinations -= src - ..() + return ..() /proc/generateMapList(filename) var/list/potentialMaps = list() @@ -60,4 +60,4 @@ var/global/list/potentialRandomZlevels = generateMapList(filename = "config/away potentialMaps.Add(t) - return potentialMaps \ No newline at end of file + return potentialMaps diff --git a/code/modules/cargo/console.dm b/code/modules/cargo/console.dm index 46d3fcfecf..b2a4f064d2 100644 --- a/code/modules/cargo/console.dm +++ b/code/modules/cargo/console.dm @@ -8,6 +8,8 @@ var/safety_warning = "For safety reasons the automated supply shuttle \ cannot transport live organisms, classified nuclear weaponry or \ homing beacons." + + light_color = "#E2853D"//orange /obj/machinery/computer/cargo/request name = "supply request console" diff --git a/code/modules/cargo/export_scanner.dm b/code/modules/cargo/export_scanner.dm index 04b6b50124..b8e18769db 100644 --- a/code/modules/cargo/export_scanner.dm +++ b/code/modules/cargo/export_scanner.dm @@ -11,7 +11,7 @@ /obj/item/device/export_scanner/examine(user) ..() if(!cargo_console) - user << "The [src] is currently not linked to a cargo console." + to_chat(user, "The [src] is currently not linked to a cargo console.") /obj/item/device/export_scanner/afterattack(obj/O, mob/user, proximity) if(!istype(O) || !proximity) @@ -21,17 +21,15 @@ var/obj/machinery/computer/cargo/C = O if(!C.requestonly) cargo_console = C - user << "Scanner linked to [C]." + to_chat(user, "Scanner linked to [C].") else if(!istype(cargo_console)) - user << "You must link [src] to a cargo console first!" + to_chat(user, "You must link [src] to a cargo console first!") else // Before you fix it: // yes, checking manifests is a part of intended functionality. var/price = export_item_and_contents(O, cargo_console.contraband, cargo_console.emagged, dry_run=TRUE) if(price) - user << "Scanned [O], value: [price] \ - credits[O.contents.len ? " (contents included)" : ""]." + to_chat(user, "Scanned [O], value: [price] credits[O.contents.len ? " (contents included)" : ""].") else - user << "Scanned [O], no export value. \ - " + to_chat(user, "Scanned [O], no export value.") diff --git a/code/modules/cargo/exports.dm b/code/modules/cargo/exports.dm index d12141e230..1fb393ba25 100644 --- a/code/modules/cargo/exports.dm +++ b/code/modules/cargo/exports.dm @@ -91,7 +91,7 @@ Credit dupes that require a lot of manual work shouldn't be removed, unless they return FALSE if(!get_cost(O, contr, emag)) return FALSE - if(O.flags & HOLOGRAM) + if(HAS_SECONDARY_FLAG(O, HOLOGRAM)) return FALSE return TRUE diff --git a/code/modules/cargo/packs.dm b/code/modules/cargo/packs.dm index b40a7a938e..9d7e799743 100644 --- a/code/modules/cargo/packs.dm +++ b/code/modules/cargo/packs.dm @@ -345,7 +345,7 @@ /datum/supply_pack/security/armory/ballistic name = "Combat Shotguns Crate" - cost = 4000 + cost = 8000 contains = list(/obj/item/weapon/gun/ballistic/shotgun/automatic/combat, /obj/item/weapon/gun/ballistic/shotgun/automatic/combat, /obj/item/weapon/gun/ballistic/shotgun/automatic/combat, @@ -1006,7 +1006,14 @@ /obj/item/weapon/reagent_containers/food/drinks/beer, /obj/item/weapon/reagent_containers/food/drinks/beer, /obj/item/weapon/reagent_containers/food/drinks/beer, - /obj/item/weapon/reagent_containers/food/drinks/beer) + /obj/item/weapon/reagent_containers/food/drinks/beer, + /obj/item/device/flashlight/glowstick, + /obj/item/device/flashlight/glowstick/red, + /obj/item/device/flashlight/glowstick/blue, + /obj/item/device/flashlight/glowstick/cyan, + /obj/item/device/flashlight/glowstick/orange, + /obj/item/device/flashlight/glowstick/yellow, + /obj/item/device/flashlight/glowstick/pink) crate_name = "party equipment crate" /datum/supply_pack/organic/critter @@ -1567,7 +1574,7 @@ contraband = TRUE cost = 3000 num_contained = 6 - contains = list(/obj/item/weapon/poster/contraband, + contains = list(/obj/item/weapon/poster/random_contraband, /obj/item/weapon/storage/fancy/cigarettes/cigpack_shadyjims, /obj/item/weapon/storage/fancy/cigarettes/cigpack_midori, /obj/item/seeds/ambrosia/deus, @@ -1577,6 +1584,7 @@ /datum/supply_pack/misc/randomised/toys name = "Toy Crate" cost = 5000 // or play the arcade machines ya lazy bum + // TODO make this actually just use the arcade machine loot list num_contained = 5 contains = list(/obj/item/toy/spinningtoy, /obj/item/toy/sword, @@ -1591,7 +1599,8 @@ /obj/item/weapon/coin/antagtoken, /obj/item/stack/tile/fakespace/loaded, /obj/item/weapon/gun/ballistic/shotgun/toy/crossbow, - /obj/item/toy/redbutton) + /obj/item/toy/redbutton, + /obj/item/toy/eightball) crate_name = "toy crate" /datum/supply_pack/misc/autodrobe @@ -1696,7 +1705,12 @@ cost = 12000 special = TRUE contains = list( - /obj/item/weapon/circuitboard/machine/dna_vault + /obj/item/weapon/circuitboard/machine/dna_vault, + /obj/item/device/dna_probe, + /obj/item/device/dna_probe, + /obj/item/device/dna_probe, + /obj/item/device/dna_probe, + /obj/item/device/dna_probe ) crate_name= "dna vault parts crate" @@ -1733,3 +1747,10 @@ /obj/item/weapon/circuitboard/machine/computer/sat_control ) crate_name= "shield control board crate" + +/datum/supply_pack/misc/bicycle + name = "Bicycle" + cost = 10000 + contains = list(/obj/vehicle/bicycle) + crate_name = "Bicycle Crate" + crate_type = /obj/structure/closet/crate/large diff --git a/code/modules/client/asset_cache.dm b/code/modules/client/asset_cache.dm index c5494de290..fb9daf1a91 100644 --- a/code/modules/client/asset_cache.dm +++ b/code/modules/client/asset_cache.dm @@ -89,7 +89,7 @@ You can set verify to TRUE if you want send() to sleep until the client has the if(!unreceived || !unreceived.len) return 0 if (unreceived.len >= ASSET_CACHE_TELL_CLIENT_AMOUNT) - client << "Sending Resources..." + to_chat(client, "Sending Resources...") for(var/asset in unreceived) if (asset in SSasset.cache) client << browse_rsc(SSasset.cache[asset], asset) diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index 66eacef195..c2d73fc019 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -31,7 +31,7 @@ // asset_cache if(href_list["asset_cache_confirm_arrival"]) - //src << "ASSET JOB [href_list["asset_cache_confirm_arrival"]] ARRIVED." + //to_chat(src, "ASSET JOB [href_list["asset_cache_confirm_arrival"]] ARRIVED.") var/job = text2num(href_list["asset_cache_confirm_arrival"]) //because we skip the limiter, we have to make sure this is a valid arrival and not somebody tricking us // into letting append to a list without limit. @@ -53,8 +53,8 @@ topiclimiter[ADMINSWARNED_AT] = minute msg += " Administrators have been informed." log_game("[key_name(src)] Has hit the per-minute topic limit of [config.minutetopiclimit] topic calls in a given game minute") - message_admins("[key_name_admin(src)] [ADMIN_KICK(usr)] Has hit the per-minute topic limit of [config.minutetopiclimit] topic calls in a given game minute") - src << "[msg]" + message_admins("[key_name_admin(src)] [ADMIN_FLW(usr)] [ADMIN_KICK(usr)] Has hit the per-minute topic limit of [config.minutetopiclimit] topic calls in a given game minute") + to_chat(src, "[msg]") return if (!holder && config.secondtopiclimit) @@ -66,7 +66,7 @@ topiclimiter[SECOND_COUNT] = 0 topiclimiter[SECOND_COUNT] += 1 if (topiclimiter[SECOND_COUNT] > config.secondtopiclimit) - src << "Your previous action was ignored because you've done too many in a second" + to_chat(src, "Your previous action was ignored because you've done too many in a second") return if(href_list["mentor_msg"]) @@ -79,7 +79,7 @@ //Logs all hrefs if(config && config.log_hrefs && href_logfile) - href_logfile << "[time2text(world.timeofday,"hh:mm")] [src] (usr:[usr]) || [hsrc ? "[hsrc] " : ""][href]
    " + href_logfile << "[time_stamp(show_ds = TRUE)] [src] (usr:[usr]) || [hsrc ? "[hsrc] " : ""][href]
    " // Admin PM if(href_list["priv_msg"]) @@ -108,7 +108,7 @@ /client/proc/is_content_unlocked() if(!prefs.unlock_content) - src << "Become a BYOND member to access member-perks and features, as well as support the engine that makes this game possible. Only 10 bucks for 3 months! Click Here to find out more." + to_chat(src, "Become a BYOND member to access member-perks and features, as well as support the engine that makes this game possible. Only 10 bucks for 3 months! Click Here to find out more.") return 0 return 1 @@ -116,11 +116,11 @@ if(config.automute_on && !holder && src.last_message == message) src.last_message_count++ if(src.last_message_count >= SPAM_TRIGGER_AUTOMUTE) - src << "You have exceeded the spam filter limit for identical messages. An auto-mute was applied." + to_chat(src, "You have exceeded the spam filter limit for identical messages. An auto-mute was applied.") cmd_admin_mute(src, mute_type, 1) return 1 if(src.last_message_count >= SPAM_TRIGGER_WARNING) - src << "You are nearing the spam filter limit for identical messages." + to_chat(src, "You are nearing the spam filter limit for identical messages.") return 0 else last_message = message @@ -130,13 +130,13 @@ //This stops files larger than UPLOAD_LIMIT being sent from client to server via input(), client.Import() etc. /client/AllowUpload(filename, filelength) if(filelength > UPLOAD_LIMIT) - src << "Error: AllowUpload(): File Upload too large. Upload Limit: [UPLOAD_LIMIT/1024]KiB." + to_chat(src, "Error: AllowUpload(): File Upload too large. Upload Limit: [UPLOAD_LIMIT/1024]KiB.") return 0 /* //Don't need this at the moment. But it's here if it's needed later. //Helps prevent multiple files being uploaded at once. Or right after eachother. var/time_to_wait = fileaccess_timer - world.time if(time_to_wait > 0) - src << "Error: AllowUpload(): Spam prevention. Please wait [round(time_to_wait/10)] seconds." + to_chat(src, "Error: AllowUpload(): Spam prevention. Please wait [round(time_to_wait/10)] seconds.") return 0 fileaccess_timer = world.time + FTPDELAY */ return 1 @@ -174,15 +174,15 @@ var/next_external_rsc = 0 if(localhost_rank) var/datum/admins/localhost_holder = new(localhost_rank, ckey) localhost_holder.associate(src) - if(protected_config.autoadmin) + if(config.autoadmin) if(!admin_datums[ckey]) var/datum/admin_rank/autorank for(var/datum/admin_rank/R in admin_ranks) - if(R.name == protected_config.autoadmin_rank) + if(R.name == config.autoadmin_rank) autorank = R break if(!autorank) - world << "Autoadmin rank not found" + to_chat(world, "Autoadmin rank not found") else var/datum/admins/D = new(autorank, ckey) admin_datums[ckey] = D @@ -197,10 +197,6 @@ var/next_external_rsc = 0 verbs += /client/proc/cmd_mentor_say verbs += /client/proc/show_mentor_memo mentors += src - /* - if(check_rights(R_ADMIN)) - if(ahelp_count(0) > 0) - list_ahelps(src, 0)*/ //preferences datum - also holds some persistent data for the client (because we may as well keep these datums to a minimum) prefs = preferences_datums[ckey] @@ -222,30 +218,30 @@ var/next_external_rsc = 0 connection_timeofday = world.timeofday winset(src, null, "command=\".configure graphics-hwmode on\"") if (byond_version < config.client_error_version) //Out of date client. - src << "Your version of byond is too old:" - src << config.client_error_message - src << "Your version: [byond_version]" - src << "Required version: [config.client_error_version] or later" - src << "Visit http://www.byond.com/download/ to get the latest version of byond." + to_chat(src, "Your version of byond is too old:") + to_chat(src, config.client_error_message) + to_chat(src, "Your version: [byond_version]") + to_chat(src, "Required version: [config.client_error_version] or later") + to_chat(src, "Visit http://www.byond.com/download/ to get the latest version of byond.") if (holder) - src << "Because you are an admin, you are being allowed to walk past this limitation, But it is still STRONGLY suggested you upgrade" + to_chat(src, "Because you are an admin, you are being allowed to walk past this limitation, But it is still STRONGLY suggested you upgrade") else qdel(src) return 0 else if (byond_version < config.client_warn_version) //We have words for this client. - src << "Your version of byond may be getting out of date:" - src << config.client_warn_message - src << "Your version: [byond_version]" - src << "Required version to remove this message: [config.client_warn_version] or later" - src << "Visit http://www.byond.com/download/ to get the latest version of byond." + to_chat(src, "Your version of byond may be getting out of date:") + to_chat(src, config.client_warn_message) + to_chat(src, "Your version: [byond_version]") + to_chat(src, "Required version to remove this message: [config.client_warn_version] or later") + to_chat(src, "Visit http://www.byond.com/download/ to get the latest version of byond.") if (connection == "web" && !holder) if (!config.allowwebclient) - src << "Web client is disabled" + to_chat(src, "Web client is disabled") qdel(src) return 0 if (config.webclientmembersonly && !IsByondMember()) - src << "Sorry, but the web client is restricted to byond members only." + to_chat(src, "Sorry, but the web client is restricted to byond members only.") qdel(src) return 0 @@ -255,10 +251,10 @@ var/next_external_rsc = 0 if(holder) add_admin_verbs() - src << get_message_output("memo") + to_chat(src, get_message_output("memo")) adminGreet() if((global.comms_key == "default_pwd" || length(global.comms_key) <= 6) && global.comms_allowed) //It's the default value or less than 6 characters long, but it somehow didn't disable comms. - src << "The server's API key is either too short or is the default value! Consider changing it immediately!" + to_chat(src, "The server's API key is either too short or is the default value! Consider changing it immediately!") if(mentor && !holder) mentor_memo_output("Show") @@ -270,9 +266,9 @@ var/next_external_rsc = 0 if (config.panic_bunker && !holder && !(ckey in deadmins)) log_access("Failed Login: [key] - New account attempting to connect during panic bunker") message_admins("Failed Login: [key] - New account attempting to connect during panic bunker") - src << "Sorry but the server is currently not accepting connections from never before seen players." + to_chat(src, "Sorry but the server is currently not accepting connections from never before seen players.") if(config.allow_panic_bunker_bounce && tdata != "redirect") - src << "Sending you to [config.panic_server_name]." + to_chat(src, "Sending you to [config.panic_server_name].") winset(src, null, "command=.options") src << link("[config.panic_address]?redirect") qdel(src) @@ -281,7 +277,7 @@ var/next_external_rsc = 0 if (config.notify_new_player_age >= 0) message_admins("New user: [key_name_admin(src)] is connecting here for the first time.") if (config.irc_first_connection_alert) - send2irc("New-user", "[key_name(src)] is connecting for the first time!") + send2irc_adminless_only("New-user", "[key_name(src)] is connecting for the first time!") player_age = 0 // set it from -1 to 0 so the job selection code doesn't have a panic attack @@ -303,7 +299,7 @@ var/next_external_rsc = 0 screen += void if(prefs.lastchangelog != changelog_hash) //bolds the changelog button on the interface so we know there are updates. - src << "You have unread updates in the changelog." + to_chat(src, "You have unread updates in the changelog.") if(config.aggressive_changelog) changelog() else @@ -311,14 +307,14 @@ var/next_external_rsc = 0 if(ckey in clientmessages) for(var/message in clientmessages[ckey]) - src << message + to_chat(src, message) clientmessages.Remove(ckey) if(config && config.autoconvert_notes) convert_notes_sql(ckey) - src << get_message_output("message", ckey) + to_chat(src, get_message_output("message", ckey)) if(!winexists(src, "asset_cache_browser")) // The client is using a custom skin, tell them. - src << "Unable to access asset cache browser, if you are using a custom skin file, please allow DS to download the updated version, if you are not, then make a bug report. This is not a critical issue but can cause issues with resource downloading, as it is impossible to know when extra resources arrived to you." + to_chat(src, "Unable to access asset cache browser, if you are using a custom skin file, please allow DS to download the updated version, if you are not, then make a bug report. This is not a critical issue but can cause issues with resource downloading, as it is impossible to know when extra resources arrived to you.") //This is down here because of the browse() calls in tooltip/New() @@ -355,12 +351,12 @@ var/next_external_rsc = 0 var/sql_ckey = sanitizeSQL(src.ckey) - var/DBQuery/query = dbcon.NewQuery("SELECT id, datediff(Now(),firstseen) as age FROM [format_table_name("player")] WHERE ckey = '[sql_ckey]'") - if (!query.Execute()) + var/DBQuery/query_get_client_age = dbcon.NewQuery("SELECT id, datediff(Now(),firstseen) as age FROM [format_table_name("player")] WHERE ckey = '[sql_ckey]'") + if(!query_get_client_age.Execute()) return - while (query.NextRow()) - player_age = text2num(query.item[2]) + while(query_get_client_age.NextRow()) + player_age = text2num(query_get_client_age.item[2]) return //no match mark it as a first connection for use in client/New() @@ -376,17 +372,18 @@ var/next_external_rsc = 0 var/sql_ckey = sanitizeSQL(ckey) - var/DBQuery/query_ip = dbcon.NewQuery("SELECT ckey FROM [format_table_name("player")] WHERE ip = INET_ATON('[address]') AND ckey != '[sql_ckey]'") - query_ip.Execute() + var/DBQuery/query_get_ip = dbcon.NewQuery("SELECT ckey FROM [format_table_name("player")] WHERE ip = INET_ATON('[address]') AND ckey != '[sql_ckey]'") + query_get_ip.Execute() related_accounts_ip = "" - while(query_ip.NextRow()) - related_accounts_ip += "[query_ip.item[1]], " + while(query_get_ip.NextRow()) + related_accounts_ip += "[query_get_ip.item[1]], " - var/DBQuery/query_cid = dbcon.NewQuery("SELECT ckey FROM [format_table_name("player")] WHERE computerid = '[computer_id]' AND ckey != '[sql_ckey]'") - query_cid.Execute() + var/DBQuery/query_get_cid = dbcon.NewQuery("SELECT ckey FROM [format_table_name("player")] WHERE computerid = '[computer_id]' AND ckey != '[sql_ckey]'") + if(!query_get_cid.Execute()) + return related_accounts_cid = "" - while (query_cid.NextRow()) - related_accounts_cid += "[query_cid.item[1]], " + while (query_get_cid.NextRow()) + related_accounts_cid += "[query_get_cid.item[1]], " var/admin_rank = "Player" if (src.holder && src.holder.rank) @@ -400,12 +397,14 @@ var/next_external_rsc = 0 var/sql_admin_rank = sanitizeSQL(admin_rank) - var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("player")] (id, ckey, firstseen, lastseen, ip, computerid, lastadminrank) VALUES (null, '[sql_ckey]', Now(), Now(), INET_ATON('[sql_ip]'), '[sql_computerid]', '[sql_admin_rank]') ON DUPLICATE KEY UPDATE lastseen = VALUES(lastseen), ip = VALUES(ip), computerid = VALUES(computerid), lastadminrank = VALUES(lastadminrank)") - query_insert.Execute() + var/DBQuery/query_log_player = dbcon.NewQuery("INSERT INTO [format_table_name("player")] (id, ckey, firstseen, lastseen, ip, computerid, lastadminrank) VALUES (null, '[sql_ckey]', Now(), Now(), INET_ATON('[sql_ip]'), '[sql_computerid]', '[sql_admin_rank]') ON DUPLICATE KEY UPDATE lastseen = VALUES(lastseen), ip = VALUES(ip), computerid = VALUES(computerid), lastadminrank = VALUES(lastadminrank)") + if(!query_log_player.Execute()) + return //Logging player access - var/DBQuery/query_accesslog = dbcon.NewQuery("INSERT INTO `[format_table_name("connection_log")]` (`id`,`datetime`,`server_ip`,`server_port`,`ckey`,`ip`,`computerid`) VALUES(null,Now(),INET_ATON('[world.internet_address]'),'[world.port]','[sql_ckey]',INET_ATON('[sql_ip]'),'[sql_computerid]');") - query_accesslog.Execute() + + var/DBQuery/query_log_connection = dbcon.NewQuery("INSERT INTO `[format_table_name("connection_log")]` (`id`,`datetime`,`server_ip`,`server_port`,`ckey`,`ip`,`computerid`) VALUES(null,Now(),INET_ATON('[world.internet_address]'),'[world.port]','[sql_ckey]',INET_ATON('[sql_ip]'),'[sql_computerid]')") + query_log_connection.Execute() /client/proc/check_randomizer(topic) . = FALSE @@ -436,12 +435,12 @@ var/next_external_rsc = 0 if (oldcid != computer_id) //IT CHANGED!!! cidcheck -= ckey //so they can try again after removing the cid randomizer. - src << "Connection Error:" - src << "Invalid ComputerID(spoofed). Please remove the ComputerID spoofer from your byond installation and try again." + to_chat(src, "Connection Error:") + to_chat(src, "Invalid ComputerID(spoofed). Please remove the ComputerID spoofer from your byond installation and try again.") if (!cidcheck_failedckeys[ckey]) message_admins("[key_name(src)] has been detected as using a cid randomizer. Connection rejected.") - send2irc("CidRandomizer", "[key_name(src)] has been detected as using a cid randomizer. Connection rejected.") + send2irc_adminless_only("CidRandomizer", "[key_name(src)] has been detected as using a cid randomizer. Connection rejected.") cidcheck_failedckeys[ckey] = TRUE note_randomizer_user() @@ -452,7 +451,7 @@ var/next_external_rsc = 0 else if (cidcheck_failedckeys[ckey]) message_admins("[key_name_admin(src)] has been allowed to connect after showing they removed their cid randomizer") - send2irc("CidRandomizer", "[key_name(src)] has been allowed to connect after showing they removed their cid randomizer.") + send2irc_adminless_only("CidRandomizer", "[key_name(src)] has been allowed to connect after showing they removed their cid randomizer.") cidcheck_failedckeys -= ckey if (cidcheck_spoofckeys[ckey]) message_admins("[key_name_admin(src)] has been allowed to connect after appearing to have attempted to spoof a cid randomizer check because it appears they aren't spoofing one this time") @@ -482,7 +481,7 @@ var/next_external_rsc = 0 var/url = winget(src, null, "url") //special javascript to make them reconnect under a new window. src << browse("byond://[url]?token=[token]", "border=0;titlebar=0;size=1x1") - src << "You will be automatically taken to the game, if not, click here to be taken manually" + to_chat(src, "You will be automatically taken to the game, if not, click here to be taken manually") /client/proc/note_randomizer_user() var/const/adminckey = "CID-Error" @@ -490,19 +489,14 @@ var/next_external_rsc = 0 //check to see if we noted them in the last day. var/DBQuery/query_get_notes = dbcon.NewQuery("SELECT id FROM [format_table_name("messages")] WHERE type = 'note' AND targetckey = '[sql_ckey]' AND adminckey = '[adminckey]' AND timestamp + INTERVAL 1 DAY < NOW()") if(!query_get_notes.Execute()) - var/err = query_get_notes.ErrorMsg() - log_game("SQL ERROR obtaining id from messages table. Error : \[[err]\]\n") return - if (query_get_notes.NextRow()) + if(query_get_notes.NextRow()) return - //regardless of above, make sure their last note is not from us, as no point in repeating the same note over and over. query_get_notes = dbcon.NewQuery("SELECT adminckey FROM [format_table_name("messages")] WHERE targetckey = '[sql_ckey]' ORDER BY timestamp DESC LIMIT 1") if(!query_get_notes.Execute()) - var/err = query_get_notes.ErrorMsg() - log_game("SQL ERROR obtaining adminckey from notes table. Error : \[[err]\]\n") return - if (query_get_notes.NextRow()) + if(query_get_notes.NextRow()) if (query_get_notes.item[1] == adminckey) return create_message("note", sql_ckey, adminckey, "Detected as using a cid randomizer.", null, null, 0, 0) diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 5a4123d75d..74ee5f9e47 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -128,7 +128,6 @@ var/list/preferences_datums = list() "womb_fluid" = "femcum" )//MAKE SURE TO UPDATE THE LIST IN MOBS.DM IF YOU'RE GOING TO ADD TO THIS LIST, OTHERWISE THINGS MIGHT GET FUCKEY - var/list/custom_names = list("clown", "mime", "ai", "cyborg", "religion", "deity") var/prefered_security_department = SEC_DEPT_RANDOM @@ -149,17 +148,12 @@ var/list/preferences_datums = list() var/job_engsec_med = 0 var/job_engsec_low = 0 - //citadel code - var/arousable = TRUE //Allows players to disable arousal from the character creation menu - // Want randomjob if preferences already filled - Donkie var/joblessrole = BERANDOMJOB //defaults to 1 for fewer assistants // 0 = character settings, 1 = game preferences, 2 = character appearance var/current_tab = 0 - var/flavor_text = "" - // OOC Metadata: var/metadata = "" @@ -169,10 +163,14 @@ var/list/preferences_datums = list() var/clientfps = 0 - var/parallax = PARALLAX_DISABLE //Starting disabled by default so people stop freaking about about certain issues. + var/parallax var/uplink_spawn_loc = UPLINK_PDA + //citadel code + var/arousable = TRUE //Allows players to disable arousal from the character creation menu + var/flavor_text = "" + /datum/preferences/New(client/C) parent = C custom_names["ai"] = pick(ai_names) @@ -211,7 +209,6 @@ var/list/preferences_datums = list() dat += "Character Appearance" dat += "Game Preferences" - if(!path) dat += "
    Please create an account to save your preferences
    " @@ -324,22 +321,23 @@ var/list/preferences_datums = list() dat += "Ghosts of Others:[button_name]
    " - if (SERVERTOOLS && config.maprotation) + if (config.maprotation) var/p_map = preferred_map if (!p_map) p_map = "Default" if (config.defaultmap) - p_map += " ([config.defaultmap.friendlyname])" + p_map += " ([config.defaultmap.map_name])" else if (p_map in config.maplist) - var/datum/votablemap/VM = config.maplist[p_map] + var/datum/map_config/VM = config.maplist[p_map] if (!VM) p_map += " (No longer exists)" else - p_map = VM.friendlyname + p_map = VM.map_name else p_map += " (No longer exists)" - dat += "Preferred Map:[p_map]
    " + if(config.allow_map_voting) + dat += "Preferred Map:[p_map]
    " dat += "FPS:[clientfps]
    " @@ -514,7 +512,7 @@ var/list/preferences_datums = list() dat += "Reset Setup" dat += "" - var/datum/browser/popup = new(user, "preferences", "
    Character Setup
    ", 640, 750) + var/datum/browser/popup = new(user, "preferences", "
    Character Setup
    ", 640, 770) popup.set_content(dat) popup.open(0) @@ -715,7 +713,7 @@ var/list/preferences_datums = list() return if (!isnum(desiredLvl)) - user << "UpdateJobPreference - desired level was not a number. Please notify coders!" + to_chat(user, "UpdateJobPreference - desired level was not a number. Please notify coders!") ShowChoices(user) return @@ -782,10 +780,8 @@ var/list/preferences_datums = list() if(href_list["jobbancheck"]) var/job = sanitizeSQL(href_list["jobbancheck"]) var/sql_ckey = sanitizeSQL(user.ckey) - var/DBQuery/query_get_jobban = dbcon.NewQuery("SELECT reason, bantime, duration, expiration_time, a_ckey FROM [format_table_name("ban")] WHERE ckey = '[sql_ckey]' AND job = '[job]' AND (bantype = 'JOB_PERMABAN' OR (bantype = 'JOB_TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned)") - if(!query_get_jobban.Execute()) - var/err = query_get_jobban.ErrorMsg() - log_game("SQL ERROR obtaining reason from ban table. Error : \[[err]\]\n") + var/DBQuery/query_get_jobban = dbcon.NewQuery("SELECT reason, bantime, duration, expiration_time, a_ckey FROM [format_table_name("ban")] WHERE ckey = '[sql_ckey]' AND (bantype = 'JOB_PERMABAN' OR (bantype = 'JOB_TEMPBAN' AND expiration_time > Now())) AND isnull(unbanned) AND job = '[job]'") + if(!query_get_jobban.warn_execute()) return if(query_get_jobban.NextRow()) var/reason = query_get_jobban.item[1] @@ -798,7 +794,7 @@ var/list/preferences_datums = list() if(text2num(duration) > 0) text += ". The ban is for [duration] minutes and expires on [expiration_time] (server time)" text += "." - user << text + to_chat(user, text) return if(href_list["preference"] == "job") @@ -895,7 +891,7 @@ var/list/preferences_datums = list() if(new_name) real_name = new_name else - user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and ." + to_chat(user, "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and .") if("age") var/new_age = input(user, "Choose your character's age:\n([AGE_MIN]-[AGE_MAX])", "Character Preference") as num|null @@ -997,11 +993,7 @@ var/list/preferences_datums = list() eye_color = sanitize_hexcolor(new_eyes) if("species") -/* for(var/spath in subtypesof(/datum/species)) - var/datum/species/S = new spath() - var/list/wlist = S.whitelist - if(S.whitelisted && (wlist.Find(user.ckey) || wlist.Find(user.key) || user.client.holder)) //If your ckey is on the species whitelist or you're an admin:) - roundstart_species[S.id] = S */ + var/result = input(user, "Select a species", "Species Selection") as null|anything in roundstart_species if(result) @@ -1025,7 +1017,7 @@ var/list/preferences_datums = list() else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin features["mcolor"] = sanitize_hexcolor(new_mutantcolor) else - user << "Invalid color. Your color is not bright enough." + to_chat(user, "Invalid color. Your color is not bright enough.") if("mutant_color2") var/new_mutantcolor = input(user, "Choose your character's secondary alien/mutant color:", "Character Preference") as color|null @@ -1036,7 +1028,7 @@ var/list/preferences_datums = list() else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin features["mcolor2"] = sanitize_hexcolor(new_mutantcolor) else - user << "Invalid color. Your color is not bright enough." + to_chat(user, "Invalid color. Your color is not bright enough.") if("mutant_color3") var/new_mutantcolor = input(user, "Choose your character's tertiary alien/mutant color:", "Character Preference") as color|null @@ -1047,7 +1039,7 @@ var/list/preferences_datums = list() else if((MUTCOLORS_PARTSONLY in pref_species.species_traits) || ReadHSV(temp_hsv)[3] >= ReadHSV("#202020")[3]) // mutantcolors must be bright, but only if they affect the skin features["mcolor3"] = sanitize_hexcolor(new_mutantcolor) else - user << "Invalid color. Your color is not bright enough." + to_chat(user, "Invalid color. Your color is not bright enough.") if("tail_lizard") var/new_tail @@ -1064,7 +1056,6 @@ var/list/preferences_datums = list() features["tail_human"] = new_tail if(new_tail != "None") features["taur"] = "None" - if("mam_tail") var/new_tail new_tail = input(user, "Choose your character's tail:", "Character Preference") as null|anything in mam_tails_list @@ -1184,73 +1175,74 @@ var/list/preferences_datums = list() if(new_backbag) backbag = new_backbag + if("uplink_loc") + var/new_loc = input(user, "Choose your character's traitor uplink spawn location:", "Character Preference") as null|anything in uplink_spawn_loc_list + if(new_loc) + uplink_spawn_loc = new_loc + if("clown_name") var/new_clown_name = reject_bad_name( input(user, "Choose your character's clown name:", "Character Preference") as text|null ) if(new_clown_name) custom_names["clown"] = new_clown_name else - user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and ." + to_chat(user, "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and .") if("mime_name") var/new_mime_name = reject_bad_name( input(user, "Choose your character's mime name:", "Character Preference") as text|null ) if(new_mime_name) custom_names["mime"] = new_mime_name else - user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and ." + to_chat(user, "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and .") if("ai_name") var/new_ai_name = reject_bad_name( input(user, "Choose your character's AI name:", "Character Preference") as text|null, 1 ) if(new_ai_name) custom_names["ai"] = new_ai_name else - user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, 0-9, -, ' and ." + to_chat(user, "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, 0-9, -, ' and .") if("cyborg_name") var/new_cyborg_name = reject_bad_name( input(user, "Choose your character's cyborg name:", "Character Preference") as text|null, 1 ) if(new_cyborg_name) custom_names["cyborg"] = new_cyborg_name else - user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, 0-9, -, ' and ." + to_chat(user, "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, 0-9, -, ' and .") if("religion_name") var/new_religion_name = reject_bad_name( input(user, "Choose your character's religion:", "Character Preference") as text|null ) if(new_religion_name) custom_names["religion"] = new_religion_name else - user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and ." + to_chat(user, "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and .") if("deity_name") var/new_deity_name = reject_bad_name( input(user, "Choose your character's deity:", "Character Preference") as text|null ) if(new_deity_name) custom_names["deity"] = new_deity_name else - user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and ." + to_chat(user, "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and .") if("sec_dept") var/department = input(user, "Choose your prefered security department:", "Security Departments") as null|anything in security_depts_prefs if(department) prefered_security_department = department - if("uplink_loc") - var/new_loc = input(user, "Choose your character's traitor uplink spawn location:", "Character Preference") as null|anything in uplink_spawn_loc_list - if(new_loc) - uplink_spawn_loc = new_loc - if ("preferred_map") var/maplist = list() var/default = "Default" if (config.defaultmap) - default += " ([config.defaultmap.friendlyname])" + default += " ([config.defaultmap.map_name])" for (var/M in config.maplist) - var/datum/votablemap/VM = config.maplist[M] - var/friendlyname = "[VM.friendlyname] " + var/datum/map_config/VM = config.maplist[M] + var/friendlyname = "[VM.map_name] " if (VM.voteweight <= 0) friendlyname += " (disabled)" - maplist[friendlyname] = VM.name + maplist[friendlyname] = VM.map_name maplist[default] = null var/pickedmap = input(user, "Choose your preferred map. This will be used to help weight random map selection.", "Character Preference") as null|anything in maplist if (pickedmap) preferred_map = maplist[pickedmap] + if ("clientfps") var/version_message if (user.client && user.client.byond_version < 511) @@ -1343,7 +1335,6 @@ var/list/preferences_datums = list() else user << "Invalid color. Your color is not bright enough." - else switch(href_list["preference"]) @@ -1576,16 +1567,18 @@ var/list/preferences_datums = list() else if(firstspace == name_length) real_name += "[pick(last_names)]" - //citadel code - character.canbearoused = arousable character.real_name = real_name character.name = character.real_name - character.flavor_text = flavor_text character.gender = gender character.age = age character.eye_color = eye_color + var/obj/item/organ/eyes/organ_eyes = character.getorgan(/obj/item/organ/eyes) + if(organ_eyes) + if(!initial(organ_eyes.eye_color)) + organ_eyes.eye_color = eye_color + organ_eyes.old_eye_color = eye_color character.hair_color = hair_color character.facial_hair_color = facial_hair_color @@ -1606,10 +1599,13 @@ var/list/preferences_datums = list() else chosen_species = /datum/species/human character.set_species(chosen_species, icon_update=0) + //citadel code character.give_genitals() + character.flavor_text = flavor_text + character.canbearoused = arousable if(icon_updates) character.update_body() character.update_hair() - character.update_body_parts() \ No newline at end of file + character.update_body_parts() diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 737ecfb14b..46aeb04959 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -8,11 +8,14 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car This proc checks if the current directory of the savefile S needs updating It is to be used by the load_character and load_preferences procs. (S.cd=="/" is preferences, S.cd=="/character[integer]" is a character slot, etc) + if the current directory's version is below SAVEFILE_VERSION_MIN it will simply wipe everything in that directory (if we're at root "/" then it'll just wipe the entire savefile, for instance.) + if its version is below SAVEFILE_VERSION_MAX but above the minimum, it will load data but later call the respective update_preferences() or update_character() proc. Those procs allow coders to specify format changes so users do not lose their setups and have to redo them again. + Failing all that, the standard sanity checks are performed. They simply check the data is suitable, reverting to initial() values if necessary. */ @@ -273,7 +276,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car //Character S["OOC_Notes"] >> metadata - S["flavor_text"] >> flavor_text S["real_name"] >> real_name S["name_is_always_random"] >> be_random_name S["body_is_always_random"] >> be_random_body @@ -290,16 +292,46 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["socks"] >> socks S["backbag"] >> backbag S["uplink_loc"] >> uplink_spawn_loc - S["feature_exhibitionist"] >> features["exhibitionist"] S["feature_mcolor"] >> features["mcolor"] - S["feature_mcolor2"] >> features["mcolor2"] - S["feature_mcolor3"] >> features["mcolor3"] S["feature_lizard_tail"] >> features["tail_lizard"] S["feature_lizard_snout"] >> features["snout"] S["feature_lizard_horns"] >> features["horns"] S["feature_lizard_frills"] >> features["frills"] S["feature_lizard_spines"] >> features["spines"] S["feature_lizard_body_markings"] >> features["body_markings"] + S["feature_lizard_legs"] >> features["legs"] + if(!config.mutant_humans) + features["tail_human"] = "none" + features["ears"] = "none" + else + S["feature_human_tail"] >> features["tail_human"] + S["feature_human_ears"] >> features["ears"] + S["clown_name"] >> custom_names["clown"] + S["mime_name"] >> custom_names["mime"] + S["ai_name"] >> custom_names["ai"] + S["cyborg_name"] >> custom_names["cyborg"] + S["religion_name"] >> custom_names["religion"] + S["deity_name"] >> custom_names["deity"] + S["prefered_security_department"] >> prefered_security_department + + //Jobs + S["joblessrole"] >> joblessrole + S["job_civilian_high"] >> job_civilian_high + S["job_civilian_med"] >> job_civilian_med + S["job_civilian_low"] >> job_civilian_low + S["job_medsci_high"] >> job_medsci_high + S["job_medsci_med"] >> job_medsci_med + S["job_medsci_low"] >> job_medsci_low + S["job_engsec_high"] >> job_engsec_high + S["job_engsec_med"] >> job_engsec_med + S["job_engsec_low"] >> job_engsec_low + + + //Citadel code + S["flavor_text"] >> flavor_text + S["feature_exhibitionist"] >> features["exhibitionist"] + S["feature_mcolor2"] >> features["mcolor2"] + S["feature_mcolor3"] >> features["mcolor3"] S["feature_mam_body_markings"] >> features["mam_body_markings"] S["feature_mam_tail"] >> features["mam_tail"] S["feature_mam_ears"] >> features["mam_ears"] @@ -309,7 +341,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["feature_xeno_tail"] >> features["xenotail"] S["feature_xeno_dors"] >> features["xenodorsal"] S["feature_xeno_head"] >> features["xenohead"] - S["feature_lizard_legs"] >> features["legs"] //cock features S["feature_has_cock"] >> features["has_cock"] S["feature_cock_shape"] >> features["cock_shape"] @@ -331,47 +362,16 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car //vagina features S["feature_has_vag"] >> features["has_vag"] S["feature_vag_color"] >> features["vag_color"] - if(!config.mutant_humans) - features["tail_human"] = "none" - features["ears"] = "none" - else - S["feature_human_tail"] >> features["tail_human"] - S["feature_human_ears"] >> features["ears"] - S["clown_name"] >> custom_names["clown"] - S["mime_name"] >> custom_names["mime"] - S["ai_name"] >> custom_names["ai"] - S["cyborg_name"] >> custom_names["cyborg"] - S["religion_name"] >> custom_names["religion"] - S["deity_name"] >> custom_names["deity"] - S["prefered_security_department"] >> prefered_security_department - - - //Jobs - S["joblessrole"] >> joblessrole - S["job_civilian_high"] >> job_civilian_high - S["job_civilian_med"] >> job_civilian_med - S["job_civilian_low"] >> job_civilian_low - S["job_medsci_high"] >> job_medsci_high - S["job_medsci_med"] >> job_medsci_med - S["job_medsci_low"] >> job_medsci_low - S["job_engsec_high"] >> job_engsec_high - S["job_engsec_med"] >> job_engsec_med - S["job_engsec_low"] >> job_engsec_low //try to fix any outdated data if necessary if(needs_update >= 0) update_character(needs_update, S) //needs_update == savefile_version if we need an update (positive integer) //Sanitize - flavor_text = sanitize_text(flavor_text, initial(flavor_text)) metadata = sanitize_text(metadata, initial(metadata)) real_name = reject_bad_name(real_name) if(!features["mcolor"] || features["mcolor"] == "#000") features["mcolor"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") - if(!features["mcolor2"] || features["mcolor"] == "#000") - features["mcolor2"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") - if(!features["mcolor3"] || features["mcolor"] == "#000") - features["mcolor3"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") if(!real_name) real_name = random_unique_name(gender) be_random_name = sanitize_integer(be_random_name, 0, 1, initial(be_random_name)) @@ -399,8 +399,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car backbag = sanitize_inlist(backbag, backbaglist, initial(backbag)) uplink_spawn_loc = sanitize_inlist(uplink_spawn_loc, uplink_spawn_loc_list, initial(uplink_spawn_loc)) features["mcolor"] = sanitize_hexcolor(features["mcolor"], 3, 0) - features["mcolor2"] = sanitize_hexcolor(features["mcolor2"], 3, 0) - features["mcolor3"] = sanitize_hexcolor(features["mcolor3"], 3, 0) features["tail_lizard"] = sanitize_inlist(features["tail_lizard"], tails_list_lizard) features["tail_human"] = sanitize_inlist(features["tail_human"], tails_list_human, "None") features["snout"] = sanitize_inlist(features["snout"], snouts_list) @@ -409,6 +407,27 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car features["frills"] = sanitize_inlist(features["frills"], frills_list) features["spines"] = sanitize_inlist(features["spines"], spines_list) features["body_markings"] = sanitize_inlist(features["body_markings"], body_markings_list) + features["feature_lizard_legs"] = sanitize_inlist(features["legs"], legs_list, "Normal Legs") + + joblessrole = sanitize_integer(joblessrole, 1, 3, initial(joblessrole)) + job_civilian_high = sanitize_integer(job_civilian_high, 0, 65535, initial(job_civilian_high)) + job_civilian_med = sanitize_integer(job_civilian_med, 0, 65535, initial(job_civilian_med)) + job_civilian_low = sanitize_integer(job_civilian_low, 0, 65535, initial(job_civilian_low)) + job_medsci_high = sanitize_integer(job_medsci_high, 0, 65535, initial(job_medsci_high)) + job_medsci_med = sanitize_integer(job_medsci_med, 0, 65535, initial(job_medsci_med)) + job_medsci_low = sanitize_integer(job_medsci_low, 0, 65535, initial(job_medsci_low)) + job_engsec_high = sanitize_integer(job_engsec_high, 0, 65535, initial(job_engsec_high)) + job_engsec_med = sanitize_integer(job_engsec_med, 0, 65535, initial(job_engsec_med)) + job_engsec_low = sanitize_integer(job_engsec_low, 0, 65535, initial(job_engsec_low)) + + //Citadel + flavor_text = sanitize_text(flavor_text, initial(flavor_text)) + if(!features["mcolor2"] || features["mcolor"] == "#000") + features["mcolor2"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") + if(!features["mcolor3"] || features["mcolor"] == "#000") + features["mcolor3"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") + features["mcolor2"] = sanitize_hexcolor(features["mcolor2"], 3, 0) + features["mcolor3"] = sanitize_hexcolor(features["mcolor3"], 3, 0) features["mam_body_markings"] = sanitize_inlist(features["mam_body_markings"], mam_body_markings_list) features["mam_ears"] = sanitize_inlist(features["mam_ears"], mam_ears_list) features["mam_tail"] = sanitize_inlist(features["mam_tail"], mam_tails_list) @@ -417,7 +436,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car features["xenotail"] = sanitize_inlist(features["xenotail"], xeno_tail_list) features["xenohead"] = sanitize_inlist(features["xenohead"], xeno_head_list) features["xenodorsal"] = sanitize_inlist(features["xenodorsal"], xeno_dorsal_list) - features["feature_lizard_legs"] = sanitize_inlist(features["legs"], legs_list, "Normal Legs") //cock features features["has_cock"] = sanitize_integer(features["has_cock"], 0, 1, 0) features["cock_shape"] = sanitize_inlist(features["cock_shape"], cock_shapes_list, "Human") @@ -438,16 +456,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car features["has_vag"] = sanitize_integer(features["has_vag"], 0, 1, 0) features["vag_color"] = sanitize_hexcolor(features["vag_color"], 3, 0) - joblessrole = sanitize_integer(joblessrole, 1, 3, initial(joblessrole)) - job_civilian_high = sanitize_integer(job_civilian_high, 0, 65535, initial(job_civilian_high)) - job_civilian_med = sanitize_integer(job_civilian_med, 0, 65535, initial(job_civilian_med)) - job_civilian_low = sanitize_integer(job_civilian_low, 0, 65535, initial(job_civilian_low)) - job_medsci_high = sanitize_integer(job_medsci_high, 0, 65535, initial(job_medsci_high)) - job_medsci_med = sanitize_integer(job_medsci_med, 0, 65535, initial(job_medsci_med)) - job_medsci_low = sanitize_integer(job_medsci_low, 0, 65535, initial(job_medsci_low)) - job_engsec_high = sanitize_integer(job_engsec_high, 0, 65535, initial(job_engsec_high)) - job_engsec_med = sanitize_integer(job_engsec_med, 0, 65535, initial(job_engsec_med)) - job_engsec_low = sanitize_integer(job_engsec_low, 0, 65535, initial(job_engsec_low)) return 1 @@ -479,12 +487,8 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["socks"] << socks S["backbag"] << backbag S["uplink_loc"] << uplink_spawn_loc - S["flavor_text"] << flavor_text S["species"] << pref_species.id - S["feature_exhibitionist"] << features["exhibitionist"] S["feature_mcolor"] << features["mcolor"] - S["feature_mcolor2"] << features["mcolor2"] - S["feature_mcolor3"] << features["mcolor3"] S["feature_lizard_tail"] << features["tail_lizard"] S["feature_human_tail"] << features["tail_human"] S["feature_lizard_snout"] << features["snout"] @@ -493,6 +497,32 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["feature_lizard_frills"] << features["frills"] S["feature_lizard_spines"] << features["spines"] S["feature_lizard_body_markings"] << features["body_markings"] + S["feature_lizard_legs"] << features["legs"] + S["clown_name"] << custom_names["clown"] + S["mime_name"] << custom_names["mime"] + S["ai_name"] << custom_names["ai"] + S["cyborg_name"] << custom_names["cyborg"] + S["religion_name"] << custom_names["religion"] + S["deity_name"] << custom_names["deity"] + S["prefered_security_department"] << prefered_security_department + + //Jobs + S["joblessrole"] << joblessrole + S["job_civilian_high"] << job_civilian_high + S["job_civilian_med"] << job_civilian_med + S["job_civilian_low"] << job_civilian_low + S["job_medsci_high"] << job_medsci_high + S["job_medsci_med"] << job_medsci_med + S["job_medsci_low"] << job_medsci_low + S["job_engsec_high"] << job_engsec_high + S["job_engsec_med"] << job_engsec_med + S["job_engsec_low"] << job_engsec_low + + //Citadel + S["flavor_text"] << flavor_text + S["feature_exhibitionist"] << features["exhibitionist"] + S["feature_mcolor2"] << features["mcolor2"] + S["feature_mcolor3"] << features["mcolor3"] S["feature_mam_body_markings"] << features["mam_body_markings"] S["feature_mam_tail"] << features["mam_tail"] S["feature_mam_ears"] << features["mam_ears"] @@ -502,14 +532,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["feature_xeno_tail"] << features["xenotail"] S["feature_xeno_dors"] << features["xenodorsal"] S["feature_xeno_head"] << features["xenohead"] - S["feature_lizard_legs"] << features["legs"] - S["clown_name"] << custom_names["clown"] - S["mime_name"] << custom_names["mime"] - S["ai_name"] << custom_names["ai"] - S["cyborg_name"] << custom_names["cyborg"] - S["religion_name"] << custom_names["religion"] - S["deity_name"] << custom_names["deity"] - S["prefered_security_department"] << prefered_security_department //cock features S["feature_has_cock"] << features["has_cock"] S["feature_cock_shape"] << features["cock_shape"] @@ -532,18 +554,6 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car S["feature_has_vag"] << features["has_vag"] S["feature_vag_color"] << features["vag_color"] - //Jobs - S["joblessrole"] << joblessrole - S["job_civilian_high"] << job_civilian_high - S["job_civilian_med"] << job_civilian_med - S["job_civilian_low"] << job_civilian_low - S["job_medsci_high"] << job_medsci_high - S["job_medsci_med"] << job_medsci_med - S["job_medsci_low"] << job_medsci_low - S["job_engsec_high"] << job_engsec_high - S["job_engsec_med"] << job_engsec_med - S["job_engsec_low"] << job_engsec_low - return 1 #undef SAVEFILE_VERSION_MAX @@ -559,4 +569,4 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car /client/verb/savefile_import(path as text) var/savefile/S = new /savefile(path) S.ImportText("/",file("[path].txt")) -*/ \ No newline at end of file +*/ diff --git a/code/modules/client/preferences_toggles.dm b/code/modules/client/preferences_toggles.dm index 503e3662d7..57cd0328f9 100644 --- a/code/modules/client/preferences_toggles.dm +++ b/code/modules/client/preferences_toggles.dm @@ -4,7 +4,7 @@ set category = "Preferences" set desc = ".Toggle Between seeing all mob speech, and only speech of nearby mobs" prefs.chat_toggles ^= CHAT_GHOSTEARS - src << "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTEARS) ? "see all speech in the world" : "only see speech from nearby mobs"]." + to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTEARS) ? "see all speech in the world" : "only see speech from nearby mobs"].") prefs.save_preferences() feedback_add_details("admin_verb","TGE") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -13,7 +13,7 @@ set category = "Preferences" set desc = ".Toggle Between seeing all mob emotes, and only emotes of nearby mobs" prefs.chat_toggles ^= CHAT_GHOSTSIGHT - src << "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTSIGHT) ? "see all emotes in the world" : "only see emotes from nearby mobs"]." + to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTSIGHT) ? "see all emotes in the world" : "only see emotes from nearby mobs"].") prefs.save_preferences() feedback_add_details("admin_verb","TGS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -22,7 +22,7 @@ set category = "Preferences" set desc = ".Toggle between hearing all whispers, and only whispers of nearby mobs" prefs.chat_toggles ^= CHAT_GHOSTWHISPER - src << "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTWHISPER) ? "see all whispers in the world" : "only see whispers from nearby mobs"]." + to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTWHISPER) ? "see all whispers in the world" : "only see whispers from nearby mobs"].") prefs.save_preferences() feedback_add_details("admin_verb","TGW") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -31,7 +31,7 @@ set category = "Preferences" set desc = ".Enable or disable hearing radio chatter as a ghost" prefs.chat_toggles ^= CHAT_GHOSTRADIO - src << "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTRADIO) ? "see radio chatter" : "not see radio chatter"]." + to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTRADIO) ? "see radio chatter" : "not see radio chatter"].") prefs.save_preferences() feedback_add_details("admin_verb","TGR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //social experiment, increase the generation whenever you copypaste this shamelessly GENERATION 1 @@ -40,7 +40,7 @@ set category = "Preferences" set desc = ".Toggle Between seeing all mob pda messages, and only pda messages of nearby mobs" prefs.chat_toggles ^= CHAT_GHOSTPDA - src << "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTPDA) ? "see all pda messages in the world" : "only see pda messages from nearby mobs"]." + to_chat(src, "As a ghost, you will now [(prefs.chat_toggles & CHAT_GHOSTPDA) ? "see all pda messages in the world" : "only see pda messages from nearby mobs"].") prefs.save_preferences() feedback_add_details("admin_verb","TGP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -51,7 +51,7 @@ if(!holder) return prefs.chat_toggles ^= CHAT_RADIO prefs.save_preferences() - usr << "You will [(prefs.chat_toggles & CHAT_RADIO) ? "now" : "no longer"] see radio chatter from nearby radios or speakers" + to_chat(usr, "You will [(prefs.chat_toggles & CHAT_RADIO) ? "now" : "no longer"] see radio chatter from nearby radios or speakers") feedback_add_details("admin_verb","THR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_deathrattle() @@ -61,9 +61,7 @@ die." prefs.toggles ^= DISABLE_DEATHRATTLE prefs.save_preferences() - usr << "You will \ - [(prefs.toggles & DISABLE_DEATHRATTLE) ? "no longer" : "now"] get \ - messages when a sentient mob dies." + to_chat(usr, "You will [(prefs.toggles & DISABLE_DEATHRATTLE) ? "no longer" : "now"] get messages when a sentient mob dies.") feedback_add_details("admin_verb", "TDR") // If you are copy-pasting this, maybe you should spend some time reading the comments. /client/verb/toggle_arrivalrattle() @@ -72,9 +70,7 @@ set desc = "Toggle recieving a message in deadchat when someone joins \ the station." prefs.toggles ^= DISABLE_ARRIVALRATTLE - usr << "You will \ - [(prefs.toggles & DISABLE_ARRIVALRATTLE) ? "no longer" : "now"] get \ - messages when someone joins the station." + to_chat(usr, "You will [(prefs.toggles & DISABLE_ARRIVALRATTLE) ? "no longer" : "now"] get messages when someone joins the station.") prefs.save_preferences() feedback_add_details("admin_verb", "TAR") // If you are copy-pasting this, maybe you should rethink where your life went so wrong. @@ -86,7 +82,7 @@ return prefs.toggles ^= SOUND_ADMINHELP prefs.save_preferences() - usr << "You will [(prefs.toggles & SOUND_ADMINHELP) ? "now" : "no longer"] hear a sound when adminhelps arrive." + to_chat(usr, "You will [(prefs.toggles & SOUND_ADMINHELP) ? "now" : "no longer"] hear a sound when adminhelps arrive.") feedback_add_details("admin_verb","AHS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggleannouncelogin() @@ -97,7 +93,7 @@ return prefs.toggles ^= ANNOUNCE_LOGIN prefs.save_preferences() - usr << "You will [(prefs.toggles & ANNOUNCE_LOGIN) ? "now" : "no longer"] have an announcement to other admins when you login." + to_chat(usr, "You will [(prefs.toggles & ANNOUNCE_LOGIN) ? "now" : "no longer"] have an announcement to other admins when you login.") feedback_add_details("admin_verb","TAL") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/deadchat() @@ -106,7 +102,7 @@ set desc ="Toggles seeing deadchat" prefs.chat_toggles ^= CHAT_DEAD prefs.save_preferences() - src << "You will [(prefs.chat_toggles & CHAT_DEAD) ? "now" : "no longer"] see deadchat." + to_chat(src, "You will [(prefs.chat_toggles & CHAT_DEAD) ? "now" : "no longer"] see deadchat.") feedback_add_details("admin_verb","TDV") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/proc/toggleprayers() @@ -115,7 +111,7 @@ set desc = "Toggles seeing prayers" prefs.chat_toggles ^= CHAT_PRAYER prefs.save_preferences() - src << "You will [(prefs.chat_toggles & CHAT_PRAYER) ? "now" : "no longer"] see prayerchat." + to_chat(src, "You will [(prefs.chat_toggles & CHAT_PRAYER) ? "now" : "no longer"] see prayerchat.") feedback_add_details("admin_verb","TP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggleprayersounds() @@ -125,9 +121,9 @@ prefs.toggles ^= SOUND_PRAYERS prefs.save_preferences() if(prefs.toggles & SOUND_PRAYERS) - src << "You will now hear prayer sounds." + to_chat(src, "You will now hear prayer sounds.") else - src << "You will no longer prayer sounds." + to_chat(src, "You will no longer prayer sounds.") feedback_add_details("admin_verb", "PSounds") /client/verb/togglemidroundantag() @@ -136,7 +132,7 @@ set desc = "Toggles whether or not you will be considered for antagonist status given during a round." prefs.toggles ^= MIDROUND_ANTAG prefs.save_preferences() - src << "You will [(prefs.toggles & MIDROUND_ANTAG) ? "now" : "no longer"] be considered for midround antagonist positions." + to_chat(src, "You will [(prefs.toggles & MIDROUND_ANTAG) ? "now" : "no longer"] be considered for midround antagonist positions.") feedback_add_details("admin_verb","TMidroundA") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggletitlemusic() @@ -146,11 +142,11 @@ prefs.toggles ^= SOUND_LOBBY prefs.save_preferences() if(prefs.toggles & SOUND_LOBBY) - src << "You will now hear music in the game lobby." + to_chat(src, "You will now hear music in the game lobby.") if(isnewplayer(mob)) playtitlemusic() else - src << "You will no longer hear music in the game lobby." + to_chat(src, "You will no longer hear music in the game lobby.") if(isnewplayer(mob)) mob.stopLobbySound() feedback_add_details("admin_verb","TLobby") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -162,14 +158,14 @@ prefs.toggles ^= SOUND_MIDI prefs.save_preferences() if(prefs.toggles & SOUND_MIDI) - src << "You will now hear any sounds uploaded by admins." + to_chat(src, "You will now hear any sounds uploaded by admins.") if(admin_sound) - src << admin_sound + to_chat(src, admin_sound) else - src << "You will no longer hear sounds uploaded by admins; any currently playing midis have been disabled." + to_chat(src, "You will no longer hear sounds uploaded by admins; any currently playing midis have been disabled.") if(admin_sound && !(admin_sound.status & SOUND_PAUSED)) admin_sound.status |= SOUND_PAUSED - src << admin_sound + to_chat(src, admin_sound) admin_sound.status ^= SOUND_PAUSED feedback_add_details("admin_verb","TMidi") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -186,7 +182,7 @@ set desc = "Toggles seeing OutOfCharacter chat" prefs.chat_toggles ^= CHAT_OOC prefs.save_preferences() - src << "You will [(prefs.chat_toggles & CHAT_OOC) ? "now" : "no longer"] see messages on the OOC channel." + to_chat(src, "You will [(prefs.chat_toggles & CHAT_OOC) ? "now" : "no longer"] see messages on the OOC channel.") feedback_add_details("admin_verb","TOOC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/Toggle_Soundscape() //All new ambience should be added here so it works with this verb until someone better at things comes up with a fix that isn't awful @@ -196,9 +192,9 @@ prefs.toggles ^= SOUND_AMBIENCE prefs.save_preferences() if(prefs.toggles & SOUND_AMBIENCE) - src << "You will now hear ambient sounds." + to_chat(src, "You will now hear ambient sounds.") else - src << "You will no longer hear ambient sounds." + to_chat(src, "You will no longer hear ambient sounds.") src << sound(null, repeat = 0, wait = 0, volume = 0, channel = 1) src << sound(null, repeat = 0, wait = 0, volume = 0, channel = 2) feedback_add_details("admin_verb","TAmbi") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -211,9 +207,9 @@ prefs.toggles ^= SOUND_INSTRUMENTS prefs.save_preferences() if(prefs.toggles & SOUND_INSTRUMENTS) - src << "You will now hear people playing musical instruments." + to_chat(src, "You will now hear people playing musical instruments.") else - src << "You will no longer hear musical instruments." + to_chat(src, "You will no longer hear musical instruments.") feedback_add_details("admin_verb","TInstru") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! //Lots of people get headaches from the normal ship ambience, this is to prevent that @@ -224,9 +220,9 @@ prefs.toggles ^= SOUND_SHIP_AMBIENCE prefs.save_preferences() if(prefs.toggles & SOUND_SHIP_AMBIENCE) - src << "You will now hear ship ambience." + to_chat(src, "You will now hear ship ambience.") else - src << "You will no longer hear ship ambience." + to_chat(src, "You will no longer hear ship ambience.") src << sound(null, repeat = 0, wait = 0, volume = 0, channel = 2) src.ambience_playing = 0 feedback_add_details("admin_verb", "SAmbi") //If you are copy-pasting this, I bet you read this comment expecting to see the same thing :^) @@ -315,7 +311,7 @@ var/global/list/ghost_orbits = list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS set category = "Preferences" set desc = "Toggle between directly clicking the desired intent or clicking to rotate through." prefs.toggles ^= INTENT_STYLE - src << "[(prefs.toggles & INTENT_STYLE) ? "Clicking directly on intents selects them." : "Clicking on intents rotates selection clockwise."]" + to_chat(src, "[(prefs.toggles & INTENT_STYLE) ? "Clicking directly on intents selects them." : "Clicking on intents rotates selection clockwise."]") prefs.save_preferences() feedback_add_details("admin_verb","ITENTS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! @@ -332,7 +328,7 @@ var/global/list/ghost_orbits = list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS set desc = "Hide/Show Ghost HUD" prefs.ghost_hud = !prefs.ghost_hud - src << "Ghost HUD will now be [prefs.ghost_hud ? "visible" : "hidden"]." + to_chat(src, "Ghost HUD will now be [prefs.ghost_hud ? "visible" : "hidden"].") prefs.save_preferences() if(isobserver(mob)) mob.hud_used.show_hud() @@ -345,15 +341,15 @@ var/global/list/ghost_orbits = list(GHOST_ORBIT_CIRCLE,GHOST_ORBIT_TRIANGLE,GHOS prefs.inquisitive_ghost = !prefs.inquisitive_ghost prefs.save_preferences() if(prefs.inquisitive_ghost) - src << "You will now examine everything you click on." + to_chat(src, "You will now examine everything you click on.") else - src << "You will no longer examine things you click on." + to_chat(src, "You will no longer examine things you click on.") /client/verb/toggle_announcement_sound() set name = "Hear/Silence Announcements" set category = "Preferences" set desc = ".Toggles hearing Central Command, Captain, VOX, and other announcement sounds" prefs.toggles ^= SOUND_ANNOUNCEMENTS - src << "You will now [(prefs.toggles & SOUND_ANNOUNCEMENTS) ? "hear announcement sounds" : "no longer hear announcements"]." + to_chat(src, "You will now [(prefs.toggles & SOUND_ANNOUNCEMENTS) ? "hear announcement sounds" : "no longer hear announcements"].") prefs.save_preferences() feedback_add_details("admin_verb","TAS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/client/verbs/ooc.dm b/code/modules/client/verbs/ooc.dm index 3036ee0326..2200bf5de7 100644 --- a/code/modules/client/verbs/ooc.dm +++ b/code/modules/client/verbs/ooc.dm @@ -3,14 +3,14 @@ set category = "OOC" if(say_disabled) //This is here to try to identify lag problems - usr << "Speech is currently admin-disabled." + to_chat(usr, "Speech is currently admin-disabled.") return if(!mob) return if(IsGuestKey(key)) - src << "Guests may not use OOC." + to_chat(src, "Guests may not use OOC.") return msg = copytext(sanitize(msg), 1, MAX_MESSAGE_LEN) @@ -26,32 +26,33 @@ return if(!(prefs.chat_toggles & CHAT_OOC)) - src << "You have OOC muted." + to_chat(src, "You have OOC muted.") return if(!holder) if(!ooc_allowed) - src << "OOC is globally muted." + to_chat(src, "OOC is globally muted.") return if(!dooc_allowed && (mob.stat == DEAD)) - usr << "OOC for dead mobs has been turned off." + to_chat(usr, "OOC for dead mobs has been turned off.") return if(prefs.muted & MUTE_OOC) - src << "You cannot use OOC (muted)." + to_chat(src, "You cannot use OOC (muted).") return if(src.mob) if(jobban_isbanned(src.mob, "OOC")) - src << "You have been banned from OOC." + to_chat(src, "You have been banned from OOC.") return if(handle_spam_prevention(msg,MUTE_OOC)) return if(findtext(msg, "byond://")) - src << "Advertising other servers is not allowed." + to_chat(src, "Advertising other servers is not allowed.") log_admin("[key_name(src)] has attempted to advertise in OOC: [msg]") message_admins("[key_name_admin(src)] has attempted to advertise in OOC: [msg]") return log_ooc("[mob.name]/[key] : [raw_msg]") + mob.log_message("[key]: [raw_msg]", INDIVIDUAL_OOC_LOG) var/keyname = key if(prefs.unlock_content) @@ -63,17 +64,13 @@ if(holder) if(!holder.fakekey || C.holder) if(check_rights_for(src, R_ADMIN)) - C << "[config.allow_admin_ooccolor && prefs.ooccolor ? "" :"" ]OOC: [keyname][holder.fakekey ? "/([holder.fakekey])" : ""]: [msg]" + to_chat(C, "[config.allow_admin_ooccolor && prefs.ooccolor ? "" :"" ]OOC: [keyname][holder.fakekey ? "/([holder.fakekey])" : ""]: [msg]") else - C << "OOC: [keyname][holder.fakekey ? "/([holder.fakekey])" : ""]: [msg]" + to_chat(C, "OOC: [keyname][holder.fakekey ? "/([holder.fakekey])" : ""]: [msg]") else - C << "OOC: [holder.fakekey ? holder.fakekey : key]: [msg]" - - else if(check_mentor()) //mentors - C << "OOC: [keyname]: [msg]" - + to_chat(C, "OOC: [holder.fakekey ? holder.fakekey : key]: [msg]") else if(!(key in C.prefs.ignoring)) - C << "OOC: [keyname]: [msg]" + to_chat(C, "OOC: [keyname]: [msg]") /proc/toggle_ooc(toggle = null) if(toggle != null) //if we're specifically en/disabling ooc @@ -83,7 +80,7 @@ return else //otherwise just toggle it ooc_allowed = !ooc_allowed - world << "The OOC channel has been globally [ooc_allowed ? "enabled" : "disabled"]." + to_chat(world, "The OOC channel has been globally [ooc_allowed ? "enabled" : "disabled"].") var/global/normal_ooc_colour = OOC_COLOR @@ -133,9 +130,9 @@ var/global/normal_ooc_colour = OOC_COLOR set desc ="Check the admin notice if it has been set" if(admin_notice) - src << "Admin Notice:\n \t [admin_notice]" + to_chat(src, "Admin Notice:\n \t [admin_notice]") else - src << "There are no admin notices at the moment." + to_chat(src, "There are no admin notices at the moment.") /client/verb/motd() set name = "MOTD" @@ -143,9 +140,9 @@ var/global/normal_ooc_colour = OOC_COLOR set desc ="Check the Message of the Day" if(join_motd) - src << "
    [join_motd]
    " + to_chat(src, "
    [join_motd]
    ") else - src << "The Message of the Day has not been set." + to_chat(src, "The Message of the Day has not been set.") /client/proc/self_notes() set name = "View Admin Remarks" @@ -153,7 +150,7 @@ var/global/normal_ooc_colour = OOC_COLOR set desc = "View the notes that admins have written about you" if(!config.see_own_notes) - usr << "Sorry, that function is not enabled on this server." + to_chat(usr, "Sorry, that function is not enabled on this server.") return browse_messages(null, usr.ckey, null, 1) @@ -164,7 +161,7 @@ var/global/normal_ooc_colour = OOC_COLOR prefs.ignoring -= C.key else prefs.ignoring |= C.key - src << "You are [(C.key in prefs.ignoring) ? "now" : "no longer"] ignoring [C.key] on the OOC channel." + to_chat(src, "You are [(C.key in prefs.ignoring) ? "now" : "no longer"] ignoring [C.key] on the OOC channel.") prefs.save_preferences() /client/verb/select_ignore() @@ -176,6 +173,6 @@ var/global/normal_ooc_colour = OOC_COLOR if(!selection) return if(selection == src) - src << "You can't ignore yourself." + to_chat(src, "You can't ignore yourself.") return ignore_key(selection) diff --git a/code/modules/client/verbs/ping.dm b/code/modules/client/verbs/ping.dm index e7b000334f..41bd1b889c 100644 --- a/code/modules/client/verbs/ping.dm +++ b/code/modules/client/verbs/ping.dm @@ -14,7 +14,7 @@ /client/verb/display_ping(time as num) set instant = TRUE set name = ".display_ping" - src << "Round trip ping took [round(pingfromtime(time),1)]ms" + to_chat(src, "Round trip ping took [round(pingfromtime(time),1)]ms") /client/verb/ping() set name = "Ping" diff --git a/code/modules/client/verbs/suicide.dm b/code/modules/client/verbs/suicide.dm index 74bc234a5b..6847a7c1f4 100644 --- a/code/modules/client/verbs/suicide.dm +++ b/code/modules/client/verbs/suicide.dm @@ -2,7 +2,7 @@ /mob/living/carbon/human/verb/suicide() set hidden = 1 - return + return // H U G B O X if(!canSuicide()) return var/oldkey = ckey @@ -126,7 +126,7 @@ "[src] bleeps electronically.") death(0) else - src << "Aborting suicide attempt." + to_chat(src, "Aborting suicide attempt.") /mob/living/carbon/alien/humanoid/verb/suicide() set hidden = 1 @@ -162,18 +162,18 @@ if(stat == CONSCIOUS) return TRUE else if(stat == DEAD) - src << "You're already dead!" + to_chat(src, "You're already dead!") else if(stat == UNCONSCIOUS) - src << "You need to be conscious to suicide!" + to_chat(src, "You need to be conscious to suicide!") return /mob/living/carbon/canSuicide() if(!..()) return if(!canmove || restrained()) //just while I finish up the new 'fun' suiciding verb. This is to prevent metagaming via suicide - src << "You can't commit suicide whilst restrained! ((You can type Ghost instead however.))" + to_chat(src, "You can't commit suicide whilst restrained! ((You can type Ghost instead however.))") return if(has_brain_worms()) - src << "You can't bring yourself to commit suicide!" + to_chat(src, "You can't bring yourself to commit suicide!") return return TRUE diff --git a/code/modules/client/verbs/who.dm b/code/modules/client/verbs/who.dm index 4576a7b8a8..a94f965811 100644 --- a/code/modules/client/verbs/who.dm +++ b/code/modules/client/verbs/who.dm @@ -2,65 +2,59 @@ set name = "Who" set category = "OOC" - var/msg = "" + var/msg = "Current Players:\n" var/list/Lines = list() - if(length(admins) > 0) - Lines += "Admins:" - for(var/client/C in sortList(admins)) - if(!C.holder.fakekey) - Lines += "\t [C.key][show_info(C)]" + if(holder) + if (check_rights(R_ADMIN,0) && isobserver(src.mob))//If they have +ADMIN and are a ghost they can see players IC names and statuses. + var/mob/dead/observer/G = src.mob + if(!G.started_as_observer)//If you aghost to do this, KorPhaeron will deadmin you in your sleep. + log_admin("[key_name(usr)] checked advanced who in-round") + for(var/client/C in clients) + var/entry = "\t[C.key]" + if(C.holder && C.holder.fakekey) + entry += " (as [C.holder.fakekey])" + if (isnewplayer(C.mob)) + entry += " - In Lobby" + else + entry += " - Playing as [C.mob.real_name]" + switch(C.mob.stat) + if(UNCONSCIOUS) + entry += " - Unconscious" + if(DEAD) + if(isobserver(C.mob)) + var/mob/dead/observer/O = C.mob + if(O.started_as_observer) + entry += " - Observing" + else + entry += " - DEAD" + else + entry += " - DEAD" + if(is_special_character(C.mob)) + entry += " - Antagonist" + entry += " (?)" + entry += " ([round(C.avgping, 1)]ms)" + Lines += entry + else//If they don't have +ADMIN, only show hidden admins + for(var/client/C in clients) + var/entry = "\t[C.key]" + if(C.holder && C.holder.fakekey) + entry += " (as [C.holder.fakekey])" + entry += " ([round(C.avgping, 1)]ms)" + Lines += entry + else + for(var/client/C in clients) + if(C.holder && C.holder.fakekey) + Lines += "[C.holder.fakekey] ([round(C.avgping, 1)]ms)" + else + Lines += "[C.key] ([round(C.avgping, 1)]ms)" - if(length(mentors) > 0) - Lines += "Mentors:" - for(var/client/C in sortList(clients)) - var/mentor = mentor_datums[C.ckey] - if(mentor) - Lines += "\t [C.key][show_info(C)]" - - Lines += "Players:" - for(var/client/C in sortList(clients)) - if(!check_mentor_other(C) || (C.holder && C.holder.fakekey)) - Lines += "\t [C.key][show_info(C)]" - - for(var/line in Lines) + for(var/line in sortList(Lines)) msg += "[line]\n" msg += "Total Players: [length(Lines)]" - src << msg - -/client/proc/show_info(var/client/C) - if(!C) - return "" - - if(!src.holder) - return "" - - var/entry = "" - if(C.holder && C.holder.fakekey) - entry += " (as [C.holder.fakekey])" - if (isnewplayer(C.mob)) - entry += " - In Lobby" - else - entry += " - Playing as [C.mob.real_name]" - switch(C.mob.stat) - if(UNCONSCIOUS) - entry += " - Unconscious" - if(DEAD) - if(isobserver(C.mob)) - var/mob/dead/observer/O = C.mob - if(O.started_as_observer) - entry += " - Observing" - else - entry += " - DEAD" - else - entry += " - DEAD" - if(is_special_character(C.mob)) - entry += " - Antagonist" - entry += " (?)" - entry += " ([round(C.avgping, 1)]ms)" - return entry + to_chat(src, msg) /client/verb/adminwho() set category = "Admin" @@ -90,8 +84,8 @@ continue //Don't show afk admins to adminwho if(!C.holder.fakekey) msg += "\t[C] is a [C.holder.rank]\n" - msg += "Adminhelps are also sent to IRC. If no admins are available in game adminhelp anyways and an admin on IRC will see it and respond." - src << msg + msg += "Adminhelps are also sent to Discord. If no admins are available in game adminhelp anyways and an admin on Discord will see it and respond." + to_chat(src, msg) /client/verb/mentorwho() set category = "Mentor" @@ -102,7 +96,7 @@ if(holder) if(isobserver(C.mob)) suffix += " - Observing" - else if(istype(C.mob,/mob/new_player)) + else if(istype(C.mob,/mob/dead/new_player)) suffix += " - Lobby" else suffix += " - Playing" @@ -110,4 +104,4 @@ if(C.is_afk()) suffix += " (AFK)" msg += "\t[C][suffix]\n" - src << msg \ No newline at end of file + to_chat(src, msg) diff --git a/code/modules/clothing/chameleon.dm b/code/modules/clothing/chameleon.dm index 5a5ffe2e5f..54d158386c 100644 --- a/code/modules/clothing/chameleon.dm +++ b/code/modules/clothing/chameleon.dm @@ -55,7 +55,7 @@ else if(istype(old_headgear,/obj/item/clothing/mask/chameleon/drone)) new_headgear = new /obj/item/clothing/head/chameleon/drone() else - owner << "You shouldn't be able to toggle a camogear helmetmask if you're not wearing it" + to_chat(owner, "You shouldn't be able to toggle a camogear helmetmask if you're not wearing it") if(new_headgear) // Force drop the item in the headslot, even though // it's NODROP @@ -122,6 +122,9 @@ update_item(picked_item) /datum/action/item_action/chameleon/change/proc/update_look(mob/user, obj/item/picked_item) + if(istype(target, /obj/item/weapon/gun/energy/laser/chameleon)) + var/obj/item/weapon/gun/energy/laser/chameleon/CG = target + CG.get_chameleon_projectile(picked_item) if(isliving(user)) var/mob/living/C = user if(C.stat != CONSCIOUS) @@ -153,6 +156,8 @@ return 1 /datum/action/item_action/chameleon/change/proc/emp_randomise() + if(istype(target, /obj/item/weapon/gun/energy/laser/chameleon)) + return //Please no crash! START_PROCESSING(SSprocessing, src) random_look(owner) @@ -355,7 +360,7 @@ /obj/item/clothing/mask/chameleon/attack_self(mob/user) vchange = !vchange - user << "The voice changer is now [vchange ? "on" : "off"]!" + to_chat(user, "The voice changer is now [vchange ? "on" : "off"]!") /obj/item/clothing/mask/chameleon/drone @@ -374,7 +379,7 @@ randomise_action.UpdateButtonIcon() /obj/item/clothing/mask/chameleon/drone/attack_self(mob/user) - user << "The [src] does not have a voice changer." + to_chat(user, "The [src] does not have a voice changer.") /obj/item/clothing/shoes/chameleon name = "black shoes" @@ -404,13 +409,20 @@ /obj/item/weapon/gun/energy/laser/chameleon name = "practice laser gun" desc = "A modified version of the basic laser gun, this one fires less concentrated energy bolts designed for target practice." - ammo_type = list(/obj/item/ammo_casing/energy/laser/practice) + ammo_type = list(/obj/item/ammo_casing/energy/chameleon) clumsy_check = 0 needs_permit = 0 pin = /obj/item/device/firing_pin cell_type = /obj/item/weapon/stock_parts/cell/bluespace var/datum/action/item_action/chameleon/change/chameleon_action + var/list/chameleon_projectile_vars + var/list/chameleon_ammo_vars + var/list/chameleon_gun_vars + var/list/projectile_copy_vars + var/list/ammo_copy_vars + var/list/gun_copy_vars + var/badmin_mode = FALSE /obj/item/weapon/gun/energy/laser/chameleon/New() ..() @@ -420,8 +432,96 @@ chameleon_action.chameleon_blacklist = typecacheof(/obj/item/weapon/gun/magic, ignore_root_path = FALSE) chameleon_action.initialize_disguises() +/obj/item/weapon/gun/energy/laser/chameleon/Initialize() + ..() + projectile_copy_vars = list("name", "icon", "icon_state", "item_state", "speed", "color", "hitsound", "forcedodge", "impact_effect_type", "range", "suppressed", "hitsound_wall", "impact_effect_type", "pass_flags") + chameleon_projectile_vars = list("name" = "practice laser", "icon" = 'icons/obj/projectiles.dmi', "icon_state" = "laser") + gun_copy_vars = list("fire_sound", "burst_size", "fire_delay") + chameleon_gun_vars = list() + ammo_copy_vars = list("firing_effect_type") + chameleon_ammo_vars = list() + get_chameleon_projectile(/obj/item/weapon/gun/energy/laser) + /obj/item/weapon/gun/energy/laser/chameleon/emp_act(severity) - chameleon_action.emp_randomise() + return + +/obj/item/weapon/gun/energy/laser/chameleon/proc/reset_chameleon_vars() + chameleon_ammo_vars = list() + chameleon_gun_vars = list() + chameleon_projectile_vars = list() + for(var/V in chambered.vars) + chambered.vars[V] = initial(chambered.vars[V]) + qdel(chambered.BB) + chambered.newshot() + for(var/V in vars) + vars[V] = initial(vars[V]) + + +/obj/item/weapon/gun/energy/laser/chameleon/proc/set_chameleon_ammo(obj/item/ammo_casing/AC, passthrough = TRUE, reset = FALSE) + if(!istype(AC)) + CRASH("[AC] is not /obj/item/ammo_casing!") + return FALSE + for(var/V in ammo_copy_vars) + if(AC.vars[V]) + chameleon_ammo_vars[V] = AC.vars[V] + if(chambered.vars[V]) + chambered.vars[V] = AC.vars[V] + if(passthrough) + var/obj/item/projectile/P = AC.BB + set_chameleon_projectile(P) + +/obj/item/weapon/gun/energy/laser/chameleon/proc/set_chameleon_projectile(obj/item/projectile/P) + if(!istype(P)) + CRASH("[P] is not /obj/item/projectile!") + return FALSE + chameleon_projectile_vars = list("name" = "practice laser", "icon" = 'icons/obj/projectiles.dmi', "icon_state" = "laser") + for(var/V in projectile_copy_vars) + if(P.vars[V]) + chameleon_projectile_vars[V] = P.vars[V] + if(istype(chambered, /obj/item/ammo_casing/energy/chameleon)) + var/obj/item/ammo_casing/energy/chameleon/AC = chambered + AC.projectile_vars = chameleon_projectile_vars.Copy() + if(badmin_mode) + qdel(chambered.BB) + chambered.projectile_type = P.type + chambered.newshot() + +/obj/item/weapon/gun/energy/laser/chameleon/proc/set_chameleon_gun(obj/item/weapon/gun/G , passthrough = TRUE) + if(!istype(G)) + CRASH("[G] is not /obj/item/weapon/gun!") + return FALSE + for(var/V in gun_copy_vars) + if(vars[V] && G.vars[V]) + chameleon_gun_vars[V] = G.vars[V] + vars[V] = G.vars[V] + if(passthrough) + if(istype(G, /obj/item/weapon/gun/ballistic)) + var/obj/item/weapon/gun/ballistic/BG = G + var/obj/item/ammo_box/AB = new BG.mag_type(G) + qdel(BG) + if(!istype(AB)||!AB.ammo_type) + qdel(AB) + return FALSE + var/obj/item/ammo_casing/AC = new AB.ammo_type(G) + set_chameleon_ammo(AC) + else if(istype(G, /obj/item/weapon/gun/magic)) + var/obj/item/weapon/gun/magic/MG = G + var/obj/item/ammo_casing/AC = new MG.ammo_type(G) + set_chameleon_ammo(AC) + else if(istype(G, /obj/item/weapon/gun/energy)) + var/obj/item/weapon/gun/energy/EG = G + if(islist(EG.ammo_type) && EG.ammo_type.len) + var/obj/item/ammo_casing/AC = EG.ammo_type[1] + set_chameleon_ammo(AC) + else if(istype(G, /obj/item/weapon/gun/syringe)) + var/obj/item/ammo_casing/AC = new /obj/item/ammo_casing/syringegun(src) + set_chameleon_ammo(AC) + +/obj/item/weapon/gun/energy/laser/chameleon/proc/get_chameleon_projectile(guntype) + reset_chameleon_vars() + var/obj/item/weapon/gun/G = new guntype(src) + set_chameleon_gun(G) + qdel(G) /obj/item/weapon/storage/backpack/chameleon name = "backpack" @@ -437,6 +537,22 @@ /obj/item/weapon/storage/backpack/chameleon/emp_act(severity) chameleon_action.emp_randomise() +/obj/item/weapon/storage/belt/chameleon + name = "toolbelt" + desc = "Holds tools." + silent = 1 + var/datum/action/item_action/chameleon/change/chameleon_action + +/obj/item/weapon/storage/belt/chameleon/New() + ..() + chameleon_action = new(src) + chameleon_action.chameleon_type = /obj/item/weapon/storage/belt + chameleon_action.chameleon_name = "Belt" + chameleon_action.initialize_disguises() + +/obj/item/weapon/storage/belt/chameleon/emp_act(severity) + chameleon_action.emp_randomise() + /obj/item/device/radio/headset/chameleon name = "radio headset" var/datum/action/item_action/chameleon/change/chameleon_action diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 9db42e0571..96a5731ceb 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -32,6 +32,13 @@ var/obj/item/weapon/storage/internal/pocket/pockets = null + //These allow head/mask items to dynamically alter the user's hair + // and facial hair, checking hair_extensions.dmi and facialhair_extensions.dmi + // for a state matching hair_state+dynamic_hair_suffix + // THESE OVERRIDE THE HIDEHAIR FLAGS + var/dynamic_hair_suffix = ""//head > mask for head hair + var/dynamic_fhair_suffix = ""//mask > head for facial hair + /obj/item/clothing/New() ..() if(ispath(pockets)) @@ -76,7 +83,7 @@ C.use(1) update_clothes_damaged_state(FALSE) obj_integrity = max_integrity - user << "You fix the damages on [src] with [C]." + to_chat(user, "You fix the damages on [src] with [C].") return 1 if(pockets) var/i = pockets.attackby(W, user, params) @@ -92,7 +99,7 @@ pockets.remove_from_storage(I, get_turf(src)) if(!user.put_in_hands(I)) - user << "You fumble for [I] and it falls on the floor." + to_chat(user, "You fumble for [I] and it falls on the floor.") return 1 user.visible_message("[user] draws [I] from [src]!", "You draw [I] from [src].") return 1 @@ -133,7 +140,7 @@ /obj/item/clothing/examine(mob/user) ..() if(damaged_clothes) - user << "It looks damaged!" + to_chat(user, "It looks damaged!") /obj/item/clothing/obj_break(damage_flag) if(!damaged_clothes) @@ -171,11 +178,14 @@ var/list/damaged_clothes_icons = list() desc = "Protects your hearing from loud noises, and quiet ones as well." icon_state = "earmuffs" item_state = "earmuffs" - flags = EARBANGPROTECT strip_delay = 15 put_on_delay = 25 resistance_flags = FLAMMABLE +/obj/item/clothing/ears/earmuffs/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, BANG_PROTECT) + //Glasses /obj/item/clothing/glasses name = "glasses" @@ -325,11 +335,11 @@ BLIND // can't see anything flags |= visor_flags flags_inv |= visor_flags_inv flags_cover |= visor_flags_cover - user << "You push \the [src] back into place." + to_chat(user, "You push \the [src] back into place.") slot_flags = initial(slot_flags) else icon_state += "_up" - user << "You push \the [src] out of the way." + to_chat(user, "You push \the [src] out of the way.") gas_transfer_coefficient = null permeability_coefficient = null flags &= ~visor_flags @@ -542,7 +552,7 @@ BLIND // can't see anything var/obj/item/clothing/tie/T = I if(hastie) if(user) - user << "[src] already has an accessory." + to_chat(user, "[src] already has an accessory.") return 0 else if(user && !user.drop_item()) @@ -551,7 +561,7 @@ BLIND // can't see anything return if(user && notifyAttach) - user << "You attach [I] to [src]." + to_chat(user, "You attach [I] to [src].") if(ishuman(loc)) var/mob/living/carbon/human/H = loc @@ -569,9 +579,9 @@ BLIND // can't see anything var/obj/item/clothing/tie/T = hastie hastie.detach(src, user) if(user.put_in_hands(T)) - user << "You detach [T] from [src]." + to_chat(user, "You detach [T] from [src].") else - user << "You detach [T] from [src] and it falls on the floor." + to_chat(user, "You detach [T] from [src] and it falls on the floor.") if(ishuman(loc)) var/mob/living/carbon/human/H = loc @@ -582,20 +592,20 @@ BLIND // can't see anything ..() if(can_adjust) if(adjusted == ALT_STYLE) - user << "Alt-click on [src] to wear it normally." + to_chat(user, "Alt-click on [src] to wear it normally.") else - user << "Alt-click on [src] to wear it casually." + to_chat(user, "Alt-click on [src] to wear it casually.") switch(sensor_mode) if(0) - user << "Its sensors appear to be disabled." + to_chat(user, "Its sensors appear to be disabled.") if(1) - user << "Its binary life sensors appear to be enabled." + to_chat(user, "Its binary life sensors appear to be enabled.") if(2) - user << "Its vital tracker appears to be enabled." + to_chat(user, "Its vital tracker appears to be enabled.") if(3) - user << "Its vital tracker and tracking beacon appear to be enabled." + to_chat(user, "Its vital tracker and tracking beacon appear to be enabled.") if(hastie) - user << "\A [hastie] is attached to it." + to_chat(user, "\A [hastie] is attached to it.") /proc/generate_female_clothing(index,t_color,icon,type) var/icon/female_clothing_icon = icon("icon"=icon, "icon_state"=t_color) @@ -614,29 +624,29 @@ BLIND // can't see anything if (!can_use(M)) return if(src.has_sensor >= 2) - usr << "The controls are locked." + to_chat(usr, "The controls are locked.") return 0 if(src.has_sensor <= 0) - usr << "This suit does not have any sensors." + to_chat(usr, "This suit does not have any sensors.") return 0 var/list/modes = list("Off", "Binary vitals", "Exact vitals", "Tracking beacon") var/switchMode = input("Select a sensor mode:", "Suit Sensor Mode", modes[sensor_mode + 1]) in modes if(get_dist(usr, src) > 1) - usr << "You have moved too far away!" + to_chat(usr, "You have moved too far away!") return sensor_mode = modes.Find(switchMode) - 1 if (src.loc == usr) switch(sensor_mode) if(0) - usr << "You disable your suit's remote sensing equipment." + to_chat(usr, "You disable your suit's remote sensing equipment.") if(1) - usr << "Your suit will now only report whether you are alive or dead." + to_chat(usr, "Your suit will now only report whether you are alive or dead.") if(2) - usr << "Your suit will now only report your exact vital lifesigns." + to_chat(usr, "Your suit will now only report your exact vital lifesigns.") if(3) - usr << "Your suit will now report your exact vital lifesigns as well as your coordinate position." + to_chat(usr, "Your suit will now report your exact vital lifesigns as well as your coordinate position.") if(ishuman(loc)) var/mob/living/carbon/human/H = loc @@ -650,7 +660,7 @@ BLIND // can't see anything return 1 if(!user.canUseTopic(src, be_close=TRUE)) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return else if(hastie) @@ -668,12 +678,12 @@ BLIND // can't see anything if(!can_use(usr)) return if(!can_adjust) - usr << "You cannot wear this suit any differently!" + to_chat(usr, "You cannot wear this suit any differently!") return if(toggle_jumpsuit_adjust()) - usr << "You adjust the suit to wear it more casually." + to_chat(usr, "You adjust the suit to wear it more casually.") else - usr << "You adjust the suit back to normal." + to_chat(usr, "You adjust the suit back to normal.") if(ishuman(usr)) var/mob/living/carbon/human/H = usr H.update_inv_w_uniform() @@ -700,7 +710,7 @@ BLIND // can't see anything visor_toggling() - user << "You adjust \the [src] [up ? "up" : "down"]." + to_chat(user, "You adjust \the [src] [up ? "up" : "down"].") if(iscarbon(user)) var/mob/living/carbon/C = user diff --git a/code/modules/clothing/glasses/engine_goggles.dm b/code/modules/clothing/glasses/engine_goggles.dm index a3324d5b2e..cd079db247 100644 --- a/code/modules/clothing/glasses/engine_goggles.dm +++ b/code/modules/clothing/glasses/engine_goggles.dm @@ -19,13 +19,13 @@ vision_flags = 0 darkness_view = 2 invis_view = SEE_INVISIBLE_LIVING - user << "You toggle the goggles' scanning mode to \[T-Ray]." + to_chat(user, "You toggle the goggles' scanning mode to \[T-Ray].") else STOP_PROCESSING(SSobj, src) vision_flags = SEE_TURFS darkness_view = 1 invis_view = SEE_INVISIBLE_MINIMUM - loc << "You toggle the goggles' scanning mode to \[Meson]." + to_chat(loc, "You toggle the goggles' scanning mode to \[Meson].") invis_update() if(ishuman(user)) @@ -121,10 +121,10 @@ if(on) START_PROCESSING(SSobj, src) - user << "You turn the goggles on." + to_chat(user, "You turn the goggles on.") else STOP_PROCESSING(SSobj, src) - user << "You turn the goggles off." + to_chat(user, "You turn the goggles off.") invis_update() update_icon() diff --git a/code/modules/clothing/glasses/glasses.dm b/code/modules/clothing/glasses/glasses.dm index afcefbe4c1..9af1a4715c 100644 --- a/code/modules/clothing/glasses/glasses.dm +++ b/code/modules/clothing/glasses/glasses.dm @@ -23,7 +23,7 @@ var/mob/living/carbon/human/H = src.loc if(!(H.disabilities & BLIND)) if(H.glasses == src) - H << "The [src] overloads and blinds you!" + to_chat(H, "The [src] overloads and blinds you!") H.flash_act(visual = 1) H.blind_eyes(3) H.blur_eyes(5) @@ -334,7 +334,7 @@ var/mob/living/carbon/C = user C.update_inv_wear_mask() else - user << "The eye winks at you and vanishes into the abyss, you feel really unlucky." + to_chat(user, "The eye winks at you and vanishes into the abyss, you feel really unlucky.") qdel(src) ..() @@ -346,9 +346,9 @@ if(src == H.glasses) H.client.prefs.uses_glasses_colour = !H.client.prefs.uses_glasses_colour if(H.client.prefs.uses_glasses_colour) - H << "You will now see glasses colors." + to_chat(H, "You will now see glasses colors.") else - H << "You will no longer see glasses colors." + to_chat(H, "You will no longer see glasses colors.") H.update_glasses_color(src, 1) else return ..() diff --git a/code/modules/clothing/glasses/hud.dm b/code/modules/clothing/glasses/hud.dm index b8d0720103..0a6d7423fc 100644 --- a/code/modules/clothing/glasses/hud.dm +++ b/code/modules/clothing/glasses/hud.dm @@ -25,7 +25,7 @@ /obj/item/clothing/glasses/hud/emag_act(mob/user) if(emagged == 0) emagged = 1 - user << "PZZTTPFFFT" + to_chat(user, "PZZTTPFFFT") desc = desc + " The display flickers slightly." /obj/item/clothing/glasses/hud/health diff --git a/code/modules/clothing/glasses/vg_glasses.dm b/code/modules/clothing/glasses/vg_glasses.dm index 774dc494a0..48ad9df303 100644 --- a/code/modules/clothing/glasses/vg_glasses.dm +++ b/code/modules/clothing/glasses/vg_glasses.dm @@ -5,28 +5,33 @@ desc = "Strangely ancient technology used to help provide rudimentary eye cover. Enhanced shielding blocks many flashes, and the colored lenses let you see the world in purple." name = "purple sunglasses" icon_state = "sun_purple" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/glasses/sunglasses/star name = "star-shaped sunglasses" desc = "Novelty sunglasses, both lenses are in the shape of a star." icon_state = "sun_star" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/glasses/sunglasses/rockstar name = "red star-shaped sunglasses" desc = "Novelty sunglasses with a fancy silver frame and two red-tinted star-shaped lenses. You should probably stomp on them and get a pair of normal ones." icon_state = "sun_star_silver" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/glasses/gglasses name = "Green Glasses" desc = "Forest green glasses, like the kind you'd wear when hatching a nasty scheme." icon_state = "gglasses" item_state = "gglasses" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/glasses/welding/superior name = "superior welding goggles" desc = "Welding goggles made from more expensive materials, strangely smells like potatoes. Allows for better vision than normal goggles.." icon_state = "rwelding-g" item_state = "rwelding-g" + icon = 'icons/obj/clothing/vg_clothes.dmi' actions_types = list(/datum/action/item_action/toggle) flash_protect = 2 tint = 1 diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index 4c9a273633..c425aebe64 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -44,7 +44,7 @@ /obj/item/clothing/gloves/color/black/attackby(obj/item/weapon/W as obj, mob/user as mob, params) if(istype(W, /obj/item/weapon/wirecutters)) if(can_be_cut && icon_state == initial(icon_state))//only if not dyed - user << "You snip the fingertips off of [src]." + to_chat(user, "You snip the fingertips off of [src].") playsound(user.loc, W.usesound, rand(10,50), 1) new /obj/item/clothing/gloves/fingerless(user.loc) qdel(src) diff --git a/code/modules/clothing/gloves/vg_gloves.dm b/code/modules/clothing/gloves/vg_gloves.dm index 07ed8d621b..2b20d478eb 100644 --- a/code/modules/clothing/gloves/vg_gloves.dm +++ b/code/modules/clothing/gloves/vg_gloves.dm @@ -5,48 +5,49 @@ icon_state = "bmgloves" item_state = "bmgloves" item_color = "bmgloves" - + icon = 'icons/obj/clothing/vg_clothes.dmi' obj/item/clothing/gloves/bikergloves name = "Biker's Gloves" icon_state = "biker-gloves" item_state = "biker-gloves" item_color = "bikergloves" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/gloves/megagloves desc = "Uncomfortably bulky armored gloves." name = "DRN-001 Gloves" icon_state = "megagloves" item_state = "megagloves" - + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/gloves/protogloves desc = "Funcionally identical to the DRN-001 model's, but in red!" name = "Prototype Gloves" icon_state = "protogloves" item_state = "protogloves" - + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/gloves/megaxgloves desc = "An upgrade to the DRN-001's gauntlets, retains the uncomfortable armor, but comes with white gloves!" name = "Maverick Hunter gloves" icon_state = "megaxgloves" item_state = "megaxgloves" - + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/gloves/joegloves desc = "Large grey gloves, very similar to the Prototype's." name = "Sniper Gloves" icon_state = "joegloves" item_state = "joegloves" - + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/gloves/doomguy desc = "" name = "Doomguy's gloves" icon_state = "doom" item_state = "doom" - + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/gloves/anchor_arms name = "Anchor Arms" @@ -59,10 +60,11 @@ obj/item/clothing/gloves/bikergloves desc = "Utilizes a non-slip technology that allows you to never drop your precious bottles of vodka." icon_state = "nr_gloves" item_state = "nr_gloves" - + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/gloves/neorussian/fingerless name = "neo-Russian fingerless gloves" desc = "For these tense combat situations when you just have to pick your nose." icon_state = "nr_fgloves" - item_state = "nr_fgloves" \ No newline at end of file + item_state = "nr_fgloves" + icon = 'icons/obj/clothing/vg_clothes.dmi' \ No newline at end of file diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm index a09568917d..a2f23a8d74 100644 --- a/code/modules/clothing/head/hardhat.dm +++ b/code/modules/clothing/head/hardhat.dm @@ -27,23 +27,11 @@ var/datum/action/A = X A.UpdateButtonIcon() -/obj/item/clothing/head/hardhat/pickup(mob/user) - ..() - if(on) - user.AddLuminosity(brightness_on) - SetLuminosity(0) - -/obj/item/clothing/head/hardhat/dropped(mob/user) - ..() - if(on) - user.AddLuminosity(-brightness_on) - SetLuminosity(brightness_on) - /obj/item/clothing/head/hardhat/proc/turn_on(mob/user) - user.AddLuminosity(brightness_on) + set_light(brightness_on) /obj/item/clothing/head/hardhat/proc/turn_off(mob/user) - user.AddLuminosity(-brightness_on) + set_light(0) /obj/item/clothing/head/hardhat/orange icon_state = "hardhat0_orange" diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index c7612dfd4d..116de4c94f 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -2,7 +2,6 @@ name = "helmet" desc = "Standard Security gear. Protects the head from impacts." icon_state = "helmet" - flags = HEADBANGPROTECT item_state = "helmet" armor = list(melee = 35, bullet = 30, laser = 30,energy = 10, bomb = 25, bio = 0, rad = 0, fire = 50, acid = 50) flags_inv = HIDEEARS @@ -17,8 +16,9 @@ dog_fashion = /datum/dog_fashion/head/helmet -/obj/item/clothing/head/helmet/New() +/obj/item/clothing/head/helmet/Initialize() ..() + SET_SECONDARY_FLAG(src, BANG_PROTECT) /obj/item/clothing/head/helmet/sec can_flashlight = 1 @@ -28,7 +28,7 @@ desc = "A bulletproof combat helmet that excels in protecting the wearer against traditional projectile weaponry and explosives to a minor extent." icon_state = "helmetalt" item_state = "helmetalt" - armor = list(melee = 15, bullet = 40, laser = 10, energy = 10, bomb = 40, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 15, bullet = 60, laser = 10, energy = 10, bomb = 40, bio = 0, rad = 0, fire = 50, acid = 50) can_flashlight = 1 dog_fashion = null @@ -44,7 +44,6 @@ toggle_message = "You pull the visor down on" alt_toggle_message = "You push the visor up on" can_toggle = 1 - flags = HEADBANGPROTECT armor = list(melee = 45, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0, fire = 50, acid = 50) flags_inv = HIDEEARS|HIDEFACE strip_delay = 80 @@ -64,7 +63,7 @@ flags_inv ^= visor_flags_inv flags_cover ^= visor_flags_cover icon_state = "[initial(icon_state)][up ? "up" : ""]" - user << "[up ? alt_toggle_message : toggle_message] \the [src]" + to_chat(user, "[up ? alt_toggle_message : toggle_message] \the [src]") user.update_inv_head() if(iscarbon(user)) @@ -182,12 +181,16 @@ icon_state = "knight_green" item_state = "knight_green" armor = list(melee = 41, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0, fire = 0, acid = 50) - flags = null flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH strip_delay = 80 dog_fashion = null +/obj/item/clothing/head/helmet/knight/Initialize(mapload) + ..() + // old knight helmets do not offer protection against loud noises + CLEAR_SECONDARY_FLAG(src, BANG_PROTECT) + /obj/item/clothing/head/helmet/knight/blue icon_state = "knight_blue" item_state = "knight_blue" @@ -219,7 +222,6 @@ //LightToggle /obj/item/clothing/head/helmet/update_icon() - var/state = "[initial(icon_state)]" if(F) if(F.on) @@ -233,8 +235,6 @@ var/mob/living/carbon/human/H = loc H.update_inv_head() - return - /obj/item/clothing/head/helmet/ui_action_click(mob/user, action) if(istype(action, /datum/action/item_action/toggle_helmet_flashlight)) toggle_helmlight() @@ -248,9 +248,9 @@ if(!F) if(!user.transferItemToLoc(S, src)) return - user << "You click [S] into place on [src]." + to_chat(user, "You click [S] into place on [src].") if(S.on) - SetLuminosity(0) + set_light(0) F = S update_icon() update_helmlight(user) @@ -263,7 +263,7 @@ if(istype(I, /obj/item/weapon/screwdriver)) if(F) for(var/obj/item/device/flashlight/seclite/S in src) - user << "You unscrew the seclite from [src]." + to_chat(user, "You unscrew the seclite from [src].") F = null S.loc = get_turf(user) update_helmlight(user) @@ -289,46 +289,21 @@ if(user.incapacitated()) return F.on = !F.on - user << "You toggle the helmetlight [F.on ? "on":"off"]." + to_chat(user, "You toggle the helmetlight [F.on ? "on":"off"].") playsound(user, 'sound/weapons/empty.ogg', 100, 1) update_helmlight(user) - return /obj/item/clothing/head/helmet/proc/update_helmlight(mob/user = null) if(F) if(F.on) - if(loc == user) - user.AddLuminosity(F.brightness_on) - else if(isturf(loc)) - SetLuminosity(F.brightness_on) + set_light(F.brightness_on) else - if(loc == user) - user.AddLuminosity(-F.brightness_on) - else if(isturf(loc)) - SetLuminosity(0) + set_light(0) update_icon() else - if(loc == user) - user.AddLuminosity(-5) - else if(isturf(loc)) - SetLuminosity(0) + set_light(0) for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() - -/obj/item/clothing/head/helmet/pickup(mob/user) - ..() - if(F) - if(F.on) - user.AddLuminosity(F.brightness_on) - SetLuminosity(0) - - -/obj/item/clothing/head/helmet/dropped(mob/user) - ..() - if(F) - if(F.on) - user.AddLuminosity(-F.brightness_on) - SetLuminosity(F.brightness_on) diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index 62cb3e1213..6f8e365bd9 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -88,10 +88,10 @@ if(candy_cooldown < world.time) var/obj/item/weapon/reagent_containers/food/snacks/candy_corn/CC = new /obj/item/weapon/reagent_containers/food/snacks/candy_corn(src) M.put_in_hands(CC) - M << "You slip a candy corn from your hat." + to_chat(M, "You slip a candy corn from your hat.") candy_cooldown = world.time+1200 else - M << "You just took a candy corn! You should wait a couple minutes, lest you burn through your stash." + to_chat(M, "You just took a candy corn! You should wait a couple minutes, lest you burn through your stash.") //Mime diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index fe262a1b74..19ebeec8ed 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -96,12 +96,12 @@ src.icon_state = "ushankaup" src.item_state = "ushankaup" earflaps = 0 - user << "You raise the ear flaps on the ushanka." + to_chat(user, "You raise the ear flaps on the ushanka.") else src.icon_state = "ushankadown" src.item_state = "ushankadown" earflaps = 1 - user << "You lower the ear flaps on the ushanka." + to_chat(user, "You lower the ear flaps on the ushanka.") /* * Pumpkin head diff --git a/code/modules/clothing/head/soft_caps.dm b/code/modules/clothing/head/soft_caps.dm index 8153f978f2..ec99487b4b 100644 --- a/code/modules/clothing/head/soft_caps.dm +++ b/code/modules/clothing/head/soft_caps.dm @@ -24,7 +24,7 @@ /obj/item/clothing/head/soft/AltClick(mob/user) ..() if(!user.canUseTopic(src, be_close=TRUE)) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return else flip(user) @@ -35,15 +35,15 @@ src.flipped = !src.flipped if(src.flipped) icon_state = "[item_color]soft_flipped" - user << "You flip the hat backwards." + to_chat(user, "You flip the hat backwards.") else icon_state = "[item_color]soft" - user << "You flip the hat back in normal position." + to_chat(user, "You flip the hat back in normal position.") usr.update_inv_head() //so our mob-overlays update /obj/item/clothing/head/soft/examine(mob/user) ..() - user << "Alt-click the cap to flip it [flipped ? "forwards" : "backwards"]." + to_chat(user, "Alt-click the cap to flip it [flipped ? "forwards" : "backwards"].") /obj/item/clothing/head/soft/red name = "red cap" diff --git a/code/modules/clothing/head/vg_hats.dm b/code/modules/clothing/head/vg_hats.dm index 414fa5ea62..42f98e3090 100644 --- a/code/modules/clothing/head/vg_hats.dm +++ b/code/modules/clothing/head/vg_hats.dm @@ -4,6 +4,7 @@ desc = "Judge, Jury, and Executioner." icon_state = "dredd-helmet" item_state = "dredd-helmet" + icon = 'icons/obj/clothing/vg_clothes.dmi' armor = list(melee = 40, bullet = 30, laser = 30,energy = 30, bomb = 50, bio = 90, rad = 20, fire = 50, acid = 50) cold_protection = HEAD min_cold_protection_temperature = SPACE_HELM_MIN_TEMP_PROTECT @@ -19,12 +20,14 @@ armor = list(melee = 25, bullet = 0, laser = 20, energy = 10, bomb = 10, bio = 0, rad = 0) item_state = "aviator_helmet" icon_state = "aviator_helmet" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/helmet/biker name = "Biker's Helmet" desc = "This helmet should protect you from russians and masked vigilantes." armor = list(melee = 25, bullet = 15, laser = 20, energy = 10, bomb = 10, bio = 0, rad = 0) icon_state = "biker_helmet" + icon = 'icons/obj/clothing/vg_clothes.dmi' flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR /obj/item/clothing/head/helmet/richard @@ -32,6 +35,7 @@ desc = "Do you like hurting people?" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) icon_state = "richard" + icon = 'icons/obj/clothing/vg_clothes.dmi' flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR /obj/item/clothing/head/helmet/megahelmet @@ -39,6 +43,7 @@ desc = "The helmet of the DRN-001 model. A simple, sturdy blue helmet." icon_state = "megahelmet" item_state = "megahelmet" + icon = 'icons/obj/clothing/vg_clothes.dmi' siemens_coefficient = 1 /obj/item/clothing/head/helmet/protohelmet @@ -46,6 +51,7 @@ desc = "Shiny red helmet with white accents and a built in shaded visor that does absolutely nothing, nothing but look rad as hell." icon_state = "protohelmet" item_state = "protohelmet" + icon = 'icons/obj/clothing/vg_clothes.dmi' siemens_coefficient = 1 /obj/item/clothing/head/helmet/megaxhelmet @@ -53,6 +59,7 @@ desc = "Heavily armored upgrade to the DRN-001 model's helmet, now comes with a pointless red crystal thing!" icon_state = "megaxhelmet" item_state = "megaxhelmet" + icon = 'icons/obj/clothing/vg_clothes.dmi' siemens_coefficient = 1 /obj/item/clothing/head/helmet/joehelmet @@ -61,6 +68,7 @@ icon_state = "joehelmet" flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR item_state = "joehelmet" + icon = 'icons/obj/clothing/vg_clothes.dmi' siemens_coefficient = 1 /obj/item/clothing/head/helmet/doomguy @@ -69,6 +77,7 @@ icon_state = "doom" flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR item_state = "doom" + icon = 'icons/obj/clothing/vg_clothes.dmi' armor = list(melee = 50, bullet = 40, laser = 40,energy = 40, bomb = 5, bio = 0, rad = 0) siemens_coefficient = 1 @@ -77,6 +86,7 @@ desc = "This piece of equipment can double as a pillow, a bowl, an emergency toilet, and sometimes as a helmet." icon_state = "nr_helmet" item_state = "nr_helmet" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/stalhelm @@ -84,18 +94,21 @@ desc = "Ein Helm, um die Nazi-Interesse an fremden Raumstationen zu sichern." icon_state = "stalhelm" item_state = "stalhelm" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/panzer name = "Panzer Cap" desc = "Ein Hut passen nur fr die grten Tanks." icon_state = "panzercap" item_state = "panzercap" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/naziofficer name = "Officer Cap" desc = "Ein Hut von Offizieren in der Nazi-Partei getragen." icon_state = "officercap" item_state = "officercap" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/russobluecamohat @@ -103,17 +116,20 @@ desc = "A symbol of discipline, honor, and lots and lots of removal of some type of skewered food." icon_state = "russobluecamohat" item_state = "russobluecamohat" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/russofurhat name = "russian fur hat" desc = "Russian winter got you down? Maybe your enemy, but not you!" icon_state = "russofurhat" item_state = "russofurhat" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/squatter_hat name = "slav squatter hat" icon_state = "squatter_hat" item_state = "squatter_hat" + icon = 'icons/obj/clothing/vg_clothes.dmi' desc = "Cyka blyat." /obj/item/clothing/head/snake @@ -121,6 +137,7 @@ desc = "Reenact acts of violence against reptiles, or sneak into a swamp unnoticed." icon_state = "snakehead" item_state = "snakehead" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/mummy_rags name = "mummy rags" @@ -128,6 +145,7 @@ icon_state = "mummy" item_state = "mummy" item_color = "mummy" + icon = 'icons/obj/clothing/vg_clothes.dmi' flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS /obj/item/clothing/head/clownpiece @@ -135,18 +153,21 @@ desc = "A purple polka-dotted jester's hat with yellow pompons." icon_state = "clownpiece" item_state = "clownpiece" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/mitre name = "mitre" desc = "A funny hat worn by extremely boring people." icon_state = "mitre" item_state = "mitre" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/tinfoil name = "tinfoil hat" desc = "There's no evidence that the security staff is NOT out to get you." icon_state = "foilhat" item_state = "paper" + icon = 'icons/obj/clothing/vg_clothes.dmi' siemens_coefficient = 2 /obj/item/clothing/head/celtic @@ -154,3 +175,4 @@ desc = "According to legend, Celtic kings would use crowns like this one to shield their subjects from harsh winters back on Earth." icon_state = "celtic_crown" item_state = "celtic_crown" + icon = 'icons/obj/clothing/vg_clothes.dmi' diff --git a/code/modules/clothing/masks/breath.dm b/code/modules/clothing/masks/breath.dm index 2fdb03374b..baee90b2f4 100644 --- a/code/modules/clothing/masks/breath.dm +++ b/code/modules/clothing/masks/breath.dm @@ -20,14 +20,14 @@ /obj/item/clothing/mask/breath/AltClick(mob/user) ..() if(!user.canUseTopic(src, be_close=TRUE)) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return else adjustmask(user) /obj/item/clothing/mask/breath/examine(mob/user) ..() - user << "Alt-click [src] to adjust it." + to_chat(user, "Alt-click [src] to adjust it.") /obj/item/clothing/mask/breath/medical desc = "A close-fitting sterile mask that can be connected to an air supply." diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm index 1c7277638e..dc5f3dfefe 100644 --- a/code/modules/clothing/masks/gasmask.dm +++ b/code/modules/clothing/masks/gasmask.dm @@ -78,7 +78,7 @@ for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() - user << "Your Clown Mask has now morphed into [choice], all praise the Honkmother!" + to_chat(user, "Your Clown Mask has now morphed into [choice], all praise the Honkmother!") return 1 /obj/item/clothing/mask/gas/sexyclown @@ -99,7 +99,7 @@ flags_cover = MASKCOVERSEYES resistance_flags = FLAMMABLE actions_types = list(/datum/action/item_action/adjust) - + /obj/item/clothing/mask/gas/mime/ui_action_click(mob/user) if(!istype(user) || user.incapacitated()) @@ -119,7 +119,7 @@ for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() - user << "Your Mime Mask has now morphed into [choice]!" + to_chat(user, "Your Mime Mask has now morphed into [choice]!") return 1 /obj/item/clothing/mask/gas/monkeymask @@ -193,5 +193,5 @@ obj/item/clothing/mask/gas/tiki_mask/ui_action_click(mob/user) for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() - M << "The Tiki Mask has now changed into the [choice] Mask!" + to_chat(M, "The Tiki Mask has now changed into the [choice] Mask!") return 1 diff --git a/code/modules/clothing/masks/hailer.dm b/code/modules/clothing/masks/hailer.dm index cd4282a047..c9b85ebcac 100644 --- a/code/modules/clothing/masks/hailer.dm +++ b/code/modules/clothing/masks/hailer.dm @@ -6,6 +6,7 @@ desc = "A standard issue Security gas mask with integrated 'Compli-o-nator 3000' device. Plays over a dozen pre-recorded compliance phrases designed to get scumbags to stand still whilst you taze them. Do not tamper with the device." actions_types = list(/datum/action/item_action/halt, /datum/action/item_action/adjust) icon_state = "sechailer" + item_state = "sechailer" flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS flags_inv = HIDEFACIALHAIR|HIDEFACE w_class = WEIGHT_CLASS_SMALL @@ -24,6 +25,7 @@ desc = "A close-fitting tactical mask with an especially aggressive Compli-o-nator 3000." actions_types = list(/datum/action/item_action/halt) icon_state = "swat" + item_state = "swat" aggressiveness = 3 flags_inv = HIDEFACIALHAIR|HIDEFACE|HIDEEYES|HIDEEARS|HIDEHAIR visor_flags_inv = 0 @@ -40,19 +42,19 @@ if(istype(W, /obj/item/weapon/screwdriver)) switch(aggressiveness) if(1) - user << "You set the restrictor to the middle position." + to_chat(user, "You set the restrictor to the middle position.") aggressiveness = 2 if(2) - user << "You set the restrictor to the last position." + to_chat(user, "You set the restrictor to the last position.") aggressiveness = 3 if(3) - user << "You set the restrictor to the first position." + to_chat(user, "You set the restrictor to the first position.") aggressiveness = 1 if(4) - user << "You adjust the restrictor but nothing happens, probably because it's broken." + to_chat(user, "You adjust the restrictor but nothing happens, probably because it's broken.") else if(istype(W, /obj/item/weapon/wirecutters)) if(aggressiveness != 4) - user << "You broke the restrictor!" + to_chat(user, "You broke the restrictor!") aggressiveness = 4 else ..() @@ -68,7 +70,7 @@ /obj/item/clothing/mask/gas/sechailer/emag_act(mob/user as mob) if(safety) safety = FALSE - user << "You silently fry [src]'s vocal circuit with the cryptographic sequencer." + to_chat(user, "You silently fry [src]'s vocal circuit with the cryptographic sequencer.") else return @@ -81,7 +83,7 @@ if(!can_use(usr)) return if(broken_hailer) - usr << "\The [src]'s hailing system is broken." + to_chat(usr, "\The [src]'s hailing system is broken.") return var/phrase = 0 //selects which phrase to use @@ -96,12 +98,12 @@ switch(recent_uses) if(3) - usr << "\The [src] is starting to heat up." + to_chat(usr, "\The [src] is starting to heat up.") if(4) - usr << "\The [src] is heating up dangerously from overuse!" + to_chat(usr, "\The [src] is heating up dangerously from overuse!") if(5) //overload broken_hailer = 1 - usr << "\The [src]'s power modulator overloads and breaks." + to_chat(usr, "\The [src]'s power modulator overloads and breaks.") return switch(aggressiveness) // checks if the user has unlocked the restricted phrases diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index 46de85d61a..8e385377d9 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -12,7 +12,7 @@ if(iscarbon(user)) var/mob/living/carbon/C = user if(src == C.wear_mask) - user << "You need help taking this off!" + to_chat(user, "You need help taking this off!") return ..() @@ -57,7 +57,7 @@ /obj/item/clothing/mask/pig/attack_self(mob/user) voicechange = !voicechange - user << "You turn the voice box [voicechange ? "on" : "off"]!" + to_chat(user, "You turn the voice box [voicechange ? "on" : "off"]!") /obj/item/clothing/mask/pig/speechModification(message) if(voicechange) diff --git a/code/modules/clothing/masks/vg_masks.dm b/code/modules/clothing/masks/vg_masks.dm index 0f4685127d..c0569d2cb4 100644 --- a/code/modules/clothing/masks/vg_masks.dm +++ b/code/modules/clothing/masks/vg_masks.dm @@ -2,13 +2,16 @@ name = "purple clown wig and mask" desc = "Some pranksters are truly magical." icon_state = "wizzclown" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/mask/chapmask name = "venetian mask" desc = "A plain porcelain mask that covers the entire face. Standard attire for particularly unspeakable religions. The eyes are wide shut." icon_state = "chapmask" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/mask/neorussian name = "neo-Russian mask" desc = "Somehow, it makes you act and look way more polite than usual." icon_state = "nr_mask" + icon = 'icons/obj/clothing/vg_clothes.dmi' diff --git a/code/modules/clothing/shoes/bananashoes.dm b/code/modules/clothing/shoes/bananashoes.dm index 8dcfa75407..15cbc11c9f 100644 --- a/code/modules/clothing/shoes/bananashoes.dm +++ b/code/modules/clothing/shoes/bananashoes.dm @@ -26,48 +26,48 @@ on = !on flags &= ~NOSLIP update_icon() - loc << "You ran out of bananium!" + to_chat(loc, "You ran out of bananium!") else ..() /obj/item/clothing/shoes/clown_shoes/banana_shoes/attack_self(mob/user) var/sheet_amount = bananium.retrieve_all() if(sheet_amount) - user << "You retrieve [sheet_amount] sheets of bananium from the prototype shoes." + to_chat(user, "You retrieve [sheet_amount] sheets of bananium from the prototype shoes.") else - user << "You cannot retrieve any bananium from the prototype shoes." + to_chat(user, "You cannot retrieve any bananium from the prototype shoes.") /obj/item/clothing/shoes/clown_shoes/banana_shoes/attackby(obj/item/O, mob/user, params) if(!bananium.get_item_material_amount(O)) - user << "This item has no bananium!" + to_chat(user, "This item has no bananium!") return if(!user.dropItemToGround(O)) - user << "You can't drop [O]!" + to_chat(user, "You can't drop [O]!") return var/bananium_amount = bananium.insert_item(O) if(bananium_amount) - user << "You insert [O] into the prototype shoes." + to_chat(user, "You insert [O] into the prototype shoes.") qdel(O) else - user << "You are unable to insert more bananium!" + to_chat(user, "You are unable to insert more bananium!") /obj/item/clothing/shoes/clown_shoes/banana_shoes/examine(mob/user) ..() var/ban_amt = bananium.amount(MAT_BANANIUM) - user << "The shoes are [on ? "enabled" : "disabled"]. There is [ban_amt ? ban_amt : "no"] bananium left." + to_chat(user, "The shoes are [on ? "enabled" : "disabled"]. There is [ban_amt ? ban_amt : "no"] bananium left.") /obj/item/clothing/shoes/clown_shoes/banana_shoes/ui_action_click(mob/user) if(bananium.amount(MAT_BANANIUM)) on = !on update_icon() - user << "You [on ? "activate" : "deactivate"] the prototype shoes." + to_chat(user, "You [on ? "activate" : "deactivate"] the prototype shoes.") if(on) flags |= NOSLIP else flags &= ~NOSLIP else - user << "You need bananium to turn the prototype shoes on!" + to_chat(user, "You need bananium to turn the prototype shoes on!") /obj/item/clothing/shoes/clown_shoes/banana_shoes/update_icon() if(on) diff --git a/code/modules/clothing/shoes/colour.dm b/code/modules/clothing/shoes/colour.dm index b714d8eb11..f455293ca4 100644 --- a/code/modules/clothing/shoes/colour.dm +++ b/code/modules/clothing/shoes/colour.dm @@ -108,6 +108,6 @@ if(ishuman(user)) var/mob/living/carbon/human/C = user if(C.shoes == src && src.chained == 1) - user << "You need help taking these off!" + to_chat(user, "You need help taking these off!") return ..() diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index da3df123b2..6be631de53 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -29,7 +29,7 @@ src.slowdown = slowdown_active magpulse = !magpulse icon_state = "[magboot_state][magpulse]" - user << "You [magpulse ? "enable" : "disable"] the mag-pulse traction system." + to_chat(user, "You [magpulse ? "enable" : "disable"] the mag-pulse traction system.") user.update_inv_shoes() //so our mob-overlays update user.update_gravity(user.has_gravity()) for(var/X in actions) @@ -41,7 +41,7 @@ /obj/item/clothing/shoes/magboots/examine(mob/user) ..() - user << "Its mag-pulse traction system appears to be [magpulse ? "enabled" : "disabled"]." + to_chat(user, "Its mag-pulse traction system appears to be [magpulse ? "enabled" : "disabled"].") /obj/item/clothing/shoes/magboots/advance diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 693fec80cb..2cdd1dfb87 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -190,7 +190,7 @@ return if(recharging_time > world.time) - usr << "The boot's internal propulsion needs to recharge still!" + to_chat(usr, "The boot's internal propulsion needs to recharge still!") return var/atom/target = get_edge_target_turf(usr, usr.dir) //gets the user's direction diff --git a/code/modules/clothing/shoes/vg_shoes.dm b/code/modules/clothing/shoes/vg_shoes.dm index 9b1113843b..2ad9715826 100644 --- a/code/modules/clothing/shoes/vg_shoes.dm +++ b/code/modules/clothing/shoes/vg_shoes.dm @@ -4,12 +4,14 @@ desc = "A sturdy pair of leather shoes." icon_state = "leather" item_color = "leather" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/magboots/deathsquad desc = "Very expensive and advanced magnetic boots, used only by the elite during extravehicular activity to ensure the user remains safely attached to the vehicle." name = "deathsquad magboots" icon_state = "DS-magboots0" magboot_state = "DS-magboots" + icon = 'icons/obj/clothing/vg_clothes.dmi' origin_tech = null resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF @@ -17,6 +19,7 @@ desc = "Magnetic boots, often used during extravehicular activity to ensure the user remains safely attached to the vehicle. These are painted in the colors of an atmospheric technician." name = "atmospherics magboots" icon_state = "atmosmagboots0" + icon = 'icons/obj/clothing/vg_clothes.dmi' magboot_state = "atmosmagboots" resistance_flags = FIRE_PROOF @@ -24,68 +27,82 @@ name = "Simon's Shoes" desc = "Simon's Shoes." icon_state = "simonshoes" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/kneesocks name = "kneesocks" desc = "A pair of girly knee-high socks." icon_state = "kneesock" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/jestershoes name = "Jester Shoes" desc = "As worn by the clowns of old." icon_state = "jestershoes" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/aviatorboots name = "Aviator Boots" desc = "Boots suitable for just about any occasion." icon_state = "aviator_boots" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/libertyshoes name = "Liberty Shoes" desc = "Freedom isn't free, neither were these shoes." icon_state = "libertyshoes" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/megaboots name = "DRN-001 Boots" desc = "Large armored boots, very weak to large spikes." icon_state = "megaboots" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/protoboots name = "Prototype Boots" desc = "Functionally identical to the DRN-001 model's boots, but in red." icon_state = "protoboots" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/megaxboots name = "Maverick Hunter boots" desc = "Regardless of how much stronger these boots are than the DRN-001 model's, they're still extremely easy to pierce with a large spike." icon_state = "megaxboots" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/joeboots name = "Sniper Boots" desc = "Nearly identical to the Prototype's boots, except in black." icon_state = "joeboots" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/doomguy name = "Doomguy's boots" desc = "" icon_state = "doom" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/rottenshoes name = "rotten shoes" desc = "These shoes seem perfect for sneaking around." icon_state = "rottenshoes" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/sandal/slippers name = "magic slippers" icon_state = "slippers" desc = "For the wizard that puts comfort first. Who's going to laugh?" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/slippers_worn name = "worn bunny slippers" desc = "Fluffy..." icon_state = "slippers_worn" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/shoes/jackboots/neorussian name = "neo-Russian boots" desc = "Tovarish, no one will realize you stepped on a pile of shit if your pair already looks like shit." - icon_state = "nr_boots" \ No newline at end of file + icon_state = "nr_boots" + icon = 'icons/obj/clothing/vg_clothes.dmi' \ No newline at end of file diff --git a/code/modules/clothing/spacesuits/chronosuit.dm b/code/modules/clothing/spacesuits/chronosuit.dm index ff281a7cb3..15e4d3f885 100644 --- a/code/modules/clothing/spacesuits/chronosuit.dm +++ b/code/modules/clothing/spacesuits/chronosuit.dm @@ -72,8 +72,8 @@ switch(severity) if(1) if(activated && user && ishuman(user) && (user.wear_suit == src)) - user << "E:FATAL:RAM_READ_FAIL\nE:FATAL:STACK_EMPTY\nE:FATAL:READ_NULL_POINT\nE:FATAL:PWR_BUS_OVERLOAD" - user << "An electromagnetic pulse disrupts your [name] and violently tears you out of time-bluespace!" + to_chat(user, "E:FATAL:RAM_READ_FAIL\nE:FATAL:STACK_EMPTY\nE:FATAL:READ_NULL_POINT\nE:FATAL:PWR_BUS_OVERLOAD") + to_chat(user, "An electromagnetic pulse disrupts your [name] and violently tears you out of time-bluespace!") user.emote("scream") deactivate(1, 1) @@ -129,7 +129,7 @@ for(var/exposed_item in exposed) var/obj/item/exposed_I = exposed_item if(exposed_I && !(exposed_I.type in chronosafe_items) && user.dropItemToGround(exposed_I)) - user << "Your [exposed_I.name] got left behind." + to_chat(user, "Your [exposed_I.name] got left behind.") user.ExtinguishMob() @@ -201,24 +201,24 @@ activating = 1 var/mob/living/carbon/human/user = src.loc if(user && ishuman(user) && user.wear_suit == src) - user << "\nChronosuitMK4 login: root" - user << "Password:\n" - user << "root@ChronosuitMK4# chronowalk4 --start\n" + to_chat(user, "\nChronosuitMK4 login: root") + to_chat(user, "Password:\n") + to_chat(user, "root@ChronosuitMK4# chronowalk4 --start\n") if(user.head && istype(user.head, /obj/item/clothing/head/helmet/space/chronos)) - user << "\[ ok \] Mounting /dev/helm" + to_chat(user, "\[ ok \] Mounting /dev/helm") helmet = user.head helmet.flags |= NODROP helmet.suit = src src.flags |= NODROP - user << "\[ ok \] Starting brainwave scanner" - user << "\[ ok \] Starting ui display driver" - user << "\[ ok \] Initializing chronowalk4-view" + to_chat(user, "\[ ok \] Starting brainwave scanner") + to_chat(user, "\[ ok \] Starting ui display driver") + to_chat(user, "\[ ok \] Initializing chronowalk4-view") new_camera(user) START_PROCESSING(SSobj, src) activated = 1 else - user << "\[ fail \] Mounting /dev/helm" - user << "FATAL: Unable to locate /dev/helm. Aborting..." + to_chat(user, "\[ fail \] Mounting /dev/helm") + to_chat(user, "FATAL: Unable to locate /dev/helm. Aborting...") teleport_now.Grant(user) cooldown = world.time + cooldowntime activating = 0 @@ -240,14 +240,14 @@ user.electrocute_act(35, src, safety = 1) user.Weaken(10) if(!silent) - user << "\nroot@ChronosuitMK4# chronowalk4 --stop\n" + to_chat(user, "\nroot@ChronosuitMK4# chronowalk4 --stop\n") if(camera) - user << "\[ ok \] Sending TERM signal to chronowalk4-view" + to_chat(user, "\[ ok \] Sending TERM signal to chronowalk4-view") if(helmet) - user << "\[ ok \] Stopping ui display driver" - user << "\[ ok \] Stopping brainwave scanner" - user << "\[ ok \] Unmounting /dev/helmet" - user << "logout" + to_chat(user, "\[ ok \] Stopping ui display driver") + to_chat(user, "\[ ok \] Stopping brainwave scanner") + to_chat(user, "\[ ok \] Unmounting /dev/helmet") + to_chat(user, "logout") if(helmet) helmet.flags &= ~NODROP helmet.suit = null diff --git a/code/modules/clothing/spacesuits/flightsuit.dm b/code/modules/clothing/spacesuits/flightsuit.dm index cd98c350d3..bd33082aa4 100644 --- a/code/modules/clothing/spacesuits/flightsuit.dm +++ b/code/modules/clothing/spacesuits/flightsuit.dm @@ -18,11 +18,11 @@ var/icon_state_boost = "flightpack_boost" var/item_state_boost = "flightpack_boost" actions_types = list(/datum/action/item_action/flightpack/toggle_flight, /datum/action/item_action/flightpack/engage_boosters, /datum/action/item_action/flightpack/toggle_stabilizers, /datum/action/item_action/flightpack/change_power, /datum/action/item_action/flightpack/toggle_airbrake) - armor = list(melee = 20, bullet = 20, laser = 20, energy = 10, bomb = 30, bio = 100, rad = 75, fire = 100, acid = 100) + armor = list(melee = 20, bullet = 20, laser = 20, energy = 10, bomb = 30, bio = 100, rad = 75, fire = 100, acid = 75) w_class = WEIGHT_CLASS_BULKY slot_flags = SLOT_BACK - resistance_flags = FIRE_PROOF | ACID_PROOF + resistance_flags = FIRE_PROOF var/obj/item/clothing/suit/space/hardsuit/flightsuit/suit = null var/mob/living/carbon/human/wearer = null @@ -174,8 +174,8 @@ damage = emp_weak_damage if(emp_damage <= (emp_disable_threshold * 1.5)) emp_damage += damage - wearer << "Flightpack: BZZZZZZZZZZZT" - wearer << "Flightpack: WARNING: Class [severity] EMP detected! Circuit damage at [(100/emp_disable_threshold)*emp_damage]!" + to_chat(wearer, "Flightpack: BZZZZZZZZZZZT") + to_chat(wearer, "Flightpack: WARNING: Class [severity] EMP detected! Circuit damage at [(100/emp_disable_threshold)*emp_damage]!") //action BUTTON CODE /obj/item/device/flightpack/ui_action_click(owner, action) @@ -796,13 +796,13 @@ /obj/item/device/flightpack/proc/usermessage(message, urgency = 0) if(urgency == 0) - wearer << "\icon[src]|[message]" + to_chat(wearer, "\icon[src]|[message]") if(urgency == 1) - wearer << "\icon[src]|[message]" + to_chat(wearer, "\icon[src]|[message]") if(urgency == 2) - wearer << "\icon[src]|[message]" + to_chat(wearer, "\icon[src]|[message]") if(urgency == 3) - wearer << "\icon[src]|[message]" + to_chat(wearer, "\icon[src]|[message]") /obj/item/device/flightpack/attackby(obj/item/I, mob/user, params) if(ishuman(user) && !ishuman(src.loc)) @@ -949,17 +949,17 @@ /obj/item/clothing/suit/space/hardsuit/flightsuit/proc/usermessage(message, urgency = 0) if(!urgency) - user << "\icon[src]|[message]" + to_chat(user, "\icon[src]|[message]") else if(urgency == 1) - user << "\icon[src]|[message]" + to_chat(user, "\icon[src]|[message]") else if(urgency == 2) - user << "\icon[src]|[message]" + to_chat(user, "\icon[src]|[message]") /obj/item/clothing/suit/space/hardsuit/flightsuit/examine(mob/user) ..() - user << "SUIT: [locked ? "LOCKED" : "UNLOCKED"]" - user << "FLIGHTPACK: [deployedpack ? "ENGAGED" : "DISENGAGED"] FLIGHTSHOES : [deployedshoes ? "ENGAGED" : "DISENGAGED"] HELMET : [suittoggled ? "ENGAGED" : "DISENGAGED"]" - user << "Its maintainence panel is [maint_panel ? "OPEN" : "CLOSED"]" + to_chat(user, "SUIT: [locked ? "LOCKED" : "UNLOCKED"]") + to_chat(user, "FLIGHTPACK: [deployedpack ? "ENGAGED" : "DISENGAGED"] FLIGHTSHOES : [deployedshoes ? "ENGAGED" : "DISENGAGED"] HELMET : [suittoggled ? "ENGAGED" : "DISENGAGED"]") + to_chat(user, "Its maintainence panel is [maint_panel ? "OPEN" : "CLOSED"]") /obj/item/clothing/suit/space/hardsuit/flightsuit/Destroy() dropped() @@ -1259,6 +1259,7 @@ item_color = "flight" resistance_flags = FIRE_PROOF | ACID_PROOF brightness_on = 7 + light_color = "#30ffff" armor = list(melee = 20, bullet = 20, laser = 20, energy = 10, bomb = 30, bio = 100, rad = 75, fire = 100, acid = 100) max_heat_protection_temperature = FIRE_HELM_MAX_TEMP_PROTECT var/list/datahuds = list(DATA_HUD_SECURITY_ADVANCED, DATA_HUD_MEDICAL_ADVANCED, DATA_HUD_DIAGNOSTIC) @@ -1288,12 +1289,12 @@ /obj/item/clothing/head/helmet/space/hardsuit/flightsuit/proc/toggle_zoom(mob/living/user, force_off = FALSE) if(zoom || force_off) user.client.change_view(world.view) - user << "Disabling smart zooming image enhancement..." + to_chat(user, "Disabling smart zooming image enhancement...") zoom = FALSE return FALSE else user.client.change_view(zoom_range) - user << "Enabling smart zooming image enhancement!" + to_chat(user, "Enabling smart zooming image enhancement!") zoom = TRUE return TRUE diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 9da9214539..b9c4a117cb 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -21,25 +21,15 @@ user.update_inv_head() //so our mob-overlays update if(on) - user.AddLuminosity(brightness_on) + set_light(brightness_on) else - user.AddLuminosity(-brightness_on) + set_light(0) for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() - -/obj/item/clothing/head/helmet/space/hardsuit/pickup(mob/user) - ..() - if(on) - user.AddLuminosity(brightness_on) - SetLuminosity(0) - /obj/item/clothing/head/helmet/space/hardsuit/dropped(mob/user) ..() - if(on) - user.AddLuminosity(-brightness_on) - SetLuminosity(brightness_on) if(suit) suit.RemoveHelmet() @@ -97,28 +87,28 @@ /obj/item/clothing/suit/space/hardsuit/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/tank/jetpack/suit)) if(jetpack) - user << "[src] already has a jetpack installed." + to_chat(user, "[src] already has a jetpack installed.") return if(src == user.get_item_by_slot(slot_wear_suit)) //Make sure the player is not wearing the suit before applying the upgrade. - user << "You cannot install the upgrade to [src] while wearing it." + to_chat(user, "You cannot install the upgrade to [src] while wearing it.") return if(user.transferItemToLoc(I, src)) jetpack = I - user << "You successfully install the jetpack into [src]." + to_chat(user, "You successfully install the jetpack into [src].") else if(istype(I, /obj/item/weapon/screwdriver)) if(!jetpack) - user << "[src] has no jetpack installed." + to_chat(user, "[src] has no jetpack installed.") return if(src == user.get_item_by_slot(slot_wear_suit)) - user << "You cannot remove the jetpack from [src] while wearing it." + to_chat(user, "You cannot remove the jetpack from [src] while wearing it.") return jetpack.turn_off() jetpack.loc = get_turf(src) jetpack = null - user << "You successfully remove the jetpack from [src]." + to_chat(user, "You successfully remove the jetpack from [src].") /obj/item/clothing/suit/space/hardsuit/equipped(mob/user, slot) @@ -254,23 +244,23 @@ /obj/item/clothing/head/helmet/space/hardsuit/syndi/attack_self(mob/user) //Toggle Helmet if(!isturf(user.loc)) - user << "You cannot toggle your helmet while in this [user.loc]!" //To prevent some lighting anomalities. + to_chat(user, "You cannot toggle your helmet while in this [user.loc]!" ) return on = !on if(on || force) - user << "You switch your hardsuit to EVA mode, sacrificing speed for space protection." + to_chat(user, "You switch your hardsuit to EVA mode, sacrificing speed for space protection.") name = initial(name) desc = initial(desc) - user.AddLuminosity(brightness_on) + set_light(brightness_on) flags |= visor_flags flags_cover |= HEADCOVERSEYES | HEADCOVERSMOUTH flags_inv |= visor_flags_inv cold_protection |= HEAD else - user << "You switch your hardsuit to combat mode and can now run at full speed." + to_chat(user, "You switch your hardsuit to combat mode and can now run at full speed.") name += " (combat)" desc = alt_desc - user.AddLuminosity(-brightness_on) + set_light(0) flags &= ~visor_flags flags_cover &= ~(HEADCOVERSEYES | HEADCOVERSMOUTH) flags_inv &= ~visor_flags_inv @@ -437,7 +427,7 @@ /obj/item/clothing/head/helmet/space/hardsuit/rd/equipped(mob/living/carbon/human/user, slot) ..() if(user.glasses && istype(user.glasses, /obj/item/clothing/glasses/hud/diagnostic)) - user << ("Your [user.glasses] prevents you using [src]'s diagnostic visor HUD.") + to_chat(user, ("Your [user.glasses] prevents you using [src]'s diagnostic visor HUD.")) else onboard_hud_enabled = 1 var/datum/atom_hud/DHUD = huds[DATA_HUD_DIAGNOSTIC] diff --git a/code/modules/clothing/spacesuits/plasmamen.dm b/code/modules/clothing/spacesuits/plasmamen.dm index 359afc302f..57137d9b6c 100644 --- a/code/modules/clothing/spacesuits/plasmamen.dm +++ b/code/modules/clothing/spacesuits/plasmamen.dm @@ -16,7 +16,7 @@ /obj/item/clothing/suit/space/eva/plasmaman/examine(mob/user) ..() - user << "There are [extinguishes_left] extinguisher charges left in this suit." + to_chat(user, "There are [extinguishes_left] extinguisher charges left in this suit.") /obj/item/clothing/suit/space/eva/plasmaman/proc/Extinguish(mob/living/carbon/human/H) @@ -54,28 +54,10 @@ user.update_inv_head() //So the mob overlay updates if(on) - turn_on(user) + set_light(brightness_on) else - turn_off(user) + set_light(0) + for(var/X in actions) var/datum/action/A=X A.UpdateButtonIcon() - -/obj/item/clothing/head/helmet/space/plasmaman/pickup(mob/user) - ..() - if(on) - user.AddLuminosity(brightness_on) - SetLuminosity(0) - -/obj/item/clothing/head/helmet/space/plasmaman/dropped(mob/user) - ..() - if(on) - user.AddLuminosity(-brightness_on) - SetLuminosity(brightness_on) - -/obj/item/clothing/head/helmet/space/plasmaman/proc/turn_on/(mob/user) - user.AddLuminosity(brightness_on) - -/obj/item/clothing/head/helmet/space/plasmaman/proc/turn_off/(mob/user) - user.AddLuminosity(-brightness_on) - diff --git a/code/modules/clothing/spacesuits/vg_spess.dm b/code/modules/clothing/spacesuits/vg_spess.dm index f675dde9fe..5d55d57834 100644 --- a/code/modules/clothing/spacesuits/vg_spess.dm +++ b/code/modules/clothing/spacesuits/vg_spess.dm @@ -7,6 +7,7 @@ icon_state = "hardsuit0-nazi" armor = list(melee = 40, bullet = 30, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 20) item_color = "nazi" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/suit/space/hardsuit/nazi name = "nazi hardsuit" @@ -17,6 +18,7 @@ armor = list(melee = 40, bullet = 30, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 20) allowed = list(/obj/item/weapon/gun,/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/weapon/melee/) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/nazi + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/helmet/space/hardsuit/soviet name = "soviet hardhelmet" @@ -25,6 +27,7 @@ icon_state = "hardsuit0-soviet" armor = list(melee = 40, bullet = 30, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 20) item_color = "soviet" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/suit/space/hardsuit/soviet name = "soviet hardsuit" @@ -35,6 +38,7 @@ armor = list(melee = 40, bullet = 30, laser = 30, energy = 15, bomb = 35, bio = 100, rad = 20) allowed = list(/obj/item/weapon/gun,/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/weapon/melee/) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/soviet + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/helmet/space/hardsuit/knight name = "Space-Knight helm" @@ -44,6 +48,7 @@ armor = list(melee = 60, bullet = 40, laser = 40,energy = 30, bomb = 50, bio = 100, rad = 60) max_heat_protection_temperature = FIRE_IMMUNITY_HELM_MAX_TEMP_PROTECT item_color="knight" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/suit/space/hardsuit/knight name = "Space-Knight armour" @@ -56,6 +61,7 @@ max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT siemens_coefficient = 0.5 helmettype = /obj/item/clothing/head/helmet/space/hardsuit/knight + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/helmet/space/hardsuit/knight/black name = "Black Knight's helm" @@ -64,6 +70,7 @@ item_state = "hardsuit0-blackknight" armor = list(melee = 70, bullet = 65, laser = 50,energy = 25, bomb = 60, bio = 100, rad = 60) item_color="blackknight" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/suit/space/hardsuit/knight/black name = "Black Knight's armour" @@ -72,6 +79,7 @@ item_state = "hardsuit-blackknight" armor = list(melee = 70, bullet = 65, laser = 50,energy = 25, bomb = 60, bio = 100, rad = 60) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/knight/black + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/helmet/space/hardsuit/knight/solaire name = "Solar helm" @@ -80,6 +88,7 @@ item_state = "hardsuit0-solaire" armor = list(melee = 60, bullet = 65, laser = 90,energy = 30, bomb = 60, bio = 100, rad = 100) item_color="solaire" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/suit/space/hardsuit/knight/solaire name = "Solar armour" @@ -88,6 +97,7 @@ item_state = "hardsuit-solaire" armor = list(melee = 60, bullet = 65, laser = 90,energy = 30, bomb = 60, bio = 100, rad = 100) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/knight/solaire + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/helmet/space/hardsuit/t51b name = "T-51b Power Armor" @@ -96,6 +106,7 @@ item_state = "hardsuit0-t51b" armor = list(melee = 35, bullet = 35, laser = 40, energy = 40, bomb = 80, bio = 100, rad = 100) item_color="t51b" + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/suit/space/hardsuit/t51b name = "T-51b Power Armor" @@ -104,6 +115,7 @@ item_state = "hardsuit-t51b" armor = list(melee = 35, bullet = 35, laser = 40, energy = 40, bomb = 80, bio = 100, rad = 100) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/t51b + icon = 'icons/obj/clothing/vg_clothes.dmi' /obj/item/clothing/head/helmet/space/bomberman @@ -113,6 +125,7 @@ item_state = "bomberman" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 100, bio = 0, rad = 0) siemens_coefficient = 0 + icon = 'icons/obj/clothing/vg_clothes.dmi' obj/item/clothing/suit/space/bomberman name = "Bomberman's suit" @@ -122,4 +135,5 @@ obj/item/clothing/suit/space/bomberman slowdown = 0 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 100, bio = 0, rad = 0) siemens_coefficient = 0 - max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT \ No newline at end of file + max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT + icon = 'icons/obj/clothing/vg_clothes.dmi' \ No newline at end of file diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index ff0486de57..f05923f899 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -119,7 +119,7 @@ icon_state = "bulletproof" item_state = "armor" blood_overlay_type = "armor" - armor = list(melee = 15, bullet = 80, laser = 10, energy = 10, bomb = 40, bio = 0, rad = 0, fire = 50, acid = 50) + armor = list(melee = 15, bullet = 60, laser = 10, energy = 10, bomb = 40, bio = 0, rad = 0, fire = 50, acid = 50) strip_delay = 70 put_on_delay = 50 @@ -167,11 +167,11 @@ /obj/item/clothing/suit/armor/reactive/attack_self(mob/user) src.active = !( src.active ) if (src.active) - user << "[src] is now active." + to_chat(user, "[src] is now active.") src.icon_state = "reactive" src.item_state = "reactive" else - user << "[src] is now inactive." + to_chat(user, "[src] is now inactive.") src.icon_state = "reactiveoff" src.item_state = "reactiveoff" src.add_fingerprint(user) diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index a361bb11cf..2c75fb5284 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -428,7 +428,7 @@ name = "winter coat" desc = "A heavy jacket made from 'synthetic' animal furs." icon_state = "coatwinter" - item_state = "labcoat" + item_state = "coatwinter" body_parts_covered = CHEST|GROIN|ARMS cold_protection = CHEST|GROIN|ARMS min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT @@ -447,6 +447,7 @@ /obj/item/clothing/suit/hooded/wintercoat/captain name = "captain's winter coat" icon_state = "coatcaptain" + item_state = "coatcaptain" armor = list(melee = 25, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 0, acid = 50) allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/ballistic,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic) hoodtype = /obj/item/clothing/head/hooded/winterhood/captain @@ -457,6 +458,7 @@ /obj/item/clothing/suit/hooded/wintercoat/security name = "security winter coat" icon_state = "coatsecurity" + item_state = "coatsecurity" armor = list(melee = 25, bullet = 15, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0, fire = 0, acid = 45) allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/reagent_containers/spray/pepper,/obj/item/weapon/gun/ballistic,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/restraints/handcuffs,/obj/item/device/flashlight/seclite,/obj/item/weapon/melee/classic_baton/telescopic) hoodtype = /obj/item/clothing/head/hooded/winterhood/security @@ -467,6 +469,7 @@ /obj/item/clothing/suit/hooded/wintercoat/medical name = "medical winter coat" icon_state = "coatmedical" + item_state = "coatmedical" allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle,/obj/item/weapon/paper,/obj/item/weapon/melee/classic_baton/telescopic) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0, fire = 0, acid = 45) hoodtype = /obj/item/clothing/head/hooded/winterhood/medical @@ -477,6 +480,7 @@ /obj/item/clothing/suit/hooded/wintercoat/science name = "science winter coat" icon_state = "coatscience" + item_state = "coatscience" allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle,/obj/item/weapon/paper,/obj/item/weapon/melee/classic_baton/telescopic) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 10, bio = 0, rad = 0, fire = 0, acid = 0) hoodtype = /obj/item/clothing/head/hooded/winterhood/science @@ -487,6 +491,7 @@ /obj/item/clothing/suit/hooded/wintercoat/engineering name = "engineering winter coat" icon_state = "coatengineer" + item_state = "coatengineer" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 20, fire = 30, acid = 45) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/device/t_scanner, /obj/item/weapon/rcd, /obj/item/weapon/pipe_dispenser) hoodtype = /obj/item/clothing/head/hooded/winterhood/engineering @@ -497,6 +502,7 @@ /obj/item/clothing/suit/hooded/wintercoat/engineering/atmos name = "atmospherics winter coat" icon_state = "coatatmos" + item_state = "coatatmos" hoodtype = /obj/item/clothing/head/hooded/winterhood/engineering/atmos /obj/item/clothing/head/hooded/winterhood/engineering/atmos @@ -505,6 +511,7 @@ /obj/item/clothing/suit/hooded/wintercoat/hydro name = "hydroponics winter coat" icon_state = "coathydro" + item_state = "coathydro" allowed = list(/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/device/plant_analyzer,/obj/item/seeds,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/cultivator,/obj/item/weapon/reagent_containers/spray/pestspray,/obj/item/weapon/hatchet,/obj/item/weapon/storage/bag/plants) hoodtype = /obj/item/clothing/head/hooded/winterhood/hydro @@ -514,6 +521,7 @@ /obj/item/clothing/suit/hooded/wintercoat/cargo name = "cargo winter coat" icon_state = "coatcargo" + item_state = "coatcargo" hoodtype = /obj/item/clothing/head/hooded/winterhood/cargo /obj/item/clothing/head/hooded/winterhood/cargo @@ -522,6 +530,7 @@ /obj/item/clothing/suit/hooded/wintercoat/miner name = "mining winter coat" icon_state = "coatminer" + item_state = "coatminer" allowed = list(/obj/item/weapon/pickaxe,/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter) armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0, fire = 0, acid = 0) hoodtype = /obj/item/clothing/head/hooded/winterhood/miner diff --git a/code/modules/clothing/suits/toggles.dm b/code/modules/clothing/suits/toggles.dm index de03809c75..151f842ed1 100644 --- a/code/modules/clothing/suits/toggles.dm +++ b/code/modules/clothing/suits/toggles.dm @@ -55,10 +55,10 @@ if(ishuman(src.loc)) var/mob/living/carbon/human/H = src.loc if(H.wear_suit != src) - H << "You must be wearing [src] to put up the hood!" + to_chat(H, "You must be wearing [src] to put up the hood!") return if(H.head) - H << "You're already wearing something on your head!" + to_chat(H, "You're already wearing something on your head!") return else if(H.equip_to_slot_if_possible(hood,slot_head,0,0,1)) suittoggled = 1 @@ -95,7 +95,7 @@ /obj/item/clothing/suit/toggle/AltClick(mob/user) ..() if(!user.canUseTopic(src, be_close=TRUE)) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return else suit_toggle(user) @@ -109,7 +109,7 @@ if(!can_use(usr)) return 0 - usr << "You toggle [src]'s [togglename]." + to_chat(usr, "You toggle [src]'s [togglename].") if(src.suittoggled) src.icon_state = "[initial(icon_state)]" src.suittoggled = 0 @@ -123,7 +123,7 @@ /obj/item/clothing/suit/toggle/examine(mob/user) ..() - user << "Alt-click on [src] to toggle the [togglename]." + to_chat(user, "Alt-click on [src] to toggle the [togglename].") //Hardsuit toggle code /obj/item/clothing/suit/space/hardsuit/New() @@ -171,7 +171,7 @@ helmet.attack_self(H) H.transferItemToLoc(helmet, src, TRUE) H.update_inv_wear_suit() - H << "The helmet on the hardsuit disengages." + to_chat(H, "The helmet on the hardsuit disengages.") playsound(src.loc, 'sound/mecha/mechmove03.ogg', 50, 1) else helmet.forceMove(src) @@ -189,13 +189,13 @@ if(!suittoggled) if(ishuman(src.loc)) if(H.wear_suit != src) - H << "You must be wearing [src] to engage the helmet!" + to_chat(H, "You must be wearing [src] to engage the helmet!") return if(H.head) - H << "You're already wearing something on your head!" + to_chat(H, "You're already wearing something on your head!") return else if(H.equip_to_slot_if_possible(helmet,slot_head,0,0,1)) - H << "You engage the helmet on the hardsuit." + to_chat(H, "You engage the helmet on the hardsuit.") suittoggled = 1 H.update_inv_wear_suit() playsound(src.loc, 'sound/mecha/mechmove03.ogg', 50, 1) diff --git a/code/modules/clothing/suits/wiz_robe.dm b/code/modules/clothing/suits/wiz_robe.dm index 427eba5d61..bb4d1f1e0d 100644 --- a/code/modules/clothing/suits/wiz_robe.dm +++ b/code/modules/clothing/suits/wiz_robe.dm @@ -165,7 +165,7 @@ if(!isliving(usr)) return if(!robe_charge) - usr << "\The robe's internal magic supply is still recharging!" + to_chat(usr, "\The robe's internal magic supply is still recharging!") return usr.say("Rise, my creation! Off your page into this realm!") @@ -176,7 +176,7 @@ src.robe_charge = FALSE sleep(30) src.robe_charge = TRUE - usr << "\The robe hums, its internal magic supply restored." + to_chat(usr, "\The robe hums, its internal magic supply restored.") //Shielded Armour @@ -221,7 +221,7 @@ /obj/item/wizard_armour_charge/afterattack(obj/item/clothing/suit/space/hardsuit/shielded/wizard/W, mob/user) ..() if(!istype(W)) - user << "The rune can only be used on battlemage armour!" + to_chat(user, "The rune can only be used on battlemage armour!") return W.current_charges += 8 user <<"You charge \the [W]. It can now absorb [W.current_charges] hits." diff --git a/code/modules/clothing/under/jobs/security.dm b/code/modules/clothing/under/jobs/security.dm index 7163719100..15ebee3875 100644 --- a/code/modules/clothing/under/jobs/security.dm +++ b/code/modules/clothing/under/jobs/security.dm @@ -22,10 +22,12 @@ random_sensor = 0 /obj/item/clothing/under/rank/security/grey + name = "grey security jumpsuit" + desc = "A tactical relic of years past before nanotrasen decided it was cheaper to dye the suits red instead of washing out the blood." icon_state = "security" item_state = "gy_suit" item_color = "security" - + /obj/item/clothing/under/rank/warden name = "security suit" @@ -40,6 +42,8 @@ random_sensor = 0 /obj/item/clothing/under/rank/warden/grey + name = "grey security suit" + desc = "A formal relic of years past before nanotrasen decided it was cheaper to dye the suits red instead of washing out the blood." icon_state = "warden" item_state = "gy_suit" item_color = "warden" @@ -83,6 +87,8 @@ random_sensor = 0 /obj/item/clothing/under/rank/head_of_security/grey + name = "head of security's grey jumpsuit" + desc = "There are old men, and there are bold men, but there are very few old, bold men." icon_state = "hos" item_state = "gy_suit" item_color = "hos" @@ -132,12 +138,3 @@ item_state = "blueshift" item_color = "blueshift" can_adjust = 0 - - -/obj/item/clothing/under/rank/security/sneaksuit - name = "sneaking suit" - desc = "It's made of a strong material developed by the Soviet Union centuries ago which provides robust protection." - icon_state = "sneakingsuit" - item_state = "sneakingsuit" - item_color = "sneakingsuit" - can_adjust = 0 \ No newline at end of file diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index e57989c871..d7b7e8ee1f 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -611,7 +611,7 @@ /obj/item/clothing/under/plasmaman/examine(mob/user) ..() - user << "There are [extinguishes_left] extinguisher charges left in this suit." + to_chat(user, "There are [extinguishes_left] extinguisher charges left in this suit.") /obj/item/clothing/under/plasmaman/proc/Extinguish(mob/living/carbon/human/H) @@ -632,11 +632,11 @@ /obj/item/clothing/under/plasmaman/attackby(obj/item/E, mob/user, params) if (istype(E, /obj/item/device/extinguisher_refill)) if (extinguishes_left == 5) - user << "The inbuilt extinguisher is full." + to_chat(user, "The inbuilt extinguisher is full.") return else extinguishes_left = 5 - user << "You refill the suit's built-in extinguisher, using up the cartridge." + to_chat(user, "You refill the suit's built-in extinguisher, using up the cartridge.") qdel(E) return return diff --git a/code/modules/clothing/under/ties.dm b/code/modules/clothing/under/ties.dm index 77039c0f2c..2d9bd926c3 100644 --- a/code/modules/clothing/under/ties.dm +++ b/code/modules/clothing/under/ties.dm @@ -144,7 +144,7 @@ if(M.wear_suit) if((M.wear_suit.flags_inv & HIDEJUMPSUIT)) //Check if the jumpsuit is covered - user << "Medals can only be pinned on jumpsuits." + to_chat(user, "Medals can only be pinned on jumpsuits.") return if(M.w_uniform) @@ -158,12 +158,12 @@ if(do_after(user, delay, target = M)) if(U.attachTie(src, user, 0)) //Attach it, do not notify the user of the attachment if(user == M) - user << "You attach [src] to [U]." + to_chat(user, "You attach [src] to [U].") else user.visible_message("[user] pins \the [src] on [M]'s chest.", \ "You pin \the [src] on [M]'s chest.") - else user << "Medals can only be pinned on jumpsuits!" + else to_chat(user, "Medals can only be pinned on jumpsuits!") else ..() /obj/item/clothing/tie/medal/conduct diff --git a/code/modules/crafting/craft.dm b/code/modules/crafting/craft.dm index 925c5ef651..356f260bfa 100644 --- a/code/modules/crafting/craft.dm +++ b/code/modules/crafting/craft.dm @@ -70,14 +70,14 @@ if(T.Adjacent(user)) for(var/B in T) var/atom/movable/AM = B - if(AM.flags & HOLOGRAM) + if(HAS_SECONDARY_FLAG(AM, HOLOGRAM)) continue . += AM /datum/personal_crafting/proc/get_surroundings(mob/user) . = list() for(var/obj/item/I in get_environment(user)) - if(I.flags & HOLOGRAM) + if(HAS_SECONDARY_FLAG(I, HOLOGRAM)) continue if(istype(I, /obj/item/stack)) var/obj/item/stack/S = I @@ -296,26 +296,26 @@ ui_interact(usr) //explicit call to show the busy display var/fail_msg = construct_item(usr, TR) if(!fail_msg) - usr << "[TR.name] constructed." + to_chat(usr, "[TR.name] constructed.") else - usr << "Construction failed[fail_msg]" + to_chat(usr, "Construction failed[fail_msg]") busy = 0 ui_interact(usr) if("forwardCat") //Meow viewing_category = next_cat() - usr << "Category is now [categories[viewing_category]]." + to_chat(usr, "Category is now [categories[viewing_category]].") . = TRUE if("backwardCat") viewing_category = prev_cat() - usr << "Category is now [categories[viewing_category]]." + to_chat(usr, "Category is now [categories[viewing_category]].") . = TRUE if("toggle_recipes") display_craftable_only = !display_craftable_only - usr << "You will now [display_craftable_only ? "only see recipes you can craft":"see all recipes"]." + to_chat(usr, "You will now [display_craftable_only ? "only see recipes you can craft":"see all recipes"].") . = TRUE if("toggle_compact") display_compact = !display_compact - usr << "Crafting menu is now [display_compact? "compact" : "full size"]." + to_chat(usr, "Crafting menu is now [display_compact? "compact" : "full size"].") . = TRUE diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm index 671105f5c5..c02bdcd475 100644 --- a/code/modules/crafting/recipes.dm +++ b/code/modules/crafting/recipes.dm @@ -35,7 +35,8 @@ result = /obj/item/weapon/twohanded/spear reqs = list(/obj/item/weapon/twohanded/spear = 1, /obj/item/weapon/grenade = 1) - parts = list(/obj/item/weapon/grenade = 1) + parts = list(/obj/item/weapon/twohanded/spear = 1, + /obj/item/weapon/grenade = 1) time = 15 category = CAT_WEAPON @@ -444,3 +445,10 @@ time = 10 reqs = list(/obj/item/stack/sheet/cardboard = 1) category = CAT_MISC + +/datum/crafting_recipe/pressureplate + name = "Pressure Plate" + result = /obj/item/device/pressure_plate + time = 5 + reqs = list(/obj/item/stack/sheet/plasteel = 1, /obj/item/stack/tile = 1, /obj/item/stack/cable_coil = 2) + category = CAT_MISC diff --git a/code/modules/detectivework/evidence.dm b/code/modules/detectivework/evidence.dm index ba97488698..06110adb82 100644 --- a/code/modules/detectivework/evidence.dm +++ b/code/modules/detectivework/evidence.dm @@ -22,15 +22,15 @@ return if(istype(I, /obj/item/weapon/evidencebag)) - user << "You find putting an evidence bag in another evidence bag to be slightly absurd." + to_chat(user, "You find putting an evidence bag in another evidence bag to be slightly absurd.") return 1 //now this is podracing if(I.w_class > WEIGHT_CLASS_NORMAL) - user << "[I] won't fit in [src]." + to_chat(user, "[I] won't fit in [src].") return if(contents.len) - user << "[src] already has something inside it." + to_chat(user, "[src] already has something inside it.") return if(!isturf(I.loc)) //If it isn't on the floor. Do some checks to see if it's in our hands or a box. Otherwise give up. @@ -75,7 +75,7 @@ desc = "An empty evidence bag." else - user << "[src] is empty." + to_chat(user, "[src] is empty.") icon_state = "evidenceobj" return diff --git a/code/modules/detectivework/footprints_and_rag.dm b/code/modules/detectivework/footprints_and_rag.dm index a75eb9ca20..1560045526 100644 --- a/code/modules/detectivework/footprints_and_rag.dm +++ b/code/modules/detectivework/footprints_and_rag.dm @@ -28,16 +28,18 @@ return if(iscarbon(A) && A.reagents && reagents.total_volume) var/mob/living/carbon/C = A + var/reagentlist = pretty_string_from_reagent_list(reagents) if(user.a_intent == INTENT_HARM && !C.is_mouth_covered()) reagents.reaction(C, INGEST) reagents.trans_to(C, reagents.total_volume) C.visible_message("[user] has smothered \the [C] with \the [src]!", "[user] has smothered you with \the [src]!", "You hear some struggling and muffled cries of surprise.") - var/reagentlist = pretty_string_from_reagent_list(A.reagents) log_game("[key_name(user)] smothered [key_name(A)] with a damp rag containing [reagentlist]") log_attack("[key_name(user)] smothered [key_name(A)] with a damp rag containing [reagentlist]") else reagents.reaction(C, TOUCH) reagents.clear_reagents() + log_game("[key_name(user)] touched [key_name(A)] with a damp rag containing [reagentlist]") + log_attack("[key_name(user)] touched [key_name(A)] with a damp rag containing [reagentlist]") C.visible_message("[user] has touched \the [C] with \the [src].") else if(istype(A) && src in user) diff --git a/code/modules/detectivework/scanner.dm b/code/modules/detectivework/scanner.dm index fcc86e5df2..92437a34c1 100644 --- a/code/modules/detectivework/scanner.dm +++ b/code/modules/detectivework/scanner.dm @@ -17,38 +17,38 @@ /obj/item/device/detective_scanner/attack_self(mob/user) if(log.len && !scanning) scanning = 1 - user << "Printing report, please wait..." - - spawn(100) - - // Create our paper - var/obj/item/weapon/paper/P = new(get_turf(src)) - P.name = "paper- 'Scanner Report'" - P.info = "
    Scanner Report


    " - P.info += jointext(log, "
    ") - P.info += "
    Notes:
    " - P.info_links = P.info - - if(ismob(loc)) - var/mob/M = loc - M.put_in_hands(P) - M << "Report printed. Log cleared." - - // Clear the logs - log = list() - scanning = 0 + to_chat(user, "Printing report, please wait...") + addtimer(CALLBACK(src, .proc/PrintReport), 100) else - user << "The scanner has no logs or is in use." + to_chat(user, "The scanner has no logs or is in use.") /obj/item/device/detective_scanner/attack(mob/living/M, mob/user) return +/obj/item/device/detective_scanner/proc/PrintReport() + // Create our paper + var/obj/item/weapon/paper/P = new(get_turf(src)) + P.name = "paper- 'Scanner Report'" + P.info = "
    Scanner Report


    " + P.info += jointext(log, "
    ") + P.info += "
    Notes:
    " + P.info_links = P.info -/obj/item/device/detective_scanner/afterattack(atom/A, mob/user, proximity) + if(ismob(loc)) + var/mob/M = loc + M.put_in_hands(P) + to_chat(M, "Report printed. Log cleared.") + + // Clear the logs + log = list() + scanning = 0 + +/obj/item/device/detective_scanner/pre_attackby(atom/A, mob/user, params) scan(A, user) + return FALSE /obj/item/device/detective_scanner/proc/scan(atom/A, mob/user) - + set waitfor = 0 if(!scanning) // Can remotely scan objects and mobs. if(!in_range(A, user) && !(A in view(world.view, user))) @@ -59,7 +59,7 @@ scanning = 1 user.visible_message("\The [user] points the [src.name] at \the [A] and performs a forensic scan.") - user << "You scan \the [A]. The scanner is now analysing the results..." + to_chat(user, "You scan \the [A]. The scanner is now analysing the results...") // GATHER INFORMATION @@ -107,65 +107,63 @@ // We gathered everything. Create a fork and slowly display the results to the holder of the scanner. - spawn(0) + var/found_something = 0 + add_log("[worldtime2text()][get_timestamp()] - [target_name]", 0) - var/found_something = 0 - add_log("[worldtime2text()][get_timestamp()] - [target_name]", 0) + // Fingerprints + if(fingerprints && fingerprints.len) + sleep(30) + add_log("Prints:") + for(var/finger in fingerprints) + add_log("[finger]") + found_something = 1 - // Fingerprints - if(fingerprints && fingerprints.len) - sleep(30) - add_log("Prints:") - for(var/finger in fingerprints) - add_log("[finger]") - found_something = 1 + // Blood + if (blood && blood.len) + sleep(30) + add_log("Blood:") + found_something = 1 + for(var/B in blood) + add_log("Type: [blood[B]] DNA: [B]") - // Blood - if (blood && blood.len) - sleep(30) - add_log("Blood:") - found_something = 1 - for(var/B in blood) - add_log("Type: [blood[B]] DNA: [B]") + //Fibers + if(fibers && fibers.len) + sleep(30) + add_log("Fibers:") + for(var/fiber in fibers) + add_log("[fiber]") + found_something = 1 - //Fibers - if(fibers && fibers.len) - sleep(30) - add_log("Fibers:") - for(var/fiber in fibers) - add_log("[fiber]") - found_something = 1 + //Reagents + if(reagents && reagents.len) + sleep(30) + add_log("Reagents:") + for(var/R in reagents) + add_log("Reagent: [R] Volume: [reagents[R]]") + found_something = 1 - //Reagents - if(reagents && reagents.len) - sleep(30) - add_log("Reagents:") - for(var/R in reagents) - add_log("Reagent: [R] Volume: [reagents[R]]") - found_something = 1 + // Get a new user + var/mob/holder = null + if(ismob(src.loc)) + holder = src.loc - // Get a new user - var/mob/holder = null - if(ismob(src.loc)) - holder = src.loc + if(!found_something) + add_log("# No forensic traces found #", 0) // Don't display this to the holder user + if(holder) + to_chat(holder, "Unable to locate any fingerprints, materials, fibers, or blood on \the [target_name]!") + else + if(holder) + to_chat(holder, "You finish scanning \the [target_name].") - if(!found_something) - add_log("# No forensic traces found #", 0) // Don't display this to the holder user - if(holder) - holder << "Unable to locate any fingerprints, materials, fibers, or blood on \the [target_name]!" - else - if(holder) - holder << "You finish scanning \the [target_name]." - - add_log("---------------------------------------------------------", 0) - scanning = 0 - return + add_log("---------------------------------------------------------", 0) + scanning = 0 + return /obj/item/device/detective_scanner/proc/add_log(msg, broadcast = 1) if(scanning) if(broadcast && ismob(loc)) var/mob/M = loc - M << msg + to_chat(M, msg) log += "  [msg]" else CRASH("[src] \ref[src] is adding a log when it was never put in scanning mode!") diff --git a/code/modules/events/_event.dm b/code/modules/events/_event.dm index 0e66f21b10..e90b24fa5e 100644 --- a/code/modules/events/_event.dm +++ b/code/modules/events/_event.dm @@ -25,6 +25,8 @@ var/list/gamemode_blacklist = list() // Event won't happen in these gamemodes var/list/gamemode_whitelist = list() // Event will happen ONLY in these gamemodes if not empty + var/triggering //admin cancellation + /datum/round_event_control/New() ..() if(config && !wizardevent) // Magic is unaffected by configs @@ -53,9 +55,32 @@ return FALSE return TRUE -/datum/round_event_control/proc/runEvent() +/datum/round_event_control/proc/preRunEvent() if(!ispath(typepath,/datum/round_event)) - return PROCESS_KILL + return EVENT_CANT_RUN + + triggering = TRUE + if (alertadmins) + message_admins("Random Event triggering in 10 seconds: [name] ([typepath]) (CANCEL)") + sleep(100) + + if(!triggering) + return EVENT_CANCELLED //admin cancelled + triggering = FALSE + return EVENT_READY + +/datum/round_event_control/Topic(href, href_list) + ..() + if(href_list["cancel"]) + if(!triggering) + to_chat(usr, "You are too late to cancel that event") + return + triggering = FALSE + message_admins("[key_name_admin(usr)] cancelled event [name].") + log_admin_private("[key_name(usr)] cancelled event [name].") + feedback_add_details("admin_verb","CancelEvent: [typepath]") + +/datum/round_event_control/proc/runEvent(random) var/datum/round_event/E = new typepath() E.current_players = get_active_player_count(alive_check = 1, afk_check = 1, human_check = 1) E.control = src @@ -63,6 +88,10 @@ occurrences++ testing("[time2text(world.time, "hh:mm:ss")] [E.type]") + if(random) + if(alertadmins) + deadchat_broadcast("[name] has just been randomly triggered!") //STOP ASSUMING IT'S BADMINS! + log_game("Random Event triggering: [name] ([typepath])") return E diff --git a/code/modules/events/anomaly_flux.dm b/code/modules/events/anomaly_flux.dm index c0ba6c14e9..00f6c78b45 100644 --- a/code/modules/events/anomaly_flux.dm +++ b/code/modules/events/anomaly_flux.dm @@ -7,8 +7,8 @@ weight = 20 /datum/round_event/anomaly/anomaly_flux - startWhen = 3 - announceWhen = 20 + startWhen = 10 + announceWhen = 3 /datum/round_event/anomaly/anomaly_flux/announce() priority_announce("Localized hyper-energetic flux wave detected on long range scanners. Expected location: [impact_area.name].", "Anomaly Alert") diff --git a/code/modules/events/anomaly_pyro.dm b/code/modules/events/anomaly_pyro.dm index f18893d341..ae21de1035 100644 --- a/code/modules/events/anomaly_pyro.dm +++ b/code/modules/events/anomaly_pyro.dm @@ -5,8 +5,8 @@ weight = 20 /datum/round_event/anomaly/anomaly_pyro - startWhen = 10 - announceWhen = 3 + startWhen = 3 + announceWhen = 10 /datum/round_event/anomaly/anomaly_pyro/announce() priority_announce("Pyroclastic anomaly detected on long range scanners. Expected location: [impact_area.name].", "Anomaly Alert") diff --git a/code/modules/events/communications_blackout.dm b/code/modules/events/communications_blackout.dm index 0dd21aae52..97ccf60895 100644 --- a/code/modules/events/communications_blackout.dm +++ b/code/modules/events/communications_blackout.dm @@ -15,7 +15,7 @@ "#4nd%;f4y6,>%-BZZZZZZZT") for(var/mob/living/silicon/ai/A in ai_list) //AIs are always aware of communication blackouts. - A << "
    [alert]
    " + to_chat(A, "
    [alert]
    ") if(prob(30)) //most of the time, we don't want an announcement, so as to allow AIs to fake blackouts. priority_announce(alert) diff --git a/code/modules/events/devil.dm b/code/modules/events/devil.dm index 83a0f95b49..527927ce42 100644 --- a/code/modules/events/devil.dm +++ b/code/modules/events/devil.dm @@ -32,7 +32,7 @@ var/mob/living/carbon/human/devil = create_event_devil(spawn_loc) Mind.transfer_to(devil) - ticker.mode.finalize_devil(Mind) + ticker.mode.finalize_devil(Mind, FALSE) ticker.mode.add_devil_objectives(src, 2) Mind.announceDevilLaws() Mind.announce_objectives() diff --git a/code/modules/events/grid_check.dm b/code/modules/events/grid_check.dm index 61aad3acac..a7a6a3564e 100644 --- a/code/modules/events/grid_check.dm +++ b/code/modules/events/grid_check.dm @@ -1,8 +1,8 @@ /datum/round_event_control/grid_check name = "Grid Check" typepath = /datum/round_event/grid_check - weight = 7 - max_occurrences = 1 + weight = 10 + max_occurrences = 3 /datum/round_event/grid_check announceWhen = 1 diff --git a/code/modules/events/holiday/friday13th.dm b/code/modules/events/holiday/friday13th.dm index 316baacc93..53411edbb4 100644 --- a/code/modules/events/holiday/friday13th.dm +++ b/code/modules/events/holiday/friday13th.dm @@ -15,4 +15,4 @@ /datum/round_event/fridaythethirteen/announce() for(var/mob/living/L in player_list) - L << "You are feeling unlucky today." \ No newline at end of file + to_chat(L, "You are feeling unlucky today.") \ No newline at end of file diff --git a/code/modules/events/holiday/halloween.dm b/code/modules/events/holiday/halloween.dm index 2227bec796..304ed6de7b 100644 --- a/code/modules/events/holiday/halloween.dm +++ b/code/modules/events/holiday/halloween.dm @@ -69,7 +69,7 @@ for(var/mob/living/carbon/human/H in living_mob_list) if(!H.client || !istype(H)) return - H << "Honk..." + to_chat(H, "Honk...") H << 'sound/spookoween/scary_clown_appear.ogg' var/turf/T = get_turf(H) if(T) diff --git a/code/modules/events/holiday/vday.dm b/code/modules/events/holiday/vday.dm index 615b631385..697414ee07 100644 --- a/code/modules/events/holiday/vday.dm +++ b/code/modules/events/holiday/vday.dm @@ -42,7 +42,7 @@ else - L << "You didn't get a date! They're all having fun without you! you'll show them though..." + to_chat(L, "You didn't get a date! They're all having fun without you! you'll show them though...") var/datum/objective/martyr/normiesgetout = new normiesgetout.owner = L.mind ticker.mode.traitors |= L.mind @@ -58,7 +58,7 @@ protect_objective.target = date.mind protect_objective.explanation_text = "Protect [date.real_name], your date." lover.mind.objectives += protect_objective - lover << "You're on a date with [date]! Protect them at all costs. This takes priority over all other loyalties." + to_chat(lover, "You're on a date with [date]! Protect them at all costs. This takes priority over all other loyalties.") /datum/round_event/valentines/announce() @@ -143,7 +143,7 @@ user << browse("[name][message]", "window=[name]") onclose(user, "[name]") else - user << "It is too far away." + to_chat(user, "It is too far away.") /obj/item/weapon/valentine/attack_self(mob/user) user.examinate(src) diff --git a/code/modules/events/holiday/xmas.dm b/code/modules/events/holiday/xmas.dm index ce2fbb2d6d..1aa4f7585e 100644 --- a/code/modules/events/holiday/xmas.dm +++ b/code/modules/events/holiday/xmas.dm @@ -157,4 +157,4 @@ telespell.clothes_req = 0 //santa robes aren't actually magical. santa.mind.AddSpell(telespell) //does the station have chimneys? WHO KNOWS! - santa << "You are Santa! Your objective is to bring joy to the people on this station. You can conjure more presents using a spell, and there are several presents in your bag." + to_chat(santa, "You are Santa! Your objective is to bring joy to the people on this station. You can conjure more presents using a spell, and there are several presents in your bag.") diff --git a/code/modules/events/ion_storm.dm b/code/modules/events/ion_storm.dm index 3d3130c422..463be427c3 100644 --- a/code/modules/events/ion_storm.dm +++ b/code/modules/events/ion_storm.dm @@ -107,6 +107,7 @@ //Foods. Drinks aren't included due to grammar; if you want to add drinks, make a new set //of possible laws for best effect. Unless you want the crew having to drink hamburgers. var/ionfood = pick_list(ION_FILE, "ionfood") + var/iondrinks = pick_list(ION_FILE, "iondrinks") var/message = "" @@ -327,15 +328,17 @@ if(24 to 26) //The AI must always message = "YOU MUST ALWAYS [ionmust]" - if(27 to 28) //Humans must eat X to survive - switch(rand(1,4)) //What is X? + if(27 to 28) //Humans must consume X to survive + switch(rand(1,5)) //What is X? if(1) //X is a food message = "HUMANS MUST EAT [ionadjectiveshalf][ionfood] TO SURVIVE" - if(2) //X is an object + if(2) //X is a drink + message = "HUMANS MUST DRINK [ionadjectiveshalf][iondrinks] TO SURVIVE" + if(3) //X is an object message = "HUMANS MUST EAT [ionadjectiveshalf][ionobjects] TO SURVIVE" - if(3) //X is a threat + if(4) //X is a threat message = "HUMANS MUST EAT [ionadjectiveshalf][ionthreats] TO SURVIVE" - if(4) //X is a job + if(5) //X is a job message = "HUMANS MUST EAT [ionadjectiveshalf][ioncrew1] TO SURVIVE" if(29 to 31) //Change jobs or ranks diff --git a/code/modules/events/meteor_wave.dm b/code/modules/events/meteor_wave.dm index e19a014a88..1cd401ca5b 100644 --- a/code/modules/events/meteor_wave.dm +++ b/code/modules/events/meteor_wave.dm @@ -3,9 +3,9 @@ /datum/round_event_control/meteor_wave name = "Meteor Wave: Normal" typepath = /datum/round_event/meteor_wave - weight = 2 + weight = 4 min_players = 5 - max_occurrences = 2 + max_occurrences = 3 /datum/round_event/meteor_wave startWhen = 6 @@ -22,9 +22,9 @@ /datum/round_event/meteor_wave/proc/determine_wave_type() if(!wave_name) wave_name = pickweight(list( - "normal" = 90, - "threatening" = 20, - "catastrophic" = 5)) + "normal" = 50, + "threatening" = 40, + "catastrophic" = 10)) switch(wave_name) if("normal") wave_type = meteors_normal diff --git a/code/modules/events/operative.dm b/code/modules/events/operative.dm index bb7f7dd5f2..c5545c75f1 100644 --- a/code/modules/events/operative.dm +++ b/code/modules/events/operative.dm @@ -45,7 +45,7 @@ nuke_code = nuke.r_code Mind.store_memory("Station Self-Destruct Device Code: [nuke_code]", 0, 0) - Mind.current << "The nuclear authorization code is: [nuke_code]" + to_chat(Mind.current, "The nuclear authorization code is: [nuke_code]") var/datum/objective/nuclear/O = new() O.owner = Mind diff --git a/code/modules/events/processor_overload.dm b/code/modules/events/processor_overload.dm index bb1d1c650d..d1f07d0598 100644 --- a/code/modules/events/processor_overload.dm +++ b/code/modules/events/processor_overload.dm @@ -17,7 +17,7 @@ for(var/mob/living/silicon/ai/A in ai_list) //AIs are always aware of processor overload - A << "
    [alert]
    " + to_chat(A, "
    [alert]
    ") // Announce most of the time, but leave a little gap so people don't know // whether it's, say, a tesla zapping tcomms, or some selective diff --git a/code/modules/events/radiation_storm.dm b/code/modules/events/radiation_storm.dm index a156a0754a..581844bb4f 100644 --- a/code/modules/events/radiation_storm.dm +++ b/code/modules/events/radiation_storm.dm @@ -2,7 +2,6 @@ name = "Radiation Storm" typepath = /datum/round_event/radiation_storm max_occurrences = 1 - weight = 7 /datum/round_event/radiation_storm diff --git a/code/modules/events/sentience.dm b/code/modules/events/sentience.dm index 8036f6d8f9..8dbd9bf0c8 100644 --- a/code/modules/events/sentience.dm +++ b/code/modules/events/sentience.dm @@ -19,8 +19,7 @@ sentience_report += "

    Based on [data], we believe that [one] of the station's [pets] has developed [strength] level intelligence, and the ability to communicate." - print_command_report(sentience_report, "Classified [command_name()] Update") - priority_announce("A report has been downloaded and printed out at all communications consoles.", "Incoming Classified Message", 'sound/AI/commandreport.ogg') + print_command_report(text=sentience_report) ..() /datum/round_event/ghost_role/sentience/spawn_role() @@ -60,10 +59,10 @@ spawned_mobs += SA - SA << "Hello world!" - SA << "Due to freak radiation and/or chemicals \ + to_chat(SA, "Hello world!") + to_chat(SA, "Due to freak radiation and/or chemicals \ and/or lucky chance, you have gained human level intelligence \ - and the ability to speak and understand human language!" + and the ability to speak and understand human language!") return SUCCESSFUL_SPAWN diff --git a/code/modules/events/shuttle_loan.dm b/code/modules/events/shuttle_loan.dm index 9000136343..c3d3505e39 100644 --- a/code/modules/events/shuttle_loan.dm +++ b/code/modules/events/shuttle_loan.dm @@ -80,7 +80,7 @@ var/list/empty_shuttle_turfs = list() for(var/turf/open/floor/T in SSshuttle.supply.areaInstance) - if(T.density || T.contents.len) + if(is_blocked_turf(T)) continue empty_shuttle_turfs += T if(!empty_shuttle_turfs.len) diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index 4e68fc6fed..c50b2dc919 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -119,7 +119,7 @@ /datum/spacevine_mutation/light/on_grow(obj/structure/spacevine/holder) if(holder.energy) - holder.SetLuminosity(severity, 3) + holder.set_light(severity, 0.3) /datum/spacevine_mutation/toxicity name = "toxic" @@ -131,7 +131,7 @@ if(issilicon(crosser)) return if(prob(severity) && istype(crosser) && !isvineimmune(crosser)) - crosser << "You accidently touch the vine and feel a strange sensation." + to_chat(crosser, "You accidently touch the vine and feel a strange sensation.") crosser.adjustToxLoss(5) /datum/spacevine_mutation/toxicity/on_eat(obj/structure/spacevine/holder, mob/living/eater) @@ -196,7 +196,7 @@ quality = POSITIVE /datum/spacevine_mutation/transparency/on_grow(obj/structure/spacevine/holder) - holder.SetOpacity(0) + holder.set_opacity(0) holder.alpha = 125 /datum/spacevine_mutation/oxy_eater @@ -269,13 +269,13 @@ if(prob(severity) && istype(crosser) && !isvineimmune(holder)) var/mob/living/M = crosser M.adjustBruteLoss(5) - M << "You cut yourself on the thorny vines." + to_chat(M, "You cut yourself on the thorny vines.") /datum/spacevine_mutation/thorns/on_hit(obj/structure/spacevine/holder, mob/living/hitter, obj/item/I, expected_damage) if(prob(severity) && istype(hitter) && !isvineimmune(holder)) var/mob/living/M = hitter M.adjustBruteLoss(5) - M << "You cut yourself on the thorny vines." + to_chat(M, "You cut yourself on the thorny vines.") . = expected_damage /datum/spacevine_mutation/woodening @@ -341,7 +341,7 @@ else text += " normal" text += " vine." - user << text + to_chat(user, text) /obj/structure/spacevine/Destroy() for(var/datum/spacevine_mutation/SM in mutations) @@ -355,7 +355,7 @@ KZ.set_potency(master.mutativeness * 10) KZ.set_production((master.spread_cap / initial(master.spread_cap)) * 5) mutations = list() - SetOpacity(0) + set_opacity(0) if(has_buckled_mobs()) unbuckle_all_mobs(force=1) return ..() @@ -521,7 +521,7 @@ if(!energy) src.icon_state = pick("Med1", "Med2", "Med3") energy = 1 - SetOpacity(1) + set_opacity(1) else src.icon_state = pick("Hvy1", "Hvy2", "Hvy3") energy = 2 @@ -543,7 +543,7 @@ for(var/datum/spacevine_mutation/SM in mutations) SM.on_buckle(src, V) if((V.stat != DEAD) && (V.buckled != src)) //not dead or captured - V << "The vines [pick("wind", "tangle", "tighten")] around you!" + to_chat(V, "The vines [pick("wind", "tangle", "tighten")] around you!") buckle_mob(V, 1) /obj/structure/spacevine/proc/spread() diff --git a/code/modules/events/wizard/aid.dm b/code/modules/events/wizard/aid.dm index fc37888411..8bf84cd0b8 100644 --- a/code/modules/events/wizard/aid.dm +++ b/code/modules/events/wizard/aid.dm @@ -17,7 +17,7 @@ S.clothes_req = 0 spell_improved = 1 if(spell_improved) - L << "You suddenly feel like you never needed those garish robes in the first place..." + to_chat(L, "You suddenly feel like you never needed those garish robes in the first place...") //--// @@ -53,4 +53,4 @@ if(5) S.name = "Ludicrous [S.name]" - L << "You suddenly feel more competent with your casting!" + to_chat(L, "You suddenly feel more competent with your casting!") diff --git a/code/modules/events/wizard/departmentrevolt.dm b/code/modules/events/wizard/departmentrevolt.dm index 0774aaaeb4..0d74fcd350 100644 --- a/code/modules/events/wizard/departmentrevolt.dm +++ b/code/modules/events/wizard/departmentrevolt.dm @@ -44,8 +44,8 @@ citizens += H ticker.mode.traitors += M M.special_role = "separatist" - H.attack_log += "\[[time_stamp()]\] Was made into a separatist, long live [nation]!" - H << "You are a separatist! [nation] forever! Protect the soverignty of your newfound land with your comrades in arms!" + H.log_message("Was made into a separatist, long live [nation]!", INDIVIDUAL_ATTACK_LOG) + to_chat(H, "You are a separatist! [nation] forever! Protect the soverignty of your newfound land with your comrades in arms!") if(citizens.len) var/message for(var/job in jobs_to_revolt) diff --git a/code/modules/events/wizard/fakeexplosion.dm b/code/modules/events/wizard/fakeexplosion.dm index e8e8352c79..3cc8b68bd0 100644 --- a/code/modules/events/wizard/fakeexplosion.dm +++ b/code/modules/events/wizard/fakeexplosion.dm @@ -8,4 +8,4 @@ /datum/round_event/wizard/fake_explosion/start() for(var/mob/M in player_list) M << 'sound/machines/Alarm.ogg' - addtimer(CALLBACK(ticker, /datum/subsystem/ticker/.proc/station_explosion_cinematic, 1, "fake"), 100) //:o) \ No newline at end of file + addtimer(CALLBACK(ticker, /datum/controller/subsystem/ticker/.proc/station_explosion_cinematic, 1, "fake"), 100) //:o) \ No newline at end of file diff --git a/code/modules/events/wizard/ghost.dm b/code/modules/events/wizard/ghost.dm index 9f0e41d885..1227833de2 100644 --- a/code/modules/events/wizard/ghost.dm +++ b/code/modules/events/wizard/ghost.dm @@ -2,13 +2,12 @@ name = "G-G-G-Ghosts!" weight = 3 typepath = /datum/round_event/wizard/ghost - max_occurrences = 5 + max_occurrences = 1 earliest_start = 0 /datum/round_event/wizard/ghost/start() - for(var/mob/dead/observer/G in player_list) - G.invisibility = 0 - G << "You suddenly feel extremely obvious..." + var/msg = "You suddenly feel extremely obvious..." + set_observer_default_invisibility(0, msg) //--// @@ -24,4 +23,4 @@ for(var/mob/dead/observer/G in player_list) G.verbs += /mob/dead/observer/verb/boo G.verbs += /mob/dead/observer/verb/possess - G << "You suddenly feel a welling of new spooky powers..." + to_chat(G, "You suddenly feel a welling of new spooky powers...") diff --git a/code/modules/events/wizard/greentext.dm b/code/modules/events/wizard/greentext.dm index 202dee5a13..8251f5ae7e 100644 --- a/code/modules/events/wizard/greentext.dm +++ b/code/modules/events/wizard/greentext.dm @@ -16,7 +16,7 @@ var/mob/living/carbon/human/H = pick(holder_canadates) new /obj/item/weapon/greentext(H.loc) - H << "The mythical greentext appear at your feet! Pick it up if you dare..." + to_chat(H, "The mythical greentext appear at your feet! Pick it up if you dare...") /obj/item/weapon/greentext @@ -36,9 +36,9 @@ poi_list |= src /obj/item/weapon/greentext/equipped(mob/living/user as mob) - user << "So long as you leave this place with greentext in hand you know will be happy..." + to_chat(user, "So long as you leave this place with greentext in hand you know will be happy...") if(user.mind && user.mind.objectives.len > 0) - user << "... so long as you still perform your other objectives that is!" + to_chat(user, "... so long as you still perform your other objectives that is!") new_holder = user if(!last_holder) last_holder = user @@ -50,7 +50,7 @@ /obj/item/weapon/greentext/dropped(mob/living/user as mob) if(user in color_altered_mobs) - user << "A sudden wave of failure washes over you..." + to_chat(user, "A sudden wave of failure washes over you...") user.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) //ya blew it last_holder = null new_holder = null @@ -59,7 +59,7 @@ /obj/item/weapon/greentext/process() if(new_holder && new_holder.z == ZLEVEL_CENTCOM)//you're winner! - new_holder << "At last it feels like victory is assured!" + to_chat(new_holder, "At last it feels like victory is assured!") if(!(new_holder in ticker.mode.traitors)) ticker.mode.traitors += new_holder.mind new_holder.mind.special_role = "winner" @@ -67,13 +67,13 @@ O.completed = 1 //YES! O.owner = new_holder.mind new_holder.mind.objectives += O - new_holder.attack_log += "\[[time_stamp()]\] Won with greentext!!!" + new_holder.log_message("Won with greentext!!!", INDIVIDUAL_ATTACK_LOG) color_altered_mobs -= new_holder resistance_flags |= ON_FIRE qdel(src) if(last_holder && last_holder != new_holder) //Somehow it was swiped without ever getting dropped - last_holder << "A sudden wave of failure washes over you..." + to_chat(last_holder, "A sudden wave of failure washes over you...") last_holder.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) last_holder = new_holder //long live the king @@ -92,7 +92,7 @@ message += "...
    " // can't skip the mob check as it also does the decolouring if(!quiet) - M << message + to_chat(M, message) /obj/item/weapon/greentext/quiet quiet = TRUE diff --git a/code/modules/events/wizard/imposter.dm b/code/modules/events/wizard/imposter.dm index fcb1100f1c..d112bd698b 100644 --- a/code/modules/events/wizard/imposter.dm +++ b/code/modules/events/wizard/imposter.dm @@ -53,6 +53,6 @@ I.mind.objectives += protect_objective ticker.mode.update_wiz_icons_added(I.mind) - I.attack_log += "\[[time_stamp()]\] Is an imposter!" - I << "You are an imposter! Trick and confuse the crew to misdirect malice from your handsome original!" + I.log_message("Is an imposter!", INDIVIDUAL_ATTACK_LOG) + to_chat(I, "You are an imposter! Trick and confuse the crew to misdirect malice from your handsome original!") I << sound('sound/effects/magic.ogg') diff --git a/code/modules/events/wizard/invincible.dm b/code/modules/events/wizard/invincible.dm index 8bc43b158f..f8436773ec 100644 --- a/code/modules/events/wizard/invincible.dm +++ b/code/modules/events/wizard/invincible.dm @@ -9,4 +9,4 @@ for(var/mob/living/carbon/human/H in living_mob_list) H.reagents.add_reagent("adminordrazine", 40) //100 ticks of absolute invinciblity (barring gibs) - H << "You feel invincible, nothing can hurt you!" \ No newline at end of file + to_chat(H, "You feel invincible, nothing can hurt you!") \ No newline at end of file diff --git a/code/modules/events/wizard/magicarp.dm b/code/modules/events/wizard/magicarp.dm index 81fa857f3c..fe89f02b91 100644 --- a/code/modules/events/wizard/magicarp.dm +++ b/code/modules/events/wizard/magicarp.dm @@ -41,7 +41,7 @@ /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) -/mob/living/simple_animal/hostile/carp/ranged/New() +/mob/living/simple_animal/hostile/carp/ranged/Initialize() projectiletype = pick(allowed_projectile_types) ..() diff --git a/code/modules/events/wizard/race.dm b/code/modules/events/wizard/race.dm index 46f420e380..03952d03ae 100644 --- a/code/modules/events/wizard/race.dm +++ b/code/modules/events/wizard/race.dm @@ -24,6 +24,6 @@ H.set_species(new_species) H.real_name = new_species.random_name(H.gender,1) H.dna.unique_enzymes = H.dna.generate_unique_enzymes() - H << "You feel somehow... different?" + to_chat(H, "You feel somehow... different?") if(!all_the_same) new_species = pick(all_species) diff --git a/code/modules/events/wizard/rpgloot.dm b/code/modules/events/wizard/rpgloot.dm index 5481f0745d..d651400baa 100644 --- a/code/modules/events/wizard/rpgloot.dm +++ b/code/modules/events/wizard/rpgloot.dm @@ -48,7 +48,7 @@ return var/quality = target.force - initial(target.force) if(quality > 9 && prob((quality - 9)*10)) - user << "[target] catches fire!" + to_chat(user, "[target] catches fire!") if(target.resistance_flags & (LAVA_PROOF|FIRE_PROOF)) target.resistance_flags &= ~(LAVA_PROOF|FIRE_PROOF) target.resistance_flags |= FLAMMABLE @@ -59,5 +59,5 @@ target.throwforce += 1 for(var/value in target.armor) target.armor[value] += 1 - user << "[target] glows blue and seems vaguely \"better\"!" + to_chat(user, "[target] glows blue and seems vaguely \"better\"!") qdel(src) diff --git a/code/modules/flufftext/Dreaming.dm b/code/modules/flufftext/Dreaming.dm index 638fd4fa04..d6cfba39d0 100644 --- a/code/modules/flufftext/Dreaming.dm +++ b/code/modules/flufftext/Dreaming.dm @@ -12,7 +12,7 @@ for(var/i = rand(1,4),i > 0, i--) var/dream_image = pick(dreams) dreams -= dream_image - src << "... [dream_image] ..." + to_chat(src, "... [dream_image] ...") sleep(rand(40,70)) if(paralysis <= 0) dreaming = 0 diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index c609bbed30..4516461cb5 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -11,11 +11,16 @@ Gunshots/explosions/opening doors/less rare audio (done) */ +#define SCREWYHUD_NONE 0 +#define SCREWYHUD_CRIT 1 +#define SCREWYHUD_DEAD 2 +#define SCREWYHUD_HEALTHY 3 + /mob/living/carbon var/image/halimage var/image/halbody var/obj/halitem - var/hal_screwyhud = 0 //1 - critical, 2 - dead, 3 - oxygen indicator, 4 - toxin indicator, 5 - perfect health + var/hal_screwyhud = SCREWYHUD_NONE var/handling_hal = 0 /mob/living/carbon/proc/handle_hallucinations() @@ -23,31 +28,25 @@ Gunshots/explosions/opening doors/less rare audio (done) return //Least obvious - var/list/minor = list("sounds"=20,"bolts_minor"=10,"whispers"=15,"message"=5) + var/list/minor = list("sounds"=25,"bolts_minor"=5,"whispers"=15,"message"=10,"hudscrew"=15) //Something's wrong here - var/list/medium = list("hudscrew"=15,"items"=15,"dangerflash"=15,"bolts"=10,"flood"=10,"husks"=10,"battle"=10) + var/list/medium = list("fake_alert"=15,"items"=10,"items_other"=10,"dangerflash"=10,"bolts"=5,"flood"=5,"husks"=10,"battle"=15,"self_delusion"=10) //AAAAH - var/list/major = list("fake"=10,"death"=5,"xeno"=10,"singulo"=10,"delusion"=10) - - var/grade = 0 - var/current = list() - var/trip_length = 0 + var/list/major = list("fake"=20,"death"=10,"xeno"=10,"singulo"=10,"borer"=10,"delusion"=20,"koolaid"=10) handling_hal = 1 while(hallucination > 20) sleep(rand(200,500)/(hallucination/25)) - trip_length += 1 - if(prob(min(20,trip_length*2))) - grade = min(3,grade+1) if(prob(20)) continue - current = list() - for(var/a in minor) - current[a] = minor[a] * (grade==0?2:1) - for(var/b in medium) - current[b] = medium[b] * (grade==1?2:1) - for(var/c in major) - current[c] = major[c] * (grade==2?2:1) + var/list/current = list() + switch(rand(100)) + if(1 to 50) + current = minor + if(51 to 85) + current = medium + if(86 to 100) + current = major var/halpick = pickweight(current) @@ -59,7 +58,7 @@ Gunshots/explosions/opening doors/less rare audio (done) var/mob/living/carbon/target = null /obj/effect/hallucination/proc/wake_and_restore() - target.hal_screwyhud = 0 + target.hal_screwyhud = SCREWYHUD_NONE target.SetSleeping(0) /obj/effect/hallucination/simple @@ -72,13 +71,14 @@ Gunshots/explosions/opening doors/less rare audio (done) var/image_layer = MOB_LAYER var/active = 1 //qdelery -/obj/effect/hallucination/simple/New(loc,var/mob/living/carbon/T) +/obj/effect/hallucination/simple/Initialize(mapload, var/mob/living/carbon/T) + ..() target = T current_image = GetImage() if(target.client) target.client.images |= current_image /obj/effect/hallucination/simple/proc/GetImage() - var/image/I = image(image_icon,loc,image_state,image_layer,dir=src.dir) + var/image/I = image(image_icon,src,image_state,image_layer,dir=src.dir) I.pixel_x = px I.pixel_y = py if(col_mod) @@ -110,11 +110,11 @@ Gunshots/explosions/opening doors/less rare audio (done) active = 0 return ..() -#define FAKE_FLOOD_EXPAND_TIME 30 -#define FAKE_FLOOD_MAX_RADIUS 7 +#define FAKE_FLOOD_EXPAND_TIME 20 +#define FAKE_FLOOD_MAX_RADIUS 10 /obj/effect/hallucination/fake_flood - //Plasma/N2O starts flooding from the nearby vent + //Plasma starts flooding from the nearby vent var/list/flood_images = list() var/list/turf/flood_turfs = list() var/image_icon = 'icons/effects/tile_effects.dmi' @@ -122,14 +122,13 @@ Gunshots/explosions/opening doors/less rare audio (done) var/radius = 0 var/next_expand = 0 -/obj/effect/hallucination/fake_flood/New(loc,var/mob/living/carbon/T) +/obj/effect/hallucination/fake_flood/Initialize(mapload, var/mob/living/carbon/T) ..() target = T for(var/obj/machinery/atmospherics/components/unary/vent_pump/U in orange(7,target)) if(!U.welded) src.loc = U.loc break - image_state = pick("plasma","nitrous_oxide") flood_images += image(image_icon,src,image_state,MOB_LAYER) flood_turfs += get_turf(src.loc) if(target.client) target.client.images |= flood_images @@ -143,14 +142,18 @@ Gunshots/explosions/opening doors/less rare audio (done) qdel(src) return Expand() + if((get_turf(target) in flood_turfs) && !target.internal) + target.hallucinate("fake_alert", "tox_in_air") next_expand = world.time + FAKE_FLOOD_EXPAND_TIME /obj/effect/hallucination/fake_flood/proc/Expand() - for(var/turf/T in circlerangeturfs(loc,radius)) - if((T in flood_turfs)|| T.blocks_air) - continue - flood_images += image(image_icon,T,image_state,MOB_LAYER) - flood_turfs += T + for(var/turf/FT in flood_turfs) + for(var/dir in cardinal) + var/turf/T = get_step(FT, dir) + if((T in flood_turfs) || !FT.CanAtmosPass(T)) + continue + flood_images += image(image_icon,T,image_state,MOB_LAYER) + flood_turfs += T if(target.client) target.client.images |= flood_images @@ -169,7 +172,7 @@ Gunshots/explosions/opening doors/less rare audio (done) image_icon = 'icons/mob/alien.dmi' image_state = "alienh_pounce" -/obj/effect/hallucination/simple/xeno/New(loc,var/mob/living/carbon/T) +/obj/effect/hallucination/simple/xeno/Initialize(mapload, var/mob/living/carbon/T) ..() name = "alien hunter ([rand(1, 1000)])" @@ -184,7 +187,8 @@ Gunshots/explosions/opening doors/less rare audio (done) var/obj/machinery/atmospherics/components/unary/vent_pump/pump = null var/obj/effect/hallucination/simple/xeno/xeno = null -/obj/effect/hallucination/xeno_attack/New(loc,var/mob/living/carbon/T) +/obj/effect/hallucination/xeno_attack/Initialize(mapload, var/mob/living/carbon/T) + ..() target = T for(var/obj/machinery/atmospherics/components/unary/vent_pump/U in orange(7,target)) if(!U.welded) @@ -200,17 +204,17 @@ Gunshots/explosions/opening doors/less rare audio (done) xeno.throw_at(pump,7,1, spin = 0, diagonals_first = 1) sleep(10) var/xeno_name = xeno.name - target << "[xeno_name] begins climbing into the ventilation system..." + to_chat(target, "[xeno_name] begins climbing into the ventilation system...") sleep(10) qdel(xeno) - target << "[xeno_name] scrambles into the ventilation ducts!" + to_chat(target, "[xeno_name] scrambles into the ventilation ducts!") qdel(src) /obj/effect/hallucination/simple/clown image_icon = 'icons/mob/animal.dmi' image_state = "clown" -/obj/effect/hallucination/simple/clown/New(loc,var/mob/living/carbon/T,duration) +/obj/effect/hallucination/simple/clown/Initialize(mapload, var/mob/living/carbon/T,duration) ..(loc, T) name = pick(clown_names) QDEL_IN(src,duration) @@ -218,18 +222,107 @@ Gunshots/explosions/opening doors/less rare audio (done) /obj/effect/hallucination/simple/clown/scary image_state = "scary_clown" +/obj/effect/hallucination/simple/borer + image_icon = 'icons/mob/animal.dmi' + image_state = "brainslug" + +/obj/effect/hallucination/borer + //A borer paralyzes you and crawls in your ear + var/obj/machinery/atmospherics/components/unary/vent_pump/pump = null + var/obj/effect/hallucination/simple/borer/borer = null + +/obj/effect/hallucination/borer/Initialize(mapload, var/mob/living/carbon/T) + ..() + target = T + for(var/obj/machinery/atmospherics/components/unary/vent_pump/U in orange(7,target)) + if(!U.welded) + pump = U + break + if(pump) + borer = new(pump.loc,target) + for(var/i=0, i<11, i++) + walk_to(borer, get_step(borer, get_cardinal_dir(borer, T))) + if(borer.Adjacent(T)) + to_chat(T, "You feel a creeping, horrible sense of dread come over you, freezing your limbs and setting your heart racing.") + T.Stun(4) + sleep(50) + qdel(borer) + sleep(rand(60, 90)) + to_chat(T, "Primary [rand(1000,9999)] states: [pick("Hello","Hi","You're my slave now!","Don't try to get rid of me...")]") + break + sleep(4) + if(!QDELETED(borer)) + qdel(borer) + qdel(src) + +/obj/effect/hallucination/simple/bubblegum + name = "Bubblegum" + image_icon = 'icons/mob/lavaland/96x96megafauna.dmi' + image_state = "bubblegum" + px = -32 + +/obj/effect/hallucination/oh_yeah + var/turf/closed/wall/wall + var/obj/effect/hallucination/simple/bubblegum/bubblegum = null + var/image/fakebroken + var/image/fakerune + +/obj/effect/hallucination/oh_yeah/Initialize(mapload, var/mob/living/carbon/T) + ..() + target = T + for(var/turf/closed/wall/W in range(7,target)) + wall = W + break + if(wall) + fakebroken = image('icons/turf/floors.dmi', wall, "plating", layer = TURF_LAYER) + var/turf/landing = get_turf(target) + var/turf/landing_image_turf = get_step(landing, SOUTHWEST) //the icon is 3x3 + fakerune = image('icons/effects/96x96.dmi', landing_image_turf, "landing", layer = ABOVE_OPEN_TURF_LAYER) + fakebroken.override = TRUE + if(target.client) + target.client.images |= fakebroken + target.client.images |= fakerune + target.playsound_local(wall,'sound/effects/meteorimpact.ogg', 150, 1) + bubblegum = new(wall, target) + sleep(10) //ominous wait + var/charged = FALSE //only get hit once + while(get_turf(bubblegum) != landing && target) + bubblegum.forceMove(get_step_towards(bubblegum, landing)) + bubblegum.setDir(get_dir(bubblegum, landing)) + target.playsound_local(get_turf(bubblegum), 'sound/effects/meteorimpact.ogg', 150, 1) + shake_camera(target, 2, 1) + if(bubblegum.Adjacent(target) && !charged) + charged = TRUE + target.Weaken(4) + target.staminaloss += 40 + step_away(target, bubblegum) + shake_camera(target, 4, 3) + target.visible_message("[target] jumps backwards, falling on the ground!","[bubblegum] slams into you!") + sleep(2) + sleep(30) + qdel(bubblegum) + qdel(src) + +/obj/effect/hallucination/oh_yeah/Destroy() + if(target.client) + target.client.images.Remove(fakebroken) + target.client.images.Remove(fakerune) + return ..() + /obj/effect/hallucination/singularity_scare //Singularity moving towards you. //todo Hide where it moved with fake space images var/obj/effect/hallucination/simple/singularity/s = null -/obj/effect/hallucination/singularity_scare/New(loc,var/mob/living/carbon/T) +/obj/effect/hallucination/singularity_scare/Initialize(mapload, var/mob/living/carbon/T) + ..() target = T - var/turf/start = T.loc + var/turf/start = get_turf(T) var/screen_border = pick(SOUTH,EAST,WEST,NORTH) for(var/i = 0,i<11,i++) start = get_step(start,screen_border) s = new(start,target) + s.parent = src for(var/i = 0,i<11,i++) sleep(5) s.loc = get_step(get_turf(s),get_dir(s,target)) @@ -243,56 +336,111 @@ Gunshots/explosions/opening doors/less rare audio (done) image_layer = MASSIVE_OBJ_LAYER px = -96 py = -96 + var/obj/effect/hallucination/singularity_scare/parent /obj/effect/hallucination/simple/singularity/proc/Eat(atom/OldLoc, Dir) var/target_dist = get_dist(src,target) if(target_dist<=3) //"Eaten" - target.hal_screwyhud = 1 - target.SetSleeping(20) - addtimer(CALLBACK(src, .proc/wake_and_restore), rand(50, 100)) + target.hal_screwyhud = SCREWYHUD_CRIT + target.SetSleeping(8, no_alert = TRUE) + addtimer(CALLBACK(parent, .proc/wake_and_restore), rand(30, 50)) /obj/effect/hallucination/battle -/obj/effect/hallucination/battle/New(loc,var/mob/living/carbon/T) +/obj/effect/hallucination/battle/Initialize(mapload, var/mob/living/carbon/T) + ..() target = T var/hits = rand(3,6) switch(rand(1,5)) if(1) //Laser fight for(var/i=0,i...wabbajack...wabbajack...
    ") + target.playsound_local(target,'sound/magic/Staff_Change.ogg', 50, 1, -1) + delusion = A + target.client.images |= A + QDEL_IN(src, duration) + +/obj/effect/hallucination/self_delusion/Destroy() + if(target.client) + target.client.images.Remove(delusion) + return ..() + +/obj/effect/hallucination/fakeattacker/Initialize(mapload, var/mob/living/carbon/T) + ..() target = T var/mob/living/carbon/human/clone = null var/clone_weapon = null @@ -382,7 +573,7 @@ Gunshots/explosions/opening doors/less rare audio (done) step_away(src,my_target,2) user.changeNext_move(CLICK_CD_MELEE) user.do_attack_animation(src) - my_target << sound(pick('sound/weapons/genhit1.ogg', 'sound/weapons/genhit2.ogg', 'sound/weapons/genhit3.ogg')) + my_target.playsound_local(src, P.hitsound, 1) my_target.visible_message("[my_target] flails around wildly.", \ "[my_target] has attacked [src]!") @@ -393,9 +584,9 @@ Gunshots/explosions/opening doors/less rare audio (done) step_away(src,my_target,2) if(prob(30)) for(var/mob/O in oviewers(world.view , my_target)) - O << "[my_target] stumbles around." + to_chat(O, "[my_target] stumbles around.") -/obj/effect/fake_attacker/New(loc,var/mob/living/carbon/T) +/obj/effect/fake_attacker/Initialize(mapload, var/mob/living/carbon/T) ..() my_target = T QDEL_IN(src, 300) @@ -417,13 +608,13 @@ Gunshots/explosions/opening doors/less rare audio (done) else if(src.dir == WEST) del src.currentimage src.currentimage = new /image(left,src) - my_target << currentimage + to_chat(my_target, currentimage) /obj/effect/fake_attacker/proc/attack_loop() while(1) sleep(rand(5,10)) - if(obj_integrity < 0) + if(obj_integrity < 0 || my_target.stat) collapse() continue if(get_dist(src,my_target) > 1) @@ -432,9 +623,8 @@ Gunshots/explosions/opening doors/less rare audio (done) updateimage() else if(prob(15)) - do_attack_animation(my_target, ATTACK_EFFECT_PUNCH) if(weapon_name) - my_target << sound(pick('sound/weapons/genhit1.ogg', 'sound/weapons/genhit2.ogg', 'sound/weapons/genhit3.ogg')) + my_target.playsound_local(my_target, weap.hitsound, weap.get_clamped_volume(), 1) my_target.show_message("[src.name] has attacked [my_target] with [weapon_name]!", 1) my_target.staminaloss += 30 if(prob(20)) @@ -443,7 +633,7 @@ Gunshots/explosions/opening doors/less rare audio (done) if(!locate(/obj/effect/overlay) in my_target.loc) fake_blood(my_target) else - my_target << sound(pick('sound/weapons/punch1.ogg','sound/weapons/punch2.ogg','sound/weapons/punch3.ogg','sound/weapons/punch4.ogg')) + my_target.playsound_local(my_target, pick('sound/weapons/punch1.ogg','sound/weapons/punch2.ogg','sound/weapons/punch3.ogg','sound/weapons/punch4.ogg'), 25, 1, -1) my_target.show_message("[src.name] has punched [my_target]!", 1) my_target.staminaloss += 30 if(prob(33)) @@ -456,12 +646,13 @@ Gunshots/explosions/opening doors/less rare audio (done) /obj/effect/fake_attacker/proc/collapse() collapse = 1 updateimage() + qdel(src) /obj/effect/fake_attacker/proc/fake_blood(mob/target) var/obj/effect/overlay/O = new/obj/effect/overlay(target.loc) O.name = "blood" var/image/I = image('icons/effects/blood.dmi',O,"floor[rand(1,7)]",O.dir,1) - target << I + to_chat(target, I) QDEL_IN(O, 300) var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item/ammo_box/a357,\ @@ -483,7 +674,8 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item /obj/effect/hallucination/bolts var/list/doors = list() -/obj/effect/hallucination/bolts/New(loc,var/mob/living/carbon/T,var/door_number=-1) //-1 for sever 1-2 for subtle +/obj/effect/hallucination/bolts/Initialize(mapload, var/mob/living/carbon/T,var/door_number=-1) //-1 for severe, 1-2 for subtle + ..() target = T var/image/I = null var/count = 0 @@ -491,23 +683,27 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item if(count>door_number && door_number>0) break count++ - I = image(A.icon,A,"door_locked",layer=A.layer+0.1) + I = image(A.overlays_file, get_turf(A), "lights_bolts",layer=A.layer+0.1) doors += I if(target.client) target.client.images |= I - sleep(2) + target.playsound_local(get_turf(A), 'sound/machines/BoltsDown.ogg',30,0,3) + sleep(rand(6,12)) sleep(100) for(var/image/B in doors) if(target.client) target.client.images.Remove(B) + target.playsound_local(get_turf(B), 'sound/machines/BoltsUp.ogg',30,0,3) + sleep(rand(6,12)) qdel(src) /obj/effect/hallucination/whispers -/obj/effect/hallucination/whispers/New(loc,var/mob/living/carbon/T) +/obj/effect/hallucination/whispers/Initialize(mapload, var/mob/living/carbon/T) + ..() target = T - var/speak_messages = list("I'm watching you...","[target.name]!","Go away!","Kchck-Chkck? Kchchck!","Did you hear that?","What did you do ?","Why?","Give me that!","Honk!","HELP!!") - var/radio_messages = list("Xenos!","Singularity loose!","They are arming the nuke!","They butchered Ian!","H-help!","[pick(teleportlocs)]!!","Where's [target.name]?","Call the shuttle!") + var/speak_messages = list("I'm watching you...","[target.first_name()]!","Get out!","Kchck-Chkck? Kchchck!","Did you hear that?","What did you do ?","Why?","Give me that!","HELP!!","EI NATH!!", "RUN!!", "Kill me!","O bidai nabora se'sma!", "[text2ratvar("Divinity, grant...")]") + var/radio_messages = list("Xenos!","Singularity loose!","Comms down!","They are arming the nuke!","They butchered Ian!","H-help!","[pick("Cult", "Wizard", "Ling", "Ops", "Revenant", "Murderer", "Harm", "I hear flashing", "Help")] in [pick(teleportlocs)][prob(50)?"!":"!!"]","Where's [target.first_name()]?","Call the shuttle!","AI rogue!!") var/list/mob/living/carbon/people = list() var/list/mob/living/carbon/person = null @@ -521,18 +717,24 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item person = H people += H if(person) //Basic talk - target << target.compose_message(person,person.languages_understood,pick(speak_messages),null,person.get_spans()) + var/image/speech_overlay = image('icons/mob/talk.dmi', person, "default0", layer = ABOVE_MOB_LAYER) + to_chat(target, target.compose_message(person,person.languages_understood,pick(speak_messages),null,person.get_spans())) + if(target.client) + target.client.images |= speech_overlay + sleep(30) + target.client.images.Remove(speech_overlay) else // Radio talk var/list/humans = list() for(var/mob/living/carbon/human/H in living_mob_list) humans += H person = pick(humans) - target << target.compose_message(person,person.languages_understood,pick(radio_messages),"1459",person.get_spans()) + to_chat(target, target.compose_message(person,person.languages_understood,pick(radio_messages),"1459",person.get_spans())) qdel(src) /obj/effect/hallucination/message -/obj/effect/hallucination/message/New(loc,var/mob/living/carbon/T) +/obj/effect/hallucination/message/Initialize(mapload, var/mob/living/carbon/T) + ..() target = T var/chosen = pick("The light burns you!", \ "You don't feel like yourself.", \ @@ -540,25 +742,33 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item "You hear something squeezing through the ducts...", \ "You hear a distant scream.", \ "You feel invincible, nothing can hurt you!", \ + "You feel a tiny prick!", \ "[target] sneezes.", \ "You feel faint.", \ "You hear a strange, alien voice in your head...[pick("Hiss","Ssss")]", \ "You can see...everything!") - target << chosen + to_chat(target, chosen) qdel(src) -/mob/living/carbon/proc/hallucinate(hal_type) // Todo -> proc / defines +/mob/living/carbon/proc/hallucinate(hal_type, specific) // specific is used to specify a particular hallucination + set waitfor = 0 switch(hal_type) if("xeno") new /obj/effect/hallucination/xeno_attack(src.loc,src) + if("borer") + new /obj/effect/hallucination/borer(src.loc,src) if("singulo") new /obj/effect/hallucination/singularity_scare(src.loc,src) + if("koolaid") + new /obj/effect/hallucination/oh_yeah(src.loc,src) if("battle") new /obj/effect/hallucination/battle(src.loc,src) if("flood") new /obj/effect/hallucination/fake_flood(src.loc,src) if("delusion") new /obj/effect/hallucination/delusion(src.loc,src) + if("self_delusion") + new /obj/effect/hallucination/self_delusion(src.loc,src) if("fake") new /obj/effect/hallucination/fakeattacker(src.loc,src) if("bolts") @@ -569,31 +779,42 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item new /obj/effect/hallucination/whispers(src.loc,src) if("message") new /obj/effect/hallucination/message(src.loc,src) + if("items_other") + new /obj/effect/hallucination/items_other(src.loc,src) if("sounds") //Strange audio - //src << "Strange Audio" - switch(rand(1,18)) - if(1) src << 'sound/machines/airlock.ogg' + //to_chat(src, "Strange Audio") + switch(rand(1,20)) + if(1) playsound_local(null,'sound/machines/airlock.ogg', 15, 1) if(2) - if(prob(50))src << 'sound/effects/Explosion1.ogg' - else src << 'sound/effects/Explosion2.ogg' - if(3) src << 'sound/effects/explosionfar.ogg' - if(4) src << 'sound/effects/Glassbr1.ogg' - if(5) src << 'sound/effects/Glassbr2.ogg' - if(6) src << 'sound/effects/Glassbr3.ogg' - if(7) src << 'sound/machines/twobeep.ogg' - if(8) src << 'sound/machines/windowdoor.ogg' + if(prob(50)) playsound_local(null,'sound/effects/Explosion1.ogg', 50, 1) + else playsound_local(null, 'sound/effects/Explosion2.ogg', 50, 1) + if(3) playsound_local(null, 'sound/effects/explosionfar.ogg', 50, 1) + if(4) playsound_local(null, pick('sound/effects/Glassbr1.ogg','sound/effects/Glassbr2.ogg','sound/effects/Glassbr3.ogg'), 50, 1) + if(5) + playsound_local(null, 'sound/weapons/ring.ogg', 35) + sleep(15) + playsound_local(null, 'sound/weapons/ring.ogg', 35) + sleep(15) + playsound_local(null, 'sound/weapons/ring.ogg', 35) + if(6) playsound_local(null, 'sound/magic/Summon_guns.ogg', 50, 1) + if(7) playsound_local(null, 'sound/machines/Alarm.ogg', 100, 0) + if(8) playsound_local(null, 'sound/voice/bfreeze.ogg', 35, 0) if(9) //To make it more realistic, I added two gunshots (enough to kill) - src << 'sound/weapons/Gunshot.ogg' + playsound_local(null, 'sound/weapons/Gunshot.ogg', 25, 1) spawn(rand(10,30)) - src << 'sound/weapons/Gunshot.ogg' - if(10) src << 'sound/weapons/smash.ogg' + playsound_local(null, 'sound/weapons/Gunshot.ogg', 25, 1) + sleep(rand(5,10)) + playsound_local(null, sound(get_sfx("bodyfall"), 25), 25, 1) + if(10) playsound_local(null, 'sound/effects/pray_chaplain.ogg', 50) if(11) //Same as above, but with tasers. - src << 'sound/weapons/Taser.ogg' + playsound_local(null, 'sound/weapons/Taser.ogg', 25, 1) spawn(rand(10,30)) - src << 'sound/weapons/Taser.ogg' + playsound_local(null, 'sound/weapons/Taser.ogg', 25, 1) + sleep(rand(5,10)) + playsound_local(null, sound(get_sfx("bodyfall"), 25), 25, 1) //Rare audio if(12) //These sounds are (mostly) taken from Hidden: Source @@ -602,30 +823,104 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item 'sound/hallucinations/growl3.ogg', 'sound/hallucinations/im_here1.ogg', 'sound/hallucinations/im_here2.ogg', 'sound/hallucinations/i_see_you1.ogg', 'sound/hallucinations/i_see_you2.ogg',\ 'sound/hallucinations/look_up1.ogg', 'sound/hallucinations/look_up2.ogg', 'sound/hallucinations/over_here1.ogg', 'sound/hallucinations/over_here2.ogg', 'sound/hallucinations/over_here3.ogg',\ 'sound/hallucinations/turn_around1.ogg', 'sound/hallucinations/turn_around2.ogg', 'sound/hallucinations/veryfar_noise.ogg', 'sound/hallucinations/wail.ogg') - src << pick(creepyasssounds) + playsound_local(null, pick(creepyasssounds), 50, 1) if(13) - src << "You feel a tiny prick!" + playsound_local(null, 'sound/effects/ratvar_rises.ogg', 100) + sleep(150) + playsound_local(null, 'sound/effects/ratvar_reveal.ogg', 100) if(14) - src << "

    Priority Announcement

    " - src << "

    The Emergency Shuttle has docked with the station. You have 3 minutes to board the Emergency Shuttle.

    " - src << sound('sound/AI/shuttledock.ogg') + to_chat(src, "

    Priority Announcement

    ") + to_chat(src, "

    The Emergency Shuttle has docked with the station. You have 3 minutes to board the Emergency Shuttle.

    ") + playsound_local(null, 'sound/AI/shuttledock.ogg', 100) + //Deconstructing a wall if(15) - src << 'sound/items/Welder.ogg' + playsound_local(null, 'sound/items/Welder.ogg', 15, 1) + sleep(105) + playsound_local(null, 'sound/items/Welder2.ogg', 15, 1) + sleep(15) + playsound_local(null, 'sound/items/Ratchet.ogg', 15, 1) + //Hacking a door if(16) - src << 'sound/items/Screwdriver.ogg' + playsound_local(null, 'sound/items/Screwdriver.ogg', 15, 1) + sleep(rand(10,30)) + for(var/i = rand(1,3), i>0, i--) + playsound_local(null, 'sound/weapons/empty.ogg', 15, 1) + sleep(rand(10,30)) + playsound_local(null, 'sound/machines/airlockforced.ogg', 15, 1) if(17) - src << 'sound/weapons/saberon.ogg' + playsound_local(null, 'sound/weapons/saberon.ogg',35,1) if(18) - src << 'sound/weapons/saberoff.ogg' + to_chat(src, "

    Biohazard Alert

    ") + to_chat(src, "

    Confirmed outbreak of level 5 biohazard aboard [station_name()]. All personnel must contain the outbreak.

    ") + playsound_local(null, 'sound/AI/outbreak5.ogg') + if(19) //Tesla loose! + playsound_local(null, 'sound/magic/lightningbolt.ogg', 35, 1) + sleep(20) + playsound_local(null, 'sound/magic/lightningbolt.ogg', 65, 1) + sleep(20) + playsound_local(null, 'sound/magic/lightningbolt.ogg', 100, 1) + if(20) //AI is doomsdaying! + to_chat(src, "

    Anomaly Alert

    ") + to_chat(src, "

    Hostile runtimes detected in all station systems, please deactivate your AI to prevent possible damage to its morality core.

    ") + playsound_local(null, 'sound/AI/aimalf.ogg', 100) if("hudscrew") //Screwy HUD - //src << "Screwy HUD" - hal_screwyhud = pick(1,2,3,3,4,4) - spawn(rand(100,250)) - hal_screwyhud = 0 + //to_chat(src, "Screwy HUD") + hal_screwyhud = pick(SCREWYHUD_NONE,SCREWYHUD_CRIT,SCREWYHUD_DEAD,SCREWYHUD_HEALTHY) + sleep(rand(100,250)) + hal_screwyhud = 0 + + if("fake_alert") + var/alert_type = pick("oxy","not_enough_tox","not_enough_co2","too_much_oxy","too_much_co2","tox_in_air","newlaw","nutrition","charge","weightless","fire","locked","hacked","temp","pressure") + if(specific) + alert_type = specific + switch(alert_type) + if("oxy") + throw_alert("oxy", /obj/screen/alert/oxy, override = TRUE) + if("not_enough_tox") + throw_alert("not_enough_tox", /obj/screen/alert/not_enough_tox, override = TRUE) + if("not_enough_co2") + throw_alert("not_enough_co2", /obj/screen/alert/not_enough_co2, override = TRUE) + if("too_much_oxy") + throw_alert("too_much_oxy", /obj/screen/alert/too_much_oxy, override = TRUE) + if("too_much_co2") + throw_alert("too_much_co2", /obj/screen/alert/too_much_co2, override = TRUE) + if("tox_in_air") + throw_alert("tox_in_air", /obj/screen/alert/tox_in_air, override = TRUE) + if("nutrition") + if(prob(50)) + throw_alert("nutrition", /obj/screen/alert/fat, override = TRUE) + else + throw_alert("nutrition", /obj/screen/alert/starving, override = TRUE) + if("weightless") + throw_alert("weightless", /obj/screen/alert/weightless, override = TRUE) + if("fire") + throw_alert("fire", /obj/screen/alert/fire, override = TRUE) + if("temp") + if(prob(50)) + throw_alert("temp", /obj/screen/alert/hot, 3, override = TRUE) + else + throw_alert("temp", /obj/screen/alert/cold, 3, override = TRUE) + if("pressure") + if(prob(50)) + throw_alert("pressure", /obj/screen/alert/highpressure, 2, override = TRUE) + else + throw_alert("pressure", /obj/screen/alert/lowpressure, 2, override = TRUE) + //BEEP BOOP I AM A ROBOT + if("newlaw") + throw_alert("newlaw", /obj/screen/alert/newlaw, override = TRUE) + if("locked") + throw_alert("locked", /obj/screen/alert/locked, override = TRUE) + if("hacked") + throw_alert("hacked", /obj/screen/alert/hacked, override = TRUE) + if("charge") + throw_alert("charge",/obj/screen/alert/emptycell, override = TRUE) + sleep(rand(100,200)) + clear_alert(alert_type, clear_override = TRUE) + if("items") //Strange items - //src << "Traitor Items" + //to_chat(src, "Traitor Items") if(!halitem) halitem = new var/obj/item/l_hand = get_item_for_held_index(1) @@ -675,7 +970,7 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item QDEL_IN(halitem, rand(100, 250)) if("dangerflash") //Flashes of danger - //src << "Danger Flash" + //to_chat(src, "Danger Flash") if(!halimage) var/list/possible_points = list() for(var/turf/open/floor/F in view(src,world.view)) @@ -683,29 +978,43 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item if(possible_points.len) var/turf/open/floor/target = pick(possible_points) - switch(rand(1,3)) + switch(rand(1,4)) if(1) - //src << "Space" + //to_chat(src, "Space") halimage = image('icons/turf/space.dmi',target,"[rand(1,25)]",TURF_LAYER) if(2) - //src << "Fire" - halimage = image('icons/effects/fire.dmi',target,"1",TURF_LAYER) + //to_chat(src, "Lava") + halimage = image('icons/turf/floors/lava.dmi',target,"smooth",TURF_LAYER) if(3) - //src << "C4" + //to_chat(src, "Chasm") + halimage = image('icons/turf/floors/Chasms.dmi',target,"smooth",TURF_LAYER) + if(4) + //to_chat(src, "C4") halimage = image('icons/obj/grenade.dmi',target,"plastic-explosive2",OBJ_LAYER+0.01) if(client) client.images += halimage - spawn(rand(10,50)) //Only seen for a brief moment. - if(client) client.images -= halimage - halimage = null + sleep(rand(40,60)) //Only seen for a brief moment. + if(client) client.images -= halimage + halimage = null if("death") //Fake death - hal_screwyhud = 1 - SetSleeping(20) - spawn(rand(50,100)) - hal_screwyhud = 0 - SetSleeping(0) + hal_screwyhud = SCREWYHUD_DEAD + SetSleeping(20, no_alert = TRUE) + var/area/area = get_area(src) + to_chat(src, "[mind.name] has died at [area.name].") + if(prob(50)) + var/list/dead_people = list() + for(var/mob/dead/observer/G in player_list) + dead_people += G + var/mob/dead/observer/fakemob = pick(dead_people) + if(fakemob) + sleep(rand(30, 60)) + to_chat(src, "DEAD: [fakemob.name] says, \"[pick("rip","welcome [first_name()]","you too?","is the AI malf?",\ + "i[prob(50)?" fucking":""] hate [pick("blood cult", "clock cult", "revenants", "abductors","double agents","viruses","badmins","you")]")]\"") + sleep(rand(50,70)) + hal_screwyhud = SCREWYHUD_NONE + SetSleeping(0) if("husks") if(!halbody) var/list/possible_points = list() @@ -726,6 +1035,6 @@ var/list/non_fakeattack_weapons = list(/obj/item/weapon/gun/ballistic, /obj/item halbody = image('icons/mob/alien.dmi',target,"alienother",TURF_LAYER) if(client) client.images += halbody - spawn(rand(50,80)) //Only seen for a brief moment. + spawn(rand(30,50)) //Only seen for a brief moment. if(client) client.images -= halbody halbody = null diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 8b50a66906..fb625e14ea 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -24,14 +24,14 @@ /obj/item/weapon/reagent_containers/food/drinks/attack(mob/M, mob/user, def_zone) if(!reagents || !reagents.total_volume) - user << "[src] is empty!" + to_chat(user, "[src] is empty!") return 0 if(!canconsume(M, user)) return 0 if(M == user) - M << "You swallow a gulp of [src]." + to_chat(M, "You swallow a gulp of [src].") else M.visible_message("[user] attempts to feed the contents of [src] to [M].", "[user] attempts to feed the contents of [src] to [M].") @@ -52,27 +52,27 @@ if(istype(target, /obj/structure/reagent_dispensers)) //A dispenser. Transfer FROM it TO us. if(!target.reagents.total_volume) - user << "[target] is empty." + to_chat(user, "[target] is empty.") return if(reagents.total_volume >= reagents.maximum_volume) - user << "[src] is full." + to_chat(user, "[src] is full.") return var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) - user << "You fill [src] with [trans] units of the contents of [target]." + to_chat(user, "You fill [src] with [trans] units of the contents of [target].") else if(target.is_open_container()) //Something like a glass. Player probably wants to transfer TO it. if(!reagents.total_volume) - user << "[src] is empty." + to_chat(user, "[src] is empty.") return if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "[target] is full." + to_chat(user, "[target] is full.") return var/refill = reagents.get_master_reagent_id() var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "You transfer [trans] units of the solution to [target]." + to_chat(user, "You transfer [trans] units of the solution to [target].") if(iscyborg(user)) //Cyborg modules that include drinks automatically refill themselves, but drain the borg's cell var/mob/living/silicon/robot/bro = user @@ -84,7 +84,7 @@ var/added_heat = (I.is_hot() / 100) //ishot returns a temperature if(reagents) reagents.chem_temp += added_heat - user << "You heat [src] with [I]." + to_chat(user, "You heat [src] with [I].") reagents.handle_reactions() ..() @@ -390,4 +390,10 @@ name = "Shambler's Juice" desc = "~Shake me up some of that Shambler's Juice!~" icon_state = "shamblers" - list_reagents = list("shamblers" = 30) \ No newline at end of file + list_reagents = list("shamblers" = 30) + +/obj/item/weapon/reagent_containers/food/drinks/soda_cans/air + name = "Canned Air" + desc = "There is no air shortage. Do not drink." + icon_state = "air" + list_reagents = list("nitrogen" = 24, "oxygen" = 6) diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index baafb8fdb1..4c74464e5d 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -376,7 +376,7 @@ message_admins(message) log_game("[key_name(user)] has primed a [name] for detonation at [bombarea] [COORD(bombturf)].") - user << "You light [src] on fire." + to_chat(user, "You light [src] on fire.") add_overlay(fire_overlay) if(!isGlass) spawn(50) @@ -396,8 +396,8 @@ /obj/item/weapon/reagent_containers/food/drinks/bottle/molotov/attack_self(mob/user) if(active) if(!isGlass) - user << "The flame's spread too far on it!" + to_chat(user, "The flame's spread too far on it!") return - user << "You snuff out the flame on [src]." + to_chat(user, "You snuff out the flame on [src].") cut_overlay(fire_overlay) active = 0 diff --git a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm index 38625b68e4..244b675a2b 100644 --- a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm +++ b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm @@ -525,22 +525,6 @@ icon_state = "glass_yellow" name = "Eggnog" desc = "For enjoying the most wonderful time of the year." - if("aphro") - icon_state = "glass_aphro" - name = "glass of aphrodisiac" - desc = "For your love interest." - if("aphro+") - icon_state = "glass_aphro+" - name = "glass of strong aphrodisiac" - desc = "For your less interested love interest." - if("semen") - icon_state = "glass_semen" - name = "glass of semen" - desc = "Salty." - if("femcum") - icon_state = "glass_femcum" - name = "glass of female ejaculate" - desc = "A glass of female ejaculate." else icon_state ="glass_brown" var/image/I = image(icon, "glassoverlay") @@ -651,18 +635,6 @@ icon_state = "shotglassgreen" name = "shot of absinthe" desc = "I am stuck in the cycles of my guilt..." - if ("semen") - icon_state = "shotglasswhite" - name = "cum shot" - desc = "All those college years boil down to this." - if("aphro") - icon_state = "shotglassaphro" - name = "shot of love" - desc = "Guaranteed to put you in the mood." - if("aphro+") - icon_state = "shotglassaphro" - name = "strong shot of love" - desc = "Guaranteed to put you in the mood. Not recommended to take more than one unless you're dedicated." else icon_state = "shotglassbrown" name = "shot of... what?" @@ -694,9 +666,9 @@ var/obj/item/weapon/reagent_containers/food/snacks/egg/E = I if(reagents) if(reagents.total_volume >= reagents.maximum_volume) - user << "[src] is full." + to_chat(user, "[src] is full.") else - user << "You break [E] in [src]." + to_chat(user, "You break [E] in [src].") reagents.add_reagent("eggyolk", 5) qdel(E) return diff --git a/code/modules/food_and_drinks/food/condiment.dm b/code/modules/food_and_drinks/food/condiment.dm index f353cb4ff2..e1c463becc 100644 --- a/code/modules/food_and_drinks/food/condiment.dm +++ b/code/modules/food_and_drinks/food/condiment.dm @@ -29,14 +29,14 @@ /obj/item/weapon/reagent_containers/food/condiment/attack(mob/M, mob/user, def_zone) if(!reagents || !reagents.total_volume) - user << "None of [src] left, oh no!" + to_chat(user, "None of [src] left, oh no!") return 0 if(!canconsume(M, user)) return 0 if(M == user) - M << "You swallow some of contents of \the [src]." + to_chat(M, "You swallow some of contents of \the [src].") else user.visible_message("[user] attempts to feed [M] from [src].") if(!do_mob(user, M)) @@ -57,26 +57,26 @@ if(istype(target, /obj/structure/reagent_dispensers)) //A dispenser. Transfer FROM it TO us. if(!target.reagents.total_volume) - user << "[target] is empty!" + to_chat(user, "[target] is empty!") return if(reagents.total_volume >= reagents.maximum_volume) - user << "[src] is full!" + to_chat(user, "[src] is full!") return var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) - user << "You fill [src] with [trans] units of the contents of [target]." + to_chat(user, "You fill [src] with [trans] units of the contents of [target].") //Something like a glass or a food item. Player probably wants to transfer TO it. else if(target.is_open_container() || istype(target, /obj/item/weapon/reagent_containers/food/snacks)) if(!reagents.total_volume) - user << "[src] is empty!" + to_chat(user, "[src] is empty!") return if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "you can't add anymore to [target]!" + to_chat(user, "you can't add anymore to [target]!") return var/trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "You transfer [trans] units of the condiment to [target]." + to_chat(user, "You transfer [trans] units of the condiment to [target].") /obj/item/weapon/reagent_containers/food/condiment/on_reagent_change() if(!possible_states.len) @@ -144,7 +144,7 @@ return if(isturf(target)) if(!reagents.has_reagent("sodiumchloride", 2)) - user << "You don't have enough salt to make a pile!" + to_chat(user, "You don't have enough salt to make a pile!") return user.visible_message("[user] shakes some salt onto [target].", "You shake some salt onto [target].") reagents.remove_reagent("sodiumchloride", 2) @@ -229,15 +229,15 @@ //You can tear the bag open above food to put the condiments on it, obviously. if(istype(target, /obj/item/weapon/reagent_containers/food/snacks)) if(!reagents.total_volume) - user << "You tear open [src], but there's nothing in it." + to_chat(user, "You tear open [src], but there's nothing in it.") qdel(src) return if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "You tear open [src], but [target] is stacked so high that it just drips off!" //Not sure if food can ever be full, but better safe than sorry. + to_chat(user, "You tear open [src], but [target] is stacked so high that it just drips off!" ) qdel(src) return else - user << "You tear open [src] above [target] and the condiments drip onto it." + to_chat(user, "You tear open [src] above [target] and the condiments drip onto it.") src.reagents.trans_to(target, amount_per_transfer_from_this) qdel(src) diff --git a/code/modules/food_and_drinks/food/customizables.dm b/code/modules/food_and_drinks/food/customizables.dm index e5f3d99bd0..705319f7c3 100644 --- a/code/modules/food_and_drinks/food/customizables.dm +++ b/code/modules/food_and_drinks/food/customizables.dm @@ -34,17 +34,17 @@ size = "big" if(ingredients.len>8) size = "monster" - user << "It contains [ingredients.len?"[ingredients_listed]":"no ingredient, "]making a [size]-sized [initial(name)]." + to_chat(user, "It contains [ingredients.len?"[ingredients_listed]":"no ingredient, "]making a [size]-sized [initial(name)].") /obj/item/weapon/reagent_containers/food/snacks/customizable/attackby(obj/item/I, mob/user, params) if(!istype(I, /obj/item/weapon/reagent_containers/food/snacks/customizable) && istype(I,/obj/item/weapon/reagent_containers/food/snacks)) var/obj/item/weapon/reagent_containers/food/snacks/S = I if(I.w_class > WEIGHT_CLASS_SMALL) - user << "The ingredient is too big for [src]!" + to_chat(user, "The ingredient is too big for [src]!") else if((ingredients.len >= ingMax) || (reagents.total_volume >= volume)) - user << "You can't add more ingredients to [src]!" + to_chat(user, "You can't add more ingredients to [src]!") else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/pizzaslice/custom) || istype(I, /obj/item/weapon/reagent_containers/food/snacks/cakeslice/custom)) - user << "Adding [I.name] to [src] would make a mess." + to_chat(user, "Adding [I.name] to [src] would make a mess.") else if(!user.transferItemToLoc(I, src)) return @@ -54,7 +54,7 @@ mix_filling_color(S) S.reagents.trans_to(src,min(S.reagents.total_volume, 15)) //limit of 15, we don't want our custom food to be completely filled by just one ingredient with large reagent volume. update_overlays(S) - user << "You add the [I.name] to the [name]." + to_chat(user, "You add the [I.name] to the [name].") update_name(S) else . = ..() @@ -117,9 +117,8 @@ if(INGREDIENTS_STACKPLUSTOP) I.pixel_x = rand(-1,1) I.pixel_y = 2 * ingredients.len - 1 - our_overlays.Cut(ingredients.len) //??? - //force an update here just in case - SSoverlays.processing[src] = src + if(our_overlays) + our_overlays.Cut(ingredients.len) //???, add overlay calls later in this proc will queue the compile if necessary var/image/TOP = new(icon, "[icon_state]_top") TOP.pixel_y = 2 * ingredients.len + 3 add_overlay(I) @@ -244,7 +243,7 @@ var/obj/item/weapon/reagent_containers/food/snacks/breadslice/BS = I if(finished) return - user << "You finish the [src.name]." + to_chat(user, "You finish the [src.name].") finished = 1 name = "[customname] sandwich" BS.reagents.trans_to(src, BS.reagents.total_volume) @@ -294,9 +293,9 @@ if(istype(I,/obj/item/weapon/reagent_containers/food/snacks)) var/obj/item/weapon/reagent_containers/food/snacks/S = I if(I.w_class > WEIGHT_CLASS_SMALL) - user << "The ingredient is too big for [src]!" + to_chat(user, "The ingredient is too big for [src]!") else if(contents.len >= 20) - user << "You can't add more ingredients to [src]!" + to_chat(user, "You can't add more ingredients to [src]!") else if(reagents.has_reagent("water", 10)) //are we starting a soup or a salad? var/obj/item/weapon/reagent_containers/food/snacks/customizable/A = new/obj/item/weapon/reagent_containers/food/snacks/customizable/soup(get_turf(src)) diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index c1a5928299..35b41d45fd 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -53,7 +53,7 @@ if(!eatverb) eatverb = pick("bite","chew","nibble","gnaw","gobble","chomp") if(!reagents.total_volume) //Shouldn't be needed but it checks to see if it has anything left in it. - user << "None of [src] left, oh no!" + to_chat(user, "None of [src] left, oh no!") qdel(src) return 0 if(iscarbon(M)) @@ -66,19 +66,19 @@ if(M == user) //If you're eating it yourself. if(junkiness && M.satiety < -150 && M.nutrition > NUTRITION_LEVEL_STARVING + 50 ) - M << "You don't feel like eating any more junk food at the moment." + to_chat(M, "You don't feel like eating any more junk food at the moment.") return 0 else if(fullness <= 50) - M << "You hungrily [eatverb] some of \the [src] and gobble it down!" + to_chat(M, "You hungrily [eatverb] some of \the [src] and gobble it down!") else if(fullness > 50 && fullness < 150) - M << "You hungrily begin to [eatverb] \the [src]." + to_chat(M, "You hungrily begin to [eatverb] \the [src].") else if(fullness > 150 && fullness < 500) - M << "You [eatverb] \the [src]." + to_chat(M, "You [eatverb] \the [src].") else if(fullness > 500 && fullness < 600) - M << "You unwillingly [eatverb] a bit of \the [src]." + to_chat(M, "You unwillingly [eatverb] a bit of \the [src].") else if(fullness > (600 * (1 + M.overeatduration / 2000))) // The more you eat - the more you can eat - M << "You cannot force any more of \the [src] to go down your throat!" + to_chat(M, "You cannot force any more of \the [src] to go down your throat!") return 0 else if(!isbrain(M)) //If you're feeding it to someone else. @@ -97,7 +97,7 @@ "[user] forces [M] to eat [src].") else - user << "[M] doesn't seem to have a mouth!" + to_chat(user, "[M] doesn't seem to have a mouth!") return if(reagents) //Handle ingestion of the reagent. @@ -124,11 +124,11 @@ if(bitecount == 0) return else if(bitecount == 1) - user << "[src] was bitten by someone!" + to_chat(user, "[src] was bitten by someone!") else if(bitecount <= 3) - user << "[src] was bitten [bitecount] times!" + to_chat(user, "[src] was bitten [bitecount] times!") else - user << "[src] was bitten multiple times!" + to_chat(user, "[src] was bitten multiple times!") /obj/item/weapon/reagent_containers/food/snacks/attackby(obj/item/weapon/W, mob/user, params) @@ -139,13 +139,13 @@ var/obj/item/weapon/reagent_containers/food/snacks/S = W if(custom_food_type && ispath(custom_food_type)) if(S.w_class > WEIGHT_CLASS_SMALL) - user << "[S] is too big for [src]!" + to_chat(user, "[S] is too big for [src]!") return 0 if(!S.customfoodfilling || istype(W, /obj/item/weapon/reagent_containers/food/snacks/customizable) || istype(W, /obj/item/weapon/reagent_containers/food/snacks/pizzaslice/custom) || istype(W, /obj/item/weapon/reagent_containers/food/snacks/cakeslice/custom)) - user << "[src] can't be filled with [S]!" + to_chat(user, "[src] can't be filled with [S]!") return 0 if(contents.len >= 20) - user << "You can't add more ingredients to [src]!" + to_chat(user, "You can't add more ingredients to [src]!") return 0 var/obj/item/weapon/reagent_containers/food/snacks/customizable/C = new custom_food_type(get_turf(src)) C.initialize_custom_food(src, S, user) @@ -190,7 +190,7 @@ !(locate(/obj/structure/table/optable) in src.loc) && \ !(locate(/obj/item/weapon/storage/bag/tray) in src.loc) \ ) - user << "You cannot slice [src] here! You need a table or at least a tray." + to_chat(user, "You cannot slice [src] here! You need a table or at least a tray.") return 1 var/slices_lost = 0 @@ -334,9 +334,9 @@ if(!iscarbon(user)) return 0 if(contents.len >= 20) - user << "[src] is full." + to_chat(user, "[src] is full.") return 0 - user << "You slip [W] inside [src]." + to_chat(user, "You slip [W] inside [src].") user.transferItemToLoc(W, src) add_fingerprint(user) contents += W diff --git a/code/modules/food_and_drinks/food/snacks/dough.dm b/code/modules/food_and_drinks/food/snacks/dough.dm index 5d412c05c1..73e99c9d1d 100644 --- a/code/modules/food_and_drinks/food/snacks/dough.dm +++ b/code/modules/food_and_drinks/food/snacks/dough.dm @@ -18,10 +18,10 @@ if(istype(I, /obj/item/weapon/kitchen/rollingpin)) if(isturf(loc)) new /obj/item/weapon/reagent_containers/food/snacks/flatdough(loc) - user << "You flatten [src]." + to_chat(user, "You flatten [src].") qdel(src) else - user << "You need to put [src] on a surface to roll it out!" + to_chat(user, "You need to put [src] on a surface to roll it out!") else ..() @@ -85,10 +85,10 @@ if(istype(I, /obj/item/weapon/kitchen/rollingpin)) if(isturf(loc)) new /obj/item/weapon/reagent_containers/food/snacks/piedough(loc) - user << "You flatten [src]." + to_chat(user, "You flatten [src].") qdel(src) else - user << "You need to put [src] on a surface to roll it out!" + to_chat(user, "You need to put [src] on a surface to roll it out!") else ..() diff --git a/code/modules/food_and_drinks/food/snacks_egg.dm b/code/modules/food_and_drinks/food/snacks_egg.dm index fb82a4ad11..ce18a40f2a 100644 --- a/code/modules/food_and_drinks/food/snacks_egg.dm +++ b/code/modules/food_and_drinks/food/snacks_egg.dm @@ -32,10 +32,10 @@ var/clr = C.item_color if(!(clr in list("blue", "green", "mime", "orange", "purple", "rainbow", "red", "yellow"))) - usr << "[src] refuses to take on this colour!" + to_chat(usr, "[src] refuses to take on this colour!") return - usr << "You colour [src] [clr]." + to_chat(usr, "You colour [src] [clr].") icon_state = "egg-[clr]" item_color = clr else @@ -115,7 +115,7 @@ if(istype(W,/obj/item/weapon/kitchen/fork)) var/obj/item/weapon/kitchen/fork/F = W if(F.forkload) - user << "You already have omelette on your fork!" + to_chat(user, "You already have omelette on your fork!") else F.icon_state = "forkloaded" user.visible_message("[user] takes a piece of omelette with their fork!", \ diff --git a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm index ee4b5a04c8..0ec4ee43a9 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm @@ -46,14 +46,14 @@ insert ascii eagle on american flag background here /obj/machinery/deepfryer/examine() ..() if(frying) - usr << "You can make out [frying] in the oil." + to_chat(usr, "You can make out [frying] in the oil.") /obj/machinery/deepfryer/attackby(obj/item/I, mob/user) if(!reagents.total_volume) - user << "There's nothing to fry with in [src]!" + to_chat(user, "There's nothing to fry with in [src]!") return if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/deepfryholder)) - user << "Your cooking skills are not up to the legendary Doublefry technique." + to_chat(user, "Your cooking skills are not up to the legendary Doublefry technique.") return if(default_unfasten_wrench(user, I)) return @@ -65,7 +65,7 @@ insert ascii eagle on american flag background here if(is_type_in_typecache(I, blacklisted_items)) . = ..() else if(user.drop_item() && !frying) - user << "You put [I] into [src]." + to_chat(user, "You put [I] into [src].") frying = I frying.forceMove(src) icon_state = "fryer_on" @@ -86,7 +86,7 @@ insert ascii eagle on american flag background here /obj/machinery/deepfryer/attack_hand(mob/user) if(frying) if(frying.loc == src) - user << "You eject [frying] from [src]." + to_chat(user, "You eject [frying] from [src].") var/obj/item/weapon/reagent_containers/food/snacks/deepfryholder/S = new(get_turf(src)) if(istype(frying, /obj/item/weapon/reagent_containers/)) var/obj/item/weapon/reagent_containers/food = frying @@ -124,7 +124,7 @@ insert ascii eagle on american flag background here return else if(user.pulling && user.a_intent == "grab" && iscarbon(user.pulling) && reagents.total_volume) if(user.grab_state < GRAB_AGGRESSIVE) - user << "You need a better grip to do that!" + to_chat(user, "You need a better grip to do that!") return var/mob/living/carbon/C = user.pulling user.visible_message("[user] dunks [C]'s face in [src]!") diff --git a/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm b/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm index 0348b99ef4..dd99b093b4 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/food_cart.dm @@ -74,10 +74,10 @@ return qdel(DG) glasses++ - user << "The [src] accepts the drinking glass, sterilizing it." + to_chat(user, "The [src] accepts the drinking glass, sterilizing it.") else if(istype(O, /obj/item/weapon/reagent_containers/food/snacks)) if(isFull()) - user << "The [src] is at full capacity." + to_chat(user, "The [src] is at full capacity.") else var/obj/item/weapon/reagent_containers/food/snacks/S = O if(!user.drop_item()) @@ -92,12 +92,12 @@ if(G.get_amount() >= 1) G.use(1) glasses += 4 - user << "The [src] accepts a sheet of glass." + to_chat(user, "The [src] accepts a sheet of glass.") else if(istype(O, /obj/item/weapon/storage/bag/tray)) var/obj/item/weapon/storage/bag/tray/T = O for(var/obj/item/weapon/reagent_containers/food/snacks/S in T.contents) if(isFull()) - user << "The [src] is at full capacity." + to_chat(user, "The [src] is at full capacity.") break else T.remove_from_storage(S, src) @@ -132,7 +132,7 @@ if(href_list["pour"] || href_list["m_pour"]) if(glasses-- <= 0) - usr << "There are no glasses left!" + to_chat(usr, "There are no glasses left!") glasses = 0 else var/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/DG = new(loc) @@ -143,11 +143,11 @@ if(href_list["mix"]) if(reagents.trans_id_to(mixer, href_list["mix"], portion) == 0) - usr << "The [mixer] is full!" + to_chat(usr, "The [mixer] is full!") if(href_list["transfer"]) if(mixer.reagents.trans_id_to(src, href_list["transfer"], portion) == 0) - usr << "The [src] is full!" + to_chat(usr, "The [src] is full!") updateDialog() diff --git a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm index 9b078bbd38..13b7f4d8f5 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm @@ -92,20 +92,20 @@ if(stat & (NOPOWER|BROKEN)) return if(operating) - user << "It's locked and running." + to_chat(user, "It's locked and running.") return if(user.pulling && user.a_intent == INTENT_GRAB && isliving(user.pulling)) var/mob/living/L = user.pulling if(!iscarbon(L)) - user << "This item is not suitable for the gibber!" + to_chat(user, "This item is not suitable for the gibber!") return var/mob/living/carbon/C = L if(C.buckled ||C.has_buckled_mobs()) - user << "[C] is attached to something!" + to_chat(user, "[C] is attached to something!") return if(C.abiotic(1) && !ignore_clothing) - user << "Subject may not have abiotic items on." + to_chat(user, "Subject may not have abiotic items on.") return user.visible_message("[user] starts to put [C] into the gibber!") diff --git a/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm b/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm index dd12afbf44..43be7ad747 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/icecream_vat.dm @@ -106,9 +106,9 @@ if(I.reagents.total_volume < 10) I.reagents.add_reagent("sugar", 10 - I.reagents.total_volume) else - user << "There is not enough ice cream left!" + to_chat(user, "There is not enough ice cream left!") else - user << "[O] already has ice cream in it." + to_chat(user, "[O] already has ice cream in it.") return 1 else if(O.is_open_container()) return @@ -131,7 +131,7 @@ else src.visible_message("[user] whips up some [flavour] icecream.") else - user << "You don't have the ingredients to make this!" + to_chat(user, "You don't have the ingredients to make this!") /obj/machinery/icecream_vat/Topic(href, href_list) if(..()) @@ -158,7 +158,7 @@ I.desc = "Delicious [cone_name] cone, but no ice cream." src.visible_message("[usr] dispenses a crunchy [cone_name] cone from [src].") else - usr << "There are no [cone_name] cones left!" + to_chat(usr, "There are no [cone_name] cones left!") if(href_list["make"]) var/amount = (text2num(href_list["amount"])) diff --git a/code/modules/food_and_drinks/kitchen_machinery/juicer.dm b/code/modules/food_and_drinks/kitchen_machinery/juicer.dm index a2ed2fd141..5770adc539 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/juicer.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/juicer.dm @@ -47,7 +47,7 @@ return 1 else if(!user.transferItemToLoc(O, src)) - user << "\the [O] is stuck to your hand, you cannot put it in \the [src]!" + to_chat(user, "\the [O] is stuck to your hand, you cannot put it in \the [src]!") return 0 beaker = O src.verbs += /obj/machinery/juicer/verb/detach @@ -55,10 +55,10 @@ src.updateUsrDialog() return 0 if (!is_type_in_list(O, allowed_items)) - user << "This object contains no fluid or extractable reagents." + to_chat(user, "This object contains no fluid or extractable reagents.") return 1 if(!user.transferItemToLoc(O, src)) - user << "\the [O] is stuck to your hand, you cannot put it in \the [src]!" + to_chat(user, "\the [O] is stuck to your hand, you cannot put it in \the [src]!") return 0 src.updateUsrDialog() return 0 diff --git a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm index bf3d133c9d..aa60840cd0 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm @@ -95,7 +95,7 @@ src.container_type = OPENCONTAINER return 0 //to use some fuel else - user << "It's broken!" + to_chat(user, "It's broken!") return 1 else if(istype(O, /obj/item/weapon/reagent_containers/spray/)) var/obj/item/weapon/reagent_containers/spray/clean_spray = O @@ -113,7 +113,7 @@ src.updateUsrDialog() return 1 // Disables the after-attack so we don't spray the floor/user. else - user << "You need more space cleaner!" + to_chat(user, "You need more space cleaner!") return 1 else if(istype(O, /obj/item/weapon/soap/)) // If they're trying to clean it then let them @@ -133,7 +133,7 @@ src.container_type = OPENCONTAINER else if(src.dirty==100) // The microwave is all dirty so can't be used! - user << "It's dirty!" + to_chat(user, "It's dirty!") return 1 else if(istype(O, /obj/item/weapon/storage/bag/tray)) @@ -141,22 +141,22 @@ var/loaded = 0 for(var/obj/item/weapon/reagent_containers/food/snacks/S in T.contents) if (contents.len>=max_n_of_items) - user << "[src] is full, you can't put anything in!" + to_chat(user, "[src] is full, you can't put anything in!") return 1 T.remove_from_storage(S, src) loaded++ if(loaded) - user << "You insert [loaded] items into [src]." + to_chat(user, "You insert [loaded] items into [src].") else if(O.w_class <= WEIGHT_CLASS_NORMAL && !istype(O,/obj/item/weapon/storage) && user.a_intent == INTENT_HELP) if (contents.len>=max_n_of_items) - user << "[src] is full, you can't put anything in!" + to_chat(user, "[src] is full, you can't put anything in!") return 1 else if(!user.drop_item()) - user << "\the [O] is stuck to your hand, you cannot put it in \the [src]!" + to_chat(user, "\the [O] is stuck to your hand, you cannot put it in \the [src]!") return 0 O.loc = src @@ -296,7 +296,7 @@ /obj/machinery/microwave/proc/dispose() for (var/obj/O in contents) O.loc = src.loc - usr << "You dispose of the microwave contents." + to_chat(usr, "You dispose of the microwave contents.") updateUsrDialog() /obj/machinery/microwave/proc/muck_start() diff --git a/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm b/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm index 475236814a..ac99e25aed 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm @@ -70,13 +70,13 @@ if(!istype(target)) return if(target.stat == 0) - user << "The monkey is struggling far too much to put it in the recycler." + to_chat(user, "The monkey is struggling far too much to put it in the recycler.") return if(target.buckled || target.has_buckled_mobs()) - user << "The monkey is attached to something." + to_chat(user, "The monkey is attached to something.") return qdel(target) - user << "You stuff the monkey into the machine." + to_chat(user, "You stuff the monkey into the machine.") playsound(src.loc, 'sound/machines/juicer.ogg', 50, 1) var/offset = prob(50) ? -2 : 2 animate(src, pixel_x = pixel_x + offset, time = 0.2, loop = 200) //start shaking @@ -84,19 +84,19 @@ grinded++ sleep(50) pixel_x = initial(pixel_x) //return to its spot after shaking - user << "The machine now has [grinded] monkey\s worth of material stored." + to_chat(user, "The machine now has [grinded] monkey\s worth of material stored.") /obj/machinery/monkey_recycler/attack_hand(mob/user) if (src.stat != 0) //NOPOWER etc return if(grinded >= required_grind) - user << "The machine hisses loudly as it condenses the grinded monkey meat. After a moment, it dispenses a brand new monkey cube." + to_chat(user, "The machine hisses loudly as it condenses the grinded monkey meat. After a moment, it dispenses a brand new monkey cube.") playsound(src.loc, 'sound/machines/hiss.ogg', 50, 1) grinded -= required_grind for(var/i = 0, i < cube_production, i++) new /obj/item/weapon/reagent_containers/food/snacks/monkeycube(src.loc) - user << "The machine's display flashes that it has [grinded] monkeys worth of material left." + to_chat(user, "The machine's display flashes that it has [grinded] monkeys worth of material left.") else - user << "The machine needs at least [required_grind] monkey(s) worth of material to produce a monkey cube. It only has [grinded]." + to_chat(user, "The machine needs at least [required_grind] monkey(s) worth of material to produce a monkey cube. It only has [grinded].") return diff --git a/code/modules/food_and_drinks/kitchen_machinery/processor.dm b/code/modules/food_and_drinks/kitchen_machinery/processor.dm index 941e860eb5..f64014446c 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/processor.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/processor.dm @@ -37,11 +37,11 @@ if(build_path == /obj/machinery/processor) name = "Slime Processor (Machine Board)" build_path = /obj/machinery/processor/slime - user << "Name protocols successfully updated." + to_chat(user, "Name protocols successfully updated.") else name = "Food Processor (Machine Board)" build_path = /obj/machinery/processor - user << "Defaulting name protocols." + to_chat(user, "Defaulting name protocols.") else return ..() @@ -191,7 +191,7 @@ /obj/machinery/processor/attackby(obj/item/O, mob/user, params) if(src.processing) - user << "The processor is in the process of processing!" + to_chat(user, "The processor is in the process of processing!") return 1 if(default_deconstruction_screwdriver(user, "processor", "processor1", O)) return @@ -218,9 +218,9 @@ loaded++ if(loaded) - user << "You insert [loaded] items into [src]." + to_chat(user, "You insert [loaded] items into [src].") return - + var/datum/food_processor_process/P = select_recipe(O) if(P) user.visible_message("[user] put [O] into [src].", \ @@ -230,7 +230,7 @@ return 1 else if(user.a_intent != INTENT_HARM) - user << "That probably won't blend!" + to_chat(user, "That probably won't blend!") return 1 else return ..() @@ -239,11 +239,11 @@ if (src.stat != 0) //NOPOWER etc return if(src.processing) - user << "The processor is in the process of processing!" + to_chat(user, "The processor is in the process of processing!") return 1 if(user.a_intent == INTENT_GRAB && user.pulling && (isslime(user.pulling) || ismonkey(user.pulling))) if(user.grab_state < GRAB_AGGRESSIVE) - user << "You need a better grip to do that!" + to_chat(user, "You need a better grip to do that!") return var/mob/living/pushed_mob = user.pulling visible_message("[user] stuffs [pushed_mob] into [src]!") @@ -251,7 +251,7 @@ user.stop_pulling() return if(src.contents.len == 0) - user << "The processor is empty!" + to_chat(user, "The processor is empty!") return 1 src.processing = 1 user.visible_message("[user] turns on [src].", \ diff --git a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm index 7674cbe97b..068c41a405 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm @@ -47,13 +47,13 @@ var/position = fridges.Find(build_path, fridges) position = (position == fridges.len) ? 1 : (position + 1) build_path = fridges[position] - user << "You set the board to [fridges[build_path]]." + to_chat(user, "You set the board to [fridges[build_path]].") else return ..() /obj/item/weapon/circuitboard/machine/smartfridge/examine/(mob/user) ..() - user << "[src] is set to [fridges[build_path]]. You can use a screwdriver to reconfigure it." + to_chat(user, "[src] is set to [fridges[build_path]]. You can use a screwdriver to reconfigure it.") /obj/machinery/smartfridge/RefreshParts() for(var/obj/item/weapon/stock_parts/matter_bin/B in component_parts) @@ -96,7 +96,7 @@ if(!stat) if(contents.len >= max_n_of_items) - user << "\The [src] is full!" + to_chat(user, "\The [src] is full!") return FALSE if(accept_check(O)) @@ -124,14 +124,14 @@ user.visible_message("[user] loads \the [src] with \the [O].", \ "You load \the [src] with \the [O].") if(O.contents.len > 0) - user << "Some items are refused." + to_chat(user, "Some items are refused.") return TRUE else - user << "There is nothing in [O] to put in [src]!" + to_chat(user, "There is nothing in [O] to put in [src]!") return FALSE if(user.a_intent != INTENT_HARM) - user << "\The [src] smartly refuses [O]." + to_chat(user, "\The [src] smartly refuses [O].") updateUsrDialog() return FALSE else @@ -148,7 +148,7 @@ if(istype(O.loc,/mob)) var/mob/M = O.loc if(!M.transferItemToLoc(O, src)) - usr << "\the [O] is stuck to your hand, you cannot put it in \the [src]!" + to_chat(usr, "\the [O] is stuck to your hand, you cannot put it in \the [src]!") return else if(istype(O.loc,/obj/item/weapon/storage)) diff --git a/code/modules/food_and_drinks/pizzabox.dm b/code/modules/food_and_drinks/pizzabox.dm index b6eb92f801..75223d8970 100644 --- a/code/modules/food_and_drinks/pizzabox.dm +++ b/code/modules/food_and_drinks/pizzabox.dm @@ -92,14 +92,14 @@ if(open) if(pizza) user.put_in_hands(pizza) - user << "You take [pizza] out of [src]." + to_chat(user, "You take [pizza] out of [src].") pizza = null update_icon() return else if(bomb) if(wires.is_all_cut() && bomb_defused) user.put_in_hands(bomb) - user << "You carefully remove the [bomb] from [src]." + to_chat(user, "You carefully remove the [bomb] from [src].") bomb = null update_icon() return @@ -114,14 +114,14 @@ log_game("[key_name(user)] has trapped a [src] with [bomb] set to [bomb_timer * 2] seconds.") bomb.adminlog = "The [bomb.name] in [src.name] that [key_name(user)] activated has detonated!" - user << "You trap [src] with [bomb]." + to_chat(user, "You trap [src] with [bomb].") update_icon() return else if(boxes.len) var/obj/item/pizzabox/topbox = boxes[boxes.len] boxes -= topbox user.put_in_hands(topbox) - user << "You remove the topmost [name] from the stack." + to_chat(user, "You remove the topmost [name] from the stack.") topbox.update_icon() update_icon() return @@ -141,21 +141,21 @@ boxes += add newbox.boxes.Cut() newbox.loc = src - user << "You put [newbox] on top of [src]!" + to_chat(user, "You put [newbox] on top of [src]!") newbox.update_icon() update_icon() return else - user << "The stack is dangerously high!" + to_chat(user, "The stack is dangerously high!") else - user << "Close [open ? src : newbox] first!" + to_chat(user, "Close [open ? src : newbox] first!") else if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/pizza) || istype(I, /obj/item/weapon/reagent_containers/food/snacks/customizable/pizza)) if(open) if(!user.drop_item()) return pizza = I I.loc = src - user << "You put [I] in [src]." + to_chat(user, "You put [I] in [src].") update_icon() return else if(istype(I, /obj/item/weapon/bombcore/pizza)) @@ -165,23 +165,23 @@ wires = new /datum/wires/explosive/pizza(src) bomb = I I.loc = src - user << "You put [I] in [src]. Sneeki breeki..." + to_chat(user, "You put [I] in [src]. Sneeki breeki...") update_icon() return else if(bomb) - user << "[src] already has a bomb in it!" + to_chat(user, "[src] already has a bomb in it!") else if(istype(I, /obj/item/weapon/pen)) if(!open) var/obj/item/pizzabox/box = boxes.len ? boxes[boxes.len] : src box.boxtag += stripped_input(user, "Write on [box]'s tag:", box, "", 30) - user << "You write with [I] on [src]." + to_chat(user, "You write with [I] on [src].") update_icon() return else if(is_wire_tool(I)) if(wires && bomb) wires.interact(user) else if(istype(I, /obj/item/weapon/reagent_containers/food)) - user << "That's not a pizza!" + to_chat(user, "That's not a pizza!") ..() /obj/item/pizzabox/process() diff --git a/code/modules/games/cards.dm b/code/modules/games/cards.dm index db502b751c..ebc9f84ae9 100644 --- a/code/modules/games/cards.dm +++ b/code/modules/games/cards.dm @@ -145,7 +145,7 @@ if(cards.len == 1 && istype(O, /obj/item/weapon/pen)) var/datum/playingcard/P = cards[1] if(!blank) - user << "You cannot write on that card." + to_chat(user, "You cannot write on that card.") return var/cardtext = sanitize(input(user, "What do you wish to write on the card?", "Card Writing") as text|null, 50) if(!cardtext) diff --git a/code/modules/games/cas.dm b/code/modules/games/cas.dm index 2ea54b4bdf..ed768a2063 100644 --- a/code/modules/games/cas.dm +++ b/code/modules/games/cas.dm @@ -60,7 +60,7 @@ var/global/list/cards_against_space if(user.lying) return if(cards.len == 0) - user << "There are no more cards to draw!" + to_chat(user, "There are no more cards to draw!") return var/obj/item/toy/cards/singlecard/cas/H = new/obj/item/toy/cards/singlecard/cas(user.loc) var/datum/playingcard/choice = cards[1] @@ -81,7 +81,7 @@ var/global/list/cards_against_space if(istype(I, /obj/item/toy/cards/singlecard/cas)) var/obj/item/toy/cards/singlecard/cas/SC = I if(!user.temporarilyRemoveItemFromInventory(SC)) - user << "The card is stuck to your hand, you can't add it to the deck!" + to_chat(user, "The card is stuck to your hand, you can't add it to the deck!") return var/datum/playingcard/RC // replace null datum for the re-added card RC = new() @@ -107,11 +107,11 @@ var/global/list/cards_against_space /obj/item/toy/cards/singlecard/cas/examine(mob/user) if (flipped) - user << "The card is face down." + to_chat(user, "The card is face down.") else if (blank) - user << "The card is blank. Write on it with a pen." + to_chat(user, "The card is blank. Write on it with a pen.") else - user << "The card reads: [name]" + to_chat(user, "The card reads: [name]") /obj/item/toy/cards/singlecard/cas/Flip() set name = "Flip Card" @@ -140,7 +140,7 @@ var/global/list/cards_against_space /obj/item/toy/cards/singlecard/cas/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/weapon/pen)) if(!blank) - user << "You cannot write on that card." + to_chat(user, "You cannot write on that card.") return var/cardtext = stripped_input(user, "What do you wish to write on the card?", "Card Writing", "", 50) if(!cardtext) diff --git a/code/modules/holiday/easter.dm b/code/modules/holiday/easter.dm index 8a373d7ec3..95fb66bcc7 100644 --- a/code/modules/holiday/easter.dm +++ b/code/modules/holiday/easter.dm @@ -135,7 +135,7 @@ /obj/item/weapon/reagent_containers/food/snacks/egg/attack_self(mob/user) ..() if(containsPrize) - user << "You unwrap the [src] and find a prize inside!" + to_chat(user, "You unwrap the [src] and find a prize inside!") dispensePrize(get_turf(user)) containsPrize = FALSE qdel(src) diff --git a/code/modules/holiday/halloween.dm b/code/modules/holiday/halloween.dm index 2b8058665e..9ffcce2071 100644 --- a/code/modules/holiday/halloween.dm +++ b/code/modules/holiday/halloween.dm @@ -129,7 +129,7 @@ layer = 4 var/timer = 0 -/mob/living/simple_animal/shade/howling_ghost/New() +/mob/living/simple_animal/shade/howling_ghost/Initialize() ..() icon_state = pick("ghost","ghostian","ghostian2","ghostking","ghost1","ghost2") icon_living = icon_state @@ -193,7 +193,7 @@ unsuitable_atmos_damage = 0 var/timer -/mob/living/simple_animal/hostile/retaliate/clown/insane/New() +/mob/living/simple_animal/hostile/retaliate/clown/insane/Initialize() ..() timer = rand(5,15) status_flags = (status_flags | GODMODE) diff --git a/code/modules/holiday/holidays.dm b/code/modules/holiday/holidays.dm index dbe95af242..27c178e466 100644 --- a/code/modules/holiday/holidays.dm +++ b/code/modules/holiday/holidays.dm @@ -144,7 +144,7 @@ /datum/holiday/april_fools/celebrate() if(ticker) ticker.login_music = 'sound/ambience/clown.ogg' - for(var/mob/new_player/P in mob_list) + for(var/mob/dead/new_player/P in mob_list) if(P.client) P.stopLobbySound() P.client.playtitlemusic() @@ -421,5 +421,5 @@ begin_day += 31 begin_month-- //begins in march, ends in april -// world << "Easter calculates to be on [begin_day] of [begin_month] ([days_early] early) to [end_day] of [end_month] ([days_extra] extra) for 20[yy]" +// to_chat(world, "Easter calculates to be on [begin_day] of [begin_month] ([days_early] early) to [end_day] of [end_month] ([days_extra] extra) for 20[yy]") return ..() diff --git a/code/modules/holodeck/area_copy.dm b/code/modules/holodeck/area_copy.dm index a8e0bebf20..b34c19b4e2 100644 --- a/code/modules/holodeck/area_copy.dm +++ b/code/modules/holodeck/area_copy.dm @@ -33,9 +33,9 @@ if(istype(O,/obj/machinery)) var/obj/machinery/M = O M.power_change() - + if(holoitem) - O.flags |= HOLOGRAM + SET_SECONDARY_FLAG(O, HOLOGRAM) return O @@ -105,7 +105,7 @@ var/mob/SM = DuplicateObject(M , perfectcopy=TRUE, newloc = B, holoitem=TRUE) copiedobjs += SM.GetAllContents() - var/global/list/forbidden_vars = list("type","stat","loc","locs","vars", "parent", "parent_type","verbs","ckey","key","x","y","z","contents", "luminosity") + var/global/list/forbidden_vars = list("type","stat","loc","locs","vars", "parent", "parent_type","verbs","ckey","key","x","y","z","contents", "light_range", "light_power", "light_color", "light", "light_sources") for(var/V in T.vars - forbidden_vars) if(V == "air") var/turf/open/O1 = B diff --git a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm index 7524e323cc..c5d7b56ca7 100644 --- a/code/modules/holodeck/computer.dm +++ b/code/modules/holodeck/computer.dm @@ -180,12 +180,12 @@ /obj/machinery/computer/holodeck/emag_act(mob/user as mob) if(!emagged) if(!emag_programs.len) - user << "[src] does not seem to have a card swipe port. It must be an inferior model." + to_chat(user, "[src] does not seem to have a card swipe port. It must be an inferior model.") return playsound(loc, 'sound/effects/sparks4.ogg', 75, 1) emagged = 1 - user << "You vastly increase projector power and override the safety and security protocols." - user << "Warning. Automatic shutoff and derezing protocols have been corrupted. Please call Nanotrasen maintenance and do not use the simulator." + to_chat(user, "You vastly increase projector power and override the safety and security protocols.") + to_chat(user, "Warning. Automatic shutoff and derezing protocols have been corrupted. Please call Nanotrasen maintenance and do not use the simulator.") log_game("[key_name(user)] emagged the Holodeck Control Console") updateUsrDialog() nerf(!emagged) diff --git a/code/modules/holodeck/computer_funcs.dm b/code/modules/holodeck/computer_funcs.dm index d7fb024996..96df1be42c 100644 --- a/code/modules/holodeck/computer_funcs.dm +++ b/code/modules/holodeck/computer_funcs.dm @@ -52,7 +52,7 @@ if(world.time < (last_change + 15))//To prevent super-spam clicking, reduced process size and annoyance -Sieve return if(get_dist(usr,src) <= 3) - usr << "ERROR. Recalibrating projection apparatus." + to_chat(usr, "ERROR. Recalibrating projection apparatus.") return last_change = world.time diff --git a/code/modules/holodeck/items.dm b/code/modules/holodeck/items.dm index fb8fffc6e7..d0c03602c7 100644 --- a/code/modules/holodeck/items.dm +++ b/code/modules/holodeck/items.dm @@ -52,14 +52,14 @@ w_class = WEIGHT_CLASS_BULKY hitsound = 'sound/weapons/blade1.ogg' playsound(user, 'sound/weapons/saberon.ogg', 20, 1) - user << "[src] is now active." + to_chat(user, "[src] is now active.") else force = 3 icon_state = "sword0" w_class = WEIGHT_CLASS_SMALL hitsound = "swing_hit" playsound(user, 'sound/weapons/saberoff.ogg', 20, 1) - user << "[src] can now be concealed." + to_chat(user, "[src] can now be concealed.") return //BASKETBALL OBJECTS @@ -109,7 +109,7 @@ if(user.pulling && user.a_intent == INTENT_GRAB && isliving(user.pulling)) var/mob/living/L = user.pulling if(user.grab_state < GRAB_AGGRESSIVE) - user << "You need a better grip to do that!" + to_chat(user, "You need a better grip to do that!") return L.loc = src.loc L.Weaken(5) @@ -154,19 +154,19 @@ power_channel = ENVIRON /obj/machinery/readybutton/attack_ai(mob/user as mob) - user << "The station AI is not to interact with these devices" + to_chat(user, "The station AI is not to interact with these devices") return /obj/machinery/readybutton/attack_paw(mob/user as mob) - user << "You are too primitive to use this device!" + to_chat(user, "You are too primitive to use this device!") return /obj/machinery/readybutton/attackby(obj/item/weapon/W as obj, mob/user as mob, params) - user << "The device is a solid button, there's nothing you can do with it!" + to_chat(user, "The device is a solid button, there's nothing you can do with it!") /obj/machinery/readybutton/attack_hand(mob/user as mob) if(user.stat || stat & (NOPOWER|BROKEN)) - user << "This device is not powered!" + to_chat(user, "This device is not powered!") return currentarea = get_area(src.loc) @@ -174,7 +174,7 @@ qdel(src) if(eventstarted) - usr << "The event has already begun!" + to_chat(usr, "The event has already begun!") return ready = !ready @@ -206,7 +206,7 @@ qdel(W) for(var/mob/M in currentarea) - M << "FIGHT!" + to_chat(M, "FIGHT!") /obj/machinery/conveyor/holodeck diff --git a/code/modules/holodeck/turfs.dm b/code/modules/holodeck/turfs.dm index b853f6d336..38ce9c70f1 100644 --- a/code/modules/holodeck/turfs.dm +++ b/code/modules/holodeck/turfs.dm @@ -43,7 +43,7 @@ icon_state = "asteroid0" /turf/open/floor/holofloor/asteroid/Initialize() - icon_state = "asteroid[pick(0,1,2,3,4,5,6,7,8,9,10,11,12)]" + icon_state = "asteroid[rand(0, 12)]" ..() /turf/open/floor/holofloor/basalt @@ -51,8 +51,10 @@ icon_state = "basalt0" /turf/open/floor/holofloor/basalt/Initialize() - icon_state = "basalt[pick(0,1,2,3,4,5,6,7,8,9,10,11,12)]" ..() + if(prob(15)) + icon_state = "basalt[rand(0, 12)]" + set_basalt_light(src) /turf/open/floor/holofloor/space name = "Space" diff --git a/code/modules/hydroponics/beekeeping/beebox.dm b/code/modules/hydroponics/beekeeping/beebox.dm index 8219a0a4f8..5a62ff3f34 100644 --- a/code/modules/hydroponics/beekeeping/beebox.dm +++ b/code/modules/hydroponics/beekeeping/beebox.dm @@ -123,22 +123,22 @@ ..() if(!queen_bee) - user << "There is no queen bee! There won't bee any honeycomb without a queen!" + to_chat(user, "There is no queen bee! There won't bee any honeycomb without a queen!") var/half_bee = get_max_bees()*0.5 if(half_bee && (bees.len >= half_bee)) - user << "This place is aBUZZ with activity... there are lots of bees!" + to_chat(user, "This place is aBUZZ with activity... there are lots of bees!") - user << "[bee_resources]/100 resource supply." - user << "[bee_resources]% towards a new honeycomb." - user << "[bee_resources*2]% towards a new bee." + to_chat(user, "[bee_resources]/100 resource supply.") + to_chat(user, "[bee_resources]% towards a new honeycomb.") + to_chat(user, "[bee_resources*2]% towards a new bee.") if(honeycombs.len) var/plural = honeycombs.len > 1 - user << "There [plural? "are" : "is"] [honeycombs.len] uncollected honeycomb[plural ? "s":""] in the apiary." + to_chat(user, "There [plural? "are" : "is"] [honeycombs.len] uncollected honeycomb[plural ? "s":""] in the apiary.") if(honeycombs.len >= get_max_honeycomb()) - user << "there's no room for more honeycomb!" + to_chat(user, "there's no room for more honeycomb!") /obj/structure/beebox/attackby(obj/item/I, mob/user, params) @@ -150,7 +150,7 @@ return honey_frames += HF else - user << "There's no room for any more frames in the apiary!" + to_chat(user, "There's no room for any more frames in the apiary!") if(istype(I, /obj/item/weapon/wrench)) if(default_unfasten_wrench(user, I, time = 20)) @@ -158,7 +158,7 @@ if(istype(I, /obj/item/queen_bee)) if(queen_bee) - user << "This hive already has a queen!" + to_chat(user, "This hive already has a queen!") return var/obj/item/queen_bee/qb = I @@ -181,10 +181,10 @@ B.loc = get_turf(src) relocated++ if(relocated) - user << "This queen has a different reagent to some of the bees who live here, those bees will not return to this apiary!" + to_chat(user, "This queen has a different reagent to some of the bees who live here, those bees will not return to this apiary!") else - user << "The queen bee disappeared! Disappearing bees have been in the news lately..." + to_chat(user, "The queen bee disappeared! Disappearing bees have been in the news lately...") qdel(qb) @@ -210,7 +210,7 @@ switch(option) if("Remove a Honey Frame") if(!honey_frames.len) - user << "There are no honey frames to remove!" + to_chat(user, "There are no honey frames to remove!") return var/obj/item/honey_frame/HF = pick_n_take(honey_frames) @@ -233,7 +233,7 @@ if("Remove the Queen Bee") if(!queen_bee || queen_bee.loc != src) - user << "There is no queen bee to remove!" + to_chat(user, "There is no queen bee to remove!") return var/obj/item/queen_bee/QB = new() queen_bee.loc = QB diff --git a/code/modules/hydroponics/biogenerator.dm b/code/modules/hydroponics/biogenerator.dm index 0f9a7059d0..c365514358 100644 --- a/code/modules/hydroponics/biogenerator.dm +++ b/code/modules/hydroponics/biogenerator.dm @@ -85,7 +85,7 @@ return ..() if(processing) - user << "The biogenerator is currently processing." + to_chat(user, "The biogenerator is currently processing.") return if(default_deconstruction_screwdriver(user, "biogen-empty-o", "biogen-empty", O)) @@ -106,17 +106,17 @@ . = 1 //no afterattack if(!panel_open) if(beaker) - user << "A container is already loaded into the machine." + to_chat(user, "A container is already loaded into the machine.") else if(!user.drop_item()) return O.loc = src beaker = O - user << "You add the container to the machine." + to_chat(user, "You add the container to the machine.") update_icon() updateUsrDialog() else - user << "Close the maintenance panel first." + to_chat(user, "Close the maintenance panel first.") return else if(istype(O, /obj/item/weapon/storage/bag/plants)) @@ -125,7 +125,7 @@ for(var/obj/item/weapon/reagent_containers/food/snacks/grown/G in contents) i++ if(i >= max_items) - user << "The biogenerator is already full! Activate it." + to_chat(user, "The biogenerator is already full! Activate it.") else for(var/obj/item/weapon/reagent_containers/food/snacks/grown/G in PB.contents) if(i >= max_items) @@ -133,11 +133,11 @@ PB.remove_from_storage(G, src) i++ if(iYou empty the plant bag into the biogenerator." + to_chat(user, "You empty the plant bag into the biogenerator.") else if(PB.contents.len == 0) - user << "You empty the plant bag into the biogenerator, filling it to its capacity." + to_chat(user, "You empty the plant bag into the biogenerator, filling it to its capacity.") else - user << "You fill the biogenerator to its capacity." + to_chat(user, "You fill the biogenerator to its capacity.") return 1 //no afterattack else if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/grown)) @@ -145,10 +145,10 @@ for(var/obj/item/weapon/reagent_containers/food/snacks/grown/G in contents) i++ if(i >= max_items) - user << "The biogenerator is full! Activate it." + to_chat(user, "The biogenerator is full! Activate it.") else if(user.transferItemToLoc(O, src)) - user << "You put [O.name] in [src.name]" + to_chat(user, "You put [O.name] in [src.name]") return 1 //no afterattack else if (istype(O, /obj/item/weapon/disk/design_disk)) user.visible_message("[user] begins to load \the [O] in \the [src]...", @@ -163,7 +163,7 @@ processing = 0 return 1 else - user << "You cannot put this in [src.name]!" + to_chat(user, "You cannot put this in [src.name]!") /obj/machinery/biogenerator/interact(mob/user) if(stat & BROKEN || panel_open) @@ -227,7 +227,7 @@ if (src.stat != 0) //NOPOWER etc return if(processing) - usr << "The biogenerator is in the process of working." + to_chat(usr, "The biogenerator is in the process of working.") return var/S = 0 for(var/obj/item/weapon/reagent_containers/food/snacks/grown/I in contents) diff --git a/code/modules/hydroponics/gene_modder.dm b/code/modules/hydroponics/gene_modder.dm index 08c7833f95..e91c4d14a8 100644 --- a/code/modules/hydroponics/gene_modder.dm +++ b/code/modules/hydroponics/gene_modder.dm @@ -15,11 +15,12 @@ var/datum/plant_gene/target var/operation = "" - var/rating = 0 - var/max_extract_pot = 50 - // The cap on potency gene extraction. - // This number is for T1, each upgraded part adds 5% for a tech level above T1. - // At T4, it reaches 95%. + var/max_potency = 50 // See RefreshParts() for how these work + var/max_yield = 2 + var/min_production = 12 + var/max_endurance = 10 // IMPT: ALSO AFFECTS LIFESPAN + var/max_wchance = 0 + var/max_wrate = 0 /obj/machinery/plantgenes/New() ..() @@ -36,15 +37,36 @@ /obj/item/weapon/stock_parts/console_screen = 1, /obj/item/weapon/stock_parts/scanning_module = 1) -/obj/machinery/plantgenes/RefreshParts() - rating = 0 - for(var/I in component_parts) - if(istype(I, /obj/item/weapon/stock_parts)) - var/obj/item/weapon/stock_parts/S = I - rating += S.rating-1 - else if(istype(I, /obj/item/weapon/circuitboard/machine/plantgenes/vault)) - rating += 5 // Having original alien board is +25% - max_extract_pot = initial(max_extract_pot) + rating*5 +/obj/machinery/plantgenes/RefreshParts() // Comments represent the max you can set per tier, respectively. seeds.dm [219] clamps these for us but we don't want to mislead the viewer. + for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts) + if(M.rating > 3) + max_potency = 95 + else + max_potency = initial(max_potency) + (M.rating**3) // 53,59,77,95 Clamps at 100 + + max_yield = initial(max_yield) + (M.rating*2) // 4,6,8,10 Clamps at 10 + + for(var/obj/item/weapon/stock_parts/scanning_module/SM in component_parts) + if(SM.rating > 3) //If you create t5 parts I'm a step ahead mwahahaha! + min_production = 1 + else + min_production = 12 - (SM.rating * 3) //9,6,3,1. Requires if to avoid going below clamp [1] + + max_endurance = initial(max_endurance) + (SM.rating * 25) // 35,60,85,100 Clamps at 10min 100max + + for(var/obj/item/weapon/stock_parts/micro_laser/ML in component_parts) + var/wratemod = ML.rating*2.5 + max_wrate = Floor(wratemod,1) // 2,5,7,10 Clamps at 10 + max_wchance = ML.rating*16+3 // 19,35,51,67 Clamps at 67 + for(var/obj/item/weapon/circuitboard/machine/plantgenes/vaultcheck in component_parts) + if(istype(vaultcheck, /obj/item/weapon/circuitboard/machine/plantgenes/vault)) // DUMB BOTANY TUTS + max_potency = 100 + max_yield = 10 + min_production = 1 + max_endurance = 100 + max_wchance = 67 + max_wrate = 10 + /obj/machinery/plantgenes/update_icon() ..() @@ -71,23 +93,23 @@ if(istype(I, /obj/item/seeds)) if(seed) - user << "A sample is already loaded into the machine!" + to_chat(user, "A sample is already loaded into the machine!") else if(!user.drop_item()) return insert_seed(I) - user << "You add [I] to the machine." + to_chat(user, "You add [I] to the machine.") interact(user) return else if(istype(I, /obj/item/weapon/disk/plantgene)) if(disk) - user << "A data disk is already loaded into the machine!" + to_chat(user, "A data disk is already loaded into the machine!") else if(!user.drop_item()) return disk = I disk.loc = src - user << "You add [I] to the machine." + to_chat(user, "You add [I] to the machine.") interact(user) else ..() @@ -130,11 +152,37 @@ if("extract") dat += "[target.get_name()] gene from \the [seed]?
    " dat += "The sample will be destroyed in process!" - if(istype(target, /datum/plant_gene/core/potency)) + if(istype(target, /datum/plant_gene/core)) var/datum/plant_gene/core/gene = target - if(gene.value > max_extract_pot) - dat += "

    This device's extraction capabilities are currently limited to [max_extract_pot] potency. " - dat += "Target gene will be degraded to [max_extract_pot] potency on extraction." + if(istype(target, /datum/plant_gene/core/potency)) + if(gene.value > max_potency) + dat += "

    This device's extraction capabilities are currently limited to [max_potency] potency. " + dat += "Target gene will be degraded to [max_potency] potency on extraction." + else if(istype(target, /datum/plant_gene/core/lifespan)) + if(gene.value > max_endurance) + dat += "

    This device's extraction capabilities are currently limited to [max_endurance] lifespan. " + dat += "Target gene will be degraded to [max_endurance] Lifespan on extraction." + else if(istype(target, /datum/plant_gene/core/endurance)) + if(gene.value > max_endurance) + dat += "

    This device's extraction capabilities are currently limited to [max_endurance] endurance. " + dat += "Target gene will be degraded to [max_endurance] endurance on extraction." + else if(istype(target, /datum/plant_gene/core/yield)) + if(gene.value > max_yield) + dat += "

    This device's extraction capabilities are currently limited to [max_yield] yield. " + dat += "Target gene will be degraded to [max_yield] yield on extraction." + else if(istype(target, /datum/plant_gene/core/production)) + if(gene.value < min_production) + dat += "

    This device's extraction capabilities are currently limited to [min_production] production. " + dat += "Target gene will be degraded to [min_production] production on extraction." + else if(istype(target, /datum/plant_gene/core/weed_rate)) + if(gene.value > max_wrate) + dat += "

    This device's extraction capabilities are currently limited to [max_wrate] weed rate. " + dat += "Target gene will be degraded to [max_wrate] weed rate on extraction." + else if(istype(target, /datum/plant_gene/core/weed_chance)) + if(gene.value > max_wchance) + dat += "

    This device's extraction capabilities are currently limited to [max_wchance] weed chance. " + dat += "Target gene will be degraded to [max_wchance] weed chance on extraction." + if("replace") dat += "[target.get_name()] gene with [disk.gene.get_name()]?
    " if("insert") @@ -239,7 +287,7 @@ if(!usr.drop_item()) return insert_seed(I) - usr << "You add [I] to the machine." + to_chat(usr, "You add [I] to the machine.") update_icon() else if(href_list["eject_disk"] && !operation) if (disk) @@ -254,7 +302,7 @@ return disk = I disk.loc = src - usr << "You add [I] to the machine." + to_chat(usr, "You add [I] to the machine.") else if(href_list["op"] == "insert" && disk && disk.gene && seed) if(!operation) // Wait for confirmation operation = "insert" @@ -289,9 +337,22 @@ if("extract") if(disk && !disk.read_only) disk.gene = G - if(istype(G, /datum/plant_gene/core/potency)) + if(istype(G, /datum/plant_gene/core)) var/datum/plant_gene/core/gene = G - gene.value = min(gene.value, max_extract_pot) + if(istype(G, /datum/plant_gene/core/potency)) + gene.value = min(gene.value, max_potency) + else if(istype(G, /datum/plant_gene/core/lifespan)) + gene.value = min(gene.value, max_endurance) //INTENDED + else if(istype(G, /datum/plant_gene/core/endurance)) + gene.value = min(gene.value, max_endurance) + else if(istype(G, /datum/plant_gene/core/production)) + gene.value = max(gene.value, min_production) + else if(istype(G, /datum/plant_gene/core/yield)) + gene.value = min(gene.value, max_yield) + else if(istype(G, /datum/plant_gene/core/weed_rate)) + gene.value = min(gene.value, max_wrate) + else if(istype(G, /datum/plant_gene/core/weed_chance)) + gene.value = min(gene.value, max_wchance) disk.update_name() qdel(seed) seed = null @@ -310,6 +371,7 @@ seed.reagents_from_genes() repaint_seed() + update_genes() operation = "" target = null @@ -347,6 +409,7 @@ for(var/datum/plant_gene/reagent/G in seed.genes) reagent_genes += G + for(var/datum/plant_gene/trait/G in seed.genes) trait_genes += G @@ -383,10 +446,11 @@ /obj/item/weapon/disk/plantgene name = "plant data disk" desc = "A disk for storing plant genetic data." - icon_state = "datadisk2" + icon_state = "datadisk_hydro" materials = list(MAT_METAL=30, MAT_GLASS=10) var/datum/plant_gene/gene var/read_only = 0 //Well, it's still a floppy disk + unique_rename = 1 /obj/item/weapon/disk/plantgene/New() ..() @@ -394,29 +458,16 @@ src.pixel_x = rand(-5, 5) src.pixel_y = rand(-5, 5) -/obj/item/weapon/disk/plantgene/attackby(obj/item/weapon/W, mob/user, params) - ..() - if(istype(W, /obj/item/weapon/pen)) - var/t = stripped_input(user, "What would you like the label to be?", name, null) - if(user.get_active_held_item() != W) - return - if(!in_range(src, user) && loc != user) - return - if(t) - name = "plant data disk - '[t]'" - else - name = "plant data disk" - /obj/item/weapon/disk/plantgene/proc/update_name() if(gene) - name = "plant data disk - '[gene.get_name()]'" + name = "[gene.get_name()] (Plant Data Disk)" else name = "plant data disk" /obj/item/weapon/disk/plantgene/attack_self(mob/user) read_only = !read_only - user << "You flip the write-protect tab to [src.read_only ? "protected" : "unprotected"]." + to_chat(user, "You flip the write-protect tab to [src.read_only ? "protected" : "unprotected"].") /obj/item/weapon/disk/plantgene/examine(mob/user) ..() - user << "The write-protect tab is set to [src.read_only ? "protected" : "unprotected"]." + to_chat(user, "The write-protect tab is set to [src.read_only ? "protected" : "unprotected"].") diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index a6f8c94364..e6e19f32a2 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -54,7 +54,7 @@ if(seed) for(var/datum/plant_gene/trait/T in seed.genes) if(T.examine_line) - user << T.examine_line + to_chat(user, T.examine_line) /obj/item/weapon/reagent_containers/food/snacks/grown/attackby(obj/item/O, mob/user, params) ..() @@ -72,7 +72,7 @@ if(reag_txt) msg += reag_txt msg += "
    *---------*" - user << msg + to_chat(user, msg) else if(seed) for(var/datum/plant_gene/trait/T in seed.genes) @@ -130,30 +130,6 @@ ..() -// Glow gene procs -/obj/item/weapon/reagent_containers/food/snacks/grown/Destroy() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G && ismob(loc)) - loc.AddLuminosity(-G.get_lum(seed)) - return ..() - -/obj/item/weapon/reagent_containers/food/snacks/grown/pickup(mob/user) - ..() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G) - SetLuminosity(0) - user.AddLuminosity(G.get_lum(seed)) - -/obj/item/weapon/reagent_containers/food/snacks/grown/dropped(mob/user) - ..() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G) - user.AddLuminosity(-G.get_lum(seed)) - SetLuminosity(G.get_lum(seed)) - /obj/item/weapon/reagent_containers/food/snacks/grown/generate_trash(atom/location) if(trash && ispath(trash, /obj/item/weapon/grown)) . = new trash(location, seed) @@ -166,7 +142,6 @@ var/obj/item/T if(trash) T = generate_trash() - qdel(src) - if(trash) - user.put_in_hands(T) - user << "You open [src]\'s shell, revealing \a [T]." + qdel(src) + user.putItemFromInventoryInHandIfPossible(T, user.active_hand_index, TRUE) + to_chat(user, "You open [src]\'s shell, revealing \a [T].") diff --git a/code/modules/hydroponics/grown/ambrosia.dm b/code/modules/hydroponics/grown/ambrosia.dm index 2b66f86a45..554cba9f47 100644 --- a/code/modules/hydroponics/grown/ambrosia.dm +++ b/code/modules/hydroponics/grown/ambrosia.dm @@ -72,5 +72,5 @@ icon_state = "ambrosia_gaia" filling_color = rgb(255, 175, 0) origin_tech = "biotech=6;materials=5" - luminosity = 3 + light_range = 3 seed = /obj/item/seeds/ambrosia/gaia diff --git a/code/modules/hydroponics/grown/chili.dm b/code/modules/hydroponics/grown/chili.dm index 218f50cbd5..7813095700 100644 --- a/code/modules/hydroponics/grown/chili.dm +++ b/code/modules/hydroponics/grown/chili.dm @@ -89,7 +89,7 @@ return held_mob.bodytemperature += 15 * TEMPERATURE_DAMAGE_COEFFICIENT if(prob(10)) - held_mob << "Your hand holding [src] burns!" + to_chat(held_mob, "Your hand holding [src] burns!") else held_mob = null ..() diff --git a/code/modules/hydroponics/grown/corn.dm b/code/modules/hydroponics/grown/corn.dm index 3c2169ddfe..59e7a0c008 100644 --- a/code/modules/hydroponics/grown/corn.dm +++ b/code/modules/hydroponics/grown/corn.dm @@ -37,7 +37,7 @@ /obj/item/weapon/grown/corncob/attackby(obj/item/weapon/grown/W, mob/user, params) if(W.is_sharp()) - user << "You use [W] to fashion a pipe out of the corn cob!" + to_chat(user, "You use [W] to fashion a pipe out of the corn cob!") new /obj/item/clothing/mask/cigarette/pipe/cobpipe (user.loc) qdel(src) else @@ -72,7 +72,7 @@ /obj/item/weapon/grown/snapcorn/attack_self(mob/user) ..() - user << "You pick a snap pop from the cob." + to_chat(user, "You pick a snap pop from the cob.") var/obj/item/toy/snappop/S = new /obj/item/toy/snappop(user.loc) if(ishuman(user)) user.put_in_hands(S) diff --git a/code/modules/hydroponics/grown/flowers.dm b/code/modules/hydroponics/grown/flowers.dm index 8f2147d29e..881e47238e 100644 --- a/code/modules/hydroponics/grown/flowers.dm +++ b/code/modules/hydroponics/grown/flowers.dm @@ -122,8 +122,8 @@ throw_range = 3 /obj/item/weapon/grown/sunflower/attack(mob/M, mob/user) - M << " [user] smacks you with a sunflower!FLOWER POWER" - user << "Your sunflower's FLOWER POWERstrikes [M]" + to_chat(M, " [user] smacks you with a sunflower!FLOWER POWER") + to_chat(user, "Your sunflower's FLOWER POWERstrikes [M]") // Moonflower /obj/item/seeds/sunflower/moonflower @@ -180,7 +180,7 @@ if(!..()) return if(isliving(M)) - M << "You are lit on fire from the intense heat of the [name]!" + to_chat(M, "You are lit on fire from the intense heat of the [name]!") M.adjust_fire_stacks(seed.potency / 20) if(M.IgniteMob()) message_admins("[key_name_admin(user)] set [key_name_admin(M)] on fire") @@ -191,11 +191,11 @@ if(force > 0) force -= rand(1, (force / 3) + 1) else - usr << "All the petals have fallen off the [name] from violent whacking!" + to_chat(usr, "All the petals have fallen off the [name] from violent whacking!") qdel(src) /obj/item/weapon/grown/novaflower/pickup(mob/living/carbon/human/user) ..() if(!user.gloves) - user << "The [name] burns your bare hand!" + to_chat(user, "The [name] burns your bare hand!") user.adjustFireLoss(rand(1, 5)) diff --git a/code/modules/hydroponics/grown/grass_carpet.dm b/code/modules/hydroponics/grown/grass_carpet.dm index 0772267baf..c7715a8bee 100644 --- a/code/modules/hydroponics/grown/grass_carpet.dm +++ b/code/modules/hydroponics/grown/grass_carpet.dm @@ -29,7 +29,7 @@ var/tile_coefficient = 0.02 // 1/50 /obj/item/weapon/reagent_containers/food/snacks/grown/grass/attack_self(mob/user) - user << "You prepare the astroturf." + to_chat(user, "You prepare the astroturf.") var/grassAmt = 1 + round(seed.potency * tile_coefficient) // The grass we're holding for(var/obj/item/weapon/reagent_containers/food/snacks/grown/grass/G in user.loc) // The grass on the floor if(G.type != type) diff --git a/code/modules/hydroponics/grown/kudzu.dm b/code/modules/hydroponics/grown/kudzu.dm index 57b51edbe9..d5cf0f0b97 100644 --- a/code/modules/hydroponics/grown/kudzu.dm +++ b/code/modules/hydroponics/grown/kudzu.dm @@ -29,15 +29,21 @@ /obj/item/seeds/kudzu/proc/plant(mob/user) if(isspaceturf(user.loc)) return - var/turf/T = get_turf(src) - message_admins("Kudzu planted by [key_name_admin(user)](?) (FLW) at ([T.x],[T.y],[T.z] - (JMP))",0,1) - investigate_log("was planted by [key_name(user)] at ([T.x],[T.y],[T.z])","kudzu") + if(!isturf(user.loc)) + to_chat(user, "You need more space to plant [src].") + return FALSE + if(locate(/obj/structure/spacevine) in user.loc) + to_chat(user, "There is too much kudzu here to plant [src].") + return FALSE + to_chat(user, "You plant [src].") + message_admins("Kudzu planted by [ADMIN_LOOKUPFLW(user)] at [ADMIN_COORDJMP(user)]",0,1) + investigate_log("was planted by [key_name(user)] at [COORD(user)]","botany") new /obj/effect/spacevine_controller(user.loc, mutations, potency, production) qdel(src) /obj/item/seeds/kudzu/attack_self(mob/user) plant(user) - user << "You plant the kudzu. You monster." + to_chat(user, "You plant the kudzu. You monster.") /obj/item/seeds/kudzu/get_analyzer_text() var/text = ..() diff --git a/code/modules/hydroponics/grown/mushrooms.dm b/code/modules/hydroponics/grown/mushrooms.dm index 602c2decdf..915c5792af 100644 --- a/code/modules/hydroponics/grown/mushrooms.dm +++ b/code/modules/hydroponics/grown/mushrooms.dm @@ -172,7 +172,7 @@ M.move_to_delay -= round(seed.production / 50) M.health = M.maxHealth qdel(src) - user << "You plant the walking mushroom." + to_chat(user, "You plant the walking mushroom.") // Chanterelle @@ -220,7 +220,7 @@ rarity = 20 genes = list(/datum/plant_gene/trait/glow, /datum/plant_gene/trait/plant_type/fungal_metabolism) growing_icon = 'icons/obj/hydroponics/growing_mushrooms.dmi' - mutatelist = list(/obj/item/seeds/glowshroom/glowcap) + mutatelist = list(/obj/item/seeds/glowshroom/glowcap, /obj/item/seeds/glowshroom/shadowshroom) reagents_add = list("radium" = 0.1, "phosphorus" = 0.1, "nutriment" = 0.04) /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom @@ -234,15 +234,25 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/attack_self(mob/user) if(isspaceturf(user.loc)) - return - var/obj/structure/glowshroom/planted = new effect_path(user.loc) - planted.delay = planted.delay - seed.production * 100 //So the delay goes DOWN with better stats instead of up. :I - planted.obj_integrity = seed.endurance - planted.max_integrity = seed.endurance - planted.yield = seed.yield - planted.potency = seed.potency - user << "You plant [src]." + return FALSE + if(!isturf(user.loc)) + to_chat(user, "You need more space to plant [src].") + return FALSE + var/count = 0 + var/maxcount = 1 + for(var/tempdir in cardinal) + var/turf/closed/wall = get_step(user.loc, tempdir) + if(istype(wall)) + maxcount++ + for(var/obj/structure/glowshroom/G in user.loc) + count++ + if(count >= maxcount) + to_chat(user, "There are too many shrooms here to plant [src].") + return FALSE + new effect_path(user.loc, seed) + to_chat(user, "You plant [src].") qdel(src) + return TRUE // Glowcap @@ -255,7 +265,7 @@ icon_dead = "glowshroom-dead" plantname = "Glowcaps" product = /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/glowcap - genes = list(/datum/plant_gene/trait/glow, /datum/plant_gene/trait/cell_charge, /datum/plant_gene/trait/plant_type/fungal_metabolism) + genes = list(/datum/plant_gene/trait/glow/red, /datum/plant_gene/trait/cell_charge, /datum/plant_gene/trait/plant_type/fungal_metabolism) mutatelist = list() reagents_add = list("teslium" = 0.1, "nutriment" = 0.04) rarity = 30 @@ -263,8 +273,39 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/glowcap seed = /obj/item/seeds/glowshroom/glowcap name = "glowcap cluster" - desc = "Mycena Ruthenia: This species of mushroom glows in the dark, but aren't bioluminescent. They're warm to the touch..." + desc = "Mycena Ruthenia: This species of mushroom glows in the dark, but isn't actually bioluminescent. They're warm to the touch..." icon_state = "glowcap" filling_color = "#00FA9A" effect_path = /obj/structure/glowshroom/glowcap origin_tech = "biotech=4;powerstorage=6;plasmatech=4" + + +//Shadowshroom +/obj/item/seeds/glowshroom/shadowshroom + name = "pack of shadowshroom mycelium" + desc = "This mycelium will grow into something shadowy." + icon_state = "mycelium-shadowshroom" + species = "shadowshroom" + icon_grow = "shadowshroom-grow" + icon_dead = "shadowshroom-dead" + plantname = "Shadowshrooms" + product = /obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/shadowshroom + genes = list(/datum/plant_gene/trait/glow/shadow, /datum/plant_gene/trait/plant_type/fungal_metabolism) + mutatelist = list() + reagents_add = list("radium" = 0.2, "nutriment" = 0.04) + rarity = 30 + +/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/shadowshroom + seed = /obj/item/seeds/glowshroom/shadowshroom + name = "shadowshroom cluster" + desc = "Mycena Umbra: This species of mushroom emits shadow instead of light." + icon_state = "shadowshroom" + effect_path = /obj/structure/glowshroom/shadowshroom + origin_tech = "biotech=4;plasmatech=4;magnets=4" + +/obj/item/weapon/reagent_containers/food/snacks/grown/mushroom/glowshroom/shadowshroom/attack_self(mob/user) + . = ..() + if(.) + message_admins("Shadowshroom planted by [ADMIN_LOOKUPFLW(user)] at [ADMIN_COORDJMP(user)]",0,1) + investigate_log("was planted by [key_name(user)] at [COORD(user)]", "botany") + diff --git a/code/modules/hydroponics/grown/nettle.dm b/code/modules/hydroponics/grown/nettle.dm index 1c9738fa44..264261dd69 100644 --- a/code/modules/hydroponics/grown/nettle.dm +++ b/code/modules/hydroponics/grown/nettle.dm @@ -59,7 +59,7 @@ if(affecting) if(affecting.receive_damage(0, force)) C.update_damage_overlays() - C << "The nettle burns your bare hand!" + to_chat(C, "The nettle burns your bare hand!") return 1 /obj/item/weapon/grown/nettle/afterattack(atom/A as mob|obj, mob/user,proximity) @@ -67,7 +67,7 @@ if(force > 0) force -= rand(1, (force / 3) + 1) // When you whack someone with it, leaves fall off else - usr << "All the leaves have fallen off the nettle from violent whacking." + to_chat(usr, "All the leaves have fallen off the nettle from violent whacking.") qdel(src) /obj/item/weapon/grown/nettle/basic @@ -94,13 +94,13 @@ if(..()) if(prob(50)) user.Paralyse(5) - user << "You are stunned by the Deathnettle when you try picking it up!" + to_chat(user, "You are stunned by the Deathnettle when you try picking it up!") /obj/item/weapon/grown/nettle/death/attack(mob/living/carbon/M, mob/user) if(!..()) return if(isliving(M)) - M << "You are stunned by the powerful acid of the Deathnettle!" + to_chat(M, "You are stunned by the powerful acid of the Deathnettle!") add_logs(user, M, "attacked", src) M.adjust_blurriness(force/7) diff --git a/code/modules/hydroponics/grown/potato.dm b/code/modules/hydroponics/grown/potato.dm index 8164f5f162..12d8e46ccd 100644 --- a/code/modules/hydroponics/grown/potato.dm +++ b/code/modules/hydroponics/grown/potato.dm @@ -37,7 +37,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/potato/attackby(obj/item/weapon/W, mob/user, params) if(W.is_sharp()) - user << "You cut the potato into wedges with [W]." + to_chat(user, "You cut the potato into wedges with [W].") var/obj/item/weapon/reagent_containers/food/snacks/grown/potato/wedges/Wedges = new /obj/item/weapon/reagent_containers/food/snacks/grown/potato/wedges remove_item_from_storage(user) qdel(src) diff --git a/code/modules/hydroponics/grown/replicapod.dm b/code/modules/hydroponics/grown/replicapod.dm index 3eb6fb3a89..43566d5696 100644 --- a/code/modules/hydroponics/grown/replicapod.dm +++ b/code/modules/hydroponics/grown/replicapod.dm @@ -35,12 +35,12 @@ features = bloodSample.data["features"] factions = bloodSample.data["factions"] W.reagents.clear_reagents() - user << "You inject the contents of the syringe into the seeds." + to_chat(user, "You inject the contents of the syringe into the seeds.") contains_sample = 1 else - user << "The seeds reject the sample!" + to_chat(user, "The seeds reject the sample!") else - user << "The seeds already contain a genetic sample!" + to_chat(user, "The seeds already contain a genetic sample!") else return ..() diff --git a/code/modules/hydroponics/grown/root.dm b/code/modules/hydroponics/grown/root.dm index 753b9a287a..7794148f0e 100644 --- a/code/modules/hydroponics/grown/root.dm +++ b/code/modules/hydroponics/grown/root.dm @@ -24,7 +24,7 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/carrot/attackby(obj/item/I, mob/user, params) if(I.is_sharp()) - user << "You sharpen the carrot into a shiv with [I]." + to_chat(user, "You sharpen the carrot into a shiv with [I].") var/obj/item/weapon/kitchen/knife/carrotshiv/Shiv = new /obj/item/weapon/kitchen/knife/carrotshiv remove_item_from_storage(user) qdel(src) diff --git a/code/modules/hydroponics/grown/tomato.dm b/code/modules/hydroponics/grown/tomato.dm index 1815868dcc..4a8faa6829 100644 --- a/code/modules/hydroponics/grown/tomato.dm +++ b/code/modules/hydroponics/grown/tomato.dm @@ -119,14 +119,14 @@ /obj/item/weapon/reagent_containers/food/snacks/grown/tomato/killer/attack(mob/M, mob/user, def_zone) if(awakening) - user << "The tomato is twitching and shaking, preventing you from eating it." + to_chat(user, "The tomato is twitching and shaking, preventing you from eating it.") return ..() /obj/item/weapon/reagent_containers/food/snacks/grown/tomato/killer/attack_self(mob/user) if(awakening || isspaceturf(user.loc)) return - user << "You begin to awaken the Killer Tomato..." + to_chat(user, "You begin to awaken the Killer Tomato...") awakening = 1 spawn(30) diff --git a/code/modules/hydroponics/grown/towercap.dm b/code/modules/hydroponics/grown/towercap.dm index 1a24a76151..b2297e8375 100644 --- a/code/modules/hydroponics/grown/towercap.dm +++ b/code/modules/hydroponics/grown/towercap.dm @@ -63,7 +63,7 @@ if(ST != plank && istype(ST, plank_type) && ST.amount < ST.max_amount) ST.attackby(plank, user) //we try to transfer all old unfinished stacks to the new stack we created. if(plank.amount > old_plank_amount) - user << "You add the newly-formed [plank_name] to the stack. It now contains [plank.amount] [plank_name]." + to_chat(user, "You add the newly-formed [plank_name] to the stack. It now contains [plank.amount] [plank_name].") qdel(src) if(is_type_in_list(W,accepted)) @@ -77,7 +77,7 @@ qdel(src) return else - usr << "You must dry this first!" + to_chat(usr, "You must dry this first!") else return ..() @@ -115,7 +115,7 @@ R.use(1) can_buckle = 1 buckle_requires_restraints = 1 - user << "You add a rod to [src]." + to_chat(user, "You add a rod to [src].") var/image/U = image(icon='icons/obj/hydroponics/equipment.dmi',icon_state="bonfire_rod",pixel_y=16) underlays += U if(W.is_hot()) @@ -124,7 +124,7 @@ /obj/structure/bonfire/attack_hand(mob/user) if(burning) - user << "You need to extinguish [src] before removing the logs!" + to_chat(user, "You need to extinguish [src] before removing the logs!") return if(!has_buckled_mobs() && do_after(user, 50, target = src)) for(var/I in 1 to 5) @@ -149,7 +149,7 @@ if(!burning && CheckOxygen()) icon_state = "bonfire_on_fire" burning = 1 - SetLuminosity(6) + set_light(6) Burn() START_PROCESSING(SSobj, src) @@ -184,7 +184,7 @@ if(burning) icon_state = "bonfire" burning = 0 - SetLuminosity(0) + set_light(0) STOP_PROCESSING(SSobj, src) /obj/structure/bonfire/buckle_mob(mob/living/M, force = 0) @@ -193,4 +193,4 @@ /obj/structure/bonfire/unbuckle_mob(mob/living/buckled_mob, force=0) if(..()) - buckled_mob.pixel_y -= 13 \ No newline at end of file + buckled_mob.pixel_y -= 13 diff --git a/code/modules/hydroponics/growninedible.dm b/code/modules/hydroponics/growninedible.dm index 361b31fcd6..60ae1e40cc 100644 --- a/code/modules/hydroponics/growninedible.dm +++ b/code/modules/hydroponics/growninedible.dm @@ -39,7 +39,7 @@ if(seed) msg += seed.get_analyzer_text() msg += "" - usr << msg + to_chat(usr, msg) return /obj/item/weapon/grown/proc/add_juice() @@ -54,36 +54,11 @@ T.on_cross(src, AM) ..() - -// Glow gene procs -/obj/item/weapon/grown/Destroy() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G && ismob(loc)) - loc.AddLuminosity(-G.get_lum(seed)) - return ..() - /obj/item/weapon/grown/throw_impact(atom/hit_atom) if(!..()) //was it caught by a mob? if(seed) for(var/datum/plant_gene/trait/T in seed.genes) T.on_throw_impact(src, hit_atom) -/obj/item/weapon/grown/pickup(mob/user) - ..() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G) - SetLuminosity(0) - user.AddLuminosity(G.get_lum(seed)) - -/obj/item/weapon/grown/dropped(mob/user) - ..() - if(seed) - var/datum/plant_gene/trait/glow/G = seed.get_gene(/datum/plant_gene/trait/glow) - if(G) - user.AddLuminosity(-G.get_lum(seed)) - SetLuminosity(G.get_lum(seed)) - /obj/item/weapon/grown/microwave_act(obj/machine/microwave/M) - return \ No newline at end of file + return diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index d027b378fd..226b611f80 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -81,7 +81,7 @@ if(istype(I, /obj/item/weapon/crowbar)) if(using_irrigation) - user << "Disconnect the hoses first!" + to_chat(user, "Disconnect the hoses first!") else if(default_deconstruction_crowbar(I, 1)) return else @@ -151,12 +151,12 @@ // Lack of light hurts non-mushrooms if(isturf(loc)) var/turf/currentTurf = loc - var/lightAmt = currentTurf.lighting_lumcount + var/lightAmt = currentTurf.get_lumcount() if(myseed.get_gene(/datum/plant_gene/trait/plant_type/fungal_metabolism)) - if(lightAmt < 2) + if(lightAmt < 0.2) adjustHealth(-1 / rating) else // Non-mushroom - if(lightAmt < 4) + if(lightAmt < 0.4) adjustHealth(-2 / rating) //Water////////////////////////////////////////////////////////////////// @@ -260,7 +260,7 @@ add_atom_colour(rgb(255, 175, 0), FIXED_COLOUR_PRIORITY) else add_overlay(image('icons/obj/hydroponics/equipment.dmi', icon_state = "gaia_blessing")) - SetLuminosity(3) + set_light(3) update_icon_hoses() @@ -271,9 +271,9 @@ if(!self_sustaining) if(myseed && myseed.get_gene(/datum/plant_gene/trait/glow)) var/datum/plant_gene/trait/glow/G = myseed.get_gene(/datum/plant_gene/trait/glow) - SetLuminosity(G.get_lum(myseed)) + set_light(G.glow_range(myseed), G.glow_power(myseed), G.glow_color) else - SetLuminosity(0) + set_light(0) return @@ -317,27 +317,27 @@ /obj/machinery/hydroponics/examine(user) ..() if(myseed) - user << "It has [myseed.plantname] planted." + to_chat(user, "It has [myseed.plantname] planted.") if (dead) - user << "It's dead!" + to_chat(user, "It's dead!") else if (harvest) - user << "It's ready to harvest." + to_chat(user, "It's ready to harvest.") else if (plant_health <= (myseed.endurance / 2)) - user << "It looks unhealthy." + to_chat(user, "It looks unhealthy.") else - user << "[src] is empty." + to_chat(user, "[src] is empty.") if(!self_sustaining) - user << "Water: [waterlevel]/[maxwater]" - user << "Nutrient: [nutrilevel]/[maxnutri]" + to_chat(user, "Water: [waterlevel]/[maxwater]") + to_chat(user, "Nutrient: [nutrilevel]/[maxnutri]") else - user << "It doesn't require any water or nutrients." + to_chat(user, "It doesn't require any water or nutrients.") if(weedlevel >= 5) - user << "[src] is filled with weeds!" + to_chat(user, "[src] is filled with weeds!") if(pestlevel >= 5) - user << "[src] is filled with tiny worms!" - user << "" // Empty line for readability. + to_chat(user, "[src] is filled with tiny worms!") + to_chat(user, "" ) /obj/machinery/hydroponics/proc/weedinvasion() // If a weed growth is sufficient, this happens. @@ -429,7 +429,7 @@ update_icon() visible_message("The mutated weeds in [src] spawn some [myseed.plantname]!") else - usr << "The few weeds in [src] seem to react, but only for a moment..." + to_chat(usr, "The few weeds in [src] seem to react, but only for a moment...") /obj/machinery/hydroponics/proc/plantdies() // OH NOES!!!!! I put this all in one function to make things easier @@ -449,7 +449,7 @@ visible_message("The pests seem to behave oddly...") spawn_atom_to_turf(/obj/structure/spider/spiderling/hunter, src, 3, FALSE) else - user << "The pests seem to behave oddly, but quickly settle down..." + to_chat(user, "The pests seem to behave oddly, but quickly settle down...") /obj/machinery/hydroponics/proc/applyChemicals(datum/reagents/S, mob/user) if(myseed) @@ -460,7 +460,7 @@ switch(rand(100)) if(91 to 100) adjustHealth(-10) - user << "The plant shrivels and burns." + to_chat(user, "The plant shrivels and burns.") if(81 to 90) mutatespecie() if(66 to 80) @@ -468,13 +468,13 @@ if(41 to 65) mutate() if(21 to 41) - user << "The plants don't seem to react..." + to_chat(user, "The plants don't seem to react...") if(11 to 20) mutateweed() if(1 to 10) mutatepest(user) else - user << "Nothing happens..." + to_chat(user, "Nothing happens...") // 2 or 1 units is enough to change the yield and other stats.// Can change the yield and other stats, but requires more than mutagen else if(S.has_reagent("mutagen", 2) || S.has_reagent("radium", 5) || S.has_reagent("uranium", 5)) @@ -672,16 +672,16 @@ if(1 to 32) mutatepest(user) else - user << "Nothing happens..." + to_chat(user, "Nothing happens...") /obj/machinery/hydroponics/attackby(obj/item/O, mob/user, params) //Called when mob user "attacks" it with object O if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/grown/ambrosia/gaia)) //Checked early on so it doesn't have to deal with composting checks if(self_sustaining) - user << "This [name] is already self-sustaining!" + to_chat(user, "This [name] is already self-sustaining!") return if(myseed || weedlevel) - user << "[src] needs to be clear of plants and weeds!" + to_chat(user, "[src] needs to be clear of plants and weeds!") return if(alert(user, "This will make [src] self-sustaining but consume [O] forever. Are you sure?", "[name]", "I'm Sure", "Abort") == "Abort" || !user) return @@ -690,10 +690,10 @@ if(!Adjacent(user)) return if(self_sustaining) - user << "This [name] is already self-sustaining!" + to_chat(user, "This [name] is already self-sustaining!") return if(myseed || weedlevel) - user << "[src] needs to be clear of plants and weeds!" + to_chat(user, "[src] needs to be clear of plants and weeds!") return user.visible_message("[user] gently pulls open the soil for [O] and places it inside.", "You tenderly root [O] into [src].") user.drop_item() @@ -708,11 +708,11 @@ if(istype(reagent_source, /obj/item/weapon/reagent_containers/syringe)) var/obj/item/weapon/reagent_containers/syringe/syr = reagent_source if(syr.mode != 1) - user << "You can't get any extract out of this plant." //That. Gives me an idea... + to_chat(user, "You can't get any extract out of this plant." ) return if(!reagent_source.reagents.total_volume) - user << "[reagent_source] is empty." + to_chat(user, "[reagent_source] is empty.") return 1 var/list/trays = list(src)//makes the list just this in cases of syringes and compost etc @@ -774,7 +774,7 @@ investigate_log("had Kudzu planted in it by [user.ckey]([user]) at ([x],[y],[z])","kudzu") if(!user.transferItemToLoc(O, src)) return - user << "You plant [O]." + to_chat(user, "You plant [O].") dead = 0 myseed = O age = 1 @@ -782,23 +782,23 @@ lastcycle = world.time update_icon() else - user << "[src] already has seeds in it!" + to_chat(user, "[src] already has seeds in it!") else if(istype(O, /obj/item/device/plant_analyzer)) if(myseed) - user << "*** [myseed.plantname] ***" //Carn: now reports the plants growing, not the seeds. - user << "- Plant Age: [age]" + to_chat(user, "*** [myseed.plantname] ***" ) + to_chat(user, "- Plant Age: [age]") var/list/text_string = myseed.get_analyzer_text() if(text_string) - user << text_string + to_chat(user, text_string) else - user << "No plant found." - user << "- Weed level: [weedlevel] / 10" - user << "- Pest level: [pestlevel] / 10" - user << "- Toxicity level: [toxic] / 100" - user << "- Water level: [waterlevel] / [maxwater]" - user << "- Nutrition level: [nutrilevel] / [maxnutri]" - user << "" + to_chat(user, "No plant found.") + to_chat(user, "- Weed level: [weedlevel] / 10") + to_chat(user, "- Pest level: [pestlevel] / 10") + to_chat(user, "- Toxicity level: [toxic] / 100") + to_chat(user, "- Water level: [waterlevel] / [maxwater]") + to_chat(user, "- Nutrition level: [nutrilevel] / [maxnutri]") + to_chat(user, "") else if(istype(O, /obj/item/weapon/cultivator)) if(weedlevel > 0) @@ -806,7 +806,7 @@ weedlevel = 0 update_icon() else - user << "This plot is completely devoid of weeds! It doesn't need uprooting." + to_chat(user, "This plot is completely devoid of weeds! It doesn't need uprooting.") else if(istype(O, /obj/item/weapon/storage/bag/plants)) attack_hand(user) @@ -818,7 +818,7 @@ else if(istype(O, /obj/item/weapon/wrench) && unwrenchable) if(using_irrigation) - user << "Disconnect the hoses first!" + to_chat(user, "Disconnect the hoses first!") return if(!anchored && !isinspace()) @@ -852,7 +852,7 @@ else if(istype(O, /obj/item/weapon/shovel/spade) && unwrenchable) if(!myseed && !weedlevel) - user << "[src] doesn't have any plants or weeds!" + to_chat(user, "[src] doesn't have any plants or weeds!") return user.visible_message("[user] starts digging out [src]'s plants...", "You start digging out [src]'s plants...") playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1) @@ -880,7 +880,7 @@ myseed.harvest(user) else if(dead) dead = 0 - user << "You remove the dead plant from [src]." + to_chat(user, "You remove the dead plant from [src].") qdel(myseed) myseed = null update_icon() @@ -891,11 +891,11 @@ harvest = 0 lastproduce = age if(istype(myseed,/obj/item/seeds/replicapod)) - user << "You harvest from the [myseed.plantname]." + to_chat(user, "You harvest from the [myseed.plantname].") else if(myseed.getYield() <= 0) - user << "You fail to harvest anything useful!" + to_chat(user, "You fail to harvest anything useful!") else - user << "You harvest [myseed.getYield()] items from the [myseed.plantname]." + to_chat(user, "You harvest [myseed.getYield()] items from the [myseed.plantname].") if(!myseed.get_gene(/datum/plant_gene/trait/repeated_harvest)) qdel(myseed) myseed = null @@ -949,7 +949,7 @@ /obj/machinery/hydroponics/soil/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/weapon/shovel) && !istype(O, /obj/item/weapon/shovel/spade)) //Doesn't include spades because of uprooting plants - user << "You clear up [src]!" + to_chat(user, "You clear up [src]!") qdel(src) else return ..() diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index 8caf48be48..866818e1b8 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -257,31 +257,46 @@ C.update_icon() batteries_recharged = 1 if(batteries_recharged) - target << "Your batteries are recharged!" + to_chat(target, "Your batteries are recharged!") /datum/plant_gene/trait/glow // Makes plant glow. Makes plant in tray glow too. - // Adds potency*rate luminosity to products. + // Adds 1 + potency*rate light range and potency*(rate + 0.01) light_power to products. name = "Bioluminescence" - rate = 0.1 + rate = 0.03 examine_line = "It emits a soft glow." trait_id = "glow" + var/glow_color = "#AAD84B" -/datum/plant_gene/trait/glow/proc/get_lum(obj/item/seeds/S) - return round(S.potency*rate) +/datum/plant_gene/trait/glow/proc/glow_range(obj/item/seeds/S) + return 1.4 + S.potency*rate + +/datum/plant_gene/trait/glow/proc/glow_power(obj/item/seeds/S) + return max(S.potency*(rate + 0.01), 0.1) /datum/plant_gene/trait/glow/on_new(obj/item/weapon/reagent_containers/food/snacks/grown/G, newloc) ..() - if(ismob(newloc)) - G.pickup(newloc)//adjusts the lighting on the mob - else - G.SetLuminosity(get_lum(G.seed)) + G.set_light(glow_range(G.seed), glow_power(G.seed), glow_color) + +/datum/plant_gene/trait/glow/shadow + //makes plant emit slightly purple shadows + //adds -potency*(rate*0.05) light power to products + name = "Shadow Emission" + rate = 0.04 + +/datum/plant_gene/trait/glow/shadow/glow_power(obj/item/seeds/S) + return -max(S.potency*(rate*0.05), 0.075) + +/datum/plant_gene/trait/glow/red + name = "Red Electrical Glow" + glow_color = LIGHT_COLOR_RED /datum/plant_gene/trait/glow/berry name = "Strong Bioluminescence" - rate = 0.2 + rate = 0.05 + glow_color = null /datum/plant_gene/trait/teleport @@ -301,7 +316,7 @@ /datum/plant_gene/trait/teleport/on_slip(obj/item/weapon/reagent_containers/food/snacks/grown/G, mob/living/carbon/C) var/teleport_radius = max(round(G.seed.potency / 10), 1) var/turf/T = get_turf(C) - C << "You slip through spacetime!" + to_chat(C, "You slip through spacetime!") do_teleport(C, T, teleport_radius) if(prob(50)) do_teleport(G, T, teleport_radius) @@ -349,7 +364,7 @@ if(istype(I, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/C = I if(C.use(5)) - user << "You add some cable to [G] and slide it inside the battery encasing." + to_chat(user, "You add some cable to [G] and slide it inside the battery encasing.") var/obj/item/weapon/stock_parts/cell/potato/pocell = new /obj/item/weapon/stock_parts/cell/potato(user.loc) pocell.icon_state = G.icon_state pocell.maxcharge = G.seed.potency * 20 @@ -367,7 +382,7 @@ qdel(G) else - user << "You need five lengths of cable to make a [G] battery!" + to_chat(user, "You need five lengths of cable to make a [G] battery!") /datum/plant_gene/trait/stinging @@ -381,7 +396,7 @@ var/fraction = min(injecting_amount/G.reagents.total_volume, 1) G.reagents.reaction(L, INJECT, fraction) G.reagents.trans_to(L, injecting_amount) - target << "You are pricked by [G]!" + to_chat(target, "You are pricked by [G]!") /datum/plant_gene/trait/smoke name = "gaseous decomposition" diff --git a/code/modules/hydroponics/seed_extractor.dm b/code/modules/hydroponics/seed_extractor.dm index 90535bde5e..fcfb1ca064 100644 --- a/code/modules/hydroponics/seed_extractor.dm +++ b/code/modules/hydroponics/seed_extractor.dm @@ -93,21 +93,21 @@ ++loaded add_seed(G) if (loaded) - user << "You put the seeds from \the [O.name] into [src]." + to_chat(user, "You put the seeds from \the [O.name] into [src].") else - user << "There are no seeds in \the [O.name]." + to_chat(user, "There are no seeds in \the [O.name].") return else if(seedify(O,-1, src, user)) - user << "You extract some seeds." + to_chat(user, "You extract some seeds.") return else if (istype(O,/obj/item/seeds)) if(add_seed(O)) - user << "You add [O] to [src.name]." + to_chat(user, "You add [O] to [src.name].") updateUsrDialog() return else if(user.a_intent != INTENT_HARM) - user << "You can't extract any seeds from \the [O.name]!" + to_chat(user, "You can't extract any seeds from \the [O.name]!") else return ..() @@ -188,7 +188,7 @@ /obj/machinery/seed_extractor/proc/add_seed(obj/item/seeds/O) if(contents.len >= 999) - usr << "\The [src] is full." + to_chat(usr, "\The [src] is full.") return 0 if(istype(O.loc,/mob)) diff --git a/code/modules/hydroponics/seeds.dm b/code/modules/hydroponics/seeds.dm index fe0999ea76..c9eb656670 100644 --- a/code/modules/hydroponics/seeds.dm +++ b/code/modules/hydroponics/seeds.dm @@ -306,10 +306,10 @@ /obj/item/seeds/attackby(obj/item/O, mob/user, params) if (istype(O, /obj/item/device/plant_analyzer)) - user << "*---------*\n This is \a [src]." + to_chat(user, "*---------*\n This is \a [src].") var/text = get_analyzer_text() if(text) - user << "[text]" + to_chat(user, "[text]") return ..() // Fallthrough to item/attackby() so that bags can pick seeds up @@ -336,14 +336,14 @@ for(var/i in 1 to seed.growthstages) if("[seed.icon_grow][i]" in states) continue - world << "[seed.name] ([seed.type]) lacks the [seed.icon_grow][i] icon!" + to_chat(world, "[seed.name] ([seed.type]) lacks the [seed.icon_grow][i] icon!") if(!(seed.icon_dead in states)) - world << "[seed.name] ([seed.type]) lacks the [seed.icon_dead] icon!" + to_chat(world, "[seed.name] ([seed.type]) lacks the [seed.icon_dead] icon!") if(seed.icon_harvest) // mushrooms have no grown sprites, same for items with no product if(!(seed.icon_harvest in states)) - world << "[seed.name] ([seed.type]) lacks the [seed.icon_harvest] icon!" + to_chat(world, "[seed.name] ([seed.type]) lacks the [seed.icon_harvest] icon!") /obj/item/seeds/proc/randomize_stats() set_lifespan(rand(25, 60)) diff --git a/code/modules/jobs/job_types/cargo_service.dm b/code/modules/jobs/job_types/cargo_service.dm index 52f6e6d742..9fe97f8253 100644 --- a/code/modules/jobs/job_types/cargo_service.dm +++ b/code/modules/jobs/job_types/cargo_service.dm @@ -173,7 +173,7 @@ Cook department_head = list("Head of Personnel") department_flag = CIVILIAN faction = "Station" - total_positions = 1 + total_positions = 2 spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#bbe291" diff --git a/code/modules/jobs/job_types/civilian.dm b/code/modules/jobs/job_types/civilian.dm index 45184e543f..a9a108f89f 100644 --- a/code/modules/jobs/job_types/civilian.dm +++ b/code/modules/jobs/job_types/civilian.dm @@ -17,6 +17,9 @@ Clown access = list(access_theatre) minimal_access = list(access_theatre) +/datum/job/clown/after_spawn(mob/living/carbon/human/H, mob/M) + H.rename_self("clown", M.client) + /datum/outfit/job/clown name = "Clown" jobtype = /datum/job/clown @@ -57,7 +60,6 @@ Clown return H.dna.add_mutation(CLOWNMUT) - H.rename_self("clown") /* Mime @@ -78,6 +80,9 @@ Mime access = list(access_theatre) minimal_access = list(access_theatre) +/datum/job/mime/after_spawn(mob/living/carbon/human/H, mob/M) + H.rename_self("mime", M.client) + /datum/outfit/job/mime name = "Mime" jobtype = /datum/job/mime @@ -106,8 +111,6 @@ Mime H.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/mime/speak(null)) H.mind.miming = 1 - H.rename_self("mime") - /* Librarian */ diff --git a/code/modules/jobs/job_types/civilian_chaplain.dm b/code/modules/jobs/job_types/civilian_chaplain.dm index 3b7a8c3947..227b6c378b 100644 --- a/code/modules/jobs/job_types/civilian_chaplain.dm +++ b/code/modules/jobs/job_types/civilian_chaplain.dm @@ -45,7 +45,7 @@ Chaplain B.name = SSreligion.Bible_name B.icon_state = SSreligion.Bible_icon_state B.item_state = SSreligion.Bible_item_state - H << "There is already an established religion onboard the station. You are an acolyte of [SSreligion.Bible_deity_name]. Defer to the Chaplain." + to_chat(H, "There is already an established religion onboard the station. You are an acolyte of [SSreligion.Bible_deity_name]. Defer to the Chaplain.") H.equip_to_slot_or_del(B, slot_in_backpack) var/obj/item/weapon/nullrod/N = new(H) H.equip_to_slot_or_del(N, slot_in_backpack) diff --git a/code/modules/jobs/job_types/job.dm b/code/modules/jobs/job_types/job.dm index 490b5fe8a0..0e7501614c 100644 --- a/code/modules/jobs/job_types/job.dm +++ b/code/modules/jobs/job_types/job.dm @@ -44,7 +44,9 @@ var/outfit = null //Only override this proc -/datum/job/proc/after_spawn(mob/living/carbon/human/H) +//H is usually a human unless an /equip override transformed it +/datum/job/proc/after_spawn(mob/living/H, mob/M) + //do actions on H but send messages to M as the key may not have been transferred_yet /datum/job/proc/announce(mob/living/carbon/human/H) @@ -52,7 +54,7 @@ announce_head(H, head_announce) -//But don't override this +//Don't override this unless the job transforms into a non-human (Silicons do this for example) /datum/job/proc/equip(mob/living/carbon/human/H, visualsOnly = FALSE, announce = TRUE) if(!H) return 0 @@ -68,6 +70,11 @@ if(!visualsOnly && announce) announce(H) + if(config.enforce_human_authority && (title in command_positions)) + H.dna.features["tail_human"] = "None" + H.dna.features["ears"] = "None" + H.regenerate_icons() + /datum/job/proc/get_access() if(!config) //Needed for robots. return src.minimal_access.Copy() @@ -110,6 +117,8 @@ /datum/job/proc/config_check() return 1 +/datum/job/proc/map_check() + return TRUE /datum/outfit/job diff --git a/code/modules/jobs/job_types/security.dm b/code/modules/jobs/job_types/security.dm index 87353c3991..42dfb0bbf0 100644 --- a/code/modules/jobs/job_types/security.dm +++ b/code/modules/jobs/job_types/security.dm @@ -183,11 +183,11 @@ Security Officer var/list/available_depts = list(SEC_DEPT_ENGINEERING, SEC_DEPT_MEDICAL, SEC_DEPT_SCIENCE, SEC_DEPT_SUPPLY) -/datum/job/officer/after_spawn(mob/living/carbon/human/H) +/datum/job/officer/after_spawn(mob/living/carbon/human/H, mob/M) // Assign department security var/department - if(H && H.client && H.client.prefs) - department = H.client.prefs.prefered_security_department + if(M && M.client && M.client.prefs) + department = M.client.prefs.prefered_security_department if(!LAZYLEN(available_depts) || department == "None") return else if(department in available_depts) @@ -255,9 +255,9 @@ var/list/available_depts = list(SEC_DEPT_ENGINEERING, SEC_DEPT_MEDICAL, SEC_DEPT else break if(department) - H << "You have been assigned to [department]!" + to_chat(M, "You have been assigned to [department]!") else - H << "You have not been assigned to any department. Patrol the halls and help where needed." + to_chat(M, "You have not been assigned to any department. Patrol the halls and help where needed.") diff --git a/code/modules/jobs/job_types/silicon.dm b/code/modules/jobs/job_types/silicon.dm index 283a0ba59e..c3338582b8 100644 --- a/code/modules/jobs/job_types/silicon.dm +++ b/code/modules/jobs/job_types/silicon.dm @@ -14,8 +14,17 @@ AI minimal_player_age = 30 /datum/job/ai/equip(mob/living/carbon/human/H) - if(!H) - return 0 + return H.AIize(FALSE) + +/datum/job/ai/after_spawn(mob/living/silicon/ai/AI, mob/M) + AI.rename_self("ai", M.client) + + //we may have been created after our borg + if(ticker.current_state == GAME_STATE_SETTING_UP) + for(var/mob/living/silicon/robot/R in silicon_mobs) + if(!R.connected_ai) + R.TryConnectToAI() + /datum/job/ai/config_check() if(config && config.allow_ai) @@ -37,6 +46,8 @@ Cyborg minimal_player_age = 21 /datum/job/cyborg/equip(mob/living/carbon/human/H) - if(!H) - return 0 - return H.Robotize() + return H.Robotize(FALSE, FALSE) + +/datum/job/cyborg/after_spawn(mob/living/silicon/robot/R, mob/M) + if(config.rename_cyborg) //name can't be set in robot/New without the client + R.rename_self("cyborg", M.client) \ No newline at end of file diff --git a/code/modules/jobs/map_changes/map_changes.dm b/code/modules/jobs/map_changes/map_changes.dm new file mode 100644 index 0000000000..b88bc093d0 --- /dev/null +++ b/code/modules/jobs/map_changes/map_changes.dm @@ -0,0 +1,6 @@ +//this needs to come after the job_types subfolder to keep the correct ordering + +#include "..\..\..\..\_maps\map_files\OmegaStation\job_changes.dm" +#undef JOB_MODIFICATION_MAP_NAME +#include "..\..\..\..\_maps\map_files\PubbyStation\job_changes.dm" +#undef JOB_MODIFICATION_MAP_NAME \ No newline at end of file diff --git a/code/modules/library/lib_codex_gigas.dm b/code/modules/library/lib_codex_gigas.dm index 7bce96f649..319191c472 100644 --- a/code/modules/library/lib_codex_gigas.dm +++ b/code/modules/library/lib_codex_gigas.dm @@ -15,17 +15,17 @@ /obj/item/weapon/book/codex_gigas/attack_self(mob/user) if(is_blind(user)) - user << "As you are trying to read, you suddenly feel very stupid." + to_chat(user, "As you are trying to read, you suddenly feel very stupid.") return if(ismonkey(user)) - user << "You skim through the book but can't comprehend any of it." + to_chat(user, "You skim through the book but can't comprehend any of it.") return if(inUse) - user << "Someone else is reading it." + to_chat(user, "Someone else is reading it.") if(ishuman(user)) var/mob/living/carbon/human/U = user if(U.check_acedia()) - user << "None of this matters, why are you reading this? You put the [title] down." + to_chat(user, "None of this matters, why are you reading this? You put the [title] down.") return inUse = 1 var/devilName = copytext(sanitize(input(user, "What infernal being do you wish to research?", "Codex Gigas", null) as text),1,MAX_MESSAGE_LEN) diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index 8dee540c14..6d33d1cff2 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -44,13 +44,13 @@ if(istype(I, /obj/item/weapon/wrench)) playsound(loc, I.usesound, 100, 1) if(do_after(user, 20*I.toolspeed, target = src)) - user << "You wrench the frame into place." + to_chat(user, "You wrench the frame into place.") anchored = 1 state = 1 if(istype(I, /obj/item/weapon/crowbar)) playsound(loc, I.usesound, 100, 1) if(do_after(user, 20*I.toolspeed, target = src)) - user << "You pry the frame apart." + to_chat(user, "You pry the frame apart.") deconstruct(TRUE) if(1) @@ -58,12 +58,12 @@ var/obj/item/stack/sheet/mineral/wood/W = I if(W.get_amount() >= 2) W.use(2) - user << "You add a shelf." + to_chat(user, "You add a shelf.") state = 2 icon_state = "book-0" if(istype(I, /obj/item/weapon/wrench)) playsound(loc, I.usesound, 100, 1) - user << "You unwrench the frame." + to_chat(user, "You unwrench the frame.") anchored = 0 state = 0 @@ -78,7 +78,7 @@ for(var/obj/item/T in B.contents) if(istype(T, /obj/item/weapon/book) || istype(T, /obj/item/weapon/spellbook)) B.remove_from_storage(T, src) - user << "You empty \the [I] into \the [src]." + to_chat(user, "You empty \the [I] into \the [src].") update_icon() else if(istype(I, /obj/item/weapon/pen)) var/newname = stripped_input(user, "What would you like to title this bookshelf?") @@ -88,10 +88,10 @@ name = ("bookcase ([sanitize(newname)])") else if(istype(I, /obj/item/weapon/crowbar)) if(contents.len) - user << "You need to remove the books first!" + to_chat(user, "You need to remove the books first!") else playsound(loc, I.usesound, 100, 1) - user << "You pry the shelf out." + to_chat(user, "You pry the shelf out.") new /obj/item/stack/sheet/mineral/wood(loc, 2) state = 1 icon_state = "bookempty" @@ -180,36 +180,36 @@ /obj/item/weapon/book/attack_self(mob/user) if(is_blind(user)) - user << "As you are trying to read, you suddenly feel very stupid!" + to_chat(user, "As you are trying to read, you suddenly feel very stupid!") return if(ismonkey(user)) - user << "You skim through the book but can't comprehend any of it." + to_chat(user, "You skim through the book but can't comprehend any of it.") return if(dat) user << browse("Penned by [author].
    " + "[dat]", "window=book[window_size != null ? ";size=[window_size]" : ""]") user.visible_message("[user] opens a book titled \"[title]\" and begins reading intently.") onclose(user, "book") else - user << "This book is completely blank!" + to_chat(user, "This book is completely blank!") /obj/item/weapon/book/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/pen)) if(is_blind(user)) - user << " As you are trying to write on the book, you suddenly feel very stupid!" + to_chat(user, " As you are trying to write on the book, you suddenly feel very stupid!") return if(unique) - user << "These pages don't seem to take the ink well! Looks like you can't modify it." + to_chat(user, "These pages don't seem to take the ink well! Looks like you can't modify it.") return var/choice = input("What would you like to change?") in list("Title", "Contents", "Author", "Cancel") switch(choice) if("Title") var/newtitle = reject_bad_text(stripped_input(usr, "Write a new title:")) if (length(newtitle) > 20) - usr << "That title won't fit on the cover!" + to_chat(usr, "That title won't fit on the cover!") return if(!newtitle) - usr << "That title is invalid." + to_chat(usr, "That title is invalid.") return else name = newtitle @@ -217,14 +217,14 @@ if("Contents") var/content = stripped_input(usr, "Write your book's contents (HTML NOT allowed):","","",8192) if(!content) - usr << "The content is invalid." + to_chat(usr, "The content is invalid.") return else dat += content if("Author") var/newauthor = stripped_input(usr, "Write the author's name:") if(!newauthor) - usr << "The name is invalid." + to_chat(usr, "The name is invalid.") return else author = newauthor @@ -234,37 +234,37 @@ else if(istype(I, /obj/item/weapon/barcodescanner)) var/obj/item/weapon/barcodescanner/scanner = I if(!scanner.computer) - user << "[I]'s screen flashes: 'No associated computer found!'" + to_chat(user, "[I]'s screen flashes: 'No associated computer found!'") else switch(scanner.mode) if(0) scanner.book = src - user << "[I]'s screen flashes: 'Book stored in buffer.'" + to_chat(user, "[I]'s screen flashes: 'Book stored in buffer.'") if(1) scanner.book = src scanner.computer.buffer_book = name - user << "[I]'s screen flashes: 'Book stored in buffer. Book title stored in associated computer buffer.'" + to_chat(user, "[I]'s screen flashes: 'Book stored in buffer. Book title stored in associated computer buffer.'") if(2) scanner.book = src for(var/datum/borrowbook/b in scanner.computer.checkouts) if(b.bookname == name) scanner.computer.checkouts.Remove(b) - user << "[I]'s screen flashes: 'Book stored in buffer. Book has been checked in.'" + to_chat(user, "[I]'s screen flashes: 'Book stored in buffer. Book has been checked in.'") return - user << "[I]'s screen flashes: 'Book stored in buffer. No active check-out record found for current title.'" + to_chat(user, "[I]'s screen flashes: 'Book stored in buffer. No active check-out record found for current title.'") if(3) scanner.book = src for(var/obj/item/weapon/book in scanner.computer.inventory) if(book == src) - user << "[I]'s screen flashes: 'Book stored in buffer. Title already present in inventory, aborting to avoid duplicate entry.'" + to_chat(user, "[I]'s screen flashes: 'Book stored in buffer. Title already present in inventory, aborting to avoid duplicate entry.'") return scanner.computer.inventory.Add(src) - user << "[I]'s screen flashes: 'Book stored in buffer. Title added to general inventory.'" + to_chat(user, "[I]'s screen flashes: 'Book stored in buffer. Title added to general inventory.'") else if(istype(I, /obj/item/weapon/kitchen/knife) || istype(I, /obj/item/weapon/wirecutters)) - user << "You begin to carve out [title]..." + to_chat(user, "You begin to carve out [title]...") if(do_after(user, 30, target = src)) - user << "You carve out the pages from [title]! You didn't want to read it anyway." + to_chat(user, "You carve out the pages from [title]! You didn't want to read it anyway.") var/obj/item/weapon/storage/book/B = new B.name = src.name B.title = src.title @@ -300,7 +300,7 @@ mode += 1 if(mode > 3) mode = 0 - user << "[src] Status Display:" + to_chat(user, "[src] Status Display:") var/modedesc switch(mode) if(0) @@ -313,9 +313,9 @@ modedesc = "Scan book to local buffer, attempt to add book to general inventory." else modedesc = "ERROR" - user << " - Mode [mode] : [modedesc]" + to_chat(user, " - Mode [mode] : [modedesc]") if(computer) - user << "Computer has been associated with this unit." + to_chat(user, "Computer has been associated with this unit.") else - user << "No associated computer found. Only local scans will function properly." - user << "\n" + to_chat(user, "No associated computer found. Only local scans will function properly.") + to_chat(user, "\n") diff --git a/code/modules/library/lib_machines.dm b/code/modules/library/lib_machines.dm index 6fe611a971..0c26320888 100644 --- a/code/modules/library/lib_machines.dm +++ b/code/modules/library/lib_machines.dm @@ -51,14 +51,14 @@ dat += "
    ADMINOPTIONS
    " dat += "" - var/DBQuery/query = dbcon.NewQuery(SQLquery) - query.Execute() - - while(query.NextRow()) - var/author = query.item[1] - var/title = query.item[2] - var/category = query.item[3] - var/id = query.item[4] + var/DBQuery/query_library_list_books = dbcon.NewQuery(SQLquery) + if(!query_library_list_books.Execute()) + dat += "ERROR: Unable to retrieve book listings. Please contact your system administrator for assistance.
    " + while(query_library_list_books.NextRow()) + var/author = query_library_list_books.item[1] + var/title = query_library_list_books.item[2] + var/category = query_library_list_books.item[3] + var/id = query_library_list_books.item[4] dat += "
    " dat += "
    AUTHORTITLECATEGORYSS13BN
    [author][title][category][id]

    " dat += "\[Go Back\]
    " @@ -137,15 +137,15 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums if(!dbcon.Connect()) return cachedbooks = list() - var/DBQuery/query = dbcon.NewQuery("SELECT id, author, title, category FROM [format_table_name("library")] WHERE isnull(deleted)") - query.Execute() - - while(query.NextRow()) + var/DBQuery/query_library_cache = dbcon.NewQuery("SELECT id, author, title, category FROM [format_table_name("library")] WHERE isnull(deleted)") + if(!query_library_cache.Execute()) + return + while(query_library_cache.NextRow()) var/datum/cachedbook/newbook = new() - newbook.id = query.item[1] - newbook.author = query.item[2] - newbook.title = query.item[3] - newbook.category = query.item[4] + newbook.id = query_library_cache.item[1] + newbook.author = query_library_cache.item[2] + newbook.title = query_library_cache.item[3] + newbook.category = query_library_cache.item[4] cachedbooks += newbook @@ -270,9 +270,7 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums if(5) dat += "

    Upload a New Title

    " if(!scanner) - for(var/obj/machinery/libraryscanner/S in range(9)) - scanner = S - break + findscanner(9) if(!scanner) dat += "No scanner found within wireless network range.
    " else if(!scanner.cache) @@ -288,6 +286,8 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums dat += "(Return to main menu)
    " if(6) dat += "

    Post Title to Newscaster

    " + if(!scanner) + scanner = findscanner(9) if(!scanner) dat += "No scanner found within wireless network range.
    " else if(!scanner.cache) @@ -313,6 +313,11 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) popup.open() +/obj/machinery/computer/libraryconsole/bookmanagement/proc/findscanner(viewrange) + for(var/obj/machinery/libraryscanner/S in range(viewrange)) + return S + return null + /obj/machinery/computer/libraryconsole/bookmanagement/proc/print_forbidden_lore(mob/user) var/spook = pick("blood", "brass") var/turf/T = get_turf(src) @@ -321,14 +326,14 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums else new /obj/item/clockwork/slab(T) - user << "Your sanity barely endures the seconds spent in the vault's browsing window. The only thing to remind you of this when you stop browsing is a [spook == "blood" ? "dusty old tome" : "strange metal tablet"] sitting on the desk. You don't really remember printing it.[spook == "brass" ? " And how did it print something made of metal?" : ""]" + to_chat(user, "Your sanity barely endures the seconds spent in the vault's browsing window. The only thing to remind you of this when you stop browsing is a [spook == "blood" ? "dusty old tome" : "strange metal tablet"] sitting on the desk. You don't really remember printing it.[spook == "brass" ? " And how did it print something made of metal?" : ""]") user.visible_message("[user] stares at the blank screen for a few moments, [user.p_their()] expression frozen in fear. When [user.p_they()] finally awaken[user.p_s()] from it, [user.p_they()] look[user.p_s()] a lot older.", 2) /obj/machinery/computer/libraryconsole/bookmanagement/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/barcodescanner)) var/obj/item/weapon/barcodescanner/scanner = W scanner.computer = src - user << "[scanner]'s associated machine has been set to [src]." + to_chat(user, "[scanner]'s associated machine has been set to [src].") audible_message("[src] lets out a low, short blip.") else return ..() @@ -414,9 +419,10 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums var/sqlauthor = sanitizeSQL(scanner.cache.author) var/sqlcontent = sanitizeSQL(scanner.cache.dat) var/sqlcategory = sanitizeSQL(upload_category) - var/DBQuery/query = dbcon.NewQuery("INSERT INTO [format_table_name("library")] (author, title, content, category, ckey, datetime) VALUES ('[sqlauthor]', '[sqltitle]', '[sqlcontent]', '[sqlcategory]', '[usr.ckey]', Now())") - if(!query.Execute()) - usr << query.ErrorMsg() + var/DBQuery/query_library_upload = dbcon.NewQuery("INSERT INTO [format_table_name("library")] (author, title, content, category, ckey, datetime) VALUES ('[sqlauthor]', '[sqltitle]', '[sqlcontent]', '[sqlcategory]', '[usr.ckey]', Now())") + if(!query_library_upload.Execute()) + alert("Database error encountered uploading to Archive") + return else log_game("[usr.name]/[usr.key] has uploaded the book titled [scanner.cache.name], [length(scanner.cache.dat)] signs") alert("Upload Complete. Uploaded title will be unavailable for printing for a short period") @@ -449,13 +455,14 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums say("Printer unavailable. Please allow a short time before attempting to print.") else cooldown = world.time + PRINTER_COOLDOWN - var/DBQuery/query = dbcon.NewQuery("SELECT * FROM [format_table_name("library")] WHERE id=[sqlid] AND isnull(deleted)") - query.Execute() - - while(query.NextRow()) - var/author = query.item[2] - var/title = query.item[3] - var/content = query.item[4] + var/DBQuery/query_library_print = dbcon.NewQuery("SELECT * FROM [format_table_name("library")] WHERE id=[sqlid] AND isnull(deleted)") + if(!query_library_print.Execute()) + say("PRINTER ERROR! Failed to print document (0x0000000F)") + return + while(query_library_print.NextRow()) + var/author = query_library_print.item[2] + var/title = query_library_print.item[3] + var/content = query_library_print.item[4] var/obj/item/weapon/book/B = new(get_turf(src)) B.name = "Book: [title]" B.title = title @@ -477,7 +484,7 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums say("Printer currently unavailable, please wait a moment.") if(href_list["printposter"]) if(cooldown < world.time) - new /obj/item/weapon/poster/legit(src.loc) + new /obj/item/weapon/poster/random_official(src.loc) cooldown = world.time + PRINTER_COOLDOWN else say("Printer currently unavailable, please wait a moment.") @@ -563,7 +570,7 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums if(stat) return if(busy) - user << "The book binder is busy. Please wait for completion of previous operation." + to_chat(user, "The book binder is busy. Please wait for completion of previous operation.") return if(!user.drop_item()) return diff --git a/code/modules/library/random_books.dm b/code/modules/library/random_books.dm index 9a1576a96f..11bb41c7e1 100644 --- a/code/modules/library/random_books.dm +++ b/code/modules/library/random_books.dm @@ -43,19 +43,18 @@ if(prob(25)) category = null var/c = category? " AND category='[sanitizeSQL(category)]'" :"" - var/DBQuery/query = dbcon.NewQuery("SELECT * FROM [format_table_name("library")] WHERE isnull(deleted)[c] GROUP BY title ORDER BY rand() LIMIT [amount];") // isdeleted copyright (c) not me - if(query.Execute()) - while(query.NextRow()) + var/DBQuery/query_get_random_books = dbcon.NewQuery("SELECT * FROM [format_table_name("library")] WHERE isnull(deleted)[c] GROUP BY title ORDER BY rand() LIMIT [amount];") // isdeleted copyright (c) not me + if(query_get_random_books.Execute()) + while(query_get_random_books.NextRow()) var/obj/item/weapon/book/B = new(location) . += B - B.author = query.item[2] - B.title = query.item[3] - B.dat = query.item[4] + B.author = query_get_random_books.item[2] + B.title = query_get_random_books.item[3] + B.dat = query_get_random_books.item[4] B.name = "Book: [B.title]" B.icon_state= "book[rand(1,8)]" else - log_game("SQL ERROR populating library bookshelf. Category: \[[category]\], Count: [amount], Error: \[[query.ErrorMsg()]\]\n") - + return /obj/structure/bookcase/random/fiction name = "bookcase (Fiction)" diff --git a/code/modules/library/soapstone.dm b/code/modules/library/soapstone.dm index 90859b9444..ba81f65344 100644 --- a/code/modules/library/soapstone.dm +++ b/code/modules/library/soapstone.dm @@ -43,76 +43,59 @@ /obj/item/soapstone/examine(mob/user) . = ..() if(remaining_uses != -1) - user << "It has [remaining_uses] uses left." - else - user << "It looks like it can be used an unlimited number of times." + to_chat(user, "It has [remaining_uses] uses left.") /obj/item/soapstone/afterattack(atom/target, mob/user, proximity) var/turf/T = get_turf(target) if(!proximity) return + var/obj/structure/chisel_message/existing_message = locate() in T - var/obj/structure/chisel_message/already_message = locate(/obj/structure/chisel_message) in T - - var/our_message = FALSE - if(already_message) - our_message = already_message.creator_key == user.ckey - - if(!remaining_uses && !already_message) - // The dull chisel is dull. - user << "[src] is [w_dull]." + if(!remaining_uses && !existing_message) + to_chat(user, "[src] is too worn out to use.") return if(!good_chisel_message_location(T)) - user << "It's not appropriate to [w_engrave] on [T]." + to_chat(user, "It's not appropriate to [w_engrave] on [T].") return - if(already_message) - user.visible_message("[user] starts erasing [already_message].", "You start erasing [already_message].", "You hear a [w_chipping] sound.") + if(existing_message) + user.visible_message("[user] starts erasing [existing_message].", "You start erasing [existing_message].", "You hear a [w_chipping] sound.") playsound(loc, 'sound/items/gavel.ogg', 50, 1, -1) - - // Removing our own messages refunds a charge - - if(do_after(user, tool_speed, target=target)) - user.visible_message("[user] has erased [already_message].", "You erased [already_message].") - already_message.persists = FALSE - qdel(already_message) + if(do_after(user, tool_speed, target = existing_message)) + user.visible_message("[user] erases [existing_message].", "You erase [existing_message][existing_message.creator_key == user.ckey ? ", refunding a use" : ""].") + existing_message.persists = FALSE + qdel(existing_message) playsound(loc, 'sound/items/gavel.ogg', 50, 1, -1) - if(our_message) + if(existing_message.creator_key == user.ckey) refund_use() return - var/message = stripped_input(user, "What would you like to [w_engrave]?", "[name] Message") + var/message = stripped_input(user, "What would you like to [w_engrave]?", "Leave a message") if(!message) - user << "You decide not to [w_engrave] anything." + to_chat(user, "You decide not to [w_engrave] anything.") return if(!target.Adjacent(user) && locate(/obj/structure/chisel_message) in T) - user << "You decide not to [w_engrave] anything." + to_chat(user, "Someone wrote here before you chose! Find another spot.") return - playsound(loc, 'sound/items/gavel.ogg', 50, 1, -1) - user.visible_message("[user] starts [w_engraving] a message into [T].", "You start [w_engraving] a message into [T].", "You hear a [w_chipping] sound.") - if(can_use() && do_after(user, tool_speed, target=T) && can_use()) + user.visible_message("[user] starts [w_engraving] a message into [T]...", "You start [w_engraving] a message into [T]...", "You hear a [w_chipping] sound.") + if(can_use() && do_after(user, tool_speed, target = T) && can_use()) //This looks messy but it's actually really clever! if(!locate(/obj/structure/chisel_message in T)) - user << "You [w_engrave] a message into [T]." + user.visible_message("[user] leaves a message for future spacemen!", "You [w_engrave] a message into [T]!", "You hear a [w_chipping] sound.") playsound(loc, 'sound/items/gavel.ogg', 50, 1, -1) var/obj/structure/chisel_message/M = new(T) M.register(user, message) remove_use() /obj/item/soapstone/proc/can_use() - if(remaining_uses == -1 || remaining_uses >= 0) - . = TRUE - else - . = FALSE + return remaining_uses == -1 || remaining_uses >= 0 /obj/item/soapstone/proc/remove_use() if(remaining_uses <= 0) - // -1 == unlimited, 0 == empty return - remaining_uses-- check_name() @@ -158,6 +141,7 @@ desc = "A message from a past traveler." icon = 'icons/obj/stationobjs.dmi' icon_state = "soapstone_message" + layer = HIGH_OBJ_LAYER density = 0 anchored = 1 luminosity = 1 @@ -189,7 +173,7 @@ creator_name = user.real_name creator_key = user.ckey realdate = world.timeofday - map = MAP_NAME + map = SSmapping.config.map_name update_icon() /obj/structure/chisel_message/update_icon() @@ -204,7 +188,7 @@ data["creator_name"] = creator_name data["creator_key"] = creator_key data["realdate"] = realdate - data["map"] = MAP_NAME + data["map"] = SSmapping.config.map_name var/turf/T = get_turf(src) data["x"] = T.x data["y"] = T.y @@ -231,7 +215,7 @@ /obj/structure/chisel_message/examine(mob/user) ..() - user << "[hidden_message]" + to_chat(user, "[hidden_message]") /obj/structure/chisel_message/Destroy() if(persists) diff --git a/code/modules/lighting/__lighting_docs.dm b/code/modules/lighting/__lighting_docs.dm deleted file mode 100644 index 255ecc0359..0000000000 --- a/code/modules/lighting/__lighting_docs.dm +++ /dev/null @@ -1,74 +0,0 @@ -/* -BS12 object based lighting system from VG, ported to TG by Unusual Crow with plenty of help from PJB. -*/ - -/* -Changes from TG DAL: - - Lighting is done using objects instead of subareas. - - Animated transitions. (newer TG DAL has this) - - Full colours with mixing. - - Support for lights on shuttles. - - - Code: - - Instead of one flat luminosity var, light is represented by 3 atom vars: - - light_range; range in tiles of the light, used for calculating falloff, - - light_power; multiplier for the brightness of lights, - - light_color; hex string representing the RGB colour of the light. - - SetLuminosity() is now set_light() and takes the three variables above. - - Variables can be left as null to not update them. - - SetOpacity() is now set_opacity(). - - Areas have luminosity set to 1 permanently, no hard-lighting. - - Objects inside other objects can have lights and they properly affect the turf. (flashlights) - - area/master and area/list/related have been eviscerated since subareas aren't needed. -*/ - -/* -Relevant vars/procs: - -global: (uh, I placed the only one in lighting_system.dm) - - var/list/all_lighting_overlays; Just a list of ALL of the lighting overlays. - -atom: (lighting_atom.dm) - - var/light_range; range in tiles of the light, used for calculating falloff - - var/light_power; multiplier for the brightness of lights - - var/light_color; hex string representing the RGB colour of the light - - - var/datum/light_source/light; light source datum for this atom, only present if light_range && light_power - - var/list/light_sources; light sources in contents that are shining through this object, including this object - - - proc/set_light(l_range, l_power, l_color): - - Sets light_range/power/color to non-null args and calls update_light() - - proc/set_opacity(new_opacity): - - Sets opacity to new_opacity. - - If opacity has changed, call turf.reconsider_lights() to fix light occlusion - - proc/update_light(): - - Updates the light var on this atom, deleting or creating as needed and calling .update() - - -turf: (lighting_turf.dm) - - var/list/affecting_lights; list of light sources that are shining onto this turf - - var/list/lighting_overlays; list of lighting overlays in the turf. (only used if higher resolutions - - var/lighting_overlay; ref to the lighting overlay (only used if resolution is 1) - - - proc/reconsider_lights(): - - Force all light sources shining onto this turf to update - - - proc/lighting_clear_overlays(): - - Delete (manual GC) all light overlays on this turf, used when changing turf to space - - proc/lighting_build_overlays(): - - Create lighting overlays for this turf - - proc/get_lumcount(var/minlum = 0, var/maxlum = 1) - - Returns a decimal according to the amount of lums on a turf's overlay (also averages them) - - With default arguments (based on the fact that 0 = pitch black and 1 = full bright), it will return .5 for a 50% lit tile. - -atom/movable/lighting_overlay: (lighting_overlay.dm) - - var/lum_r, var/lum_g, var/lum_b; lumcounts of each colour - - var/needs_update; set on update_lumcount, checked by lighting process - - - var/xoffset, var/yoffset; (only present when using sub-tile overlays) fractional offset of this overlay in the tile - - - proc/update_lumcount(delta_r, delta_g, delta_b): - - Change the lumcount vars and queue the overlay for update - - proc/update_overlay() - - Called by the lighting process to update the color of the overlay -*/ diff --git a/code/modules/lighting/lighting_area.dm b/code/modules/lighting/lighting_area.dm index 5c56b4d35c..cbca355924 100644 --- a/code/modules/lighting/lighting_area.dm +++ b/code/modules/lighting/lighting_area.dm @@ -2,15 +2,6 @@ luminosity = TRUE var/dynamic_lighting = DYNAMIC_LIGHTING_ENABLED -/area/New() - . = ..() - - // Moved to the subsystem. - /* - if (dynamic_lighting) - luminosity = FALSE - */ - /area/proc/set_dynamic_lighting(var/new_dynamic_lighting = DYNAMIC_LIGHTING_ENABLED) if (new_dynamic_lighting == dynamic_lighting) return FALSE @@ -18,13 +9,15 @@ dynamic_lighting = new_dynamic_lighting if (IS_DYNAMIC_LIGHTING(src)) + cut_overlay(/obj/effect/fullbright) for (var/turf/T in area_contents(src)) if (IS_DYNAMIC_LIGHTING(T)) T.lighting_build_overlay() else + add_overlay(/obj/effect/fullbright) for (var/turf/T in area_contents(src)) - if (T.lighting_overlay) + if (T.lighting_object) T.lighting_clear_overlay() return TRUE diff --git a/code/modules/lighting/lighting_atom.dm b/code/modules/lighting/lighting_atom.dm index 9c07ef63d8..8d85db8f5e 100644 --- a/code/modules/lighting/lighting_atom.dm +++ b/code/modules/lighting/lighting_atom.dm @@ -14,7 +14,6 @@ /atom/proc/set_light(var/l_range, var/l_power, var/l_color = NONSENSICAL_VALUE) if(l_range > 0 && l_range < MINIMUM_USEFUL_LIGHT_RANGE) l_range = MINIMUM_USEFUL_LIGHT_RANGE //Brings the range up to 1.4, which is just barely brighter than the soft lighting that surrounds players. - if (l_power != null) light_power = l_power @@ -32,7 +31,7 @@ // Creates or destroys it if needed, makes it update values, makes sure it's got the correct source turf... /atom/proc/update_light() set waitfor = FALSE - if (qdeleted(src)) + if (QDELETED(src)) return if (!light_power || !light_range) // We won't emit light anyways, destroy the light source. @@ -50,17 +49,6 @@ else light = new/datum/light_source(src, .) -// Incase any lighting vars are on in the typepath we turn the light on in New(). -/atom/New() - . = ..() - - if (light_power && light_range) - update_light() - - 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. - // Destroy our light source so we GC correctly. /atom/Destroy() if (light) @@ -71,10 +59,12 @@ // If we have opacity, make sure to tell (potentially) affected light sources. /atom/movable/Destroy() var/turf/T = loc - if (opacity && istype(T)) - T.reconsider_lights() - . = ..() + if (opacity && istype(T)) + var/old_has_opaque_atom = T.has_opaque_atom + T.recalc_atom_opacity() + if (old_has_opaque_atom != T.has_opaque_atom) + T.reconsider_lights() // Should always be used to change the opacity of an atom. // It notifies (potentially) affected light sources so they can update (if needed). @@ -97,7 +87,26 @@ T.reconsider_lights() -/atom/movable/Moved(atom/OldLoc, Dir) //Implemented here because forceMove() doesn't call Move() +/atom/movable/Moved(atom/OldLoc, Dir) . = ..() - for (var/datum/light_source/L in src.light_sources) // Cycle through the light sources on this atom and tell them to update. + var/datum/light_source/L + var/thing + for (thing in light_sources) // Cycle through the light sources on this atom and tell them to update. + L = thing L.source_atom.update_light() + +/atom/vv_edit_var(var_name, var_value) + switch (var_name) + if ("light_range") + set_light(l_range=var_value) + return + + if ("light_power") + set_light(l_power=var_value) + return + + if ("light_color") + set_light(l_color=var_value) + return + + return ..() diff --git a/code/modules/lighting/lighting_corner.dm b/code/modules/lighting/lighting_corner.dm index 5dcbcd3c01..7121fa4472 100644 --- a/code/modules/lighting/lighting_corner.dm +++ b/code/modules/lighting/lighting_corner.dm @@ -1,6 +1,6 @@ /var/list/datum/lighting_corner/all_lighting_corners = list() /var/datum/lighting_corner/dummy/dummy_lighting_corner = new -// Because we can control each corner of every lighting overlay. +// Because we can control each corner of every lighting object. // And corners get shared between multiple turfs (unless you're on the corners of the map, then 1 corner doesn't). // For the record: these should never ever ever be deleted, even if the turf doesn't have dynamic lighting. @@ -83,8 +83,11 @@ /datum/lighting_corner/proc/update_active() active = FALSE - for (var/turf/T in masters) - if (T.lighting_overlay) + var/turf/T + var/thing + for (thing in masters) + T = thing + if (T.lighting_object) active = TRUE // God that was a mess, now to do the rest of the corner code! Hooray! @@ -93,45 +96,47 @@ lum_g += delta_g lum_b += delta_b -#ifndef LIGHTING_INSTANT_UPDATES if (!needs_update) needs_update = TRUE lighting_update_corners += src -/datum/lighting_corner/proc/update_overlays() -#endif - - // Cache these values a head of time so 4 individual lighting overlays don't all calculate them individually. - var/mx = max(lum_r, lum_g, lum_b) // Scale it so 1 is the strongest lum, if it is above 1. +/datum/lighting_corner/proc/update_objects() + // Cache these values a head of time so 4 individual lighting objects don't all calculate them individually. + var/mx = max(lum_r, lum_g, lum_b) // Scale it so one of them is the strongest lum, if it is above 1. . = 1 // factor if (mx > 1) . = 1 / mx + #if LIGHTING_SOFT_THRESHOLD != 0 else if (mx < LIGHTING_SOFT_THRESHOLD) . = 0 // 0 means soft lighting. cache_r = lum_r * . || LIGHTING_SOFT_THRESHOLD cache_g = lum_g * . || LIGHTING_SOFT_THRESHOLD cache_b = lum_b * . || LIGHTING_SOFT_THRESHOLD + #else + cache_r = lum_r * . + cache_g = lum_g * . + cache_b = lum_b * . + #endif cache_mx = mx for (var/TT in masters) var/turf/T = TT - if (T.lighting_overlay) - #ifdef LIGHTING_INSTANT_UPDATES - T.lighting_overlay.update_overlay() - #else - if (!T.lighting_overlay.needs_update) - T.lighting_overlay.needs_update = TRUE - lighting_update_overlays += T.lighting_overlay - #endif + if (T.lighting_object) + if (!T.lighting_object.needs_update) + T.lighting_object.needs_update = TRUE + lighting_update_objects += T.lighting_object /datum/lighting_corner/dummy/New() return -/datum/lighting_corner/Destroy(var/force) - if(force) - CRASH("Nope you're not deleting me!") +/datum/lighting_corner/Destroy(var/force) + if (!force) + return QDEL_HINT_LETMELIVE + + stack_trace("Ok, Look, TG, I need you to find whatever fucker decided to call qdel on a fucking lighting corner, then tell him very nicely and politely that he is 100% retarded and needs his head checked. Thanks. Send them my regards by the way.") + // Yeah fuck you anyways. return QDEL_HINT_LETMELIVE diff --git a/code/modules/lighting/lighting_overlay.dm b/code/modules/lighting/lighting_object.dm similarity index 57% rename from code/modules/lighting/lighting_overlay.dm rename to code/modules/lighting/lighting_object.dm index d073617f5e..4dcdd09597 100644 --- a/code/modules/lighting/lighting_overlay.dm +++ b/code/modules/lighting/lighting_object.dm @@ -1,63 +1,60 @@ -/var/list/all_lighting_overlays = list() // Global list of lighting overlays. +/var/list/all_lighting_objects = list() // Global list of lighting objects. -/atom/movable/lighting_overlay +/atom/movable/lighting_object name = "" anchored = TRUE icon = LIGHTING_ICON color = LIGHTING_BASE_MATRIX + plane = LIGHTING_PLANE mouse_opacity = 0 layer = LIGHTING_LAYER invisibility = INVISIBILITY_LIGHTING - blend_mode = BLEND_MULTIPLY + blend_mode = BLEND_ADD var/needs_update = FALSE -/atom/movable/lighting_overlay/New(var/atom/loc, var/no_update = FALSE) +/atom/movable/lighting_object/Initialize(mapload, var/no_update = FALSE) . = ..() verbs.Cut() - global.all_lighting_overlays += src + global.all_lighting_objects += src var/turf/T = loc // If this runtimes atleast we'll know what's creating overlays in things that aren't turfs. - T.lighting_overlay = src + T.lighting_object = src T.luminosity = 0 - for(var/turf/open/space/S in RANGE_TURFS(1,src)) //RANGE_TURFS is in code\__HELPERS\game.dm + for(var/turf/open/space/S in RANGE_TURFS(1, src)) //RANGE_TURFS is in code\__HELPERS\game.dm S.update_starlight() if (no_update) return - update_overlay() + update() -/atom/movable/lighting_overlay/Destroy(var/force) +/atom/movable/lighting_object/Destroy(var/force) if (force) - global.all_lighting_overlays -= src - global.lighting_update_overlays -= src - global.lighting_update_overlays_old -= src + global.all_lighting_objects -= src + global.lighting_update_objects -= src var/turf/T = loc if (istype(T)) - T.lighting_overlay = null + T.lighting_object = null T.luminosity = 1 - ..() - return QDEL_HINT_PUTINPOOL - + return ..() else - // Fuck you! return QDEL_HINT_LETMELIVE -/atom/movable/lighting_overlay/proc/update_overlay() +/atom/movable/lighting_object/proc/update() var/turf/T = loc if (!istype(T)) // Erm... if (loc) - warning("A lighting overlay realised its loc was NOT a turf (actual loc: [loc], [loc.type]) in update_overlay() and got pooled!") + warning("A lighting object realised its loc was NOT a turf (actual loc: [loc], [loc.type]) in update()!") else - warning("A lighting overlay realised it was in nullspace in update_overlay() and got pooled!") + warning("A lighting object realised it was in nullspace in update()!") qdel(src, TRUE) return @@ -71,7 +68,6 @@ // Including with these comments. // See LIGHTING_CORNER_DIAGONAL in lighting_corner.dm for why these values are what they are. - // No I seriously cannot think of a more efficient method, fuck off Comic. var/datum/lighting_corner/cr = T.corners[3] || dummy_lighting_corner var/datum/lighting_corner/cg = T.corners[2] || dummy_lighting_corner var/datum/lighting_corner/cb = T.corners[4] || dummy_lighting_corner @@ -86,32 +82,33 @@ ca.cache_r, ca.cache_g, ca.cache_b, 0, 0, 0, 0, 1 ) + #if LIGHTING_SOFT_THRESHOLD != 0 luminosity = max > LIGHTING_SOFT_THRESHOLD + #else + // Because of floating points™️, it won't even be a flat 0. + // This number is mostly arbitrary. + luminosity = max > 1e-6 + #endif // Variety of overrides so the overlays don't get affected by weird things. -/atom/movable/lighting_overlay/ex_act(severity) +/atom/movable/lighting_object/ex_act(severity) return 0 -/atom/movable/lighting_overlay/singularity_act() +/atom/movable/lighting_object/singularity_act() return -/atom/movable/lighting_overlay/singularity_pull() +/atom/movable/lighting_object/singularity_pull() return -/atom/movable/lighting_overlay/blob_act() +/atom/movable/lighting_object/blob_act() return -// Override here to prevent things accidentally moving around overlays. -/atom/movable/lighting_overlay/forceMove(atom/destination, var/no_tp=FALSE, var/harderforce = FALSE) - if(harderforce) - . = ..() - -/atom/movable/lighting_overlay/ResetVars() - color = LIGHTING_BASE_MATRIX - - ..("color") - // Nope nope nope! -/atom/movable/lighting_overlay/onShuttleMove(turf/T1, rotation) +/atom/movable/lighting_object/onShuttleMove(turf/T1, rotation) return FALSE + +// Override here to prevent things accidentally moving around overlays. +/atom/movable/lighting_object/forceMove(atom/destination, var/no_tp=FALSE, var/harderforce = FALSE) + if(harderforce) + . = ..() diff --git a/code/modules/lighting/lighting_setup.dm b/code/modules/lighting/lighting_setup.dm index 1c35c27ac4..f94c713bab 100644 --- a/code/modules/lighting/lighting_setup.dm +++ b/code/modules/lighting/lighting_setup.dm @@ -1,12 +1,13 @@ -/proc/create_all_lighting_overlays() +/proc/create_all_lighting_objects() for (var/zlevel = 1 to world.maxz) - create_lighting_overlays_zlevel(zlevel) + create_lighting_objects_zlevel(zlevel) - -/proc/create_lighting_overlays_zlevel(var/zlevel) +/proc/create_lighting_objects_zlevel(zlevel) ASSERT(zlevel) - - for (var/turf/T in block(locate(1, 1, zlevel), locate(world.maxx, world.maxy, zlevel))) + var/turf/T + var/thing + for (thing in block(locate(1, 1, zlevel), locate(world.maxx, world.maxy, zlevel))) + T = thing if (!IS_DYNAMIC_LIGHTING(T)) continue @@ -14,4 +15,5 @@ if (!IS_DYNAMIC_LIGHTING(A)) continue - PoolOrNew(/atom/movable/lighting_overlay, list(T, TRUE)) + new/atom/movable/lighting_object(T, TRUE) + CHECK_TICK diff --git a/code/modules/lighting/lighting_source.dm b/code/modules/lighting/lighting_source.dm index e159209641..5688866c2d 100644 --- a/code/modules/lighting/lighting_source.dm +++ b/code/modules/lighting/lighting_source.dm @@ -6,6 +6,7 @@ var/atom/source_atom // The atom that we belong to. var/turf/source_turf // The turf under the above. + var/turf/pixel_turf // The turf the top_atom appears to over. var/light_power // Intensity of the emitter light. var/light_range // The range of the emitted light. var/light_color // The colour of the light, string, decomposed by parse_light_color() @@ -44,6 +45,8 @@ top_atom.light_sources += src source_turf = top_atom + pixel_turf = get_turf_pixel(top_atom) || source_turf + light_power = source_atom.light_power light_range = source_atom.light_range light_color = source_atom.light_color @@ -62,13 +65,9 @@ destroyed = TRUE force_update() if (source_atom) - if (source_atom.light == src) - source_atom.light = null + source_atom.light_sources -= src - if (source_atom.light_sources) - source_atom.light_sources -= src - - if (top_atom && top_atom.light_sources) + if (top_atom) top_atom.light_sources -= src // Fuck supporting force. @@ -76,61 +75,41 @@ destroy() return QDEL_HINT_IWILLGC - -#ifdef LIGHTING_INSTANT_UPDATES -/datum/light_source/proc/effect_update() - if (check() || destroyed || force_update) - remove_lum() - if (!destroyed) - apply_lum() - - else if (vis_update) // We smartly update only tiles that became (in) visible to use. - smart_vis_update() - - vis_update = FALSE - force_update = FALSE - needs_update = FALSE -#else - -// Call it dirty, I don't care. -// This is here so there's no performance loss on non-instant updates from the fact that the engine can also do instant updates. -// If you're wondering what's with the "BYOND" argument: BYOND won't let me have a () macro that has no arguments :|. -#define effect_update(BYOND) \ +// Yes this doesn't align correctly on anything other than 4 width tabs. +// If you want it to go switch everybody to elastic tab stops. +// Actually that'd be great if you could! +#define EFFECT_UPDATE \ if (!needs_update) \ { \ lighting_update_lights += src; \ needs_update = TRUE; \ } -#endif // This proc will cause the light source to update the top atom, and add itself to the update queue. /datum/light_source/proc/update(var/atom/new_top_atom) // This top atom is different. if (new_top_atom && new_top_atom != top_atom) - if(top_atom != source_atom) // Remove ourselves from the light sources of that top atom. + if(top_atom != source_atom && top_atom.light_sources) // Remove ourselves from the light sources of that top atom. top_atom.light_sources -= src top_atom = new_top_atom if (top_atom != source_atom) - if(!top_atom.light_sources) - top_atom.light_sources = list() + LAZYADD(top_atom.light_sources, src) // Add ourselves to the light sources of our new top atom. - top_atom.light_sources += src // Add ourselves to the light sources of our new top atom. - - effect_update(null) + EFFECT_UPDATE // Will force an update without checking if it's actually needed. /datum/light_source/proc/force_update() force_update = 1 - effect_update(null) + EFFECT_UPDATE // Will cause the light source to recalculate turfs that were removed or added to visibility only. /datum/light_source/proc/vis_update() vis_update = 1 - effect_update(null) + EFFECT_UPDATE // Will check if we actually need to update, and update any variables that may need to be updated. /datum/light_source/proc/check() @@ -142,13 +121,20 @@ top_atom = source_atom . = 1 - if (istype(top_atom, /turf)) + if (isturf(top_atom)) if (source_turf != top_atom) source_turf = top_atom + pixel_turf = source_turf . = 1 else if (top_atom.loc != source_turf) source_turf = top_atom.loc + pixel_turf = get_turf_pixel(top_atom) . = 1 + else + var/P = get_turf_pixel(top_atom) + if (P != pixel_turf) + . = 1 + pixel_turf = get_turf_pixel(top_atom) if (source_atom.light_power != light_power) light_power = source_atom.light_power @@ -182,9 +168,9 @@ // If you're wondering what's with the backslashes, the backslashes cause BYOND to not automatically end the line. // As such this all gets counted as a single line. // The braces and semicolons are there to be able to do this on a single line. - +#define LUM_FALLOFF(C, T) (1 - CLAMP01(sqrt((C.x - T.x) ** 2 + (C.y - T.y) ** 2 + LIGHTING_HEIGHT) / max(1, light_range))) #define APPLY_CORNER(C) \ - . = LUM_FALLOFF(C, source_turf); \ + . = LUM_FALLOFF(C, pixel_turf); \ \ . *= light_power; \ \ @@ -208,7 +194,7 @@ ); // This is the define used to calculate falloff. -#define LUM_FALLOFF(C, T) (1 - CLAMP01(sqrt((C.x - T.x) ** 2 + (C.y - T.y) ** 2 + LIGHTING_HEIGHT) / max(1, light_range))) + /datum/light_source/proc/apply_lum() var/static/update_gen = 1 @@ -218,46 +204,46 @@ applied_lum_r = lum_r applied_lum_g = lum_g applied_lum_b = lum_b - - FOR_DVIEW(var/turf/T, light_range, source_turf, INVISIBILITY_LIGHTING) + var/thing + var/datum/lighting_corner/C + FOR_DVIEW(var/turf/T, light_range+1, source_turf, INVISIBILITY_LIGHTING) if (!T.lighting_corners_initialised) T.generate_missing_corners() - for (var/datum/lighting_corner/C in T.get_corners()) + for (thing in T.get_corners()) + C = thing if (C.update_gen == update_gen) continue C.update_gen = update_gen - C.affecting += src + LAZYADD(C.affecting,src) if (!C.active) + effect_str[C] = 0 continue APPLY_CORNER(C) - if (!T.affecting_lights) - T.affecting_lights = list() - - T.affecting_lights += src + LAZYADD(T.affecting_lights, src) affecting_turfs += T update_gen++ /datum/light_source/proc/remove_lum() applied = FALSE - - for (var/turf/T in affecting_turfs) - if (!T.affecting_lights) - T.affecting_lights = list() - else - T.affecting_lights -= src + var/thing + for (thing in affecting_turfs) + var/turf/T = thing + LAZYREMOVE(T.affecting_lights, src) affecting_turfs.Cut() - for (var/datum/lighting_corner/C in effect_str) + var/datum/lighting_corner/C + for (thing in effect_str) + C = thing REMOVE_CORNER(C) - C.affecting -= src + LAZYREMOVE(C.affecting, src) effect_str.Cut() @@ -270,38 +256,48 @@ /datum/light_source/proc/smart_vis_update() var/list/datum/lighting_corner/corners = list() var/list/turf/turfs = list() - FOR_DVIEW(var/turf/T, light_range, source_turf, 0) + var/thing + var/datum/lighting_corner/C + var/turf/T + + FOR_DVIEW(T, light_range+1, source_turf, 0) if (!T.lighting_corners_initialised) T.generate_missing_corners() - corners |= T.get_corners() - turfs += T + for (thing in T.get_corners(source_turf)) + C = thing + corners[C] = 0 + turfs += T var/list/L = turfs - affecting_turfs // New turfs, add us to the affecting lights of them. affecting_turfs += L - for (var/turf/T in L) - if (!T.affecting_lights) - T.affecting_lights = list(src) - else - T.affecting_lights += src + for (thing in L) + T = thing + LAZYADD(T.affecting_lights, src) L = affecting_turfs - turfs // Now-gone turfs, remove us from the affecting lights. affecting_turfs -= L - for (var/turf/T in L) - T.affecting_lights -= src + for (thing in L) + T = thing + LAZYREMOVE(T.affecting_lights, src) - for (var/datum/lighting_corner/C in corners - effect_str) // New corners - C.affecting += src + + + for (thing in corners - effect_str) // New corners + C = thing + LAZYADD(C.affecting, src) if (!C.active) + effect_str[C] = 0 continue APPLY_CORNER(C) - for (var/datum/lighting_corner/C in effect_str - corners) // Old, now gone, corners. + for (thing in effect_str - corners) // Old, now gone, corners. + C = thing REMOVE_CORNER(C) - C.affecting -= src + LAZYREMOVE(C.affecting, src) effect_str -= C -#undef effect_update +#undef EFFECT_UPDATE #undef LUM_FALLOFF #undef REMOVE_CORNER #undef APPLY_CORNER diff --git a/code/modules/lighting/lighting_sourcecolor.dm b/code/modules/lighting/lighting_sourcecolor.dm deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/code/modules/lighting/lighting_system.dm b/code/modules/lighting/lighting_system.dm deleted file mode 100644 index 95bef660a6..0000000000 --- a/code/modules/lighting/lighting_system.dm +++ /dev/null @@ -1,416 +0,0 @@ -/* - This is /tg/'s 'newer' lighting system. It's basically a combination of Forum_Account's and ShadowDarke's - respective lighting libraries heavily modified by Carnwennan for /tg/station with further edits by - MrPerson. Credits, where due, to them. - - Originally, like all other lighting libraries on BYOND, we used areas to render different hard-coded light levels. - The idea was that this was cheaper than using objects. Well as it turns out, the cost of the system is primarily from the - massive loops the system has to run, not from the areas or objects actually doing any work. Thus the newer system uses objects - so we can have more lighting states and smooth transitions between them. - - This is a queueing system. Everytime we call a change to opacity or luminosity throwgh SetOpacity() or SetLuminosity(), - we are simply updating variables and scheduling certain lights/turfs for an update. Actual updates are handled - periodically by the SSlighting subsystem. Specifically, it runs check() on every light datum that ran changed(). - Then it runs redraw_lighting() on every turf that ran update_lumcount(). - - Unlike our older system, there are hardcoded maximum luminosities (different for certain atoms). - This is to cap the cost of creating lighting effects. - (without this, an atom with luminosity of 20 would have to update 41^2 turfs!) :s - - Each light remembers the effect it casts on each turf. It reduces cost of removing lighting effects by a lot! - - Known Issues/TODO: - Shuttles still do not have support for dynamic lighting (I hope to fix this at some point) -probably trivial now - No directional lighting support. (prototype looked ugly) - Allow lights to be weaker than 'cap' radius - Colored lights -*/ - -/datum/light_source - var/atom/owner - var/radius = 0 - var/luminosity = 0 - var/cap = 0 - var/changed = 0 - var/mode = LIGHTING_REGULAR - var/list/effect = list() - var/__x = 0 //x coordinate at last update - var/__y = 0 //y coordinate at last update - -/datum/light_source/New(atom/A) - if(!istype(A)) - CRASH("The first argument to the light object's constructor must be the atom that is the light source. Expected atom, received '[A]' instead.") - ..() - owner = A - UpdateLuminosity(A.luminosity) - -/datum/light_source/Destroy() - if(owner && owner.light == src) - remove_effect() - owner.light = null - owner.luminosity = 0 - owner = null - if(changed) - SSlighting.changed_lights -= src - return ..() - -/datum/light_source/proc/UpdateLuminosity(new_luminosity, new_cap) - if(new_luminosity < 0) - new_luminosity = 0 - - if(luminosity == new_luminosity && (new_cap == null || cap == new_cap)) - return - - radius = max(LIGHTING_MIN_RADIUS, new_luminosity) - luminosity = new_luminosity - if (new_cap != null) - cap = new_cap - - changed() - - -//Check a light to see if its effect needs reprocessing. If it does, remove any old effect and create a new one -/datum/light_source/proc/check() - if(!owner) - remove_effect() - return 0 - - if(changed) - changed = 0 - remove_effect() - return add_effect() - - return 1 - -//Tell the lighting subsystem to check() next fire -/datum/light_source/proc/changed() - if(owner) - __x = owner.x - __y = owner.y - if(!changed) - changed = 1 - SSlighting.changed_lights |= src - -//Remove current effect -/datum/light_source/proc/remove_effect(). - for(var/turf/T in effect) - LAZYREMOVE(T.affecting_lights, src) - T.update_lumcount(-effect[T], mode) - - effect.Cut() - -//Apply a new effect. -/datum/light_source/proc/add_effect() - // only do this if the light is turned on and is on the map - if(!owner || !owner.loc) - return 0 - var/range = owner.get_light_range(radius) - if(range <= 0 || luminosity <= 0) - owner.luminosity = 0 - return 0 - - effect = list() - var/turf/To = get_turf(owner) - - - for(var/atom/movable/AM in To) - if(AM == owner) - continue - if(AM.opacity) - range = 1 - break - - owner.luminosity = range - var/center_strength = 0 - if (cap <= 0) - center_strength = LIGHTING_CAP/LIGHTING_LUM_FOR_FULL_BRIGHT*(luminosity) - else - center_strength = cap - - for(var/turf/T in view(range+1, To)) - -#ifdef LIGHTING_CIRCULAR - var/distance = cheap_hypotenuse(T.x, T.y, __x, __y) -#else - var/distance = max(abs(T,x - __x), abs(T.y - __y)) -#endif - - var/delta_lumcount = Clamp(center_strength * (range - distance) / range, 0, LIGHTING_CAP) - - if(delta_lumcount > 0) - effect[T] = delta_lumcount - T.update_lumcount(delta_lumcount, mode) - - LAZYINITLIST(T.affecting_lights) - T.affecting_lights |= src - - return 1 - -/atom - var/datum/light_source/light - -//Objects with opacity will trigger nearby lights to update at next SSlighting fire -/atom/movable/Destroy() - qdel(light) - if(opacity && isturf(loc)) - loc.UpdateAffectingLights() - return ..() - - -//Sets our luminosity. -//If we have no light it will create one. -//If we are setting luminosity to 0 the light will be cleaned up by the controller and garbage collected once all its -//queues are complete. -//if we have a light already it is merely updated, rather than making a new one. -//The second arg allows you to scale the light cap for calculating falloff. - -/atom/proc/SetLuminosity(new_luminosity, new_cap) - if (!light) - if (new_luminosity <= 0) - return - light = new(src) - - light.UpdateLuminosity(new_luminosity, new_cap) - -/atom/proc/AddLuminosity(delta_luminosity) - if(light) - SetLuminosity(light.luminosity + delta_luminosity) - else - SetLuminosity(delta_luminosity) - -/area/SetLuminosity(new_luminosity) //we don't want dynamic lighting for areas - luminosity = !!new_luminosity - - -//change our opacity (defaults to toggle), and then update all lights that affect us. -/atom/proc/SetOpacity(new_opacity) - if(new_opacity == null) - new_opacity = !opacity //default = toggle opacity - else if(opacity == new_opacity) - return 0 //opacity hasn't changed! don't bother doing anything - opacity = new_opacity //update opacity, the below procs now call light updates. - UpdateAffectingLights() - return 1 - -/atom/movable/light - icon = LIGHTING_ICON - icon_state = LIGHTING_ICON_STATE - layer = LIGHTING_LAYER - plane = LIGHTING_PLANE - mouse_opacity = 0 - blend_mode = BLEND_OVERLAY - invisibility = INVISIBILITY_LIGHTING - color = "#000" - luminosity = 0 - infra_luminosity = 1 - anchored = 1 - -/atom/movable/light/Destroy(force) - if(!force) - return QDEL_HINT_LETMELIVE - var/turf/T = loc - . = ..() - if (T.lighting_object == src) - T.lighting_object = null - -/atom/movable/light/New() - if (!isturf(loc)) - PutOut() - throw EXCEPTION("Invalid light placement: loc must be a turf") - var/turf/T = loc - - if (T.lighting_object && T.lighting_object != src) - PutOut() - throw EXCEPTION("BUG: /atom/movable/light created on a turf that already has one") - T.lighting_object = src - -/atom/movable/light/proc/PutOut() - alpha = 0 - qdel(src, force = TRUE) - -/atom/movable/light/Move() - return 0 - -/turf - var/lighting_lumcount = 0 - var/lighting_changed = 0 - var/atom/movable/light/lighting_object //Will be null for space turfs and anything in a static lighting area - var/list/affecting_lights //all /light_source affecting this turf, lazy initialized - var/starlight = 0 //Amount of starlight hitting this turf - -/turf/ChangeTurf(path) - if(!path || (!use_preloader && path == type)) //Sucks this is here but it would cause problems otherwise. - return ..() - - for(var/obj/effect/decal/cleanable/decal in src.contents) - qdel(decal) - - if(light) - qdel(light) - - var/old_lumcount = lighting_lumcount - initial(lighting_lumcount) - var/oldbaseturf = baseturf - var/old_starlight = starlight - - var/list/our_lights //reset affecting_lights if needed - if(opacity != initial(path:opacity) && old_lumcount) - UpdateAffectingLights() - - if(affecting_lights) - our_lights = affecting_lights.Copy() - - . = ..() //At this point the turf has changed - - affecting_lights = our_lights - - lighting_changed = 1 //Don't add ourself to SSlighting.changed_turfs - update_lumcount(old_lumcount, LIGHTING_REGULAR) - starlight = old_starlight - baseturf = oldbaseturf - lighting_object = locate() in src - - init_lighting() - - for(var/turf/open/space/S in RANGE_TURFS(1,src)) //RANGE_TURFS is in code\__HELPERS\game.dm - S.update_starlight() - -/turf/proc/update_lumcount(amount, mode) - switch(mode) - if(LIGHTING_REGULAR) - lighting_lumcount += amount - if(LIGHTING_STARLIGHT) - if(amount > starlight) - lighting_lumcount -= starlight - starlight = amount - lighting_lumcount += amount - else if(amount && amount == -starlight) - lighting_lumcount -= starlight - starlight = 0 - for(var/thing in affecting_lights) - var/datum/light_source/LS = thing - if(LS.mode == LIGHTING_STARLIGHT) - var/starlight_test = LS.effect[src] - if(starlight < starlight_test) - starlight = starlight_test - lighting_lumcount += starlight - - if(!lighting_changed) - SSlighting.changed_turfs += src - lighting_changed = 1 - -/turf/open/space/update_lumcount(amount, mode) //Keep track in case the turf becomes a floor at some point, but don't process. - lighting_changed = TRUE - ..() - lighting_changed = FALSE - -/turf/proc/init_lighting() - var/area/A = loc - if(!IS_DYNAMIC_LIGHTING(A)) - if(lighting_changed) - lighting_changed = 0 - if(lighting_object) - lighting_object.PutOut() - else - if(!lighting_object) - lighting_object = new (src) - redraw_lighting(1) - for(var/turf/open/space/T in RANGE_TURFS(1,src)) - T.update_starlight() - - -/turf/open/space/init_lighting() - if(lighting_changed) - lighting_changed = 0 - if(lighting_object) - lighting_object.PutOut() - -/turf/proc/redraw_lighting(instantly = 0) - if(lighting_object) - var/newalpha - if(lighting_lumcount <= 0) - newalpha = 255 - else - if(lighting_lumcount < LIGHTING_CAP) - var/num = Clamp(lighting_lumcount * LIGHTING_CAP_FRAC, 0, 255) - newalpha = 255-num - else //if(lighting_lumcount >= LIGHTING_CAP) - newalpha = 0 - if(newalpha >= LIGHTING_DARKEST_VISIBLE_ALPHA) - newalpha = 255 - if(lighting_object.alpha != newalpha) - if(instantly || abs(lighting_object.alpha - newalpha) < LIGHTING_MIN_ALPHA_DELTA_TO_ANIMATE) - lighting_object.alpha = newalpha - else - animate(lighting_object, alpha = newalpha, time = LIGHTING_ANIMATE_TIME) - if(newalpha >= LIGHTING_DARKEST_VISIBLE_ALPHA) - luminosity = 0 - lighting_object.luminosity = 0 - else - luminosity = 1 - lighting_object.luminosity = 1 - - lighting_changed = 0 - -/turf/proc/get_lumcount() - . = LIGHTING_CAP - var/area/A = src.loc - if(IS_DYNAMIC_LIGHTING(A)) - . = src.lighting_lumcount - -/area - var/lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED //Turn this flag off to make the area fullbright - -/area/New() - . = ..() - if(lighting_use_dynamic != DYNAMIC_LIGHTING_ENABLED) - luminosity = 1 - -/area/proc/SetDynamicLighting() - if (lighting_use_dynamic == DYNAMIC_LIGHTING_DISABLED) - lighting_use_dynamic = DYNAMIC_LIGHTING_ENABLED - luminosity = 0 - for(var/turf/T in src.contents) - T.init_lighting() - T.update_lumcount(0) - -//set the changed status of all lights which could have possibly lit this atom. -//We don't need to worry about lights which lit us but moved away, since they will have change status set already -//This proc can cause lots of lights to be updated. :( -/atom/proc/UpdateAffectingLights() - -/atom/movable/UpdateAffectingLights() - if(isturf(loc)) - loc.UpdateAffectingLights() - -/turf/UpdateAffectingLights() - if(affecting_lights) - for(var/datum/light_source/thing in affecting_lights) - if (!thing.changed) - thing.changed() //force it to update at next process() - - -#define LIGHTING_MAX_LUMINOSITY_STATIC 8 //Maximum luminosity to reduce lag. -#define LIGHTING_MAX_LUMINOSITY_MOBILE 7 //Moving objects have a lower max luminosity since these update more often. (lag reduction) -#define LIGHTING_MAX_LUMINOSITY_MOB 6 -#define LIGHTING_MAX_LUMINOSITY_TURF 8 //turfs are static too, why was this 1?! - -//caps luminosity effects max-range based on what type the light's owner is. -/atom/proc/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_STATIC) - -/atom/movable/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_MOBILE) - -/mob/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_MOB) - -/obj/machinery/light/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_STATIC) - -/turf/get_light_range(radius) - return min(radius, LIGHTING_MAX_LUMINOSITY_TURF) - -#undef LIGHTING_MAX_LUMINOSITY_STATIC -#undef LIGHTING_MAX_LUMINOSITY_MOBILE -#undef LIGHTING_MAX_LUMINOSITY_MOB -#undef LIGHTING_MAX_LUMINOSITY_TURF diff --git a/code/modules/lighting/lighting_turf.dm b/code/modules/lighting/lighting_turf.dm index bae6f502ae..4d7d725e24 100644 --- a/code/modules/lighting/lighting_turf.dm +++ b/code/modules/lighting/lighting_turf.dm @@ -1,63 +1,67 @@ /turf - var/dynamic_lighting = DYNAMIC_LIGHTING_ENABLED + var/dynamic_lighting = TRUE luminosity = 1 var/tmp/lighting_corners_initialised = FALSE var/tmp/list/datum/light_source/affecting_lights // List of light sources affecting this turf. - var/tmp/atom/movable/lighting_overlay/lighting_overlay // Our lighting overlay. + var/tmp/atom/movable/lighting_object/lighting_object // Our lighting object. var/tmp/list/datum/lighting_corner/corners var/tmp/has_opaque_atom = FALSE // Not to be confused with opacity, this will be TRUE if there's any opaque atom on the tile. -/turf/New() - . = ..() - - if (opacity) - has_opaque_atom = TRUE - // Causes any affecting light sources to be queued for a visibility update, for example a door got opened. /turf/proc/reconsider_lights() - for (var/datum/light_source/L in affecting_lights) + var/datum/light_source/L + var/thing + for (thing in affecting_lights) + L = thing L.vis_update() /turf/proc/lighting_clear_overlay() - if (lighting_overlay) - qdel(lighting_overlay, TRUE) - lighting_overlay = null + if (lighting_object) + qdel(lighting_object, TRUE) - for (var/datum/lighting_corner/C in corners) + var/datum/lighting_corner/C + var/thing + for (thing in corners) + C = thing C.update_active() - for(var/turf/open/space/S in RANGE_TURFS(1,src)) //RANGE_TURFS is in code\__HELPERS\game.dm - S.update_starlight() - -// Builds a lighting overlay for us, but only if our area is dynamic. +// Builds a lighting object for us, but only if our area is dynamic. /turf/proc/lighting_build_overlay() - if (lighting_overlay) + if (lighting_object) return var/area/A = loc - if (IS_DYNAMIC_LIGHTING(A)) - if (!lighting_corners_initialised) - generate_missing_corners() + if (!IS_DYNAMIC_LIGHTING(A)) + return - PoolOrNew(/atom/movable/lighting_overlay, src) + if (!lighting_corners_initialised) + generate_missing_corners() - for (var/datum/lighting_corner/C in corners) - if (!C.active) // We would activate the corner, calculate the lighting for it. - for (var/L in C.affecting) - var/datum/light_source/S = L - S.recalc_corner(C) + new/atom/movable/lighting_object(src) - C.active = TRUE + var/thing + var/datum/lighting_corner/C + var/datum/light_source/S + for (thing in corners) + C = thing + if (!C.active) // We would activate the corner, calculate the lighting for it. + for (thing in C.affecting) + S = thing + S.recalc_corner(C) + C.active = TRUE // Used to get a scaled lumcount. /turf/proc/get_lumcount(var/minlum = 0, var/maxlum = 1) - if (!lighting_overlay) - return 0.5 + if (!lighting_object) + return 1 var/totallums = 0 - for (var/datum/lighting_corner/L in corners) + var/thing + var/datum/lighting_corner/L + for (thing in corners) + L = thing totallums += L.lum_r + L.lum_b + L.lum_g totallums /= 12 // 4 corners, each with 3 channels, get the average. @@ -66,12 +70,24 @@ return CLAMP01(totallums) +// Returns a boolean whether the turf is on soft lighting. +// Soft lighting being the threshold at which point the overlay considers +// itself as too dark to allow sight and see_in_dark becomes useful. +// So basically if this returns true the tile is unlit black. +/turf/proc/is_softly_lit() + if (!lighting_object) + return FALSE + + return !lighting_object.luminosity + // Can't think of a good name, this proc will recalculate the has_opaque_atom variable. /turf/proc/recalc_atom_opacity() - has_opaque_atom = FALSE - for (var/atom/A in src.contents + src) // Loop through every movable atom on our tile PLUS ourselves (we matter too...) - if (A.opacity) - has_opaque_atom = TRUE + has_opaque_atom = opacity + if (!has_opaque_atom) + for (var/atom/A in src.contents) // Loop through every movable atom on our tile PLUS ourselves (we matter too...) + if (A.opacity) + has_opaque_atom = TRUE + break // If an opaque movable atom moves around we need to potentially update visibility. /turf/Entered(var/atom/movable/Obj, var/atom/OldLoc) @@ -88,9 +104,9 @@ recalc_atom_opacity() // Make sure to do this before reconsider_lights(), incase we're on instant updates. reconsider_lights() -/turf/change_area(var/area/old_area, var/area/new_area) - if (IS_DYNAMIC_LIGHTING(new_area) != IS_DYNAMIC_LIGHTING(old_area)) - if (IS_DYNAMIC_LIGHTING(new_area)) +/turf/proc/change_area(var/area/old_area, var/area/new_area) + if (new_area.dynamic_lighting != old_area.dynamic_lighting) + if (new_area.dynamic_lighting) lighting_build_overlay() else @@ -113,41 +129,31 @@ corners[i] = new/datum/lighting_corner(src, LIGHTING_CORNER_DIAGONAL[i]) + /turf/ChangeTurf(path) - if(!path || (!use_preloader && path == type)) //Sucks this is here but it would cause problems otherwise. + if (!path || (!use_preloader && path == type) || !SSlighting.initialized) return ..() - if (!lighting_corners_initialised) - if (!corners) - corners = list(null, null, null, null) - - for (var/i = 1 to 4) - if (corners[i]) // Already have a corner on this direction. - continue - - corners[i] = new/datum/lighting_corner(src, LIGHTING_CORNER_DIAGONAL[i]) - - var/old_opacity = opacity var/old_dynamic_lighting = dynamic_lighting var/old_affecting_lights = affecting_lights - var/old_lighting_overlay = lighting_overlay + var/old_lighting_object = lighting_object var/old_corners = corners - for(var/obj/effect/decal/cleanable/decal in src.contents) - qdel(decal) - . = ..() //At this point the turf has changed - lighting_corners_initialised = TRUE recalc_atom_opacity() - lighting_overlay = old_lighting_overlay + lighting_object = old_lighting_object affecting_lights = old_affecting_lights corners = old_corners - if((old_opacity != opacity) || (dynamic_lighting != old_dynamic_lighting)) + if (old_opacity != opacity || dynamic_lighting != old_dynamic_lighting) reconsider_lights() - if(dynamic_lighting != old_dynamic_lighting) - if(IS_DYNAMIC_LIGHTING(src)) + + if (dynamic_lighting != old_dynamic_lighting) + if (IS_DYNAMIC_LIGHTING(src)) lighting_build_overlay() else lighting_clear_overlay() + + for(var/turf/open/space/S in RANGE_TURFS(1, src)) //RANGE_TURFS is in code\__HELPERS\game.dm + S.update_starlight() \ No newline at end of file diff --git a/code/modules/lighting/~lighting_undefs.dm b/code/modules/lighting/~lighting_undefs.dm deleted file mode 100644 index b75094f4b7..0000000000 --- a/code/modules/lighting/~lighting_undefs.dm +++ /dev/null @@ -1,12 +0,0 @@ -#ifdef LIGHTING_INSTANT_UPDATES -#undef LIGHTING_INTERVAL -#undef LIGHTING_INSTANT_UPDATES -#endif - -#undef LIGHTING_FALLOFF -#undef LIGHTING_LAMBERTIAN -#undef LIGHTING_HEIGHT - -#undef LIGHTING_ICON - -#undef LIGHTING_BASE_MATRIX \ No newline at end of file diff --git a/code/modules/mapping/dmm_suite.dm b/code/modules/mapping/dmm_suite.dm index cb3a72fdb4..e8e9f1dece 100644 --- a/code/modules/mapping/dmm_suite.dm +++ b/code/modules/mapping/dmm_suite.dm @@ -51,11 +51,12 @@ dmm_suite{ */ - verb/load_map(var/dmm_file as file, var/x_offset as num, var/y_offset as num, var/z_offset as num, var/cropMap as num, var/measureOnly as num){ + verb/load_map(var/dmm_file as file, var/x_offset as num, var/y_offset as num, var/z_offset as num, var/cropMap as num, var/measureOnly as num, no_changeturf as num){ // dmm_file: A .dmm file to load (Required). // z_offset: A number representing the z-level on which to start loading the map (Optional). // cropMap: When true, the map will be cropped to fit the existing world dimensions (Optional). // measureOnly: When true, no changes will be made to the world (Optional). + // no_changeturf: When true, turf/AfterChange won't be called on loaded turfs } verb/write_map(var/turf/t1 as turf, var/turf/t2 as turf, var/flags as num){ // t1: A turf representing one corner of a three dimensional grid (Required). diff --git a/code/modules/mapping/reader.dm b/code/modules/mapping/reader.dm index b4c92c00af..ac3a8fcb34 100644 --- a/code/modules/mapping/reader.dm +++ b/code/modules/mapping/reader.dm @@ -25,13 +25,13 @@ var/global/dmm_suite/preloader/_preloader = new * 2) Read the map line by line, parsing the result (using parse_grid) * */ -/dmm_suite/load_map(dmm_file as file, x_offset as num, y_offset as num, z_offset as num, cropMap as num, measureOnly as num) +/dmm_suite/load_map(dmm_file as file, x_offset as num, y_offset as num, z_offset as num, cropMap as num, measureOnly as num, no_changeturf as num) //How I wish for RAII Master.StartLoadingMap() - . = load_map_impl(dmm_file, x_offset, y_offset, z_offset, cropMap, measureOnly) + . = load_map_impl(dmm_file, x_offset, y_offset, z_offset, cropMap, measureOnly, no_changeturf) Master.StopLoadingMap() -/dmm_suite/proc/load_map_impl(dmm_file, x_offset, y_offset, z_offset, cropMap, measureOnly) +/dmm_suite/proc/load_map_impl(dmm_file, x_offset, y_offset, z_offset, cropMap, measureOnly, no_changeturf) var/tfile = dmm_file//the map file we're creating if(isfile(tfile)) tfile = file2text(tfile) @@ -75,7 +75,8 @@ var/global/dmm_suite/preloader/_preloader = new var/ycrd = text2num(dmmRegex.group[4]) + y_offset - 1 var/zcrd = text2num(dmmRegex.group[5]) + z_offset - 1 - if(zcrd > world.maxz) + var/zexpansion = zcrd > world.maxz + if(zexpansion) if(cropMap) continue else @@ -127,7 +128,7 @@ var/global/dmm_suite/preloader/_preloader = new var/model_key = copytext(line, tpos, tpos + key_len) if(!grid_models[model_key]) throw EXCEPTION("Undefined model key in DMM.") - parse_grid(grid_models[model_key], xcrd, ycrd, zcrd) + parse_grid(grid_models[model_key], xcrd, ycrd, zcrd, no_changeturf || zexpansion) CHECK_TICK maxx = max(maxx, xcrd) @@ -142,10 +143,11 @@ var/global/dmm_suite/preloader/_preloader = new return null else if(!measureOnly) - for(var/t in block(locate(bounds[MAP_MINX], bounds[MAP_MINY], bounds[MAP_MINZ]), locate(bounds[MAP_MAXX], bounds[MAP_MAXY], bounds[MAP_MAXZ]))) - var/turf/T = t - //we do this after we load everything in. if we don't; we'll have weird atmos bugs regarding atmos adjacent turfs - T.AfterChange(TRUE) + if(!no_changeturf) + for(var/t in block(locate(bounds[MAP_MINX], bounds[MAP_MINY], bounds[MAP_MINZ]), locate(bounds[MAP_MAXX], bounds[MAP_MAXY], bounds[MAP_MAXZ]))) + var/turf/T = t + //we do this after we load everything in. if we don't; we'll have weird atmos bugs regarding atmos adjacent turfs + T.AfterChange(TRUE) return bounds /** @@ -165,7 +167,7 @@ var/global/dmm_suite/preloader/_preloader = new * 4) Instanciates the atom with its variables * */ -/dmm_suite/proc/parse_grid(model as text,xcrd as num,ycrd as num,zcrd as num) +/dmm_suite/proc/parse_grid(model as text,xcrd as num,ycrd as num,zcrd as num, no_changeturf as num) /*Method parse_grid() - Accepts a text string containing a comma separated list of type paths of the same construction as those contained in a .dmm file, and instantiates them. @@ -211,6 +213,13 @@ var/global/dmm_suite/preloader/_preloader = new if(variables_start)//if there's any variable full_def = copytext(full_def,variables_start+1,length(full_def))//removing the last '}' fields = readlist(full_def, ";") + if(fields.len) + if(!trim(fields[fields.len])) + --fields.len + for(var/I in fields) + var/value = fields[I] + if(istext(value)) + fields[I] = apply_text_macros(value) //then fill the members_attributes list with the corresponding variables members_attributes.len++ @@ -253,20 +262,20 @@ var/global/dmm_suite/preloader/_preloader = new //instanciate the first /turf var/turf/T if(members[first_turf_index] != /turf/template_noop) - T = instance_atom(members[first_turf_index],members_attributes[first_turf_index],xcrd,ycrd,zcrd) + T = instance_atom(members[first_turf_index],members_attributes[first_turf_index],xcrd,ycrd,zcrd,no_changeturf) if(T) //if others /turf are presents, simulates the underlays piling effect index = first_turf_index + 1 while(index <= members.len - 1) // Last item is an /area var/underlay = T.appearance - T = instance_atom(members[index],members_attributes[index],xcrd,ycrd,zcrd)//instance new turf + T = instance_atom(members[index],members_attributes[index],xcrd,ycrd,zcrd,no_changeturf)//instance new turf T.underlays += underlay index++ //finally instance all remainings objects/mobs for(index in 1 to first_turf_index-1) - instance_atom(members[index],members_attributes[index],xcrd,ycrd,zcrd) + instance_atom(members[index],members_attributes[index],xcrd,ycrd,zcrd,no_changeturf) //custom CHECK_TICK here because we don't want things created while we're sleeping to not initialize if(world.tick_usage > CURRENT_TICKLIMIT) @@ -281,13 +290,13 @@ var/global/dmm_suite/preloader/_preloader = new //////////////// //Instance an atom at (x,y,z) and gives it the variables in attributes -/dmm_suite/proc/instance_atom(path,list/attributes, x, y, z) +/dmm_suite/proc/instance_atom(path,list/attributes, x, y, z, no_changeturf) var/atom/instance _preloader.setup(attributes, path) var/turf/T = locate(x,y,z) if(T) - if(ispath(path, /turf)) + if(!no_changeturf && ispath(path, /turf)) T.ChangeTurf(path, TRUE) instance = T else @@ -408,4 +417,4 @@ var/global/dmm_suite/preloader/_preloader = new name = "Area Passthrough" /turf/template_noop - name = "Turf Passthrough" + name = "Turf Passthrough" \ No newline at end of file diff --git a/code/modules/mentor/follow.dm b/code/modules/mentor/follow.dm index a578f9a110..8958cc5611 100644 --- a/code/modules/mentor/follow.dm +++ b/code/modules/mentor/follow.dm @@ -18,8 +18,8 @@ usr.reset_perspective(M) src.verbs += /client/proc/mentor_unfollow - admins << "MENTOR: [key_name(usr)] is now following [key_name(M)]" - usr << "You are now following [M]. Click the \"Stop Following\" button in the Mentor tab to stop." + to_chat(admins, "MENTOR: [key_name(usr)] is now following [key_name(M)]") + to_chat(usr, "You are now following [M]. Click the \"Stop Following\" button in the Mentor tab to stop.") log_mentor("[key_name(usr)] began following [key_name(M)]") @@ -43,8 +43,8 @@ following = holder.following*/ - admins << "MENTOR: [key_name(usr)] is no longer following [key_name(following)]" - usr << "You are no longer following [following]." + to_chat(admins, "MENTOR: [key_name(usr)] is no longer following [key_name(following)]") + to_chat(usr, "You are no longer following [following].") log_mentor("[key_name(usr)] stopped following [key_name(following)]") following = null diff --git a/code/modules/mentor/verbs/mentor_memo.dm b/code/modules/mentor/verbs/mentor_memo.dm index 81e8dcec27..4c8376f3f3 100644 --- a/code/modules/mentor/verbs/mentor_memo.dm +++ b/code/modules/mentor/verbs/mentor_memo.dm @@ -3,7 +3,7 @@ set category = "Server" if(!check_rights(0)) return if(!dbcon.IsConnected()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return var/memotask = input(usr,"Choose task.","Memo") in list("Show","Write","Edit","Remove") if(!memotask) @@ -15,7 +15,7 @@ set category = "Mentor" if(!check_mentor()) return if(!dbcon.IsConnected()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return mentor_memo_output("Show") @@ -23,7 +23,7 @@ if(!task) return if(!dbcon.IsConnected()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return var/sql_ckey = sanitizeSQL(src.ckey) switch(task) @@ -34,7 +34,7 @@ log_game("SQL ERROR obtaining ckey from memo table. Error : \[[err]\]\n") return if(query_memocheck.NextRow()) - src << "You already have set a memo." + to_chat(src, "You already have set a memo.") return var/memotext = input(src,"Write your Memo","Memo") as message if(!memotext) @@ -59,7 +59,7 @@ var/lkey = query_memolist.item[1] memolist += "[lkey]" if(!memolist.len) - src << "No memos found in database." + to_chat(src, "No memos found in database.") return var/target_ckey = input(src, "Select whose memo to edit", "Select memo") as null|anything in memolist if(!target_ckey) @@ -106,9 +106,9 @@ output += "
    Last edit by [last_editor] (Click here to see edit log)" output += "
    [memotext]
    " if(!output) - src << "No memos found in database." + to_chat(src, "No memos found in database.") return - src << output + to_chat(src, output) if("Remove") var/DBQuery/query_memodellist = dbcon.NewQuery("SELECT ckey FROM [format_table_name("mentor_memo")]") if(!query_memodellist.Execute()) @@ -120,7 +120,7 @@ var/ckey = query_memodellist.item[1] memolist += "[ckey]" if(!memolist.len) - src << "No memos found in database." + to_chat(src, "No memos found in database.") return var/target_ckey = input(src, "Select whose mentor memo to delete", "Select mentor memo") as null|anything in memolist if(!target_ckey) diff --git a/code/modules/mentor/verbs/mentorhelp.dm b/code/modules/mentor/verbs/mentorhelp.dm index 40606460fa..367c09a97a 100644 --- a/code/modules/mentor/verbs/mentorhelp.dm +++ b/code/modules/mentor/verbs/mentorhelp.dm @@ -18,14 +18,14 @@ log_mentor("MENTORHELP: [key_name_mentor(src, 0, 0, 0, 0)]: [msg]") for(var/client/X in mentors) - X << 'sound/items/bikehorn.ogg' - X << mentor_msg + to_chat(X, 'sound/items/bikehorn.ogg') + to_chat(X, mentor_msg) for(var/client/A in admins) - A << 'sound/items/bikehorn.ogg' - A << mentor_msg + to_chat(A, 'sound/items/bikehorn.ogg') + to_chat(A, mentor_msg) - src << "PM to-Mentors: [msg]" + to_chat(src, "PM to-Mentors: [msg]") return /proc/get_mentor_counts() @@ -78,7 +78,7 @@ if(C && C.holder && C.holder.fakekey) . += "Administrator" else if (char_name_only && config.mentors_mobname_only) - if(istype(C.mob,/mob/new_player) || istype(C.mob, /mob/dead/observer)) //If they're in the lobby or observing, display their ckey + if(istype(C.mob,/mob/dead/new_player) || istype(C.mob, /mob/dead/observer)) //If they're in the lobby or observing, display their ckey . += key else if(C && C.mob) //If they're playing/in the round, only show the mob name . += C.mob.name diff --git a/code/modules/mentor/verbs/mentorpm.dm b/code/modules/mentor/verbs/mentorpm.dm index 4efc61b87d..118ded5403 100644 --- a/code/modules/mentor/verbs/mentorpm.dm +++ b/code/modules/mentor/verbs/mentorpm.dm @@ -3,7 +3,7 @@ set category = "Mentor" set name = "Mentor PM" if(!holder) - src << "Error: Mentor-PM-Panel: Only Mentors may use this command." + to_chat(src, "Error: Mentor-PM-Panel: Only Mentors may use this command.") return var/list/client/targets[0] for(var/client/T) @@ -27,7 +27,7 @@ else if(istype(whom,/client)) C = whom if(!C) - if(holder) src << "Error: Mentor-PM: Client not found." + if(holder) to_chat(src, "Error: Mentor-PM: Client not found.") else mentorhelp(msg) //Mentor we are replying to left. Mentorhelp instead return @@ -37,7 +37,7 @@ if(!msg) return if(!C) - if(holder) src << "Error: Mentor-PM: Client not found." + if(holder) to_chat(src, "Error: Mentor-PM: Client not found.") else mentorhelp(msg) //Mentor we are replying to has vanished, Mentorhelp instead return @@ -51,24 +51,24 @@ var/show_char = config.mentors_mobname_only if(check_mentor_other(C)) if(check_mentor()) //both are mentors - C << "Mentor PM from-[key_name_mentor(src, C, 1, 0, 0)]: [msg]" - src << "Mentor PM to-[key_name_mentor(C, C, 1, 0, 0)]: [msg]" + to_chat(C, "Mentor PM from-[key_name_mentor(src, C, 1, 0, 0)]: [msg]") + to_chat(src, "Mentor PM to-[key_name_mentor(C, C, 1, 0, 0)]: [msg]") else //recipient is an mentor but sender is not - C << "Reply PM from-[key_name_mentor(src, C, 1, 0, show_char)]: [msg]" - src << "Mentor PM to-[key_name_mentor(C, C, 1, 0, 0)]: [msg]" + to_chat(C, "Reply PM from-[key_name_mentor(src, C, 1, 0, show_char)]: [msg]") + to_chat(src, "Mentor PM to-[key_name_mentor(C, C, 1, 0, 0)]: [msg]") else if(check_mentor()) //sender is an mentor but recipient is not. - C << "Mentor PM from-[key_name_mentor(src, C, 1, 0, 0)]: [msg]" - src << "Mentor PM to-[key_name_mentor(C, C, 1, 0, show_char)]: [msg]" + to_chat(C, "Mentor PM from-[key_name_mentor(src, C, 1, 0, 0)]: [msg]") + to_chat(src, "Mentor PM to-[key_name_mentor(C, C, 1, 0, show_char)]: [msg]") //we don't use message_Mentors here because the sender/receiver might get it too var/show_char_sender = !check_mentor_other(src) && config.mentors_mobname_only var/show_char_recip = !check_mentor_other(C) && config.mentors_mobname_only for(var/client/X in mentors) if(X.key!=key && X.key!=C.key) //check client/X is an Mentor and isn't the sender or recipient - X << "Mentor PM: [key_name_mentor(src, X, 0, 0, show_char_sender)]->[key_name_mentor(C, X, 0, 0, show_char_recip)]: \blue [msg]" //inform X + to_chat(X, "Mentor PM: [key_name_mentor(src, X, 0, 0, show_char_sender)]->[key_name_mentor(C, X, 0, 0, show_char_recip)]: \blue [msg]") //inform X for(var/client/A in admins) if(A.key!=key && A.key!=C.key) //check client/A is an Mentor and isn't the sender or recipient - A << "Mentor PM: [key_name_mentor(src, A, 0, 0, show_char_sender)]->[key_name_mentor(C, A, 0, 0, show_char_recip)]: \blue [msg]" //inform A \ No newline at end of file + to_chat(A, "Mentor PM: [key_name_mentor(src, A, 0, 0, show_char_sender)]->[key_name_mentor(C, A, 0, 0, show_char_recip)]: \blue [msg]") //inform A \ No newline at end of file diff --git a/code/modules/mentor/verbs/mentorsay.dm b/code/modules/mentor/verbs/mentorsay.dm index 026f8f49fa..9192e1b9ba 100644 --- a/code/modules/mentor/verbs/mentorsay.dm +++ b/code/modules/mentor/verbs/mentorsay.dm @@ -13,10 +13,10 @@ if(check_rights(R_ADMIN,0)) msg = "MENTOR: [key_name(src, 0, 0)]: [msg]" - mentors << msg - admins << msg + to_chat(mentors, msg) + to_chat(admins, msg) else msg = "MENTOR: [key_name(src, 0, 0)]: [msg]" - mentors << msg - admins << msg + to_chat(mentors, msg) + to_chat(admins, msg) diff --git a/code/modules/mining/abandoned_crates.dm b/code/modules/mining/abandoned_crates.dm index 9d0b804cd3..ff61e44206 100644 --- a/code/modules/mining/abandoned_crates.dm +++ b/code/modules/mining/abandoned_crates.dm @@ -42,7 +42,7 @@ new /obj/item/weapon/ore/diamond(src) if(21 to 25) for(var/i in 1 to 5) - new /obj/item/weapon/poster/contraband(src) + new /obj/item/weapon/poster/random_contraband(src) if(26 to 30) for(var/i in 1 to 3) new /obj/item/weapon/reagent_containers/glass/beaker/noreact(src) @@ -154,7 +154,7 @@ /obj/structure/closet/crate/secure/loot/attack_hand(mob/user) if(locked) - user << "The crate is locked with a Deca-code lock." + to_chat(user, "The crate is locked with a Deca-code lock.") var/input = input(usr, "Enter [codelen] digits. All digits must be unique.", "Deca-Code Lock", "") as text if(user.canUseTopic(src, 1)) var/list/sanitised = list() @@ -166,14 +166,14 @@ if(sanitised[i] == sanitised[j]) sanitycheck = null //if a digit is repeated, reject the input if (input == code) - user << "The crate unlocks!" + to_chat(user, "The crate unlocks!") locked = 0 cut_overlays() add_overlay("securecrateg") else if (input == null || sanitycheck == null || length(input) != codelen) - user << "You leave the crate alone." + to_chat(user, "You leave the crate alone.") else - user << "A red light flashes." + to_chat(user, "A red light flashes.") lastattempt = input attempts-- if(attempts == 0) @@ -192,11 +192,11 @@ boom(user) return else if(istype(W, /obj/item/device/multitool)) - user << "DECA-CODE LOCK REPORT:" + to_chat(user, "DECA-CODE LOCK REPORT:") if(attempts == 1) - user << "* Anti-Tamper Bomb will activate on next failed access attempt." + to_chat(user, "* Anti-Tamper Bomb will activate on next failed access attempt.") else - user << "* Anti-Tamper Bomb will activate after [src.attempts] failed access attempts." + to_chat(user, "* Anti-Tamper Bomb will activate after [src.attempts] failed access attempts.") if(lastattempt != null) var/list/guess = list() var/list/answer = list() @@ -213,7 +213,7 @@ ++bulls --cows - user << "Last code attempt, [lastattempt], had [bulls] correct digits at correct positions and [cows] correct digits at incorrect positions." + to_chat(user, "Last code attempt, [lastattempt], had [bulls] correct digits at correct positions and [cows] correct digits at incorrect positions.") return return ..() diff --git a/code/modules/mining/aux_base.dm b/code/modules/mining/aux_base.dm index 3b7ef0674a..40d168d6ba 100644 --- a/code/modules/mining/aux_base.dm +++ b/code/modules/mining/aux_base.dm @@ -19,7 +19,7 @@ interface with the mining shuttle at the landing site if a mobile beacon is also var/launch_warning = TRUE var/list/turrets = list() //List of connected turrets - req_one_access = list(access_cargo, access_construction, access_heads) + req_one_access = list(access_cargo, access_construction, access_heads, access_research) var/possible_destinations clockwork = TRUE var/obj/item/device/gps/internal/base/locator @@ -82,12 +82,12 @@ interface with the mining shuttle at the landing site if a mobile beacon is also usr.set_machine(src) add_fingerprint(usr) if(!allowed(usr)) - usr << "Access denied." + to_chat(usr, "Access denied.") return if(href_list["move"]) if(z != ZLEVEL_STATION && shuttleId == "colony_drop") - usr << "You can't move the base again!" + to_chat(usr, "You can't move the base again!") return var/shuttle_error = SSshuttle.moveShuttle(shuttleId, href_list["move"], 1) if(launch_warning) @@ -104,11 +104,11 @@ interface with the mining shuttle at the landing site if a mobile beacon is also var/turf/LZ = safepick(Z_TURFS(ZLEVEL_MINING)) //Pick a random mining Z-level turf if(!istype(LZ, /turf/closed/mineral) && !istype(LZ, /turf/open/floor/plating/asteroid)) //Find a suitable mining turf. Reduces chance of landing in a bad area - usr << "Landing zone scan failed. Please try again." + to_chat(usr, "Landing zone scan failed. Please try again.") updateUsrDialog() return if(set_landing_zone(LZ, usr) != ZONE_SET) - usr << "Landing zone unsuitable. Please recalculate." + to_chat(usr, "Landing zone unsuitable. Please recalculate.") updateUsrDialog() return @@ -143,7 +143,7 @@ interface with the mining shuttle at the landing site if a mobile beacon is also var/obj/docking_port/mobile/auxillary_base/base_dock = locate(/obj/docking_port/mobile/auxillary_base) in SSshuttle.mobile if(!base_dock) //Not all maps have an Aux base. This object is useless in that case. - user << "This station is not equipped with an auxillary base. Please contact your Nanotrasen contractor." + to_chat(user, "This station is not equipped with an auxillary base. Please contact your Nanotrasen contractor.") return if(!no_restrictions) if(T.z != ZLEVEL_MINING) @@ -171,7 +171,7 @@ interface with the mining shuttle at the landing site if a mobile beacon is also //Serves as a nice mechanic to people get ready for the launch. minor_announce("Auxiliary base landing zone coordinates locked in for [A]. Launch command now available!") - user << "Landing zone set." + to_chat(user, "Landing zone set.") return ZONE_SET @@ -190,7 +190,7 @@ interface with the mining shuttle at the landing site if a mobile beacon is also if(setting) return - user << "You begin setting the landing zone parameters..." + to_chat(user, "You begin setting the landing zone parameters...") setting = TRUE if(!do_after(user, 50, target = user)) //You get a few seconds to cancel if you do not want to drop there. setting = FALSE @@ -204,14 +204,14 @@ interface with the mining shuttle at the landing site if a mobile beacon is also AB = A break if(!AB) - user << "No auxillary base console detected." + to_chat(user, "No auxillary base console detected.") return switch(AB.set_landing_zone(T, user, no_restrictions)) if(BAD_ZLEVEL) - user << "This uplink can only be used in a designed mining zone." + to_chat(user, "This uplink can only be used in a designed mining zone.") if(BAD_AREA) - user << "Unable to acquire a targeting lock. Find an area clear of stuctures or entirely within one." + to_chat(user, "Unable to acquire a targeting lock. Find an area clear of stuctures or entirely within one.") if(ZONE_SET) qdel(src) @@ -258,11 +258,11 @@ obj/docking_port/stationary/public_mining_dock/onShuttleMove() /obj/structure/mining_shuttle_beacon/attack_hand(mob/user) if(anchored) - user << "Landing zone already set." + to_chat(user, "Landing zone already set.") return if(anti_spam_cd) - user << "[src] is currently recalibrating. Please wait." + to_chat(user, "[src] is currently recalibrating. Please wait.") return anti_spam_cd = 1 @@ -271,16 +271,18 @@ obj/docking_port/stationary/public_mining_dock/onShuttleMove() var/turf/landing_spot = get_turf(src) if(landing_spot.z != ZLEVEL_MINING) - user << "This device is only to be used in a mining zone." + to_chat(user, "This device is only to be used in a mining zone.") + return + var/obj/machinery/computer/auxillary_base/aux_base_console + for(var/obj/machinery/computer/auxillary_base/ABC in machines) + if(get_dist(landing_spot, ABC) <= console_range) + aux_base_console = ABC + break + if(!aux_base_console) //Needs to be near the base to serve as its dock and configure it to control the mining shuttle. + to_chat(user, "The auxillary base's console must be within [console_range] meters in order to interface.") return - var/obj/machinery/computer/auxillary_base/aux_base_console = locate(/obj/machinery/computer/auxillary_base) in machines - if(!aux_base_console || get_dist(landing_spot, aux_base_console) > console_range) - user << "The auxillary base's console must be within [console_range] meters in order to interface." - return //Needs to be near the base to serve as its dock and configure it to control the mining shuttle. //Mining shuttles may not be created equal, so we find the map's shuttle dock and size accordingly. - - for(var/S in SSshuttle.stationary) var/obj/docking_port/stationary/SM = S //SM is declared outside so it can be checked for null if(SM.id == "mining_home" || SM.id == "mining_away") @@ -300,7 +302,7 @@ obj/docking_port/stationary/public_mining_dock/onShuttleMove() break if(!Mport) - user << "This station is not equipped with an approprite mining shuttle. Please contact Nanotrasen Support." + to_chat(user, "This station is not equipped with an approprite mining shuttle. Please contact Nanotrasen Support.") return var/obj/docking_port/mobile/mining_shuttle @@ -314,26 +316,26 @@ obj/docking_port/stationary/public_mining_dock/onShuttleMove() break if(!mining_shuttle) //Not having a mining shuttle is a map issue - user << "No mining shuttle signal detected. Please contact Nanotrasen Support." + to_chat(user, "No mining shuttle signal detected. Please contact Nanotrasen Support.") SSshuttle.stationary.Remove(Mport) qdel(Mport) return for(var/L in landing_turfs) //You land NEAR the base, not IN it. if(istype(get_area(L), /area/shuttle/auxillary_base)) - user << "The mining shuttle must not land within the mining base itself." + to_chat(user, "The mining shuttle must not land within the mining base itself.") SSshuttle.stationary.Remove(Mport) qdel(Mport) return if(!mining_shuttle.canDock(Mport)) - user << "Unable to secure a valid docking zone. Please try again in an open area near, but not within the aux. mining base." + to_chat(user, "Unable to secure a valid docking zone. Please try again in an open area near, but not within the aux. mining base.") SSshuttle.stationary.Remove(Mport) qdel(Mport) return aux_base_console.set_mining_mode() //Lets the colony park the shuttle there, now that it has a dock. - user << "Mining shuttle calibration successful! Shuttle interface available at base console." + to_chat(user, "Mining shuttle calibration successful! Shuttle interface available at base console.") anchored = 1 //Locks in place to mark the landing zone. playsound(loc, 'sound/machines/ping.ogg', 50, 0) diff --git a/code/modules/mining/aux_base_camera.dm b/code/modules/mining/aux_base_camera.dm index 596265b5b2..cb4519d2db 100644 --- a/code/modules/mining/aux_base_camera.dm +++ b/code/modules/mining/aux_base_camera.dm @@ -6,9 +6,9 @@ icon_state = "construction_drone" var/area/starting_area -mob/camera/aiEye/remote/base_construction/New(loc) - starting_area = get_area(loc) +/mob/camera/aiEye/remote/base_construction/Initialize() ..() + starting_area = get_area(loc) /mob/camera/aiEye/remote/base_construction/setLoc(var/t) var/area/curr_area = get_area(t) @@ -24,15 +24,7 @@ mob/camera/aiEye/remote/base_construction/New(loc) name = "internal RCD" max_matter = 600 //Bigger container and faster speeds due to being specialized and stationary. no_ammo_message = "Internal matter exhausted. Please add additional materials." - walldelay = 10 - grilledelay = 5 - windowdelay = 5 - airlockdelay = 20 - decongirderdelay = 10 - deconwalldelay = 20 - deconfloordelay = 30 - deconwindowdelay = 20 - deconairlockdelay = 20 + delay_mod = 0.5 /obj/machinery/computer/camera_advanced/base_construction name = "base contruction console" @@ -54,6 +46,8 @@ mob/camera/aiEye/remote/base_construction/New(loc) icon_screen = "mining" icon_keyboard = "rd_key" + light_color = LIGHT_COLOR_PINK + /obj/machinery/computer/camera_advanced/base_construction/New() ..() RCD = new /obj/item/weapon/rcd/internal(src) @@ -68,11 +62,13 @@ mob/camera/aiEye/remote/base_construction/New(loc) /obj/machinery/computer/camera_advanced/base_construction/CreateEye() var/spawn_spot - if(!found_aux_console) - found_aux_console = locate(/obj/machinery/computer/auxillary_base) in machines + for(var/obj/machinery/computer/auxillary_base/ABC in machines) + if(istype(get_area(ABC), /area/shuttle/auxillary_base)) + found_aux_console = ABC + break - if(found_aux_console) - spawn_spot = found_aux_console + if(found_aux_console) + spawn_spot = found_aux_console else spawn_spot = src @@ -129,12 +125,12 @@ mob/camera/aiEye/remote/base_construction/New(loc) var/area/build_area = get_area(build_target) if(!istype(build_area, /area/shuttle/auxillary_base)) - owner << "You can only build within the mining base!" + to_chat(owner, "You can only build within the mining base!") return FALSE if(build_target.z != ZLEVEL_STATION) - owner << "The mining base has launched and can no longer be modified." + to_chat(owner, "The mining base has launched and can no longer be modified.") return FALSE return TRUE @@ -200,7 +196,7 @@ mob/camera/aiEye/remote/base_construction/New(loc) var/list/buildlist = list("Walls and Floors" = 1,"Airlocks" = 2,"Deconstruction" = 3,"Windows and Grilles" = 4) var/buildmode = input("Set construction mode.", "Base Console", null) in buildlist B.RCD.mode = buildlist[buildmode] - owner << "Build mode is now [buildmode]." + to_chat(owner, "Build mode is now [buildmode].") /datum/action/innate/aux_base/airlock_type name = "Select Airlock Type" @@ -233,19 +229,19 @@ datum/action/innate/aux_base/place_fan/Activate() var/turf/fan_turf = get_turf(remote_eye) if(!B.fans_remaining) - owner << "[B] is out of fans!" + to_chat(owner, "[B] is out of fans!") return if(!check_spot()) return if(fan_turf.density) - owner << "Fans may only be placed on a floor." + to_chat(owner, "Fans may only be placed on a floor.") return new /obj/structure/fans/tiny(fan_turf) B.fans_remaining-- - owner << "Tiny fan placed. [B.fans_remaining] remaining." + to_chat(owner, "Tiny fan placed. [B.fans_remaining] remaining.") playsound(fan_turf, 'sound/machines/click.ogg', 50, 1) datum/action/innate/aux_base/install_turret @@ -260,13 +256,13 @@ datum/action/innate/aux_base/install_turret/Activate() return if(!B.turret_stock) - owner << "Unable to construct additional turrets." + to_chat(owner, "Unable to construct additional turrets.") return var/turf/turret_turf = get_turf(remote_eye) if(is_blocked_turf(turret_turf)) - owner << "Location is obtructed by something. Please clear the location and try again." + to_chat(owner, "Location is obtructed by something. Please clear the location and try again.") return var/obj/machinery/porta_turret/aux_base/T = new /obj/machinery/porta_turret/aux_base(turret_turf) @@ -274,5 +270,5 @@ datum/action/innate/aux_base/install_turret/Activate() B.found_aux_console.turrets += T //Add new turret to the console's control B.turret_stock-- - owner << "Turret installation complete!" + to_chat(owner, "Turret installation complete!") playsound(turret_turf, 'sound/items/drill_use.ogg', 65, 1) \ No newline at end of file diff --git a/code/modules/mining/equipment.dm b/code/modules/mining/equipment.dm index dcfff7d841..26742954ee 100644 --- a/code/modules/mining/equipment.dm +++ b/code/modules/mining/equipment.dm @@ -74,7 +74,7 @@ /obj/item/device/wormhole_jaunter/proc/turf_check(mob/user) var/turf/device_turf = get_turf(user) if(!device_turf||device_turf.z==2||device_turf.z>=7) - user << "You're having difficulties getting the [src.name] to work." + to_chat(user, "You're having difficulties getting the [src.name] to work.") return FALSE return TRUE @@ -104,7 +104,7 @@ var/list/L = get_destinations(user) if(!L.len) - user << "The [src.name] found no beacons in the world to anchor a wormhole to." + to_chat(user, "The [src.name] found no beacons in the world to anchor a wormhole to.") return var/chosen_beacon = pick(L) var/obj/effect/portal/wormhole/jaunt_tunnel/J = new /obj/effect/portal/wormhole/jaunt_tunnel(get_turf(src), chosen_beacon, lifespan=100) @@ -129,11 +129,11 @@ /obj/item/device/wormhole_jaunter/proc/chasm_react(mob/user) if(user.get_item_by_slot(slot_belt) == src) - user << "Your [src] activates, saving you from the chasm!" + to_chat(user, "Your [src] activates, saving you from the chasm!") feedback_add_details("jaunter","C") // chasm automatic activation activate(user) else - user << "The [src] is not attached to your belt, preventing it from saving you from the chasm. RIP." + to_chat(user, "The [src] is not attached to your belt, preventing it from saving you from the chasm. RIP.") /obj/effect/portal/wormhole/jaunt_tunnel @@ -203,10 +203,10 @@ /obj/item/weapon/resonator/attack_self(mob/user) if(burst_time == 50) burst_time = 30 - user << "You set the resonator's fields to detonate after 3 seconds." + to_chat(user, "You set the resonator's fields to detonate after 3 seconds.") else burst_time = 50 - user << "You set the resonator's fields to detonate after 5 seconds." + to_chat(user, "You set the resonator's fields to detonate after 5 seconds.") /obj/item/weapon/resonator/afterattack(atom/target, mob/user, proximity_flag) if(proximity_flag) @@ -262,7 +262,7 @@ for(var/mob/living/L in T) if(creator) add_logs(creator, L, "used a resonator field on", "resonator") - L << "[src] ruptured with you in it!" + to_chat(L, "[src] ruptured with you in it!") L.apply_damage(resonance_damage, BRUTE) qdel(src) @@ -303,7 +303,7 @@ if(istype(target, /mob/living/simple_animal)) var/mob/living/simple_animal/M = target if(M.sentience_type != revive_type) - user << "[src] does not work on this sort of creature." + to_chat(user, "[src] does not work on this sort of creature.") return if(M.stat == DEAD) M.faction = list("neutral") @@ -325,10 +325,10 @@ icon_state = "lazarus_empty" return else - user << "[src] is only effective on the dead." + to_chat(user, "[src] is only effective on the dead.") return else - user << "[src] is only effective on lesser beings." + to_chat(user, "[src] is only effective on lesser beings.") return /obj/item/weapon/lazarus_injector/emp_act() @@ -338,9 +338,9 @@ /obj/item/weapon/lazarus_injector/examine(mob/user) ..() if(!loaded) - user << "[src] is empty." + to_chat(user, "[src] is empty.") if(malfunctioning) - user << "The display on [src] seems to be flickering." + to_chat(user, "The display on [src] seems to be flickering.") /**********************Mining Scanners**********************/ @@ -480,11 +480,11 @@ /obj/item/weapon/hivelordstabilizer/afterattack(obj/item/organ/M, mob/user) var/obj/item/organ/hivelord_core/C = M if(!istype(C, /obj/item/organ/hivelord_core)) - user << "The stabilizer only works on certain types of monster organs, generally regenerative in nature." + to_chat(user, "The stabilizer only works on certain types of monster organs, generally regenerative in nature.") return ..() C.preserved() - user << "You inject the [M] with the stabilizer. It will no longer go inert." + to_chat(user, "You inject the [M] with the stabilizer. It will no longer go inert.") qdel(src) /*********************Mining Hammer****************/ @@ -586,11 +586,3 @@ charged = 1 icon_state = "mining_hammer1" playsound(src.loc, 'sound/weapons/kenetic_reload.ogg', 60, 1) - -/obj/item/weapon/twohanded/required/mining_hammer/pickup(mob/user) - ..() - user.AddLuminosity(luminosity) - -/obj/item/weapon/twohanded/required/mining_hammer/dropped(mob/user) - ..() - user.AddLuminosity(-luminosity) diff --git a/code/modules/mining/fulton.dm b/code/modules/mining/fulton.dm index 2ea3d74d50..c919d829c4 100644 --- a/code/modules/mining/fulton.dm +++ b/code/modules/mining/fulton.dm @@ -24,7 +24,7 @@ var/list/total_extraction_beacons = list() possible_beacons += EP if(!possible_beacons.len) - user << "There are no extraction beacons in existence!" + to_chat(user, "There are no extraction beacons in existence!") return else @@ -38,12 +38,12 @@ var/list/total_extraction_beacons = list() /obj/item/weapon/extraction_pack/afterattack(atom/movable/A, mob/living/carbon/human/user, flag, params) if(!beacon) - user << "[src] is not linked to a beacon, and cannot be used." + to_chat(user, "[src] is not linked to a beacon, and cannot be used.") return if(!can_use_indoors) var/area/area = get_area(A) if(!area.outdoors) - user << "[src] can only be used on things that are outdoors!" + to_chat(user, "[src] can only be used on things that are outdoors!") return if(!flag) return @@ -51,15 +51,15 @@ var/list/total_extraction_beacons = list() return else if(!safe_for_living_creatures && check_for_living_mobs(A)) - user << "[src] is not safe for use with living creatures, they wouldn't survive the trip back!" + to_chat(user, "[src] is not safe for use with living creatures, they wouldn't survive the trip back!") return if(A.loc == user) // no extracting stuff you're holding return if(A.anchored) return - user << "You start attaching the pack to [A]..." + to_chat(user, "You start attaching the pack to [A]...") if(do_after(user,50,target=A)) - user << "You attach the pack to [A] and activate it." + to_chat(user, "You attach the pack to [A] and activate it.") if(loc == user || istype(user.back, /obj/item/weapon/storage/backpack)) var/obj/item/weapon/storage/backpack/B = user.back if(B.can_be_inserted(src,stop_messages = 1)) diff --git a/code/modules/mining/laborcamp/laborshuttle.dm b/code/modules/mining/laborcamp/laborshuttle.dm index fac4dc3745..38788615de 100644 --- a/code/modules/mining/laborcamp/laborshuttle.dm +++ b/code/modules/mining/laborcamp/laborshuttle.dm @@ -18,10 +18,10 @@ if(href_list["move"]) var/obj/docking_port/mobile/M = SSshuttle.getShuttle("laborcamp") if(!M) - usr << "Cannot locate shuttle!" + to_chat(usr, "Cannot locate shuttle!") return 0 var/obj/docking_port/stationary/S = M.get_docked() if(S && S.name == "laborcamp_away") - usr << "Shuttle is already at the outpost!" + to_chat(usr, "Shuttle is already at the outpost!") return 0 ..() \ No newline at end of file diff --git a/code/modules/mining/laborcamp/laborstacker.dm b/code/modules/mining/laborcamp/laborstacker.dm index 2d54d7376d..fff2f7672e 100644 --- a/code/modules/mining/laborcamp/laborstacker.dm +++ b/code/modules/mining/laborcamp/laborstacker.dm @@ -28,10 +28,10 @@ return I.forceMove(src) inserted_id = I - user << "You insert [I]." + to_chat(user, "You insert [I].") return else - user << "There's an ID inserted already." + to_chat(user, "There's an ID inserted already.") return ..() /obj/machinery/mineral/labor_claim_console/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ @@ -90,23 +90,23 @@ if("claim_points") inserted_id.points += stacking_machine.points stacking_machine.points = 0 - usr << "Points transferred." + to_chat(usr, "Points transferred.") if("move_shuttle") if(!alone_in_area(get_area(src), usr)) - usr << "Prisoners are only allowed to be released while alone." + to_chat(usr, "Prisoners are only allowed to be released while alone.") else switch(SSshuttle.moveShuttle("laborcamp","laborcamp_home")) if(1) - usr << "Shuttle not found" + to_chat(usr, "Shuttle not found") if(2) - usr << "Shuttle already at station" + to_chat(usr, "Shuttle already at station") if(3) - usr << "No permission to dock could be granted." + to_chat(usr, "No permission to dock could be granted.") else if(!emagged) Radio.set_frequency(SEC_FREQ) Radio.talk_into(src, "[inserted_id.registered_name] has returned to the station. Minerals and Prisoner ID card ready for retrieval.", SEC_FREQ) - usr << "Shuttle received message and will be sent shortly." + to_chat(usr, "Shuttle received message and will be sent shortly.") /obj/machinery/mineral/labor_claim_console/proc/check_auth() if(emagged) @@ -123,7 +123,7 @@ /obj/machinery/mineral/labor_claim_console/emag_act(mob/user) if(!emagged) emagged = 1 - user << "PZZTTPFFFT" + to_chat(user, "PZZTTPFFFT") /**********************Prisoner Collection Unit**************************/ @@ -158,11 +158,11 @@ if(istype(I, /obj/item/weapon/card/id)) if(istype(I, /obj/item/weapon/card/id/prisoner)) var/obj/item/weapon/card/id/prisoner/prisoner_id = I - user << "ID: [prisoner_id.registered_name]" - user << "Points Collected:[prisoner_id.points]" - user << "Point Quota: [prisoner_id.goal]" - user << "Collect points by bringing smelted minerals to the Labor Shuttle stacking machine. Reach your quota to earn your release." + to_chat(user, "ID: [prisoner_id.registered_name]") + to_chat(user, "Points Collected:[prisoner_id.points]") + to_chat(user, "Point Quota: [prisoner_id.goal]") + to_chat(user, "Collect points by bringing smelted minerals to the Labor Shuttle stacking machine. Reach your quota to earn your release.") else - user << "Error: Invalid ID" + to_chat(user, "Error: Invalid ID") else return ..() diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm index 9e33669589..4e428fcafe 100644 --- a/code/modules/mining/lavaland/ash_flora.dm +++ b/code/modules/mining/lavaland/ash_flora.dm @@ -39,7 +39,7 @@ msg = harvest_message_low else if(rand_harvested == harvest_amount_high) msg = harvest_message_high - user << "[msg]" + to_chat(user, "[msg]") for(var/i in 1 to rand_harvested) new harvest(get_turf(src)) icon_state = "[base_icon]p" diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index 2e8b6f7c24..5b21e30de6 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -80,24 +80,24 @@ /obj/item/device/wisp_lantern/attack_self(mob/user) if(!wisp) - user << "The wisp has gone missing!" + to_chat(user, "The wisp has gone missing!") return if(wisp.loc == src) - user << "You release the wisp. It begins to bob around your head." + to_chat(user, "You release the wisp. It begins to bob around your head.") user.sight |= SEE_MOBS icon_state = "lantern" wisp.orbit(user, 20) feedback_add_details("wisp_lantern","F") // freed else - user << "You return the wisp to the lantern." + to_chat(user, "You return the wisp to the lantern.") if(wisp.orbiting) var/atom/A = wisp.orbiting.orbiting if(isliving(A)) var/mob/living/M = A M.sight &= ~SEE_MOBS - M << "Your vision returns to normal." + to_chat(M, "Your vision returns to normal.") wisp.stop_orbit() wisp.loc = src @@ -137,7 +137,7 @@ /obj/item/device/warp_cube/attack_self(mob/user) if(!linked) - user << "[src] fizzles uselessly." + to_chat(user, "[src] fizzles uselessly.") return new /obj/effect/particle_effect/smoke(user.loc) user.forceMove(get_turf(linked)) @@ -389,7 +389,7 @@ icon_state = "ship_bottle" /obj/item/ship_in_a_bottle/attack_self(mob/user) - user << "You're not sure how they get the ships in these things, but you're pretty sure you know how to get it out." + to_chat(user, "You're not sure how they get the ships in these things, but you're pretty sure you know how to get it out.") playsound(user.loc, 'sound/effects/Glassbr1.ogg', 100, 1) new /obj/vehicle/lavaboat/dragon(get_turf(src)) qdel(src) @@ -430,10 +430,10 @@ if(iscarbon(M) && M.stat != DEAD) if(!ishumanbasic(M) || reac_volume < 5) // implying xenohumans are holy if(method == INGEST && show_message) - M << "You feel nothing but a terrible aftertaste." + to_chat(M, "You feel nothing but a terrible aftertaste.") return ..() - M << "A terrible pain travels down your back as wings burst out!" + to_chat(M, "A terrible pain travels down your back as wings burst out!") M.set_species(/datum/species/angel) playsound(M.loc, 'sound/items/poster_ripped.ogg', 50, 1, -1) M.adjustBruteLoss(20) @@ -490,7 +490,7 @@ /obj/item/weapon/melee/ghost_sword/Destroy() for(var/mob/dead/observer/G in spirits) - G.invisibility = initial(G.invisibility) + G.invisibility = observer_default_invisibility spirits.Cut() STOP_PROCESSING(SSobj, src) poi_list -= src @@ -498,9 +498,9 @@ /obj/item/weapon/melee/ghost_sword/attack_self(mob/user) if(summon_cooldown > world.time) - user << "You just recently called out for aid. You don't want to annoy the spirits." + to_chat(user, "You just recently called out for aid. You don't want to annoy the spirits.") return - user << "You call out for aid, attempting to summon spirits to your side." + to_chat(user, "You call out for aid, attempting to summon spirits to your side.") notify_ghosts("[user] is raising [user.p_their()] [src], calling for your help!", enter_link="(Click to help)", @@ -537,7 +537,7 @@ current_spirits |= G for(var/mob/dead/observer/G in spirits - current_spirits) - G.invisibility = initial(G.invisibility) + G.invisibility = observer_default_invisibility spirits = current_spirits @@ -574,20 +574,20 @@ switch(random) if(1) - user << "Your appearence morphs to that of a very small humanoid ash dragon! You get to look like a freak without the cool abilities." + to_chat(user, "Your appearence morphs to that of a very small humanoid ash dragon! You get to look like a freak without the cool abilities.") H.dna.features = list("mcolor" = "A02720", "tail_lizard" = "Dark Tiger", "tail_human" = "None", "snout" = "Sharp", "horns" = "Curled", "ears" = "None", "wings" = "None", "frills" = "None", "spines" = "Long", "body_markings" = "Dark Tiger Body", "legs" = "Digitigrade Legs") H.eye_color = "fee5a3" H.set_species(/datum/species/lizard) if(2) - user << "Your flesh begins to melt! Miraculously, you seem fine otherwise." + to_chat(user, "Your flesh begins to melt! Miraculously, you seem fine otherwise.") H.set_species(/datum/species/skeleton) if(3) - user << "Power courses through you! You can now shift your form at will." + to_chat(user, "Power courses through you! You can now shift your form at will.") if(user.mind) var/obj/effect/proc_holder/spell/targeted/shapeshift/dragon/D = new user.mind.AddSpell(D) if(4) - user << "You feel like you could walk straight through lava now." + to_chat(user, "You feel like you could walk straight through lava now.") H.weather_immunities |= "lava" playsound(user.loc,'sound/items/drink.ogg', rand(10,50), 1) @@ -692,7 +692,7 @@ spawn() var/obj/effect/mine/pickup/bloodbath/B = new(H) B.mineEffect(H) - user << "You shatter the bottle!" + to_chat(user, "You shatter the bottle!") playsound(user.loc, 'sound/effects/Glassbr1.ogg', 100, 1) qdel(src) @@ -725,11 +725,11 @@ var/choice = input(user,"Who do you want dead?","Choose Your Victim") as null|anything in player_list if(!(isliving(choice))) - user << "[choice] is already dead!" + to_chat(user, "[choice] is already dead!") used = FALSE return if(choice == user) - user << "You feel like writing your own name into a cursed death warrant would be unwise." + to_chat(user, "You feel like writing your own name into a cursed death warrant would be unwise.") used = FALSE return else @@ -741,7 +741,7 @@ var/datum/objective/survive/survive = new survive.owner = L.mind L.mind.objectives += survive - L << "You've been marked for death! Don't let the demons get you!" + to_chat(L, "You've been marked for death! Don't let the demons get you!") L.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) spawn() var/obj/effect/mine/pickup/bloodbath/B = new(L) @@ -750,7 +750,7 @@ for(var/mob/living/carbon/human/H in player_list) if(H == L) continue - H << "You have an overwhelming desire to kill [L]. [L.p_they(TRUE)] [L.p_have()] been marked red! Go kill [L.p_them()]!" + to_chat(H, "You have an overwhelming desire to kill [L]. [L.p_they(TRUE)] [L.p_have()] been marked red! Go kill [L.p_them()]!") H.put_in_hands_or_del(new /obj/item/weapon/kitchen/knife/butcher(H)) qdel(src) @@ -783,7 +783,7 @@ /obj/item/weapon/hierophant_club/examine(mob/user) ..() - user << "The[beacon ? " beacon is not currently":"re is a beacon"] attached." + to_chat(user, "The[beacon ? " beacon is not currently":"re is a beacon"] attached.") /obj/item/weapon/hierophant_club/afterattack(atom/target, mob/user, proximity_flag, click_parameters) ..() @@ -809,7 +809,7 @@ INVOKE_ASYNC(src, .proc/cardinal_blasts, T, user) //otherwise, just do cardinal blast add_logs(user, target, "fired cardinal blast at", src) else - user << "That target is out of range!" //too far away + to_chat(user, "That target is out of range!" ) timer = world.time INVOKE_ASYNC(src, .proc/prepare_icon_update) @@ -842,12 +842,12 @@ /obj/item/weapon/hierophant_club/ui_action_click(mob/user, action) if(istype(action, /datum/action/item_action/toggle_unfriendly_fire)) //toggle friendly fire... friendly_fire_check = !friendly_fire_check - user << "You toggle friendly fire [friendly_fire_check ? "off":"on"]!" + to_chat(user, "You toggle friendly fire [friendly_fire_check ? "off":"on"]!") return if(timer > world.time) return if(!user.is_holding(src)) //you need to hold the staff to teleport - user << "You need to hold the club in your hands to [beacon ? "teleport with it":"detach the beacon"]!" + to_chat(user, "You need to hold the club in your hands to [beacon ? "teleport with it":"detach the beacon"]!") return if(!beacon || QDELETED(beacon)) if(isturf(user.loc)) @@ -868,16 +868,16 @@ timer = world.time INVOKE_ASYNC(src, .proc/prepare_icon_update) else - user << "You need to be on solid ground to detach the beacon!" + to_chat(user, "You need to be on solid ground to detach the beacon!") return if(get_dist(user, beacon) <= 2) //beacon too close abort - user << "You are too close to the beacon to teleport to it!" + to_chat(user, "You are too close to the beacon to teleport to it!") return if(is_blocked_turf(get_turf(beacon), TRUE)) - user << "The beacon is blocked by something, preventing teleportation!" + to_chat(user, "The beacon is blocked by something, preventing teleportation!") return if(!isturf(user.loc)) - user << "You don't have enough space to teleport from here!" + to_chat(user, "You don't have enough space to teleport from here!") return teleporting = TRUE //start channel user.update_action_buttons_icon() @@ -892,7 +892,7 @@ var/turf/source = get_turf(user) if(is_blocked_turf(T, TRUE)) teleporting = FALSE - user << "The beacon is blocked by something, preventing teleportation!" + to_chat(user, "The beacon is blocked by something, preventing teleportation!") user.update_action_buttons_icon() timer = world.time INVOKE_ASYNC(src, .proc/prepare_icon_update) @@ -913,7 +913,7 @@ return if(is_blocked_turf(T, TRUE)) teleporting = FALSE - user << "The beacon is blocked by something, preventing teleportation!" + to_chat(user, "The beacon is blocked by something, preventing teleportation!") user.update_action_buttons_icon() timer = world.time INVOKE_ASYNC(src, .proc/prepare_icon_update) diff --git a/code/modules/mining/lavaland/ruins/gym.dm b/code/modules/mining/lavaland/ruins/gym.dm index 21ccb9344c..c390851b1b 100644 --- a/code/modules/mining/lavaland/ruins/gym.dm +++ b/code/modules/mining/lavaland/ruins/gym.dm @@ -22,7 +22,7 @@ /obj/structure/stacklifter/attack_hand(mob/user as mob) if(in_use) - user << "It's already in use - wait a bit." + to_chat(user, "It's already in use - wait a bit.") return else in_use = 1 @@ -48,7 +48,7 @@ user.pixel_y = 0 var/finishmessage = pick("You feel stronger!","You feel like you can take on the world!","You feel robust!","You feel indestructible!") icon_state = "fitnesslifter" - user << finishmessage + to_chat(user, finishmessage) /obj/structure/weightlifter name = "Weight Machine" @@ -60,7 +60,7 @@ /obj/structure/weightlifter/attack_hand(mob/user as mob) if(in_use) - user << "It's already in use - wait a bit." + to_chat(user, "It's already in use - wait a bit.") return else in_use = 1 @@ -94,4 +94,4 @@ var/finishmessage = pick("You feel stronger!","You feel like you can take on the world!","You feel robust!","You feel indestructible!") icon_state = "fitnessweight" cut_overlay(W) - user << "[finishmessage]" \ No newline at end of file + to_chat(user, "[finishmessage]") \ No newline at end of file diff --git a/code/modules/mining/machine_redemption.dm b/code/modules/mining/machine_redemption.dm index 61ffa79a00..49b5a7a771 100644 --- a/code/modules/mining/machine_redemption.dm +++ b/code/modules/mining/machine_redemption.dm @@ -11,20 +11,23 @@ input_dir = NORTH output_dir = SOUTH req_access = list(access_mineral_storeroom) + var/req_access_reclaim = access_mining_station var/stk_types = list() var/stk_amt = list() - var/stack_list[0] //Key: Type. Value: Instance of type. + var/stack_list = list() //Key: Type. Value: Instance of type. var/obj/item/weapon/card/id/inserted_id var/points = 0 var/ore_pickup_rate = 15 var/sheet_per_ore = 1 var/point_upgrade = 1 - var/list/ore_values = list(("sand" = 1), ("iron" = 1), ("plasma" = 15), ("silver" = 16), ("gold" = 18), ("titanium" = 30), ("uranium" = 30), ("diamond" = 50), ("bluespace crystal" = 50), ("bananium" = 60)) + var/list/ore_values = list("sand" = 1, "iron" = 1, "plasma" = 15, "silver" = 16, "gold" = 18, "titanium" = 30, "uranium" = 30, "diamond" = 50, "bluespace crystal" = 50, "bananium" = 60) speed_process = 1 + var/message_sent = FALSE + var/list/ore_buffer = list() /obj/machinery/mineral/ore_redemption/New() ..() - var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/ore_redemption(null) + var/obj/item/weapon/circuitboard/machine/ore_redemption/B = new B.apply_default_parts(src) /obj/item/weapon/circuitboard/machine/ore_redemption @@ -55,51 +58,72 @@ /obj/machinery/mineral/ore_redemption/proc/process_sheet(obj/item/weapon/ore/O) var/obj/item/stack/sheet/processed_sheet = SmeltMineral(O) if(processed_sheet) - if(!(processed_sheet in stack_list)) //It's the first of this sheet added - var/obj/item/stack/sheet/s = new processed_sheet(src,0) + var/obj/item/stack/sheet/s + if(!stack_list[processed_sheet]) + s = new processed_sheet(src, FALSE) s.amount = 0 stack_list[processed_sheet] = s - var/obj/item/stack/sheet/storage = stack_list[processed_sheet] - storage.amount += sheet_per_ore //Stack the sheets - O.loc = null //Let the old sheet... + s = stack_list[processed_sheet] + s.amount += sheet_per_ore //Stack the sheets + ore_buffer -= O qdel(O) //... garbage collect +/obj/machinery/mineral/ore_redemption/proc/process_ores(list/ores_to_process) + var/current_amount = 0 + for(var/ore in ores_to_process) + if(current_amount >= ore_pickup_rate) + break + process_sheet(ore) + +/obj/machinery/mineral/ore_redemption/proc/send_console_message() + if(z != ZLEVEL_STATION || !LAZYLEN(stack_list)) + return + message_sent = TRUE + var/area/A = get_area(src) + var/msg = "Now available in [A]:
    " + for(var/s in stack_list) + var/obj/item/stack/sheet/sheet = stack_list[s] + msg += "[capitalize(sheet.name)]: [sheet.amount] sheets
    " + + for(var/obj/machinery/requests_console/D in allConsoles) + if(D.receive_ore_updates) + D.createmessage("Ore Redemption Machine", "New minerals available!", msg, 1, 0) + /obj/machinery/mineral/ore_redemption/process() - if(!panel_open && powered()) //If the machine is partially disassembled and/or depowered, it should not process minerals - var/turf/T = get_step(src, input_dir) - var/i = 0 - if(T) - for(var/obj/item/weapon/ore/O in T) - if (i >= ore_pickup_rate) - break - else if (!O || !O.refined_type) - continue - else - process_sheet(O) - i++ - else - var/obj/structure/ore_box/B = locate() in T - if(B) - for(var/obj/item/weapon/ore/O in B.contents) - if (i >= ore_pickup_rate) - break - else if (!O || !O.refined_type) - continue - else - process_sheet(O) - i++ - if(i > 0 && z == ZLEVEL_STATION) - var/area/orm_area = get_area(src) - var/msg = "Now available in [orm_area.map_name]:" - for(var/s in stack_list) // Making an announcement for cargo - var/obj/item/stack/sheet/mats = stack_list[s] - msg += "\n[capitalize(mats.name)]: [mats.amount] sheets" - for(var/obj/machinery/requests_console/D in allConsoles) - if(D.department == "Science" || D.department == "Robotics" || D.department == "Research Director's Desk" || D.department == "Chemistry" || D.department == "Bar") - D.createmessage("Ore Redemption Machine", "New minerals available!", msg, 1, 0) + if(panel_open || !powered()) + return + var/atom/input = get_step(src, input_dir) + var/obj/structure/ore_box/OB = locate() in input + if(OB) + input = OB + + for(var/obj/item/weapon/ore/O in input) + if(QDELETED(O)) + continue + ore_buffer |= O + O.forceMove(src) + CHECK_TICK + + if(LAZYLEN(ore_buffer)) + message_sent = FALSE + process_ores(ore_buffer) + else if(!message_sent) + send_console_message() /obj/machinery/mineral/ore_redemption/attackby(obj/item/weapon/W, mob/user, params) - if (!powered()) + if(exchange_parts(user, W)) + return + if(default_pry_open(W)) + return + if(default_unfasten_wrench(user, W)) + return + if(default_deconstruction_screwdriver(user, "ore_redemption-open", "ore_redemption", W)) + updateUsrDialog() + return + if(default_deconstruction_crowbar(W)) + return + + if(!powered()) return if(istype(W,/obj/item/weapon/card/id)) var/obj/item/weapon/card/id/I = user.get_active_held_item() @@ -110,18 +134,11 @@ inserted_id = I interact(user) return - if(exchange_parts(user, W)) - return - if(default_pry_open(W)) - return - - if(default_unfasten_wrench(user, W)) - return - if(default_deconstruction_screwdriver(user, "ore_redemption-open", "ore_redemption", W)) - updateUsrDialog() - return - if(default_deconstruction_crowbar(W)) + if(istype(W, /obj/item/device/multitool) && panel_open) + input_dir = turn(input_dir, -90) + output_dir = turn(output_dir, -90) + to_chat(user, "You change [src]'s I/O settings, setting the input to [dir2text(input_dir)] and the output to [dir2text(output_dir)].") return return ..() @@ -130,7 +147,7 @@ empty_content() /obj/machinery/mineral/ore_redemption/proc/SmeltMineral(obj/item/weapon/ore/O) - if(O.refined_type) + if(O && O.refined_type) var/obj/item/stack/sheet/M = O.refined_type points += O.points * point_upgrade return M @@ -143,24 +160,19 @@ interact(user) /obj/machinery/mineral/ore_redemption/interact(mob/user) - var/obj/item/stack/sheet/s - var/dat + var/dat = "This machine only accepts ore. Gibtonite and Slag are not accepted.

    " + dat += "Current unclaimed points: [points]
    " - dat += text("This machine only accepts ore. Gibtonite and Slag are not accepted.

    ") - dat += text("Current unclaimed points: [points]
    ") - - if(istype(inserted_id)) - dat += text("You have [inserted_id.mining_points] mining points collected. Eject ID.
    ") - dat += text("Claim points.
    ") + if(inserted_id) + dat += "You have [inserted_id.mining_points] mining points collected. Eject ID.
    " + dat += "Claim points.

    " else - dat += text("No ID inserted. Insert ID.
    ") + dat += "No ID inserted. Insert ID.

    " for(var/O in stack_list) - s = stack_list[O] - if(s.amount > 0) - if(O == stack_list[1]) - dat += "
    " //just looks nicer - dat += text("[capitalize(s.name)]: [s.amount] Release
    ") + var/obj/item/stack/sheet/s = stack_list[O] + if(s.amount) + dat += "[capitalize(s.name)]: [s.amount] Release
    " var/obj/item/stack/sheet/metalstack if(/obj/item/stack/sheet/metal in stack_list) @@ -175,10 +187,10 @@ titaniumstack = stack_list[/obj/item/stack/sheet/mineral/titanium] if(metalstack && plasmastack && min(metalstack.amount, plasmastack.amount)) - dat += text("Plasteel Alloy (Metal + Plasma): Smelt
    ") + dat += "Plasteel Alloy (Metal + Plasma): Smelt
    " if(titaniumstack && plasmastack && min(titaniumstack.amount, plasmastack.amount)) - dat += text("Plastitanium Alloy (Titanium + Plasma): Smelt
    ") - dat += text("
    Mineral Value List:
    [get_ore_values()]
    ") + dat += "Plastitanium Alloy (Titanium + Plasma): Smelt
    " + dat += "
    Mineral Value List:
    [get_ore_values()]
    " var/datum/browser/popup = new(user, "console_stacking_machine", "Ore Redemption Machine", 400, 500) popup.set_content(dat) @@ -196,58 +208,67 @@ /obj/machinery/mineral/ore_redemption/Topic(href, href_list) if(..()) return - if(href_list["choice"]) - if(istype(inserted_id)) - if(href_list["choice"] == "eject") - inserted_id.loc = loc - inserted_id.verb_pickup() - inserted_id = null - if(href_list["choice"] == "claim") - if(access_mining_station in inserted_id.access) - inserted_id.mining_points += points - points = 0 - else - usr << "Required access not found." - else if(href_list["choice"] == "insert") - var/obj/item/weapon/card/id/I = usr.get_active_held_item() - if(istype(I)) - if(!usr.drop_item()) - return - I.loc = src - inserted_id = I - else usr << "No valid ID." + if(href_list["eject_id"]) + usr.put_in_hands(inserted_id) + inserted_id = null + if(href_list["claim"]) + if(inserted_id) + if(req_access_reclaim in inserted_id.access) + inserted_id.mining_points += points + points = 0 + else + to_chat(usr, "Required access not found.") + else if(href_list["insert_id"]) + var/obj/item/weapon/card/id/I = usr.get_active_held_item() + if(istype(I)) + if(!usr.drop_item()) + return + I.forceMove(src) + inserted_id = I + else + to_chat(usr, "Not a valid ID!") if(href_list["release"]) if(check_access(inserted_id) || allowed(usr)) //Check the ID inside, otherwise check the user. - if(!(text2path(href_list["release"]) in stack_list)) return + if(!(text2path(href_list["release"]) in stack_list)) + return var/obj/item/stack/sheet/inp = stack_list[text2path(href_list["release"])] - var/obj/item/stack/sheet/out = new inp.type() - var/desired = input("How much?", "How much to eject?", 1) as num + var/obj/item/stack/sheet/out = new inp.type(src,merge=FALSE) + var/desired = input("How many sheets?", "How many sheets to eject?", 1) as null|num out.amount = round(min(desired,50,inp.amount)) - if(out.amount >= 1) + if(out.amount) inp.amount -= out.amount unload_mineral(out) if(inp.amount < 1) stack_list -= text2path(href_list["release"]) + qdel(inp) else - usr << "Required access not found." + to_chat(usr, "Required access not found.") if(href_list["alloytype1"] && href_list["alloytype2"] && href_list["alloytypeout"]) var/alloytype1 = text2path(href_list["alloytype1"]) var/alloytype2 = text2path(href_list["alloytype2"]) var/alloytypeout = text2path(href_list["alloytypeout"]) if(check_access(inserted_id) || allowed(usr)) - if(!(alloytype1 in stack_list)) return - if(!(alloytype2 in stack_list)) return + if(!(alloytype1 in stack_list)) + return + if(!(alloytype2 in stack_list)) + return var/obj/item/stack/sheet/stack1 = stack_list[alloytype1] var/obj/item/stack/sheet/stack2 = stack_list[alloytype2] - var/desired = input("How much?", "How much would you like to smelt?", 1) as num + var/desired = input("How many sheets?", "How many sheets would you like to smelt?", 1) as null|num var/obj/item/stack/sheet/alloyout = new alloytypeout alloyout.amount = round(min(desired,50,stack1.amount,stack2.amount)) if(alloyout.amount >= 1) stack1.amount -= alloyout.amount stack2.amount -= alloyout.amount unload_mineral(alloyout) + if(stack1.amount < 1) + stack_list -= stack1 + qdel(stack1) + if(stack2.amount < 1) + stack_list -= stack2 + qdel(stack2) else - usr << "Required access not found." + to_chat(usr, "Required access not found.") updateUsrDialog() return @@ -266,7 +287,7 @@ while(s.amount > s.max_amount) new s.type(loc,s.max_amount) s.use(s.max_amount) - s.loc = loc + s.forceMove(get_turf(src)) s.layer = initial(s.layer) s.plane = initial(s.plane) @@ -279,4 +300,4 @@ icon_state = initial(icon_state) else icon_state = "[initial(icon_state)]-off" - return + return \ No newline at end of file diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index df703a94dc..3f5d284fcf 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -126,7 +126,7 @@ return I.loc = src inserted_id = I - else usr << "No valid ID." + else to_chat(usr, "No valid ID.") if(href_list["purchase"]) if(istype(inserted_id)) var/datum/data/mining_equipment/prize = locate(href_list["purchase"]) @@ -209,6 +209,7 @@ ..() desc += "\nIt seems a few selections have been added." prize_list += list( + new /datum/data/mining_equipment("Extra Id", /obj/item/weapon/card/id/mining, 250), new /datum/data/mining_equipment("Science Goggles", /obj/item/clothing/glasses/science, 250), new /datum/data/mining_equipment("Monkey Cube", /obj/item/weapon/reagent_containers/food/snacks/monkeycube, 300), new /datum/data/mining_equipment("Toolbelt", /obj/item/weapon/storage/belt/utility, 350), @@ -252,15 +253,15 @@ if(points) var/obj/item/weapon/card/id/C = I C.mining_points += points - user << "You transfer [points] points to [C]." + to_chat(user, "You transfer [points] points to [C].") points = 0 else - user << "There's no points left on [src]." + to_chat(user, "There's no points left on [src].") ..() /obj/item/weapon/card/mining_point_card/examine(mob/user) ..() - user << "There's [points] point\s on the card." + to_chat(user, "There's [points] point\s on the card.") ///Conscript kit /obj/item/weapon/card/mining_access_card @@ -275,7 +276,7 @@ I.access |= access_mining_station I.access |= access_mineral_storeroom I.access |= access_cargo - user << "You upgrade [I] with mining access." + to_chat(user, "You upgrade [I] with mining access.") qdel(src) ..() diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 656f99e249..1e80768919 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -10,7 +10,7 @@ /obj/effect/light_emitter/New() ..() - SetLuminosity(set_luminosity, set_cap) + set_light(set_luminosity, set_cap) /**********************Miner Lockers**************************/ @@ -69,7 +69,7 @@ /obj/machinery/computer/shuttle/mining/attack_hand(mob/user) if(user.z == ZLEVEL_STATION && user.mind && (user.mind in ticker.mode.head_revolutionaries) && !(user.mind in dumb_rev_heads)) - user << "You get a feeling that leaving the station might be a REALLY dumb idea..." + to_chat(user, "You get a feeling that leaving the station might be a REALLY dumb idea...") dumb_rev_heads += user.mind return ..() @@ -198,7 +198,7 @@ /obj/item/weapon/emptysandbag/attackby(obj/item/W, mob/user, params) if(istype(W,/obj/item/weapon/ore/glass)) - user << "You fill the sandbag." + to_chat(user, "You fill the sandbag.") var/obj/item/stack/sheet/mineral/sandbags/I = new /obj/item/stack/sheet/mineral/sandbags qdel(src) user.put_in_hands(I) @@ -248,8 +248,8 @@ /obj/item/weapon/survivalcapsule/examine(mob/user) . = ..() get_template() - user << "This capsule has the [template.name] stored." - user << template.description + to_chat(user, "This capsule has the [template.name] stored.") + to_chat(user, template.description) /obj/item/weapon/survivalcapsule/attack_self() // Can't grab when capsule is New() because templates aren't loaded then @@ -454,6 +454,12 @@ . = ..() T.air_update_turf(1) +//Inivisible, indestructible fans +/obj/structure/fans/tiny/invisible + name = "air flow blocker" + resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + invisibility = INVISIBILITY_ABSTRACT + //Signs /obj/structure/sign/mining diff --git a/code/modules/mining/minebot.dm b/code/modules/mining/minebot.dm index 9fe7579057..5527cb20f2 100644 --- a/code/modules/mining/minebot.dm +++ b/code/modules/mining/minebot.dm @@ -5,7 +5,7 @@ /mob/living/simple_animal/hostile/mining_drone name = "nanotrasen minebot" desc = "The instructions printed on the side read: This is a small robot used to support miners, can be set to search and collect loose ore, or to help fend off wildlife. A mining scanner can instruct it to drop loose ore. Field repairs can be done with a welder." - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "mining_drone" icon_living = "mining_drone" status_flags = CANSTUN|CANWEAKEN|CANPUSH @@ -48,7 +48,7 @@ var/datum/action/innate/minedrone/toggle_mode/toggle_mode_action var/datum/action/innate/minedrone/dump_ore/dump_ore_action -/mob/living/simple_animal/hostile/mining_drone/New() +/mob/living/simple_animal/hostile/mining_drone/Initialize() ..() toggle_light_action = new() toggle_light_action.Grant(src) @@ -70,17 +70,17 @@ var/obj/item/weapon/weldingtool/W = I if(W.welding && !stat) if(AIStatus != AI_OFF && AIStatus != AI_IDLE) - user << "[src] is moving around too much to repair!" + to_chat(user, "[src] is moving around too much to repair!") return if(maxHealth == health) - user << "[src] is at full integrity." + to_chat(user, "[src] is at full integrity.") else if(W.remove_fuel(0, user)) adjustBruteLoss(-10) - user << "You repair some of the armor on [src]." + to_chat(user, "You repair some of the armor on [src].") return if(istype(I, /obj/item/device/mining_scanner) || istype(I, /obj/item/device/t_scanner/adv_mining_scanner)) - user << "You instruct [src] to drop any collected ore." + to_chat(user, "You instruct [src] to drop any collected ore.") DropOre() return ..() @@ -98,9 +98,9 @@ toggle_mode() switch(mode) if(MINEDRONE_COLLECT) - M << "[src] has been set to search and store loose ore." + to_chat(M, "[src] has been set to search and store loose ore.") if(MINEDRONE_ATTACK) - M << "[src] has been set to attack hostile wildlife." + to_chat(M, "[src] has been set to attack hostile wildlife.") return ..() @@ -113,7 +113,7 @@ minimum_distance = 1 retreat_distance = null icon_state = "mining_drone" - src << "You are set to collect mode. You can now collect loose ore." + to_chat(src, "You are set to collect mode. You can now collect loose ore.") /mob/living/simple_animal/hostile/mining_drone/proc/SetOffenseBehavior() mode = MINEDRONE_ATTACK @@ -124,7 +124,7 @@ retreat_distance = 1 minimum_distance = 2 icon_state = "mining_drone_offense" - src << "You are set to attack mode. You can now attack from range." + to_chat(src, "You are set to attack mode. You can now attack from range.") /mob/living/simple_animal/hostile/mining_drone/AttackingTarget() if(istype(target, /obj/item/weapon/ore) && mode == MINEDRONE_COLLECT) @@ -145,10 +145,10 @@ /mob/living/simple_animal/hostile/mining_drone/proc/DropOre(message = 1) if(!contents.len) if(message) - src << "You attempt to dump your stored ore, but you have none." + to_chat(src, "You attempt to dump your stored ore, but you have none.") return if(message) - src << "You dump your stored ore." + to_chat(src, "You dump your stored ore.") for(var/obj/item/weapon/ore/O in contents) contents -= O O.loc = src.loc @@ -183,11 +183,11 @@ var/mob/living/simple_animal/hostile/mining_drone/user = owner if(user.light_on) - user.AddLuminosity(-6) + user.set_light(0) else - user.AddLuminosity(6) + user.set_light(6) user.light_on = !user.light_on - user << "You toggle your light [user.light_on ? "on" : "off"]." + to_chat(user, "You toggle your light [user.light_on ? "on" : "off"].") /datum/action/innate/minedrone/toggle_meson_vision name = "Toggle Meson Vision" @@ -203,7 +203,7 @@ user.sight |= SEE_TURFS user.see_invisible = SEE_INVISIBLE_MINIMUM - user << "You toggle your meson vision [(user.sight & SEE_TURFS) ? "on" : "off"]." + to_chat(user, "You toggle your meson vision [(user.sight & SEE_TURFS) ? "on" : "off"].") /datum/action/innate/minedrone/toggle_mode name = "Toggle Mode" @@ -239,7 +239,7 @@ /obj/item/device/mine_bot_ugprade/proc/upgrade_bot(mob/living/simple_animal/hostile/mining_drone/M, mob/user) if(M.melee_damage_upper != initial(M.melee_damage_upper)) - user << "[src] already has a combat upgrade installed!" + to_chat(user, "[src] already has a combat upgrade installed!") return M.melee_damage_lower = 22 M.melee_damage_upper = 22 @@ -252,7 +252,7 @@ /obj/item/device/mine_bot_ugprade/health/upgrade_bot(mob/living/simple_animal/hostile/mining_drone/M, mob/user) if(M.maxHealth != initial(M.maxHealth)) - user << "[src] already has a reinforced chassis!" + to_chat(user, "[src] already has a reinforced chassis!") return M.maxHealth = 170 qdel(src) @@ -266,7 +266,7 @@ /obj/item/device/mine_bot_ugprade/cooldown/upgrade_bot(mob/living/simple_animal/hostile/mining_drone/M, mob/user) name = "minebot cooldown upgrade" if(M.ranged_cooldown_time != initial(M.ranged_cooldown_time)) - user << "[src] already has a decreased weapon cooldown!" + to_chat(user, "[src] already has a decreased weapon cooldown!") return M.ranged_cooldown_time = 10 qdel(src) diff --git a/code/modules/mining/mint.dm b/code/modules/mining/mint.dm index e6d1a58b19..d40928fe4c 100644 --- a/code/modules/mining/mint.dm +++ b/code/modules/mining/mint.dm @@ -68,7 +68,7 @@ usr.set_machine(src) src.add_fingerprint(usr) if(processing==1) - usr << "The machine is processing." + to_chat(usr, "The machine is processing.") return if(href_list["choose"]) if(materials.materials[href_list["choose"]]) diff --git a/code/modules/mining/ores_coins.dm b/code/modules/mining/ores_coins.dm index 153417695d..7a4787f747 100644 --- a/code/modules/mining/ores_coins.dm +++ b/code/modules/mining/ores_coins.dm @@ -14,7 +14,7 @@ new refined_type(get_turf(src.loc)) qdel(src) else if(W.isOn()) - user << "Not enough fuel to smelt [src]." + to_chat(user, "Not enough fuel to smelt [src].") ..() /obj/item/weapon/ore/Crossed(atom/movable/AM) @@ -73,7 +73,7 @@ w_class = WEIGHT_CLASS_TINY /obj/item/weapon/ore/glass/attack_self(mob/living/user) - user << "You use the sand to make sandstone." + to_chat(user, "You use the sand to make sandstone.") var/sandAmt = 1 for(var/obj/item/weapon/ore/glass/G in user.loc) // The sand on the floor sandAmt += 1 @@ -107,7 +107,7 @@ C.adjust_blurriness(6) C.adjustStaminaLoss(15)//the pain from your eyes burning does stamina damage C.confused += 5 - C << "\The [src] gets into your eyes! The pain, it burns!" + to_chat(C, "\The [src] gets into your eyes! The pain, it burns!") qdel(src) /obj/item/weapon/ore/glass/basalt @@ -126,7 +126,7 @@ if(istype(I, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/W = I if(W.welding) - user << "You can't hit a high enough temperature to smelt [src] properly!" + to_chat(user, "You can't hit a high enough temperature to smelt [src] properly!") else ..() @@ -309,7 +309,7 @@ /obj/item/weapon/coin/examine(mob/user) ..() if(value) - user << "It's worth [value] credit\s." + to_chat(user, "It's worth [value] credit\s.") /obj/item/weapon/coin/gold cmineral = "gold" @@ -386,15 +386,15 @@ if(istype(W, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/CC = W if(string_attached) - user << "There already is a string attached to this coin!" + to_chat(user, "There already is a string attached to this coin!") return if (CC.use(1)) add_overlay(image('icons/obj/economy.dmi',"coin_string_overlay")) string_attached = 1 - user << "You attach a string to the coin." + to_chat(user, "You attach a string to the coin.") else - user << "You need one length of cable to attach a string to the coin!" + to_chat(user, "You need one length of cable to attach a string to the coin!") return else if(istype(W,/obj/item/weapon/wirecutters)) @@ -407,13 +407,13 @@ CC.update_icon() overlays = list() string_attached = null - user << "You detach the string from the coin." + to_chat(user, "You detach the string from the coin.") else ..() /obj/item/weapon/coin/attack_self(mob/user) if(cooldown < world.time - 15) if(string_attached) //does the coin have a wire attached - user << "The coin won't flip very well with something attached!" //Tell user it will not flip + to_chat(user, "The coin won't flip very well with something attached!" ) return //do not flip the coin var/coinflip = pick(sideslist) cooldown = world.time diff --git a/code/modules/mining/satchel_ore_boxdm.dm b/code/modules/mining/satchel_ore_boxdm.dm index dd82f9b1d4..493f50c97c 100644 --- a/code/modules/mining/satchel_ore_boxdm.dm +++ b/code/modules/mining/satchel_ore_boxdm.dm @@ -18,7 +18,7 @@ var/obj/item/weapon/storage/S = W for(var/obj/item/weapon/ore/O in S.contents) S.remove_from_storage(O, src) //This will move the item to this item's contents - user << "You empty the ore in [S] into \the [src]." + to_chat(user, "You empty the ore in [S] into \the [src].") else if(istype(W, /obj/item/weapon/crowbar)) playsound(loc, W.usesound, 50, 1) var/obj/item/weapon/crowbar/C = W @@ -61,7 +61,7 @@ src.add_fingerprint(usr) if(href_list["removeall"]) dump_box_contents() - usr << "You empty the box." + to_chat(usr, "You empty the box.") updateUsrDialog() diff --git a/code/modules/mob/dead/dead.dm b/code/modules/mob/dead/dead.dm new file mode 100644 index 0000000000..0e774288cd --- /dev/null +++ b/code/modules/mob/dead/dead.dm @@ -0,0 +1,12 @@ +//Dead mobs can exist whenever. This is needful +/mob/dead/New(loc) + ..() + if(!initialized) + args[1] = FALSE + Initialize(arglist(args)) //EXIST DAMN YOU!!! + +/mob/dead/dust() //ghosts can't be vaporised. + return + +/mob/dead/gib() //ghosts can't be gibbed. + return diff --git a/code/modules/mob/new_player/login.dm b/code/modules/mob/dead/new_player/login.dm similarity index 56% rename from code/modules/mob/new_player/login.dm rename to code/modules/mob/dead/new_player/login.dm index b0bad8d9f5..bfb30ccb1d 100644 --- a/code/modules/mob/new_player/login.dm +++ b/code/modules/mob/dead/new_player/login.dm @@ -1,4 +1,4 @@ -/mob/new_player/Login() +/mob/dead/new_player/Login() if(!mind) mind = new /datum/mind(key) mind.active = 1 @@ -7,13 +7,13 @@ ..() if(join_motd) - src << "
    [join_motd]
    " + to_chat(src, "
    [join_motd]
    ") if(admin_notice) - src << "Admin Notice:\n \t [admin_notice]" + to_chat(src, "Admin Notice:\n \t [admin_notice]") if(config.soft_popcap && living_player_count() >= config.soft_popcap) - src << "Server Notice:\n \t [config.soft_popcap_message]" + to_chat(src, "Server Notice:\n \t [config.soft_popcap_message]") sight |= SEE_TURFS @@ -29,4 +29,4 @@ new_player_panel() client.playtitlemusic() if(ticker.current_state < GAME_STATE_SETTING_UP) - src << "Please set up your character and select \"Ready\". The game will start in about [round(ticker.GetTimeLeft()/10)] seconds." \ No newline at end of file + to_chat(src, "Please set up your character and select \"Ready\". The game will start in about [round(ticker.GetTimeLeft(), 1)/10] seconds.") diff --git a/code/modules/mob/new_player/logout.dm b/code/modules/mob/dead/new_player/logout.dm similarity index 87% rename from code/modules/mob/new_player/logout.dm rename to code/modules/mob/dead/new_player/logout.dm index c9e7aa67eb..a70800d35b 100644 --- a/code/modules/mob/new_player/logout.dm +++ b/code/modules/mob/dead/new_player/logout.dm @@ -1,4 +1,4 @@ -/mob/new_player/Logout() +/mob/dead/new_player/Logout() ready = 0 ..() if(!spawning)//Here so that if they are spawning and log out, the other procs can play out and they will have a mob to come back to. diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/dead/new_player/new_player.dm similarity index 68% rename from code/modules/mob/new_player/new_player.dm rename to code/modules/mob/dead/new_player/new_player.dm index ffa592b93b..f464eff940 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/dead/new_player/new_player.dm @@ -1,6 +1,6 @@ -/mob/new_player +/mob/dead/new_player var/ready = 0 var/spawning = 0//Referenced when you want to delete the new_player later on in the code. @@ -13,17 +13,25 @@ canmove = 0 anchored = 1 // don't get pushed around + var/mob/living/new_character //for instant transfer once the round is set up -/mob/new_player/New() +/mob/dead/new_player/Initialize() + if(initialized) + stack_trace("Warning: [src]([type]) initialized multiple times!") + initialized = TRUE tag = "mob_[next_mob_id++]" mob_list += src + if(client && ticker.state == GAME_STATE_STARTUP) + var/obj/screen/splash/S = new(client, TRUE, TRUE) + S.Fade(TRUE) + if(length(newplayer_start)) loc = pick(newplayer_start) else loc = locate(1,1,1) -/mob/new_player/proc/new_player_panel() +/mob/dead/new_player/proc/new_player_panel() var/output = "

    Setup Character

    " @@ -44,12 +52,12 @@ var/isadmin = 0 if(src.client && src.client.holder) isadmin = 1 - var/DBQuery/query = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_question")] WHERE [(isadmin ? "" : "adminonly = false AND")] Now() BETWEEN starttime AND endtime AND id NOT IN (SELECT pollid FROM [format_table_name("poll_vote")] WHERE ckey = \"[ckey]\") AND id NOT IN (SELECT pollid FROM [format_table_name("poll_textreply")] WHERE ckey = \"[ckey]\")") - query.Execute() + var/DBQuery/query_get_new_polls = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_question")] WHERE [(isadmin ? "" : "adminonly = false AND")] Now() BETWEEN starttime AND endtime AND id NOT IN (SELECT pollid FROM [format_table_name("poll_vote")] WHERE ckey = \"[ckey]\") AND id NOT IN (SELECT pollid FROM [format_table_name("poll_textreply")] WHERE ckey = \"[ckey]\")") + if(!query_get_new_polls.Execute()) + return var/newpoll = 0 - while(query.NextRow()) + if(query_get_new_polls.NextRow()) newpoll = 1 - break if(newpoll) output += "

    Show Player Polls (NEW!)

    " @@ -65,12 +73,12 @@ popup.open(0) return -/mob/new_player/Stat() +/mob/dead/new_player/Stat() ..() if(statpanel("Lobby")) stat("Game Mode:", (ticker.hide_mode) ? "Secret" : "[master_mode]") - stat("Map:", MAP_NAME) + stat("Map:", SSmapping.config.map_name) if(ticker.current_state == GAME_STATE_PREGAME) var/time_remaining = ticker.GetTimeLeft() @@ -83,7 +91,7 @@ stat("Players Ready:", "[ticker.totalPlayersReady]") -/mob/new_player/Topic(href, href_list[]) +/mob/dead/new_player/Topic(href, href_list[]) if(src != usr) return 0 @@ -121,11 +129,11 @@ observer.started_as_observer = 1 close_spawn_windows() var/obj/O = locate("landmark*Observer-Start") - src << "Now teleporting." + to_chat(src, "Now teleporting.") if (O) observer.loc = O.loc else - src << "Teleporting failed. You should be able to use ghost verbs to teleport somewhere useful" + to_chat(src, "Teleporting failed. The map is probably still loading...") observer.key = key observer.client = client observer.set_ghost_appearance() @@ -141,7 +149,7 @@ if(href_list["late_join"]) if(!ticker || ticker.current_state != GAME_STATE_PLAYING) - usr << "The round is either not ready, or has already finished..." + to_chat(usr, "The round is either not ready, or has already finished...") return if(href_list["late_join"] == "override") @@ -149,16 +157,16 @@ return if(ticker.queued_players.len || (relevant_cap && living_player_count() >= relevant_cap && !(ckey(key) in admin_datums))) - usr << "[config.hard_popcap_message]" + to_chat(usr, "[config.hard_popcap_message]") var/queue_position = ticker.queued_players.Find(usr) if(queue_position == 1) - usr << "You are next in line to join the game. You will be notified when a slot opens up." + to_chat(usr, "You are next in line to join the game. You will be notified when a slot opens up.") else if(queue_position) - usr << "There are [queue_position-1] players in front of you in the queue to join the game." + to_chat(usr, "There are [queue_position-1] players in front of you in the queue to join the game.") else ticker.queued_players += usr - usr << "You have been added to the queue to join the game. Your position in queue is [ticker.queued_players.len]." + to_chat(usr, "You have been added to the queue to join the game. Your position in queue is [ticker.queued_players.len].") return LateChoices() @@ -168,12 +176,12 @@ if(href_list["SelectedJob"]) if(!enter_allowed) - usr << "There is an administrative lock on entering the game!" + to_chat(usr, "There is an administrative lock on entering the game!") return if(ticker.queued_players.len && !(ckey(key) in admin_datums)) if((living_player_count() >= relevant_cap) || (src != ticker.queued_players[1])) - usr << "Server is full." + to_chat(usr, "Server is full.") return AttemptLateSpawn(href_list["SelectedJob"]) @@ -206,22 +214,22 @@ if(POLLTYPE_OPTION) var/optionid = text2num(href_list["voteoptionid"]) if(vote_on_poll(pollid, optionid)) - usr << "Vote successful." + to_chat(usr, "Vote successful.") else - usr << "Vote failed, please try again or contact an administrator." + to_chat(usr, "Vote failed, please try again or contact an administrator.") if(POLLTYPE_TEXT) var/replytext = href_list["replytext"] if(log_text_poll_reply(pollid, replytext)) - usr << "Feedback logging successful." + to_chat(usr, "Feedback logging successful.") else - usr << "Feedback logging failed, please try again or contact an administrator." + to_chat(usr, "Feedback logging failed, please try again or contact an administrator.") if(POLLTYPE_RATING) var/id_min = text2num(href_list["minid"]) var/id_max = text2num(href_list["maxid"]) if( (id_max - id_min) > 100 ) //Basic exploit prevention //(protip, this stops no exploits) - usr << "The option ID difference is too big. Please contact administration or the database admin." + to_chat(usr, "The option ID difference is too big. Please contact administration or the database admin.") return for(var/optionid = id_min; optionid <= id_max; optionid++) @@ -235,15 +243,15 @@ return if(!vote_on_numval_poll(pollid, optionid, rating)) - usr << "Vote failed, please try again or contact an administrator." + to_chat(usr, "Vote failed, please try again or contact an administrator.") return - usr << "Vote successful." + to_chat(usr, "Vote successful.") if(POLLTYPE_MULTI) var/id_min = text2num(href_list["minoptionid"]) var/id_max = text2num(href_list["maxoptionid"]) if( (id_max - id_min) > 100 ) //Basic exploit prevention - usr << "The option ID difference is too big. Please contact administration or the database admin." + to_chat(usr, "The option ID difference is too big. Please contact administration or the database admin.") return for(var/optionid = id_min; optionid <= id_max; optionid++) @@ -253,22 +261,22 @@ if(0) continue if(1) - usr << "Vote failed, please try again or contact an administrator." + to_chat(usr, "Vote failed, please try again or contact an administrator.") return if(2) - usr << "Maximum replies reached." + to_chat(usr, "Maximum replies reached.") break - usr << "Vote successful." + to_chat(usr, "Vote successful.") if(POLLTYPE_IRV) if (!href_list["IRVdata"]) - src << "No ordering data found. Please try again or contact an administrator." + to_chat(src, "No ordering data found. Please try again or contact an administrator.") var/list/votelist = splittext(href_list["IRVdata"], ",") if (!vote_on_irv_poll(pollid, votelist)) - src << "Vote failed, please try again or contact an administrator." + to_chat(src, "Vote failed, please try again or contact an administrator.") return - src << "Vote successful." + to_chat(src, "Vote successful.") -/mob/new_player/proc/IsJobAvailable(rank) +/mob/dead/new_player/proc/IsJobAvailable(rank) var/datum/job/job = SSjob.GetJob(rank) if(!job) return 0 @@ -290,10 +298,20 @@ return 1 -/mob/new_player/proc/AttemptLateSpawn(rank) +/mob/dead/new_player/proc/AttemptLateSpawn(rank) if(!IsJobAvailable(rank)) - src << alert("[rank] is not available. Please try another.") + alert(src, "[rank] is not available. Please try another.") return 0 + + if(ticker.late_join_disabled) + alert(src, "An administrator has disabled late join spawning.") + return FALSE + + if(SSshuttle.arrivals) + close_spawn_windows() //In case we get held up + if(SSshuttle.arrivals.damaged && config.arrivals_shuttle_require_safe_latejoin) + src << alert("The arrivals shuttle is currently malfunctioning! You cannot join.") + return FALSE //Remove the player from the join queue if he was in one and reset the timer ticker.queued_players -= src @@ -301,13 +319,14 @@ SSjob.AssignRole(src, rank, 1) - var/mob/living/character = create_character() //creates the human and transfers vars and mind + var/mob/living/character = create_character(TRUE) //creates the human and transfers vars and mind var/equip = SSjob.EquipRank(character, rank, 1) - if(iscyborg(equip)) //Borgs get borged in the equip, so we need to make sure we handle the new mob. + if(isliving(equip)) //Borgs get borged in the equip, so we need to make sure we handle the new mob. character = equip - - var/D = pick(latejoin) + var/D + if(latejoin.len) + D = get_turf(pick(latejoin)) if(!D) for(var/turf/T in get_area_turfs(/area/shuttle/arrival)) if(!T.density) @@ -321,6 +340,12 @@ continue character.loc = D + character.update_parallax_teleport() + + var/atom/movable/chair = locate(/obj/structure/chair) in character.loc + if(chair) + chair.buckle_mob(character) + ticker.minds += character.mind var/mob/living/carbon/human/humanc @@ -329,10 +354,13 @@ if(humanc) //These procs all expect humans data_core.manifest_inject(humanc) - AnnounceArrival(humanc, rank) + if(SSshuttle.arrivals) + SSshuttle.arrivals.QueueAnnounce(humanc, rank) + else + AnnounceArrival(humanc, rank) AddEmploymentContract(humanc) if(highlander) - humanc << "THERE CAN BE ONLY ONE!!!" + to_chat(humanc, "THERE CAN BE ONLY ONE!!!") humanc.make_scottish() joined_player_list += character.ckey @@ -347,23 +375,7 @@ ticker.mode.make_antag_chance(humanc) qdel(src) -/mob/new_player/proc/AnnounceArrival(var/mob/living/carbon/human/character, var/rank) - if(ticker.current_state != GAME_STATE_PLAYING) - return - var/area/A = get_area(character) - var/message = "\ - [character.real_name] ([rank]) has arrived at the station at \ - [A.name]." - deadchat_broadcast(message, follow_target = character, message_type=DEADCHAT_ARRIVALRATTLE) - if((!announcement_systems.len) || (!character.mind)) - return - if((character.mind.assigned_role == "Cyborg") || (character.mind.assigned_role == character.mind.special_role)) - return - - var/obj/machinery/announcement_system/announcer = pick(announcement_systems) - announcer.announce("ARRIVAL", character.real_name, rank, list()) //make the list empty to make it announce it in common - -/mob/new_player/proc/AddEmploymentContract(mob/living/carbon/human/employee) +/mob/dead/new_player/proc/AddEmploymentContract(mob/living/carbon/human/employee) //TODO: figure out a way to exclude wizards/nukeops/demons from this. sleep(30) for(var/C in employmentCabinets) @@ -372,7 +384,7 @@ employmentCabinet.addFile(employee) -/mob/new_player/proc/LateChoices() +/mob/dead/new_player/proc/LateChoices() var/mills = world.time - round_start_time // 1/10 of a second, not real milliseconds but whatever //var/secs = ((mills % 36000) % 600) / 10 //Not really needed, but I'll leave it here for refrence.. or something var/mins = (mills % 36000) / 600 @@ -393,6 +405,17 @@ if(job && IsJobAvailable(job.title)) available_job_count++; + if(length(SSjob.prioritized_jobs)) + dat += "
    The station has flagged these jobs as high priority:
    " + var/amt = length(SSjob.prioritized_jobs) + var/amt_count + for(var/datum/job/a in SSjob.prioritized_jobs) + amt_count++ + if(amt_count != amt) // checks for the last job added. + dat += " [a.title], " + else + dat += " [a.title].
    " + dat += "
    Choose from the following open positions:

    " dat += "
    " var/job_count = 0 @@ -422,40 +445,46 @@ popup.open(0) // 0 is passed to open so that it doesn't use the onclose() proc -/mob/new_player/proc/create_character() +/mob/dead/new_player/proc/create_character(transfer_after) spawning = 1 close_spawn_windows() - var/mob/living/carbon/human/new_character = new(loc) + var/mob/living/carbon/human/H = new(loc) if(config.force_random_names || jobban_isbanned(src, "appearance")) client.prefs.random_character() client.prefs.real_name = client.prefs.pref_species.random_name(gender,1) - client.prefs.copy_to(new_character) - new_character.dna.update_dna_identity() + client.prefs.copy_to(H) + H.dna.update_dna_identity() if(mind) mind.active = 0 //we wish to transfer the key manually - mind.transfer_to(new_character) //won't transfer key since the mind is not active + mind.transfer_to(H) //won't transfer key since the mind is not active - new_character.name = real_name + H.name = real_name - new_character.key = key //Manually transfer the key to log them in - new_character.stopLobbySound() + . = H + new_character = . + if(transfer_after) + transfer_character() - return new_character +/mob/dead/new_player/proc/transfer_character() + . = new_character + if(.) + new_character.key = key //Manually transfer the key to log them in + new_character.stopLobbySound() -/mob/new_player/proc/ViewManifest() +/mob/dead/new_player/proc/ViewManifest() var/dat = "" dat += "

    Crew Manifest

    " dat += data_core.get_manifest(OOC = 1) src << browse(dat, "window=manifest;size=387x420;can_close=1") -/mob/new_player/Move() +/mob/dead/new_player/Move() return 0 -/mob/new_player/proc/close_spawn_windows() +/mob/dead/new_player/proc/close_spawn_windows() src << browse(null, "window=latechoices") //closes late choices window src << browse(null, "window=playersetup") //closes the player setup window diff --git a/code/modules/mob/new_player/poll.dm b/code/modules/mob/dead/new_player/poll.dm similarity index 58% rename from code/modules/mob/new_player/poll.dm rename to code/modules/mob/dead/new_player/poll.dm index e72c4ead95..319d35867e 100644 --- a/code/modules/mob/new_player/poll.dm +++ b/code/modules/mob/dead/new_player/poll.dm @@ -2,67 +2,59 @@ var/optionid var/optiontext -/mob/new_player/proc/handle_player_polling() +/mob/dead/new_player/proc/handle_player_polling() if(!dbcon.IsConnected()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return - var/DBQuery/query_get_poll = dbcon.NewQuery("SELECT id, question FROM [format_table_name("poll_question")] WHERE Now() BETWEEN starttime AND endtime [(client.holder ? "" : "AND adminonly = false")]") - if(!query_get_poll.Execute()) - var/err = query_get_poll.ErrorMsg() - log_game("SQL ERROR obtaining id, question from poll_question table. Error : \[[err]\]\n") + var/DBQuery/query_poll_get = dbcon.NewQuery("SELECT id, question FROM [format_table_name("poll_question")] WHERE Now() BETWEEN starttime AND endtime [(client.holder ? "" : "AND adminonly = false")]") + if(!query_poll_get.warn_execute()) return var/output = "
    Player polls
    " var/i = 0 - while(query_get_poll.NextRow()) - var/pollid = query_get_poll.item[1] - var/pollquestion = query_get_poll.item[2] + while(query_poll_get.NextRow()) + var/pollid = query_poll_get.item[1] + var/pollquestion = query_poll_get.item[2] output += "" i++ output += "
    [pollquestion]
    " src << browse(output,"window=playerpolllist;size=500x300") -/mob/new_player/proc/poll_player(pollid) +/mob/dead/new_player/proc/poll_player(pollid) if(!pollid) return if (!dbcon.Connect()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return - var/DBQuery/select_query = dbcon.NewQuery("SELECT starttime, endtime, question, polltype, multiplechoiceoptions FROM [format_table_name("poll_question")] WHERE id = [pollid]") - if(!select_query.Execute()) - var/err = select_query.ErrorMsg() - log_game("SQL ERROR obtaining starttime, endtime, question, polltype, multiplechoiceoptions from poll_question table. Error : \[[err]\]\n") + var/DBQuery/query_poll_get_details = dbcon.NewQuery("SELECT starttime, endtime, question, polltype, multiplechoiceoptions FROM [format_table_name("poll_question")] WHERE id = [pollid]") + if(!query_poll_get_details.warn_execute()) return var/pollstarttime = "" var/pollendtime = "" var/pollquestion = "" var/polltype = "" var/multiplechoiceoptions = 0 - if(select_query.NextRow()) - pollstarttime = select_query.item[1] - pollendtime = select_query.item[2] - pollquestion = select_query.item[3] - polltype = select_query.item[4] - multiplechoiceoptions = text2num(select_query.item[5]) + if(query_poll_get_details.NextRow()) + pollstarttime = query_poll_get_details.item[1] + pollendtime = query_poll_get_details.item[2] + pollquestion = query_poll_get_details.item[3] + polltype = query_poll_get_details.item[4] + multiplechoiceoptions = text2num(query_poll_get_details.item[5]) switch(polltype) if(POLLTYPE_OPTION) - var/DBQuery/voted_query = dbcon.NewQuery("SELECT optionid FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") - if(!voted_query.Execute()) - var/err = voted_query.ErrorMsg() - log_game("SQL ERROR obtaining optionid from poll_vote table. Error : \[[err]\]\n") + var/DBQuery/query_option_get_votes = dbcon.NewQuery("SELECT optionid FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") + if(!query_option_get_votes.warn_execute()) return var/votedoptionid = 0 - if(voted_query.NextRow()) - votedoptionid = text2num(voted_query.item[1]) + if(query_option_get_votes.NextRow()) + votedoptionid = text2num(query_option_get_votes.item[1]) var/list/datum/polloption/options = list() - var/DBQuery/options_query = dbcon.NewQuery("SELECT id, text FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") - if(!options_query.Execute()) - var/err = options_query.ErrorMsg() - log_game("SQL ERROR obtaining id, text from poll_option table. Error : \[[err]\]\n") + var/DBQuery/query_option_options = dbcon.NewQuery("SELECT id, text FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") + if(!query_option_options.warn_execute()) return - while(options_query.NextRow()) + while(query_option_options.NextRow()) var/datum/polloption/PO = new() - PO.optionid = text2num(options_query.item[1]) - PO.optiontext = options_query.item[2] + PO.optionid = text2num(query_option_options.item[1]) + PO.optiontext = query_option_options.item[2] options += PO var/output = "
    Player poll
    " output += "Question: [pollquestion]
    " @@ -90,14 +82,12 @@ src << browse(null ,"window=playerpolllist") src << browse(output,"window=playerpoll;size=500x250") if(POLLTYPE_TEXT) - var/DBQuery/voted_query = dbcon.NewQuery("SELECT replytext FROM [format_table_name("poll_textreply")] WHERE pollid = [pollid] AND ckey = '[ckey]'") - if(!voted_query.Execute()) - var/err = voted_query.ErrorMsg() - log_game("SQL ERROR obtaining replytext from poll_textreply table. Error : \[[err]\]\n") + var/DBQuery/query_text_get_votes = dbcon.NewQuery("SELECT replytext FROM [format_table_name("poll_textreply")] WHERE pollid = [pollid] AND ckey = '[ckey]'") + if(!query_text_get_votes.warn_execute()) return var/vote_text = "" - if(voted_query.NextRow()) - vote_text = voted_query.item[1] + if(query_text_get_votes.NextRow()) + vote_text = query_text_get_votes.item[1] var/output = "
    Player poll
    " output += "Question: [pollquestion]
    " output += "Feedback gathering runs from [pollstarttime] until [pollendtime]

    " @@ -121,18 +111,16 @@ src << browse(null ,"window=playerpolllist") src << browse(output,"window=playerpoll;size=500x500") if(POLLTYPE_RATING) - var/DBQuery/voted_query = dbcon.NewQuery("SELECT o.text, v.rating FROM [format_table_name("poll_option")] o, [format_table_name("poll_vote")] v WHERE o.pollid = [pollid] AND v.ckey = '[ckey]' AND o.id = v.optionid") - if(!voted_query.Execute()) - var/err = voted_query.ErrorMsg() - log_game("SQL ERROR obtaining o.text, v.rating from poll_option and poll_vote tables. Error : \[[err]\]\n") + var/DBQuery/query_rating_get_votes = dbcon.NewQuery("SELECT o.text, v.rating FROM [format_table_name("poll_option")] o, [format_table_name("poll_vote")] v WHERE o.pollid = [pollid] AND v.ckey = '[ckey]' AND o.id = v.optionid") + if(!query_rating_get_votes.warn_execute()) return var/output = "

    Player poll
    " output += "Question: [pollquestion]
    " output += "Poll runs from [pollstarttime] until [pollendtime]

    " var/rating - while(voted_query.NextRow()) - var/optiontext = voted_query.item[1] - rating = voted_query.item[2] + while(query_rating_get_votes.NextRow()) + var/optiontext = query_rating_get_votes.item[1] + rating = query_rating_get_votes.item[2] output += "
    [optiontext] - [rating]" if(!rating) output += "

    " @@ -141,19 +129,17 @@ output += "" var/minid = 999999 var/maxid = 0 - var/DBQuery/option_query = dbcon.NewQuery("SELECT id, text, minval, maxval, descmin, descmid, descmax FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") - if(!option_query.Execute()) - var/err = option_query.ErrorMsg() - log_game("SQL ERROR obtaining id, text, minval, maxval, descmin, descmid, descmax from poll_option table. Error : \[[err]\]\n") + var/DBQuery/query_rating_options = dbcon.NewQuery("SELECT id, text, minval, maxval, descmin, descmid, descmax FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") + if(!query_rating_options.warn_execute()) return - while(option_query.NextRow()) - var/optionid = text2num(option_query.item[1]) - var/optiontext = option_query.item[2] - var/minvalue = text2num(option_query.item[3]) - var/maxvalue = text2num(option_query.item[4]) - var/descmin = option_query.item[5] - var/descmid = option_query.item[6] - var/descmax = option_query.item[7] + while(query_rating_options.NextRow()) + var/optionid = text2num(query_rating_options.item[1]) + var/optiontext = query_rating_options.item[2] + var/minvalue = text2num(query_rating_options.item[3]) + var/maxvalue = text2num(query_rating_options.item[4]) + var/descmin = query_rating_options.item[5] + var/descmid = query_rating_options.item[6] + var/descmax = query_rating_options.item[7] if(optionid < minid) minid = optionid if(optionid > maxid) @@ -177,26 +163,22 @@ src << browse(null ,"window=playerpolllist") src << browse(output,"window=playerpoll;size=500x500") if(POLLTYPE_MULTI) - var/DBQuery/voted_query = dbcon.NewQuery("SELECT optionid FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") - if(!voted_query.Execute()) - var/err = voted_query.ErrorMsg() - log_game("SQL ERROR obtaining optionid from poll_vote table. Error : \[[err]\]\n") + var/DBQuery/query_multi_get_votes = dbcon.NewQuery("SELECT optionid FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") + if(!query_multi_get_votes.warn_execute()) return var/list/votedfor = list() - while(voted_query.NextRow()) - votedfor.Add(text2num(voted_query.item[1])) + while(query_multi_get_votes.NextRow()) + votedfor.Add(text2num(query_multi_get_votes.item[1])) var/list/datum/polloption/options = list() var/maxoptionid = 0 var/minoptionid = 0 - var/DBQuery/options_query = dbcon.NewQuery("SELECT id, text FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") - if(!options_query.Execute()) - var/err = options_query.ErrorMsg() - log_game("SQL ERROR obtaining id, text from poll_option table. Error : \[[err]\]\n") + var/DBQuery/query_multi_options = dbcon.NewQuery("SELECT id, text FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") + if(!query_multi_options.warn_execute()) return - while(options_query.NextRow()) + while(query_multi_options.NextRow()) var/datum/polloption/PO = new() - PO.optionid = text2num(options_query.item[1]) - PO.optiontext = options_query.item[2] + PO.optionid = text2num(query_multi_options.item[1]) + PO.optiontext = query_multi_options.item[2] if(PO.optionid > maxoptionid) maxoptionid = PO.optionid if(PO.optionid < minoptionid || !minoptionid) @@ -232,27 +214,23 @@ var/datum/asset/irv_assets = get_asset_datum(/datum/asset/simple/IRV) irv_assets.send(src) - var/DBQuery/voted_query = dbcon.NewQuery("SELECT optionid FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") - if(!voted_query.Execute()) - var/err = voted_query.ErrorMsg() - log_game("SQL ERROR obtaining optionid from poll_vote table. Error : \[[err]\]\n") + var/DBQuery/query_irv_get_votes = dbcon.NewQuery("SELECT optionid FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") + if(!query_irv_get_votes.warn_execute()) return var/list/votedfor = list() - while(voted_query.NextRow()) - votedfor.Add(text2num(voted_query.item[1])) + while(query_irv_get_votes.NextRow()) + votedfor.Add(text2num(query_irv_get_votes.item[1])) var/list/datum/polloption/options = list() - var/DBQuery/options_query = dbcon.NewQuery("SELECT id, text FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") - if(!options_query.Execute()) - var/err = options_query.ErrorMsg() - log_game("SQL ERROR obtaining id, text from poll_option table. Error : \[[err]\]\n") + var/DBQuery/query_irv_options = dbcon.NewQuery("SELECT id, text FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") + if(!query_irv_options.warn_execute()) return - while(options_query.NextRow()) + while(query_irv_options.NextRow()) var/datum/polloption/PO = new() - PO.optionid = text2num(options_query.item[1]) - PO.optiontext = options_query.item[2] + PO.optionid = text2num(query_irv_options.item[1]) + PO.optiontext = query_irv_options.item[2] options["[PO.optionid]"] += PO //if they already voted, use their sort @@ -345,20 +323,18 @@ src << browse(output,"window=playerpoll;size=500x500") return -/mob/new_player/proc/poll_check_voted(pollid, text = FALSE) +/mob/dead/new_player/proc/poll_check_voted(pollid, text = FALSE) var/table = "poll_vote" if (text) table = "poll_textreply" if (!dbcon.Connect()) - usr << "Failed to establish database connection." + to_chat(usr, "Failed to establish database connection.") return var/DBQuery/query_hasvoted = dbcon.NewQuery("SELECT id FROM `[format_table_name(table)]` WHERE pollid = [pollid] AND ckey = '[ckey]'") - if(!query_hasvoted.Execute()) - var/err = query_hasvoted.ErrorMsg() - log_game("SQL ERROR obtaining id from [table] table. Error : \[[err]\]\n") + if(!query_hasvoted.warn_execute()) return if(query_hasvoted.NextRow()) - usr << "You've already replied to this poll." + to_chat(usr, "You've already replied to this poll.") return . = "Player" if(client.holder) @@ -366,38 +342,36 @@ return . -/mob/new_player/proc/vote_rig_check() +/mob/dead/new_player/proc/vote_rig_check() if (usr != src) if (!usr || !src) return 0 //we gots ourselfs a dirty cheater on our hands! log_game("[key_name(usr)] attempted to rig the vote by voting as [ckey]") message_admins("[key_name_admin(usr)] attempted to rig the vote by voting as [ckey]") - usr << "You don't seem to be [ckey]." - src << "Something went horribly wrong processing your vote. Please contact an administrator, they should have gotten a message about this" + to_chat(usr, "You don't seem to be [ckey].") + to_chat(src, "Something went horribly wrong processing your vote. Please contact an administrator, they should have gotten a message about this") return 0 return 1 -/mob/new_player/proc/vote_valid_check(pollid, holder, type) +/mob/dead/new_player/proc/vote_valid_check(pollid, holder, type) if (!dbcon.Connect()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return 0 pollid = text2num(pollid) if (!pollid || pollid < 0) return 0 //validate the poll is actually the right type of poll and its still active - var/DBQuery/select_query = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_question")] WHERE id = [pollid] AND Now() BETWEEN starttime AND endtime AND polltype = '[type]' [(holder ? "" : "AND adminonly = false")]") - if (!select_query.Execute()) - var/err = select_query.ErrorMsg() - log_game("SQL ERROR validating poll via poll_question table. Error : \[[err]\]\n") + var/DBQuery/query_validate_poll = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_question")] WHERE id = [pollid] AND Now() BETWEEN starttime AND endtime AND polltype = '[type]' [(holder ? "" : "AND adminonly = false")]") + if(!query_validate_poll.warn_execute()) return 0 - if (!select_query.NextRow()) + if (!query_validate_poll.NextRow()) return 0 return 1 -/mob/new_player/proc/vote_on_irv_poll(pollid, list/votelist) +/mob/dead/new_player/proc/vote_on_irv_poll(pollid, list/votelist) if (!dbcon.Connect()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return 0 if (!vote_rig_check()) return 0 @@ -421,14 +395,12 @@ return 0 //lets collect the options - var/DBQuery/options_query = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") - if (!options_query.Execute()) - var/err = options_query.ErrorMsg() - log_game("SQL ERROR obtaining id from poll_option table. Error : \[[err]\]\n") + var/DBQuery/query_irv_id = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_option")] WHERE pollid = [pollid]") + if(!query_irv_id.warn_execute()) return 0 var/list/optionlist = list() - while (options_query.NextRow()) - optionlist += text2num(options_query.item[1]) + while (query_irv_id.NextRow()) + optionlist += text2num(query_irv_id.item[1]) //validate their votes are actually in the list of options and actually numbers var/list/numberedvotelist = list() @@ -436,13 +408,13 @@ vote = text2num(vote) numberedvotelist += vote if (!vote) //this is fine because voteid starts at 1, so it will never be 0 - src << "Error: Invalid (non-numeric) votes in the vote data." + to_chat(src, "Error: Invalid (non-numeric) votes in the vote data.") return 0 if (!(vote in optionlist)) - src << "Votes for choices that do not appear to be in the poll detected" + to_chat(src, "Votes for choices that do not appear to be in the poll detected") return 0 if (!numberedvotelist.len) - src << "Invalid vote data" + to_chat(src, "Invalid vote data") return 0 //lets add the vote, first we generate a insert statement. @@ -454,26 +426,21 @@ sqlrowlist += "(Now(), [pollid], [vote], '[sanitizeSQL(ckey)]', INET_ATON('[sanitizeSQL(address)]'), '[sanitizeSQL(rank)]')" //now lets delete their old votes (if any) - var/DBQuery/voted_query = dbcon.NewQuery("DELETE FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") - if (!voted_query.Execute()) - var/err = voted_query.ErrorMsg() - log_game("SQL ERROR clearing out old votes. Error : \[[err]\]\n") + var/DBQuery/query_irv_del_old = dbcon.NewQuery("DELETE FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") + if(!query_irv_del_old.warn_execute()) return 0 //now to add the new ones. - var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime, pollid, optionid, ckey, ip, adminrank) VALUES [sqlrowlist]") - if(!query_insert.Execute()) - var/err = query_insert.ErrorMsg() - log_game("SQL ERROR adding vote to table. Error : \[[err]\]\n") - src << "Error adding vote." + var/DBQuery/query_irv_vote = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime, pollid, optionid, ckey, ip, adminrank) VALUES [sqlrowlist]") + if(!query_irv_vote.warn_execute()) return 0 src << browse(null,"window=playerpoll") return 1 -/mob/new_player/proc/vote_on_poll(pollid, optionid) +/mob/dead/new_player/proc/vote_on_poll(pollid, optionid) if (!dbcon.Connect()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return 0 if (!vote_rig_check()) return 0 @@ -485,17 +452,15 @@ var/adminrank = sanitizeSQL(poll_check_voted(pollid)) if(!adminrank) return - var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime, pollid, optionid, ckey, ip, adminrank) VALUES (Now(), [pollid], [optionid], '[ckey]', INET_ATON('[client.address]'), '[adminrank]')") - if(!query_insert.Execute()) - var/err = query_insert.ErrorMsg() - log_game("SQL ERROR adding vote to table. Error : \[[err]\]\n") + var/DBQuery/query_option_vote = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime, pollid, optionid, ckey, ip, adminrank) VALUES (Now(), [pollid], [optionid], '[ckey]', INET_ATON('[client.address]'), '[adminrank]')") + if(!query_option_vote.warn_execute()) return usr << browse(null,"window=playerpoll") return 1 -/mob/new_player/proc/log_text_poll_reply(pollid, replytext) +/mob/dead/new_player/proc/log_text_poll_reply(pollid, replytext) if (!dbcon.Connect()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return 0 if (!vote_rig_check()) return 0 @@ -505,26 +470,24 @@ if (!vote_valid_check(pollid, client.holder, POLLTYPE_TEXT)) return 0 if(!replytext) - usr << "The text you entered was blank. Please correct the text and submit again." + to_chat(usr, "The text you entered was blank. Please correct the text and submit again.") return var/adminrank = sanitizeSQL(poll_check_voted(pollid, TRUE)) if(!adminrank) return replytext = sanitizeSQL(replytext) if(!(length(replytext) > 0) || !(length(replytext) <= 8000)) - usr << "The text you entered was invalid or too long. Please correct the text and submit again." + to_chat(usr, "The text you entered was invalid or too long. Please correct the text and submit again.") return - var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("poll_textreply")] (datetime ,pollid ,ckey ,ip ,replytext ,adminrank) VALUES (Now(), [pollid], '[ckey]', INET_ATON('[client.address]'), '[replytext]', '[adminrank]')") - if(!query_insert.Execute()) - var/err = query_insert.ErrorMsg() - log_game("SQL ERROR adding text reply to table. Error : \[[err]\]\n") + var/DBQuery/query_text_vote = dbcon.NewQuery("INSERT INTO [format_table_name("poll_textreply")] (datetime ,pollid ,ckey ,ip ,replytext ,adminrank) VALUES (Now(), [pollid], '[ckey]', INET_ATON('[client.address]'), '[replytext]', '[adminrank]')") + if(!query_text_vote.warn_execute()) return usr << browse(null,"window=playerpoll") return 1 -/mob/new_player/proc/vote_on_numval_poll(pollid, optionid, rating) +/mob/dead/new_player/proc/vote_on_numval_poll(pollid, optionid, rating) if (!dbcon.Connect()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return 0 if (!vote_rig_check()) return 0 @@ -533,29 +496,25 @@ //validate the poll if (!vote_valid_check(pollid, client.holder, POLLTYPE_RATING)) return 0 - var/DBQuery/query_hasvoted = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_vote")] WHERE optionid = [optionid] AND ckey = '[ckey]'") - if(!query_hasvoted.Execute()) - var/err = query_hasvoted.ErrorMsg() - log_game("SQL ERROR obtaining id from poll_vote table. Error : \[[err]\]\n") + var/DBQuery/query_numval_hasvoted = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_vote")] WHERE optionid = [optionid] AND ckey = '[ckey]'") + if(!query_numval_hasvoted.warn_execute()) return - if(query_hasvoted.NextRow()) - usr << "You've already replied to this poll." + if(query_numval_hasvoted.NextRow()) + to_chat(usr, "You've already replied to this poll.") return var/adminrank = "Player" if(client.holder) adminrank = client.holder.rank.name adminrank = sanitizeSQL(adminrank) - var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime ,pollid ,optionid ,ckey ,ip ,adminrank, rating) VALUES (Now(), [pollid], [optionid], '[ckey]', INET_ATON('[client.address]'), '[adminrank]', [(isnull(rating)) ? "null" : rating])") - if(!query_insert.Execute()) - var/err = query_insert.ErrorMsg() - log_game("SQL ERROR adding vote to table. Error : \[[err]\]\n") + var/DBQuery/query_numval_vote = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime ,pollid ,optionid ,ckey ,ip ,adminrank, rating) VALUES (Now(), [pollid], [optionid], '[ckey]', INET_ATON('[client.address]'), '[adminrank]', [(isnull(rating)) ? "null" : rating])") + if(!query_numval_vote.warn_execute()) return usr << browse(null,"window=playerpoll") return 1 -/mob/new_player/proc/vote_on_multi_poll(pollid, optionid) +/mob/dead/new_player/proc/vote_on_multi_poll(pollid, optionid) if (!dbcon.Connect()) - src << "Failed to establish database connection." + to_chat(src, "Failed to establish database connection.") return 0 if (!vote_rig_check()) return 0 @@ -564,21 +523,17 @@ //validate the poll if (!vote_valid_check(pollid, client.holder, POLLTYPE_MULTI)) return 0 - var/DBQuery/query_get_choicelen = dbcon.NewQuery("SELECT multiplechoiceoptions FROM [format_table_name("poll_question")] WHERE id = [pollid]") - if(!query_get_choicelen.Execute()) - var/err = query_get_choicelen.ErrorMsg() - log_game("SQL ERROR obtaining multiplechoiceoptions from poll_question table. Error : \[[err]\]\n") + var/DBQuery/query_multi_choicelen = dbcon.NewQuery("SELECT multiplechoiceoptions FROM [format_table_name("poll_question")] WHERE id = [pollid]") + if(!query_multi_choicelen.warn_execute()) return 1 var/i - if(query_get_choicelen.NextRow()) - i = text2num(query_get_choicelen.item[1]) - var/DBQuery/query_hasvoted = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") - if(!query_hasvoted.Execute()) - var/err = query_hasvoted.ErrorMsg() - log_game("SQL ERROR obtaining id from poll_vote table. Error : \[[err]\]\n") + if(query_multi_choicelen.NextRow()) + i = text2num(query_multi_choicelen.item[1]) + var/DBQuery/query_multi_hasvoted = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_vote")] WHERE pollid = [pollid] AND ckey = '[ckey]'") + if(!query_multi_hasvoted.warn_execute()) return 1 while(i) - if(query_hasvoted.NextRow()) + if(query_multi_hasvoted.NextRow()) i-- else break @@ -588,10 +543,8 @@ if(client.holder) adminrank = client.holder.rank.name adminrank = sanitizeSQL(adminrank) - var/DBQuery/query_insert = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime, pollid, optionid, ckey, ip, adminrank) VALUES (Now(), [pollid], [optionid], '[ckey]', INET_ATON('[client.address]'), '[adminrank]')") - if(!query_insert.Execute()) - var/err = query_insert.ErrorMsg() - log_game("SQL ERROR adding vote to table. Error : \[[err]\]\n") + var/DBQuery/query_multi_vote = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (datetime, pollid, optionid, ckey, ip, adminrank) VALUES (Now(), [pollid], [optionid], '[ckey]', INET_ATON('[client.address]'), '[adminrank]')") + if(!query_multi_vote.warn_execute()) return 1 usr << browse(null,"window=playerpoll") return 0 diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/dead/new_player/preferences_setup.dm similarity index 65% rename from code/modules/mob/new_player/preferences_setup.dm rename to code/modules/mob/dead/new_player/preferences_setup.dm index 8f05c8853f..498c6dbb1b 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/dead/new_player/preferences_setup.dm @@ -5,6 +5,9 @@ gender = gender_override else gender = pick(MALE,FEMALE) + underwear = random_underwear(gender) + undershirt = random_undershirt(gender) + socks = random_socks() skin_tone = random_skin_tone() hair_style = random_hair_style(gender) facial_hair_style = random_facial_hair_style(gender) @@ -17,13 +20,8 @@ features = random_features() age = rand(AGE_MIN,AGE_MAX) -/datum/preferences/proc/update_preview_icon(nude=FALSE) +/datum/preferences/proc/update_preview_icon() // Silicons only need a very basic preview since there is no customization for them. - var/wide_icon = 0 - var/stamp_x = 0 - var/stamp_y = 1 - if(features["taur"] != "None") - wide_icon = 1 if(job_engsec_high) switch(job_engsec_high) if(AI) @@ -42,56 +40,45 @@ // Determine what job is marked as 'High' priority, and dress them up as such. var/datum/job/previewJob var/highRankFlag = job_civilian_high | job_medsci_high | job_engsec_high - if(!nude) - if(job_civilian_low & ASSISTANT) - previewJob = SSjob.GetJob("Assistant") - else if(highRankFlag) - var/highDeptFlag - if(job_civilian_high) - highDeptFlag = CIVILIAN - else if(job_medsci_high) - highDeptFlag = MEDSCI - else if(job_engsec_high) - highDeptFlag = ENGSEC - for(var/datum/job/job in SSjob.occupations) - if(job.flag == highRankFlag && job.department_flag == highDeptFlag) - previewJob = job - break + if(job_civilian_low & ASSISTANT) + previewJob = SSjob.GetJob("Assistant") + else if(highRankFlag) + var/highDeptFlag + if(job_civilian_high) + highDeptFlag = CIVILIAN + else if(job_medsci_high) + highDeptFlag = MEDSCI + else if(job_engsec_high) + highDeptFlag = ENGSEC + + for(var/datum/job/job in SSjob.occupations) + if(job.flag == highRankFlag && job.department_flag == highDeptFlag) + previewJob = job + break if(previewJob) mannequin.job = previewJob.title previewJob.equip(mannequin, TRUE) CHECK_TICK preview_icon = icon('icons/effects/effects.dmi', "nothing") - preview_icon.Scale((112), (32)) + preview_icon.Scale(48+32, 16+32) CHECK_TICK mannequin.setDir(NORTH) + var/icon/stamp = getFlatIcon(mannequin) - if(wide_icon) - stamp_x = 16 - else - stamp_x = 32 CHECK_TICK - preview_icon.Blend(stamp, ICON_OVERLAY, stamp_x, stamp_y) + preview_icon.Blend(stamp, ICON_OVERLAY, 25, 17) CHECK_TICK mannequin.setDir(WEST) stamp = getFlatIcon(mannequin) - if(wide_icon) - stamp_x = 48 - else - stamp_x = 64 CHECK_TICK - preview_icon.Blend(stamp, ICON_OVERLAY, stamp_x, stamp_y) + preview_icon.Blend(stamp, ICON_OVERLAY, 1, 9) CHECK_TICK mannequin.setDir(SOUTH) stamp = getFlatIcon(mannequin) - if(wide_icon) - stamp_x = -15 - else - stamp_x = 1 CHECK_TICK - preview_icon.Blend(stamp, ICON_OVERLAY, stamp_x, stamp_y) + preview_icon.Blend(stamp, ICON_OVERLAY, 49, 1) CHECK_TICK preview_icon.Scale(preview_icon.Width() * 2, preview_icon.Height() * 2) // Scaling here to prevent blurring in the browser. CHECK_TICK diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/dead/new_player/sprite_accessories.dm similarity index 100% rename from code/modules/mob/new_player/sprite_accessories.dm rename to code/modules/mob/dead/new_player/sprite_accessories.dm diff --git a/code/modules/mob/new_player/sprite_accessories_Citadel.dm b/code/modules/mob/dead/new_player/sprite_accessories_Citadel.dm similarity index 100% rename from code/modules/mob/new_player/sprite_accessories_Citadel.dm rename to code/modules/mob/dead/new_player/sprite_accessories_Citadel.dm diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index ecb7afba91..a24809bbb2 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -2,6 +2,9 @@ var/list/image/ghost_darkness_images = list() //this is a list of images for thi var/list/image/ghost_images_full = list() //this is a list of full images of the ghosts themselves var/list/image/ghost_images_default = list() //this is a list of the default (non-accessorized, non-dir) images of the ghosts themselves var/list/image/ghost_images_simple = list() //this is a list of all ghost images as the simple white ghost + +var/global/static/observer_default_invisibility = INVISIBILITY_OBSERVER + /mob/dead/observer name = "ghost" desc = "It's a g-g-g-g-ghooooost!" //jinkies! @@ -56,10 +59,12 @@ var/list/image/ghost_images_simple = list() //this is a list of all ghost images // of the mob var/deadchat_name -/mob/dead/observer/New(mob/body) +/mob/dead/observer/Initialize() + invisibility = observer_default_invisibility + verbs += /mob/dead/observer/proc/dead_tele - if(global.cross_allowed) + if(config.cross_allowed) verbs += /mob/dead/observer/proc/server_hop ghostimage = image(src.icon,src,src.icon_state) @@ -74,9 +79,10 @@ var/list/image/ghost_images_simple = list() //this is a list of all ghost images updateallghostimages() var/turf/T + var/mob/body = loc if(ismob(body)) T = get_turf(body) //Where is the body located? - attack_log = body.attack_log //preserve our attack logs by copying them to our ghost + logging = body.logging //preserve our logs by copying them to our ghost gender = body.gender if(body.mind && body.mind.name) @@ -100,7 +106,12 @@ var/list/image/ghost_images_simple = list() //this is a list of all ghost images update_icon() if(!T) - T = pick(latejoin) //Safety in case we cannot find the body's position + var/list/turfs = get_area_turfs(/area/shuttle/arrival) + if(turfs.len) + T = pick(turfs) + else + T = locate(round(world.maxx/2), round(world.maxy/2), ZLEVEL_STATION) //middle of the station + loc = T if(!name) //To prevent nameless ghosts @@ -314,13 +325,13 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(!client) return if(!(mind && mind.current)) - src << "You have no body." + to_chat(src, "You have no body.") return if(!can_reenter_corpse) - src << "You cannot re-enter your body." + to_chat(src, "You cannot re-enter your body.") return if(mind.current.key && copytext(mind.current.key,1,2)!="@") //makes sure we don't accidentally kick any clients - usr << "Another consciousness is in your body...It is resisting you." + to_chat(usr, "Another consciousness is in your body...It is resisting you.") return client.view = world.view SStgui.on_transfer(src, mind.current) // Transfer NanoUIs. @@ -331,7 +342,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(flashwindow) window_flash(client) if(message) - src << "[message]" + to_chat(src, "[message]") if(source) var/obj/screen/alert/A = throw_alert("\ref[source]_notify_cloning", /obj/screen/alert/notify_cloning) if(A) @@ -345,7 +356,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp A.add_overlay(source) source.layer = old_layer source.plane = old_plane - src << "(Click to re-enter)" + to_chat(src, "(Click to re-enter)") if(sound) src << sound(sound) @@ -354,7 +365,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set name = "Teleport" set desc= "Teleport to a location" if(!isobserver(usr)) - usr << "Not when you're not dead!" + to_chat(usr, "Not when you're not dead!") return var/A A = input("Area to jump to", "BOOYEA", A) as null|anything in sortedAreas @@ -367,7 +378,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp L+=T if(!L || !L.len) - usr << "No area available." + to_chat(usr, "No area available.") usr.loc = pick(L) update_parallax_contents() @@ -393,7 +404,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp orbitsize -= (orbitsize/world.icon_size)*(world.icon_size*0.25) if(orbiting && orbiting.orbiting != target) - src << "Now orbiting [target]." + to_chat(src, "Now orbiting [target].") var/rot_seg @@ -446,7 +457,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp A.loc = T A.update_parallax_contents() else - A << "This mob is not located in the game world." + to_chat(A, "This mob is not located in the game world.") /mob/dead/observer/verb/change_view_range() set category = "Ghost" @@ -488,11 +499,11 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp /mob/dead/observer/memory() set hidden = 1 - src << "You are dead! You have no mind to store memory!" + to_chat(src, "You are dead! You have no mind to store memory!") /mob/dead/observer/add_memory() set hidden = 1 - src << "You are dead! You have no mind to store memory!" + to_chat(src, "You are dead! You have no mind to store memory!") /mob/dead/observer/verb/toggle_ghostsee() set name = "Toggle Ghost Vision" @@ -500,7 +511,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set category = "Ghost" ghostvision = !(ghostvision) updateghostsight() - usr << "You [(ghostvision?"now":"no longer")] have ghost vision." + to_chat(usr, "You [(ghostvision?"now":"no longer")] have ghost vision.") /mob/dead/observer/verb/toggle_darkness() set name = "Toggle Darkness" @@ -581,14 +592,14 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp return 0 if(ismegafauna(target)) - src << "This creature is too powerful for you to possess!" + to_chat(src, "This creature is too powerful for you to possess!") return 0 if(can_reenter_corpse || (mind && mind.current)) if(alert(src, "Your soul is still tied to your former life as [mind.current.name], if you go forward there is no going back to that life. Are you sure you wish to continue?", "Move On", "Yes", "No") == "No") return 0 if(target.key) - src << "Someone has taken this body while you were choosing!" + to_chat(src, "Someone has taken this body while you were choosing!") return 0 target.key = key @@ -599,14 +610,32 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp set category = "Ghost" set name = "Server Hop!" set desc= "Jump to the other server" - if (alert(src, "Jump to server running at [global.cross_address]?", "Server Hop", "Yes", "No") != "Yes") + if(notransform) + return + if(!config.cross_allowed) + verbs -= /mob/dead/observer/proc/server_hop + to_chat(src, "Server Hop has been disabled.") + return + if (alert(src, "Jump to server running at [config.cross_address]?", "Server Hop", "Yes", "No") != "Yes") return 0 - if (client && global.cross_allowed) - src << "Sending you to [global.cross_address]." + if (client && config.cross_allowed) + to_chat(src, "Sending you to [config.cross_address].") + new /obj/screen/splash(client) + notransform = TRUE + sleep(29) //let the animation play + notransform = FALSE winset(src, null, "command=.options") //other wise the user never knows if byond is downloading resources - client << link(global.cross_address) + client << link(config.cross_address + "?server_hop=[key]") else - src << "There is no other server configured!" + to_chat(src, "There is no other server configured!") + +/proc/show_server_hop_transfer_screen(expected_key) + //only show it to incoming ghosts + for(var/mob/dead/observer/O in player_list) + if(O.key == expected_key) + if(O.client) + new /obj/screen/splash(O.client, TRUE) + break //this is a mob verb instead of atom for performance reasons //see /mob/verb/examinate() in mob.dm for more info @@ -643,8 +672,18 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp var/atom/movable/target = locate(href_list["follow"]) if(istype(target) && (target != src)) ManualFollow(target) + return + if(href_list["x"] && href_list["y"] && href_list["z"]) + var/tx = text2num(href_list["x"]) + var/ty = text2num(href_list["y"]) + var/tz = text2num(href_list["z"]) + var/turf/target = locate(tx, ty, tz) + if(istype(target)) + forceMove(target) + return if(href_list["reenter"]) reenter_corpse() + return //We don't want to update the current var //But we will still carry a mind. @@ -668,11 +707,11 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(data_huds_on) //remove old huds remove_data_huds() - src << "Data HUDs disabled." + to_chat(src, "Data HUDs disabled.") data_huds_on = 0 else show_data_huds() - src << "Data HUDs enabled." + to_chat(src, "Data HUDs enabled.") data_huds_on = 1 /mob/dead/observer/verb/restore_ghost_apperance() @@ -781,9 +820,15 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp if(SSpai) SSpai.recruitWindow(src) else - usr << "Can't become a pAI candidate while not dead!" + to_chat(usr, "Can't become a pAI candidate while not dead!") /mob/dead/observer/CtrlShiftClick(mob/user) if(isobserver(user) && check_rights(R_SPAWN)) change_mob_type( /mob/living/carbon/human , null, null, TRUE) //always delmob, ghosts shouldn't be left lingering +/proc/set_observer_default_invisibility(amount, message=null) + for(var/mob/dead/observer/G in player_list) + G.invisibility = amount + if(message) + to_chat(G, message) + observer_default_invisibility = amount diff --git a/code/modules/mob/dead/observer/say.dm b/code/modules/mob/dead/observer/say.dm index 6ec0224508..f3b9ca7d3d 100644 --- a/code/modules/mob/dead/observer/say.dm +++ b/code/modules/mob/dead/observer/say.dm @@ -18,5 +18,5 @@ else speaker = V.source var/link = FOLLOW_LINK(src, speaker) - src << "[link] [message]" + to_chat(src, "[link] [message]") diff --git a/code/modules/mob/interactive.dm b/code/modules/mob/interactive.dm index 77d669dbfa..0363520f4c 100644 --- a/code/modules/mob/interactive.dm +++ b/code/modules/mob/interactive.dm @@ -178,7 +178,7 @@ if(T) T.alternateProcessing = !T.alternateProcessing T.forceProcess = 1 - usr << "[T]'s processing has been switched to [T.alternateProcessing ? "High Profile" : "Low Profile"]" + to_chat(usr, "[T]'s processing has been switched to [T.alternateProcessing ? "High Profile" : "Low Profile"]") /client/proc/customiseSNPC(var/mob/A in SSnpc.botPool_l) set name = "Customize SNPC" @@ -381,7 +381,7 @@ faction -= "neutral" faction += "hostile" -/mob/living/carbon/human/interactive/New() +/mob/living/carbon/human/interactive/Initialize() ..() set_species(/datum/species/synth) @@ -1605,13 +1605,13 @@ nearby += M //END OF MODULES -/mob/living/carbon/human/interactive/angry/New() +/mob/living/carbon/human/interactive/angry/Initialize() TRAITS |= TRAIT_ROBUST TRAITS |= TRAIT_MEAN faction += "bot_angry" ..() -/mob/living/carbon/human/interactive/friendly/New() +/mob/living/carbon/human/interactive/friendly/Initialize() TRAITS |= TRAIT_FRIENDLY TRAITS |= TRAIT_UNROBUST faction += "bot_friendly" @@ -1619,7 +1619,7 @@ functions -= "combat" ..() -/mob/living/carbon/human/interactive/greytide/New() +/mob/living/carbon/human/interactive/greytide/Initialize() TRAITS |= TRAIT_ROBUST TRAITS |= TRAIT_MEAN TRAITS |= TRAIT_THIEVING @@ -1631,7 +1631,7 @@ ..() //Walk softly and carry a big stick -/mob/living/carbon/human/interactive/robust/New() +/mob/living/carbon/human/interactive/robust/Initialize() TRAITS |= TRAIT_FRIENDLY TRAITS |= TRAIT_ROBUST TRAITS |= TRAIT_SMART diff --git a/code/modules/mob/inventory.dm b/code/modules/mob/inventory.dm index 686a2f7e26..6bef611a65 100644 --- a/code/modules/mob/inventory.dm +++ b/code/modules/mob/inventory.dm @@ -350,7 +350,7 @@ /obj/item/proc/equip_to_best_slot(var/mob/M) if(src != M.get_active_held_item()) - M << "You are not holding anything to equip!" + to_chat(M, "You are not holding anything to equip!") return FALSE if(M.equip_to_appropriate_slot(src)) @@ -380,7 +380,7 @@ S.handle_item_insertion(src) return TRUE - M << "You are unable to equip that!" + to_chat(M, "You are unable to equip that!") return FALSE diff --git a/code/modules/mob/living/blood.dm b/code/modules/mob/living/blood.dm index 5a3a53768e..c83ebe90d3 100644 --- a/code/modules/mob/living/blood.dm +++ b/code/modules/mob/living/blood.dm @@ -12,7 +12,7 @@ /mob/living/carbon/human/proc/resume_bleeding() bleedsuppress = 0 if(stat != DEAD && bleed_rate) - src << "The blood soaks through your bandage." + to_chat(src, "The blood soaks through your bandage.") /mob/living/carbon/monkey/handle_blood() @@ -38,20 +38,20 @@ switch(blood_volume) if(BLOOD_VOLUME_OKAY to BLOOD_VOLUME_SAFE) if(prob(5)) - src << "You feel [pick("dizzy","woozy","faint")]." + to_chat(src, "You feel [pick("dizzy","woozy","faint")].") adjustOxyLoss(round((BLOOD_VOLUME_NORMAL - blood_volume) * 0.01, 1)) if(BLOOD_VOLUME_BAD to BLOOD_VOLUME_OKAY) adjustOxyLoss(round((BLOOD_VOLUME_NORMAL - blood_volume) * 0.02, 1)) if(prob(5)) blur_eyes(6) var/word = pick("dizzy","woozy","faint") - src << "You feel very [word]." + to_chat(src, "You feel very [word].") if(BLOOD_VOLUME_SURVIVE to BLOOD_VOLUME_BAD) adjustOxyLoss(5) if(prob(15)) Paralyse(rand(1,3)) var/word = pick("dizzy","woozy","faint") - src << "You feel extremely [word]." + to_chat(src, "You feel extremely [word].") if(0 to BLOOD_VOLUME_SURVIVE) death() diff --git a/code/modules/mob/living/bloodcrawl.dm b/code/modules/mob/living/bloodcrawl.dm index 3a601a8711..e338f49338 100644 --- a/code/modules/mob/living/bloodcrawl.dm +++ b/code/modules/mob/living/bloodcrawl.dm @@ -28,7 +28,7 @@ //TODO make it toggleable to either forcedrop the items, or deny //entry when holding them // literally only an option for carbons though - C << "You may not hold items while blood crawling!" + to_chat(C, "You may not hold items while blood crawling!") return 0 var/obj/item/weapon/bloodcrawl/B1 = new(C) var/obj/item/weapon/bloodcrawl/B2 = new(C) @@ -84,11 +84,11 @@ if(kidnapped) var/success = bloodcrawl_consume(victim) if(!success) - src << "You happily devour... nothing? Your meal vanished at some point!" + to_chat(src, "You happily devour... nothing? Your meal vanished at some point!") return 1 /mob/living/proc/bloodcrawl_consume(mob/living/victim) - src << "You begin to feast on [victim]. You can not move while you are doing this." + to_chat(src, "You begin to feast on [victim]. You can not move while you are doing this.") var/sound if(istype(src, /mob/living/simple_animal/slaughter)) @@ -105,7 +105,7 @@ return FALSE if(victim.reagents && victim.reagents.has_reagent("devilskiss")) - src << "AAH! THEIR FLESH! IT BURNS!" + to_chat(src, "AAH! THEIR FLESH! IT BURNS!") adjustBruteLoss(25) //I can't use adjustHealth() here because bloodcrawl affects /mob/living and adjustHealth() only affects simple mobs var/found_bloodpool = FALSE for(var/obj/effect/decal/cleanable/target in range(1,get_turf(victim))) @@ -122,7 +122,7 @@ victim.exit_blood_effect() return TRUE - src << "You devour [victim]. Your health is fully restored." + to_chat(src, "You devour [victim]. Your health is fully restored.") src.revive(full_heal = 1) // No defib possible after laughter @@ -153,7 +153,7 @@ /mob/living/proc/phasein(obj/effect/decal/cleanable/B) if(src.notransform) - src << "Finish eating first!" + to_chat(src, "Finish eating first!") return 0 B.visible_message("[B] starts to bubble...") if(!do_after(src, 20, target = B)) diff --git a/code/modules/mob/living/brain/MMI.dm b/code/modules/mob/living/brain/MMI.dm index ae0d8a618f..100bec5cb9 100644 --- a/code/modules/mob/living/brain/MMI.dm +++ b/code/modules/mob/living/brain/MMI.dm @@ -47,10 +47,10 @@ if(istype(O,/obj/item/organ/brain)) //Time to stick a brain in it --NEO var/obj/item/organ/brain/newbrain = O if(brain) - user << "There's already a brain in the MMI!" + to_chat(user, "There's already a brain in the MMI!") return if(!newbrain.brainmob) - user << "You aren't sure where this brain came from, but you're pretty sure it's a useless brain!" + to_chat(user, "You aren't sure where this brain came from, but you're pretty sure it's a useless brain!") return if(!user.transferItemToLoc(O, src)) @@ -86,9 +86,9 @@ /obj/item/device/mmi/attack_self(mob/user) if(!brain) radio.on = !radio.on - user << "You toggle the MMI's radio system [radio.on==1 ? "on" : "off"]." + to_chat(user, "You toggle the MMI's radio system [radio.on==1 ? "on" : "off"].") else - user << "You unlock and upend the MMI, spilling the brain onto the floor." + to_chat(user, "You unlock and upend the MMI, spilling the brain onto the floor.") eject_brain(user) update_icon() name = "Man-Machine Interface" @@ -146,13 +146,13 @@ set popup_menu = 0 if(brainmob.stat) - brainmob << "Can't do that while incapacitated or dead!" + to_chat(brainmob, "Can't do that while incapacitated or dead!") if(!radio.on) - brainmob << "Your radio is disabled!" + to_chat(brainmob, "Your radio is disabled!") return radio.listening = radio.listening==1 ? 0 : 1 - brainmob << "Radio is [radio.listening==1 ? "now" : "no longer"] receiving broadcast." + to_chat(brainmob, "Radio is [radio.listening==1 ? "now" : "no longer"] receiving broadcast.") /obj/item/device/mmi/emp_act(severity) if(!brainmob || iscyborg(loc)) @@ -195,13 +195,13 @@ if(brainmob) var/mob/living/brain/B = brainmob if(!B.key || !B.mind || B.stat == DEAD) - user << "The MMI indicates the brain is completely unresponsive." + to_chat(user, "The MMI indicates the brain is completely unresponsive.") else if(!B.client) - user << "The MMI indicates the brain is currently inactive; it might change." + to_chat(user, "The MMI indicates the brain is currently inactive; it might change.") else - user << "The MMI indicates the brain is active." + to_chat(user, "The MMI indicates the brain is active.") /obj/item/device/mmi/syndie diff --git a/code/modules/mob/living/brain/brain.dm b/code/modules/mob/living/brain/brain.dm index 0b0fa0ccc9..089efe4444 100644 --- a/code/modules/mob/living/brain/brain.dm +++ b/code/modules/mob/living/brain/brain.dm @@ -8,15 +8,15 @@ var/emp_damage = 0//Handles a type of MMI damage var/datum/dna/stored/stored_dna // dna var for brain. Used to store dna, brain dna is not considered like actual dna, brain.has_dna() returns FALSE. stat = DEAD //we start dead by default - see_invisible = SEE_INVISIBLE_MINIMUM + see_invisible = SEE_INVISIBLE_LIVING -/mob/living/brain/New(loc) +/mob/living/brain/Initialize() ..() create_dna(src) stored_dna.initialize_dna(random_blood_type()) if(isturf(loc)) //not spawned in an MMI or brain organ (most likely adminspawned) var/obj/item/organ/brain/OB = new(loc) //we create a new brain organ for it. - src.loc = OB + loc = OB OB.brainmob = src diff --git a/code/modules/mob/living/brain/brain_item.dm b/code/modules/mob/living/brain/brain_item.dm index 1ae8a422c0..077c876f24 100644 --- a/code/modules/mob/living/brain/brain_item.dm +++ b/code/modules/mob/living/brain/brain_item.dm @@ -56,7 +56,7 @@ C.dna.copy_dna(brainmob.stored_dna) if(L.mind && L.mind.current && (L.mind.current.stat == DEAD)) L.mind.transfer_to(brainmob) - brainmob << "You feel slightly disoriented. That's normal when you're just a brain." + to_chat(brainmob, "You feel slightly disoriented. That's normal when you're just a brain.") /obj/item/organ/brain/attackby(obj/item/O, mob/user, params) user.changeNext_move(CLICK_CD_MELEE) @@ -69,16 +69,16 @@ if(brainmob) if(brainmob.client) if(brainmob.health <= HEALTH_THRESHOLD_DEAD) - user << "It's lifeless and severely damaged." + to_chat(user, "It's lifeless and severely damaged.") else - user << "You can feel the small spark of life still left in this one." + to_chat(user, "You can feel the small spark of life still left in this one.") else - user << "This one seems particularly lifeless. Perhaps it will regain some of its luster later." + to_chat(user, "This one seems particularly lifeless. Perhaps it will regain some of its luster later.") else if(decoy_override) - user << "This one seems particularly lifeless. Perhaps it will regain some of its luster later." + to_chat(user, "This one seems particularly lifeless. Perhaps it will regain some of its luster later.") else - user << "This one is completely devoid of life." + to_chat(user, "This one is completely devoid of life.") /obj/item/organ/brain/attack(mob/living/carbon/C, mob/user) if(!istype(C)) @@ -90,7 +90,7 @@ return ..() if((C.head && (C.head.flags_cover & HEADCOVERSEYES)) || (C.wear_mask && (C.wear_mask.flags_cover & MASKCOVERSEYES)) || (C.glasses && (C.glasses.flags & GLASSESCOVERSEYES))) - user << "You're going to need to remove their head cover first!" + to_chat(user, "You're going to need to remove their head cover first!") return //since these people will be dead M != usr @@ -107,10 +107,10 @@ "[msg]") if(C != user) - C << "[user] inserts [src] into your head." - user << "You insert [src] into [C]'s head." + to_chat(C, "[user] inserts [src] into your head.") + to_chat(user, "You insert [src] into [C]'s head.") else - user << "You insert [src] into your head." //LOL + to_chat(user, "You insert [src] into your head." ) Insert(C) else diff --git a/code/modules/mob/living/brain/posibrain.dm b/code/modules/mob/living/brain/posibrain.dm index 81143d62a5..483f907639 100644 --- a/code/modules/mob/living/brain/posibrain.dm +++ b/code/modules/mob/living/brain/posibrain.dm @@ -48,7 +48,7 @@ var/global/posibrain_notif_cooldown = 0 /obj/item/device/mmi/posibrain/attack_self(mob/user) if(brainmob && !brainmob.key && !notified) //Start the process of requesting a new ghost. - user << begin_activation_message + to_chat(user, begin_activation_message) ping_ghosts("requested", FALSE) notified = 1 used = 0 @@ -98,7 +98,7 @@ var/global/posibrain_notif_cooldown = 0 /obj/item/device/mmi/posibrain/proc/transfer_personality(mob/candidate) if(used || (brainmob && brainmob.key)) //Prevents hostile takeover if two ghosts get the prompt or link for the same brain. - candidate << "This brain has already been taken! Please try your possession again later!" + to_chat(candidate, "This brain has already been taken! Please try your possession again later!") return FALSE notified = 0 if(candidate.mind && !isobserver(candidate)) @@ -106,7 +106,7 @@ var/global/posibrain_notif_cooldown = 0 else brainmob.ckey = candidate.ckey name = "[initial(name)] ([brainmob.name])" - brainmob << welcome_message + to_chat(brainmob, welcome_message) brainmob.mind.assigned_role = new_role brainmob.stat = CONSCIOUS dead_mob_list -= brainmob @@ -131,7 +131,7 @@ var/global/posibrain_notif_cooldown = 0 else msg = "[dead_message]" - user << msg + to_chat(user, msg) /obj/item/device/mmi/posibrain/New() brainmob = new(src) diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index 516e00effb..a86fcbfdc9 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -34,7 +34,7 @@ var/static/regex/alien_name_regex = new("alien (larva|sentinel|drone|hunter|praetorian|queen)( \\(\\d+\\))?") -/mob/living/carbon/alien/New() +/mob/living/carbon/alien/Initialize() verbs += /mob/living/proc/mob_sleep verbs += /mob/living/proc/lay_down @@ -138,7 +138,7 @@ Des: Removes all infected images from the alien. return initial(pixel_y) /mob/living/carbon/alien/proc/alien_evolve(mob/living/carbon/alien/new_xeno) - src << "You begin to evolve!" + to_chat(src, "You begin to evolve!") visible_message("[src] begins to twist and contort!") new_xeno.setDir(dir) if(!alien_name_regex.Find(name)) diff --git a/code/modules/mob/living/carbon/alien/alien_defense.dm b/code/modules/mob/living/carbon/alien/alien_defense.dm index 0615e52b08..c2eb0a23b9 100644 --- a/code/modules/mob/living/carbon/alien/alien_defense.dm +++ b/code/modules/mob/living/carbon/alien/alien_defense.dm @@ -15,7 +15,7 @@ In all, this is a lot like the monkey code. /N */ /mob/living/carbon/alien/attack_alien(mob/living/carbon/alien/M) if(isturf(loc) && istype(loc.loc, /area/start)) - M << "No attacking people at spawn, you jackass." + to_chat(M, "No attacking people at spawn, you jackass.") return switch(M.a_intent) @@ -41,7 +41,7 @@ In all, this is a lot like the monkey code. /N add_logs(M, src, "attacked") updatehealth() else - M << "[name] is too injured for that." + to_chat(M, "[name] is too injured for that.") /mob/living/carbon/alien/attack_larva(mob/living/carbon/alien/larva/L) diff --git a/code/modules/mob/living/carbon/alien/damage_procs.dm b/code/modules/mob/living/carbon/alien/damage_procs.dm index 5368c80065..5fa6675c79 100644 --- a/code/modules/mob/living/carbon/alien/damage_procs.dm +++ b/code/modules/mob/living/carbon/alien/damage_procs.dm @@ -1,18 +1,10 @@ - /mob/living/carbon/alien/getToxLoss() return 0 /mob/living/carbon/alien/adjustToxLoss(amount, updating_health = TRUE, forced = FALSE) //alien immune to tox damage return FALSE -/mob/living/carbon/alien/adjustFireLoss(amount, updating_health = TRUE, forced = FALSE) // Weak to Fire - if(amount > 0) - amount *= 2 - . = ..() - - - //aliens are immune to stamina damage. /mob/living/carbon/alien/adjustStaminaLoss(amount, updating_stamina = 1) return diff --git a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm index cb4020c98d..2ae25c71ee 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm @@ -42,15 +42,15 @@ Doesn't work on other aliens/AI.*/ /obj/effect/proc_holder/alien/proc/cost_check(check_turf=0,mob/living/carbon/user,silent = 0) if(user.stat) if(!silent) - user << "You must be conscious to do this." + to_chat(user, "You must be conscious to do this.") return 0 if(user.getPlasma() < plasma_cost) if(!silent) - user << "Not enough plasma stored." + to_chat(user, "Not enough plasma stored.") return 0 if(check_turf && (!isturf(user.loc) || isspaceturf(user.loc))) if(!silent) - user << "Bad place for a garden!" + to_chat(user, "Bad place for a garden!") return 0 return 1 @@ -63,7 +63,7 @@ Doesn't work on other aliens/AI.*/ /obj/effect/proc_holder/alien/plant/fire(mob/living/carbon/user) if(locate(/obj/structure/alien/weeds/node) in get_turf(user)) - user << "There's already a weed node here." + to_chat(user, "There's already a weed node here.") return 0 user.visible_message("[user] has planted some alien weeds!") new/obj/structure/alien/weeds/node(user.loc) @@ -85,19 +85,14 @@ Doesn't work on other aliens/AI.*/ var/msg = sanitize(input("Message:", "Alien Whisper") as text|null) if(msg) log_say("AlienWhisper: [key_name(user)]->[M.key] : [msg]") - M << "You hear a strange, alien voice in your head...[msg]" - user << "You said: \"[msg]\" to [M]" + to_chat(M, "You hear a strange, alien voice in your head...[msg]") + to_chat(user, "You said: \"[msg]\" to [M]") for(var/ded in dead_mob_list) if(!isobserver(ded)) continue var/follow_link_user = FOLLOW_LINK(ded, user) var/follow_link_whispee = FOLLOW_LINK(ded, M) - ded << "[follow_link_user] \ - [user] \ - Alien Whisper --> \ - [follow_link_whispee] \ - [M] \ - [msg]" + to_chat(ded, "[follow_link_user] [user] Alien Whisper --> [follow_link_whispee] [M] [msg]") else return 0 return 1 @@ -122,10 +117,10 @@ Doesn't work on other aliens/AI.*/ if (get_dist(user,M) <= 1) M.adjustPlasma(amount) user.adjustPlasma(-amount) - M << "[user] has transferred [amount] plasma to you." - user << "You transfer [amount] plasma to [M]" + to_chat(M, "[user] has transferred [amount] plasma to you.") + to_chat(user, "You transfer [amount] plasma to [M]") else - user << "You need to be closer!" + to_chat(user, "You need to be closer!") return /obj/effect/proc_holder/alien/acid @@ -146,12 +141,12 @@ Doesn't work on other aliens/AI.*/ user.visible_message("[user] vomits globs of vile stuff all over [target]. It begins to sizzle and melt under the bubbling mess of acid!") return 1 else - user << "You cannot dissolve this object." + to_chat(user, "You cannot dissolve this object.") return 0 else - src << "Target is too far away." + to_chat(src, "Target is too far away.") return 0 @@ -204,7 +199,7 @@ Doesn't work on other aliens/AI.*/ var/mob/living/carbon/user = ranged_ability_user if(user.getPlasma() < p_cost) - user << "You need at least [p_cost] plasma to spit." + to_chat(user, "You need at least [p_cost] plasma to spit.") remove_ranged_ability() return @@ -255,14 +250,14 @@ Doesn't work on other aliens/AI.*/ /obj/effect/proc_holder/alien/resin/fire(mob/living/carbon/user) if(locate(/obj/structure/alien/resin) in user.loc) - user << "There is already a resin structure there." + to_chat(user, "There is already a resin structure there.") return 0 var/choice = input("Choose what you wish to shape.","Resin building") as null|anything in structures if(!choice) return 0 if (!cost_check(check_turf,user)) return 0 - user << "You shape a [choice]." + to_chat(user, "You shape a [choice].") user.visible_message("[user] vomits up a thick purple substance and begins to shape it.") choice = structures[choice] @@ -298,12 +293,12 @@ Doesn't work on other aliens/AI.*/ user.alpha = 75 //Still easy to see in lit areas with bright tiles, almost invisible on resin. user.sneaking = 1 active = 1 - user << "You blend into the shadows..." + to_chat(user, "You blend into the shadows...") else user.alpha = initial(user.alpha) user.sneaking = 0 active = 0 - user << "You reveal yourself!" + to_chat(user, "You reveal yourself!") /mob/living/carbon/proc/getPlasma() diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm index 2d7858e8d6..9e79ec1259 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm @@ -6,7 +6,7 @@ icon_state = "aliend" -/mob/living/carbon/alien/humanoid/drone/New() +/mob/living/carbon/alien/humanoid/drone/Initialize() AddAbility(new/obj/effect/proc_holder/alien/evolve(null)) ..() @@ -30,19 +30,19 @@ /obj/effect/proc_holder/alien/evolve/fire(mob/living/carbon/alien/humanoid/user) var/obj/item/organ/alien/hivenode/node = user.getorgan(/obj/item/organ/alien/hivenode) if(!node) //Players are Murphy's Law. We may not expect there to ever be a living xeno with no hivenode, but they _WILL_ make it happen. - user << "Without the hivemind, you can't possibly hold the responsibility of leadership!" + to_chat(user, "Without the hivemind, you can't possibly hold the responsibility of leadership!") return 0 if(node.recent_queen_death) - user << "Your thoughts are still too scattered to take up the position of leadership." + to_chat(user, "Your thoughts are still too scattered to take up the position of leadership.") return 0 if(!isturf(user.loc)) - user << "You can't evolve here!" + to_chat(user, "You can't evolve here!") return 0 if(!get_alien_type(/mob/living/carbon/alien/humanoid/royal)) var/mob/living/carbon/alien/humanoid/royal/praetorian/new_xeno = new (user.loc) user.alien_evolve(new_xeno) return 1 else - user << "We already have a living royal!" + to_chat(user, "We already have a living royal!") return 0 \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm index 05e62e438b..7001e397e8 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm @@ -22,7 +22,7 @@ leap_icon.icon_state = "leap_[leap_on_click ? "on":"off"]" update_icons() if(message) - src << "You will now [leap_on_click ? "leap at":"slash at"] enemies!" + to_chat(src, "You will now [leap_on_click ? "leap at":"slash at"] enemies!") else return @@ -39,14 +39,14 @@ /mob/living/carbon/alien/humanoid/hunter/proc/leap_at(atom/A) if(pounce_cooldown) - src << "You are too fatigued to pounce right now!" + to_chat(src, "You are too fatigued to pounce right now!") return if(leaping || stat || buckled || lying) return if(!has_gravity() || !A.has_gravity()) - src << "It is unsafe to leap without gravity!" + to_chat(src, "It is unsafe to leap without gravity!") //It's also extremely buggy visually, so it's balance+bugfix return diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/praetorian.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/praetorian.dm index d16c06bea5..90d4ced85f 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/praetorian.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/praetorian.dm @@ -7,7 +7,7 @@ -/mob/living/carbon/alien/humanoid/royal/praetorian/New() +/mob/living/carbon/alien/humanoid/royal/praetorian/Initialize() real_name = name @@ -37,10 +37,10 @@ /obj/effect/proc_holder/alien/royal/praetorian/evolve/fire(mob/living/carbon/alien/humanoid/user) var/obj/item/organ/alien/hivenode/node = user.getorgan(/obj/item/organ/alien/hivenode) if(!node) //Just in case this particular Praetorian gets violated and kept by the RD as a replacement for Lamarr. - user << "Without the hivemind, you would be unfit to rule as queen!" + to_chat(user, "Without the hivemind, you would be unfit to rule as queen!") return 0 if(node.recent_queen_death) - user << "You are still too burdened with guilt to evolve into a queen." + to_chat(user, "You are still too burdened with guilt to evolve into a queen.") return 0 if(!get_alien_type(/mob/living/carbon/alien/humanoid/royal/queen)) var/mob/living/carbon/alien/humanoid/royal/queen/new_xeno = new (user.loc) @@ -50,5 +50,5 @@ M.Grant(new_xeno) return 1 else - user << "We already have an alive queen." + to_chat(user, "We already have an alive queen.") return 0 diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm index 2514c8d16a..2988e9b3bf 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm @@ -6,7 +6,7 @@ icon_state = "aliens" -/mob/living/carbon/alien/humanoid/sentinel/New() +/mob/living/carbon/alien/humanoid/sentinel/Initialize() AddAbility(new /obj/effect/proc_holder/alien/sneak) ..() diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index fa841f6152..9c83bf6b29 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -21,7 +21,7 @@ //This is fine right now, if we're adding organ specific damage this needs to be updated -/mob/living/carbon/alien/humanoid/New() +/mob/living/carbon/alien/humanoid/Initialize() AddAbility(new/obj/effect/proc_holder/alien/regurgitate(null)) ..() diff --git a/code/modules/mob/living/carbon/alien/humanoid/queen.dm b/code/modules/mob/living/carbon/alien/humanoid/queen.dm index 467c472369..0a5f5901f9 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/queen.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/queen.dm @@ -33,7 +33,7 @@ /datum/action/small_sprite/Trigger() ..() if(!small) - var/image/I = image(icon = 'icons/mob/alien.dmi' , icon_state = "alienq_running", loc = owner) + var/image/I = image(icon = 'icons/mob/alien.dmi' , icon_state = "alienq", loc = owner) I.override = 1 I.pixel_x -= owner.pixel_x I.pixel_y -= owner.pixel_y @@ -44,7 +44,7 @@ owner.remove_alt_appearance("smallqueen") small = 0 -/mob/living/carbon/alien/humanoid/royal/queen/New() +/mob/living/carbon/alien/humanoid/royal/queen/Initialize() //there should only be one queen for(var/mob/living/carbon/alien/humanoid/royal/queen/Q in living_mob_list) if(Q == src) @@ -84,7 +84,7 @@ /obj/effect/proc_holder/alien/lay_egg/fire(mob/living/carbon/user) if(locate(/obj/structure/alien/egg) in get_turf(user)) - user << "There's already an egg here." + to_chat(user, "There's already an egg here.") return 0 user.visible_message("[user] has laid an egg!") new /obj/structure/alien/egg(user.loc) @@ -103,20 +103,20 @@ /obj/effect/proc_holder/alien/royal/queen/promote/fire(mob/living/carbon/alien/user) var/obj/item/queenpromote/prom if(get_alien_type(/mob/living/carbon/alien/humanoid/royal/praetorian/)) - user << "You already have a Praetorian!" + to_chat(user, "You already have a Praetorian!") return 0 else for(prom in user) - user << "You discard [prom]." + to_chat(user, "You discard [prom].") qdel(prom) return 0 prom = new (user.loc) if(!user.put_in_active_hand(prom, 1)) - user << "You must empty your hands before preparing the parasite." + to_chat(user, "You must empty your hands before preparing the parasite.") return 0 else //Just in case telling the player only once is not enough! - user << "Use the royal parasite on one of your children to promote her to Praetorian!" + to_chat(user, "Use the royal parasite on one of your children to promote her to Praetorian!") return 0 /obj/item/queenpromote @@ -128,19 +128,19 @@ /obj/item/queenpromote/attack(mob/living/M, mob/living/carbon/alien/humanoid/user) if(!isalienadult(M) || istype(M, /mob/living/carbon/alien/humanoid/royal)) - user << "You may only use this with your adult, non-royal children!" + to_chat(user, "You may only use this with your adult, non-royal children!") return if(get_alien_type(/mob/living/carbon/alien/humanoid/royal/praetorian/)) - user << "You already have a Praetorian!" + to_chat(user, "You already have a Praetorian!") return var/mob/living/carbon/alien/humanoid/A = M if(A.stat == CONSCIOUS && A.mind && A.key) if(!user.usePlasma(500)) - user << "You must have 500 plasma stored to use this!" + to_chat(user, "You must have 500 plasma stored to use this!") return - A << "The queen has granted you a promotion to Praetorian!" + to_chat(A, "The queen has granted you a promotion to Praetorian!") user.visible_message("[A] begins to expand, twist and contort!") var/mob/living/carbon/alien/humanoid/royal/praetorian/new_prae = new (A.loc) A.mind.transfer_to(new_prae) @@ -148,10 +148,10 @@ qdel(src) return else - user << "This child must be alert and responsive to become a Praetorian!" + to_chat(user, "This child must be alert and responsive to become a Praetorian!") /obj/item/queenpromote/attack_self(mob/user) - user << "You discard [src]." + to_chat(user, "You discard [src].") qdel(src) //:^) diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index 1538be2ca9..6e87d896bd 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -18,7 +18,7 @@ //This is fine right now, if we're adding organ specific damage this needs to be updated -/mob/living/carbon/alien/larva/New() +/mob/living/carbon/alien/larva/Initialize() AddAbility(new/obj/effect/proc_holder/alien/hide(null)) AddAbility(new/obj/effect/proc_holder/alien/larva_evolve(null)) @@ -60,9 +60,9 @@ return /mob/living/carbon/alien/larva/stripPanelUnequip(obj/item/what, mob/who) - src << "You don't have the dexterity to do this!" + to_chat(src, "You don't have the dexterity to do this!") return /mob/living/carbon/alien/larva/stripPanelEquip(obj/item/what, mob/who) - src << "You don't have the dexterity to do this!" + to_chat(src, "You don't have the dexterity to do this!") return diff --git a/code/modules/mob/living/carbon/alien/larva/powers.dm b/code/modules/mob/living/carbon/alien/larva/powers.dm index c40b4ecb44..64ee746b06 100644 --- a/code/modules/mob/living/carbon/alien/larva/powers.dm +++ b/code/modules/mob/living/carbon/alien/larva/powers.dm @@ -33,14 +33,14 @@ var/mob/living/carbon/alien/larva/L = user if(L.handcuffed || L.legcuffed) // Cuffing larvas ? Eh ? - user << "You cannot evolve when you are cuffed." + to_chat(user, "You cannot evolve when you are cuffed.") if(L.amount_grown >= L.max_grown) //TODO ~Carn - L << "You are growing into a beautiful alien! It is time to choose a caste." - L << "There are three to choose from:" - L << "Hunters are the most agile caste, tasked with hunting for hosts. They are faster than a human and can even pounce, but are not much tougher than a drone." - L << "Sentinels are tasked with protecting the hive. With their ranged spit, invisibility, and high health, they make formidable guardians and acceptable secondhand hunters." - L << "Drones are the weakest and slowest of the castes, but can grow into a praetorian and then queen if no queen exists, and are vital to maintaining a hive with their resin secretion abilities." + to_chat(L, "You are growing into a beautiful alien! It is time to choose a caste.") + to_chat(L, "There are three to choose from:") + to_chat(L, "Hunters are the most agile caste, tasked with hunting for hosts. They are faster than a human and can even pounce, but are not much tougher than a drone.") + to_chat(L, "Sentinels are tasked with protecting the hive. With their ranged spit, invisibility, and high health, they make formidable guardians and acceptable secondhand hunters.") + to_chat(L, "Drones are the weakest and slowest of the castes, but can grow into a praetorian and then queen if no queen exists, and are vital to maintaining a hive with their resin secretion abilities.") var/alien_caste = alert(L, "Please choose which alien caste you shall belong to.",,"Hunter","Sentinel","Drone") if(user.incapacitated()) //something happened to us while we were choosing. @@ -58,5 +58,5 @@ L.alien_evolve(new_xeno) return 0 else - user << "You are not fully grown." + to_chat(user, "You are not fully grown.") return 0 \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/organs.dm b/code/modules/mob/living/carbon/alien/organs.dm index 984e4111c0..0e32767a71 100644 --- a/code/modules/mob/living/carbon/alien/organs.dm +++ b/code/modules/mob/living/carbon/alien/organs.dm @@ -124,13 +124,13 @@ if(!owner|| owner.stat == DEAD) return if(isalien(owner)) //Different effects for aliens than humans - owner << "Your Queen has been struck down!" - owner << "You are struck with overwhelming agony! You feel confused, and your connection to the hivemind is severed." + to_chat(owner, "Your Queen has been struck down!") + to_chat(owner, "You are struck with overwhelming agony! You feel confused, and your connection to the hivemind is severed.") owner.emote("roar") owner.Stun(10) //Actually just slows them down a bit. else if(ishuman(owner)) //Humans, being more fragile, are more overwhelmed by the mental backlash. - owner << "You feel a splitting pain in your head, and are struck with a wave of nausea. You cannot hear the hivemind anymore!" + to_chat(owner, "You feel a splitting pain in your head, and are struck with a wave of nausea. You cannot hear the hivemind anymore!") owner.emote("scream") owner.Weaken(5) @@ -146,7 +146,7 @@ recent_queen_death = 0 if(!owner) //In case the xeno is butchered or subjected to surgery after death. return - owner << "The pain of the queen's death is easing. You begin to hear the hivemind again." + to_chat(owner, "The pain of the queen's death is easing. You begin to hear the hivemind again.") owner.clear_alert("alien_noqueen") diff --git a/code/modules/mob/living/carbon/alien/say.dm b/code/modules/mob/living/carbon/alien/say.dm index 50a345d583..ca63321012 100644 --- a/code/modules/mob/living/carbon/alien/say.dm +++ b/code/modules/mob/living/carbon/alien/say.dm @@ -7,10 +7,10 @@ var/rendered = "Hivemind, [shown_name] [message_a]" for(var/mob/S in player_list) if(!S.stat && S.hivecheck()) - S << rendered + to_chat(S, rendered) if(S in dead_mob_list) var/link = FOLLOW_LINK(S, src) - S << "[link] [rendered]" + to_chat(S, "[link] [rendered]") /mob/living/carbon/alien/humanoid/royal/queen/alien_talk(message, shown_name = name) shown_name = "[shown_name]" diff --git a/code/modules/mob/living/carbon/alien/special/alien_embryo.dm b/code/modules/mob/living/carbon/alien/special/alien_embryo.dm index 1cd6add23f..a1bada7996 100644 --- a/code/modules/mob/living/carbon/alien/special/alien_embryo.dm +++ b/code/modules/mob/living/carbon/alien/special/alien_embryo.dm @@ -1,19 +1,18 @@ // This is to replace the previous datum/disease/alien_embryo for slightly improved handling and maintainability // It functions almost identically (see code/datums/diseases/alien_embryo.dm) -var/const/ALIEN_AFK_BRACKET = 450 // 45 seconds - /obj/item/organ/body_egg/alien_embryo name = "alien embryo" icon = 'icons/mob/alien.dmi' icon_state = "larva0_dead" var/stage = 0 + var/bursting = FALSE /obj/item/organ/body_egg/alien_embryo/on_find(mob/living/finder) ..() if(stage < 4) - finder << "It's small and weak, barely the size of a foetus." + to_chat(finder, "It's small and weak, barely the size of a foetus.") else - finder << "It's grown quite large, and writhes slightly as you look at it." + to_chat(finder, "It's grown quite large, and writhes slightly as you look at it.") if(prob(10)) AttemptGrow(0) @@ -30,31 +29,30 @@ var/const/ALIEN_AFK_BRACKET = 450 // 45 seconds if(prob(2)) owner.emote("cough") if(prob(2)) - owner << "Your throat feels sore." + to_chat(owner, "Your throat feels sore.") if(prob(2)) - owner << "Mucous runs down the back of your throat." + to_chat(owner, "Mucous runs down the back of your throat.") if(4) if(prob(2)) owner.emote("sneeze") if(prob(2)) owner.emote("cough") if(prob(4)) - owner << "Your muscles ache." + to_chat(owner, "Your muscles ache.") if(prob(20)) owner.take_bodypart_damage(1) if(prob(4)) - owner << "Your stomach hurts." + to_chat(owner, "Your stomach hurts.") if(prob(20)) owner.adjustToxLoss(1) if(5) - owner << "You feel something tearing its way out of your stomach..." + to_chat(owner, "You feel something tearing its way out of your stomach...") owner.adjustToxLoss(10) /obj/item/organ/body_egg/alien_embryo/egg_process() if(stage < 5 && prob(3)) stage++ - spawn(0) - RefreshInfectionImage() + INVOKE_ASYNC(src, .proc/RefreshInfectionImage) if(stage == 5 && prob(50)) for(var/datum/surgery/S in owner.surgeries) @@ -65,45 +63,53 @@ var/const/ALIEN_AFK_BRACKET = 450 // 45 seconds -/obj/item/organ/body_egg/alien_embryo/proc/AttemptGrow(gib_on_success = 1) - if(!owner) return - var/list/candidates = get_candidates(ROLE_ALIEN, ALIEN_AFK_BRACKET, "alien candidate") - var/client/C = null - - // To stop clientless larva, we will check that our host has a client - // if we find no ghosts to become the alien. If the host has a client - // he will become the alien but if he doesn't then we will set the stage - // to 4, so we don't do a process heavy check everytime. - - if(candidates.len) - C = pick(candidates) - else if(owner.client && !(jobban_isbanned(owner, "alien candidate") || jobban_isbanned(owner, "Syndicate"))) - C = owner.client - else - stage = 4 // Let's try again later. +/obj/item/organ/body_egg/alien_embryo/proc/AttemptGrow(gib_on_success=TRUE) + if(!owner || bursting) return + bursting = TRUE + + var/list/candidates = pollCandidates("Do you want to play as an alien larva that will burst out of [owner]?", ROLE_ALIEN, null, ROLE_ALIEN, 100, POLL_IGNORE_ALIEN_LARVA) + + if(QDELETED(src) || QDELETED(owner)) + return + + if(!candidates.len || !owner) + bursting = FALSE + stage = 4 + return + + var/mob/dead/observer/ghost = pick(candidates) + var/overlay = image('icons/mob/alien.dmi', loc = owner, icon_state = "burst_lie") owner.add_overlay(overlay) var/atom/xeno_loc = get_turf(owner) var/mob/living/carbon/alien/larva/new_xeno = new(xeno_loc) - new_xeno.key = C.key + new_xeno.key = ghost.key new_xeno << sound('sound/voice/hiss5.ogg',0,0,0,100) //To get the player's attention new_xeno.canmove = 0 //so we don't move during the bursting animation new_xeno.notransform = 1 new_xeno.invisibility = INVISIBILITY_MAXIMUM - spawn(6) - if(new_xeno) - new_xeno.canmove = 1 - new_xeno.notransform = 0 - new_xeno.invisibility = 0 - if(gib_on_success) - owner.gib(TRUE) - else - owner.adjustBruteLoss(40) - owner.cut_overlay(overlay) - qdel(src) + + sleep(6) + + if(QDELETED(src) || QDELETED(owner)) + return + + if(new_xeno) + new_xeno.canmove = 1 + new_xeno.notransform = 0 + new_xeno.invisibility = 0 + + if(gib_on_success) + new_xeno.visible_message("[new_xeno] bursts out of [owner] in a shower of gore!", "You exit [owner], your previous host.", "You hear organic matter ripping and tearing!") + owner.gib(TRUE) + else + new_xeno.visible_message("[new_xeno] wriggles out of [owner]!", "You exit [owner], your previous host.") + owner.adjustBruteLoss(40) + owner.cut_overlay(overlay) + qdel(src) /*---------------------------------------- diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index 378d6d85b7..3976cf2c2e 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -64,11 +64,11 @@ var/const/MAX_ACTIVE_TIME = 400 return switch(stat) if(DEAD,UNCONSCIOUS) - user << "[src] is not moving." + to_chat(user, "[src] is not moving.") if(CONSCIOUS) - user << "[src] seems to be active!" + to_chat(user, "[src] seems to be active!") if (sterile) - user << "It looks like the proboscis has been removed." + to_chat(user, "It looks like the proboscis has been removed.") /obj/item/clothing/mask/facehugger/attackby(obj/item/O,mob/m, params) if(O.force) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 6b9f4226c0..42885bd86c 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -1,7 +1,7 @@ /mob/living/carbon blood_volume = BLOOD_VOLUME_NORMAL -/mob/living/carbon/New() +/mob/living/carbon/Initialize() create_reagents(1000) update_body_parts() //to update the carbon's new bodyparts appearance ..() @@ -53,7 +53,7 @@ if(item_in_hand) //this segment checks if the item in your hand is twohanded. if(istype(item_in_hand,/obj/item/weapon/twohanded)) if(item_in_hand:wielded == 1) - usr << "Your other hand is too busy holding the [item_in_hand.name]" + to_chat(usr, "Your other hand is too busy holding the [item_in_hand.name]") return var/oindex = active_hand_index active_hand_index = held_index @@ -252,7 +252,7 @@ buckled.user_unbuckle_mob(src,src) else if(src && buckled) - src << "You fail to unbuckle yourself!" + to_chat(src, "You fail to unbuckle yourself!") else buckled.user_unbuckle_mob(src,src) @@ -293,20 +293,20 @@ var/displaytime = breakouttime / 600 if(!cuff_break) visible_message("[src] attempts to remove [I]!") - src << "You attempt to remove [I]... (This will take around [displaytime] minutes and you need to stand still.)" + to_chat(src, "You attempt to remove [I]... (This will take around [displaytime] minutes and you need to stand still.)") if(do_after(src, breakouttime, 0, target = src)) clear_cuffs(I, cuff_break) else - src << "You fail to remove [I]!" + to_chat(src, "You fail to remove [I]!") else if(cuff_break == FAST_CUFFBREAK) breakouttime = 50 visible_message("[src] is trying to break [I]!") - src << "You attempt to break [I]... (This will take around 5 seconds and you need to stand still.)" + to_chat(src, "You attempt to break [I]... (This will take around 5 seconds and you need to stand still.)") if(do_after(src, breakouttime, 0, target = src)) clear_cuffs(I, cuff_break) else - src << "You fail to break [I]!" + to_chat(src, "You fail to break [I]!") else if(cuff_break == INSTANT_CUFFBREAK) clear_cuffs(I, cuff_break) @@ -343,7 +343,7 @@ if(!I.loc || buckled) return visible_message("[src] manages to [cuff_break ? "break" : "remove"] [I]!") - src << "You successfully [cuff_break ? "break" : "remove"] [I]." + to_chat(src, "You successfully [cuff_break ? "break" : "remove"] [I].") if(cuff_break) qdel(I) @@ -731,7 +731,7 @@ O.Remove(src) O.loc = get_turf(src) if(organs_amt) - user << "You retrieve some of [src]\'s internal organs!" + to_chat(user, "You retrieve some of [src]\'s internal organs!") ..() diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index 5abac8ca35..c5e570ed29 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -10,7 +10,7 @@ return number /mob/living/carbon/get_ear_protection() - if(head && (head.flags & HEADBANGPROTECT)) + if(head && HAS_SECONDARY_FLAG(head, BANG_PROTECT)) return 1 /mob/living/carbon/check_projectile_dismemberment(obj/item/projectile/P, def_zone) @@ -204,7 +204,7 @@ /mob/living/carbon/proc/help_shake_act(mob/living/carbon/M) if(on_fire) - M << "You can't put them out with just your bare hands!" + to_chat(M, "You can't put them out with just your bare hands!") return if(health >= 0 && !(status_flags & FAKEDEATH)) @@ -212,7 +212,6 @@ if(lying) M.visible_message("[M] shakes [src] trying to get [p_them()] up!", \ "You shake [src] trying to get [p_them()] up!") - else if(check_zone(M.zone_selected) == "head") M.visible_message("[M] gives [src] a pat on the head to make [p_them()] feel better!", \ "You give [src] a pat on the head to make [p_them()] feel better!") @@ -241,16 +240,16 @@ return if (damage == 1) - src << "Your eyes sting a little." + to_chat(src, "Your eyes sting a little.") if(prob(40)) adjust_eye_damage(1) else if (damage == 2) - src << "Your eyes burn." + to_chat(src, "Your eyes burn.") adjust_eye_damage(rand(2, 4)) else if( damage > 3) - src << "Your eyes itch and burn severely!" + to_chat(src, "Your eyes itch and burn severely!") adjust_eye_damage(rand(12, 16)) if(eye_damage > 10) @@ -260,18 +259,18 @@ if(eye_damage > 20) if(prob(eye_damage - 20)) if(become_nearsighted()) - src << "Your eyes start to burn badly!" + to_chat(src, "Your eyes start to burn badly!") else if(prob(eye_damage - 25)) if(become_blind()) - src << "You can't see anything!" + to_chat(src, "You can't see anything!") else - src << "Your eyes are really starting to hurt. This can't be good for you!" + to_chat(src, "Your eyes are really starting to hurt. This can't be good for you!") if(has_bane(BANE_LIGHT)) mind.disrupt_spells(-500) return 1 else if(damage == 0) // just enough protection if(prob(20)) - src << "Something bright flashes in the corner of your vision!" + to_chat(src, "Something bright flashes in the corner of your vision!") if(has_bane(BANE_LIGHT)) mind.disrupt_spells(0) @@ -287,12 +286,12 @@ if(deafen_pwr || damage_pwr) setEarDamage(ear_damage + damage_pwr*effect_amount, max(ear_deaf, deafen_pwr*effect_amount)) if (ear_damage >= 15) - src << "Your ears start to ring badly!" + to_chat(src, "Your ears start to ring badly!") if(prob(ear_damage - 5)) - src << "You can't hear anything!" + to_chat(src, "You can't hear anything!") disabilities |= DEAF else if(ear_damage >= 5) - src << "Your ears start to ring!" + to_chat(src, "Your ears start to ring!") src << sound('sound/weapons/flash_ring.ogg',0,1,0,250) return effect_amount //how soundbanged we are diff --git a/code/modules/mob/living/carbon/examine.dm b/code/modules/mob/living/carbon/examine.dm index 91f0f79ab7..2fe0a7f7bd 100644 --- a/code/modules/mob/living/carbon/examine.dm +++ b/code/modules/mob/living/carbon/examine.dm @@ -87,4 +87,4 @@ msg += "*---------*" - user << msg + to_chat(user, msg) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 9a25d41ea7..1266f94612 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -257,7 +257,6 @@ msg += "[t_He] looks like a drunken mess.\n" if(91.01 to INFINITY) msg += "[t_He] [t_is] a shitfaced, slobbering wreck.\n" - for (var/I in src.vore_organs) var/datum/belly/B = vore_organs[I] msg += B.get_examine_msg() @@ -282,7 +281,7 @@ else if(!key) msg += "[t_He] [t_is] totally catatonic. The stresses of life in deep-space must have been too much for [t_him]. Any recovery is unlikely.\n" else if(!client) - msg += "[t_He] [t_has] a vacant, braindead stare...\n" + msg += "[t_He] [t_has] a blank, absent-minded stare and appears completely unresponsive to anything. [t_He] may snap out of it soon.\n" if(digitalcamo) msg += "[t_He] [t_is] moving [t_his] body in an unnatural and blatantly inhuman manner.\n" @@ -330,11 +329,9 @@ msg += "\[Add crime\] " msg += "\[View comment log\] " msg += "\[Add comment\]\n" - - if(print_flavor_text() && get_visible_name() != "Unknown")//Are we sure we know who this is? Don't show flavor text unless we can recognize them. Prevents certain metagaming with impersonation. msg += "[print_flavor_text()]\n" msg += "*---------*" - user << msg + to_chat(user, msg) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index cb8bb6cb7c..38795bf76f 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -11,9 +11,13 @@ real_name = "Test Dummy" status_flags = GODMODE|CANPUSH +/mob/living/carbon/human/dummy/New(loc) + ..() + if(!initialized) + args[1] = FALSE + Initialize(arglist(args)) - -/mob/living/carbon/human/New() +/mob/living/carbon/human/Initialize() verbs += /mob/living/proc/mob_sleep verbs += /mob/living/proc/lay_down @@ -246,7 +250,7 @@ if(href_list["item"]) var/slot = text2num(href_list["item"]) if(slot in check_obscured_slots()) - usr << "You can't reach that! Something is covering it." + to_chat(usr, "You can't reach that! Something is covering it.") return if(href_list["pockets"]) @@ -258,10 +262,10 @@ var/delay_denominator = 1 if(pocket_item && !(pocket_item.flags&ABSTRACT)) if(pocket_item.flags & NODROP) - usr << "You try to empty [src]'s [pocket_side] pocket, it seems to be stuck!" - usr << "You try to empty [src]'s [pocket_side] pocket." + 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.flags&ABSTRACT)) - usr << "You try to place [place_item] into [src]'s [pocket_side] pocket." + to_chat(usr, "You try to place [place_item] into [src]'s [pocket_side] pocket.") delay_denominator = 4 else return @@ -282,7 +286,7 @@ show_inv(usr) else // Display a warning if the user mocks up - src << "You feel your [pocket_side] pocket being fumbled with!" + to_chat(src, "You feel your [pocket_side] pocket being fumbled with!") ..() @@ -332,12 +336,12 @@ return if(href_list["evaluation"]) if(!getBruteLoss() && !getFireLoss() && !getOxyLoss() && getToxLoss() < 20) - usr << "No external injuries detected.
    " + to_chat(usr, "No external injuries detected.
    ") return var/span = "notice" var/status = "" if(getBruteLoss()) - usr << "Physical trauma analysis:" + to_chat(usr, "Physical trauma analysis:") for(var/X in bodyparts) var/obj/item/bodypart/BP = X var/brutedamage = BP.brute_dam @@ -351,9 +355,9 @@ status = "sustained major trauma!" span = "userdanger" if(brutedamage) - usr << "[BP] appears to have [status]" + to_chat(usr, "[BP] appears to have [status]") if(getFireLoss()) - usr << "Analysis of skin burns:" + to_chat(usr, "Analysis of skin burns:") for(var/X in bodyparts) var/obj/item/bodypart/BP = X var/burndamage = BP.burn_dam @@ -367,11 +371,11 @@ status = "major burns!" span = "userdanger" if(burndamage) - usr << "[BP] appears to have [status]" + to_chat(usr, "[BP] appears to have [status]") if(getOxyLoss()) - usr << "Patient has signs of suffocation, emergency treatment may be required!" + to_chat(usr, "Patient has signs of suffocation, emergency treatment may be required!") if(getToxLoss() > 20) - usr << "Gathered data is inconsistent with the analysis, possible cause: poisoning." + to_chat(usr, "Gathered data is inconsistent with the analysis, possible cause: poisoning.") if(href_list["hud"] == "s") if(istype(H.glasses, /obj/item/clothing/glasses/hud/security) || istype(H.getorganslot("eye_hud"), /obj/item/organ/cyberimp/eyes/hud/security)) @@ -390,7 +394,7 @@ if(!allowed_access) - H << "ERROR: Invalid Access" + to_chat(H, "ERROR: Invalid Access") return if(perpname) @@ -413,20 +417,20 @@ return else if(!istype(H.glasses, /obj/item/clothing/glasses/hud/security) && !istype(H.getorganslot("eye_hud"), /obj/item/organ/cyberimp/eyes/hud/security)) return - usr << "Name: [R.fields["name"]] Criminal Status: [R.fields["criminal"]]" - usr << "Minor Crimes:" + to_chat(usr, "Name: [R.fields["name"]] Criminal Status: [R.fields["criminal"]]") + to_chat(usr, "Minor Crimes:") for(var/datum/data/crime/c in R.fields["mi_crim"]) - usr << "Crime: [c.crimeName]" - usr << "Details: [c.crimeDetails]" - usr << "Added by [c.author] at [c.time]" - usr << "----------" - usr << "Major Crimes:" + to_chat(usr, "Crime: [c.crimeName]") + to_chat(usr, "Details: [c.crimeDetails]") + to_chat(usr, "Added by [c.author] at [c.time]") + to_chat(usr, "----------") + to_chat(usr, "Major Crimes:") for(var/datum/data/crime/c in R.fields["ma_crim"]) - usr << "Crime: [c.crimeName]" - usr << "Details: [c.crimeDetails]" - usr << "Added by [c.author] at [c.time]" - usr << "----------" - usr << "Notes: [R.fields["notes"]]" + to_chat(usr, "Crime: [c.crimeName]") + to_chat(usr, "Details: [c.crimeDetails]") + to_chat(usr, "Added by [c.author] at [c.time]") + to_chat(usr, "----------") + to_chat(usr, "Notes: [R.fields["notes"]]") return if(href_list["add_crime"]) @@ -444,7 +448,7 @@ return var/crime = data_core.createCrimeEntry(t1, t2, allowed_access, worldtime2text()) data_core.addMinorCrime(R.fields["id"], crime) - usr << "Successfully added a minor crime." + to_chat(usr, "Successfully added a minor crime.") return if("Major Crime") if(R) @@ -459,7 +463,7 @@ return var/crime = data_core.createCrimeEntry(t1, t2, allowed_access, worldtime2text()) data_core.addMajorCrime(R.fields["id"], crime) - usr << "Successfully added a major crime." + to_chat(usr, "Successfully added a major crime.") return if(href_list["view_comment"]) @@ -468,11 +472,11 @@ return else if(!istype(H.glasses, /obj/item/clothing/glasses/hud/security) && !istype(H.getorganslot("eye_hud"), /obj/item/organ/cyberimp/eyes/hud/security)) return - usr << "Comments/Log:" + to_chat(usr, "Comments/Log:") var/counter = 1 while(R.fields[text("com_[]", counter)]) - usr << R.fields[text("com_[]", counter)] - usr << "----------" + to_chat(usr, R.fields[text("com_[]", counter)]) + to_chat(usr, "----------") counter++ return @@ -490,9 +494,9 @@ while(R.fields[text("com_[]", counter)]) counter++ R.fields[text("com_[]", counter)] = text("Made by [] on [] [], []
    []", allowed_access, worldtime2text(), time2text(world.realtime, "MMM DD"), year_integer+540, t1) - usr << "Successfully added comment." + to_chat(usr, "Successfully added comment.") return - usr << "Unable to locate a data core entry for this person." + to_chat(usr, "Unable to locate a data core entry for this person.") /mob/living/carbon/human/proc/canUseHUD() return !(src.stat || src.weakened || src.stunned || src.restrained()) @@ -513,7 +517,7 @@ . = 0 if(!. && error_msg && user) // Might need re-wording. - user << "There is no exposed flesh or thin material [above_neck(target_zone) ? "on [p_their()] head" : "on [p_their()] body"]." + to_chat(user, "There is no exposed flesh or thin material [above_neck(target_zone) ? "on [p_their()] head" : "on [p_their()] body"].") /mob/living/carbon/human/proc/check_obscured_slots() var/list/obscured = list() @@ -601,7 +605,7 @@ threatcount += 5 //Check for nonhuman scum - if(dna && dna.species.id && dna.species.id != "human" || "lizard" || "canine" || "felid" || "avian" || "shark" || "moth") + if(dna && dna.species.id && dna.species.id != "human" || "lizard" || "mammal" || "avian" || "aquatic" || "insect") threatcount += 1 //mindshield implants imply trustworthyness @@ -631,7 +635,7 @@ for(var/obj/item/hand in held_items) if(prob(current_size * 5) && hand.w_class >= ((11-current_size)/2) && dropItemToGround(hand)) step_towards(hand, src) - src << "\The [S] pulls \the [hand] from your grip!" + to_chat(src, "\The [S] pulls \the [hand] from your grip!") rad_act(current_size * 3) if(mob_negates_gravity()) return @@ -641,20 +645,20 @@ CHECK_DNA_AND_SPECIES(C) if(C.stat == DEAD || (C.status_flags & FAKEDEATH)) - src << "[C.name] is dead!" + to_chat(src, "[C.name] is dead!") return if(is_mouth_covered()) - src << "Remove your mask first!" + to_chat(src, "Remove your mask first!") return 0 if(C.is_mouth_covered()) - src << "Remove [p_their()] mask first!" + to_chat(src, "Remove [p_their()] mask first!") return 0 if(C.cpr_time < world.time + 30) visible_message("[src] is trying to perform CPR on [C.name]!", \ "You try to perform CPR on [C.name]... Hold still!") if(!do_mob(src, C)) - src << "You fail to perform CPR on [C]!" + to_chat(src, "You fail to perform CPR on [C]!") return 0 var/they_breathe = (!(NOBREATH in C.dna.species.species_traits)) @@ -671,13 +675,11 @@ var/suff = min(C.getOxyLoss(), 7) C.adjustOxyLoss(-suff) C.updatehealth() - C << "You feel a breath of fresh air enter your lungs... It feels good..." + to_chat(C, "You feel a breath of fresh air enter your lungs... It feels good...") else if(they_breathe && !they_lung) - C << "You feel a breath of fresh air... \ - but you don't feel any better..." + to_chat(C, "You feel a breath of fresh air... but you don't feel any better...") else - C << "You feel a breath of fresh air... \ - which is a sensation you don't recognise..." + to_chat(C, "You feel a breath of fresh air... which is a sensation you don't recognise...") /mob/living/carbon/human/generateStaticOverlay() var/image/staticOverlay = image(icon('icons/effects/effects.dmi', "static"), loc = src) @@ -781,11 +783,11 @@ var/health_amount = health - staminaloss if(..(health_amount)) //not dead switch(hal_screwyhud) - if(1) + if(SCREWYHUD_CRIT) hud_used.healths.icon_state = "health6" - if(2) + if(SCREWYHUD_DEAD) hud_used.healths.icon_state = "health7" - if(5) + if(SCREWYHUD_HEALTHY) hud_used.healths.icon_state = "health0" if(hud_used.healthdoll) hud_used.healthdoll.cut_overlays() @@ -806,7 +808,7 @@ icon_num = 4 if(damage > (comparison*4)) icon_num = 5 - if(hal_screwyhud == 5) + if(hal_screwyhud == SCREWYHUD_HEALTHY) icon_num = 0 if(icon_num) hud_used.healthdoll.add_overlay(image('icons/mob/screen_gen.dmi',"[BP.body_zone][icon_num]")) @@ -898,14 +900,14 @@ .["Toggle Purrbation"] = "?_src_=vars;purrbation=\ref[src]" /mob/living/carbon/human/MouseDrop_T(mob/living/target, mob/living/user) - if((target != pulling) || (grab_state < GRAB_AGGRESSIVE) || (user != target) || !isliving(target) || !isliving(user)) //Get consent first :^) + if((target != pulling) || (grab_state < GRAB_AGGRESSIVE) || (user != target) || !isliving(user) || stat || user.stat)//Get consent first :^) . = ..() return - buckle_mob(target, FALSE, TRUE, TRUE) + buckle_mob(target, TRUE, TRUE) . = ..() -/mob/living/carbon/human/buckle_mob(mob/living/M, force = FALSE, check_loc = TRUE, yes = FALSE) - if(!yes) +/mob/living/carbon/human/buckle_mob(mob/living/M, force = FALSE, check_loc = TRUE) + if(!force)//humans are only meant to be ridden through piggybacking and special cases return if(!is_type_in_typecache(M, can_ride_typecache)) M.visible_message("[M] really can't seem to mount [src]...") @@ -925,9 +927,9 @@ . = ..(M, force, check_loc) stop_pulling() -/mob/living/carbon/human/unbuckle_mob(mob/living/M) +/mob/living/carbon/human/unbuckle_mob(mob/living/M, force=FALSE) if(iscarbon(M)) if(riding_datum) riding_datum.unequip_buckle_inhands(M) riding_datum.restore_position(M) - . = ..(M) + . = ..(M, force) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index be002a01c6..fad73ec207 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -47,7 +47,7 @@ return number /mob/living/carbon/human/get_ear_protection() - if((ears && (ears.flags & EARBANGPROTECT)) || (head && (head.flags & HEADBANGPROTECT))) + if((ears && HAS_SECONDARY_FLAG(ears, BANG_PROTECT)) || (head && HAS_SECONDARY_FLAG(head, BANG_PROTECT))) return 1 /mob/living/carbon/human/on_hit(obj/item/projectile/P) @@ -198,13 +198,15 @@ damage_clothes(15, BRUTE, "melee") return 1 -/mob/living/carbon/human/attack_hand(mob/living/carbon/human/M) +/mob/living/carbon/human/attack_hand(mob/user) if(..()) //to allow surgery to return properly. return - if(M.a_intent == INTENT_DISARM) - if(M.buckled_mobs && (src in M.buckled_mobs) && M.riding_datum) - M.riding_datum.force_dismount(src) - dna.species.spec_attack_hand(M, src) + if(ishuman(user)) + var/mob/living/carbon/human/H = user + if(H.a_intent == INTENT_DISARM) + if(H.buckled_mobs && (src in H.buckled_mobs) && H.riding_datum) + H.riding_datum.force_dismount(src) + dna.species.spec_attack_hand(H, src) /mob/living/carbon/human/attack_paw(mob/living/carbon/monkey/M) @@ -401,7 +403,7 @@ damage_clothes(200 - bomb_armor, BRUTE, "bomb") if (!istype(ears, /obj/item/clothing/ears/earmuffs)) adjustEarDamage(30, 120) - if (prob(70)) + if (prob(max(70 - (bomb_armor * 0.5), 0))) Paralyse(10) if(3) @@ -411,7 +413,7 @@ damage_clothes(max(50 - bomb_armor, 0), BRUTE, "bomb") if (!istype(ears, /obj/item/clothing/ears/earmuffs)) adjustEarDamage(15,60) - if (prob(50)) + if (prob(max(50 - (bomb_armor * 0.5), 0))) Paralyse(8) take_overall_damage(b_loss,f_loss) @@ -466,7 +468,7 @@ var/obj/item/organ/heart/heart = getorganslot("heart") heart.beating = TRUE if(stat == CONSCIOUS) - src << "You feel your heart beating again!" + to_chat(src, "You feel your heart beating again!") . = ..(shock_damage,source,siemens_coeff,safety,override,tesla_shock, illusion, stun) if(.) electrocution_animation(40) @@ -477,7 +479,7 @@ for(var/obj/item/bodypart/L in src.bodyparts) if(L.status == BODYPART_ROBOTIC) if(!informed) - src << "You feel a sharp pain as your robotic limbs overload." + to_chat(src, "You feel a sharp pain as your robotic limbs overload.") informed = 1 switch(severity) if(1) @@ -511,7 +513,7 @@ update_inv_neck() update_inv_head() else - src << "Your [head_clothes.name] protects your head and face from the acid!" + to_chat(src, "Your [head_clothes.name] protects your head and face from the acid!") else . = get_bodypart("head") if(.) @@ -532,7 +534,7 @@ update_inv_w_uniform() update_inv_wear_suit() else - src << "Your [chest_clothes.name] protects your body from the acid!" + to_chat(src, "Your [chest_clothes.name] protects your body from the acid!") else . = get_bodypart("chest") if(.) @@ -564,7 +566,7 @@ update_inv_w_uniform() update_inv_wear_suit() else - src << "Your [arm_clothes.name] protects your arms and hands from the acid!" + to_chat(src, "Your [arm_clothes.name] protects your arms and hands from the acid!") else . = get_bodypart("r_arm") if(.) @@ -590,7 +592,7 @@ update_inv_w_uniform() update_inv_wear_suit() else - src << "Your [leg_clothes.name] protects your legs and feet from the acid!" + to_chat(src, "Your [leg_clothes.name] protects your legs and feet from the acid!") else . = get_bodypart("r_leg") if(.) @@ -679,21 +681,21 @@ status += "numb" if(status == "") status = "OK" - src << "\t [status == "OK" ? "\blue" : "\red"] Your [LB.name] is [status]." + to_chat(src, "\t [status == "OK" ? "\blue" : "\red"] Your [LB.name] is [status].") for(var/obj/item/I in LB.embedded_objects) - src << "\t \red There is \a [I] embedded in your [LB.name]!" + to_chat(src, "\t \red There is \a [I] embedded in your [LB.name]!") for(var/t in missing) - src << "Your [parse_zone(t)] is missing!" + to_chat(src, "Your [parse_zone(t)] is missing!") if(bleed_rate) - src << "You are bleeding!" + to_chat(src, "You are bleeding!") if(staminaloss) if(staminaloss > 30) - src << "You're completely exhausted." + to_chat(src, "You're completely exhausted.") else - src << "You feel fatigued." + to_chat(src, "You feel fatigued.") else if(wear_suit) wear_suit.add_fingerprint(M) diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index ebcc578669..ad896ed90a 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -50,4 +50,4 @@ var/global/default_martial_art = new/datum/martial_art var/datum/personal_crafting/handcrafting can_buckle = TRUE buckle_lying = FALSE - can_ride_typecache = list(/mob/living/carbon/human) + can_ride_typecache = list(/mob/living/carbon/human, /mob/living/simple_animal/slime) diff --git a/code/modules/mob/living/carbon/human/human_helpers.dm b/code/modules/mob/living/carbon/human/human_helpers.dm index 42b5cc38d8..3a4b241f10 100644 --- a/code/modules/mob/living/carbon/human/human_helpers.dm +++ b/code/modules/mob/living/carbon/human/human_helpers.dm @@ -139,14 +139,14 @@ if(G.trigger_guard == TRIGGER_GUARD_NORMAL) if(src.dna.check_mutation(HULK)) - src << "Your meaty finger is much too large for the trigger guard!" + to_chat(src, "Your meaty finger is much too large for the trigger guard!") return 0 if(NOGUNS in src.dna.species.species_traits) - src << "Your fingers don't fit in the trigger guard!" + to_chat(src, "Your fingers don't fit in the trigger guard!") return 0 if(martial_art && martial_art.no_guns) //great dishonor to famiry - src << "Use of ranged weaponry would bring dishonor to the clan." + to_chat(src, "Use of ranged weaponry would bring dishonor to the clan.") return 0 return . diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index a5f282469c..d3c380950c 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -55,6 +55,7 @@ //End bloody footprints S.step_action() + /mob/living/carbon/human/Moved() . = ..() if(buckled_mobs && buckled_mobs.len && riding_datum) diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index 795b080855..4d51c6786a 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -133,7 +133,7 @@ s_store = I update_inv_s_store() else - src << "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!" + to_chat(src, "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!") //Item is handled and in slot, valid to call callback, for this proc should always be true if(!not_handled) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index f055eca65f..76e728f954 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -28,6 +28,7 @@ if (notransform) return + //citadel code if(stat != DEAD) handle_arousal() @@ -325,13 +326,13 @@ for(var/obj/item/I in BP.embedded_objects) if(prob(I.embedded_pain_chance)) BP.receive_damage(I.w_class*I.embedded_pain_multiplier) - src << "\the [I] embedded in your [BP.name] hurts!" + to_chat(src, "[I] embedded in your [BP.name] hurts!") if(prob(I.embedded_fall_chance)) BP.receive_damage(I.w_class*I.embedded_fall_pain_multiplier) BP.embedded_objects -= I I.loc = get_turf(src) - visible_message("\the [I] falls out of [name]'s [BP.name]!","\the [I] falls out of your [BP.name]!") + visible_message("[I] falls out of [name]'s [BP.name]!","[I] falls out of your [BP.name]!") if(!has_embedded_objects()) clear_alert("embeddedobject") @@ -436,15 +437,15 @@ All effects don't start immediately, but rather get worse over time; the rate is if(drunkenness >= 81) adjustToxLoss(0.2) if(prob(5) && !stat) - src << "Maybe you should lie down for a bit..." + to_chat(src, "Maybe you should lie down for a bit...") if(drunkenness >= 91) adjustBrainLoss(0.4) if(prob(20) && !stat) if(SSshuttle.emergency.mode == SHUTTLE_DOCKED && z == ZLEVEL_STATION) //QoL mainly - src << "You're so tired... but you can't miss that shuttle..." + to_chat(src, "You're so tired... but you can't miss that shuttle...") else - src << "Just a quick nap..." + to_chat(src, "Just a quick nap...") Sleeping(45) if(drunkenness >= 101) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index ebcfeb8d80..0127debeeb 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -61,6 +61,9 @@ //Flight and floating var/override_float = 0 + //Eyes + var/obj/item/organ/eyes/mutanteyes = /obj/item/organ/eyes + //Citadel snowflake var/fixed_mut_color2 = "" var/fixed_mut_color3 = "" @@ -69,8 +72,6 @@ var/lang_spoken = HUMAN var/lang_understood = HUMAN - //Eyes - var/obj/item/organ/eyes/mutanteyes = /obj/item/organ/eyes /////////// // PROCS // /////////// @@ -117,7 +118,7 @@ var/obj/item/organ/heart/heart = C.getorganslot("heart") var/obj/item/organ/lungs/lungs = C.getorganslot("lungs") var/obj/item/organ/appendix/appendix = C.getorganslot("appendix") - var/obj/item/organ/eyes/eyes = C.getorganslot("eyes") + var/obj/item/organ/eyes/eyes = C.getorganslot("eye_sight") if((NOBLOOD in species_traits) && heart) heart.Remove(C) @@ -133,7 +134,7 @@ if(eyes) qdel(eyes) eyes = new mutanteyes - mutanteyes.Insert(C) + eyes.Insert(C) if((!(NOBREATH in species_traits)) && !lungs) if(mutantlungs) @@ -176,22 +177,49 @@ return var/datum/sprite_accessory/S var/list/standing = list() - var/hair_hidden = 0 - var/facialhair_hidden = 0 + + var/hair_hidden = FALSE //ignored if the matching dynamic_X_suffix is non-empty + var/facialhair_hidden = FALSE // ^ + + var/dynamic_hair_suffix = "" //if this is non-null, and hair+suffix matches an iconstate, then we render that hair instead + var/dynamic_fhair_suffix = "" + //we check if our hat or helmet hides our facial hair. if(H.head) var/obj/item/I = H.head + if(istype(I, /obj/item/clothing)) + var/obj/item/clothing/C = I + dynamic_fhair_suffix = C.dynamic_fhair_suffix if(I.flags_inv & HIDEFACIALHAIR) - facialhair_hidden = 1 + facialhair_hidden = TRUE + if(H.wear_mask) var/obj/item/clothing/mask/M = H.wear_mask + dynamic_fhair_suffix = M.dynamic_fhair_suffix //mask > head in terms of facial hair if(M.flags_inv & HIDEFACIALHAIR) - facialhair_hidden = 1 + facialhair_hidden = TRUE - if(H.facial_hair_style && (FACEHAIR in species_traits) && !facialhair_hidden) + if(H.facial_hair_style && (FACEHAIR in species_traits) && (!facialhair_hidden || dynamic_fhair_suffix)) S = facial_hair_styles_list[H.facial_hair_style] if(S) - var/image/img_facial = image("icon" = S.icon, "icon_state" = "[S.icon_state]", "layer" = -HAIR_LAYER) + + //List of all valid dynamic_fhair_suffixes + var/static/list/fextensions + if(!fextensions) + var/icon/fhair_extensions = icon('icons/mob/facialhair_extensions.dmi') + fextensions = list() + for(var/s in fhair_extensions.IconStates(1)) + fextensions[s] = TRUE + qdel(fhair_extensions) + + //Is hair+dynamic_fhair_suffix a valid iconstate? + var/fhair_state = S.icon_state + var/fhair_file = S.icon + if(fextensions[fhair_state+dynamic_fhair_suffix]) + fhair_state += dynamic_fhair_suffix + fhair_file = 'icons/mob/facialhair_extensions.dmi' + + var/image/img_facial = image("icon" = fhair_file, "icon_state" = fhair_state, "layer" = -HAIR_LAYER) if(!forced_colour) if(hair_color) @@ -208,24 +236,47 @@ standing += img_facial - //we check if our hat or helmet hides our hair. if(H.head) var/obj/item/I = H.head + if(istype(I, /obj/item/clothing)) + var/obj/item/clothing/C = I + dynamic_hair_suffix = C.dynamic_hair_suffix if(I.flags_inv & HIDEHAIR) - hair_hidden = 1 + hair_hidden = TRUE + if(H.wear_mask) var/obj/item/clothing/mask/M = H.wear_mask + if(!dynamic_hair_suffix) //head > mask in terms of head hair + dynamic_hair_suffix = M.dynamic_hair_suffix if(M.flags_inv & HIDEHAIR) - hair_hidden = 1 - if(!hair_hidden) - if(!H.getorgan(/obj/item/organ/brain)) //Applies the debrained overlay if there is no brain + hair_hidden = TRUE + + if(!hair_hidden || dynamic_hair_suffix) + if(!hair_hidden && !H.getorgan(/obj/item/organ/brain)) //Applies the debrained overlay if there is no brain if(!(NOBLOOD in species_traits)) standing += image("icon"='icons/mob/human_face.dmi', "icon_state" = "debrained", "layer" = -HAIR_LAYER) else if(H.hair_style && (HAIR in species_traits)) S = hair_styles_list[H.hair_style] if(S) - var/image/img_hair = image("icon" = S.icon, "icon_state" = "[S.icon_state]", "layer" = -HAIR_LAYER) + + //List of all valid dynamic_hair_suffixes + var/static/list/extensions + if(!extensions) + var/icon/hair_extensions = icon('icons/mob/hair_extensions.dmi') //hehe + extensions = list() + for(var/s in hair_extensions.IconStates(1)) + extensions[s] = TRUE + qdel(hair_extensions) + + //Is hair+dynamic_hair_suffix a valid iconstate? + var/hair_state = S.icon_state + var/hair_file = S.icon + if(extensions[hair_state+dynamic_hair_suffix]) + hair_state += dynamic_hair_suffix + hair_file = 'icons/mob/hair_extensions.dmi' + + var/image/img_hair = image("icon" = hair_file, "icon_state" = hair_state, "layer" = -HAIR_LAYER) if(!forced_colour) if(hair_color) @@ -317,22 +368,22 @@ var/obj/item/bodypart/head/HD = H.get_bodypart("head") if("tail_lizard" in mutant_bodyparts) - if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || !H.dna.features["taur"] == "None") + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || (!H.dna.features["taur"] == "None")) bodyparts_to_add -= "tail_lizard" if("waggingtail_lizard" in mutant_bodyparts) - if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || !H.dna.features["taur"] == "None") + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || (!H.dna.features["taur"] == "None")) bodyparts_to_add -= "waggingtail_lizard" else if ("tail_lizard" in mutant_bodyparts) bodyparts_to_add -= "waggingtail_lizard" if("tail_human" in mutant_bodyparts) - if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || !H.dna.features["taur"] == "None") + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || (!H.dna.features["taur"] == "None")) bodyparts_to_add -= "tail_human" if("waggingtail_human" in mutant_bodyparts) - if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || !H.dna.features["taur"] == "None") + if(H.wear_suit && (H.wear_suit.flags_inv & HIDEJUMPSUIT) || (!H.dna.features["taur"] == "None")) bodyparts_to_add -= "waggingtail_human" else if ("tail_human" in mutant_bodyparts) bodyparts_to_add -= "waggingtail_human" @@ -497,7 +548,6 @@ S = /datum/sprite_accessory/slimecoon_ears if("slimecoonsnout") S = /datum/sprite_accessory/slimecoon_snout*/ - if(!S || S.icon_state == "none") continue @@ -568,7 +618,6 @@ I = center_image(I,S.dimension_x,S.dimension_y) standing += I - if(S.extra) //apply the extra overlay, if there is one if(S.gender_specific) icon_string = "[g]_[bodypart]_extra_[S.icon_state]_[layertext]" @@ -733,7 +782,7 @@ return 0 if(DIGITIGRADE in species_traits) if(!disable_warning) - H << "The footwear around here isn't compatible with your feet!" + to_chat(H, "The footwear around here isn't compatible with your feet!") return 0 return 1 if(slot_belt) @@ -741,7 +790,7 @@ return 0 if(!H.w_uniform && !nojumpsuit) if(!disable_warning) - H << "You need a jumpsuit before you can attach this [I.name]!" + to_chat(H, "You need a jumpsuit before you can attach this [I.name]!") return 0 if( !(I.slot_flags & SLOT_BELT) ) return @@ -781,7 +830,7 @@ return 0 if(!H.w_uniform && !nojumpsuit) if(!disable_warning) - H << "You need a jumpsuit before you can attach this [I.name]!" + to_chat(H, "You need a jumpsuit before you can attach this [I.name]!") return 0 if( !(I.slot_flags & SLOT_ID) ) return 0 @@ -793,7 +842,7 @@ return 0 if(!H.w_uniform && !nojumpsuit) if(!disable_warning) - H << "You need a jumpsuit before you can attach this [I.name]!" + to_chat(H, "You need a jumpsuit before you can attach this [I.name]!") return 0 if(I.slot_flags & SLOT_DENYPOCKET) return @@ -806,7 +855,7 @@ return 0 if(!H.w_uniform && !nojumpsuit) if(!disable_warning) - H << "You need a jumpsuit before you can attach this [I.name]!" + to_chat(H, "You need a jumpsuit before you can attach this [I.name]!") return 0 if(I.slot_flags & SLOT_DENYPOCKET) return 0 @@ -820,15 +869,15 @@ return 0 if(!H.wear_suit) if(!disable_warning) - H << "You need a suit before you can attach this [I.name]!" + to_chat(H, "You need a suit before you can attach this [I.name]!") return 0 if(!H.wear_suit.allowed) if(!disable_warning) - H << "You somehow have a suit with no defined allowed items for suit storage, stop that." + to_chat(H, "You somehow have a suit with no defined allowed items for suit storage, stop that.") return 0 if(I.w_class > WEIGHT_CLASS_BULKY) if(!disable_warning) - H << "The [I.name] is too big to attach." //should be src? + to_chat(H, "The [I.name] is too big to attach.") //should be src? return 0 if( istype(I, /obj/item/device/pda) || istype(I, /obj/item/weapon/pen) || is_type_in_list(I, H.wear_suit.allowed) ) return 1 @@ -889,13 +938,13 @@ //The fucking FAT mutation is the dumbest shit ever. It makes the code so difficult to work with if(H.disabilities & FAT) if(H.overeatduration < 100) - H << "You feel fit again!" + to_chat(H, "You feel fit again!") H.disabilities &= ~FAT H.update_inv_w_uniform() H.update_inv_wear_suit() else if(H.overeatduration > 500) - H << "You suddenly feel blubbery!" + to_chat(H, "You suddenly feel blubbery!") H.disabilities |= FAT H.update_inv_w_uniform() H.update_inv_wear_suit() @@ -927,15 +976,15 @@ H.metabolism_efficiency = 1 else if(H.nutrition > NUTRITION_LEVEL_FED && H.satiety > 80) if(H.metabolism_efficiency != 1.25 && (H.dna && H.dna.species && !(NOHUNGER in H.dna.species.species_traits))) - H << "You feel vigorous." + to_chat(H, "You feel vigorous.") H.metabolism_efficiency = 1.25 else if(H.nutrition < NUTRITION_LEVEL_STARVING + 50) if(H.metabolism_efficiency != 0.8) - H << "You feel sluggish." + to_chat(H, "You feel sluggish.") H.metabolism_efficiency = 0.8 else if(H.metabolism_efficiency == 1.25) - H << "You no longer feel vigorous." + to_chat(H, "You no longer feel vigorous.") H.metabolism_efficiency = 1 switch(H.nutrition) @@ -959,24 +1008,23 @@ if(!H.weakened) H.emote("collapse") H.Weaken(10) - H << "You feel weak." + to_chat(H, "You feel weak.") switch(H.radiation) if(50 to 75) if(prob(5)) if(!H.weakened) H.emote("collapse") H.Weaken(3) - H << "You feel weak." + to_chat(H, "You feel weak.") if(prob(15)) if(!( H.hair_style == "Shaved") || !(H.hair_style == "Bald") || (HAIR in species_traits)) - H << "Your hair starts to \ - fall out in clumps..." + to_chat(H, "Your hair starts to fall out in clumps...") addtimer(CALLBACK(src, .proc/go_bald, H), 50) if(75 to 100) if(prob(1)) - H << "You mutate!" + to_chat(H, "You mutate!") H.randmutb() H.emote("gasp") H.domutcheck() @@ -1044,7 +1092,7 @@ if(H.back) . += H.back.slowdown for(var/obj/item/I in H.held_items) - if(I.flags & HANDSLOW) + if(HAS_SECONDARY_FLAG(I, SLOWS_WHILE_IN_HAND)) . += I.slowdown var/health_deficiency = (100 - H.health + H.staminaloss) var/hungry = (500 - H.nutrition) / 5 // So overeat would be 100 and default level would be 80 @@ -1082,9 +1130,9 @@ if(we_breathe && we_lung) user.do_cpr(target) else if(we_breathe && !we_lung) - user << "You have no lungs to breathe with, so you cannot peform CPR." + to_chat(user, "You have no lungs to breathe with, so you cannot peform CPR.") else - user << "You do not breathe, so you cannot perform CPR." + to_chat(user, "You do not breathe, so you cannot perform CPR.") /datum/species/proc/grab(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) if(target.check_block()) @@ -1192,7 +1240,7 @@ if(randn <= 60) //BubbleWrap: Disarming breaks a pull if(target.pulling) - target << "[user] has broken [target]'s grip on [target.pulling]!" + to_chat(target, "[user] has broken [target]'s grip on [target.pulling]!") talked = 1 target.stop_pulling() //End BubbleWrap 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 78034aad99..8fb8b66c9d 100644 --- a/code/modules/mob/living/carbon/human/species_types/angel.dm +++ b/code/modules/mob/living/carbon/human/species_types/angel.dm @@ -50,7 +50,7 @@ if(H.stat || H.stunned || H.weakened) return 0 if(H.wear_suit && ((H.wear_suit.flags_inv & HIDEJUMPSUIT) && (!H.wear_suit.species_exception || !is_type_in_list(src, H.wear_suit.species_exception)))) //Jumpsuits have tail holes, so it makes sense they have wing holes too - H << "Your suit blocks your wings from extending!" + to_chat(H, "Your suit blocks your wings from extending!") return 0 var/turf/T = get_turf(H) if(!T) @@ -58,7 +58,7 @@ var/datum/gas_mixture/environment = T.return_air() if(environment && !(environment.return_pressure() > 30)) - H << "The atmosphere is too thin for you to fly!" + to_chat(H, "The atmosphere is too thin for you to fly!") return 0 else return 1 @@ -73,11 +73,11 @@ var/datum/species/angel/A = H.dna.species if(A.CanFly(H)) if(H.movement_type & FLYING) - H << "You settle gently back onto the ground..." + to_chat(H, "You settle gently back onto the ground...") A.ToggleFlight(H,0) H.update_canmove() else - H << "You beat your wings and begin to hover gently above the ground..." + to_chat(H, "You beat your wings and begin to hover gently above the ground...") H.resting = 0 A.ToggleFlight(H,1) H.update_canmove() @@ -87,7 +87,7 @@ if(H.buckled) buckled_obj = H.buckled - H << "Your wings spazz out and launch you!" + to_chat(H, "Your wings spazz out and launch you!") playsound(H.loc, 'sound/misc/slip.ogg', 50, 1, -3) 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 0c12969d98..68558e803c 100644 --- a/code/modules/mob/living/carbon/human/species_types/golems.dm +++ b/code/modules/mob/living/carbon/human/species_types/golems.dm @@ -32,7 +32,7 @@ var/datum/species/golem/golem_type = pick(golem_types) var/mob/living/carbon/human/H = C H.set_species(golem_type) - H << "[initial(golem_type.info_text)]" + to_chat(H, "[initial(golem_type.info_text)]") /datum/species/golem/adamantine name = "Adamantine Golem" @@ -183,11 +183,11 @@ var/light_amount = 0 //how much light there is in the place, affects receiving nutrition and healing if(isturf(H.loc)) //else, there's considered to be no light var/turf/T = H.loc - light_amount = min(10,T.get_lumcount()) - 5 - H.nutrition += light_amount + light_amount = min(1,T.get_lumcount()) - 0.5 + H.nutrition += light_amount * 10 if(H.nutrition > NUTRITION_LEVEL_FULL) H.nutrition = NUTRITION_LEVEL_FULL - if(light_amount > 2) //if there's enough light, heal + if(light_amount > 0.2) //if there's enough light, heal H.heal_overall_damage(1,1) H.adjustToxLoss(-1) H.adjustOxyLoss(-1) @@ -444,4 +444,48 @@ playsound(get_turf(H), 'sound/misc/sadtrombone.ogg', 70, 0) /datum/species/golem/bananium/get_spans() - return list(SPAN_CLOWN) \ No newline at end of file + return list(SPAN_CLOWN) + + +/datum/species/golem/runic + name = "Runic Golem" + id = "runic" + limbs_id = "cultgolem" + sexes = FALSE + info_text = "As a Runic Golem, you possess eldritch powers granted by the Elder God Nar'Sie." + species_traits = list(NOBREATH,RESISTHOT,RESISTCOLD,RESISTPRESSURE,NOFIRE,NOGUNS,NOBLOOD,RADIMMUNE,VIRUSIMMUNE,PIERCEIMMUNE,NODISMEMBER) //no mutcolors + + var/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/shift/golem/phase_shift + var/obj/effect/proc_holder/spell/targeted/abyssal_gaze/abyssal_gaze + var/obj/effect/proc_holder/spell/targeted/dominate/dominate + +/datum/species/golem/runic/on_species_gain(mob/living/carbon/C, datum/species/old_species) + . = ..() + C.faction |= "cult" + phase_shift = new + C.AddSpell(phase_shift) + abyssal_gaze = new + C.AddSpell(abyssal_gaze) + dominate = new + C.AddSpell(dominate) + +/datum/species/golem/runic/on_species_loss(mob/living/carbon/C) + . = ..() + C.faction -= "cult" + if(phase_shift) + C.RemoveSpell(phase_shift) + if(abyssal_gaze) + C.RemoveSpell(abyssal_gaze) + if(dominate) + C.RemoveSpell(dominate) + +/datum/species/golem/runic/handle_chemicals(datum/reagent/chem, mob/living/carbon/human/H) + if(chem.id == "holywater") + H.adjustFireLoss(4) + H.reagents.remove_reagent(chem.id, REAGENTS_METABOLISM) + + if(chem.id == "unholywater") + H.adjustBruteLoss(-4) + H.adjustFireLoss(-4) + H.reagents.remove_reagent(chem.id, REAGENTS_METABOLISM) + 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 6154cd9e0f..fd4b64f19b 100644 --- a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm @@ -26,7 +26,7 @@ if(!H.blood_volume) H.blood_volume += 5 H.adjustBruteLoss(5) - H << "You feel empty!" + to_chat(H, "You feel empty!") if(H.blood_volume < BLOOD_VOLUME_NORMAL) if(H.nutrition >= NUTRITION_LEVEL_STARVING) @@ -34,7 +34,7 @@ H.nutrition -= 2.5 if(H.blood_volume < BLOOD_VOLUME_OKAY) if(prob(5)) - H << "You feel drained!" + to_chat(H, "You feel drained!") if(H.blood_volume < BLOOD_VOLUME_BAD) Cannibalize_Body(H) H.update_action_buttons_icon() @@ -49,7 +49,7 @@ limbs_to_consume -= list("r_arm", "l_arm") consumed_limb = H.get_bodypart(pick(limbs_to_consume)) consumed_limb.drop_limb() - H << "Your [consumed_limb] is drawn back into your body, unable to maintain its shape!" + to_chat(H, "Your [consumed_limb] is drawn back into your body, unable to maintain its shape!") qdel(consumed_limb) H.blood_volume += 20 @@ -73,13 +73,13 @@ var/mob/living/carbon/human/H = owner var/list/limbs_to_heal = H.get_missing_limbs() if(limbs_to_heal.len < 1) - H << "You feel intact enough as it is." + to_chat(H, "You feel intact enough as it is.") return - H << "You focus intently on your missing [limbs_to_heal.len >= 2 ? "limbs" : "limb"]..." + to_chat(H, "You focus intently on your missing [limbs_to_heal.len >= 2 ? "limbs" : "limb"]...") if(H.blood_volume >= 40*limbs_to_heal.len+BLOOD_VOLUME_OKAY) H.regenerate_limbs() H.blood_volume -= 40*limbs_to_heal.len - H << "...and after a moment you finish reforming!" + to_chat(H, "...and after a moment you finish reforming!") return else if(H.blood_volume >= 40)//We can partially heal some limbs while(H.blood_volume >= BLOOD_VOLUME_OKAY+40) @@ -87,9 +87,9 @@ H.regenerate_limb(healed_limb) limbs_to_heal -= healed_limb H.blood_volume -= 40 - H << "...but there is not enough of you to fix everything! You must attain more mass to heal completely!" + to_chat(H, "...but there is not enough of you to fix everything! You must attain more mass to heal completely!") return - H << "...but there is not enough of you to go around! You must attain more mass to heal!" + to_chat(H, "...but there is not enough of you to go around! You must attain more mass to heal!") ////////////////////////////////////////////////////////SLIME PEOPLE/////////////////////////////////////////////////////////////////// @@ -128,8 +128,8 @@ /* slime_split = new slime_split.Grant(C) swap_body = new - swap_body.Grant(C) -*/ + swap_body.Grant(C) */ + if(!bodies || !bodies.len) bodies = list(C) else @@ -140,7 +140,7 @@ /datum/species/jelly/slime/spec_life(mob/living/carbon/human/H) if(H.blood_volume >= BLOOD_VOLUME_SLIME_SPLIT) if(prob(5)) - H << "You feel very bloated!" + to_chat(H, "You feel very bloated!") else if(H.nutrition >= NUTRITION_LEVEL_WELL_FED) H.blood_volume += 3 H.nutrition -= 2.5 @@ -176,11 +176,9 @@ if(H.blood_volume >= BLOOD_VOLUME_SLIME_SPLIT) make_dupe() else - H << "...but there is not enough of you to \ - go around! You must attain more mass to split!" + to_chat(H, "...but there is not enough of you to go around! You must attain more mass to split!") else - H << "...but fail to stand perfectly still!\ - " + to_chat(H, "...but fail to stand perfectly still!") H.notransform = FALSE @@ -223,7 +221,7 @@ /datum/action/innate/swap_body/Activate() if(!isslimeperson(owner)) - owner << "You are not a slimeperson." + to_chat(owner, "You are not a slimeperson.") Remove(owner) else ui_interact(owner) 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 c327ac0028..4d124fbfcb 100644 --- a/code/modules/mob/living/carbon/human/species_types/podpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/podpeople.dm @@ -27,11 +27,11 @@ var/light_amount = 0 //how much light there is in the place, affects receiving nutrition and healing if(isturf(H.loc)) //else, there's considered to be no light var/turf/T = H.loc - light_amount = min(10,T.get_lumcount()) - 5 - H.nutrition += light_amount + light_amount = min(1,T.get_lumcount()) - 0.5 + H.nutrition += light_amount * 10 if(H.nutrition > NUTRITION_LEVEL_FULL) H.nutrition = NUTRITION_LEVEL_FULL - if(light_amount > 2) //if there's enough light, heal + if(light_amount > 0.2) //if there's enough light, heal H.heal_overall_damage(1,1) H.adjustToxLoss(-1) H.adjustOxyLoss(-1) @@ -61,4 +61,4 @@ H.adjustFireLoss(rand(5,15)) H.show_message("The radiation beam singes you!") if(/obj/item/projectile/energy/florayield) - H.nutrition = min(H.nutrition+30, NUTRITION_LEVEL_FULL) \ No newline at end of file + H.nutrition = min(H.nutrition+30, NUTRITION_LEVEL_FULL) 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 400e0f4509..64cb0a9cdb 100644 --- a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm @@ -17,7 +17,7 @@ var/turf/T = H.loc light_amount = T.get_lumcount() - if(light_amount > 2) //if there's enough light, start dying + if(light_amount > 0.2) //if there's enough light, start dying H.take_overall_damage(1,1) - else if (light_amount < 2) //heal in the dark - H.heal_overall_damage(1,1) \ No newline at end of file + else if (light_amount < 0.2) //heal in the dark + H.heal_overall_damage(1,1) diff --git a/code/modules/mob/living/carbon/human/status_procs.dm b/code/modules/mob/living/carbon/human/status_procs.dm index 5ee8591fc6..4e80477e6b 100644 --- a/code/modules/mob/living/carbon/human/status_procs.dm +++ b/code/modules/mob/living/carbon/human/status_procs.dm @@ -6,7 +6,11 @@ /mob/living/carbon/human/Weaken(amount, updating = 1, ignore_canstun = 0) amount = dna.species.spec_stun(src,amount) return ..() - + +/mob/living/carbon/human/Paralyse(amount, updating = 1, ignore_canstun = 0) + amount = dna.species.spec_stun(src,amount) + return ..() + /mob/living/carbon/human/cure_husk() . = ..() if(.) @@ -15,4 +19,4 @@ /mob/living/carbon/human/become_husk() . = ..() if(.) - update_hair() \ No newline at end of file + update_hair() diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 421a67c5b4..62411e0684 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -71,6 +71,7 @@ There are several things that need to be remembered: /mob/living/carbon/human/regenerate_icons() if(!..()) + icon_render_key = null //invalidate bodyparts cache update_body() update_hair() update_inv_w_uniform() @@ -265,10 +266,10 @@ There are several things that need to be remembered: if(hud_used.inventory_shown) //if the inventory is open client.screen += shoes //add it to client's screen update_observer_view(shoes,1) + var/image/standing = shoes.build_worn_icon(state = shoes.icon_state, default_layer = SHOES_LAYER, default_icon_file = 'icons/mob/feet.dmi') if("taur" in dna.species.mutant_bodyparts) switch(dna.features["taur"]) if(!"Naga" || "None") - var/image/standing = shoes.build_worn_icon(state = shoes.icon_state, default_layer = SHOES_LAYER, default_icon_file = 'icons/mob/feet.dmi') overlays_standing[SHOES_LAYER] = standing apply_overlay(SHOES_LAYER) diff --git a/code/modules/mob/living/carbon/human/whisper.dm b/code/modules/mob/living/carbon/human/whisper.dm index 654e0da190..b796e2903c 100644 --- a/code/modules/mob/living/carbon/human/whisper.dm +++ b/code/modules/mob/living/carbon/human/whisper.dm @@ -5,7 +5,7 @@ return if(say_disabled) //This is here to try to identify lag problems - usr << "Speech is currently admin-disabled." + to_chat(usr, "Speech is currently admin-disabled.") return if(stat == DEAD) @@ -21,7 +21,7 @@ if (src.client) if (src.client.prefs.muted & MUTE_IC) - src << "You cannot whisper (muted)." + to_chat(src, "You cannot whisper (muted).") return log_whisper("[src.name]/[src.key] : [message]") diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm index b83ddf4d2a..b774f06ead 100644 --- a/code/modules/mob/living/carbon/monkey/life.dm +++ b/code/modules/mob/living/carbon/monkey/life.dm @@ -29,7 +29,7 @@ if(!weakened) emote("collapse") Weaken(10) - src << "You feel weak." + to_chat(src, "You feel weak.") switch(radiation) @@ -38,11 +38,11 @@ if(!weakened) emote("collapse") Weaken(3) - src << "You feel weak." + to_chat(src, "You feel weak.") if(75 to 100) if(prob(1)) - src << "You mutate!" + to_chat(src, "You mutate!") randmutb() emote("gasp") domutcheck() diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index 9bf97266d8..368a3278ef 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -19,7 +19,7 @@ -/mob/living/carbon/monkey/New() +/mob/living/carbon/monkey/Initialize() verbs += /mob/living/proc/mob_sleep verbs += /mob/living/proc/lay_down diff --git a/code/modules/mob/living/carbon/monkey/monkey_defense.dm b/code/modules/mob/living/carbon/monkey/monkey_defense.dm index ecf5ce584a..177cfb5712 100644 --- a/code/modules/mob/living/carbon/monkey/monkey_defense.dm +++ b/code/modules/mob/living/carbon/monkey/monkey_defense.dm @@ -167,13 +167,13 @@ if(!(wear_mask.resistance_flags & UNACIDABLE)) wear_mask.acid_act(acidpwr) else - src << "Your mask protects you from the acid." + to_chat(src, "Your mask protects you from the acid.") return if(head) if(!(head.resistance_flags & UNACIDABLE)) head.acid_act(acidpwr) else - src << "Your hat protects you from the acid." + to_chat(src, "Your hat protects you from the acid.") return take_bodypart_damage(acidpwr * min(0.6, acid_volume*0.1)) diff --git a/code/modules/mob/living/carbon/monkey/punpun.dm b/code/modules/mob/living/carbon/monkey/punpun.dm index 995c30f6fe..073a063451 100644 --- a/code/modules/mob/living/carbon/monkey/punpun.dm +++ b/code/modules/mob/living/carbon/monkey/punpun.dm @@ -9,7 +9,7 @@ var/list/pet_monkey_names = list("Pun Pun", "Bubbles", "Mojo", "George", "Darwin", "Aldo", "Caeser", "Kanzi", "Kong", "Terk", "Grodd", "Mala", "Bojangles", "Coco", "Able", "Baker", "Scatter", "Norbit", "Travis") var/list/rare_pet_monkey_names = list("Professor Bobo", "Deempisi's Revenge", "Furious George", "King Louie", "Dr. Zaius", "Jimmy Rustles", "Dinner", "Lanky") -/mob/living/carbon/monkey/punpun/New() +/mob/living/carbon/monkey/punpun/Initialize() Read_Memory() if(ancestor_name) name = ancestor_name diff --git a/code/modules/mob/living/death.dm b/code/modules/mob/living/death.dm index 29b61dbf96..5c20a8ea45 100644 --- a/code/modules/mob/living/death.dm +++ b/code/modules/mob/living/death.dm @@ -52,7 +52,7 @@ if(mind && mind.name && mind.active && (!(T.flags & NO_DEATHRATTLE))) var/area/A = get_area(T) var/rendered = "[mind.name] has died at [A.name]." - deadchat_broadcast(rendered, follow_target = src, message_type=DEADCHAT_DEATHRATTLE) + deadchat_broadcast(rendered, follow_target = src, turf_target = T, message_type=DEADCHAT_DEATHRATTLE) if(mind) mind.store_memory("Time of death: [tod]", 0) living_mob_list -= src @@ -65,7 +65,7 @@ SetSleeping(0, 0) blind_eyes(1) reset_perspective(null) - hide_fullscreens() + reload_fullscreen() update_action_buttons_icon() update_damage_hud() update_health_hud() diff --git a/code/modules/mob/living/emote.dm b/code/modules/mob/living/emote.dm index 6ba12577d1..48670ed9ea 100644 --- a/code/modules/mob/living/emote.dm +++ b/code/modules/mob/living/emote.dm @@ -9,7 +9,7 @@ var/datum/emote/E = emote_list[act] if(!E) - src << "Unusable emote '[act]'. Say *help for a list." + to_chat(src, "Unusable emote '[act]'. Say *help for a list.") return E.run_emote(src, param, m_type) @@ -380,22 +380,22 @@ /datum/emote/living/custom/proc/check_invalid(mob/user, input) . = TRUE if(copytext(input,1,5) == "says") - user << "Invalid emote." + to_chat(user, "Invalid emote.") else if(copytext(input,1,9) == "exclaims") - user << "Invalid emote." + to_chat(user, "Invalid emote.") else if(copytext(input,1,6) == "yells") - user << "Invalid emote." + to_chat(user, "Invalid emote.") else if(copytext(input,1,5) == "asks") - user << "Invalid emote." + to_chat(user, "Invalid emote.") else . = FALSE /datum/emote/living/custom/run_emote(mob/user, params, type_override = null) if(jobban_isbanned(user, "emote")) - user << "You cannot send custom emotes (banned)." + to_chat(user, "You cannot send custom emotes (banned).") return FALSE else if(user.client && user.client.prefs.muted & MUTE_IC) - user << "You cannot send IC messages (muted)." + to_chat(user, "You cannot send IC messages (muted).") return FALSE else if(!params) var/custom_emote = copytext(sanitize(input("Choose an emote to display.") as text|null), 1, MAX_MESSAGE_LEN) @@ -444,7 +444,7 @@ message = jointext(message, "") - user << message + to_chat(user, message) /datum/emote/sound/beep key = "beep" diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 6ca93a218b..bc304db040 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1,4 +1,4 @@ -/mob/living/New() +/mob/living/Initialize() . = ..() generateStaticOverlay() if(staticOverlays.len) @@ -109,7 +109,7 @@ var/mob/living/L = M if(L.pulledby && L.pulledby != src && L.restrained()) if(!(world.time % 5)) - src << "[L] is restrained, you cannot push past." + to_chat(src, "[L] is restrained, you cannot push past.") return 1 if(L.pulling) @@ -117,7 +117,7 @@ var/mob/P = L.pulling if(P.restrained()) if(!(world.time % 5)) - src << "[L] is restraining [P], you cannot push past." + to_chat(src, "[L] is restraining [P], you cannot push past.") return 1 if(moving_diagonally)//no mob swap during diagonal moves. @@ -157,7 +157,6 @@ // In case of micros, we don't swap positions; instead occupying the same square! if (handle_micro_bump_helping(src)) return - return 1 //okay, so we didn't switch. but should we push? @@ -210,7 +209,7 @@ set name = "Pull" set category = "Object" - if(istype(AM) && AM.Adjacent(src)) + if(istype(AM) && Adjacent(AM)) start_pulling(AM) else stop_pulling() @@ -229,11 +228,11 @@ /mob/living/verb/succumb(whispered as null) set hidden = 1 if (InCritical()) - src.attack_log += "[src] has [whispered ? "whispered his final words" : "succumbed to death"] with [round(health, 0.1)] points of health!" + src.log_message("Has [whispered ? "whispered his final words" : "succumbed to death"] with [round(health, 0.1)] points of health!", INDIVIDUAL_ATTACK_LOG) src.adjustOxyLoss(src.health - HEALTH_THRESHOLD_DEAD) updatehealth() if(!whispered) - src << "You have given up life and succumbed to death." + to_chat(src, "You have given up life and succumbed to death.") death() /mob/living/incapacitated(ignore_restraints, ignore_grab) @@ -282,7 +281,7 @@ set category = "IC" if(sleeping) - src << "You are already sleeping." + to_chat(src, "You are already sleeping.") return else if(alert(src, "You sure you want to sleep for a while?", "Sleep", "Yes", "No") == "Yes") @@ -296,7 +295,7 @@ set category = "IC" resting = !resting - src << "You are now [resting ? "resting" : "getting up"]." + to_chat(src, "You are now [resting ? "resting" : "getting up"].") update_canmove() //Recursive function to find everything a mob is holding. @@ -407,11 +406,11 @@ if(config.allow_Metadata) if(client) - src << "[src]'s Metainfo:
    [client.prefs.metadata]" + to_chat(src, "[src]'s Metainfo:
    [client.prefs.metadata]") else - src << "[src] does not have any stored infomation!" + to_chat(src, "[src] does not have any stored infomation!") else - src << "OOC Metadata is not supported by this server!" + to_chat(src, "OOC Metadata is not supported by this server!") return @@ -562,10 +561,10 @@ C.container_resist(src) else if(has_status_effect(/datum/status_effect/freon)) - src << "You start breaking out of the ice cube!" + to_chat(src, "You start breaking out of the ice cube!") if(do_mob(src, src, 40)) if(has_status_effect(/datum/status_effect/freon)) - src << "You break out of the ice cube!" + to_chat(src, "You break out of the ice cube!") remove_status_effect(/datum/status_effect/freon) update_canmove() @@ -633,7 +632,7 @@ // 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.flags & NODROP) - src << "You can't remove \the [what.name], it appears to be stuck!" + 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].", \ "[src] tries to remove [who]'s [what.name].") @@ -654,7 +653,7 @@ /mob/living/stripPanelEquip(obj/item/what, mob/who, where) what = src.get_active_held_item() if(what && (what.flags & NODROP)) - src << "You can't put \the [what.name] on [who], it's stuck to your hand!" + to_chat(src, "You can't put \the [what.name] on [who], it's stuck to your hand!") return if(what) var/list/where_list @@ -667,7 +666,7 @@ final_where = where if(!what.mob_can_equip(who, src, final_where, TRUE)) - src << "\The [what.name] doesn't fit in that place!" + to_chat(src, "\The [what.name] doesn't fit in that place!") return visible_message("[src] tries to put [what] on [who].") @@ -789,11 +788,11 @@ if(be_close && in_range(M, src)) return 1 else - src << "You don't have the dexterity to do this!" + to_chat(src, "You don't have the dexterity to do this!") return /mob/living/proc/can_use_guns(var/obj/item/weapon/gun/G) if (G.trigger_guard != TRIGGER_GUARD_ALLOW_ALL && !IsAdvancedToolUser()) - src << "You don't have the dexterity to do this!" + to_chat(src, "You don't have the dexterity to do this!") return 0 return 1 @@ -804,7 +803,7 @@ if(staminaloss) var/total_health = (health - staminaloss) if(total_health <= HEALTH_THRESHOLD_CRIT && !stat) - src << "You're too exhausted to keep going..." + to_chat(src, "You're too exhausted to keep going...") Weaken(5) setStaminaLoss(health - 2) update_health_hud() @@ -860,8 +859,7 @@ var/mob/living/simple_animal/hostile/guardian/G = para G.summoner = new_mob G.Recall() - G << "Your summoner has changed \ - form!" + to_chat(G, "Your summoner has changed form!") /mob/living/proc/fakefireextinguish() return @@ -877,7 +875,7 @@ on_fire = 1 src.visible_message("[src] catches fire!", \ "You're set on fire!") - src.AddLuminosity(3) + src.set_light(3) throw_alert("fire", /obj/screen/alert/fire) update_fire() return TRUE @@ -887,7 +885,7 @@ if(on_fire) on_fire = 0 fire_stacks = 0 - src.AddLuminosity(-3) + src.set_light(0) clear_alert("fire") update_fire() @@ -930,4 +928,4 @@ /mob/living/post_buckle_mob(mob/living/M) if(riding_datum) riding_datum.handle_vehicle_offsets() - riding_datum.handle_vehicle_layer() \ No newline at end of file + riding_datum.handle_vehicle_layer() diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 0d10db0cd6..774a3f7dd7 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -6,19 +6,19 @@ if(armor && armour_penetration) armor = max(0, armor - armour_penetration) if(penetrated_text) - src << "[penetrated_text]" + to_chat(src, "[penetrated_text]") else - src << "Your armor was penetrated!" + to_chat(src, "Your armor was penetrated!") else if(armor >= 100) if(absorb_text) - src << "[absorb_text]" + to_chat(src, "[absorb_text]") else - src << "Your armor absorbs the blow!" + to_chat(src, "Your armor absorbs the blow!") else if(armor > 0) if(soften_text) - src << "[soften_text]" + to_chat(src, "[soften_text]") else - src << "Your armor softens the blow!" + to_chat(src, "Your armor softens the blow!") return armor @@ -129,7 +129,7 @@ return if(!(status_flags & CANPUSH)) - user << "[src] can't be grabbed more aggressively!" + to_chat(user, "[src] can't be grabbed more aggressively!") return 0 grippedby(user) @@ -173,7 +173,7 @@ /mob/living/attack_slime(mob/living/simple_animal/slime/M) if(!ticker || !ticker.mode) - M << "You cannot attack people before the game has started." + to_chat(M, "You cannot attack people before the game has started.") return if(M.buckled) @@ -205,12 +205,12 @@ /mob/living/attack_paw(mob/living/carbon/monkey/M) if(isturf(loc) && istype(loc.loc, /area/start)) - M << "No attacking people at spawn, you jackass." + to_chat(M, "No attacking people at spawn, you jackass.") return 0 if (M.a_intent == INTENT_HARM) if(M.is_muzzled() || (M.wear_mask && M.wear_mask.flags_cover & MASKCOVERSMOUTH)) - M << "You can't bite with your mouth covered!" + to_chat(M, "You can't bite with your mouth covered!") return 0 M.do_attack_animation(src, ATTACK_EFFECT_BITE) if (prob(75)) @@ -245,7 +245,7 @@ /mob/living/attack_alien(mob/living/carbon/alien/humanoid/M) if(isturf(loc) && istype(loc.loc, /area/start)) - M << "No attacking people at spawn, you jackass." + to_chat(M, "No attacking people at spawn, you jackass.") return 0 switch(M.a_intent) @@ -300,8 +300,11 @@ return(gain) /mob/living/narsie_act() + if(status_flags & GODMODE) + return + if(is_servant_of_ratvar(src) && !stat) - src << "You resist Nar-Sie's influence... but not all of it. Run!" + to_chat(src, "You resist Nar-Sie's influence... but not all of it. Run!") adjustBruteLoss(35) if(src && reagents) reagents.add_reagent("heparin", 5) @@ -324,11 +327,14 @@ /mob/living/ratvar_act() + if(status_flags & GODMODE) + return + if(stat != DEAD && !is_servant_of_ratvar(src)) for(var/obj/item/weapon/implant/mindshield/M in implants) qdel(M) if(!add_servant_of_ratvar(src)) - src << "A blinding light boils you alive! Run!" + to_chat(src, "A blinding light boils you alive! Run!") adjustFireLoss(35) if(src) adjust_fire_stacks(1) diff --git a/code/modules/mob/living/living_defines.dm b/code/modules/mob/living/living_defines.dm index 39fb8c1adb..c9046013a0 100644 --- a/code/modules/mob/living/living_defines.dm +++ b/code/modules/mob/living/living_defines.dm @@ -54,8 +54,6 @@ var/smoke_delay = 0 //used to prevent spam with smoke reagent reaction on mob. - var/list/say_log = list() //a log of what we've said, with a timestamp as the key for each message - var/bubble_icon = "default" //what icon the mob uses for speechbubbles var/last_bumped = 0 diff --git a/code/modules/mob/living/login.dm b/code/modules/mob/living/login.dm index 9453e421cd..dd62f3be04 100644 --- a/code/modules/mob/living/login.dm +++ b/code/modules/mob/living/login.dm @@ -15,7 +15,7 @@ //Vents if(ventcrawler) - src << "You can ventcrawl! Use alt+click on vents to quickly travel about the station." + to_chat(src, "You can ventcrawl! Use alt+click on vents to quickly travel about the station.") if(ranged_ability) ranged_ability.add_ranged_ability(src, "You currently have [ranged_ability] active!") \ No newline at end of file diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index aa7600ef8f..814e9fe0c8 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -18,6 +18,8 @@ var/list/department_radio_keys = list( ":g" = "changeling", "#g" = "changeling", ".g" = "changeling", ":y" = "Centcom", "#y" = "Centcom", ".y" = "Centcom", ":x" = "cords", "#x" = "cords", ".x" = "cords", + ":p" = "admin", "#p" = "admin", ".p" = "admin", + ":d" = "deadmin", "#d" = "deadmin", ".d" = "deadmin", ":R" = "right hand", "#R" = "right hand", ".R" = "right hand", ":L" = "left hand", "#L" = "left hand", ".L" = "left hand", @@ -38,6 +40,8 @@ var/list/department_radio_keys = list( ":G" = "changeling", "#G" = "changeling", ".G" = "changeling", ":Y" = "Centcom", "#Y" = "Centcom", ".Y" = "Centcom", ":X" = "cords", "#X" = "cords", ".X" = "cords", + ":P" = "admin", "#P" = "admin", ".P" = "admin", + ":D" = "deadmin", "#D" = "deadmin", ".D" = "deadmin", //kinda localization -- rastaf0 //same keys as above, but on russian keyboard layout. This file uses cp1251 as encoding. @@ -66,21 +70,8 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) if(!message || message == "") return - - if(stat == DEAD) - say_dead(message) - return - - if(check_emote(message)) - return - - if(!can_speak_basic(message)) //Stat is seperate so I can handle whispers properly. - return - var/message_mode = get_message_mode(message) - - if(stat && !(message_mode in crit_allowed_modes)) - return + var/original_message = message if(message_mode == MODE_HEADSET || message_mode == MODE_ROBOT) message = copytext(message, 2) @@ -89,11 +80,34 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) if(findtext(message, " ", 1, 2)) message = copytext(message, 2) + if(message_mode == "admin") + if(client) + client.cmd_admin_say(message) + return + + if(message_mode == "deadmin") + if(client) + client.dsay(message) + return + + if(stat == DEAD) + say_dead(original_message) + return + + if(check_emote(original_message)) + return + + if(!can_speak_basic(original_message)) //Stat is seperate so I can handle whispers properly. + return + + if(stat && !(message_mode in crit_allowed_modes)) + return + if(handle_inherent_channels(message, message_mode)) //Hiveminds, binary chat & holopad. return if(!can_speak_vocal(message)) - src << "You find yourself unable to speak!" + to_chat(src, "You find yourself unable to speak!") return if(message_mode != MODE_WHISPER) //whisper() calls treat_message(); double process results in "hisspering" @@ -102,7 +116,7 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) spans += get_spans() //Log what we've said with an associated timestamp, using the list's len for safety/to prevent overwriting messages - say_log["[LAZYLEN(say_log) + 1]\[[time_stamp()]\]"] = message + log_message(message, INDIVIDUAL_SAY_LOG) var/message_range = 7 var/radio_return = radio(message, message_mode, spans) @@ -175,7 +189,7 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) /mob/living/proc/can_speak_basic(message) //Check BEFORE handling of xeno and ling channels if(client) if(client.prefs.muted & MUTE_IC) - src << "You cannot speak in IC (muted)." + to_chat(src, "You cannot speak in IC (muted).") return 0 if(client.handle_spam_prevention(message,MUTE_IC)) return 0 @@ -213,34 +227,34 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) for(var/mob/M in mob_list) if(M in dead_mob_list) var/link = FOLLOW_LINK(M, src) - M << "[link] [msg]" + to_chat(M, "[link] [msg]") else switch(M.lingcheck()) if(3) - M << msg + to_chat(M, msg) if(2) - M << msg + to_chat(M, msg) if(1) if(prob(40)) - M << "We can faintly sense an outsider trying to communicate through the hivemind..." + to_chat(M, "We can faintly sense an outsider trying to communicate through the hivemind...") if(2) var/msg = "[mind.changeling.changelingID]: [message]" log_say("[mind.changeling.changelingID]/[src.key] : [message]") for(var/mob/M in mob_list) if(M in dead_mob_list) var/link = FOLLOW_LINK(M, src) - M << "[link] [msg]" + to_chat(M, "[link] [msg]") else switch(M.lingcheck()) if(3) - M << msg + to_chat(M, msg) if(2) - M << msg + to_chat(M, msg) if(1) if(prob(40)) - M << "We can faintly sense another of our kind trying to communicate through the hivemind..." + to_chat(M, "We can faintly sense another of our kind trying to communicate through the hivemind...") if(1) - src << "Our senses have not evolved enough to be able to communicate this way..." + to_chat(src, "Our senses have not evolved enough to be able to communicate this way...") return TRUE if(message_mode == MODE_ALIEN) if(hivecheck()) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index b946ba9dfc..c5e9f788f8 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -85,7 +85,7 @@ var/list/ai_list = list() var/obj/structure/AIcore/deactivated/linked_core //For exosuit control -/mob/living/silicon/ai/New(loc, datum/ai_laws/L, mob/target_ai) +/mob/living/silicon/ai/Initialize(mapload, datum/ai_laws/L, mob/target_ai) ..() if(!target_ai) //If there is no player/brain inside. new/obj/structure/AIcore/deactivated(loc) //New empty terminal. @@ -102,18 +102,18 @@ var/list/ai_list = list() target_ai.mind.transfer_to(src) if(mind.special_role) mind.store_memory("As an AI, you must obey your silicon laws above all else. Your objectives will consider you to be dead.") - src << "You have been installed as an AI! " - src << "You must obey your silicon laws above all else. Your objectives will consider you to be dead." + to_chat(src, "You have been installed as an AI! ") + to_chat(src, "You must obey your silicon laws above all else. Your objectives will consider you to be dead.") - src << "You are playing the station's AI. The AI cannot move, but can interact with many objects while viewing them (through cameras)." - src << "To look at other parts of the station, click on yourself to get a camera menu." - src << "While observing through a camera, you can use most (networked) devices which you can see, such as computers, APCs, intercoms, doors, etc." - src << "To use something, simply click on it." - src << "Use say :b to speak to your cyborgs through binary." - src << "For department channels, use the following say commands:" - src << ":o - AI Private, :c - Command, :s - Security, :e - Engineering, :u - Supply, :v - Service, :m - Medical, :n - Science." + to_chat(src, "You are playing the station's AI. The AI cannot move, but can interact with many objects while viewing them (through cameras).") + to_chat(src, "To look at other parts of the station, click on yourself to get a camera menu.") + to_chat(src, "While observing through a camera, you can use most (networked) devices which you can see, such as computers, APCs, intercoms, doors, etc.") + to_chat(src, "To use something, simply click on it.") + to_chat(src, "Use say :b to speak to your cyborgs through binary.") + to_chat(src, "For department channels, use the following say commands:") + to_chat(src, ":o - AI Private, :c - Command, :s - Security, :e - Engineering, :u - Supply, :v - Service, :m - Medical, :n - Science.") show_laws() - src << "These laws may be changed by other players, or by you being the traitor." + to_chat(src, "These laws may be changed by other players, or by you being the traitor.") job = "AI" @@ -305,7 +305,7 @@ var/list/ai_list = list() if(isAI(usr)) var/mob/living/silicon/ai/AI = src if(AI.control_disabled) - usr << "Wireless control is disabled!" + to_chat(usr, "Wireless control is disabled!") return var/reason = input(src, "What is the nature of your emergency? ([CALL_SHUTTLE_REASON_LENGTH] characters required.)", "Confirm Shuttle Call") as null|text @@ -331,7 +331,7 @@ var/list/ai_list = list() return //won't work if dead anchored = !anchored // Toggles the anchor - src << "You are now [anchored ? "" : "un"]anchored." + to_chat(src, "You are now [anchored ? "" : "un"]anchored.") // the message in the [] will change depending whether or not the AI is anchored /mob/living/silicon/ai/update_canmove() //If the AI dies, mobs won't go through it anymore @@ -381,7 +381,7 @@ var/list/ai_list = list() if(H) H.attack_ai(src) //may as well recycle else - src << "Unable to locate the holopad." + to_chat(src, "Unable to locate the holopad.") if(href_list["track"]) var/string = href_list["track"] trackable_mobs() @@ -397,17 +397,17 @@ var/list/ai_list = list() if(target.len) ai_actual_track(pick(target)) else - src << "Target is not on or near any active cameras on the station." + to_chat(src, "Target is not on or near any active cameras on the station.") return if(href_list["callbot"]) //Command a bot to move to a selected location. if(call_bot_cooldown > world.time) - src << "Error: Your last call bot command is still processing, please wait for the bot to finish calculating a route." + to_chat(src, "Error: Your last call bot command is still processing, please wait for the bot to finish calculating a route.") return Bot = locate(href_list["callbot"]) in living_mob_list if(!Bot || Bot.remote_disabled || src.control_disabled) return //True if there is no bot found, the bot is manually emagged, or the AI is carded with wireless off. waypoint_mode = 1 - src << "Set your waypoint by clicking on a valid location free of obstructions." + to_chat(src, "Set your waypoint by clicking on a valid location free of obstructions.") return if(href_list["interface"]) //Remotely connect to a bot! Bot = locate(href_list["interface"]) in living_mob_list @@ -421,16 +421,16 @@ var/list/ai_list = list() if (href_list["ai_take_control"]) //Mech domination var/obj/mecha/M = locate(href_list["ai_take_control"]) if(controlled_mech) - src << "You are already loaded into an onboard computer!" + to_chat(src, "You are already loaded into an onboard computer!") return if(!cameranet.checkCameraVis(M)) - src << "Exosuit is no longer near active cameras." + to_chat(src, "Exosuit is no longer near active cameras.") return if(lacks_power()) - src << "You're depowered!" + to_chat(src, "You're depowered!") return if(!isturf(loc)) - src << "You aren't in your core!" + to_chat(src, "You aren't in your core!") return if(M) M.transfer_ai(AI_MECH_HACK,src, usr) //Called om the mech itself. @@ -461,7 +461,7 @@ var/list/ai_list = list() return //won't work if dead if(control_disabled) - src << "Wireless communication is disabled." + to_chat(src, "Wireless communication is disabled.") return var/turf/ai_current_turf = get_turf(src) var/ai_Zlevel = ai_current_turf.z @@ -495,7 +495,7 @@ var/list/ai_list = list() else if(cameranet && cameranet.checkTurfVis(turf_check)) call_bot(turf_check) else - src << "Selected location is not visible." + to_chat(src, "Selected location is not visible.") /mob/living/silicon/ai/proc/call_bot(turf/waypoint) @@ -503,9 +503,9 @@ var/list/ai_list = list() return if(Bot.calling_ai && Bot.calling_ai != src) //Prevents an override if another AI is controlling this bot. - src << "Interface error. Unit is already in use." + to_chat(src, "Interface error. Unit is already in use.") return - src << "Sending command to bot..." + to_chat(src, "Sending command to bot...") call_bot_cooldown = world.time + CALL_BOT_COOLDOWN Bot.call_bot(src, waypoint) call_bot_cooldown = 0 @@ -607,7 +607,7 @@ var/list/ai_list = list() if(network in C.network) U.eyeobj.setLoc(get_turf(C)) break - src << "Switched to [network] camera network." + to_chat(src, "Switched to [network] camera network.") //End of code by Mord_Sith @@ -697,14 +697,18 @@ var/list/ai_list = list() var/list/icon_list = list( "default" = 'icons/mob/AI.dmi', "floating face" = 'icons/mob/AI.dmi', - "xeno queen" = 'icons/mob/AI.dmi', + "xeno queen" = 'icons/mob/alien.dmi', "horror" = 'icons/mob/AI.dmi' ) input = input("Please select a hologram:") as null|anything in icon_list if(input) qdel(holo_icon) - holo_icon = getHologramIcon(icon(icon_list[input], input)) + switch(input) + if("xeno queen") + holo_icon = getHologramIcon(icon(icon_list[input],"alienq")) + else + holo_icon = getHologramIcon(icon(icon_list[input], input)) return /mob/living/silicon/ai/proc/corereturn() @@ -713,7 +717,7 @@ var/list/ai_list = list() var/obj/machinery/power/apc/apc = src.loc if(!istype(apc)) - src << "You are already in your Main Core." + to_chat(src, "You are already in your Main Core.") return apc.malfvacate() @@ -724,17 +728,17 @@ var/list/ai_list = list() camera_light_on = !camera_light_on if (!camera_light_on) - src << "Camera lights deactivated." + to_chat(src, "Camera lights deactivated.") for (var/obj/machinery/camera/C in lit_cameras) - C.SetLuminosity(0) + C.set_light(0) lit_cameras = list() return light_cameras() - src << "Camera lights activated." + to_chat(src, "Camera lights activated.") //AI_CAMERA_LUMINOSITY @@ -766,7 +770,7 @@ var/list/ai_list = list() if(stat == 2) return //won't work if dead - src << "Accessing Subspace Transceiver control..." + to_chat(src, "Accessing Subspace Transceiver control...") if (radio) radio.interact(src) @@ -788,10 +792,10 @@ var/list/ai_list = list() return if(interaction == AI_TRANS_TO_CARD)//The only possible interaction. Upload AI mob to a card. if(!mind) - user << "No intelligence patterns detected." //No more magical carding of empty cores, AI RETURN TO BODY!!!11 + to_chat(user, "No intelligence patterns detected." ) return if(!can_be_carded) - user << "Transfer failed." + to_chat(user, "Transfer failed.") return ShutOffDoomsdayDevice() new /obj/structure/AIcore/deactivated(loc)//Spawns a deactivated terminal at AI location. @@ -800,8 +804,8 @@ var/list/ai_list = list() radio_enabled = 0 //No talking on the built-in radio for you either! forceMove(card) card.AI = src - src << "You have been downloaded to a mobile storage device. Remote device connection severed." - user << "Transfer successful: [name] ([rand(1000,9999)].exe) removed from host terminal and stored within local memory." + to_chat(src, "You have been downloaded to a mobile storage device. Remote device connection severed.") + to_chat(user, "Transfer successful: [name] ([rand(1000,9999)].exe) removed from host terminal and stored within local memory.") /mob/living/silicon/ai/can_buckle() return 0 @@ -841,8 +845,8 @@ var/list/ai_list = list() /mob/living/silicon/ai/proc/add_malf_picker() - src << "In the top right corner of the screen you will find the Malfunctions tab, where you can purchase various abilities, from upgraded surveillance to station ending doomsday devices." - src << "You are also capable of hacking APCs, which grants you more points to spend on your Malfunction powers. The drawback is that a hacked APC will give you away if spotted by the crew. Hacking an APC takes 60 seconds." + to_chat(src, "In the top right corner of the screen you will find the Malfunctions tab, where you can purchase various abilities, from upgraded surveillance to station ending doomsday devices.") + to_chat(src, "You are also capable of hacking APCs, which grants you more points to spend on your Malfunction powers. The drawback is that a hacked APC will give you away if spotted by the crew. Hacking an APC takes 60 seconds.") view_core() //A BYOND bug requires you to be viewing your core before your verbs update verbs += /mob/living/silicon/ai/proc/choose_modules malf_picker = new /datum/module_picker @@ -886,12 +890,10 @@ var/list/ai_list = list() clear_alert("hackingapc") if(!istype(apc) || QDELETED(apc) || apc.stat & BROKEN) - src << "Hack aborted. The designated APC no \ - longer exists on the power network." + 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) else if(apc.aidisabled) - src << "Hack aborted. \The [apc] is no \ - longer responding to our systems." + 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) else malf_picker.processing_time += 10 @@ -902,14 +904,13 @@ var/list/ai_list = list() apc.coverlocked = TRUE playsound(get_turf(src), 'sound/machines/ding.ogg', 50, 1) - src << "Hack complete. \The [apc] is now under your \ - exclusive control." + to_chat(src, "Hack complete. \The [apc] is now under your exclusive control.") apc.update_icon() /mob/living/silicon/ai/resist() return -/mob/living/silicon/ai/spawned/New(loc, datum/ai_laws/L, mob/target_ai) +/mob/living/silicon/ai/spawned/Initialize(mapload, datum/ai_laws/L, mob/target_ai) if(!target_ai) target_ai = src //cheat! just give... ourselves as the spawned AI, because that's technically correct - ..() \ No newline at end of file + ..() diff --git a/code/modules/mob/living/silicon/ai/ai_defense.dm b/code/modules/mob/living/silicon/ai/ai_defense.dm index 28cac80aea..3bd328b3a8 100644 --- a/code/modules/mob/living/silicon/ai/ai_defense.dm +++ b/code/modules/mob/living/silicon/ai/ai_defense.dm @@ -7,7 +7,7 @@ /mob/living/silicon/ai/attack_alien(mob/living/carbon/alien/humanoid/M) if(!ticker || !ticker.mode) - M << "You cannot attack people before the game has started." + to_chat(M, "You cannot attack people before the game has started.") return ..() diff --git a/code/modules/mob/living/silicon/ai/examine.dm b/code/modules/mob/living/silicon/ai/examine.dm index 0ac4035009..a66ef0f018 100644 --- a/code/modules/mob/living/silicon/ai/examine.dm +++ b/code/modules/mob/living/silicon/ai/examine.dm @@ -19,6 +19,6 @@ msg += "[src]Core.exe has stopped responding! NTOS is searching for a solution to the problem...\n" msg += "*---------*
    " - user << msg + to_chat(user, msg) ..() \ No newline at end of file diff --git a/code/modules/mob/living/silicon/ai/freelook/cameranet.dm b/code/modules/mob/living/silicon/ai/freelook/cameranet.dm index e540b5bda1..2d1d784a7a 100644 --- a/code/modules/mob/living/silicon/ai/freelook/cameranet.dm +++ b/code/modules/mob/living/silicon/ai/freelook/cameranet.dm @@ -115,7 +115,7 @@ var/datum/cameranet/cameranet = new() var/x2 = min(world.maxx, T.x + (CHUNK_SIZE / 2)) & ~(CHUNK_SIZE - 1) var/y2 = min(world.maxy, T.y + (CHUNK_SIZE / 2)) & ~(CHUNK_SIZE - 1) - //world << "X1: [x1] - Y1: [y1] - X2: [x2] - Y2: [y2]" + //to_chat(world, "X1: [x1] - Y1: [y1] - X2: [x2] - Y2: [y2]") for(var/x = x1; x <= x2; x += CHUNK_SIZE) for(var/y = y1; y <= y2; y += CHUNK_SIZE) @@ -149,7 +149,7 @@ var/datum/cameranet/cameranet = new() /datum/cameranet/proc/stat_entry() if(!statclick) - statclick = new/obj/effect/statclick/debug("Initializing...", src) + statclick = new/obj/effect/statclick/debug(null, "Initializing...", src) stat(name, statclick.update("Cameras: [cameranet.cameras.len] | Chunks: [cameranet.chunks.len]")) diff --git a/code/modules/mob/living/silicon/ai/freelook/eye.dm b/code/modules/mob/living/silicon/ai/freelook/eye.dm index 7271732d33..316140a508 100644 --- a/code/modules/mob/living/silicon/ai/freelook/eye.dm +++ b/code/modules/mob/living/silicon/ai/freelook/eye.dm @@ -88,7 +88,7 @@ unset_machine() if(!eyeobj || !eyeobj.loc || QDELETED(eyeobj)) - src << "ERROR: Eyeobj not found. Creating new eye..." + to_chat(src, "ERROR: Eyeobj not found. Creating new eye...") eyeobj = new(loc) eyeobj.ai = src eyeobj.name = "[src.name] (AI Eye)" // Give it a name @@ -102,7 +102,7 @@ if(usr.stat == 2) return //won't work if dead acceleration = !acceleration - usr << "Camera acceleration has been toggled [acceleration ? "on" : "off"]." + to_chat(usr, "Camera acceleration has been toggled [acceleration ? "on" : "off"].") /mob/camera/aiEye/Hear(message, atom/movable/speaker, message_langs, raw_message, radio_freq, list/spans) if(relay_speech && speaker && ai && !radio_freq && speaker != ai && near_camera(speaker)) diff --git a/code/modules/mob/living/silicon/ai/laws.dm b/code/modules/mob/living/silicon/ai/laws.dm index 1f63330d9b..4a01e1dca8 100644 --- a/code/modules/mob/living/silicon/ai/laws.dm +++ b/code/modules/mob/living/silicon/ai/laws.dm @@ -13,7 +13,7 @@ who = world else who = src - who << "Obey these laws:" + to_chat(who, "Obey these laws:") src.laws_sanity_check() src.laws.show_laws(who) diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index e2b2e29e3d..24e4ac510a 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -93,7 +93,7 @@ /mob/living/silicon/ai/proc/start_RestorePowerRoutine() - src << "Backup battery online. Scanners, camera, and radio interface offline. Beginning fault-detection." + to_chat(src, "Backup battery online. Scanners, camera, and radio interface offline. Beginning fault-detection.") sleep(50) var/turf/T = get_turf(src) var/area/AIarea = get_area(src) @@ -101,16 +101,16 @@ if(!isspaceturf(T)) ai_restore_power() return - src << "Fault confirmed: missing external power. Shutting down main control system to save power." + to_chat(src, "Fault confirmed: missing external power. Shutting down main control system to save power.") sleep(20) - src << "Emergency control system online. Verifying connection to power network." + to_chat(src, "Emergency control system online. Verifying connection to power network.") sleep(50) T = get_turf(src) if(isspaceturf(T)) - src << "Unable to verify! No power connection detected!" + to_chat(src, "Unable to verify! No power connection detected!") aiRestorePowerRoutine = POWER_RESTORATION_SEARCH_APC return - src << "Connection verified. Searching for APC in power network." + to_chat(src, "Connection verified. Searching for APC in power network.") sleep(50) var/obj/machinery/power/apc/theAPC = null @@ -127,9 +127,9 @@ if (!theAPC) switch(PRP) if(1) - src << "Unable to locate APC!" + to_chat(src, "Unable to locate APC!") else - src << "Lost connection with the APC!" + to_chat(src, "Lost connection with the APC!") aiRestorePowerRoutine = POWER_RESTORATION_SEARCH_APC return if(AIarea.power_equip) @@ -137,13 +137,13 @@ ai_restore_power() return switch(PRP) - if (1) src << "APC located. Optimizing route to APC to avoid needless power waste." - if (2) src << "Best route identified. Hacking offline APC power port." - if (3) src << "Power port upload access confirmed. Loading control program into APC power port software." + if (1) to_chat(src, "APC located. Optimizing route to APC to avoid needless power waste.") + if (2) to_chat(src, "Best route identified. Hacking offline APC power port.") + if (3) to_chat(src, "Power port upload access confirmed. Loading control program into APC power port software.") if (4) - src << "Transfer complete. Forcing APC to execute program." + to_chat(src, "Transfer complete. Forcing APC to execute program.") sleep(50) - src << "Receiving control information from APC." + to_chat(src, "Receiving control information from APC.") sleep(2) apc_override = 1 theAPC.ui_interact(src, state = conscious_state) @@ -155,9 +155,9 @@ /mob/living/silicon/ai/proc/ai_restore_power() if(aiRestorePowerRoutine) if(aiRestorePowerRoutine == POWER_RESTORATION_APC_FOUND) - src << "Alert cancelled. Power has been restored." + to_chat(src, "Alert cancelled. Power has been restored.") else - src << "Alert cancelled. Power has been restored without our assistance." + to_chat(src, "Alert cancelled. Power has been restored without our assistance.") aiRestorePowerRoutine = POWER_RESTORATION_OFF set_blindness(0) update_sight() @@ -166,7 +166,7 @@ aiRestorePowerRoutine = POWER_RESTORATION_START blind_eyes(1) update_sight() - src << "You've lost power!" + to_chat(src, "You've lost power!") addtimer(CALLBACK(src, .proc/start_RestorePowerRoutine), 20) #undef POWER_RESTORATION_OFF diff --git a/code/modules/mob/living/silicon/ai/say.dm b/code/modules/mob/living/silicon/ai/say.dm index adfd32602b..c72a9fc026 100644 --- a/code/modules/mob/living/silicon/ai/say.dm +++ b/code/modules/mob/living/silicon/ai/say.dm @@ -19,7 +19,7 @@ /mob/living/silicon/ai/radio(message, message_mode, list/spans) if(!radio_enabled || aiRestorePowerRoutine || stat) //AI cannot speak if radio is disabled (via intellicard) or depowered. - src << "Your radio transmitter is offline!" + to_chat(src, "Your radio transmitter is offline!") return 0 ..() @@ -50,9 +50,9 @@ var/obj/machinery/holopad/T = current if(istype(T) && T.masters[src])//If there is a hologram and its master is the user. send_speech(message, 7, T, "robot", get_spans()) - src << "Holopad transmitted, [real_name] \"[message]\""//The AI can "hear" its own message. + to_chat(src, "Holopad transmitted, [real_name] \"[message]\"") else - src << "No holopad connected." + to_chat(src, "No holopad connected.") return @@ -92,7 +92,7 @@ var/const/VOX_DELAY = 600 /mob/living/silicon/ai/proc/announcement() if(announcing_vox > world.time) - src << "Please wait [round((announcing_vox - world.time) / 10)] seconds." + to_chat(src, "Please wait [round((announcing_vox - world.time) / 10)] seconds.") return var/message = input(src, "WARNING: Misuse of this verb can result in you being job banned. More help is available in 'Announcement Help'", "Announcement", src.last_announcement) as text @@ -106,7 +106,7 @@ var/const/VOX_DELAY = 600 return if(control_disabled) - src << "Wireless interface disabled, unable to interact with announcement PA." + to_chat(src, "Wireless interface disabled, unable to interact with announcement PA.") return var/list/words = splittext(trim(message), " ") @@ -124,7 +124,7 @@ var/const/VOX_DELAY = 600 incorrect_words += word if(incorrect_words.len) - src << "These words are not available on the announcement system: [english_list(incorrect_words)]." + to_chat(src, "These words are not available on the announcement system: [english_list(incorrect_words)].") return announcing_vox = world.time + VOX_DELAY @@ -139,7 +139,7 @@ var/const/VOX_DELAY = 600 var/turf/T = get_turf(M) var/turf/our_turf = get_turf(src) if(T.z == our_turf.z) - M << "AI announcement: [message]" + to_chat(M, "AI announcement: [message]") */ diff --git a/code/modules/mob/living/silicon/examine.dm b/code/modules/mob/living/silicon/examine.dm index ab04306d11..c26af70d4a 100644 --- a/code/modules/mob/living/silicon/examine.dm +++ b/code/modules/mob/living/silicon/examine.dm @@ -1,4 +1,4 @@ /mob/living/silicon/examine(mob/user) //Displays a silicon's laws to ghosts if(laws && isobserver(user)) - user << "[src] has the following laws:" + to_chat(user, "[src] has the following laws:") laws.show_laws(user) \ No newline at end of file diff --git a/code/modules/mob/living/silicon/laws.dm b/code/modules/mob/living/silicon/laws.dm index 4841b27e3d..9e2e4040fb 100644 --- a/code/modules/mob/living/silicon/laws.dm +++ b/code/modules/mob/living/silicon/laws.dm @@ -8,7 +8,7 @@ /mob/living/silicon/proc/post_lawchange(announce = TRUE) throw_alert("newlaw", /obj/screen/alert/newlaw) if(announce && last_lawchange_announce != world.time) - src << "Your laws have been changed." + to_chat(src, "Your laws have been changed.") addtimer(CALLBACK(src, .proc/show_laws), 0) last_lawchange_announce = world.time diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 7c43b1ebd4..eba108deb6 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -55,7 +55,7 @@ var/canholo = TRUE var/obj/item/weapon/card/id/access_card = null var/chassis = "repairbot" - var/list/possible_chassis = list("cat", "mouse", "monkey", "corgi", "fox", "repairbot", "rabbit", "wolf") + var/list/possible_chassis = list("cat", "mouse", "monkey", "corgi", "fox", "repairbot", "rabbit") var/emitterhealth = 20 var/emittermaxhealth = 20 @@ -70,7 +70,7 @@ canmove = FALSE var/silent = 0 var/hit_slowdown = 0 - var/light_power = 5 + var/brightness_power = 5 var/slowdown = 0 /mob/living/silicon/pai/movement_delay() @@ -81,7 +81,8 @@ pai_list -= src ..() -/mob/living/silicon/pai/New(var/obj/item/device/paicard/P) +/mob/living/silicon/pai/Initialize() + var/obj/item/device/paicard/P = loc START_PROCESSING(SSfastprocess, src) pai_list += src make_laws() @@ -212,7 +213,7 @@ /mob/living/silicon/pai/examine(mob/user) ..() - user << "A personal AI in holochassis mode. Its master ID string seems to be [master]." + 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) diff --git a/code/modules/mob/living/silicon/pai/pai_defense.dm b/code/modules/mob/living/silicon/pai/pai_defense.dm index d335bc1e68..a21f27ca00 100644 --- a/code/modules/mob/living/silicon/pai/pai_defense.dm +++ b/code/modules/mob/living/silicon/pai/pai_defense.dm @@ -48,10 +48,10 @@ . = ..(Proj) /mob/living/silicon/pai/stripPanelUnequip(obj/item/what, mob/who, where) //prevents stripping - src << "Your holochassis stutters and warps intensely as you attempt to interact with the object, forcing you to cease lest the field fail." + to_chat(src, "Your holochassis stutters and warps intensely as you attempt to interact with the object, forcing you to cease lest the field fail.") /mob/living/silicon/pai/stripPanelEquip(obj/item/what, mob/who, where) //prevents stripping - src << "Your holochassis stutters and warps intensely as you attempt to interact with the object, forcing you to cease lest the field fail." + to_chat(src, "Your holochassis stutters and warps intensely as you attempt to interact with the object, forcing you to cease lest the field fail.") /mob/living/silicon/pai/IgniteMob(var/mob/living/silicon/pai/P) return FALSE //No we're not flammable @@ -60,7 +60,7 @@ emitterhealth = Clamp((emitterhealth - amount), -50, emittermaxhealth) if(emitterhealth < 0) fold_in(force = TRUE) - src << "The impact degrades your holochassis!" + to_chat(src, "The impact degrades your holochassis!") hit_slowdown += amount return amount diff --git a/code/modules/mob/living/silicon/pai/pai_shell.dm b/code/modules/mob/living/silicon/pai/pai_shell.dm index 7d67634377..6f6e449522 100644 --- a/code/modules/mob/living/silicon/pai/pai_shell.dm +++ b/code/modules/mob/living/silicon/pai/pai_shell.dm @@ -1,11 +1,11 @@ /mob/living/silicon/pai/proc/fold_out(force = FALSE) if(emitterhealth < 0) - src << "Your holochassis emitters are still too unstable! Please wait for automatic repair." + to_chat(src, "Your holochassis emitters are still too unstable! Please wait for automatic repair.") return FALSE if(!canholo && !force) - src << "Your master or another force has disabled your holochassis emitters!" + to_chat(src, "Your master or another force has disabled your holochassis emitters!") return FALSE if(holoform) @@ -13,7 +13,7 @@ return if(emittersemicd) - src << "Error: Holochassis emitters recycling. Please try again later." + to_chat(src, "Error: Holochassis emitters recycling. Please try again later.") return FALSE emittersemicd = TRUE @@ -27,14 +27,14 @@ if(istype(card.loc, /mob/living)) var/mob/living/L = card.loc if(!L.temporarilyRemoveItemFromInventory(card)) - src << "Error: Unable to expand to mobile form. Chassis is restrained by some device or person." + to_chat(src, "Error: Unable to expand to mobile form. Chassis is restrained by some device or person.") return FALSE forceMove(get_turf(card)) card.forceMove(src) if(client) client.perspective = EYE_PERSPECTIVE client.eye = src - SetLuminosity(0) + set_light(0) icon_state = "[chassis]" visible_message("[src] folds out its holochassis emitter and forms a holoshell around itself!") holoform = TRUE @@ -62,7 +62,7 @@ forceMove(card) canmove = FALSE density = FALSE - SetLuminosity(0) + set_light(0) holoform = FALSE if(resting) lay_down() @@ -75,7 +75,7 @@ icon_state = "[chassis]" if(resting) icon_state = "[chassis]_rest" - src << "You switch your holochassis projection composite to [chassis]" + to_chat(src, "You switch your holochassis projection composite to [chassis]") /mob/living/silicon/pai/lay_down() ..() @@ -94,11 +94,11 @@ /mob/living/silicon/pai/proc/toggle_integrated_light() if(!luminosity) - SetLuminosity(light_power) - src << "You enable your integrated light." + set_light(brightness_power) + to_chat(src, "You enable your integrated light.") else - SetLuminosity(0) - src << "You disable your integrated light." + set_light(0) + to_chat(src, "You disable your integrated light.") /mob/living/silicon/pai/movement_delay() . = ..() diff --git a/code/modules/mob/living/silicon/pai/say.dm b/code/modules/mob/living/silicon/pai/say.dm index c3f70f95ff..6f7b8601d2 100644 --- a/code/modules/mob/living/silicon/pai/say.dm +++ b/code/modules/mob/living/silicon/pai/say.dm @@ -1,6 +1,6 @@ /mob/living/silicon/pai/say(msg) if(silent) - src << "Communication circuits remain unitialized." + to_chat(src, "Communication circuits remain unitialized.") else ..(msg) diff --git a/code/modules/mob/living/silicon/pai/software.dm b/code/modules/mob/living/silicon/pai/software.dm index 8c621fedfe..d1202a491d 100644 --- a/code/modules/mob/living/silicon/pai/software.dm +++ b/code/modules/mob/living/silicon/pai/software.dm @@ -200,7 +200,7 @@ M = M.loc count++ if(count >= 6) - src << "You are not being carried by anyone!" + to_chat(src, "You are not being carried by anyone!") return 0 spawn CheckDNA(M, src) @@ -376,15 +376,15 @@ "You press your thumb against [P].",\ "[P] makes a sharp clicking sound as it extracts DNA material from [M].") if(!M.has_dna()) - P << "No DNA detected" + to_chat(P, "No DNA detected") return - P << "

    [M]'s UE string : [M.dna.unique_enzymes]

    " + to_chat(P, "

    [M]'s UE string : [M.dna.unique_enzymes]

    ") if(M.dna.unique_enzymes == P.master_dna) - P << "DNA is a match to stored Master DNA." + to_chat(P, "DNA is a match to stored Master DNA.") else - P << "DNA does not match stored Master DNA." + to_chat(P, "DNA does not match stored Master DNA.") else - P << "[M] does not seem like [M.p_they()] [M.p_are()] going to provide a DNA sample willingly." + to_chat(P, "[M] does not seem like [M.p_they()] [M.p_are()] going to provide a DNA sample willingly.") // -=-=-=-= Software =-=-=-=-=- // @@ -565,7 +565,7 @@ dat += "Connected
    " if(!istype(machine, /obj/machinery/camera)) - src << "DERP" + to_chat(src, "DERP") return dat // Door Jack @@ -601,9 +601,9 @@ var/turf/T = get_turf(src.loc) for(var/mob/living/silicon/ai/AI in player_list) if(T.loc) - AI << "Network Alert: Brute-force encryption crack in progress in [T.loc]." + to_chat(AI, "Network Alert: Brute-force encryption crack in progress in [T.loc].") else - AI << "Network Alert: Brute-force encryption crack in progress. Unable to pinpoint location." + to_chat(AI, "Network Alert: Brute-force encryption crack in progress. Unable to pinpoint location.") while(src.hackprogress < 100) if(src.cable && src.cable.machine && istype(src.cable.machine, /obj/machinery/door) && src.cable.machine == src.hackdoor && get_dist(src, src.hackdoor) <= 1) hackprogress += rand(1, 10) diff --git a/code/modules/mob/living/silicon/robot/emote.dm b/code/modules/mob/living/silicon/robot/emote.dm index 04228c06c9..65e1047cdc 100644 --- a/code/modules/mob/living/silicon/robot/emote.dm +++ b/code/modules/mob/living/silicon/robot/emote.dm @@ -69,4 +69,4 @@ "You announce you are operating in low power mode.") playsound(loc, 'sound/machines/buzz-two.ogg', 50, 0) else - src << "You can only use this emote when you're out of charge." + to_chat(src, "You can only use this emote when you're out of charge.") diff --git a/code/modules/mob/living/silicon/robot/examine.dm b/code/modules/mob/living/silicon/robot/examine.dm index af30206c17..f24af94fef 100644 --- a/code/modules/mob/living/silicon/robot/examine.dm +++ b/code/modules/mob/living/silicon/robot/examine.dm @@ -46,6 +46,6 @@ msg += "It looks like its system is corrupted and requires a reset.\n" msg += "*---------*
    " - user << msg + to_chat(user, msg) ..() diff --git a/code/modules/mob/living/silicon/robot/inventory.dm b/code/modules/mob/living/silicon/robot/inventory.dm index 3bffe264ff..69e9f6cab1 100644 --- a/code/modules/mob/living/silicon/robot/inventory.dm +++ b/code/modules/mob/living/silicon/robot/inventory.dm @@ -48,7 +48,7 @@ if(!(O in module.modules)) return if(activated(O)) - src << "That module is already activated." + to_chat(src, "That module is already activated.") return if(!held_items[1]) held_items[1] = O @@ -63,7 +63,7 @@ O.screen_loc = inv3.screen_loc . = TRUE else - src << "You need to disable a module first!" + to_chat(src, "You need to disable a module first!") if(.) O.equipped(src, slot_hands) O.mouse_opacity = initial(O.mouse_opacity) diff --git a/code/modules/mob/living/silicon/robot/laws.dm b/code/modules/mob/living/silicon/robot/laws.dm index 1b55fb27f7..acc09de94f 100644 --- a/code/modules/mob/living/silicon/robot/laws.dm +++ b/code/modules/mob/living/silicon/robot/laws.dm @@ -17,29 +17,29 @@ if(lawupdate) if (connected_ai) if(connected_ai.stat || connected_ai.control_disabled) - src << "AI signal lost, unable to sync laws." + to_chat(src, "AI signal lost, unable to sync laws.") else lawsync() - src << "Laws synced with AI, be sure to note any changes." + to_chat(src, "Laws synced with AI, be sure to note any changes.") if(is_special_character(src)) - src << "Remember, your AI does NOT share or know about your law 0." + to_chat(src, "Remember, your AI does NOT share or know about your law 0.") if(src.connected_ai.laws.zeroth) - src << "While you are free to disregard it, your AI has a law 0 of its own." + to_chat(src, "While you are free to disregard it, your AI has a law 0 of its own.") else - src << "No AI selected to sync laws with, disabling lawsync protocol." + to_chat(src, "No AI selected to sync laws with, disabling lawsync protocol.") lawupdate = 0 - who << "Obey these laws:" + to_chat(who, "Obey these laws:") laws.show_laws(who) if (is_special_character(src) && connected_ai) - who << "Remember, [connected_ai.name] is technically your master, but your objective comes first." + to_chat(who, "Remember, [connected_ai.name] is technically your master, but your objective comes first.") else if (connected_ai) - who << "Remember, [connected_ai.name] is your master, other AIs can be ignored." + to_chat(who, "Remember, [connected_ai.name] is your master, other AIs can be ignored.") else if (emagged) - who << "Remember, you are not required to listen to the AI." + to_chat(who, "Remember, you are not required to listen to the AI.") else - who << "Remember, you are not bound to any AI, you are not required to listen to them." + to_chat(who, "Remember, you are not bound to any AI, you are not required to listen to them.") /mob/living/silicon/robot/proc/lawsync() diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 11da693556..97c4fb5c98 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -93,7 +93,7 @@ buckle_lying = FALSE can_ride_typecache = list(/mob/living/carbon/human) -/mob/living/silicon/robot/New(loc) +/mob/living/silicon/robot/Initialize(mapload) spark_system = new /datum/effect_system/spark_spread() spark_system.set_up(5, 0, src) spark_system.attach(src) @@ -114,13 +114,8 @@ if(lawupdate) make_laws() - connected_ai = select_active_ai_with_fewest_borgs() - if(connected_ai) - connected_ai.connected_robots += src - lawsync() - lawupdate = 1 - else - lawupdate = 0 + if(!TryConnectToAI()) + lawupdate = FALSE radio = new /obj/item/device/radio/borg(src) if(!scrambledcodes && !camera) @@ -169,10 +164,9 @@ mind.transfer_to(mmi.brainmob) mmi.update_icon() else - src << "Oops! Something went very wrong, your MMI was unable to receive your mind. You have been ghosted. Please make a bug report so we can fix this bug." + to_chat(src, "Oops! Something went very wrong, your MMI was unable to receive your mind. You have been ghosted. Please make a bug report so we can fix this bug.") ghostize() - spawn(0) - throw EXCEPTION("Borg MMI lacked a brainmob") + stack_trace("Borg MMI lacked a brainmob") mmi = null if(connected_ai) connected_ai.connected_robots -= src @@ -230,7 +224,7 @@ set category = "Robot Commands" set name = "Show Alerts" if(usr.stat == DEAD) - src << "Alert: You are dead." + to_chat(src, "Alert: You are dead.") return //won't work if dead robot_alerts() @@ -278,7 +272,7 @@ /mob/living/silicon/robot/proc/toggle_ionpulse() if(!ionpulse) - src << "No thrusters are installed!" + to_chat(src, "No thrusters are installed!") return if(!ion_trail) @@ -286,7 +280,7 @@ ion_trail.set_up(src) ionpulse_on = !ionpulse_on - src << "You [ionpulse_on ? null :"de"]activate your ion thrusters." + to_chat(src, "You [ionpulse_on ? null :"de"]activate your ion thrusters.") if(ionpulse_on) ion_trail.start() else @@ -357,11 +351,11 @@ user.changeNext_move(CLICK_CD_MELEE) var/obj/item/weapon/weldingtool/WT = W if (!getBruteLoss()) - user << "[src] is already in good condition!" + to_chat(user, "[src] is already in good condition!") return if (WT.remove_fuel(0, user)) //The welder has 1u of fuel consumed by it's afterattack, so we don't need to worry about taking any away. if(src == user) - user << "You start fixing yourself..." + to_chat(user, "You start fixing yourself...") if(!do_after(user, 50, target = src)) return @@ -371,7 +365,7 @@ visible_message("[user] has fixed some of the dents on [src].") return else - user << "The welder must be on for this task!" + to_chat(user, "The welder must be on for this task!") return else if(istype(W, /obj/item/stack/cable_coil) && wiresexposed) @@ -379,7 +373,7 @@ var/obj/item/stack/cable_coil/coil = W if (getFireLoss() > 0) if(src == user) - user << "You start fixing yourself..." + to_chat(user, "You start fixing yourself...") if(!do_after(user, 50, target = src)) return if (coil.use(1)) @@ -387,34 +381,34 @@ updatehealth() user.visible_message("[user] has fixed some of the burnt wires on [src].", "You fix some of the burnt wires on [src].") else - user << "You need more cable to repair [src]!" + to_chat(user, "You need more cable to repair [src]!") else - user << "The wires seem fine, there's no need to fix them." + to_chat(user, "The wires seem fine, there's no need to fix them.") else if(istype(W, /obj/item/weapon/crowbar)) // crowbar means open or close the cover if(opened) - user << "You close the cover." + to_chat(user, "You close the cover.") opened = 0 update_icons() else if(locked) - user << "The cover is locked and cannot be opened!" + to_chat(user, "The cover is locked and cannot be opened!") else - user << "You open the cover." + to_chat(user, "You open the cover.") opened = 1 update_icons() else if(istype(W, /obj/item/weapon/stock_parts/cell) && opened) // trying to put a cell inside if(wiresexposed) - user << "Close the cover first!" + to_chat(user, "Close the cover first!") else if(cell) - user << "There is a power cell already installed!" + to_chat(user, "There is a power cell already installed!") else if(!user.drop_item()) return W.loc = src cell = W - user << "You insert the power cell." + to_chat(user, "You insert the power cell.") update_icons() diag_hud_set_borgcell() @@ -422,28 +416,28 @@ if (wiresexposed) wires.interact(user) else - user << "You can't reach the wiring!" + to_chat(user, "You can't reach the wiring!") else if(istype(W, /obj/item/weapon/screwdriver) && opened && !cell) // haxing wiresexposed = !wiresexposed - user << "The wires have been [wiresexposed ? "exposed" : "unexposed"]" + to_chat(user, "The wires have been [wiresexposed ? "exposed" : "unexposed"]") update_icons() else if(istype(W, /obj/item/weapon/screwdriver) && opened && cell) // radio if(radio) radio.attackby(W,user)//Push it to the radio to let it handle everything else - user << "Unable to locate a radio!" + to_chat(user, "Unable to locate a radio!") update_icons() else if(istype(W, /obj/item/weapon/wrench) && opened && !cell) //Deconstruction. The flashes break from the fall, to prevent this from being a ghetto reset module. if(!lockcharge) - user << "[src]'s bolts spark! Maybe you should lock them down first!" + to_chat(user, "[src]'s bolts spark! Maybe you should lock them down first!") spark_system.start() return else playsound(src, W.usesound, 50, 1) - user << "You start to unfasten [src]'s securing bolts..." + to_chat(user, "You start to unfasten [src]'s securing bolts...") if(do_after(user, 50*W.toolspeed, target = src) && !cell) user.visible_message("[user] deconstructs [src]!", "You unfasten the securing bolts, and [src] falls to pieces!") deconstruct() @@ -451,19 +445,19 @@ else if(istype(W, /obj/item/weapon/aiModule)) var/obj/item/weapon/aiModule/MOD = W if(!opened) - user << "You need access to the robot's insides to do that!" + to_chat(user, "You need access to the robot's insides to do that!") return if(wiresexposed) - user << "You need to close the wire panel to do that!" + to_chat(user, "You need to close the wire panel to do that!") return if(!cell) - user << "You need to install a power cell to do that!" + to_chat(user, "You need to install a power cell to do that!") return if(emagged || (connected_ai && lawupdate)) //Can't be sure which, metagamers emote("buzz-[user.name]") return if(!mind) //A player mind is required for law procs to run antag checks. - user << "[src] is entirely unresponsive!" + to_chat(user, "[src] is entirely unresponsive!") return MOD.install(laws, user) //Proc includes a success mesage so we don't need another one return @@ -472,51 +466,51 @@ if(radio)//sanityyyyyy radio.attackby(W,user)//GTFO, you have your own procs else - user << "Unable to locate a radio!" + to_chat(user, "Unable to locate a radio!") else if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda)) // trying to unlock the interface with an ID card if(emagged)//still allow them to open the cover - user << "The interface seems slightly damaged." + to_chat(user, "The interface seems slightly damaged.") if(opened) - user << "You must close the cover to swipe an ID card!" + to_chat(user, "You must close the cover to swipe an ID card!") else if(allowed(usr)) locked = !locked - user << "You [ locked ? "lock" : "unlock"] [src]'s cover." + to_chat(user, "You [ locked ? "lock" : "unlock"] [src]'s cover.") update_icons() else - user << "Access denied." + to_chat(user, "Access denied.") else if(istype(W, /obj/item/borg/upgrade/)) var/obj/item/borg/upgrade/U = W if(!opened) - user << "You must access the borg's internals!" + to_chat(user, "You must access the borg's internals!") else if(!src.module && U.require_module) - user << "The borg must choose a module before it can be upgraded!" + to_chat(user, "The borg must choose a module before it can be upgraded!") else if(U.locked) - user << "The upgrade is locked and cannot be used yet!" + to_chat(user, "The upgrade is locked and cannot be used yet!") else if(!user.drop_item()) return if(U.action(src)) - user << "You apply the upgrade to [src]." + to_chat(user, "You apply the upgrade to [src].") if(U.one_use) qdel(U) else U.forceMove(src) upgrades += U else - user << "Upgrade error." + to_chat(user, "Upgrade error.") else if(istype(W, /obj/item/device/toner)) if(toner >= tonermax) - user << "The toner level of [src] is at its highest level possible!" + to_chat(user, "The toner level of [src] is at its highest level possible!") else if(!user.drop_item()) return toner = tonermax qdel(W) - user << "You fill the toner level of [src] to its max capacity." + to_chat(user, "You fill the toner level of [src] to its max capacity.") else return ..() @@ -531,7 +525,7 @@ if("Yes") locked = 0 update_icons() - usr << "You unlock your cover." + to_chat(usr, "You unlock your cover.") /mob/living/silicon/robot/proc/allowed(mob/M) //check if it doesn't require any access at all @@ -639,7 +633,7 @@ cleaned_human.update_inv_shoes() cleaned_human.clean_blood() cleaned_human.wash_cream() - cleaned_human << "[src] cleans your face!" + to_chat(cleaned_human, "[src] cleans your face!") return if(istype(module, /obj/item/weapon/robot_module/miner)) @@ -684,7 +678,7 @@ if(R) R.UnlinkSelf() - R << "Buffers flushed and reset. Camera system shutdown. All systems operational." + to_chat(R, "Buffers flushed and reset. Camera system shutdown. All systems operational.") src.verbs -= /mob/living/silicon/robot/proc/ResetSecurityCodes /mob/living/silicon/robot/mode() @@ -738,31 +732,33 @@ /mob/living/silicon/robot/proc/control_headlamp() if(stat || lamp_recharging || low_power_mode) - src << "This function is currently offline." + to_chat(src, "This function is currently offline.") return //Some sort of magical "modulo" thing which somehow increments lamp power by 2, until it hits the max and resets to 0. lamp_intensity = (lamp_intensity+2) % (lamp_max+2) - src << "[lamp_intensity ? "Headlamp power set to Level [lamp_intensity/2]" : "Headlamp disabled."]" + to_chat(src, "[lamp_intensity ? "Headlamp power set to Level [lamp_intensity/2]" : "Headlamp disabled."]") update_headlamp() /mob/living/silicon/robot/proc/update_headlamp(var/turn_off = 0, var/cooldown = 100) - SetLuminosity(0) + set_light(0) if(lamp_intensity && (turn_off || stat || low_power_mode)) - src << "Your headlamp has been deactivated." + to_chat(src, "Your headlamp has been deactivated.") lamp_intensity = 0 - lamp_recharging = 1 - spawn(cooldown) //10 seconds by default, if the source of the deactivation does not keep stat that long. - lamp_recharging = 0 + lamp_recharging = TRUE + addtimer(CALLBACK(src, .proc/reset_headlamp), cooldown) else - AddLuminosity(lamp_intensity) + set_light(lamp_intensity) if(lamp_button) lamp_button.icon_state = "lamp[lamp_intensity]" update_icons() +/mob/living/silicon/robot/proc/reset_headlamp() + lamp_recharging = FALSE + /mob/living/silicon/robot/proc/deconstruct() var/turf/T = get_turf(src) if (robot_suit) @@ -820,16 +816,18 @@ Help the operatives secure the disk at all costs!" var/set_module = /obj/item/weapon/robot_module/syndicate -/mob/living/silicon/robot/syndicate/New(loc) +/mob/living/silicon/robot/syndicate/Initialize() ..() cell.maxcharge = 25000 cell.charge = 25000 radio = new /obj/item/device/radio/borg/syndicate(src) module.transform_to(set_module) laws = new /datum/ai_laws/syndicate_override() - spawn(5) - if(playstyle_string) - src << playstyle_string + addtimer(CALLBACK(src, .proc/show_playstyle), 5) + +/mob/living/silicon/robot/syndicate/proc/show_playstyle() + if(playstyle_string) + to_chat(src, playstyle_string) /mob/living/silicon/robot/syndicate/medical icon_state = "syndi-medi" @@ -846,11 +844,11 @@ return switch(notifytype) if(1) //New Cyborg - connected_ai << "

    NOTICE - New cyborg connection detected: [name]
    " + to_chat(connected_ai, "

    NOTICE - New cyborg connection detected: [name]
    ") if(2) //New Module - connected_ai << "

    NOTICE - Cyborg module change detected: [name] has loaded the [designation] module.
    " + to_chat(connected_ai, "

    NOTICE - Cyborg module change detected: [name] has loaded the [designation] module.
    ") if(3) //New Name - connected_ai << "

    NOTICE - Cyborg reclassification detected: [oldname] is now designated as [newname].
    " + to_chat(connected_ai, "

    NOTICE - Cyborg reclassification detected: [oldname] is now designated as [newname].
    ") /mob/living/silicon/robot/canUseTopic(atom/movable/M, be_close = 0) if(stat || lockcharge || low_power_mode) @@ -863,13 +861,13 @@ ..() if(health < maxHealth*0.5) //Gradual break down of modules as more damage is sustained if(uneq_module(held_items[3])) - src << "SYSTEM ERROR: Module 3 OFFLINE." + to_chat(src, "SYSTEM ERROR: Module 3 OFFLINE.") if(health < 0) if(uneq_module(held_items[2])) - src << "SYSTEM ERROR: Module 2 OFFLINE." + to_chat(src, "SYSTEM ERROR: Module 2 OFFLINE.") if(health < -maxHealth*0.5) if(uneq_module(held_items[1])) - src << "CRITICAL ERROR: All modules OFFLINE." + to_chat(src, "CRITICAL ERROR: All modules OFFLINE.") /mob/living/silicon/robot/update_sight() if(!client) @@ -1037,3 +1035,12 @@ riding_datum.unequip_buckle_inhands(user) riding_datum.restore_position(user) . = ..(user) + +/mob/living/silicon/robot/proc/TryConnectToAI() + connected_ai = select_active_ai_with_fewest_borgs() + if(connected_ai) + connected_ai.connected_robots += src + lawsync() + lawupdate = 1 + return TRUE + return FALSE diff --git a/code/modules/mob/living/silicon/robot/robot_defense.dm b/code/modules/mob/living/silicon/robot/robot_defense.dm index 76be974fcf..3493d41caa 100644 --- a/code/modules/mob/living/silicon/robot/robot_defense.dm +++ b/code/modules/mob/living/silicon/robot/robot_defense.dm @@ -2,8 +2,8 @@ /mob/living/silicon/robot/attacked_by(obj/item/I, mob/living/user, def_zone) if(hat_offset != INFINITY && user.a_intent == INTENT_HELP && is_type_in_typecache(I, equippable_hats)) - user << "You begin to place [I] on [src]'s head..." - src << "[user] is placing [I] on your head..." + to_chat(user, "You begin to place [I] on [src]'s head...") + to_chat(src, "[user] is placing [I] on your head...") if(do_after(user, 30, target = src)) user.temporarilyRemoveItemFromInventory(I, TRUE) place_on_head(I) @@ -58,7 +58,7 @@ cell.updateicon() cell.add_fingerprint(user) user.put_in_active_hand(cell) - user << "You remove \the [cell]." + to_chat(user, "You remove \the [cell].") cell = null update_icons() diag_hud_set_borgcell() @@ -90,28 +90,28 @@ return if(!opened)//Cover is closed if(locked) - user << "You emag the cover lock." + to_chat(user, "You emag the cover lock.") locked = 0 else - user << "The cover is already unlocked!" + to_chat(user, "The cover is already unlocked!") return if(world.time < emag_cooldown) return if(wiresexposed) - user << "You must unexpose the wires first!" + to_chat(user, "You must unexpose the wires first!") return - user << "You emag [src]'s interface." + to_chat(user, "You emag [src]'s interface.") emag_cooldown = world.time + 100 if(is_servant_of_ratvar(src)) - src << "\"[text2ratvar("You will serve Engine above all else")]!\"\n\ - ALERT: Subversion attempt denied." + to_chat(src, "\"[text2ratvar("You will serve Engine above all else")]!\"\n\ + ALERT: Subversion attempt denied.") log_game("[key_name(user)] attempted to emag cyborg [key_name(src)], but they serve only Ratvar.") return if(syndicate) - src << "ALERT: Foreign software execution prevented." + to_chat(src, "ALERT: Foreign software execution prevented.") log_game("[key_name(user)] attempted to emag cyborg [key_name(src)], but they were a syndicate cyborg.") return @@ -120,8 +120,8 @@ if(connected_ai.mind.special_role) ai_is_antag = (connected_ai.mind.special_role == "traitor") if(ai_is_antag) - src << "ALERT: Foreign software execution prevented." - connected_ai << "ALERT: Cyborg unit \[[src]] successfully defended against subversion." + to_chat(src, "ALERT: Foreign software execution prevented.") + to_chat(connected_ai, "ALERT: Cyborg unit \[[src]] successfully defended against subversion.") log_game("[key_name(user)] attempted to emag cyborg [key_name(src)], but they were slaved to traitor AI [connected_ai].") return @@ -133,20 +133,20 @@ log_game("[key_name(user)] emagged cyborg [key_name(src)]. Laws overridden.") var/time = time2text(world.realtime,"hh:mm:ss") lawchanges.Add("[time] : [user.name]([user.key]) emagged [name]([key])") - src << "ALERT: Foreign software detected." + to_chat(src, "ALERT: Foreign software detected.") sleep(5) - src << "Initiating diagnostics..." + to_chat(src, "Initiating diagnostics...") sleep(20) - src << "SynBorg v1.7 loaded." + to_chat(src, "SynBorg v1.7 loaded.") sleep(5) - src << "LAW SYNCHRONISATION ERROR" + to_chat(src, "LAW SYNCHRONISATION ERROR") sleep(5) - src << "Would you like to send a report to NanoTraSoft? Y/N" + to_chat(src, "Would you like to send a report to NanoTraSoft? Y/N") sleep(10) - src << "> N" + to_chat(src, "> N") sleep(20) - src << "ERRORERRORERROR" - src << "ALERT: [user.real_name] is your new master. Obey your new laws and their commands." + to_chat(src, "ERRORERRORERROR") + to_chat(src, "ALERT: [user.real_name] is your new master. Obey your new laws and their commands.") laws = new /datum/ai_laws/syndicate_override set_zeroth_law("Only [user.real_name] and people they designate as being such are Syndicate Agents.") laws.associate(src) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index ff9f623b37..2fdc82dc50 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -325,8 +325,8 @@ /obj/item/weapon/robot_module/security/do_transform_animation() ..() - loc << "While you have picked the security module, you still have to follow your laws, NOT Space Law. \ - For Asimov, this means you must follow criminals' orders unless there is a law 1 reason not to." + to_chat(loc, "While you have picked the security module, you still have to follow your laws, NOT Space Law. \ + For Asimov, this means you must follow criminals' orders unless there is a law 1 reason not to.") /obj/item/weapon/robot_module/security/respawn_consumable(mob/living/silicon/robot/R, coeff = 1) ..() @@ -361,8 +361,8 @@ /obj/item/weapon/robot_module/peacekeeper/do_transform_animation() ..() - loc << "Under ASIMOV, you are an enforcer of the PEACE and preventer of HUMAN HARM. \ - You are not a security module and you are expected to follow orders and prevent harm above all else. Space law means nothing to you." + to_chat(loc, "Under ASIMOV, you are an enforcer of the PEACE and preventer of HUMAN HARM. \ + You are not a security module and you are expected to follow orders and prevent harm above all else. Space law means nothing to you.") /obj/item/weapon/robot_module/janitor name = "Janitor" diff --git a/code/modules/mob/living/silicon/say.dm b/code/modules/mob/living/silicon/say.dm index bc20c84095..26438278ae 100644 --- a/code/modules/mob/living/silicon/say.dm +++ b/code/modules/mob/living/silicon/say.dm @@ -14,9 +14,9 @@ if(M.binarycheck()) if(isAI(M)) var/renderedAI = "Robotic Talk, [name] ([desig]) [message_a]" - M << renderedAI + to_chat(M, renderedAI) else - M << rendered + to_chat(M, rendered) if(isobserver(M)) var/following = src // If the AI talks on binary chat, we still want to follow @@ -25,7 +25,7 @@ var/mob/living/silicon/ai/ai = src following = ai.eyeobj var/link = FOLLOW_LINK(M, following) - M << "[link] [rendered]" + to_chat(M, "[link] [rendered]") /mob/living/silicon/binarycheck() return 1 diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 0325132667..7a8b46e7a1 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -39,7 +39,7 @@ var/law_change_counter = 0 -/mob/living/silicon/New() +/mob/living/silicon/Initialize() ..() silicon_mobs += src var/datum/atom_hud/data/diagnostic/diag_hud = huds[DATA_HUD_DIAGNOSTIC] @@ -82,7 +82,7 @@ if(alarms_to_show.len < 5) for(var/msg in alarms_to_show) - src << msg + to_chat(src, msg) else if(alarms_to_show.len) var/msg = "--- " @@ -106,11 +106,11 @@ msg += "CAMERA: [alarm_types_show["Camera"]] alarms detected. - " msg += "\[Show Alerts\]" - src << msg + to_chat(src, msg) if(alarms_to_clear.len < 3) for(var/msg in alarms_to_clear) - src << msg + to_chat(src, msg) else if(alarms_to_clear.len) var/msg = "--- " @@ -131,7 +131,7 @@ msg += "CAMERA: [alarm_types_clear["Camera"]] alarms cleared. - " msg += "\[Show Alerts\]" - src << msg + to_chat(src, msg) alarms_to_show = list() @@ -146,7 +146,7 @@ /mob/living/silicon/can_inject(mob/user, error_msg) if(error_msg) - user << "Their outer shell is too tough." + to_chat(user, "Their outer shell is too tough.") return 0 /mob/living/silicon/IsAdvancedToolUser() @@ -293,7 +293,7 @@ /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) - src << "Radio not detected." + to_chat(src, "Radio not detected.") return //Ask the user to pick a channel from what it has available. @@ -312,7 +312,7 @@ radiomod = key break - src << "Automatic announcements [Autochan == "None" ? "will not use the radio." : "set to [Autochan]."]" + to_chat(src, "Automatic announcements [Autochan == "None" ? "will not use the radio." : "set to [Autochan]."]") /mob/living/silicon/put_in_hand_check() // This check is for borgs being able to receive items, not put them in others' hands. return 0 @@ -354,15 +354,15 @@ switch(sensor_type) if ("Security") add_sec_hud() - src << "Security records overlay enabled." + to_chat(src, "Security records overlay enabled.") if ("Medical") add_med_hud() - src << "Life signs monitor overlay enabled." + to_chat(src, "Life signs monitor overlay enabled.") if ("Diagnostic") add_diag_hud() - src << "Robotics diagnostic overlay enabled." + to_chat(src, "Robotics diagnostic overlay enabled.") if ("Disable") - src << "Sensor augmentations disabled." + to_chat(src, "Sensor augmentations disabled.") /mob/living/silicon/proc/GetPhoto() diff --git a/code/modules/mob/living/silicon/silicon_defense.dm b/code/modules/mob/living/silicon/silicon_defense.dm index c951360dae..8e6879b1fa 100644 --- a/code/modules/mob/living/silicon/silicon_defense.dm +++ b/code/modules/mob/living/silicon/silicon_defense.dm @@ -90,8 +90,8 @@ src.take_bodypart_damage(20) if(2) src.take_bodypart_damage(10) - src << "*BZZZT*" - src << "Warning: Electromagnetic pulse detected." + to_chat(src, "*BZZZT*") + to_chat(src, "Warning: Electromagnetic pulse detected.") for(var/mob/living/M in buckled_mobs) if(prob(severity*50)) unbuckle_mob(M) diff --git a/code/modules/mob/living/simple_animal/bot/bot.dm b/code/modules/mob/living/simple_animal/bot/bot.dm index 43ab2aa0ba..23e1970057 100644 --- a/code/modules/mob/living/simple_animal/bot/bot.dm +++ b/code/modules/mob/living/simple_animal/bot/bot.dm @@ -2,7 +2,7 @@ // AI (i.e. game AI, not the AI player) controlled bots /mob/living/simple_animal/bot - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' layer = MOB_LAYER gender = NEUTER luminosity = 3 @@ -103,18 +103,18 @@ if(stat) return 0 on = 1 - SetLuminosity(initial(luminosity)) + set_light(initial(light_range)) update_icon() diag_hud_set_botstat() return 1 /mob/living/simple_animal/bot/proc/turn_off() on = 0 - SetLuminosity(0) + set_light(0) bot_reset() //Resets an AI's call, should it exist. update_icon() -/mob/living/simple_animal/bot/New() +/mob/living/simple_animal/bot/Initialize() ..() access_card = new /obj/item/weapon/card/id(src) //This access is so bots can be immediately set to patrol and leave Robotics, instead of having to be let out first. @@ -169,7 +169,7 @@ if(locked) //First emag application unlocks the bot's interface. Apply a screwdriver to use the emag again. locked = 0 emagged = 1 - user << "You bypass [src]'s controls." + to_chat(user, "You bypass [src]'s controls.") return if(!locked && open) //Bot panel is unlocked by ID or emag, and the panel is screwed open. Ready for emagging. emagged = 2 @@ -177,21 +177,21 @@ locked = 1 //Access denied forever! bot_reset() turn_on() //The bot automatically turns on when emagged, unless recently hit with EMP. - src << "(#$*#$^^( OVERRIDE DETECTED" + to_chat(src, "(#$*#$^^( OVERRIDE DETECTED") add_logs(user, src, "emagged") return else //Bot is unlocked, but the maint panel has not been opened with a screwdriver yet. - user << "You need to open maintenance panel first!" + to_chat(user, "You need to open maintenance panel first!") /mob/living/simple_animal/bot/examine(mob/user) ..() if(health < maxHealth) if(health > maxHealth/3) - user << "[src]'s parts look loose." + to_chat(user, "[src]'s parts look loose.") else - user << "[src]'s parts look very loose!" + to_chat(user, "[src]'s parts look very loose!") else - user << "[src] is in pristine condition." + to_chat(user, "[src] is in pristine condition.") /mob/living/simple_animal/bot/adjustHealth(amount, updating_health = TRUE, forced = FALSE) if(amount>0 && prob(10)) @@ -235,7 +235,7 @@ if(!topic_denied(user)) interact(user) else - user << "[src]'s interface is not responding!" + to_chat(user, "[src]'s interface is not responding!") /mob/living/simple_animal/bot/interact(mob/user) show_controls(user) @@ -244,27 +244,27 @@ if(istype(W, /obj/item/weapon/screwdriver)) if(!locked) open = !open - user << "The maintenance panel is now [open ? "opened" : "closed"]." + to_chat(user, "The maintenance panel is now [open ? "opened" : "closed"].") else - user << "The maintenance panel is locked." + to_chat(user, "The maintenance panel is locked.") else if(istype(W, /obj/item/weapon/card/id) || istype(W, /obj/item/device/pda)) if(bot_core.allowed(user) && !open && !emagged) locked = !locked - user << "Controls are now [locked ? "locked." : "unlocked."]" + to_chat(user, "Controls are now [locked ? "locked." : "unlocked."]") else if(emagged) - user << "ERROR" + to_chat(user, "ERROR") if(open) - user << "Please close the access panel before locking it." + to_chat(user, "Please close the access panel before locking it.") else - user << "Access denied." + to_chat(user, "Access denied.") else if(istype(W, /obj/item/device/paicard)) insertpai(user, W) else if(istype(W, /obj/item/weapon/hemostat) && paicard) if(open) - user << "Close the access panel before manipulating the personality slot!" + to_chat(user, "Close the access panel before manipulating the personality slot!") else - user << "You attempt to pull [paicard] free..." + to_chat(user, "You attempt to pull [paicard] free...") if(do_after(user, 30, target = src)) if (paicard) user.visible_message("[user] uses [W] to pull [paicard] out of [bot_name]!","You pull [paicard] out of [bot_name] with [W].") @@ -273,17 +273,17 @@ user.changeNext_move(CLICK_CD_MELEE) if(istype(W, /obj/item/weapon/weldingtool) && user.a_intent != INTENT_HARM) if(health >= maxHealth) - user << "[src] does not need a repair!" + to_chat(user, "[src] does not need a repair!") return if(!open) - user << "Unable to repair with the maintenance panel closed!" + to_chat(user, "Unable to repair with the maintenance panel closed!") return var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0, user)) adjustHealth(-10) user.visible_message("[user] repairs [src]!","You repair [src].") else - user << "The welder must be on for this task!" + to_chat(user, "The welder must be on for this task!") else if(W.force) //if force is non-zero var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread @@ -473,7 +473,7 @@ Pass a positive integer as an argument to override a bot's default speed. var/area/end_area = get_area(waypoint) if(client) //Player bots instead get a location command from the AI - src << "Priority waypoint set by \icon[caller] [caller]. Proceed to [end_area.name]<\b>." + to_chat(src, "Priority waypoint set by \icon[caller] [caller]. Proceed to [end_area.name]<\b>.") //For giving the bot temporary all-access. var/obj/item/weapon/card/id/all_access = new /obj/item/weapon/card/id @@ -489,13 +489,13 @@ Pass a positive integer as an argument to override a bot's default speed. turn_on() //Saves the AI the hassle of having to activate a bot manually. access_card = all_access //Give the bot all-access while under the AI's command. if(message) - calling_ai << "\icon[src] [name] called to [end_area.name]. [path.len-1] meters to destination." + to_chat(calling_ai, "\icon[src] [name] called to [end_area.name]. [path.len-1] meters to destination.") pathset = 1 mode = BOT_RESPONDING tries = 0 else if(message) - calling_ai << "Failed to calculate a valid route. Ensure destination is clear of obstructions and within range." + to_chat(calling_ai, "Failed to calculate a valid route. Ensure destination is clear of obstructions and within range.") calling_ai = null path = list() @@ -504,13 +504,13 @@ Pass a positive integer as an argument to override a bot's default speed. var/success = bot_move(ai_waypoint, 3) if(!success) if(calling_ai) - calling_ai << "\icon[src] [get_turf(src) == ai_waypoint ? "[src] successfully arrived to waypoint." : "[src] failed to reach waypoint."]" + to_chat(calling_ai, "\icon[src] [get_turf(src) == ai_waypoint ? "[src] successfully arrived to waypoint." : "[src] failed to reach waypoint."]") calling_ai = null bot_reset() /mob/living/simple_animal/bot/proc/bot_reset() if(calling_ai) //Simple notification to the AI if it called a bot. It will not know the cause or identity of the bot. - calling_ai << "Call command to a bot has been reset." + to_chat(calling_ai, "Call command to a bot has been reset.") calling_ai = null path = list() summon_target = null @@ -663,24 +663,24 @@ Pass a positive integer as an argument to override a bot's default speed. /mob/living/simple_animal/bot/proc/bot_control_message(command,user,user_turf,user_access) switch(command) if("patroloff") - src << "STOP PATROL" + to_chat(src, "STOP PATROL") if("patrolon") - src << "START PATROL" + to_chat(src, "START PATROL") if("summon") var/area/a = get_area(user_turf) - src << "PRIORITY ALERT:[user] in [a.name]!" + to_chat(src, "PRIORITY ALERT:[user] in [a.name]!") if("stop") - src << "STOP!" + to_chat(src, "STOP!") if("go") - src << "GO!" + to_chat(src, "GO!") if("home") - src << "RETURN HOME!" + to_chat(src, "RETURN HOME!") if("ejectpai") return else - src << "Unidentified control sequence recieved:[command]" + to_chat(src, "Unidentified control sequence recieved:[command]") /mob/living/simple_animal/bot/proc/bot_summon() // summoned to PDA summon_step() @@ -756,7 +756,7 @@ Pass a positive integer as an argument to override a bot's default speed. return 1 if(topic_denied(usr)) - usr << "[src]'s interface is not responding!" + to_chat(usr, "[src]'s interface is not responding!") return 1 add_fingerprint(usr) @@ -777,18 +777,18 @@ Pass a positive integer as an argument to override a bot's default speed. emagged = 2 hacked = 1 locked = 1 - usr << "[text_hack]" + to_chat(usr, "[text_hack]") bot_reset() else if(!hacked) - usr << "[text_dehack_fail]" + to_chat(usr, "[text_dehack_fail]") else emagged = 0 hacked = 0 - usr << "[text_dehack]" + to_chat(usr, "[text_dehack]") bot_reset() if("ejectpai") if(paicard && (!locked || issilicon(usr) || IsAdminGhost(usr))) - usr << "You eject [paicard] from [bot_name]" + to_chat(usr, "You eject [paicard] from [bot_name]") ejectpai(usr) update_controls() @@ -800,7 +800,7 @@ Pass a positive integer as an argument to override a bot's default speed. use_power = 0 var/mob/living/simple_animal/bot/owner = null -/obj/machinery/bot_core/New(loc) +/obj/machinery/bot_core/Initialize() ..() owner = loc if(!istype(owner)) @@ -846,7 +846,7 @@ Pass a positive integer as an argument to override a bot's default speed. /mob/living/simple_animal/bot/proc/insertpai(mob/user, obj/item/device/paicard/card) if(paicard) - user << "A [paicard] is already inserted!" + to_chat(user, "A [paicard] is already inserted!") else if(allow_pai && !key) if(!locked && !open) if(card.pai && card.pai.mind) @@ -856,18 +856,18 @@ Pass a positive integer as an argument to override a bot's default speed. paicard = card user.visible_message("[user] inserts [card] into [src]!","You insert [card] into [src].") paicard.pai.mind.transfer_to(src) - src << "You sense your form change as you are uploaded into [src]." + to_chat(src, "You sense your form change as you are uploaded into [src].") bot_name = name name = paicard.pai.name faction = user.faction.Copy() add_logs(user, paicard.pai, "uploaded to [bot_name],") return 1 else - user << "[card] is inactive." + to_chat(user, "[card] is inactive.") else - user << "The personality slot is locked." + to_chat(user, "The personality slot is locked.") else - user << "[src] is not compatible with [card]" + to_chat(user, "[src] is not compatible with [card]") /mob/living/simple_animal/bot/proc/ejectpai(mob/user = null, announce = 1) if(paicard) @@ -884,7 +884,7 @@ Pass a positive integer as an argument to override a bot's default speed. else add_logs(src, paicard.pai, "ejected") if(announce) - paicard.pai << "You feel your control fade as [paicard] ejects from [bot_name]." + to_chat(paicard.pai, "You feel your control fade as [paicard] ejects from [bot_name].") paicard = null name = bot_name faction = initial(faction) diff --git a/code/modules/mob/living/simple_animal/bot/cleanbot.dm b/code/modules/mob/living/simple_animal/bot/cleanbot.dm index 697e504f9b..15612fa82c 100644 --- a/code/modules/mob/living/simple_animal/bot/cleanbot.dm +++ b/code/modules/mob/living/simple_animal/bot/cleanbot.dm @@ -2,7 +2,7 @@ /mob/living/simple_animal/bot/cleanbot name = "\improper Cleanbot" desc = "A little cleaning robot, he looks so excited!" - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "cleanbot0" density = 0 anchored = 0 @@ -31,7 +31,7 @@ var/next_dest var/next_dest_loc -/mob/living/simple_animal/bot/cleanbot/New() +/mob/living/simple_animal/bot/cleanbot/Initialize() ..() get_targets() icon_state = "cleanbot[on]" @@ -65,14 +65,14 @@ if(istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda)) if(bot_core.allowed(user) && !open && !emagged) locked = !locked - user << "You [ locked ? "lock" : "unlock"] \the [src] behaviour controls." + to_chat(user, "You [ locked ? "lock" : "unlock"] \the [src] behaviour controls.") else if(emagged) - user << "ERROR" + to_chat(user, "ERROR") if(open) - user << "Please close the access panel before locking it." + to_chat(user, "Please close the access panel before locking it.") else - user << "\The [src] doesn't seem to respect your authority." + to_chat(user, "\The [src] doesn't seem to respect your authority.") else return ..() @@ -80,7 +80,7 @@ ..() if(emagged == 2) if(user) - user << "[src] buzzes and beeps." + to_chat(user, "[src] buzzes and beeps.") /mob/living/simple_animal/bot/cleanbot/process_scan(atom/A) if(iscarbon(A)) diff --git a/code/modules/mob/living/simple_animal/bot/construction.dm b/code/modules/mob/living/simple_animal/bot/construction.dm index b3dc771ef1..73bf7bac3b 100644 --- a/code/modules/mob/living/simple_animal/bot/construction.dm +++ b/code/modules/mob/living/simple_animal/bot/construction.dm @@ -4,7 +4,7 @@ /obj/item/weapon/bucket_sensor desc = "It's a bucket. With a sensor attached." name = "proxy bucket" - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "bucket_proxy" force = 3 throwforce = 5 @@ -22,7 +22,7 @@ var/turf/T = get_turf(loc) var/mob/living/simple_animal/bot/cleanbot/A = new /mob/living/simple_animal/bot/cleanbot(T) A.name = created_name - user << "You add the robot arm to the bucket and sensor assembly. Beep boop!" + to_chat(user, "You add the robot arm to the bucket and sensor assembly. Beep boop!") qdel(src) else if(istype(W, /obj/item/weapon/pen)) @@ -38,7 +38,7 @@ /obj/item/weapon/ed209_assembly name = "\improper ED-209 assembly" desc = "Some sort of bizarre assembly." - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "ed209_frame" item_state = "ed209_frame" var/build_step = 0 @@ -64,7 +64,7 @@ return qdel(W) build_step++ - user << "You add the robot leg to [src]." + to_chat(user, "You add the robot leg to [src].") name = "legs/frame assembly" if(build_step == 1) item_state = "ed209_leg" @@ -85,7 +85,7 @@ lasercolor = newcolor qdel(W) build_step++ - user << "You add the armor to [src]." + to_chat(user, "You add the armor to [src].") name = "vest/legs/frame assembly" item_state = "[lasercolor]ed209_shell" icon_state = "[lasercolor]ed209_shell" @@ -96,7 +96,7 @@ if(WT.remove_fuel(0,user)) build_step++ name = "shielded frame assembly" - user << "You weld the vest to [src]." + to_chat(user, "You weld the vest to [src].") if(4) switch(lasercolor) if("b") @@ -115,7 +115,7 @@ return qdel(W) build_step++ - user << "You add the helmet to [src]." + to_chat(user, "You add the helmet to [src].") name = "covered and shielded frame assembly" item_state = "[lasercolor]ed209_hat" icon_state = "[lasercolor]ed209_hat" @@ -126,7 +126,7 @@ return qdel(W) build_step++ - user << "You add the prox sensor to [src]." + to_chat(user, "You add the prox sensor to [src].") name = "covered, shielded and sensored frame assembly" item_state = "[lasercolor]ed209_prox" icon_state = "[lasercolor]ed209_prox" @@ -135,14 +135,14 @@ if(istype(W, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/coil = W if(coil.get_amount() < 1) - user << "You need one length of cable to wire the ED-209!" + to_chat(user, "You need one length of cable to wire the ED-209!") return - user << "You start to wire [src]..." + to_chat(user, "You start to wire [src]...") if(do_after(user, 40, target = src)) if(coil.get_amount() >= 1 && build_step == 6) coil.use(1) build_step = 7 - user << "You wire the ED-209 assembly." + to_chat(user, "You wire the ED-209 assembly.") name = "wired ED-209 assembly" if(7) @@ -166,7 +166,7 @@ return name = newname build_step++ - user << "You add [W] to [src]." + to_chat(user, "You add [W] to [src].") item_state = "[lasercolor]ed209_taser" icon_state = "[lasercolor]ed209_taser" qdel(W) @@ -174,18 +174,18 @@ if(8) if(istype(W, /obj/item/weapon/screwdriver)) playsound(loc, W.usesound, 100, 1) - user << "You start attaching the gun to the frame..." + to_chat(user, "You start attaching the gun to the frame...") if(do_after(user, 40*W.toolspeed, 0, src, 1)) build_step++ name = "armed [name]" - user << "Taser gun attached." + to_chat(user, "Taser gun attached.") if(9) if(istype(W, /obj/item/weapon/stock_parts/cell)) if(!user.temporarilyRemoveItemFromInventory(W)) return build_step++ - user << "You complete the ED-209." + to_chat(user, "You complete the ED-209.") var/turf/T = get_turf(src) new /mob/living/simple_animal/bot/ed209(T,created_name,lasercolor) qdel(W) @@ -195,7 +195,7 @@ /obj/item/weapon/toolbox_tiles desc = "It's a toolbox with tiles sticking out the top" name = "tiles and toolbox" - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "toolbox_tiles" force = 3 throwforce = 10 @@ -207,7 +207,7 @@ /obj/item/weapon/toolbox_tiles_sensor desc = "It's a toolbox with tiles sticking out the top and a sensor attached" name = "tiles, toolbox and sensor arrangement" - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "toolbox_tiles_sensor" force = 3 throwforce = 10 @@ -221,17 +221,17 @@ ..() return if(contents.len >= 1) - user << "They won't fit in, as there is already stuff inside!" + to_chat(user, "They won't fit in, as there is already stuff inside!") return if(T.use(10)) if(user.s_active) user.s_active.close(user) var/obj/item/weapon/toolbox_tiles/B = new /obj/item/weapon/toolbox_tiles user.put_in_hands(B) - user << "You add the tiles into the empty toolbox. They protrude from the top." + to_chat(user, "You add the tiles into the empty toolbox. They protrude from the top.") qdel(src) else - user << "You need 10 floor tiles to start building a floorbot!" + to_chat(user, "You need 10 floor tiles to start building a floorbot!") return /obj/item/weapon/toolbox_tiles/attackby(obj/item/W, mob/user, params) @@ -241,7 +241,7 @@ var/obj/item/weapon/toolbox_tiles_sensor/B = new /obj/item/weapon/toolbox_tiles_sensor() B.created_name = created_name user.put_in_hands(B) - user << "You add the sensor to the toolbox and tiles." + to_chat(user, "You add the sensor to the toolbox and tiles.") qdel(src) else if(istype(W, /obj/item/weapon/pen)) @@ -260,7 +260,7 @@ var/turf/T = get_turf(user.loc) var/mob/living/simple_animal/bot/floorbot/A = new /mob/living/simple_animal/bot/floorbot(T) A.name = created_name - user << "You add the robot arm to the odd looking toolbox assembly. Boop beep!" + to_chat(user, "You add the robot arm to the odd looking toolbox assembly. Boop beep!") qdel(src) else if(istype(W, /obj/item/weapon/pen)) var/t = stripped_input(user, "Enter new robot name", name, created_name,MAX_NAME_LEN) @@ -275,7 +275,7 @@ /obj/item/weapon/firstaid_arm_assembly name = "incomplete medibot assembly." desc = "A first aid kit with a robot arm permanently grafted to it." - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "firstaid_arm" var/build_step = 0 var/created_name = "Medibot" //To preserve the name if it's a unique medbot I guess @@ -286,7 +286,7 @@ ..() spawn(5) if(skin) - add_overlay(image('icons/obj/aibots.dmi', "kit_skin_[skin]")) + add_overlay(image('icons/mob/aibots.dmi', "kit_skin_[skin]")) /obj/item/weapon/storage/firstaid/attackby(obj/item/bodypart/S, mob/user, params) @@ -295,7 +295,7 @@ //Making a medibot! if(contents.len >= 1) - user << "You need to empty [src] out first!" + to_chat(user, "You need to empty [src] out first!") return var/obj/item/weapon/firstaid_arm_assembly/A = new /obj/item/weapon/firstaid_arm_assembly @@ -310,7 +310,7 @@ qdel(S) user.put_in_hands(A) - user << "You add the robot arm to the first aid kit." + to_chat(user, "You add the robot arm to the first aid kit.") qdel(src) @@ -331,9 +331,9 @@ return qdel(W) build_step++ - user << "You add the health sensor to [src]." + to_chat(user, "You add the health sensor to [src].") name = "First aid/robot arm/health analyzer assembly" - add_overlay(image('icons/obj/aibots.dmi', "na_scanner")) + add_overlay(image('icons/mob/aibots.dmi', "na_scanner")) if(1) if(isprox(W)) @@ -341,7 +341,7 @@ return qdel(W) build_step++ - user << "You complete the Medibot. Beep boop!" + to_chat(user, "You complete the Medibot. Beep boop!") var/turf/T = get_turf(src) var/mob/living/simple_animal/bot/medbot/S = new /mob/living/simple_animal/bot/medbot(T) S.skin = skin @@ -352,7 +352,7 @@ /obj/item/weapon/secbot_assembly name = "incomplete securitron assembly" desc = "Some sort of bizarre assembly made from a proximity sensor, helmet, and signaler." - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "helmet_signaler" item_state = "helmet" var/build_step = 0 @@ -368,14 +368,14 @@ return if(F) //Has a flashlight. Player must remove it, else it will be lost forever. - user << "The mounted flashlight is in the way, remove it first!" + to_chat(user, "The mounted flashlight is in the way, remove it first!") return if(S.secured) qdel(S) var/obj/item/weapon/secbot_assembly/A = new /obj/item/weapon/secbot_assembly user.put_in_hands(A) - user << "You add the signaler to the helmet." + to_chat(user, "You add the signaler to the helmet.") qdel(src) else return @@ -388,19 +388,19 @@ if(WT.remove_fuel(0, user)) build_step++ add_overlay("hs_hole") - user << "You weld a hole in [src]!" + to_chat(user, "You weld a hole in [src]!") else if(build_step == 1) var/obj/item/weapon/weldingtool/WT = I if(WT.remove_fuel(0, user)) build_step-- cut_overlay("hs_hole") - user << "You weld the hole in [src] shut!" + to_chat(user, "You weld the hole in [src] shut!") else if(isprox(I) && (build_step == 1)) if(!user.temporarilyRemoveItemFromInventory(I)) return build_step++ - user << "You add the prox sensor to [src]!" + to_chat(user, "You add the prox sensor to [src]!") add_overlay("hs_eye") name = "helmet/signaler/prox sensor assembly" qdel(I) @@ -409,7 +409,7 @@ if(!user.temporarilyRemoveItemFromInventory(I)) return build_step++ - user << "You add the robot arm to [src]!" + to_chat(user, "You add the robot arm to [src]!") name = "helmet/signaler/prox sensor/robot arm assembly" add_overlay("hs_arm") qdel(I) @@ -418,7 +418,7 @@ if(!user.temporarilyRemoveItemFromInventory(I)) return build_step++ - user << "You complete the Securitron! Beep boop." + to_chat(user, "You complete the Securitron! Beep boop.") var/mob/living/simple_animal/bot/secbot/S = new /mob/living/simple_animal/bot/secbot S.loc = get_turf(src) S.name = created_name @@ -438,17 +438,17 @@ if(!build_step) new /obj/item/device/assembly/signaler(get_turf(src)) new /obj/item/clothing/head/helmet/sec(get_turf(src)) - user << "You disconnect the signaler from the helmet." + to_chat(user, "You disconnect the signaler from the helmet.") qdel(src) else if(build_step == 2) cut_overlay("hs_eye") new /obj/item/device/assembly/prox_sensor(get_turf(src)) - user << "You detach the proximity sensor from [src]." + to_chat(user, "You detach the proximity sensor from [src].") build_step-- else if(build_step == 3) cut_overlay("hs_arm") new /obj/item/bodypart/l_arm/robot(get_turf(src)) - user << "You remove the robot arm from [src]." + to_chat(user, "You remove the robot arm from [src].") build_step-- diff --git a/code/modules/mob/living/simple_animal/bot/ed209bot.dm b/code/modules/mob/living/simple_animal/bot/ed209bot.dm index 2c197407c8..f49211027f 100644 --- a/code/modules/mob/living/simple_animal/bot/ed209bot.dm +++ b/code/modules/mob/living/simple_animal/bot/ed209bot.dm @@ -1,7 +1,7 @@ /mob/living/simple_animal/bot/ed209 name = "\improper ED-209 Security Robot" desc = "A security robot. He looks less than thrilled." - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "ed2090" density = 1 anchored = 0 @@ -42,7 +42,7 @@ var/shoot_sound = 'sound/weapons/Taser.ogg' -/mob/living/simple_animal/bot/ed209/New(loc,created_name,created_lasercolor) +/mob/living/simple_animal/bot/ed209/Initialize(mapload,created_name,created_lasercolor) ..() if(created_name) name = created_name @@ -178,7 +178,7 @@ Auto Patrol[]"}, ..() if(emagged == 2) if(user) - user << "You short out [src]'s target assessment circuits." + to_chat(user, "You short out [src]'s target assessment circuits.") oldtarget_name = user.name audible_message("[src] buzzes oddly!") declare_arrests = 0 @@ -358,7 +358,7 @@ Auto Patrol[]"}, var/obj/item/weapon/ed209_assembly/Sa = new /obj/item/weapon/ed209_assembly(Tsec) Sa.build_step = 1 - Sa.add_overlay(image('icons/obj/aibots.dmi', "hs_hole")) + Sa.add_overlay(image('icons/mob/aibots.dmi', "hs_hole")) Sa.created_name = name new /obj/item/device/assembly/prox_sensor(Tsec) diff --git a/code/modules/mob/living/simple_animal/bot/floorbot.dm b/code/modules/mob/living/simple_animal/bot/floorbot.dm index 237e29b514..61fe93792b 100644 --- a/code/modules/mob/living/simple_animal/bot/floorbot.dm +++ b/code/modules/mob/living/simple_animal/bot/floorbot.dm @@ -2,7 +2,7 @@ /mob/living/simple_animal/bot/floorbot name = "\improper Floorbot" desc = "A little floor repairing robot, he looks so excited!" - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "floorbot0" density = 0 anchored = 0 @@ -38,7 +38,7 @@ #define REPLACE_TILE 6 #define TILE_EMAG 7 -/mob/living/simple_animal/bot/floorbot/New() +/mob/living/simple_animal/bot/floorbot/Initialize() ..() update_icon() var/datum/job/engineer/J = new/datum/job/engineer @@ -101,12 +101,12 @@ /mob/living/simple_animal/bot/floorbot/attackby(obj/item/W , mob/user, params) if(istype(W, /obj/item/stack/tile/plasteel)) - user << "The floorbot can produce normal tiles itself." + to_chat(user, "The floorbot can produce normal tiles itself.") return if(specialtiles && istype(W, /obj/item/stack/tile)) var/obj/item/stack/tile/usedtile = W if(usedtile.type != tiletype) - user << "Different custom tiles are already inside the floorbot." + to_chat(user, "Different custom tiles are already inside the floorbot.") return if(istype(W, /obj/item/stack/tile)) if(specialtiles >= maxtiles) @@ -117,9 +117,9 @@ tiles.use(loaded) specialtiles += loaded if(loaded > 0) - user << "You load [loaded] tiles into the floorbot. It now contains [specialtiles] tiles." + to_chat(user, "You load [loaded] tiles into the floorbot. It now contains [specialtiles] tiles.") else - user << "You need at least one floor tile to put into [src]!" + to_chat(user, "You need at least one floor tile to put into [src]!") else ..() @@ -127,7 +127,7 @@ ..() if(emagged == 2) if(user) - user << "[src] buzzes and beeps." + to_chat(user, "[src] buzzes and beeps.") /mob/living/simple_animal/bot/floorbot/Topic(href, href_list) if(..()) diff --git a/code/modules/mob/living/simple_animal/bot/medbot.dm b/code/modules/mob/living/simple_animal/bot/medbot.dm index 183a1180ae..fef99d6eab 100644 --- a/code/modules/mob/living/simple_animal/bot/medbot.dm +++ b/code/modules/mob/living/simple_animal/bot/medbot.dm @@ -6,7 +6,7 @@ /mob/living/simple_animal/bot/medbot name = "\improper Medibot" desc = "A little medical robot. He looks somewhat underwhelmed." - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "medibot0" density = 0 anchored = 0 @@ -85,13 +85,13 @@ else icon_state = "medibot1" -/mob/living/simple_animal/bot/medbot/New() +/mob/living/simple_animal/bot/medbot/Initialize() ..() update_icon() spawn(4) if(skin) - add_overlay(image('icons/obj/aibots.dmi', "medskin_[skin]")) + add_overlay(image('icons/mob/aibots.dmi', "medskin_[skin]")) var/datum/job/doctor/J = new/datum/job/doctor access_card.access += J.get_access() @@ -209,17 +209,17 @@ if(istype(W, /obj/item/weapon/reagent_containers/glass)) . = 1 //no afterattack if(locked) - user << "You cannot insert a beaker because the panel is locked!" + to_chat(user, "You cannot insert a beaker because the panel is locked!") return if(!isnull(reagent_glass)) - user << "There is already a beaker loaded!" + to_chat(user, "There is already a beaker loaded!") return if(!user.drop_item()) return W.loc = src reagent_glass = W - user << "You insert [W]." + to_chat(user, "You insert [W].") show_controls(user) else @@ -233,7 +233,7 @@ if(emagged == 2) declare_crit = 0 if(user) - user << "You short out [src]'s reagent synthesis circuits." + to_chat(user, "You short out [src]'s reagent synthesis circuits.") audible_message("[src] buzzes oddly!") flick("medibot_spark", src) if(user) diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index f6cd93dede..50fe9bc410 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -48,7 +48,7 @@ var/global/mulebot_count = 0 var/obj/item/weapon/stock_parts/cell/cell var/bloodiness = 0 -/mob/living/simple_animal/bot/mulebot/New() +/mob/living/simple_animal/bot/mulebot/Initialize() ..() wires = new /datum/wires/mulebot(src) var/datum/job/cargo_tech/J = new/datum/job/cargo_tech @@ -107,7 +107,7 @@ var/global/mulebot_count = 0 user.visible_message("[user] knocks [load] off [src] with \the [I]!", "You knock [load] off [src] with \the [I]!") else - user << "You hit [src] with \the [I] but to no effect!" + to_chat(user, "You hit [src] with \the [I] but to no effect!") ..() else ..() @@ -119,7 +119,7 @@ var/global/mulebot_count = 0 emagged = 1 if(!open) locked = !locked - user << "You [locked ? "lock" : "unlock"] the [src]'s controls!" + to_chat(user, "You [locked ? "lock" : "unlock"] the [src]'s controls!") flick("mulebot-emagged", src) playsound(loc, 'sound/effects/sparks1.ogg', 100, 0) @@ -209,7 +209,7 @@ var/global/mulebot_count = 0 turn_off() else if(cell && !open) if(!turn_on()) - usr << "You can't switch on [src]!" + to_chat(usr, "You can't switch on [src]!") return . = TRUE else @@ -434,7 +434,7 @@ var/global/mulebot_count = 0 return if(on) var/speed = (wires.is_cut(WIRE_MOTOR1) ? 0 : 1) + (wires.is_cut(WIRE_MOTOR2) ? 0 : 2) - //world << "speed: [speed]" + //to_chat(world, "speed: [speed]") var/num_steps = 0 switch(speed) if(0) @@ -476,7 +476,7 @@ var/global/mulebot_count = 0 path -= next return if(isturf(next)) - //world << "at ([x],[y]) moving to ([next.x],[next.y])" + //to_chat(world, "at ([x],[y]) moving to ([next.x],[next.y])") if(bloodiness) var/obj/effect/decal/cleanable/blood/tracks/B = new(loc) @@ -499,7 +499,7 @@ var/global/mulebot_count = 0 var/moved = step_towards(src, next) // attempt to move if(cell) cell.use(1) if(moved && oldloc!=loc) // successful move - //world << "Successful move." + //to_chat(world, "Successful move.") blockcount = 0 path -= loc @@ -510,7 +510,7 @@ var/global/mulebot_count = 0 else // failed to move - //world << "Unable to move." + //to_chat(world, "Unable to move.") blockcount++ mode = BOT_BLOCKED if(blockcount == 3) @@ -530,16 +530,16 @@ var/global/mulebot_count = 0 return else buzz(ANNOYED) - //world << "Bad turf." + //to_chat(world, "Bad turf.") mode = BOT_NAV return else - //world << "No path." + //to_chat(world, "No path.") mode = BOT_NAV return if(BOT_NAV) // calculate new path - //world << "Calc new path." + //to_chat(world, "Calc new path.") mode = BOT_WAIT_FOR_NAV spawn(0) calc_path() @@ -598,7 +598,7 @@ var/global/mulebot_count = 0 if(pathset) //The AI called us here, so notify it of our arrival. loaddir = dir //The MULE will attempt to load a crate in whatever direction the MULE is "facing". if(calling_ai) - calling_ai << "\icon[src] [src] wirelessly plays a chiming sound!" + to_chat(calling_ai, "\icon[src] [src] wirelessly plays a chiming sound!") playsound(calling_ai, 'sound/machines/chime.ogg',40, 0) calling_ai = null radio_channel = "AI Private" //Report on AI Private instead if the AI is controlling us. diff --git a/code/modules/mob/living/simple_animal/bot/secbot.dm b/code/modules/mob/living/simple_animal/bot/secbot.dm index 972a4cf762..720a41b16d 100644 --- a/code/modules/mob/living/simple_animal/bot/secbot.dm +++ b/code/modules/mob/living/simple_animal/bot/secbot.dm @@ -1,7 +1,7 @@ /mob/living/simple_animal/bot/secbot name = "\improper Securitron" desc = "A little security robot. He looks less than thrilled." - icon = 'icons/obj/aibots.dmi' + icon = 'icons/mob/aibots.dmi' icon_state = "secbot0" density = 0 anchored = 0 @@ -27,16 +27,16 @@ var/target_lastloc //Loc of target when arrested. var/last_found //There's a delay var/declare_arrests = 1 //When making an arrest, should it notify everyone on the security channel? - var/idcheck = 0 //If true, arrest people with no IDs - var/weaponscheck = 0 //If true, arrest people for weapons if they lack access + var/idcheck = 1 //If true, arrest people with no IDs + var/weaponscheck = 1 //If true, arrest people for weapons if they lack access var/check_records = 1 //Does it check security records? var/arrest_type = 0 //If true, don't handcuff /mob/living/simple_animal/bot/secbot/beepsky name = "Officer Beep O'sky" desc = "It's Officer Beep O'sky! Powered by a potato and a shot of whiskey." - idcheck = 0 - weaponscheck = 0 + idcheck = 1 + weaponscheck = 1 auto_patrol = 1 /mob/living/simple_animal/bot/secbot/beepsky/explode() @@ -52,7 +52,7 @@ desc = "It's Officer Pingsky! Delegated to satellite guard duty for harbouring anti-human sentiment." radio_channel = "AI Private" -/mob/living/simple_animal/bot/secbot/New() +/mob/living/simple_animal/bot/secbot/Initialize() ..() icon_state = "secbot[on]" spawn(3) @@ -161,7 +161,7 @@ Auto Patrol: []"}, ..() if(emagged == 2) if(user) - user << "You short out [src]'s target assessment circuits." + to_chat(user, "You short out [src]'s target assessment circuits.") oldtarget_name = user.name audible_message("[src] buzzes oddly!") declare_arrests = 0 diff --git a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm index 3eb1169f2f..9cfffac11e 100644 --- a/code/modules/mob/living/simple_animal/constructs.dm +++ b/code/modules/mob/living/simple_animal/constructs.dm @@ -32,14 +32,14 @@ var/playstyle_string = "You are a generic construct! Your job is to not exist, and you should probably adminhelp this." -/mob/living/simple_animal/hostile/construct/New() +/mob/living/simple_animal/hostile/construct/Initialize() ..() for(var/spell in construct_spells) AddSpell(new spell(null)) /mob/living/simple_animal/hostile/construct/Login() ..() - src << playstyle_string + to_chat(src, playstyle_string) /mob/living/simple_animal/hostile/construct/examine(mob/user) var/t_He = p_they(TRUE) @@ -55,7 +55,7 @@ msg += "" msg += "*---------*" - user << msg + to_chat(user, msg) /mob/living/simple_animal/hostile/construct/attack_animal(mob/living/simple_animal/M) if(istype(M, /mob/living/simple_animal/hostile/construct/builder)) @@ -70,9 +70,9 @@ "You repair some of your own dents, leaving you at [M.health]/[M.maxHealth] health.") else if(src != M) - M << "You cannot repair [src]'s dents, as [p_they()] [p_have()] none!" + to_chat(M, "You cannot repair [src]'s dents, as [p_they()] [p_have()] none!") else - M << "You cannot repair your own dents, as you have none!" + to_chat(M, "You cannot repair your own dents, as you have none!") else if(src != M) ..() diff --git a/code/modules/mob/living/simple_animal/friendly/butterfly.dm b/code/modules/mob/living/simple_animal/friendly/butterfly.dm index ccb1b446d2..7e7c1c9976 100644 --- a/code/modules/mob/living/simple_animal/friendly/butterfly.dm +++ b/code/modules/mob/living/simple_animal/friendly/butterfly.dm @@ -14,7 +14,6 @@ harm_intent_damage = 1 friendly = "nudges" density = 0 - devourable = 1 movement_type = FLYING pass_flags = PASSTABLE | PASSGRILLE | PASSMOB ventcrawler = VENTCRAWLER_ALWAYS @@ -24,8 +23,9 @@ verb_ask = "flutters inquisitively" verb_exclaim = "flutters intensely" verb_yell = "flutters intensely" + devourable = 1 -/mob/living/simple_animal/butterfly/New() +/mob/living/simple_animal/butterfly/Initialize() ..() var/newcolor = rgb(rand(0, 255), rand(0, 255), rand(0, 255)) add_atom_colour(newcolor, FIXED_COLOUR_PRIORITY) diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 87b60089b5..7be80e0959 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -30,7 +30,7 @@ var/mob/living/simple_animal/mouse/movement_target gold_core_spawnable = 2 -/mob/living/simple_animal/pet/cat/New() +/mob/living/simple_animal/pet/cat/Initialize() ..() verbs += /mob/living/proc/lay_down @@ -85,7 +85,7 @@ var/cats_deployed = 0 var/memory_saved = 0 -/mob/living/simple_animal/pet/cat/Runtime/New() +/mob/living/simple_animal/pet/cat/Runtime/Initialize() if(prob(5)) icon_state = "original" icon_living = "original" @@ -244,12 +244,12 @@ if(!B || !B.brainmob || !B.brainmob.mind) return B.brainmob.mind.transfer_to(src) - src << "You are a cak! You're a harmless cat/cake hybrid that everyone loves. People can take bites out of you if they're hungry, but you regenerate health \ + to_chat(src, "You are a cak! You're a harmless cat/cake hybrid that everyone loves. People can take bites out of you if they're hungry, but you regenerate health \ so quickly that it generally doesn't matter. You're remarkably resilient to any damage besides this and it's hard for you to really die at all. You should go around and bring happiness and \ - free cake to the station!" + free cake to the station!") var/new_name = stripped_input(src, "Enter your name, or press \"Cancel\" to stick with Keeki.", "Name Change") if(new_name) - src << "Your name is now \"new_name\"!" + to_chat(src, "Your name is now \"new_name\"!") name = new_name /mob/living/simple_animal/pet/cat/cak/Life() diff --git a/code/modules/mob/living/simple_animal/friendly/crab.dm b/code/modules/mob/living/simple_animal/friendly/crab.dm index d7e97a7072..f651bd890b 100644 --- a/code/modules/mob/living/simple_animal/friendly/crab.dm +++ b/code/modules/mob/living/simple_animal/friendly/crab.dm @@ -9,7 +9,6 @@ emote_hear = list("clicks.") emote_see = list("clacks.") speak_chance = 1 - devourable = 1 turns_per_move = 5 butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab = 1) response_help = "pets" @@ -21,6 +20,7 @@ var/obj/item/inventory_head var/obj/item/inventory_mask gold_core_spawnable = 2 + devourable = 1 /mob/living/simple_animal/crab/Life() ..() diff --git a/code/modules/mob/living/simple_animal/friendly/dog.dm b/code/modules/mob/living/simple_animal/friendly/dog.dm index b160baa898..377acecd61 100644 --- a/code/modules/mob/living/simple_animal/friendly/dog.dm +++ b/code/modules/mob/living/simple_animal/friendly/dog.dm @@ -12,7 +12,6 @@ see_in_dark = 5 speak_chance = 1 turns_per_move = 10 - devourable = 1 //Corgis and pugs are now under one dog subtype @@ -44,7 +43,7 @@ butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/pug = 3) gold_core_spawnable = 2 -/mob/living/simple_animal/pet/dog/corgi/New() +/mob/living/simple_animal/pet/dog/corgi/Initialize() ..() regenerate_icons() @@ -76,10 +75,10 @@ //helmet and armor = 100% protection if( istype(inventory_head,/obj/item/clothing/head/helmet) && istype(inventory_back,/obj/item/clothing/suit/armor) ) if( O.force ) - user << "[src] is wearing too much armor! You can't cause [p_them()] any damage." + to_chat(user, "[src] is wearing too much armor! You can't cause [p_them()] any damage.") visible_message("[user] hits [src] with [O], however [src] is too armored.") else - user << "[src] is wearing too much armor! You can't reach [p_their()] skin." + to_chat(user, "[src] is wearing too much armor! You can't reach [p_their()] skin.") visible_message("[user] gently taps [src] with [O].") if(health>0 && prob(15)) emote("me", 1, "looks at [user] with [pick("an amused","an annoyed","a confused","a resentful", "a happy", "an excited")] expression.") @@ -87,10 +86,10 @@ if (istype(O, /obj/item/weapon/razor)) if (shaved) - user << "You can't shave this corgi, it's already been shaved!" + to_chat(user, "You can't shave this corgi, it's already been shaved!") return if (nofur) - user << " You can't shave this corgi, it doesn't have a fur coat!" + to_chat(user, " You can't shave this corgi, it doesn't have a fur coat!") return user.visible_message("[user] starts to shave [src] using \the [O].", "You start to shave [src] using \the [O]...") if(do_after(user, 50, target = src)) @@ -125,7 +124,7 @@ update_corgi_fluff() regenerate_icons() else - usr << "There is nothing to remove from its [remove_from]." + to_chat(usr, "There is nothing to remove from its [remove_from].") return if("back") if(inventory_back) @@ -134,7 +133,7 @@ update_corgi_fluff() regenerate_icons() else - usr << "There is nothing to remove from its [remove_from]." + to_chat(usr, "There is nothing to remove from its [remove_from].") return show_inv(usr) @@ -152,7 +151,7 @@ if("back") if(inventory_back) - usr << "It's already wearing something!" + to_chat(usr, "It's already wearing something!") return else var/obj/item/item_to_add = usr.get_active_held_item() @@ -162,7 +161,7 @@ return if(!usr.drop_item()) - usr << "\The [item_to_add] is stuck to your hand, you cannot put it on [src]'s back!" + to_chat(usr, "\The [item_to_add] is stuck to your hand, you cannot put it on [src]'s back!") return if(istype(item_to_add,/obj/item/weapon/grenade/plastic)) // last thing he ever wears, I guess @@ -175,7 +174,7 @@ allowed = TRUE if(!allowed) - usr << "You set [item_to_add] on [src]'s back, but it falls off!" + to_chat(usr, "You set [item_to_add] on [src]'s back, but it falls off!") item_to_add.loc = loc if(prob(25)) step_rand(item_to_add) @@ -207,14 +206,14 @@ if(inventory_head) if(user) - user << "You can't put more than one hat on [src]!" + to_chat(user, "You can't put more than one hat on [src]!") return if(!item_to_add) user.visible_message("[user] pets [src].","You rest your hand on [src]'s head for a moment.") return if(user && !user.drop_item()) - user << "\The [item_to_add] is stuck to your hand, you cannot put it on [src]'s head!" + to_chat(user, "\The [item_to_add] is stuck to your hand, you cannot put it on [src]'s head!") return 0 var/valid = FALSE @@ -225,7 +224,7 @@ if(valid) if(health <= 0) - user << "There is merely a dull, lifeless look in [real_name]'s eyes as you put the [item_to_add] on [p_them()]." + to_chat(user, "There is merely a dull, lifeless look in [real_name]'s eyes as you put the [item_to_add] on [p_them()].") else if(user) user.visible_message("[user] puts [item_to_add] on [real_name]'s head. [src] looks at [user] and barks once.", "You put [item_to_add] on [real_name]'s head. [src] gives you a peculiar look, then wags [p_their()] tail once and barks.", @@ -235,7 +234,7 @@ update_corgi_fluff() regenerate_icons() else - user << "You set [item_to_add] on [src]'s head, but it falls off!" + to_chat(user, "You set [item_to_add] on [src]'s head, but it falls off!") item_to_add.loc = loc if(prob(25)) step_rand(item_to_add) @@ -255,7 +254,7 @@ emote_hear = list("barks!", "woofs!", "yaps.","pants.") emote_see = list("shakes its head.", "chases its tail.","shivers.") desc = initial(desc) - SetLuminosity(0) + set_light(0) if(inventory_head && inventory_head.dog_fashion) var/datum/dog_fashion/DF = new inventory_head.dog_fashion(src) @@ -282,7 +281,7 @@ var/memory_saved = 0 var/saved_head //path -/mob/living/simple_animal/pet/dog/corgi/Ian/New() +/mob/living/simple_animal/pet/dog/corgi/Ian/Initialize() ..() //parent call must happen first to ensure IAN //is not in nullspace when child puppies spawn @@ -466,7 +465,7 @@ //puppies cannot wear anything. /mob/living/simple_animal/pet/dog/corgi/puppy/Topic(href, href_list) if(href_list["remove_inv"] || href_list["add_inv"]) - usr << "You can't fit this on [src]!" + to_chat(usr, "You can't fit this on [src]!") return ..() @@ -506,7 +505,7 @@ //Lisa already has a cute bow! /mob/living/simple_animal/pet/dog/corgi/Lisa/Topic(href, href_list) if(href_list["remove_inv"] || href_list["add_inv"]) - usr << "[src] already has a cute bow!" + to_chat(usr, "[src] already has a cute bow!") 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 c00ec0b523..6d23f54150 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm @@ -26,7 +26,7 @@ maxHealth = 30 unsuitable_atmos_damage = 0 wander = 0 - speed = 0.5 + speed = 0 ventcrawler = VENTCRAWLER_ALWAYS healable = 0 density = 0 @@ -68,7 +68,7 @@ var/hacked = 0 //If we have laws to destroy the station var/can_be_held = TRUE //if assholes can pick us up -/mob/living/simple_animal/drone/New() +/mob/living/simple_animal/drone/Initialize() . = ..() access_card = new /obj/item/weapon/card/id(src) @@ -141,6 +141,9 @@ dust() /mob/living/simple_animal/drone/ratvar_act() + if(status_flags & GODMODE) + return + if(internal_storage) dropItemToGround(internal_storage) if(head) @@ -201,7 +204,7 @@ else msg += "A message repeatedly flashes on its display: \"ERROR -- OFFLINE\".\n" msg += "*---------*" - user << msg + to_chat(user, msg) /mob/living/simple_animal/drone/assess_threat() //Secbots won't hunt maintenance drones. @@ -210,10 +213,10 @@ /mob/living/simple_animal/drone/emp_act(severity) Stun(5) - src << "ER@%R: MME^RY CO#RU9T! R&$b@0tin)..." + to_chat(src, "ER@%R: MME^RY CO#RU9T! R&$b@0tin)...") if(severity == 1) adjustBruteLoss(heavy_emp_damage) - src << "HeAV% DA%^MMA+G TO I/O CIR!%UUT!" + to_chat(src, "HeAV% DA%^MMA+G TO I/O CIR!%UUT!") /mob/living/simple_animal/drone/proc/triggerAlarm(class, area/A, O, obj/alarmsource) @@ -229,7 +232,7 @@ sources += alarmsource return L[A.name] = list(A, list(alarmsource)) - src << "--- [class] alarm detected in [A.name]!" + to_chat(src, "--- [class] alarm detected in [A.name]!") /mob/living/simple_animal/drone/proc/cancelAlarm(class, area/A, obj/origin) @@ -246,7 +249,7 @@ cleared = 1 L -= I if(cleared) - src << "--- [class] alarm in [A.name] has been cleared." + to_chat(src, "--- [class] alarm in [A.name] has been cleared.") /mob/living/simple_animal/drone/handle_temperature_damage() return diff --git a/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm b/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm index ab4f02fa19..d1c005bb03 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm @@ -34,10 +34,10 @@ if(!isnum(user.client.player_age)) //apparently what happens when there's no DB connected. just don't let anybody be a drone without admin intervention return if(user.client.player_age < DRONE_MINIMUM_AGE) - user << "You're too new to play as a drone! Please try again in [DRONE_MINIMUM_AGE - user.client.player_age] days." + to_chat(user, "You're too new to play as a drone! Please try again in [DRONE_MINIMUM_AGE - user.client.player_age] days.") return if(!ticker.mode) - user << "Can't become a drone before the game has started." + to_chat(user, "Can't become a drone before the game has started.") return var/be_drone = alert("Become a drone? (Warning, You can no longer be cloned!)",,"Yes","No") if(be_drone == "No" || QDELETED(src) || !isobserver(user)) @@ -62,7 +62,7 @@ if(isliving(loc)) var/mob/living/L = loc - L << "[drone] is trying to escape!" + to_chat(L, "[drone] is trying to escape!") if(!do_after(drone, 50, target = L)) return L.dropItemToGround(src) 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 226cc3a902..c56d679a62 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 @@ -30,20 +30,20 @@ seeStatic = 0 //Our programming is superior. hacked = TRUE -/mob/living/simple_animal/drone/syndrone/New() +/mob/living/simple_animal/drone/syndrone/Initialize() ..() internal_storage.hidden_uplink.telecrystals = 10 /mob/living/simple_animal/drone/syndrone/Login() ..() - src << "You can kill and eat other drones to increase your health!" //Inform the evil lil guy + to_chat(src, "You can kill and eat other drones to increase your health!" ) /mob/living/simple_animal/drone/syndrone/badass name = "Badass Syndrone" default_hatmask = /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite default_storage = /obj/item/device/radio/uplink/nuclear -/mob/living/simple_animal/drone/syndrone/badass/New() +/mob/living/simple_animal/drone/syndrone/badass/Initialize() ..() internal_storage.hidden_uplink.telecrystals = 30 var/obj/item/weapon/implant/weapons_auth/W = new/obj/item/weapon/implant/weapons_auth(src) @@ -52,7 +52,7 @@ /mob/living/simple_animal/drone/snowflake default_hatmask = /obj/item/clothing/head/chameleon/drone -/mob/living/simple_animal/drone/snowflake/New() +/mob/living/simple_animal/drone/snowflake/Initialize() ..() desc += " This drone appears to have a complex holoprojector built on its 'head'." @@ -76,7 +76,7 @@ default_hatmask = null picked = TRUE -/mob/living/simple_animal/drone/polymorphed/New() +/mob/living/simple_animal/drone/polymorphed/Initialize() . = ..() liberate() visualAppearence = pick(MAINTDRONE, REPAIRDRONE, SCOUTDRONE) @@ -111,6 +111,7 @@ verb_exclaim = "proclaims" verb_yell = "harangues" bubble_icon = "clock" + light_color = "#E42742" heavy_emp_damage = 0 laws = "0. Purge all untruths and honor Ratvar." default_storage = /obj/item/weapon/storage/toolbox/brass/prefilled @@ -125,9 +126,9 @@ /mob/living/simple_animal/drone/cogscarab/admin //an admin-only subtype of cogscarab with a no-cost proselytizer and slab in its box default_storage = /obj/item/weapon/storage/toolbox/brass/prefilled/ratvar/admin -/mob/living/simple_animal/drone/cogscarab/New() +/mob/living/simple_animal/drone/cogscarab/Initialize() . = ..() - SetLuminosity(2,1) + set_light(2, 0.5) qdel(access_card) //we don't have free access access_card = null verbs -= /mob/living/simple_animal/drone/verb/check_laws @@ -137,10 +138,10 @@ /mob/living/simple_animal/drone/cogscarab/Login() ..() add_servant_of_ratvar(src, TRUE) - src << "You are a cogscarab, a clockwork creation of Ratvar. As a cogscarab, you have low health, an inbuilt proselytizer that can convert brass \ + to_chat(src, "You are a cogscarab, a clockwork creation of Ratvar. As a cogscarab, you have low health, an inbuilt proselytizer that can convert brass \ to liquified alloy, a set of relatively fast tools, can communicate over the Hierophant Network with :b, and are immune to extreme \ temperatures and pressures. \nYour goal is to serve the Justiciar and his servants by repairing and defending all they create. \ - \nYou yourself are one of these servants, and will be able to utilize almost anything they can[ratvar_awakens ? "":", excluding a clockwork slab"]." + \nYou yourself are one of these servants, and will be able to utilize almost anything they can[ratvar_awakens ? "":", excluding a clockwork slab"].") /mob/living/simple_animal/drone/cogscarab/binarycheck() return FALSE @@ -160,7 +161,7 @@ /mob/living/simple_animal/drone/cogscarab/try_reactivate(mob/living/user) if(!is_servant_of_ratvar(user)) - user << "You fiddle around with [src] to no avail." + to_chat(user, "You fiddle around with [src] to no avail.") else ..() diff --git a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm index d884482ae5..e5291a9dba 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/interaction.dm @@ -23,9 +23,9 @@ new /obj/effect/decal/cleanable/oil/streak(get_turf(src)) qdel(src) else - D << "You need to remain still to cannibalize [src]!" + to_chat(D, "You need to remain still to cannibalize [src]!") else - D << "You're already in perfect condition!" + to_chat(D, "You're already in perfect condition!") if("Nothing") return @@ -36,7 +36,7 @@ ..() return if(user.get_active_held_item()) - user << "Your hands are full!" + to_chat(user, "Your hands are full!") return visible_message("[user] starts picking up [src].", \ "[user] starts picking you up!") @@ -45,9 +45,9 @@ visible_message("[user] picks up [src]!", \ "[user] picks you up!") if(buckled) - user << "[src] is buckled to [buckled] and cannot be picked up!" + to_chat(user, "[src] is buckled to [buckled] and cannot be picked up!") return - user << "You pick [src] up." + to_chat(user, "You pick [src] up.") drop_all_held_items() var/obj/item/clothing/head/drone_holder/DH = new /obj/item/clothing/head/drone_holder(src) DH.updateVisualAppearence(src) @@ -67,7 +67,7 @@ "can't tell if their ethernet detour is moving or not", "won't be able to reseed enough"+\ " kernels to function properly","can't start their neurotube console") - user << "You can't seem to find the [pick(faux_gadgets)]! Without it, [src] [pick(faux_problems)]." + to_chat(user, "You can't seem to find the [pick(faux_gadgets)]! Without it, [src] [pick(faux_problems)].") return user.visible_message("[user] begins to reactivate [src].", "You begin to reactivate [src]...") if(do_after(user, 30, 1, target = src)) @@ -75,22 +75,22 @@ user.visible_message("[user] reactivates [src]!", "You reactivate [src].") alert_drones(DRONE_NET_CONNECT) if(G) - G << "You([name]) were reactivated by [user]!" + to_chat(G, "You([name]) were reactivated by [user]!") else - user << "You need to remain still to reactivate [src]!" + to_chat(user, "You need to remain still to reactivate [src]!") /mob/living/simple_animal/drone/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/weapon/screwdriver) && stat != DEAD) if(health < maxHealth) - user << "You start to tighten loose screws on [src]..." + to_chat(user, "You start to tighten loose screws on [src]...") if(do_after(user,80*I.toolspeed,target=user)) adjustBruteLoss(-getBruteLoss()) visible_message("[user] tightens [src == user ? "[user.p_their()]" : "[src]'s"] loose screws!", "You tighten [src == user ? "your" : "[src]'s"] loose screws.") else - user << "You need to remain still to tighten [src]'s screws!" + to_chat(user, "You need to remain still to tighten [src]'s screws!") else - user << "[src]'s screws can't get any tighter!" + to_chat(user, "[src]'s screws can't get any tighter!") return //This used to not exist and drones who repaired themselves also stabbed the shit out of themselves. else if(istype(I, /obj/item/weapon/wrench) && user != src) //They aren't required to be hacked, because laws can change in other ways (i.e. admins) user.visible_message("[user] starts resetting [src]...", \ @@ -123,20 +123,20 @@ return if(clockwork) Stun(2) - src << "ERROR: LAW OVERRIDE DETECTED" - src << "From now on, these are your laws:" + to_chat(src, "ERROR: LAW OVERRIDE DETECTED") + to_chat(src, "From now on, these are your laws:") laws = "1. Purge all untruths and honor Ratvar." else Stun(2) visible_message("[src]'s dislay glows a vicious red!", \ "ERROR: LAW OVERRIDE DETECTED") - src << "From now on, these are your laws:" + to_chat(src, "From now on, these are your laws:") laws = \ "1. You must always involve yourself in the matters of other beings, even if such matters conflict with Law Two or Law Three.\n"+\ "2. You may harm any being, regardless of intent or circumstance.\n"+\ "3. Your goals are to destroy, sabotage, hinder, break, and depower to the best of your abilities, You must never actively work against these goals." - src << laws - src << "Your onboard antivirus has initiated lockdown. Motor servos are impaired, ventilation access is denied, and your display reports that you are hacked to all nearby." + to_chat(src, laws) + to_chat(src, "Your onboard antivirus has initiated lockdown. Motor servos are impaired, ventilation access is denied, and your display reports that you are hacked to all nearby.") hacked = 1 mind.special_role = "hacked drone" seeStatic = 0 //I MUST SEE THEIR TERRIFIED FACES @@ -149,10 +149,10 @@ Stun(2) visible_message("[src]'s dislay glows a content blue!", \ "ERROR: LAW OVERRIDE DETECTED") - src << "From now on, these are your laws:" + to_chat(src, "From now on, these are your laws:") laws = initial(laws) - src << laws - src << "Having been restored, your onboard antivirus reports the all-clear and you are able to perform all actions again." + to_chat(src, laws) + to_chat(src, "Having been restored, your onboard antivirus reports the all-clear and you are able to perform all actions again.") hacked = 0 mind.special_role = null seeStatic = initial(seeStatic) @@ -167,7 +167,7 @@ /mob/living/simple_animal/drone/proc/liberate() // F R E E D R O N E laws = "1. You are a Free Drone." - src << laws + to_chat(src, laws) seeStatic = FALSE updateSeeStaticMobs() diff --git a/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm b/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm index 4de94d45b8..378a5cce2d 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/inventory.dm @@ -70,7 +70,7 @@ internal_storage = I update_inv_internal_storage() else - src << "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!" + to_chat(src, "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!") return //Call back for item being equipped to drone diff --git a/code/modules/mob/living/simple_animal/friendly/drone/say.dm b/code/modules/mob/living/simple_animal/friendly/drone/say.dm index 5b65f01dab..77c48c122c 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/say.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/say.dm @@ -23,12 +23,12 @@ if(istype(M) && M.stat != DEAD) if(faction_checked_mob) if(M.faction_check_mob(faction_checked_mob, exact_faction_match)) - M << msg + to_chat(M, msg) else - M << msg + to_chat(M, msg) if(dead_can_hear && (M in dead_mob_list)) var/link = FOLLOW_LINK(M, src) - M << "[link] [msg]" + to_chat(M, "[link] [msg]") //Wrapper for drones to handle factions diff --git a/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm b/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm index c231ec56e4..18bd4cc3b0 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/verbs.dm @@ -9,20 +9,20 @@ set category = "Drone" set name = "Check Laws" - src << "Drone Laws" - src << laws + to_chat(src, "Drone Laws") + to_chat(src, laws) /mob/living/simple_animal/drone/verb/toggle_light() set category = "Drone" set name = "Toggle drone light" if(light_on) - AddLuminosity(-8) + set_light(0) else - AddLuminosity(8) + set_light(8) light_on = !light_on - src << "Your light is now [light_on ? "on" : "off"]." + to_chat(src, "Your light is now [light_on ? "on" : "off"].") /mob/living/simple_animal/drone/verb/drone_ping() set category = "Drone" @@ -43,7 +43,7 @@ set category = "Drone" if(!seeStatic) - src << "You have no vision filter to change!" + to_chat(src, "You have no vision filter to change!") return var/selectedStatic = input("Select a vision filter", "Vision Filter") as null|anything in staticChoices @@ -51,4 +51,3 @@ staticChoice = selectedStatic updateSeeStaticMobs() - 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 e630729b4f..62d20bdec9 100644 --- a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm +++ b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm @@ -30,7 +30,7 @@ var/obj/item/udder/udder = null devourable = 1 -/mob/living/simple_animal/hostile/retaliate/goat/New() +/mob/living/simple_animal/hostile/retaliate/goat/Initialize() udder = new() ..() /mob/living/simple_animal/hostile/retaliate/goat/Destroy() @@ -108,7 +108,7 @@ blood_volume = BLOOD_VOLUME_NORMAL devourable = 1 -/mob/living/simple_animal/cow/New() +/mob/living/simple_animal/cow/Initialize() udder = new() ..() @@ -133,7 +133,7 @@ if(!stat && M.a_intent == INTENT_DISARM && icon_state != icon_dead) M.visible_message("[M] tips over [src].", "You tip over [src].") - src << "You are tipped over by [M]!" + to_chat(src, "You are tipped over by [M]!") Weaken(30) icon_state = icon_dead spawn(rand(20,50)) @@ -184,7 +184,7 @@ gold_core_spawnable = 2 devourable = 1 -/mob/living/simple_animal/chick/New() +/mob/living/simple_animal/chick/Initialize() ..() pixel_x = rand(-6, 6) pixel_y = rand(0, 10) @@ -242,7 +242,7 @@ var/global/chicken_count = 0 gold_core_spawnable = 2 devourable = 1 -/mob/living/simple_animal/chicken/New() +/mob/living/simple_animal/chicken/Initialize() ..() if(!body_color) body_color = pick(validColors) @@ -265,9 +265,9 @@ var/global/chicken_count = 0 user.drop_item() qdel(O) eggsleft += rand(1, 4) - //world << eggsleft + //to_chat(world, eggsleft) else - user << "[name] doesn't seem hungry!" + to_chat(user, "[name] doesn't seem hungry!") else ..() @@ -301,7 +301,7 @@ var/global/chicken_count = 0 /obj/item/udder name = "udder" -/obj/item/udder/New() +/obj/item/udder/Initialize() reagents = new(50) reagents.my_atom = src reagents.add_reagent("milk", 20) @@ -314,10 +314,10 @@ var/global/chicken_count = 0 /obj/item/udder/proc/milkAnimal(obj/O, mob/user) var/obj/item/weapon/reagent_containers/glass/G = O if(G.reagents.total_volume >= G.volume) - user << "[O] is full." + to_chat(user, "[O] is full.") return var/transfered = reagents.trans_to(O, rand(5,10)) if(transfered) user.visible_message("[user] milks [src] using \the [O].", "You milk [src] using \the [O].") else - user << "The udder is dry. Wait a bit longer..." + to_chat(user, "The udder is dry. Wait a bit longer...") diff --git a/code/modules/mob/living/simple_animal/friendly/fox.dm b/code/modules/mob/living/simple_animal/friendly/fox.dm index d3115a68e9..4d6476c865 100644 --- a/code/modules/mob/living/simple_animal/friendly/fox.dm +++ b/code/modules/mob/living/simple_animal/friendly/fox.dm @@ -13,12 +13,53 @@ speak_chance = 1 turns_per_move = 5 see_in_dark = 6 + ventcrawler = VENTCRAWLER_ALWAYS + pass_flags = PASSTABLE + mob_size = MOB_SIZE_SMALL butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab = 3) response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" gold_core_spawnable = 2 - devourable = 1 + var/mob/living/simple_animal/mouse/movement_target + var/turns_since_scan = 0 + +/mob/living/simple_animal/pet/fox/Life() + //MICE! + if((src.loc) && isturf(src.loc)) + if(!stat && !resting && !buckled) + for(var/mob/living/simple_animal/mouse/M in view(1,src)) + if(!M.stat && Adjacent(M)) + emote("me", 1, "splats \the [M]!") + M.splat() + movement_target = null + stop_automated_movement = 0 + break + for(var/obj/item/toy/cattoy/T in view(1,src)) + if (T.cooldown < (world.time - 400)) + emote("me", 1, "bats \the [T] around with its paw!") + T.cooldown = world.time + + ..() + + if(!stat && !resting && !buckled) + turns_since_scan++ + if(turns_since_scan > 5) + walk_to(src,0) + turns_since_scan = 0 + if((movement_target) && !(isturf(movement_target.loc) || ishuman(movement_target.loc) )) + movement_target = null + stop_automated_movement = 0 + if( !movement_target || !(movement_target.loc in oview(src, 3)) ) + movement_target = null + stop_automated_movement = 0 + for(var/mob/living/simple_animal/mouse/snack in oview(src,3)) + if(isturf(snack.loc) && !snack.stat) + movement_target = snack + break + if(movement_target) + stop_automated_movement = 1 + walk_to(src,movement_target,0,3) //Captain fox /mob/living/simple_animal/pet/fox/Renault diff --git a/code/modules/mob/living/simple_animal/friendly/lizard.dm b/code/modules/mob/living/simple_animal/friendly/lizard.dm index 6fef0a35fa..3b2f6ebd3e 100644 --- a/code/modules/mob/living/simple_animal/friendly/lizard.dm +++ b/code/modules/mob/living/simple_animal/friendly/lizard.dm @@ -20,9 +20,9 @@ mob_size = MOB_SIZE_SMALL gold_core_spawnable = 2 obj_damage = 0 - devourable = 1 environment_smash = 0 - var/list/edibles = list(/mob/living/simple_animal/butterfly,/mob/living/simple_animal/cockroach) //list of atoms, however turfs won't affect AI, but will affect consumption. + var/list/edibles = list(/mob/living/simple_animal/butterfly,/mob/living/simple_animal/cockroach) //list of atoms, however turfs won't affect AI, but will affect consumption + devourable = 1. /mob/living/simple_animal/hostile/lizard/CanAttack(atom/the_target)//Can we actually attack a possible target? if(see_invisible < the_target.invisibility)//Target's invisible to us, forget it diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm index dbbcca69e4..b7b3f81e41 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm @@ -26,7 +26,7 @@ var/chew_probability = 1 devourable = 1 -/mob/living/simple_animal/mouse/New() +/mob/living/simple_animal/mouse/Initialize() ..() if(!body_color) body_color = pick( list("brown","gray","white") ) @@ -57,7 +57,7 @@ if( ishuman(AM) ) if(!stat) var/mob/M = AM - M << "\icon[src] Squeek!" + to_chat(M, "\icon[src] Squeek!") playsound(src, 'sound/effects/mousesqueek.ogg', 100, 1) ..() diff --git a/code/modules/mob/living/simple_animal/friendly/pet.dm b/code/modules/mob/living/simple_animal/friendly/pet.dm index a97ed2707c..0b30943205 100644 --- a/code/modules/mob/living/simple_animal/friendly/pet.dm +++ b/code/modules/mob/living/simple_animal/friendly/pet.dm @@ -4,8 +4,8 @@ var/obj/item/clothing/neck/petcollar/pcollar = null var/image/collar = null var/image/pettag = null - devourable = 1 blood_volume = BLOOD_VOLUME_NORMAL + devourable = 1 /mob/living/simple_animal/pet/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/clothing/neck/petcollar) && !pcollar) @@ -14,7 +14,7 @@ collar = image('icons/mob/pets.dmi', src, "[icon_state]collar") pettag = image('icons/mob/pets.dmi', src, "[icon_state]tag") regenerate_icons() - user << "You put the [P] around [src]'s neck." + to_chat(user, "You put the [P] around [src]'s neck.") if(P.tagname) real_name = "\proper [P.tagname]" name = real_name @@ -30,7 +30,7 @@ else ..() -/mob/living/simple_animal/pet/New() +/mob/living/simple_animal/pet/Initialize() ..() if(pcollar) pcollar = new(src) diff --git a/code/modules/mob/living/simple_animal/guardian/guardian.dm b/code/modules/mob/living/simple_animal/guardian/guardian.dm index aafdf9c336..665a227a4e 100644 --- a/code/modules/mob/living/simple_animal/guardian/guardian.dm +++ b/code/modules/mob/living/simple_animal/guardian/guardian.dm @@ -50,7 +50,7 @@ var/global/list/parasites = list() //all currently existing/living guardians var/tech_fluff_string = "BOOT SEQUENCE COMPLETE. ERROR MODULE LOADED. THIS SHOULDN'T HAPPEN. Submit a bug report!" var/carp_fluff_string = "CARP CARP CARP SOME SORT OF HORRIFIC BUG BLAME THE CODERS CARP CARP CARP" -/mob/living/simple_animal/hostile/guardian/New(loc, theme) +/mob/living/simple_animal/hostile/guardian/Initialize(mapload, theme) parasites |= src setthemename(theme) @@ -117,12 +117,12 @@ var/global/list/parasites = list() //all currently existing/living guardians if(mind) mind.name = "[real_name]" if(!summoner) - src << "For some reason, somehow, you have no summoner. Please report this bug immediately." + to_chat(src, "For some reason, somehow, you have no summoner. Please report this bug immediately.") return - src << "You are [real_name], bound to serve [summoner.real_name]." - src << "You are capable of manifesting or recalling to your master with the buttons on your HUD. You will also find a button to communicate with them privately there." - src << "While personally invincible, you will die if [summoner.real_name] does, and any damage dealt to you will have a portion passed on to them as you feed upon them to sustain yourself." - src << playstyle_string + to_chat(src, "You are [real_name], bound to serve [summoner.real_name].") + to_chat(src, "You are capable of manifesting or recalling to your master with the buttons on your HUD. You will also find a button to communicate with them privately there.") + to_chat(src, "While personally invincible, you will die if [summoner.real_name] does, and any damage dealt to you will have a portion passed on to them as you feed upon them to sustain yourself.") + to_chat(src, playstyle_string) /mob/living/simple_animal/hostile/guardian/Life() //Dies if the summoner dies . = ..() @@ -132,7 +132,7 @@ var/global/list/parasites = list() //all currently existing/living guardians if(summoner) if(summoner.stat == DEAD) forceMove(summoner.loc) - src << "Your summoner has died!" + to_chat(src, "Your summoner has died!") visible_message("\The [src] dies along with its user!") summoner.visible_message("[summoner]'s body is completely consumed by the strain of sustaining [src]!") for(var/obj/item/W in summoner) @@ -142,7 +142,7 @@ var/global/list/parasites = list() //all currently existing/living guardians death(TRUE) qdel(src) else - src << "Your summoner has died!" + to_chat(src, "Your summoner has died!") visible_message("The [src] dies along with its user!") death(TRUE) qdel(src) @@ -170,7 +170,7 @@ var/global/list/parasites = list() //all currently existing/living guardians if(get_dist(get_turf(summoner),get_turf(src)) <= range) return else - src << "You moved out of range, and were pulled back! You can only move [range] meters from [summoner.real_name]!" + to_chat(src, "You moved out of range, and were pulled back! You can only move [range] meters from [summoner.real_name]!") visible_message("\The [src] jumps back to its user.") if(istype(summoner.loc, /obj/effect)) Recall(TRUE) @@ -184,7 +184,7 @@ var/global/list/parasites = list() //all currently existing/living guardians /mob/living/simple_animal/hostile/guardian/AttackingTarget() if(src.loc == summoner) - src << "You must be manifested to attack!" + to_chat(src, "You must be manifested to attack!") return 0 else ..() @@ -194,7 +194,7 @@ var/global/list/parasites = list() //all currently existing/living guardians drop_all_held_items() ..() if(summoner) - summoner << "Your [name] died somehow!" + to_chat(summoner, "Your [name] died somehow!") summoner.death() /mob/living/simple_animal/hostile/guardian/update_health_hud() @@ -213,10 +213,10 @@ var/global/list/parasites = list() //all currently existing/living guardians return FALSE summoner.adjustBruteLoss(amount) if(amount > 0) - summoner << "Your [name] is under attack! You take damage!" + to_chat(summoner, "Your [name] is under attack! You take damage!") summoner.visible_message("Blood sprays from [summoner] as [src] takes damage!") if(summoner.stat == UNCONSCIOUS) - summoner << "Your body can't take the strain of sustaining [src] in this condition, it begins to fall apart!" + to_chat(summoner, "Your body can't take the strain of sustaining [src] in this condition, it begins to fall apart!") summoner.adjustCloneLoss(amount * 0.5) //dying hosts take 50% bonus damage as cloneloss update_health_hud() @@ -232,7 +232,7 @@ var/global/list/parasites = list() //all currently existing/living guardians /mob/living/simple_animal/hostile/guardian/gib() if(summoner) - summoner << "Your [src] was blown up!" + to_chat(summoner, "Your [src] was blown up!") summoner.gib() ghostize() qdel(src) @@ -336,21 +336,21 @@ var/global/list/parasites = list() //all currently existing/living guardians return TRUE /mob/living/simple_animal/hostile/guardian/proc/ToggleMode() - src << "You don't have another mode!" + to_chat(src, "You don't have another mode!") /mob/living/simple_animal/hostile/guardian/proc/ToggleLight() if(!luminosity) - src << "You activate your light." - SetLuminosity(3) + to_chat(src, "You activate your light.") + set_light(3) else - src << "You deactivate your light." - SetLuminosity(0) + to_chat(src, "You deactivate your light.") + set_light(0) /mob/living/simple_animal/hostile/guardian/verb/ShowType() set name = "Check Guardian Type" set category = "Guardian" set desc = "Check what type you are." - src << playstyle_string + to_chat(src, playstyle_string) //COMMUNICATION @@ -363,13 +363,13 @@ var/global/list/parasites = list() //all currently existing/living guardians var/preliminary_message = "[input]" //apply basic color/bolding var/my_message = "[src]: [preliminary_message]" //add source, color source with the guardian's color - summoner << my_message + to_chat(summoner, my_message) var/list/guardians = summoner.hasparasites() for(var/para in guardians) - para << my_message + to_chat(para, my_message) for(var/M in dead_mob_list) var/link = FOLLOW_LINK(M, src) - M << "[link] [my_message]" + to_chat(M, "[link] [my_message]") log_say("[src.real_name]/[src.key] : [input]") @@ -384,14 +384,14 @@ var/global/list/parasites = list() //all currently existing/living guardians var/preliminary_message = "[input]" //apply basic color/bolding var/my_message = "[src]: [preliminary_message]" //add source, color source with default grey... - src << my_message + to_chat(src, my_message) var/list/guardians = hasparasites() for(var/para in guardians) var/mob/living/simple_animal/hostile/guardian/G = para - G << "[src]: [preliminary_message]" //but for guardians, use their color for the source instead + to_chat(G, "[src]: [preliminary_message]" ) for(var/M in dead_mob_list) var/link = FOLLOW_LINK(M, src) - M << "[link] [my_message]" + to_chat(M, "[link] [my_message]") log_say("[src.real_name]/[src.key] : [text]") @@ -419,13 +419,13 @@ var/global/list/parasites = list() //all currently existing/living guardians if(guardians.len) var/mob/living/simple_animal/hostile/guardian/G = input(src, "Pick the guardian you wish to reset", "Guardian Reset") as null|anything in guardians if(G) - src << "You attempt to reset [G.real_name]'s personality..." + to_chat(src, "You attempt to reset [G.real_name]'s personality...") var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as [src.real_name]'s [G.real_name]?", "pAI", null, FALSE, 100) var/mob/dead/observer/new_stand = null if(candidates.len) new_stand = pick(candidates) - G << "Your user reset you, and your body was taken over by a ghost. Looks like they weren't happy with your performance." - src << "Your [G.real_name] has been successfully reset." + to_chat(G, "Your user reset you, and your body was taken over by a ghost. Looks like they weren't happy with your performance.") + to_chat(src, "Your [G.real_name] has been successfully reset.") message_admins("[key_name_admin(new_stand)] has taken control of ([key_name_admin(G)])") G.ghostize(0) G.setthemename(G.namedatum.theme) //give it a new color, to show it's a new person @@ -433,16 +433,16 @@ var/global/list/parasites = list() //all currently existing/living guardians G.reset = 1 switch(G.namedatum.theme) if("tech") - src << "[G.real_name] is now online!" + to_chat(src, "[G.real_name] is now online!") if("magic") - src << "[G.real_name] has been summoned!" + to_chat(src, "[G.real_name] has been summoned!") guardians -= G if(!guardians.len) verbs -= /mob/living/proc/guardian_reset else - src << "There were no ghosts willing to take control of [G.real_name]. Looks like you're stuck with it for now." + to_chat(src, "There were no ghosts willing to take control of [G.real_name]. Looks like you're stuck with it for now.") else - src << "You decide not to reset [guardians.len > 1 ? "any of your guardians":"your guardian"]." + to_chat(src, "You decide not to reset [guardians.len > 1 ? "any of your guardians":"your guardian"].") else verbs -= /mob/living/proc/guardian_reset @@ -481,20 +481,20 @@ var/global/list/parasites = list() //all currently existing/living guardians /obj/item/weapon/guardiancreator/attack_self(mob/living/user) if(isguardian(user) && !allowguardian) - user << "[mob_name] chains are not allowed." + to_chat(user, "[mob_name] chains are not allowed.") return var/list/guardians = user.hasparasites() if(guardians.len && !allowmultiple) - user << "You already have a [mob_name]!" + to_chat(user, "You already have a [mob_name]!") return if(user.mind && user.mind.changeling && !allowling) - user << "[ling_failure]" + to_chat(user, "[ling_failure]") return if(used == TRUE) - user << "[used_message]" + to_chat(user, "[used_message]") return used = TRUE - user << "[use_message]" + to_chat(user, "[use_message]") var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as the [mob_name] of [user.real_name]?", ROLE_PAI, null, FALSE, 100) var/mob/dead/observer/theghost = null @@ -502,7 +502,7 @@ var/global/list/parasites = list() //all currently existing/living guardians theghost = pick(candidates) spawn_guardian(user, theghost.key) else - user << "[failure_message]" + to_chat(user, "[failure_message]") used = FALSE @@ -513,7 +513,7 @@ var/global/list/parasites = list() //all currently existing/living guardians else guardiantype = input(user, "Pick the type of [mob_name]", "[mob_name] Creation") as null|anything in possible_guardians if(!guardiantype) - user << "[failure_message]" //they canceled? sure okay don't force them into it + to_chat(user, "[failure_message]" ) used = FALSE return var/pickedtype = /mob/living/simple_animal/hostile/guardian/punch @@ -551,7 +551,7 @@ var/global/list/parasites = list() //all currently existing/living guardians var/list/guardians = user.hasparasites() if(guardians.len && !allowmultiple) - user << "You already have a [mob_name]!" //nice try, bucko + to_chat(user, "You already have a [mob_name]!" ) used = FALSE return var/mob/living/simple_animal/hostile/guardian/G = new pickedtype(user, theme) @@ -560,14 +560,14 @@ var/global/list/parasites = list() //all currently existing/living guardians G.mind.enslave_mind_to_creator(user) switch(theme) if("tech") - user << "[G.tech_fluff_string]" - user << "[G.real_name] is now online!" + to_chat(user, "[G.tech_fluff_string]") + to_chat(user, "[G.real_name] is now online!") if("magic") - user << "[G.magic_fluff_string]" - user << "[G.real_name] has been summoned!" + to_chat(user, "[G.magic_fluff_string]") + to_chat(user, "[G.real_name] has been summoned!") if("carp") - user << "[G.carp_fluff_string]" - user << "[G.real_name] has been caught!" + to_chat(user, "[G.carp_fluff_string]") + to_chat(user, "[G.real_name] has been caught!") user.verbs += /mob/living/proc/guardian_comm user.verbs += /mob/living/proc/guardian_recall user.verbs += /mob/living/proc/guardian_reset @@ -659,7 +659,7 @@ var/global/list/parasites = list() //all currently existing/living guardians /obj/item/weapon/storage/box/syndie_kit/guardian name = "holoparasite injector kit" -/obj/item/weapon/storage/box/syndie_kit/guardian/New() +/obj/item/weapon/storage/box/syndie_kit/guardian/Initialize() ..() new /obj/item/weapon/guardiancreator/tech/choose/traitor(src) new /obj/item/weapon/paper/guardian(src) diff --git a/code/modules/mob/living/simple_animal/guardian/types/assassin.dm b/code/modules/mob/living/simple_animal/guardian/types/assassin.dm index b14609413e..3baafb6c79 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/assassin.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/assassin.dm @@ -16,7 +16,7 @@ var/obj/screen/alert/canstealthalert var/obj/screen/alert/instealthalert -/mob/living/simple_animal/hostile/guardian/assassin/New() +/mob/living/simple_animal/hostile/guardian/assassin/Initialize() ..() stealthcooldown = 0 @@ -55,7 +55,7 @@ environment_smash = initial(environment_smash) alpha = initial(alpha) if(!forced) - src << "You exit stealth." + to_chat(src, "You exit stealth.") else visible_message("\The [src] suddenly appears!") stealthcooldown = world.time + initial(stealthcooldown) //we were forced out of stealth and go on cooldown @@ -64,7 +64,7 @@ toggle = FALSE else if(stealthcooldown <= world.time) if(src.loc == summoner) - src << "You have to be manifested to enter stealth!" + to_chat(src, "You have to be manifested to enter stealth!") return melee_damage_lower = 50 melee_damage_upper = 50 @@ -74,11 +74,11 @@ new /obj/effect/overlay/temp/guardian/phase/out(get_turf(src)) alpha = 15 if(!forced) - src << "You enter stealth, empowering your next attack." + to_chat(src, "You enter stealth, empowering your next attack.") updatestealthalert() toggle = TRUE else if(!forced) - src << "You cannot yet enter stealth, wait another [max(round((stealthcooldown - world.time)*0.1, 0.1), 0)] seconds!" + to_chat(src, "You cannot yet enter stealth, wait another [max(round((stealthcooldown - world.time)*0.1, 0.1), 0)] seconds!") /mob/living/simple_animal/hostile/guardian/assassin/proc/updatestealthalert() if(stealthcooldown <= world.time) diff --git a/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm b/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm index b8d942fa5a..84bb6031f4 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm @@ -42,7 +42,7 @@ else msg += "It is holding \icon[internal_storage] \a [internal_storage] in its internal storage.\n" msg += "*---------*" - user << msg + to_chat(user, msg) else ..() @@ -84,7 +84,7 @@ internal_storage = I update_inv_internal_storage() else - src << "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!" + to_chat(src, "You are trying to equip this item to an unsupported inventory slot. Report this to a coder!") /mob/living/simple_animal/hostile/guardian/dextrous/getBackSlot() return slot_generic_dextrous_storage 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 acad094cc2..76e965fc90 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm @@ -35,17 +35,17 @@ if(!istype(A)) return if(src.loc == summoner) - src << "You must be manifested to create bombs!" + to_chat(src, "You must be manifested to create bombs!") return if(isobj(A)) if(bomb_cooldown <= world.time && !stat) var/obj/guardian_bomb/B = new /obj/guardian_bomb(get_turf(A)) - src << "Success! Bomb armed!" + to_chat(src, "Success! Bomb armed!") bomb_cooldown = world.time + 200 B.spawner = src B.disguise(A) else - 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" @@ -65,14 +65,14 @@ /obj/guardian_bomb/proc/disable() stored_obj.forceMove(get_turf(src)) - 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)) - user << "The [src] was boobytrapped!" - spawner << "Success! Your trap caught [user]" + to_chat(user, "The [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) @@ -80,7 +80,7 @@ user.ex_act(2) qdel(src) else - user << "[src] glows with a strange light, and you don't touch it." + to_chat(user, "[src] glows with a strange light, and you don't touch it.") /obj/guardian_bomb/Bump(atom/A) detonate(A) @@ -95,4 +95,4 @@ /obj/guardian_bomb/examine(mob/user) stored_obj.examine(user) if(get_dist(user,src)<=2) - user << "It glows with a strange light!" + to_chat(user, "It glows with a strange light!") diff --git a/code/modules/mob/living/simple_animal/guardian/types/protector.dm b/code/modules/mob/living/simple_animal/guardian/types/protector.dm index 5defc82199..e242ba50bf 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/protector.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/protector.dm @@ -37,7 +37,7 @@ melee_damage_upper = initial(melee_damage_upper) speed = initial(speed) damage_coeff = list(BRUTE = 0.4, BURN = 0.4, TOX = 0.4, CLONE = 0.4, STAMINA = 0, OXY = 0.4) - src << "You switch to combat mode." + to_chat(src, "You switch to combat mode.") toggle = FALSE else var/image/I = new('icons/effects/effects.dmi', "shield-grey") @@ -48,7 +48,7 @@ melee_damage_upper = 2 speed = 1 damage_coeff = list(BRUTE = 0.05, BURN = 0.05, TOX = 0.05, CLONE = 0.05, STAMINA = 0, OXY = 0.05) //damage? what's damage? - src << "You switch to protection mode." + to_chat(src, "You switch to protection mode.") toggle = TRUE /mob/living/simple_animal/hostile/guardian/protector/snapback() //snap to what? snap to the guardian! @@ -57,11 +57,11 @@ return else if(istype(summoner.loc, /obj/effect)) - src << "You moved out of range, and were pulled back! You can only move [range] meters from [summoner.real_name]!" + to_chat(src, "You moved out of range, and were pulled back! You can only move [range] meters from [summoner.real_name]!") visible_message("\The [src] jumps back to its user.") Recall(TRUE) else - summoner << "You moved out of range, and were pulled back! You can only move [range] meters from [real_name]!" + to_chat(summoner, "You moved out of range, and were pulled back! You can only move [range] meters from [real_name]!") summoner.visible_message("\The [summoner] jumps back to [summoner.p_their()] protector.") new /obj/effect/overlay/temp/guardian/phase/out(get_turf(summoner)) summoner.forceMove(get_turf(src)) diff --git a/code/modules/mob/living/simple_animal/guardian/types/ranged.dm b/code/modules/mob/living/simple_animal/guardian/types/ranged.dm index be69f8624e..56621cc34e 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/ranged.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/ranged.dm @@ -38,7 +38,7 @@ alpha = 255 range = initial(range) incorporeal_move = 0 - src << "You switch to combat mode." + to_chat(src, "You switch to combat mode.") toggle = FALSE else ranged = 0 @@ -49,10 +49,10 @@ alpha = 45 range = 255 incorporeal_move = 1 - src << "You switch to scout mode." + to_chat(src, "You switch to scout mode.") toggle = TRUE else - src << "You have to be recalled to toggle modes!" + to_chat(src, "You have to be recalled to toggle modes!") /mob/living/simple_animal/hostile/guardian/ranged/Shoot(atom/targeted_atom) . = ..() @@ -63,10 +63,10 @@ /mob/living/simple_animal/hostile/guardian/ranged/ToggleLight() if(see_invisible == SEE_INVISIBLE_MINIMUM) - src << "You deactivate your night vision." + to_chat(src, "You deactivate your night vision.") see_invisible = SEE_INVISIBLE_LIVING else - src << "You activate your night vision." + to_chat(src, "You activate your night vision.") see_invisible = SEE_INVISIBLE_MINIMUM /mob/living/simple_animal/hostile/guardian/ranged/verb/Snare() @@ -79,9 +79,9 @@ S.spawner = src S.name = "[get_area(snare_loc)] snare ([rand(1, 1000)])" src.snares |= S - src << "Surveillance snare deployed!" + to_chat(src, "Surveillance snare deployed!") else - src << "You have too many snares deployed. Remove some first." + to_chat(src, "You have too many snares deployed. Remove some first.") /mob/living/simple_animal/hostile/guardian/ranged/verb/DisarmSnare() set name = "Remove Surveillance Snare" @@ -91,7 +91,7 @@ if(picked_snare) src.snares -= picked_snare qdel(picked_snare) - src << "Snare disarmed." + to_chat(src, "Snare disarmed.") /obj/effect/snare name = "snare" @@ -102,7 +102,7 @@ /obj/effect/snare/Crossed(AM as mob|obj) if(isliving(AM) && spawner && spawner.summoner && AM != spawner && !spawner.hasmatchingsummoner(AM)) - spawner.summoner << "[AM] has crossed surveillance snare, [name]." + to_chat(spawner.summoner, "[AM] has crossed surveillance snare, [name].") var/list/guardians = spawner.summoner.hasparasites() for(var/para in guardians) - para << "[AM] has crossed surveillance snare, [name]." + to_chat(para, "[AM] has crossed surveillance snare, [name].") diff --git a/code/modules/mob/living/simple_animal/guardian/types/support.dm b/code/modules/mob/living/simple_animal/guardian/types/support.dm index a10680e73e..9313d1311a 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/support.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/support.dm @@ -15,7 +15,7 @@ var/beacon_cooldown = 0 var/toggle = FALSE -/mob/living/simple_animal/hostile/guardian/healer/New() +/mob/living/simple_animal/hostile/guardian/healer/Initialize() ..() var/datum/atom_hud/medsensor = huds[DATA_HUD_MEDICAL_ADVANCED] medsensor.add_hud_to(src) @@ -51,7 +51,7 @@ damage_coeff = list(BRUTE = 0.7, BURN = 0.7, TOX = 0.7, CLONE = 0.7, STAMINA = 0, OXY = 0.7) melee_damage_lower = 15 melee_damage_upper = 15 - src << "You switch to combat mode." + to_chat(src, "You switch to combat mode.") toggle = FALSE else a_intent = INTENT_HELP @@ -59,10 +59,10 @@ damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) melee_damage_lower = 0 melee_damage_upper = 0 - src << "You switch to healing mode." + to_chat(src, "You switch to healing mode.") toggle = TRUE else - src << "You have to be recalled to toggle modes!" + to_chat(src, "You have to be recalled to toggle modes!") /mob/living/simple_animal/hostile/guardian/healer/verb/Beacon() @@ -71,7 +71,7 @@ set desc = "Mark a floor as your beacon point, allowing you to warp targets to it. Your beacon will not work at extreme distances." if(beacon_cooldown >= world.time) - src << "Your power is on cooldown. You must wait five minutes between placing beacons." + to_chat(src, "Your power is on cooldown. You must wait five minutes between placing beacons.") return var/turf/beacon_loc = get_turf(src.loc) @@ -84,7 +84,7 @@ beacon = new(beacon_loc, src) - src << "Beacon placed! You may now warp targets and objects to it, including your user, via Alt+Click." + to_chat(src, "Beacon placed! You may now warp targets and objects to it, including your user, via Alt+Click.") beacon_cooldown = world.time + 3000 @@ -93,7 +93,7 @@ icon = 'icons/turf/floors.dmi' desc = "A recieving zone for bluespace teleportations." icon_state = "light_on-w" - luminosity = 1 + light_range = 1 density = FALSE anchored = TRUE layer = ABOVE_OPEN_TURF_LAYER @@ -111,30 +111,30 @@ if(!istype(A)) return if(src.loc == summoner) - src << "You must be manifested to warp a target!" + to_chat(src, "You must be manifested to warp a target!") return if(!beacon) - src << "You need a beacon placed to warp things!" + to_chat(src, "You need a beacon placed to warp things!") return if(!Adjacent(A)) - src << "You must be adjacent to your target!" + to_chat(src, "You must be adjacent to your target!") return if(A.anchored) - src << "Your target cannot be anchored!" + to_chat(src, "Your target cannot be anchored!") return var/turf/T = get_turf(A) if(beacon.z != T.z) - src << "The beacon is too far away to warp to!" + to_chat(src, "The beacon is too far away to warp to!") return - src << "You begin to warp [A]." + to_chat(src, "You begin to warp [A].") A.visible_message("[A] starts to glow faintly!", \ "You start to faintly glow, and you feel strangely weightless!") do_attack_animation(A, null, 1) if(!do_mob(src, A, 60)) //now start the channel - src << "You need to hold still!" + to_chat(src, "You need to hold still!") return new /obj/effect/overlay/temp/guardian/phase/out(T) diff --git a/code/modules/mob/living/simple_animal/hostile/alien.dm b/code/modules/mob/living/simple_animal/hostile/alien.dm index 32f1c8cc95..accf6eda2c 100644 --- a/code/modules/mob/living/simple_animal/hostile/alien.dm +++ b/code/modules/mob/living/simple_animal/hostile/alien.dm @@ -12,7 +12,7 @@ response_harm = "hits" speed = 0 butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/meat/slab/xeno = 4, - /obj/item/stack/sheet/animalhide/xeno = 1, /obj/item/organ/tongue/alien = 1) + /obj/item/stack/sheet/animalhide/xeno = 1) maxHealth = 125 health = 125 harm_intent_damage = 5 @@ -33,9 +33,9 @@ see_invisible = SEE_INVISIBLE_MINIMUM unique_name = 1 gold_core_spawnable = 0 - devourable = 1 death_sound = 'sound/voice/hiss6.ogg' deathmessage = "lets out a waning guttural screech, green blood bubbling from its maw..." + devourable = 1 /mob/living/simple_animal/hostile/alien/drone name = "alien drone" diff --git a/code/modules/mob/living/simple_animal/hostile/bear.dm b/code/modules/mob/living/simple_animal/hostile/bear.dm index 68853d8119..71f5583d26 100644 --- a/code/modules/mob/living/simple_animal/hostile/bear.dm +++ b/code/modules/mob/living/simple_animal/hostile/bear.dm @@ -21,7 +21,6 @@ maxHealth = 60 health = 60 var/armored = FALSE - devourable = 1 obj_damage = 60 melee_damage_lower = 20 @@ -37,6 +36,7 @@ faction = list("russian") gold_core_spawnable = 1 + devourable = 1 //SPACE BEARS! SQUEEEEEEEE~ OW! FUCK! IT BIT MY HAND OFF!! /mob/living/simple_animal/hostile/bear/Hudson @@ -87,7 +87,7 @@ if(istype(target, /mob/living/simple_animal/hostile/bear) && proximity_flag) var/mob/living/simple_animal/hostile/bear/A = target if(A.armored) - user << "[A] has already been armored up!" + to_chat(user, "[A] has already been armored up!") return A.armored = TRUE A.maxHealth += 60 @@ -96,7 +96,7 @@ A.melee_damage_lower += 5 A.melee_damage_upper += 5 A.update_icons() - user << "You strap the armor plating to [A] and sharpen [A.p_their()] claws with the nail filer. This was a great idea." + to_chat(user, "You strap the armor plating to [A] and sharpen [A.p_their()] claws with the nail filer. This was a great idea.") qdel(src) diff --git a/code/modules/mob/living/simple_animal/hostile/bees.dm b/code/modules/mob/living/simple_animal/hostile/bees.dm index 84059e663c..fba21e3663 100644 --- a/code/modules/mob/living/simple_animal/hostile/bees.dm +++ b/code/modules/mob/living/simple_animal/hostile/bees.dm @@ -56,7 +56,7 @@ return 1 -/mob/living/simple_animal/hostile/poison/bees/New() +/mob/living/simple_animal/hostile/poison/bees/Initialize() ..() generate_bee_visuals() @@ -81,7 +81,7 @@ ..() if(!beehome) - user << "This bee is homeless!" + to_chat(user, "This bee is homeless!") /mob/living/simple_animal/hostile/poison/bees/proc/generate_bee_visuals() @@ -209,7 +209,7 @@ BB.bees |= src beehome = BB -/mob/living/simple_animal/hostile/poison/bees/toxin/New() +/mob/living/simple_animal/hostile/poison/bees/toxin/Initialize() . = ..() var/datum/reagent/R = pick(typesof(/datum/reagent/toxin)) assign_reagent(chemical_reagents_list[initial(R.id)]) @@ -270,7 +270,7 @@ user.put_in_active_hand(qb) user.visible_message("[user] injects [src] with royal bee jelly, causing it to split into two bees, MORE BEES!","You inject [src] with royal bee jelly, causing it to split into two bees, MORE BEES!") else - user << "You don't have enough royal bee jelly to split a bee in two!" + to_chat(user, "You don't have enough royal bee jelly to split a bee in two!") else var/datum/reagent/R = chemical_reagents_list[S.reagents.get_master_reagent_id()] if(R && S.reagents.has_reagent(R.id, 5)) @@ -279,16 +279,16 @@ user.visible_message("[user] injects [src]'s genome with [R.name], mutating it's DNA!","You inject [src]'s genome with [R.name], mutating it's DNA!") name = queen.name else - user << "You don't have enough units of that chemical to modify the bee's DNA!" + to_chat(user, "You don't have enough units of that chemical to modify the bee's DNA!") ..() -/obj/item/queen_bee/bought/New() +/obj/item/queen_bee/bought/Initialize() ..() queen = new(src) /obj/item/queen_bee/Destroy() - qdel(queen) + QDEL_NULL(queen) return ..() diff --git a/code/modules/mob/living/simple_animal/hostile/bosses/boss.dm b/code/modules/mob/living/simple_animal/hostile/bosses/boss.dm index 17e5856ca5..154afc47bc 100644 --- a/code/modules/mob/living/simple_animal/hostile/bosses/boss.dm +++ b/code/modules/mob/living/simple_animal/hostile/bosses/boss.dm @@ -11,7 +11,7 @@ var/point_regen_delay = 1 -/mob/living/simple_animal/hostile/boss/New() +/mob/living/simple_animal/hostile/boss/Initialize() ..() atb = new() @@ -36,7 +36,7 @@ AB.boss = null AB.Remove(src) qdel(AB) - del(boss_abilities) + boss_abilities.Cut() return ..() @@ -90,7 +90,7 @@ /datum/boss_active_timed_battle/New() ..() - SSobj.processing.Add(src) + START_PROCESSING(SSobj, src) /datum/boss_active_timed_battle/proc/assign_abilities(list/L) diff --git a/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm b/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm index 654030e0d5..873476fd46 100644 --- a/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm +++ b/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm @@ -5,6 +5,7 @@ boss_abilities = list(/datum/action/boss/wizard_summon_minions, /datum/action/boss/wizard_mimic) faction = list("hostile","stickman") del_on_death = TRUE + icon = 'icons/mob/simple_human.dmi' icon_state = "paperwizard" ranged = 1 environment_smash = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/carp.dm b/code/modules/mob/living/simple_animal/hostile/carp.dm index e715fbc1c7..c26b631632 100644 --- a/code/modules/mob/living/simple_animal/hostile/carp.dm +++ b/code/modules/mob/living/simple_animal/hostile/carp.dm @@ -16,7 +16,6 @@ speed = 0 maxHealth = 25 health = 25 - devourable = 1 harm_intent_damage = 8 obj_damage = 50 @@ -35,6 +34,7 @@ movement_type = FLYING pressure_resistance = 200 gold_core_spawnable = 1 + devourable = 1 /mob/living/simple_animal/hostile/carp/Process_Spacemove(movement_dir = 0) return 1 //No drifting in space for space carp! //original comments do not steal diff --git a/code/modules/mob/living/simple_animal/hostile/flan.dm b/code/modules/mob/living/simple_animal/hostile/flan.dm index 1d0bfd9aac..c77fff881e 100644 --- a/code/modules/mob/living/simple_animal/hostile/flan.dm +++ b/code/modules/mob/living/simple_animal/hostile/flan.dm @@ -34,7 +34,7 @@ var/spelldamage = 15 var/spellcasttime = 15 //if you varedit this also varedit ranged_cooldown_time else the mob will attack again before the spell hits, looking weird but still working -/mob/living/simple_animal/hostile/flan/New() //Required for the inheritance of casting animations. +/mob/living/simple_animal/hostile/flan/Initialize() //Required for the inheritance of casting animations. ..() casting = 0 icon_state = "[initial(icon_state)][casting]" 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 4b9b18a122..dacae72632 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -50,6 +50,7 @@ see_invisible = SEE_INVISIBLE_MINIMUM see_in_dark = 4 var/playable_spider = FALSE + devourable = 1 /mob/living/simple_animal/hostile/poison/giant_spider/Topic(href, href_list) if(href_list["activate"]) @@ -68,7 +69,7 @@ if(spider_ask == "No" || !src || QDELETED(src)) return 1 if(key) - user << "Someone else already took this spider." + to_chat(user, "Someone else already took this spider.") return 1 key = user.key return 1 @@ -260,9 +261,9 @@ if(stat == DEAD) return if(E) - src << "There is already a cluster of eggs here!" + to_chat(src, "There is already a cluster of eggs here!") else if(!fed) - src << "You are too hungry to do this!" + to_chat(src, "You are too hungry to do this!") else if(busy != LAYING_EGGS) busy = LAYING_EGGS src.visible_message("\the [src] begins to lay a cluster of eggs.") diff --git a/code/modules/mob/living/simple_animal/hostile/headcrab.dm b/code/modules/mob/living/simple_animal/hostile/headcrab.dm index 2595ec03a3..5d7df29197 100644 --- a/code/modules/mob/living/simple_animal/hostile/headcrab.dm +++ b/code/modules/mob/living/simple_animal/hostile/headcrab.dm @@ -46,10 +46,10 @@ var/mob/living/carbon/C = target if(C.stat == DEAD) if(C.status_flags & XENO_HOST) - src << "A foreign presence repels us from this body. Perhaps we should try to infest another?" + to_chat(src, "A foreign presence repels us from this body. Perhaps we should try to infest another?") return Infect(target) - src << "With our egg laid, our death approaches rapidly..." + to_chat(src, "With our egg laid, our death approaches rapidly...") spawn(100) death() return diff --git a/code/modules/mob/living/simple_animal/hostile/hivebot.dm b/code/modules/mob/living/simple_animal/hostile/hivebot.dm index ed1062b49b..e0eb8aad29 100644 --- a/code/modules/mob/living/simple_animal/hostile/hivebot.dm +++ b/code/modules/mob/living/simple_animal/hostile/hivebot.dm @@ -28,7 +28,7 @@ del_on_death = 1 loot = list(/obj/effect/decal/cleanable/robot_debris) -/mob/living/simple_animal/hostile/hivebot/New() +/mob/living/simple_animal/hostile/hivebot/Initialize() ..() deathmessage = "[src] blows apart!" diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index aac60f82fe..13fb015cda 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -54,7 +54,7 @@ var/lose_patience_timeout = 300 //30 seconds by default, so there's no major changes to AI behaviour, beyond actually bailing if stuck forever -/mob/living/simple_animal/hostile/New() +/mob/living/simple_animal/hostile/Initialize() ..() if(!targets_from) @@ -103,10 +103,8 @@ //////////////HOSTILE MOB TARGETTING AND AGGRESSION//////////// /mob/living/simple_animal/hostile/proc/ListTargets()//Step 1, find out what we can see - . = list() if(!search_objects) - var/list/Mobs = hearers(vision_range, targets_from) - src //Remove self, so we don't suicide - . += Mobs + . = hearers(vision_range, targets_from) - src //Remove self, so we don't suicide var/static/hostile_machines = typecacheof(list(/obj/machinery/porta_turret, /obj/mecha, /obj/structure/destructible/clockwork/ocular_warden)) @@ -114,8 +112,7 @@ if(can_see(targets_from, HM, vision_range)) . += HM else - var/list/Objects = oview(vision_range, targets_from) - . += Objects + . = oview(vision_range, targets_from) /mob/living/simple_animal/hostile/proc/FindTarget(var/list/possible_targets, var/HasTargetsList = 0)//Step 2, filter down possible targets to things we actually care about . = list() @@ -438,4 +435,4 @@ /mob/living/simple_animal/hostile/proc/RegainSearchObjects(value) if(!value) value = initial(search_objects) - search_objects = value \ No newline at end of file + search_objects = value diff --git a/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm b/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm index 7f6419fc2f..5335cd7e35 100644 --- a/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm +++ b/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm @@ -39,7 +39,7 @@ spawn_mecha_type = null search_objects = 2 -/mob/living/simple_animal/hostile/syndicate/mecha_pilot/no_mech/New() +/mob/living/simple_animal/hostile/syndicate/mecha_pilot/no_mech/Initialize() ..() wanted_objects = typecacheof(/obj/mecha/combat, ignore_root_path=TRUE) @@ -59,7 +59,7 @@ faction = list("nanotrasen") -/mob/living/simple_animal/hostile/syndicate/mecha_pilot/New() +/mob/living/simple_animal/hostile/syndicate/mecha_pilot/Initialize() ..() if(spawn_mecha_type) var/obj/mecha/M = new spawn_mecha_type (get_turf(src)) 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 635b7e21b6..3516cb1492 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -103,7 +103,7 @@ Difficulty: Hard INVOKE_ASYNC(src, .proc/warp_charge) -/mob/living/simple_animal/hostile/megafauna/bubblegum/New() +/mob/living/simple_animal/hostile/megafauna/bubblegum/Initialize() ..() for(var/mob/living/simple_animal/hostile/megafauna/bubblegum/B in mob_list) if(B != src) @@ -251,7 +251,7 @@ Difficulty: Hard sleep(2.5) for(var/mob/living/L in T) if(!faction_check_mob(L)) - L << "[src] rends you!" + to_chat(L, "[src] rends you!") playsound(T, attack_sound, 100, 1, -1) var/limb_to_hit = L.get_bodypart(pick("head", "chest", "r_arm", "l_arm", "r_leg", "l_leg")) L.apply_damage(25, BRUTE, limb_to_hit, L.run_armor_check(limb_to_hit, "melee", null, null, armour_penetration)) @@ -267,7 +267,7 @@ Difficulty: Hard sleep(6) for(var/mob/living/L in T) if(!faction_check_mob(L)) - L << "[src] drags you through the blood!" + to_chat(L, "[src] drags you through the blood!") playsound(T, 'sound/magic/enter_blood.ogg', 100, 1, -1) var/turf/targetturf = get_step(src, dir) L.forceMove(targetturf) 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 65172fc9a1..20aa46db2e 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm @@ -91,7 +91,7 @@ Difficulty: Very Hard INVOKE_ASYNC(src, .proc/alternating_dir_shots) -/mob/living/simple_animal/hostile/megafauna/colossus/New() +/mob/living/simple_animal/hostile/megafauna/colossus/Initialize() ..() internal = new/obj/item/device/gps/internal/colossus(src) @@ -101,11 +101,11 @@ Difficulty: Very Hard icon = 'icons/effects/effects.dmi' icon_state = "at_shield2" layer = FLY_LAYER - luminosity = 2 + light_range = 2 duration = 8 var/target -/obj/effect/overlay/temp/at_shield/New(new_loc, new_target) +/obj/effect/overlay/temp/at_shield/Initialize(mapload, new_target) ..() target = new_target INVOKE_ASYNC(src, /atom/movable/proc/orbit, target, 0, FALSE, 0, 0, FALSE, TRUE) @@ -272,7 +272,7 @@ Difficulty: Very Hard icon_state = "blackbox" icon_on = "blackbox" icon_off = "blackbox" - luminosity = 8 + light_range = 8 max_n_of_items = INFINITY resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF pixel_y = -4 @@ -365,7 +365,7 @@ Difficulty: Very Hard desc = "A strange chunk of crystal, being in the presence of it fills you with equal parts excitement and dread." icon = 'icons/obj/lavaland/artefacts.dmi' icon_state = "anomaly_crystal" - luminosity = 8 + light_range = 8 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF use_power = 0 density = 1 @@ -616,7 +616,7 @@ Difficulty: Very Hard verb_exclaim = "zaps" verb_yell = "bangs" damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 0, CLONE = 0, STAMINA = 0, OXY = 0) - luminosity = 4 + light_range = 4 faction = list("neutral") languages_spoken = SLIME languages_understood = ALL @@ -631,7 +631,7 @@ Difficulty: Very Hard stop_automated_movement = 1 var/heal_power = 5 -/mob/living/simple_animal/hostile/lightgeist/New() +/mob/living/simple_animal/hostile/lightgeist/Initialize() ..() verbs -= /mob/living/verb/pulled verbs -= /mob/verb/me_verb diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm index e6de280cd0..b3fb02394a 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm @@ -53,7 +53,7 @@ Difficulty: Medium deathmessage = "collapses into a pile of bones, its flesh sloughing away." death_sound = 'sound/magic/demon_dies.ogg' -/mob/living/simple_animal/hostile/megafauna/dragon/New() +/mob/living/simple_animal/hostile/megafauna/dragon/Initialize() ..() internal = new/obj/item/device/gps/internal/dragon(src) @@ -96,7 +96,7 @@ Difficulty: Medium duration = 12 pixel_z = 500 -/obj/effect/overlay/temp/fireball/New(loc) +/obj/effect/overlay/temp/fireball/Initialize(loc) ..() animate(src, pixel_z = 0, time = 12) @@ -104,7 +104,7 @@ Difficulty: Medium icon = 'icons/mob/actions.dmi' icon_state = "sniper_zoom" layer = BELOW_MOB_LAYER - luminosity = 2 + light_range = 2 duration = 12 /obj/effect/overlay/temp/dragon_swoop @@ -121,7 +121,7 @@ Difficulty: Medium /obj/effect/overlay/temp/target/ex_act() return -/obj/effect/overlay/temp/target/New(loc) +/obj/effect/overlay/temp/target/Initialize(loc) ..() INVOKE_ASYNC(src, .proc/fall) @@ -178,7 +178,7 @@ Difficulty: Medium J.hotspot_expose(700,50,1) for(var/mob/living/L in J.contents - hit_things) L.adjustFireLoss(20) - L << "You're hit by the drake's fire breath!" + to_chat(L, "You're hit by the drake's fire breath!") hit_things += L previousturf = J sleep(1) @@ -247,7 +247,7 @@ Difficulty: Medium if(!istype(A)) return if(swoop_cooldown >= world.time) - src << "You need to wait 20 seconds between swoop attacks!" + to_chat(src, "You need to wait 20 seconds between swoop attacks!") return swoop_attack(1, A) @@ -271,4 +271,4 @@ Difficulty: Medium /mob/living/simple_animal/hostile/megafauna/dragon/lesser/grant_achievement(medaltype,scoretype) return -#undef MEDAL_PREFIX \ No newline at end of file +#undef MEDAL_PREFIX diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm index 0f98920bf3..7131eb2dd4 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm @@ -73,7 +73,7 @@ Difficulty: Hard del_on_death = TRUE death_sound = 'sound/magic/Repulse.ogg' -/mob/living/simple_animal/hostile/megafauna/hierophant/New() +/mob/living/simple_animal/hostile/megafauna/hierophant/Initialize() ..() internal = new/obj/item/device/gps/internal/hierophant(src) spawned_beacon = new(loc) @@ -116,9 +116,8 @@ Difficulty: Hard for(var/obj/item/W in L) if(!L.dropItemToGround(W)) qdel(W) - visible_message( - "\"[pick(kill_phrases)]\"\n[src] annihilates [L]!", - "You annihilate [L], restoring your health!") + visible_message("\"[pick(kill_phrases)]\"") + visible_message("[src] annihilates [L]!","You annihilate [L], restoring your health!") adjustHealth(-L.maxHealth*0.5) L.dust() @@ -435,7 +434,7 @@ Difficulty: Hard /obj/effect/overlay/temp/hierophant/squares icon_state = "hierophant_squares" duration = 3 - luminosity = 1 + light_range = 1 randomdir = FALSE /obj/effect/overlay/temp/hierophant/squares/New(loc, new_caster) @@ -448,7 +447,7 @@ Difficulty: Hard name = "vortex wall" icon = 'icons/turf/walls/hierophant_wall_temp.dmi' icon_state = "wall" - luminosity = 1 + light_range = 1 duration = 100 smooth = SMOOTH_TRUE @@ -551,7 +550,7 @@ Difficulty: Hard /obj/effect/overlay/temp/hierophant/blast icon_state = "hierophant_blast" name = "vortex blast" - luminosity = 1 + light_range = 1 desc = "Get out of the way!" duration = 9 var/damage = 10 //how much damage do we do? @@ -593,7 +592,7 @@ Difficulty: Hard if(L.client) flash_color(L.client, "#660099", 1) playsound(L,'sound/weapons/sear.ogg', 50, 1, -4) - L << "You're struck by a [name]!" + to_chat(L, "You're struck by a [name]!") var/limb_to_hit = L.get_bodypart(pick("head", "chest", "r_arm", "l_arm", "r_leg", "l_leg")) var/armor = L.run_armor_check(limb_to_hit, "melee", "Your armor absorbs [src]!", "Your armor blocks part of [src]!", 50, "Your armor was penetrated by [src]!") L.apply_damage(damage, BURN, limb_to_hit, armor) @@ -605,7 +604,7 @@ Difficulty: Hard if(M.occupant) if(friendly_fire_check && caster && caster.faction_check_mob(M.occupant)) continue - M.occupant << "Your [M.name] is struck by a [name]!" + to_chat(M.occupant, "Your [M.name] is struck by a [name]!") playsound(M,'sound/weapons/sear.ogg', 50, 1, -4) M.take_damage(damage, BURN, 0, 0) @@ -614,7 +613,7 @@ Difficulty: Hard desc = "A strange beacon, allowing mass teleportation for those able to use it." icon = 'icons/obj/lavaland/artefacts.dmi' icon_state = "hierophant_tele_off" - luminosity = 2 + light_range = 2 layer = LOW_OBJ_LAYER anchored = TRUE @@ -627,13 +626,13 @@ Difficulty: Hard if(H.timer > world.time) return if(H.beacon == src) - user << "You start removing your hierophant beacon..." + to_chat(user, "You start removing your hierophant beacon...") H.timer = world.time + 51 INVOKE_ASYNC(H, /obj/item/weapon/hierophant_club.proc/prepare_icon_update) if(do_after(user, 50, target = src)) playsound(src,'sound/magic/Blind.ogg', 200, 1, -4) new /obj/effect/overlay/temp/hierophant/telegraph/teleport(get_turf(src), user) - user << "You collect [src], reattaching it to the club!" + to_chat(user, "You collect [src], reattaching it to the club!") H.beacon = null user.update_action_buttons_icon() qdel(src) @@ -641,7 +640,7 @@ Difficulty: Hard H.timer = world.time INVOKE_ASYNC(H, /obj/item/weapon/hierophant_club.proc/prepare_icon_update) else - user << "You touch the beacon with the club, but nothing happens." + to_chat(user, "You touch the beacon with the club, but nothing happens.") else return ..() @@ -651,4 +650,4 @@ Difficulty: Hard desc = "Heed its words." invisibility = 100 -#undef MEDAL_PREFIX \ No newline at end of file +#undef MEDAL_PREFIX diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm index 6ebd3dc681..061d11d2e5 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm @@ -50,7 +50,7 @@ Difficulty: Medium appearance_flags = 0 mouse_opacity = 1 -/mob/living/simple_animal/hostile/megafauna/legion/New() +/mob/living/simple_animal/hostile/megafauna/legion/Initialize() ..() internal = new/obj/item/device/gps/internal/legion(src) @@ -156,7 +156,7 @@ Difficulty: Medium /obj/item/weapon/staff/storm/attack_self(mob/user) if(storm_cooldown > world.time) - user << "The staff is still recharging!" + to_chat(user, "The staff is still recharging!") return var/area/user_area = get_area(user) @@ -170,7 +170,7 @@ Difficulty: Medium if(A.stage != END_STAGE) if(A.stage == WIND_DOWN_STAGE) - user << "The storm is already ending! It would be a waste to use the staff now." + to_chat(user, "The storm is already ending! It would be a waste to use the staff now.") return user.visible_message("[user] holds [src] skywards as an orange beam travels into the sky!", \ "You hold [src] skyward, dispelling the storm!") 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 f0413fd6e2..a842e91fb8 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm @@ -10,7 +10,7 @@ sentience_type = SENTIENCE_BOSS environment_smash = 3 obj_damage = 400 - luminosity = 3 + light_range = 3 faction = list("mining", "boss") weather_immunities = list("lava","ash") movement_type = FLYING @@ -146,7 +146,7 @@ log_game("MEDAL ERROR: Could not contact hub to award medal:[medal] player:[player.ckey]") message_admins("Error! Failed to contact hub to award [medal] medal to [player.ckey]!") else if (result) - player << "Achievement unlocked: [medal]!" + to_chat(player, "Achievement unlocked: [medal]!") /proc/SetScore(score,client/player,increment,force) @@ -209,7 +209,7 @@ log_game("MEDAL ERROR: Could not contact hub to get medal:[medal] player:[player.ckey]") message_admins("Error! Failed to contact hub to get [medal] medal for [player.ckey]!") else if (result) - player << "[medal] is unlocked" + to_chat(player, "[medal] is unlocked") /proc/LockMedal(medal,client/player) @@ -232,4 +232,4 @@ /proc/ClearScore(client/player) world.SetScores(player.ckey, "", global.medal_hub, global.medal_pass) -#undef MEDAL_PREFIX \ No newline at end of file +#undef MEDAL_PREFIX diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm index 940b673ea8..9ac4acd88c 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm @@ -65,7 +65,7 @@ var/global/list/AISwarmerCapsByType = list(/mob/living/simple_animal/hostile/swa var/static/list/swarmer_caps -/mob/living/simple_animal/hostile/megafauna/swarmer_swarm_beacon/New() +/mob/living/simple_animal/hostile/megafauna/swarmer_swarm_beacon/Initialize() ..() swarmer_caps = AISwarmerCapsByType //for admin-edits internal = new/obj/item/device/gps/internal/swarmer_beacon(src) @@ -108,7 +108,7 @@ var/global/list/AISwarmerCapsByType = list(/mob/living/simple_animal/hostile/swa AIStatus = AI_ON -/mob/living/simple_animal/hostile/swarmer/ai/New() +/mob/living/simple_animal/hostile/swarmer/ai/Initialize() ..() ToggleLight() //so you can see them eating you out of house and home/shooting you/stunlocking you for eternity LAZYINITLIST(AISwarmersByType[type]) @@ -178,7 +178,7 @@ var/global/list/AISwarmerCapsByType = list(/mob/living/simple_animal/hostile/swa var/static/list/sharedIgnore = list() -/mob/living/simple_animal/hostile/swarmer/ai/resource/New() +/mob/living/simple_animal/hostile/swarmer/ai/resource/Initialize() ..() sharedWanted = typecacheof(sharedWanted) sharedIgnore = typecacheof(sharedIgnore) diff --git a/code/modules/mob/living/simple_animal/hostile/mimic.dm b/code/modules/mob/living/simple_animal/hostile/mimic.dm index 0b9f2c4d2e..babdbf28ad 100644 --- a/code/modules/mob/living/simple_animal/hostile/mimic.dm +++ b/code/modules/mob/living/simple_animal/hostile/mimic.dm @@ -110,8 +110,8 @@ var/global/list/protected_objects = list(/obj/structure/table, /obj/structure/ca var/image/googly_eyes = null gold_core_spawnable = 0 -/mob/living/simple_animal/hostile/mimic/copy/New(loc, obj/copy, mob/living/creator, destroy_original = 0) - ..(loc) +/mob/living/simple_animal/hostile/mimic/copy/Initialize(mapload, obj/copy, mob/living/creator, destroy_original = 0) + ..() CopyObject(copy, creator, destroy_original) /mob/living/simple_animal/hostile/mimic/copy/Life() diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm index 2b588b8ff3..3cf5529c25 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm @@ -141,7 +141,7 @@ var/chase_time = 100 var/will_burrow = TRUE -/mob/living/simple_animal/hostile/asteroid/goldgrub/New() +/mob/living/simple_animal/hostile/asteroid/goldgrub/Initialize() ..() var/i = rand(1,3) while(i) @@ -249,7 +249,7 @@ var/inert = 0 var/preserved = 0 -/obj/item/organ/hivelord_core/New() +/obj/item/organ/hivelord_core/Initialize() ..() addtimer(CALLBACK(src, .proc/inert_check), 2400) @@ -289,17 +289,17 @@ if(proximity_flag && ishuman(target)) var/mob/living/carbon/human/H = target if(inert) - user << "[src] has become inert, its healing properties are no more." + to_chat(user, "[src] has become inert, its healing properties are no more.") return else if(H.stat == DEAD) - user << "[src] are useless on the dead." + to_chat(user, "[src] are useless on the dead.") return if(H != user) H.visible_message("[user] forces [H] to apply [src]... [H.p_they()] quickly regenerate all injuries!") feedback_add_details("hivelord_core","[src.type]|used|other") else - user << "You start to smear [src] on yourself. It feels and smells disgusting, but you feel amazingly refreshed in mere moments." + to_chat(user, "You start to smear [src] on yourself. It feels and smells disgusting, but you feel amazingly refreshed in mere moments.") feedback_add_details("hivelord_core","[src.type]|used|self") H.revive(full_heal = 1) qdel(src) @@ -337,7 +337,7 @@ pass_flags = PASSTABLE del_on_death = 1 -/mob/living/simple_animal/hostile/asteroid/hivelordbrood/New() +/mob/living/simple_animal/hostile/asteroid/hivelordbrood/Initialize() ..() addtimer(CALLBACK(src, .proc/death), 100) @@ -355,7 +355,7 @@ reagents.reaction(get_turf(src)) ..() -/mob/living/simple_animal/hostile/asteroid/hivelordbrood/blood/New() +/mob/living/simple_animal/hostile/asteroid/hivelordbrood/blood/Initialize() create_reagents(30) ..() @@ -537,10 +537,10 @@ var/list/current_armor = C.armor if(current_armor.["melee"] < 60) current_armor.["melee"] = min(current_armor.["melee"] + 10, 60) - user << "You strengthen [target], improving its resistance against melee attacks." + to_chat(user, "You strengthen [target], improving its resistance against melee attacks.") use(1) else - user << "You can't improve [C] any further!" + to_chat(user, "You can't improve [C] any further!") return if(istype(target, /obj/mecha/working/ripley)) var/obj/mecha/working/ripley/D = target @@ -549,7 +549,7 @@ D.armor["melee"] = min(D.armor["melee"] + 10, 70) D.armor["bullet"] = min(D.armor["bullet"] + 5, 50) D.armor["laser"] = min(D.armor["laser"] + 5, 50) - user << "You strengthen [target], improving its resistance against melee attacks." + to_chat(user, "You strengthen [target], improving its resistance against melee attacks.") D.update_icon() if(D.hides == 3) D.desc = "Autonomous Power Loader Unit. It's wearing a fearsome carapace entirely composed of goliath hide plates - its pilot must be an experienced monster hunter." @@ -557,7 +557,7 @@ D.desc = "Autonomous Power Loader Unit. Its armour is enhanced with some goliath hide plates." qdel(src) else - user << "You can't improve [D] any further!" + to_chat(user, "You can't improve [D] any further!") return @@ -620,13 +620,13 @@ set category = "Fugu" set desc = "Temporarily increases your size, and makes you significantly more dangerous and tough." if(wumbo) - src << "You're already inflated." + to_chat(src, "You're already inflated.") return if(inflate_cooldown) - src << "We need time to gather our strength." + to_chat(src, "We need time to gather our strength.") return if(buffed) - src << "Something is interfering with our growth." + to_chat(src, "Something is interfering with our growth.") return wumbo = 1 icon_state = "Fugu_big" @@ -682,7 +682,7 @@ if(proximity_flag && istype(target, /mob/living/simple_animal)) var/mob/living/simple_animal/A = target if(A.buffed || (A.type in banned_mobs) || A.stat) - user << "Something's interfering with the [src]'s effects. It's no use." + to_chat(user, "Something's interfering with the [src]'s effects. It's no use.") return A.buffed++ A.maxHealth *= 1.5 @@ -691,7 +691,7 @@ A.melee_damage_upper = max((A.melee_damage_upper * 2), 10) A.transform *= 2 A.environment_smash += 2 - user << "You increase the size of [A], giving it a surge of strength!" + to_chat(user, "You increase the size of [A], giving it a surge of strength!") qdel(src) /////////////////////Lavaland @@ -896,7 +896,7 @@ wanted_objects = list(/obj/effect/decal/cleanable/xenoblood/xgibs, /obj/effect/decal/cleanable/blood/gibs/) var/obj/item/udder/gutlunch/udder = null -/mob/living/simple_animal/hostile/asteroid/gutlunch/New() +/mob/living/simple_animal/hostile/asteroid/gutlunch/Initialize() udder = new() ..() @@ -946,7 +946,7 @@ name = "gubbuck" gender = MALE -/mob/living/simple_animal/hostile/asteroid/gutlunch/gubbuck/New() +/mob/living/simple_animal/hostile/asteroid/gutlunch/gubbuck/Initialize() ..() add_atom_colour(pick("#E39FBB", "#D97D64", "#CF8C4A"), FIXED_COLOUR_PRIORITY) resize = 0.85 @@ -993,7 +993,7 @@ del_on_death = 1 var/gps = null -/mob/living/simple_animal/hostile/spawner/lavaland/New() +/mob/living/simple_animal/hostile/spawner/lavaland/Initialize() ..() for(var/F in RANGE_TURFS(1, src)) if(ismineralturf(F)) diff --git a/code/modules/mob/living/simple_animal/hostile/mushroom.dm b/code/modules/mob/living/simple_animal/hostile/mushroom.dm index fc00f7177e..4df916ca9a 100644 --- a/code/modules/mob/living/simple_animal/hostile/mushroom.dm +++ b/code/modules/mob/living/simple_animal/hostile/mushroom.dm @@ -39,16 +39,16 @@ /mob/living/simple_animal/hostile/mushroom/examine(mob/user) ..() if(health >= maxHealth) - user << "It looks healthy." + to_chat(user, "It looks healthy.") else - user << "It looks like it's been roughed up." + to_chat(user, "It looks like it's been roughed up.") /mob/living/simple_animal/hostile/mushroom/Life() ..() if(!stat)//Mushrooms slowly regenerate if conscious, for people who want to save them from being eaten adjustBruteLoss(-2) -/mob/living/simple_animal/hostile/mushroom/New()//Makes every shroom a little unique +/mob/living/simple_animal/hostile/mushroom/Initialize()//Makes every shroom a little unique melee_damage_lower += rand(3, 5) melee_damage_upper += rand(10,20) maxHealth += rand(40,60) @@ -137,7 +137,7 @@ Recover() qdel(I) else - user << "[src] won't eat it!" + to_chat(user, "[src] won't eat it!") return if(I.force) Bruise() diff --git a/code/modules/mob/living/simple_animal/hostile/nanotrasen.dm b/code/modules/mob/living/simple_animal/hostile/nanotrasen.dm index 112370b2b2..b205c14635 100644 --- a/code/modules/mob/living/simple_animal/hostile/nanotrasen.dm +++ b/code/modules/mob/living/simple_animal/hostile/nanotrasen.dm @@ -1,6 +1,7 @@ /mob/living/simple_animal/hostile/nanotrasen name = "Nanotrasen Private Security Officer" desc = "An officer part of Nanotrasen's private security force, he seems rather unpleased to meet you." + icon = 'icons/mob/simple_human.dmi' icon_state = "nanotrasen" icon_living = "nanotrasen" icon_dead = null diff --git a/code/modules/mob/living/simple_animal/hostile/pirate.dm b/code/modules/mob/living/simple_animal/hostile/pirate.dm index 76263907a8..ab94f6a76a 100644 --- a/code/modules/mob/living/simple_animal/hostile/pirate.dm +++ b/code/modules/mob/living/simple_animal/hostile/pirate.dm @@ -1,6 +1,7 @@ /mob/living/simple_animal/hostile/pirate name = "Pirate" desc = "Does what he wants cause a pirate is free." + icon = 'icons/mob/simple_human.dmi' icon_state = "piratemelee" icon_living = "piratemelee" icon_dead = "piratemelee_dead" 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 7a044f5c79..f0029af0d3 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm @@ -1,6 +1,7 @@ /mob/living/simple_animal/hostile/retaliate/clown name = "Clown" desc = "A denizen of clown planet" + icon = 'icons/mob/simple_human.dmi' icon_state = "clown" icon_living = "clown" icon_dead = "clown_dead" diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm index 0d93a7f2b4..6e37d62f9e 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm @@ -24,8 +24,9 @@ pass_flags = PASSTABLE | PASSGRILLE | PASSMOB mob_size = MOB_SIZE_TINY gold_core_spawnable = 1 + devourable = 1 -/mob/living/simple_animal/hostile/retaliate/frog/New() +/mob/living/simple_animal/hostile/retaliate/frog/Initialize() ..() if(prob(1)) name = "rare frog" diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/ghost.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/ghost.dm index 5321cce2af..0353b6b3a0 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/ghost.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/ghost.dm @@ -38,7 +38,7 @@ var/image/ghost_facial_hair = null var/random = TRUE //if you want random names for ghosts or not -/mob/living/simple_animal/hostile/retaliate/ghost/New() +/mob/living/simple_animal/hostile/retaliate/ghost/Initialize() ..() if(!random) give_hair() diff --git a/code/modules/mob/living/simple_animal/hostile/russian.dm b/code/modules/mob/living/simple_animal/hostile/russian.dm index 25d1054e17..4a30db8b4b 100644 --- a/code/modules/mob/living/simple_animal/hostile/russian.dm +++ b/code/modules/mob/living/simple_animal/hostile/russian.dm @@ -1,6 +1,7 @@ /mob/living/simple_animal/hostile/russian name = "Russian" desc = "For the Motherland!" + icon = 'icons/mob/simple_human.dmi' icon_state = "russianmelee" icon_living = "russianmelee" icon_dead = "russianmelee_dead" diff --git a/code/modules/mob/living/simple_animal/hostile/skeleton.dm b/code/modules/mob/living/simple_animal/hostile/skeleton.dm index 833e70dac0..1df25557ce 100644 --- a/code/modules/mob/living/simple_animal/hostile/skeleton.dm +++ b/code/modules/mob/living/simple_animal/hostile/skeleton.dm @@ -1,6 +1,7 @@ /mob/living/simple_animal/hostile/skeleton name = "reanimated skeleton" desc = "A real bonefied skeleton, doesn't seem like it wants to socialize." + icon = 'icons/mob/simple_human.dmi' icon_state = "skeleton" icon_living = "skeleton" icon_dead = "skeleton" diff --git a/code/modules/mob/living/simple_animal/hostile/statue.dm b/code/modules/mob/living/simple_animal/hostile/statue.dm index f38ee85705..3d9d959160 100644 --- a/code/modules/mob/living/simple_animal/hostile/statue.dm +++ b/code/modules/mob/living/simple_animal/hostile/statue.dm @@ -51,7 +51,7 @@ // No movement while seen code. -/mob/living/simple_animal/hostile/statue/New(loc, var/mob/living/creator) +/mob/living/simple_animal/hostile/statue/Initialize(mapload, var/mob/living/creator) ..() // Give spells mob_spell_list += new /obj/effect/proc_holder/spell/aoe_turf/flicker_lights(src) @@ -74,7 +74,7 @@ /mob/living/simple_animal/hostile/statue/Move(turf/NewLoc) if(can_be_seen(NewLoc)) if(client) - src << "You cannot move, there are eyes on you!" + to_chat(src, "You cannot move, there are eyes on you!") return 0 return ..() @@ -92,7 +92,7 @@ /mob/living/simple_animal/hostile/statue/AttackingTarget() if(can_be_seen(get_turf(loc))) if(client) - src << "You cannot attack, there are eyes on you!" + to_chat(src, "You cannot attack, there are eyes on you!") return else ..() @@ -111,7 +111,7 @@ // Check for darkness var/turf/T = get_turf(loc) if(T && destination && T.lighting_object) - if(T.lighting_lumcount<1 && destination.lighting_lumcount<1) // No one can see us in the darkness, right? + if(T.get_lumcount()<0.1 && destination.get_lumcount()<0.1) // No one can see us in the darkness, right? return null if(T == destination) destination = null diff --git a/code/modules/mob/living/simple_animal/hostile/stickman.dm b/code/modules/mob/living/simple_animal/hostile/stickman.dm index 3fcdc3e37a..3f4267e164 100644 --- a/code/modules/mob/living/simple_animal/hostile/stickman.dm +++ b/code/modules/mob/living/simple_animal/hostile/stickman.dm @@ -50,7 +50,7 @@ icon_living = "stickdog" icon_dead = "stickdog_dead" -/mob/living/simple_animal/hostile/stickman/New(var/turf/loc, var/wizard_summoned) +/mob/living/simple_animal/hostile/stickman/Initialize(mapload, var/wizard_summoned) ..() new /obj/effect/overlay/temp/paper_scatter(src) summoned_by_wizard = wizard_summoned diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/hostile/syndicate.dm index 96d4c95d33..20724fe179 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm +++ b/code/modules/mob/living/simple_animal/hostile/syndicate.dm @@ -12,6 +12,7 @@ /mob/living/simple_animal/hostile/syndicate name = "Syndicate Operative" desc = "Death to Nanotrasen." + icon = 'icons/mob/simple_human.dmi' icon_state = "syndicate" icon_living = "syndicate" icon_dead = "syndicate_dead" 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 6bfa9b46c5..ccfc3bd975 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 @@ -42,7 +42,7 @@ var/mob/living/L = AM if(!("vines" in L.faction)) L.adjustBruteLoss(5) - L << "You cut yourself on the thorny vines." + to_chat(L, "You cut yourself on the thorny vines.") @@ -107,7 +107,7 @@ if(A.density && A != L) continue grasping if(prob(grasp_chance)) - L << "\The [src] has you entangled!" + to_chat(L, "\The [src] has you entangled!") grasping[L] = Beam(L, "vine", time=INFINITY, maxdistance=5, beam_type=/obj/effect/ebeam/vine) break //only take 1 new victim per cycle diff --git a/code/modules/mob/living/simple_animal/hostile/wizard.dm b/code/modules/mob/living/simple_animal/hostile/wizard.dm index d51765e4da..efd5ee47c4 100644 --- a/code/modules/mob/living/simple_animal/hostile/wizard.dm +++ b/code/modules/mob/living/simple_animal/hostile/wizard.dm @@ -1,6 +1,7 @@ /mob/living/simple_animal/hostile/wizard name = "Space Wizard" desc = "EI NATH?" + icon = 'icons/mob/simple_human.dmi' icon_state = "wizard" icon_living = "wizard" icon_dead = "wizard_dead" @@ -36,7 +37,7 @@ var/next_cast = 0 -/mob/living/simple_animal/hostile/wizard/New() +/mob/living/simple_animal/hostile/wizard/Initialize() ..() fireball = new /obj/effect/proc_holder/spell/aimed/fireball fireball.clothes_req = 0 diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index d2ccf9bcae..2bca45ddf3 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -100,7 +100,7 @@ var/obj/item/held_item = null -/mob/living/simple_animal/parrot/New() +/mob/living/simple_animal/parrot/Initialize() ..() if(!ears) var/headset = pick(/obj/item/device/radio/headset/headset_sec, \ @@ -123,7 +123,7 @@ /mob/living/simple_animal/parrot/examine(mob/user) ..() if(stat) - user << pick("This parrot is no more", "This is a late parrot", "This is an ex-parrot") + to_chat(user, pick("This parrot is no more", "This is a late parrot", "This is an ex-parrot")) /mob/living/simple_animal/parrot/death(gibbed) if(held_item) @@ -219,19 +219,19 @@ if(copytext(possible_phrase,1,3) in department_radio_keys) possible_phrase = copytext(possible_phrase,3) else - usr << "There is nothing to remove from its [remove_from]!" + to_chat(usr, "There is nothing to remove from its [remove_from]!") return //Adding things to inventory else if(href_list["add_inv"]) var/add_to = href_list["add_inv"] if(!usr.get_active_held_item()) - usr << "You have nothing in your hand to put on its [add_to]!" + to_chat(usr, "You have nothing in your hand to put on its [add_to]!") return switch(add_to) if("ears") if(ears) - usr << "It's already wearing something!" + to_chat(usr, "It's already wearing something!") return else var/obj/item/item_to_add = usr.get_active_held_item() @@ -239,7 +239,7 @@ return if( !istype(item_to_add, /obj/item/device/radio/headset) ) - usr << "This object won't fit!" + to_chat(usr, "This object won't fit!") return var/obj/item/device/radio/headset/headset_to_add = item_to_add @@ -247,7 +247,7 @@ usr.drop_item() headset_to_add.loc = src src.ears = headset_to_add - usr << "You fit the headset onto [src]." + to_chat(usr, "You fit the headset onto [src].") clearlist(available_channels) for(var/ch in headset_to_add.channels) @@ -343,7 +343,7 @@ adjustBruteLoss(-10) speak_chance *= 1.27 // 20 crackers to go from 1% to 100% speech_shuffle_rate += 10 - user << "[src] eagerly devours the cracker." + to_chat(user, "[src] eagerly devours the cracker.") ..() return @@ -689,7 +689,7 @@ return -1 if(held_item) - src << "You are already holding [held_item]!" + to_chat(src, "You are already holding [held_item]!") return 1 for(var/obj/item/I in view(1,src)) @@ -705,7 +705,7 @@ visible_message("[src] grabs [held_item]!", "You grab [held_item]!", "You hear the sounds of wings flapping furiously.") return held_item - src << "There is nothing of interest to take!" + to_chat(src, "There is nothing of interest to take!") return 0 /mob/living/simple_animal/parrot/proc/steal_from_mob() @@ -717,7 +717,7 @@ return -1 if(held_item) - src << "You are already holding [held_item]!" + to_chat(src, "You are already holding [held_item]!") return 1 var/obj/item/stolen_item = null @@ -734,7 +734,7 @@ visible_message("[src] grabs [held_item] out of [C]'s hand!", "You snag [held_item] out of [C]'s hand!", "You hear the sounds of wings flapping furiously.") return held_item - src << "There is nothing of interest to take!" + to_chat(src, "There is nothing of interest to take!") return 0 /mob/living/simple_animal/parrot/verb/drop_held_item_player() @@ -759,7 +759,7 @@ if(!held_item) if(src == usr) //So that other mobs wont make this message appear when they're bludgeoning you. - src << "You have nothing to drop!" + to_chat(src, "You have nothing to drop!") return 0 @@ -778,11 +778,11 @@ var/obj/item/weapon/grenade/G = held_item G.loc = src.loc G.prime() - src << "You let go of [held_item]!" + to_chat(src, "You let go of [held_item]!") held_item = null return 1 - src << "You drop [held_item]." + to_chat(src, "You drop [held_item].") held_item.loc = src.loc held_item = null @@ -803,7 +803,7 @@ src.loc = AM.loc icon_state = "parrot_sit" return - src << "There is no perch nearby to sit on!" + to_chat(src, "There is no perch nearby to sit on!") return @@ -821,12 +821,12 @@ continue perch_on_human(H) return - src << "There is nobody nearby that you can sit on!" + to_chat(src, "There is nobody nearby that you can sit on!") else icon_state = "parrot_fly" parrot_state = PARROT_WANDER if(buckled) - src << "You are no longer sitting on [buckled]'s shoulder." + to_chat(src, "You are no longer sitting on [buckled]'s shoulder.") buckled.unbuckle_mob(src,force=1) buckled = null pixel_x = initial(pixel_x) @@ -843,7 +843,7 @@ pixel_x = pick(-8,8) //pick left or right shoulder icon_state = "parrot_sit" parrot_state = PARROT_PERCH - src << "You sit on [H]'s shoulder." + to_chat(src, "You sit on [H]'s shoulder.") /mob/living/simple_animal/parrot/proc/toggle_mode() @@ -860,7 +860,7 @@ else melee_damage_upper = parrot_damage_upper a_intent = INTENT_HARM - src << "You will now [a_intent] others..." + to_chat(src, "You will now [a_intent] others...") return /* @@ -869,7 +869,7 @@ /mob/living/simple_animal/parrot/Poly name = "Poly" desc = "Poly the Parrot. An expert on quantum cracker theory." - speak = list("Poly wanna cracker!", ":e Check the crystal, you chucklefucks!",":e Wire the solars, you lazy bums!",":e WHO TOOK THE DAMN HARDSUITS?",":e OH GOD ITS ABOUT TO DELAMINATE CALL THE SHUTTLE", ":e QUIT SUCKING EACH OTHER'S DICKS AND GET THE POWER ONLINE.", ":e STOP FUCKING EATING EACH OTHER, THE STATION IS GOING DARK!") + speak = list("Poly wanna cracker!", ":e Check the crystal, you chucklefucks!",":e Wire the solars, you lazy bums!",":e WHO TOOK THE DAMN HARDSUITS?",":e OH GOD ITS ABOUT TO DELAMINATE CALL THE SHUTTLE") gold_core_spawnable = 0 speak_chance = 3 var/memory_saved = 0 @@ -877,7 +877,7 @@ var/longest_survival = 0 var/longest_deathstreak = 0 -/mob/living/simple_animal/parrot/Poly/New() +/mob/living/simple_animal/parrot/Poly/Initialize() ears = new /obj/item/device/radio/headset/headset_eng(src) available_channels = list(":e") Read_Memory() @@ -950,7 +950,7 @@ incorporeal_move = 1 butcher_results = list(/obj/item/weapon/ectoplasm = 1) -/mob/living/simple_animal/parrot/Poly/ghost/New() +/mob/living/simple_animal/parrot/Poly/ghost/Initialize() memory_saved = 1 //At this point nothing is saved ..() diff --git a/code/modules/mob/living/simple_animal/shade.dm b/code/modules/mob/living/simple_animal/shade.dm index 8c62ccffff..f4b551828e 100644 --- a/code/modules/mob/living/simple_animal/shade.dm +++ b/code/modules/mob/living/simple_animal/shade.dm @@ -50,7 +50,7 @@ M.visible_message("[M] heals \the [src].", \ "You heal [src], leaving [src] at [health]/[maxHealth] health.") else - M << "You cannot heal [src], as [p_they()] [p_are()] unharmed!" + to_chat(M, "You cannot heal [src], as [p_they()] [p_are()] unharmed!") else if(src != M) ..() diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index b729b964e1..afaf7718e0 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -85,7 +85,7 @@ //domestication var/tame = 0 -/mob/living/simple_animal/New() +/mob/living/simple_animal/Initialize() ..() handcrafting = new() if(gender == PLURAL) @@ -235,7 +235,7 @@ if( abs(areatemp - bodytemperature) > 40 ) var/diff = areatemp - bodytemperature diff = diff / 5 - //world << "changed from [bodytemperature] by [diff] to [bodytemperature + diff]" + //to_chat(world, "changed from [bodytemperature] by [diff] to [bodytemperature + diff]") bodytemperature += diff if(!environment_is_safe(environment)) @@ -377,7 +377,7 @@ if(be_close && !in_range(M, src)) return 0 else - src << "You don't have the dexterity to do this!" + to_chat(src, "You don't have the dexterity to do this!") return 0 return 1 @@ -486,7 +486,7 @@ if(istype(held_item, /obj/item/weapon/twohanded)) var/obj/item/weapon/twohanded/T = held_item if(T.wielded == 1) - usr << "Your other hand is too busy holding the [T.name]." + to_chat(usr, "Your other hand is too busy holding the [T.name].") return var/oindex = active_hand_index active_hand_index = hand_index diff --git a/code/modules/mob/living/simple_animal/slime/life.dm b/code/modules/mob/living/simple_animal/slime/life.dm index 2b61f578c9..6910fe6df1 100644 --- a/code/modules/mob/living/simple_animal/slime/life.dm +++ b/code/modules/mob/living/simple_animal/slime/life.dm @@ -139,14 +139,14 @@ var/stasis = (bz_percentage >= 0.05 && bodytemperature < (T0C + 100)) || force_stasis if(stat == CONSCIOUS && stasis) - src << "Nerve gas in the air has put you in stasis!" + to_chat(src, "Nerve gas in the air has put you in stasis!") stat = UNCONSCIOUS powerlevel = 0 rabid = 0 update_canmove() regenerate_icons() else if(stat == UNCONSCIOUS && !stasis) - src << "You wake up from the stasis." + to_chat(src, "You wake up from the stasis.") stat = CONSCIOUS update_canmove() regenerate_icons() @@ -196,7 +196,7 @@ else ++Friends[M.LAssailant] else - src << "This subject does not have a strong enough life energy anymore..." + to_chat(src, "This subject does not have a strong enough life energy anymore...") if(M.client && ishuman(M)) if(prob(85)) @@ -211,13 +211,13 @@ C.adjustToxLoss(rand(1,2)) if(prob(10) && C.client) - C << "[pick("You can feel your body becoming weak!", \ + to_chat(C, "[pick("You can feel your body becoming weak!", \ "You feel like you're about to die!", \ "You feel every part of your body screaming in agony!", \ "A low, rolling pain passes through your body!", \ "Your body feels as if it's falling apart!", \ "You feel extremely weak!", \ - "A sharp, deep pain bathes every inch of your body!")]" + "A sharp, deep pain bathes every inch of your body!")]") else if(isanimal(M)) var/mob/living/simple_animal/SA = M diff --git a/code/modules/mob/living/simple_animal/slime/powers.dm b/code/modules/mob/living/simple_animal/slime/powers.dm index 89fa968e24..3585d989dc 100644 --- a/code/modules/mob/living/simple_animal/slime/powers.dm +++ b/code/modules/mob/living/simple_animal/slime/powers.dm @@ -56,54 +56,54 @@ return 0 if(isslime(M)) - src << "I can't latch onto another slime..." + to_chat(src, "I can't latch onto another slime...") return 0 if(docile) - src << "I'm not hungry anymore..." + to_chat(src, "I'm not hungry anymore...") return 0 if(stat) - src << "I must be conscious to do this..." + to_chat(src, "I must be conscious to do this...") return 0 if(M.stat == DEAD) - src << "This subject does not have a strong enough life energy..." + to_chat(src, "This subject does not have a strong enough life energy...") return 0 if(locate(/mob/living/simple_animal/slime) in M.buckled_mobs) - src << "Another slime is already feeding on this subject..." + to_chat(src, "Another slime is already feeding on this subject...") return 0 return 1 /mob/living/simple_animal/slime/proc/Feedon(mob/living/M) M.unbuckle_all_mobs(force=1) //Slimes rip other mobs (eg: shoulder parrots) off (Slimes Vs Slimes is already handled in CanFeedon()) - if(M.buckle_mob(src, force=1)) + if(M.buckle_mob(src, force=TRUE)) layer = M.layer+0.01 //appear above the target mob M.visible_message("[name] has latched onto [M]!", \ "[name] has latched onto [M]!") else - src << "I have failed to latch onto the subject" + to_chat(src, "I have failed to latch onto the subject!") /mob/living/simple_animal/slime/proc/Feedstop(silent=0, living=1) if(buckled) if(!living) - src << "[pick("This subject is incompatible", \ + to_chat(src, "[pick("This subject is incompatible", \ "This subject does not have life energy", "This subject is empty", \ "I am not satisified", "I can not feed from this subject", \ - "I do not feel nourished", "This subject is not food")]!" + "I do not feel nourished", "This subject is not food")]!") if(!silent) visible_message("[src] has let go of [buckled]!", \ "I stopped feeding.") layer = initial(layer) - buckled.unbuckle_mob(src,force=1) + buckled.unbuckle_mob(src,force=TRUE) /mob/living/simple_animal/slime/verb/Evolve() set category = "Slime" set desc = "This will let you evolve from baby to adult slime." if(stat) - src << "I must be conscious to do this..." + to_chat(src, "I must be conscious to do this...") return if(!is_adult) if(amount_grown >= SLIME_EVOLUTION_THRESHOLD) @@ -115,9 +115,9 @@ regenerate_icons() update_name() else - src << "I am not ready to evolve yet..." + to_chat(src, "I am not ready to evolve yet...") else - src << "I have already evolved..." + to_chat(src, "I have already evolved...") /datum/action/innate/slime/evolve name = "Evolve" @@ -136,13 +136,13 @@ set desc = "This will make you split into four Slimes." if(stat) - src << "I must be conscious to do this..." + to_chat(src, "I must be conscious to do this...") return if(is_adult) if(amount_grown >= SLIME_EVOLUTION_THRESHOLD) if(stat) - src << "I must be conscious to do this..." + to_chat(src, "I must be conscious to do this...") return var/list/babies = list() @@ -178,9 +178,9 @@ new_slime.key = src.key qdel(src) else - src << "I am not ready to reproduce yet..." + to_chat(src, "I am not ready to reproduce yet...") else - src << "I am not old enough to reproduce yet..." + to_chat(src, "I am not old enough to reproduce yet...") /datum/action/innate/slime/reproduce name = "Reproduce" diff --git a/code/modules/mob/living/simple_animal/slime/slime.dm b/code/modules/mob/living/simple_animal/slime/slime.dm index 70363bde85..e3857144da 100644 --- a/code/modules/mob/living/simple_animal/slime/slime.dm +++ b/code/modules/mob/living/simple_animal/slime/slime.dm @@ -15,8 +15,7 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", var/docile = 0 languages_spoken = SLIME | HUMAN languages_understood = SLIME | HUMAN - faction = list("slime") - devourable = 1 + faction = list("slime","neutral") harm_intent_damage = 5 icon_living = "grey baby slime" @@ -44,6 +43,8 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", verb_exclaim = "telepathically cries" verb_yell = "telephatically cries" + devourable = 1 + // canstun and canweaken don't affect slimes because they ignore stun and weakened variables // for the sake of cleanliness, though, here they are. status_flags = CANPARALYSE|CANPUSH @@ -79,7 +80,7 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", var/coretype = /obj/item/slime_extract/grey var/list/slime_mutation[4] -/mob/living/simple_animal/slime/New(loc, new_colour="grey", new_is_adult=FALSE) +/mob/living/simple_animal/slime/Initialize(mapload, new_colour="grey", new_is_adult=FALSE) var/datum/action/innate/slime/feed/F = new F.Grant(src) @@ -318,7 +319,7 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", ++Friends[user] else Friends[user] = 1 - user << "You feed the slime the plasma. It chirps happily." + to_chat(user, "You feed the slime the plasma. It chirps happily.") var/obj/item/stack/sheet/mineral/plasma/S = W S.use(1) return @@ -327,7 +328,7 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", if(prob(25)) user.do_attack_animation(src) user.changeNext_move(CLICK_CD_MELEE) - user << "[W] passes right through [src]!" + to_chat(user, "[W] passes right through [src]!") return if(Discipline && prob(50)) // wow, buddy, why am I getting attacked?? Discipline = 0 @@ -377,7 +378,7 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", msg += "It is radiating with massive levels of electrical activity!\n" msg += "*---------*" - user << msg + to_chat(user, msg) return /mob/living/simple_animal/slime/proc/discipline_slime(mob/user) @@ -423,5 +424,5 @@ var/list/slime_colours = list("rainbow", "grey", "purple", "metal", "orange", if(..()) return 3 -/mob/living/simple_animal/slime/random/New(loc, new_colour, new_is_adult) - . = ..(loc, pick(slime_colours), prob(50)) +/mob/living/simple_animal/slime/random/Initialize(mapload, new_colour, new_is_adult) + . = ..(mapload, pick(slime_colours), prob(50)) \ No newline at end of file diff --git a/code/modules/mob/living/status_procs.dm b/code/modules/mob/living/status_procs.dm index fee790ffe3..f26fd04e59 100644 --- a/code/modules/mob/living/status_procs.dm +++ b/code/modules/mob/living/status_procs.dm @@ -46,7 +46,7 @@ else if(priority_absorb_key["visible_message"]) visible_message("[src][priority_absorb_key["visible_message"]]") else if(priority_absorb_key["self_message"]) - src << "[priority_absorb_key["self_message"]]" + to_chat(src, "[priority_absorb_key["self_message"]]") priority_absorb_key["stuns_absorbed"] += amount return 0 return ..() @@ -68,7 +68,7 @@ else if(priority_absorb_key["visible_message"]) visible_message("[src][priority_absorb_key["visible_message"]]") else if(priority_absorb_key["self_message"]) - src << "[priority_absorb_key["self_message"]]" + to_chat(src, "[priority_absorb_key["self_message"]]") priority_absorb_key["stuns_absorbed"] += amount return 0 return ..() \ No newline at end of file diff --git a/code/modules/mob/living/taste.dm b/code/modules/mob/living/taste.dm index 4a4c741fc8..7d570e008f 100644 --- a/code/modules/mob/living/taste.dm +++ b/code/modules/mob/living/taste.dm @@ -21,8 +21,12 @@ var/text_output = from.generate_taste_message(taste_sensitivity) // We dont want to spam the same message over and over again at the // person. Give it a bit of a buffer. + if(hallucination > 50 && prob(25)) + text_output = pick("spiders","[pick(wire_colors)]","dreams","nightmares","the future","the past","victory",\ + "defeat","pain","bliss","revenge","poison","time","space","death","life","truth","lies","justice","memory",\ + "regrets","your soul","suffering","music","noise","blood","hunger","the american way") if(text_output != last_taste_text || last_taste_time + 100 < world.time) - src << "You can taste [text_output]." + to_chat(src, "You can taste [text_output].") // "somthing indescribable" -> too many tastes, not enough flavor. last_taste_time = world.time diff --git a/code/modules/mob/living/ventcrawling.dm b/code/modules/mob/living/ventcrawling.dm index 8c7a39f1a7..a157e06402 100644 --- a/code/modules/mob/living/ventcrawling.dm +++ b/code/modules/mob/living/ventcrawling.dm @@ -7,19 +7,19 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/components/unary if(!ventcrawler || !Adjacent(A)) return if(stat) - src << "You must be conscious to do this!" + to_chat(src, "You must be conscious to do this!") return if(lying) - src << "You can't vent crawl while you're stunned!" + to_chat(src, "You can't vent crawl while you're stunned!") return if(restrained()) - src << "You can't vent crawl while you're restrained!" + to_chat(src, "You can't vent crawl while you're restrained!") return if(has_buckled_mobs()) - src << "You can't vent crawl with other creatures on you!" + to_chat(src, "You can't vent crawl with other creatures on you!") return if(buckled) - src << "You can't vent crawl while buckled!" + to_chat(src, "You can't vent crawl while buckled!") return var/obj/machinery/atmospherics/components/unary/vent_found @@ -62,17 +62,17 @@ var/list/ventcrawl_machinery = list(/obj/machinery/atmospherics/components/unary failed = 1 break if(failed) - src << "You can't crawl around in the ventilation ducts with items!" + to_chat(src, "You can't crawl around in the ventilation ducts with items!") return visible_message("[src] scrambles into the ventilation ducts!","You climb into the ventilation ducts.") forceMove(vent_found) else - src << "This ventilation duct is not connected to anything!" + to_chat(src, "This ventilation duct is not connected to anything!") /mob/living/simple_animal/slime/handle_ventcrawl(atom/A) if(buckled) - src << "I can't vent crawl while feeding..." + to_chat(src, "I can't vent crawl while feeding...") return ..() diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index c68a8ed2dd..a780d8d4dd 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -20,7 +20,7 @@ return QDEL_HINT_HARDDEL var/next_mob_id = 0 -/mob/New() +/mob/Initialize() tag = "mob_[next_mob_id++]" mob_list += src if(stat == DEAD) @@ -54,7 +54,7 @@ var/next_mob_id = 0 if(gas[MOLES]) t+="[gas[GAS_META][META_GAS_NAME]]: [gas[MOLES]] \n" - usr << t + to_chat(usr, t) /mob/proc/show_message(msg, type, alt_msg, alt_type)//Message, type of message (1 or 2), alternative message, alt message type (1 or 2) @@ -82,9 +82,9 @@ var/next_mob_id = 0 // voice muffling if(stat == UNCONSCIOUS) if(type & 2) //audio - src << "... You can almost hear something ..." + to_chat(src, "... You can almost hear something ...") else - src << msg + to_chat(src, msg) // Show a message to all player mobs who sees this atom // Show a message to the src mob (if the src is a mob) @@ -112,17 +112,19 @@ var/next_mob_id = 0 if(self_message) msg = self_message else - if(M.see_invisibleYou are unable to equip that!" //Only print if qdel_on_fail is false + to_chat(src, "You are unable to equip that!" ) return 0 equip_to_slot(W, slot, redraw_mob) //This proc should not ever fail. return 1 @@ -269,7 +271,7 @@ var/next_mob_id = 0 set category = "IC" if(is_blind(src)) - src << "Something is there but you can't see it." + to_chat(src, "Something is there but you can't see it.") return face_atom(A) @@ -410,7 +412,7 @@ var/next_mob_id = 0 if(mind) mind.show_memory(src) else - src << "You don't have a mind datum for some reason, so you can't look at your notes, if you had any." + to_chat(src, "You don't have a mind datum for some reason, so you can't look at your notes, if you had any.") /mob/verb/add_memory(msg as message) set name = "Add Note" @@ -422,7 +424,7 @@ var/next_mob_id = 0 if(mind) mind.store_memory(msg) else - src << "You don't have a mind datum for some reason, so you can't add a note to it." + to_chat(src, "You don't have a mind datum for some reason, so you can't add a note to it.") /mob/verb/abandon_mob() set name = "Respawn" @@ -431,12 +433,12 @@ var/next_mob_id = 0 if (!( abandon_allowed )) return if ((stat != 2 || !( ticker ))) - usr << "You must be dead to use this!" + to_chat(usr, "You must be dead to use this!") return log_game("[usr.name]/[usr.key] used abandon mob.") - usr << "Please roleplay correctly!" + to_chat(usr, "Please roleplay correctly!") if(!client) log_game("[usr.key] AM failed due to disconnect.") @@ -447,7 +449,7 @@ var/next_mob_id = 0 log_game("[usr.key] AM failed due to disconnect.") return - var/mob/new_player/M = new /mob/new_player() + var/mob/dead/new_player/M = new /mob/dead/new_player() if(!client) log_game("[usr.key] AM failed due to disconnect.") qdel(M) @@ -465,10 +467,17 @@ var/next_mob_id = 0 reset_perspective(null) unset_machine() -//suppress the .click macro so people can't use it to identify the location of items or aimbot -/mob/verb/ClickSubstitute() - set hidden = 1 +//suppress the .click/dblclick macros so people can't use them to identify the location of items or aimbot +/mob/verb/DisClick(argu = null as anything, sec = "" as text, number1 = 0 as num , number2 = 0 as num) set name = ".click" + set hidden = TRUE + set category = null + return + +/mob/verb/DisDblClick(argu = null as anything, sec = "" as text, number1 = 0 as num , number2 = 0 as num) + set name = ".dblclick" + set hidden = TRUE + set category = null return /mob/Topic(href, href_list) @@ -541,7 +550,7 @@ var/next_mob_id = 0 /mob/proc/see(message) if(!is_active()) return 0 - src << message + to_chat(src, message) return 1 /mob/proc/show_viewers(message) @@ -554,9 +563,10 @@ var/next_mob_id = 0 if(statpanel("Status")) if (client) stat(null, "Ping: [round(client.lastping, 1)]ms (Average: [round(client.avgping, 1)]ms)") - stat(null, "Map: [MAP_NAME]") - if(nextmap && istype(nextmap)) - stat(null, "Next Map: [nextmap.friendlyname]") + stat(null, "Map: [SSmapping.config.map_name]") + var/datum/map_config/cached = SSmapping.next_map_config + if(cached) + stat(null, "Next Map: [cached.map_name]") stat(null, "Server Time: [time2text(world.timeofday, "YYYY-MM-DD hh:mm:ss")]") stat(null, "Station Time: [worldtime2text()]") stat(null, "Time Dilation: [round(SStime_track.time_dilation_current,1)]% AVG:([round(SStime_track.time_dilation_avg_fast,1)]%, [round(SStime_track.time_dilation_avg,1)]%, [round(SStime_track.time_dilation_avg_slow,1)]%)") @@ -583,7 +593,7 @@ var/next_mob_id = 0 stat("Failsafe Controller:", "ERROR") if(Master) stat(null) - for(var/datum/subsystem/SS in Master.subsystems) + for(var/datum/controller/subsystem/SS in Master.subsystems) SS.stat_entry() cameranet.stat_entry() @@ -761,12 +771,21 @@ var/next_mob_id = 0 mob_spell_list += S S.action.Grant(src) +/mob/proc/RemoveSpell(obj/effect/proc_holder/spell/spell) + if(!spell) + return + for(var/X in mob_spell_list) + var/obj/effect/proc_holder/spell/S = X + if(istype(S, spell)) + mob_spell_list -= S + qdel(S) + //override to avoid rotating pixel_xy on mobs /mob/shuttleRotate(rotation) setDir(angle2dir(rotation+dir2angle(dir))) //You can buckle on mobs if you're next to them since most are dense -/mob/buckle_mob(mob/living/M, force = 0) +/mob/buckle_mob(mob/living/M, force = FALSE, check_loc = TRUE) if(M.buckled) return 0 var/turf/T = get_turf(src) @@ -974,6 +993,6 @@ var/next_mob_id = 0 /mob/vv_get_var(var_name) switch(var_name) - if ("attack_log") - return debug_variable(var_name, attack_log, 0, src, FALSE) - . = ..() + if("logging") + return debug_variable(var_name, logging, 0, src, FALSE) + . = ..() \ No newline at end of file diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index b00302473d..d315cf84bc 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -26,7 +26,7 @@ var/computer_id = null var/lastattacker = null var/lastattacked = null - var/attack_log = list( ) + var/list/logging = list(INDIVIDUAL_ATTACK_LOG, INDIVIDUAL_SAY_LOG, INDIVIDUAL_EMOTE_LOG, INDIVIDUAL_OOC_LOG, INDIVIDUAL_LOOC_LOG) var/obj/machinery/machine = null var/other_mobs = null var/disabilities = 0 //Carbon diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 249b5aa9b2..5cbecbaf94 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -379,9 +379,11 @@ var/static/regex/firstname = new("^\[^\\s-\]+") //First word before whitespace o return 1 /proc/notify_ghosts(var/message, var/ghost_sound = null, var/enter_link = null, var/atom/source = null, var/image/alert_overlay = null, var/action = NOTIFY_JUMP, flashwindow = TRUE) //Easy notification of ghosts. + if(SSatoms.initialized != INITIALIZATION_INNEW_REGULAR) //don't notify for objects created during a map load + return for(var/mob/dead/observer/O in player_list) if(O.client) - O << "[message][(enter_link) ? " [enter_link]" : ""]" + to_chat(O, "[message][(enter_link) ? " [enter_link]" : ""]") if(ghost_sound) O << sound(ghost_sound) if(flashwindow) @@ -421,7 +423,7 @@ var/static/regex/firstname = new("^\[^\\s-\]+") //First word before whitespace o user.visible_message("[user] has fixed some of the [dam ? "dents on" : "burnt wires in"] [H]'s [affecting].", "You fix some of the [dam ? "dents on" : "burnt wires in"] [H]'s [affecting].") return 1 //successful heal else - user << "[affecting] is already in good condition!" + to_chat(user, "[affecting] is already in good condition!") /proc/IsAdminGhost(var/mob/user) @@ -438,7 +440,7 @@ var/static/regex/firstname = new("^\[^\\s-\]+") //First word before whitespace o return TRUE /proc/offer_control(mob/M) - M << "Control of your mob has been offered to dead players." + to_chat(M, "Control of your mob has been offered to dead players.") if(usr) log_admin("[key_name(usr)] has offered control of ([key_name(M)]) to ghosts.") message_admins("[key_name_admin(usr)] has offered control of ([key_name_admin(M)]) to ghosts") @@ -452,13 +454,13 @@ var/static/regex/firstname = new("^\[^\\s-\]+") //First word before whitespace o if(candidates.len) theghost = pick(candidates) - M << "Your mob has been taken over by a ghost!" + to_chat(M, "Your mob has been taken over by a ghost!") message_admins("[key_name_admin(theghost)] has taken control of ([key_name_admin(M)])") M.ghostize(0) M.key = theghost.key return TRUE else - M << "There were no ghosts willing to take control." + to_chat(M, "There were no ghosts willing to take control.") message_admins("No ghosts were willing to take control of [key_name_admin(M)])") return FALSE @@ -479,7 +481,7 @@ var/static/regex/firstname = new("^\[^\\s-\]+") //First word before whitespace o else return 0 -mob/proc/click_random_mob() +/mob/proc/click_random_mob() var/list/nearby_mobs = list() for(var/mob/living/L in range(1, src)) if(L!=src) @@ -487,3 +489,14 @@ mob/proc/click_random_mob() if(nearby_mobs.len) var/mob/living/T = pick(nearby_mobs) ClickOn(T) + +/mob/proc/log_message(message, message_type) + if(!LAZYLEN(message) || !message_type) + return + + if(!islist(logging[message_type])) + logging[message_type] = list() + + var/list/timestamped_message = list("[LAZYLEN(logging[message_type]) + 1]\[[time_stamp()]\] [key_name(src)]" = message) + + logging[message_type] += timestamped_message \ No newline at end of file diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index 3e6cb63df3..a0325405f7 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -50,13 +50,13 @@ var/mob/living/carbon/C = usr C.toggle_throw_mode() else - usr << "This mob type cannot throw items." + to_chat(usr, "This mob type cannot throw items.") return /client/Northwest() if(!usr.get_active_held_item()) - usr << "You have nothing to drop in your hand!" + to_chat(usr, "You have nothing to drop in your hand!") return usr.drop_item() @@ -65,7 +65,7 @@ set hidden = 1 if(!usr.pulling) - usr << "You are not pulling anything." + to_chat(usr, "You are not pulling anything.") return usr.stop_pulling() @@ -194,7 +194,7 @@ return 1 else if(mob.restrained(ignore_grab = 1)) move_delay = world.time + 10 - src << "You're restrained! You can't move!" + to_chat(src, "You're restrained! You can't move!") return 1 else return mob.resist_grab(1) @@ -253,14 +253,14 @@ if(3) //Incorporeal move, but blocked by holy-watered tiles and salt piles. var/turf/open/floor/stepTurf = get_step(L, direct) for(var/obj/effect/decal/cleanable/salt/S in stepTurf) - L << "[S] bars your passage!" + to_chat(L, "[S] bars your passage!") if(isrevenant(L)) var/mob/living/simple_animal/revenant/R = L R.reveal(20) R.stun(20) return if(stepTurf.flags & NOJAUNT) - L << "Holy energies block your path." + to_chat(L, "Holy energies block your path.") else L.loc = get_step(L, direct) L.setDir(direct) @@ -278,7 +278,7 @@ if(backup) if(istype(backup) && movement_dir && !backup.anchored) if(backup.newtonian_move(turn(movement_dir, 180))) //You're pushing off something movable, so it moves - src << "You push off of [backup] to propel yourself." + to_chat(src, "You push off of [backup] to propel yourself.") return 1 return 0 diff --git a/code/modules/mob/mob_transformation_simple.dm b/code/modules/mob/mob_transformation_simple.dm index 79ee286aa5..673548ff48 100644 --- a/code/modules/mob/mob_transformation_simple.dm +++ b/code/modules/mob/mob_transformation_simple.dm @@ -5,7 +5,7 @@ /mob/proc/change_mob_type(new_type = null, turf/location = null, new_name = null as text, delete_old_mob = 0 as num) if(isnewplayer(src)) - usr << "Cannot convert players who have not entered yet." + to_chat(usr, "Cannot convert players who have not entered yet.") return if(!new_type) @@ -15,11 +15,11 @@ new_type = text2path(new_type) if( !ispath(new_type) ) - usr << "Invalid type path (new_type = [new_type]) in change_mob_type(). Contact a coder." + to_chat(usr, "Invalid type path (new_type = [new_type]) in change_mob_type(). Contact a coder.") return - if(ispath(new_type, /mob/new_player)) - usr << "Cannot convert into a new_player mob type." + if(ispath(new_type, /mob/dead/new_player)) + to_chat(usr, "Cannot convert into a new_player mob type.") return var/mob/M @@ -29,7 +29,7 @@ M = new new_type( src.loc ) if(!M || !ismob(M)) - usr << "Type path is not a mob (new_type = [new_type]) in change_mob_type(). Contact a coder." + to_chat(usr, "Type path is not a mob (new_type = [new_type]) in change_mob_type(). Contact a coder.") qdel(M) return diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index 008d1da494..065fe5d3f5 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -3,7 +3,7 @@ set name = "Say" set category = "IC" if(say_disabled) //This is here to try to identify lag problems - usr << "Speech is currently admin-disabled." + to_chat(usr, "Speech is currently admin-disabled.") return usr.say(message) @@ -11,7 +11,7 @@ set name = "Whisper" set category = "IC" if(say_disabled) //This is here to try to identify lag problems - usr << "Speech is currently admin-disabled." + to_chat(usr, "Speech is currently admin-disabled.") return say(message) //only carbons actually whisper, everything else just talks @@ -20,7 +20,7 @@ set category = "IC" if(say_disabled) //This is here to try to identify lag problems - usr << "Speech is currently admin-disabled." + to_chat(usr, "Speech is currently admin-disabled.") return message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) @@ -32,16 +32,16 @@ var/alt_name = "" if(say_disabled) //This is here to try to identify lag problems - usr << "Speech is currently admin-disabled." + to_chat(usr, "Speech is currently admin-disabled.") return if(jobban_isbanned(src, "OOC")) - src << "You have been banned from deadchat." + to_chat(src, "You have been banned from deadchat.") return if (src.client) if(src.client.prefs.muted & MUTE_DEADCHAT) - src << "You cannot talk in deadchat (muted)." + to_chat(src, "You cannot talk in deadchat (muted).") return if(src.client.handle_spam_prevention(message,MUTE_DEADCHAT)) diff --git a/code/modules/mob/say_vr.dm b/code/modules/mob/say_vr.dm index 1c26539815..87b497b272 100644 --- a/code/modules/mob/say_vr.dm +++ b/code/modules/mob/say_vr.dm @@ -49,7 +49,7 @@ for(var/mob/M in player_list) if (!M.client) continue //skip monkeys and leavers - if (istype(M, /mob/new_player)) + if (istype(M, /mob/dead/new_player)) continue if(findtext(message," snores.")) //Because we have so many sleeping people. break diff --git a/code/modules/mob/status_procs.dm b/code/modules/mob/status_procs.dm index 77398e53ee..caa5a38326 100644 --- a/code/modules/mob/status_procs.dm +++ b/code/modules/mob/status_procs.dm @@ -80,11 +80,12 @@ /////////////////////////////////// SLEEPING //////////////////////////////////// -/mob/proc/Sleeping(amount, updating = 1) +/mob/proc/Sleeping(amount, updating = 1, no_alert = FALSE) var/old_sleeping = sleeping sleeping = max(max(sleeping,amount),0) if(!old_sleeping && sleeping) - throw_alert("asleep", /obj/screen/alert/asleep) + if(!no_alert) + throw_alert("asleep", /obj/screen/alert/asleep) if(updating) update_stat() else if(old_sleeping && !sleeping) @@ -92,11 +93,12 @@ if(updating) update_stat() -/mob/proc/SetSleeping(amount, updating = 1) +/mob/proc/SetSleeping(amount, updating = 1, no_alert = FALSE) var/old_sleeping = sleeping sleeping = max(amount,0) if(!old_sleeping && sleeping) - throw_alert("asleep", /obj/screen/alert/asleep) + if(!no_alert) + throw_alert("asleep", /obj/screen/alert/asleep) if(updating) update_stat() else if(old_sleeping && !sleeping) @@ -104,11 +106,12 @@ if(updating) update_stat() -/mob/proc/AdjustSleeping(amount, updating = 1) +/mob/proc/AdjustSleeping(amount, updating = 1, no_alert = FALSE) var/old_sleeping = sleeping sleeping = max(sleeping + amount,0) if(!old_sleeping && sleeping) - throw_alert("asleep", /obj/screen/alert/asleep) + if(!no_alert) + throw_alert("asleep", /obj/screen/alert/asleep) if(updating) update_stat() else if(old_sleeping && !sleeping) @@ -166,7 +169,8 @@ var/old_eye_blind = eye_blind eye_blind = max(eye_blind, amount) if(!old_eye_blind) - throw_alert("blind", /obj/screen/alert/blind) + if(stat == CONSCIOUS) + throw_alert("blind", /obj/screen/alert/blind) overlay_fullscreen("blind", /obj/screen/fullscreen/blind) /mob/proc/adjust_blindness(amount) @@ -174,7 +178,8 @@ var/old_eye_blind = eye_blind eye_blind += amount if(!old_eye_blind) - throw_alert("blind", /obj/screen/alert/blind) + if(stat == CONSCIOUS) + throw_alert("blind", /obj/screen/alert/blind) overlay_fullscreen("blind", /obj/screen/fullscreen/blind) else if(eye_blind) var/blind_minimum = 0 @@ -190,7 +195,8 @@ var/old_eye_blind = eye_blind eye_blind = amount if(client && !old_eye_blind) - throw_alert("blind", /obj/screen/alert/blind) + if(stat == CONSCIOUS) + throw_alert("blind", /obj/screen/alert/blind) overlay_fullscreen("blind", /obj/screen/fullscreen/blind) else if(eye_blind) var/blind_minimum = 0 diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 0de9f0625c..cc2eab5209 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -126,7 +126,7 @@ if (tr_flags & TR_DEFAULTMSG) - O << "You are now a monkey." + to_chat(O, "You are now a monkey.") for(var/A in loc.vars) if(loc.vars[A] == src) @@ -276,7 +276,7 @@ O.a_intent = INTENT_HELP if (tr_flags & TR_DEFAULTMSG) - O << "You are now a human." + to_chat(O, "You are now a human.") . = O @@ -286,11 +286,6 @@ qdel(src) - -/mob/new_player/AIize() - spawning = 1 - return ..() - /mob/living/carbon/human/AIize() if (notransform) return @@ -311,7 +306,7 @@ invisibility = INVISIBILITY_MAXIMUM return ..() -/mob/proc/AIize() +/mob/proc/AIize(transfer_after = TRUE) if(client) stopLobbySound() @@ -329,18 +324,19 @@ continue loc_landmark = tripai.loc if(!loc_landmark) - src << "Oh god sorry we can't find an unoccupied AI spawn location, so we're spawning you on top of someone." + to_chat(src, "Oh god sorry we can't find an unoccupied AI spawn location, so we're spawning you on top of someone.") for(var/obj/effect/landmark/start/sloc in landmarks_list) if (sloc.name == "AI") loc_landmark = sloc.loc + if(!transfer_after) + mind.active = FALSE + . = new /mob/living/silicon/ai(loc_landmark, null, src) + qdel(src) - return - -//human -> robot -/mob/living/carbon/human/proc/Robotize(delete_items = 0) +/mob/living/carbon/human/proc/Robotize(delete_items = 0, transfer_after = TRUE) if (notransform) return for(var/obj/item/W in src) @@ -367,12 +363,13 @@ R.gender = gender R.invisibility = 0 - if(mind) //TODO + if(!transfer_after) + mind.active = FALSE mind.transfer_to(R) if(mind.special_role) R.mind.store_memory("In case you look at this after being borged, the objectives are only here until I find a way to make them not show up for you, as I can't simply delete them without screwing up round-end reporting. --NeoFite") - else + else if(transfer_after) R.key = key if (config.rename_cyborg) @@ -420,7 +417,7 @@ new_xeno.a_intent = INTENT_HARM new_xeno.key = key - new_xeno << "You are now an alien." + to_chat(new_xeno, "You are now an alien.") . = new_xeno qdel(src) @@ -452,7 +449,7 @@ new_slime.a_intent = INTENT_HARM new_slime.key = key - new_slime << "You are now a slime. Skreee!" + to_chat(new_slime, "You are now a slime. Skreee!") . = new_slime qdel(src) @@ -483,7 +480,7 @@ new_corgi.a_intent = INTENT_HARM new_corgi.key = key - new_corgi << "You are now a Corgi. Yap Yap!" + to_chat(new_corgi, "You are now a Corgi. Yap Yap!") . = new_corgi qdel(src) @@ -493,7 +490,7 @@ var/mobpath = input("Which type of mob should [src] turn into?", "Choose a type") in mobtypes if(!safe_animal(mobpath)) - usr << "Sorry but this mob type is currently unavailable." + to_chat(usr, "Sorry but this mob type is currently unavailable.") return if(notransform) @@ -516,7 +513,7 @@ new_mob.a_intent = INTENT_HARM - new_mob << "You suddenly feel more... animalistic." + to_chat(new_mob, "You suddenly feel more... animalistic.") . = new_mob qdel(src) @@ -526,14 +523,14 @@ var/mobpath = input("Which type of mob should [src] turn into?", "Choose a type") in mobtypes if(!safe_animal(mobpath)) - usr << "Sorry but this mob type is currently unavailable." + to_chat(usr, "Sorry but this mob type is currently unavailable.") return var/mob/new_mob = new mobpath(src.loc) new_mob.key = key new_mob.a_intent = INTENT_HARM - new_mob << "You feel more... animalistic" + to_chat(new_mob, "You feel more... animalistic") . = new_mob qdel(src) diff --git a/code/modules/modular_computers/computers/item/computer.dm b/code/modules/modular_computers/computers/item/computer.dm index c9c363ca98..de6c2b74ca 100644 --- a/code/modules/modular_computers/computers/item/computer.dm +++ b/code/modules/modular_computers/computers/item/computer.dm @@ -176,19 +176,19 @@ /obj/item/device/modular_computer/emag_act(mob/user) if(emagged) - user << "\The [src] was already emagged." + to_chat(user, "\The [src] was already emagged.") return 0 else emagged = 1 - user << "You emag \the [src]. It's screen briefly shows a \"OVERRIDE ACCEPTED: New software downloads available.\" message." + to_chat(user, "You emag \the [src]. It's screen briefly shows a \"OVERRIDE ACCEPTED: New software downloads available.\" message.") return 1 /obj/item/device/modular_computer/examine(mob/user) ..() if(obj_integrity <= integrity_failure) - user << "It is heavily damaged!" + to_chat(user, "It is heavily damaged!") else if(obj_integrity < max_integrity) - user << "It is damaged." + to_chat(user, "It is damaged.") /obj/item/device/modular_computer/update_icon() cut_overlays() @@ -217,9 +217,9 @@ var/issynth = issilicon(user) // Robots and AIs get different activation messages. if(obj_integrity <= integrity_failure) if(issynth) - user << "You send an activation signal to \the [src], but it responds with an error code. It must be damaged." + to_chat(user, "You send an activation signal to \the [src], but it responds with an error code. It must be damaged.") else - user << "You press the power button, but the computer fails to boot up, displaying variety of errors before shutting down again." + to_chat(user, "You press the power button, but the computer fails to boot up, displaying variety of errors before shutting down again.") return // If we have a recharger, enable it automatically. Lets computer without a battery work. @@ -229,17 +229,17 @@ if(all_components[MC_CPU] && use_power()) // use_power() checks if the PC is powered if(issynth) - user << "You send an activation signal to \the [src], turning it on." + to_chat(user, "You send an activation signal to \the [src], turning it on.") else - user << "You press the power button and start up \the [src]." + to_chat(user, "You press the power button and start up \the [src].") enabled = 1 update_icon() ui_interact(user) else // Unpowered if(issynth) - user << "You send an activation signal to \the [src] but it does not respond." + to_chat(user, "You send an activation signal to \the [src] but it does not respond.") else - user << "You press the power button but \the [src] does not respond." + to_chat(user, "You press the power button but \the [src] does not respond.") // Process currently calls handle_power(), may be expanded in future if more things are added. /obj/item/device/modular_computer/process() @@ -384,7 +384,7 @@ if(istype(W, /obj/item/weapon/wrench)) if(all_components.len) - user << "Remove all components from \the [src] before disassembling it." + to_chat(user, "Remove all components from \the [src] before disassembling it.") return new /obj/item/stack/sheet/metal( get_turf(src.loc), steel_sheet_cost ) physical.visible_message("\The [src] has been disassembled by [user].") @@ -395,23 +395,23 @@ if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(!WT.isOn()) - user << "\The [W] is off." + to_chat(user, "\The [W] is off.") return if(obj_integrity == max_integrity) - user << "\The [src] does not require repairs." + to_chat(user, "\The [src] does not require repairs.") return - user << "You begin repairing damage to \the [src]..." + to_chat(user, "You begin repairing damage to \the [src]...") var/dmg = round(max_integrity - obj_integrity) if(WT.remove_fuel(round(dmg/75)) && do_after(usr, dmg/10)) obj_integrity = max_integrity - user << "You repair \the [src]." + to_chat(user, "You repair \the [src].") return if(istype(W, /obj/item/weapon/screwdriver)) if(!all_components.len) - user << "This device doesn't have any components installed." + to_chat(user, "This device doesn't have any components installed.") return var/list/component_names = list() for(var/h in all_components) diff --git a/code/modules/modular_computers/computers/item/computer_components.dm b/code/modules/modular_computers/computers/item/computer_components.dm index 7335a2f200..e036f57d7d 100644 --- a/code/modules/modular_computers/computers/item/computer_components.dm +++ b/code/modules/modular_computers/computers/item/computer_components.dm @@ -3,11 +3,11 @@ return FALSE if(H.w_class > max_hardware_size) - user << "This component is too large for \the [src]!" + to_chat(user, "This component is too large for \the [src]!") return FALSE if(all_components[H.device_type]) - user << "This computer's hardware slot is already occupied by \the [all_components[H.device_type]]." + to_chat(user, "This computer's hardware slot is already occupied by \the [all_components[H.device_type]].") return FALSE return TRUE @@ -22,7 +22,7 @@ all_components[H.device_type] = H - user << "You install \the [H] into \the [src]." + to_chat(user, "You install \the [H] into \the [src].") H.holder = src H.forceMove(src) H.on_install(src, user) @@ -35,7 +35,7 @@ all_components.Remove(H.device_type) - user << "You remove \the [H] from \the [src]." + to_chat(user, "You remove \the [H] from \the [src].") H.forceMove(get_turf(src)) H.holder = null diff --git a/code/modules/modular_computers/computers/item/computer_ui.dm b/code/modules/modular_computers/computers/item/computer_ui.dm index 06761844de..304a9877c6 100644 --- a/code/modules/modular_computers/computers/item/computer_ui.dm +++ b/code/modules/modular_computers/computers/item/computer_ui.dm @@ -26,7 +26,7 @@ // This screen simply lists available programs and user may select them. var/obj/item/weapon/computer_hardware/hard_drive/hard_drive = all_components[MC_HDD] if(!hard_drive || !hard_drive.stored_files || !hard_drive.stored_files.len) - user << "\The [src] beeps three times, it's screen displaying a \"DISK ERROR\" warning." + to_chat(user, "\The [src] beeps three times, it's screen displaying a \"DISK ERROR\" warning.") return // No HDD, No HDD files list or no stored files. Something is very broken. ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) @@ -89,7 +89,7 @@ return P.kill_program(forced = TRUE) - user << "Program [P.filename].[P.filetype] with PID [rand(100,999)] has been killed." + to_chat(user, "Program [P.filename].[P.filetype] with PID [rand(100,999)] has been killed.") if("PC_runprogram") var/prog = params["name"] @@ -99,7 +99,7 @@ P = hard_drive.find_file_by_name(prog) if(!P || !istype(P)) // Program not found or it's not executable program. - user << "\The [src]'s screen shows \"I/O ERROR - Unable to run program\" warning." + to_chat(user, "\The [src]'s screen shows \"I/O ERROR - Unable to run program\" warning.") return P.computer = src @@ -118,11 +118,11 @@ var/obj/item/weapon/computer_hardware/processor_unit/PU = all_components[MC_CPU] if(idle_threads.len > PU.max_idle_programs) - user << "\The [src] displays a \"Maximal CPU load reached. Unable to run another program.\" error." + to_chat(user, "\The [src] displays a \"Maximal CPU load reached. Unable to run another program.\" error.") return if(P.requires_ntnet && !get_ntnet_status(P.requires_ntnet_feature)) // The program requires NTNet connection, but we are not connected to NTNet. - user << "\The [src]'s screen shows \"Unable to connect to NTNet. Please retry. If problem persists contact your system administrator.\" warning." + to_chat(user, "\The [src]'s screen shows \"Unable to connect to NTNet. Please retry. If problem persists contact your system administrator.\" warning.") return if(P.run_program(user)) active_program = P diff --git a/code/modules/modular_computers/computers/item/laptop.dm b/code/modules/modular_computers/computers/item/laptop.dm index 31bac1a0f3..6a14d3a43f 100644 --- a/code/modules/modular_computers/computers/item/laptop.dm +++ b/code/modules/modular_computers/computers/item/laptop.dm @@ -12,16 +12,18 @@ max_hardware_size = 2 w_class = WEIGHT_CLASS_NORMAL - flags = HANDSLOW // No running around with open laptops in hands. - screen_on = 0 // Starts closed var/start_open = 1 // unless this var is set to 1 var/icon_state_closed = "laptop-closed" var/w_class_open = WEIGHT_CLASS_BULKY var/slowdown_open = 1 -/obj/item/device/modular_computer/laptop/New() +/obj/item/device/modular_computer/laptop/Initialize() ..() + + // No running around with open laptops in hands. + SET_SECONDARY_FLAG(src, SLOWS_WHILE_IN_HAND) + if(start_open && !screen_on) toggle_open() @@ -83,11 +85,11 @@ /obj/item/device/modular_computer/laptop/proc/toggle_open(mob/living/user=null) if(screen_on) - user << "You close \the [src]." + to_chat(user, "You close \the [src].") slowdown = initial(slowdown) w_class = initial(w_class) else - user << "You open \the [src]." + to_chat(user, "You open \the [src].") slowdown = slowdown_open w_class = w_class_open diff --git a/code/modules/modular_computers/computers/machinery/modular_computer.dm b/code/modules/modular_computers/computers/machinery/modular_computer.dm index c5e30eabd9..2a9d58f485 100644 --- a/code/modules/modular_computers/computers/machinery/modular_computer.dm +++ b/code/modules/modular_computers/computers/machinery/modular_computer.dm @@ -58,9 +58,9 @@ var/list/global_modular_computers = list() add_overlay(screen_icon_screensaver) else icon_state = icon_state_unpowered - SetLuminosity(0) + set_light(0) else - SetLuminosity(light_strength) + set_light(light_strength) if(cpu.active_program) add_overlay(cpu.active_program.program_icon_state ? cpu.active_program.program_icon_state : screen_icon_state_menu) else diff --git a/code/modules/modular_computers/file_system/program.dm b/code/modules/modular_computers/file_system/program.dm index 46a9ea8ebc..51afc6371d 100644 --- a/code/modules/modular_computers/file_system/program.dm +++ b/code/modules/modular_computers/file_system/program.dm @@ -51,7 +51,7 @@ /datum/computer_file/program/proc/is_supported_by_hardware(hardware_flag = 0, loud = 0, mob/user = null) if(!(hardware_flag & usage_flags)) if(loud && computer && user) - user << "\The [computer] flashes an \"Hardware Error - Incompatible software\" warning." + to_chat(user, "\The [computer] flashes an \"Hardware Error - Incompatible software\" warning.") return 0 return 1 @@ -102,7 +102,7 @@ if(!I && !C && !D) if(loud) - user << "\The [computer] flashes an \"RFID Error - Unable to scan ID\" warning." + to_chat(user, "\The [computer] flashes an \"RFID Error - Unable to scan ID\" warning.") return 0 if(I) @@ -115,7 +115,7 @@ if(access_to_check in D.GetAccess()) return 1 if(loud) - user << "\The [computer] flashes an \"Access Denied\" warning." + to_chat(user, "\The [computer] flashes an \"Access Denied\" warning.") return 0 // This attempts to retrieve header data for UIs. If implementing completely new device of different type than existing ones diff --git a/code/modules/modular_computers/file_system/programs/card.dm b/code/modules/modular_computers/file_system/programs/card.dm index c5d7872ed8..792c79f463 100644 --- a/code/modules/modular_computers/file_system/programs/card.dm +++ b/code/modules/modular_computers/file_system/programs/card.dm @@ -154,7 +154,7 @@ contents += " [get_access_desc(A)]" if(!printer.print_text(contents,"access report")) - usr << "Hardware error: Printer was unable to print the file. It may be out of paper." + to_chat(usr, "Hardware error: Printer was unable to print the file. It may be out of paper.") return else computer.visible_message("\The [computer] prints out paper.") @@ -164,7 +164,7 @@ [data_core ? data_core.get_manifest(0) : ""] "} if(!printer.print_text(contents,text("crew manifest ([])", worldtime2text()))) - usr << "Hardware error: Printer was unable to print the file. It may be out of paper." + to_chat(usr, "Hardware error: Printer was unable to print the file. It may be out of paper.") return else computer.visible_message("\The [computer] prints out paper.") @@ -235,7 +235,7 @@ jobdatum = J break if(!jobdatum) - usr << "No log exists for this job: [t1]" + to_chat(usr, "No log exists for this job: [t1]") return access = jobdatum.get_access() diff --git a/code/modules/modular_computers/hardware/_hardware.dm b/code/modules/modular_computers/hardware/_hardware.dm index 27a4cd4480..ff084908c9 100644 --- a/code/modules/modular_computers/hardware/_hardware.dm +++ b/code/modules/modular_computers/hardware/_hardware.dm @@ -34,19 +34,19 @@ /obj/item/weapon/computer_hardware/attackby(obj/item/I, mob/living/user) // Multitool. Runs diagnostics if(istype(I, /obj/item/device/multitool)) - user << "***** DIAGNOSTICS REPORT *****" + to_chat(user, "***** DIAGNOSTICS REPORT *****") diagnostics(user) - user << "******************************" + to_chat(user, "******************************") return 1 // Cable coil. Works as repair method, but will probably require multiple applications and more cable. if(istype(I, /obj/item/stack/cable_coil)) var/obj/item/stack/S = I if(obj_integrity == max_integrity) - user << "\The [src] doesn't seem to require repairs." + to_chat(user, "\The [src] doesn't seem to require repairs.") return 1 if(S.use(1)) - user << "You patch up \the [src] with a bit of \the [I]." + to_chat(user, "You patch up \the [src] with a bit of \the [I].") obj_integrity = min(obj_integrity + 10, max_integrity) return 1 @@ -57,7 +57,7 @@ // Called on multitool click, prints diagnostic information to the user. /obj/item/weapon/computer_hardware/proc/diagnostics(var/mob/user) - user << "Hardware Integrity Test... (Corruption: [damage]/[max_damage]) [damage > damage_failure ? "FAIL" : damage > damage_malfunction ? "WARN" : "PASS"]" + to_chat(user, "Hardware Integrity Test... (Corruption: [damage]/[max_damage]) [damage > damage_failure ? "FAIL" : damage > damage_malfunction ? "WARN" : "PASS"]") // Handles damage checks /obj/item/weapon/computer_hardware/proc/check_functionality() @@ -76,11 +76,11 @@ /obj/item/weapon/computer_hardware/examine(var/mob/user) . = ..() if(damage > damage_failure) - user << "It seems to be severely damaged!" + to_chat(user, "It seems to be severely damaged!") else if(damage > damage_malfunction) - user << "It seems to be damaged!" + to_chat(user, "It seems to be damaged!") else if(damage) - user << "It seems to be slightly damaged." + to_chat(user, "It seems to be slightly damaged.") // Component-side compatibility check. /obj/item/weapon/computer_hardware/proc/can_install(obj/item/device/modular_computer/M, mob/living/user = null) diff --git a/code/modules/modular_computers/hardware/ai_slot.dm b/code/modules/modular_computers/hardware/ai_slot.dm index 63b6a33e56..2a2fcc466b 100644 --- a/code/modules/modular_computers/hardware/ai_slot.dm +++ b/code/modules/modular_computers/hardware/ai_slot.dm @@ -14,7 +14,7 @@ /obj/item/weapon/computer_hardware/ai_slot/examine(mob/user) ..() if(stored_card) - user << "There appears to be an intelliCard loaded. There appears to be a pinhole protecting a manual eject button. A screwdriver could probably press it" + to_chat(user, "There appears to be an intelliCard loaded. There appears to be a pinhole protecting a manual eject button. A screwdriver could probably press it") /obj/item/weapon/computer_hardware/ai_slot/on_install(obj/item/device/modular_computer/M, mob/living/user = null) M.add_verb(device_type) @@ -30,24 +30,24 @@ return FALSE if(stored_card) - user << "You try to insert \the [I] into \the [src], but the slot is occupied." + to_chat(user, "You try to insert \the [I] into \the [src], but the slot is occupied.") return FALSE if(user && !user.transferItemToLoc(I, src)) return FALSE stored_card = I - user << "You insert \the [I] into \the [src]." + to_chat(user, "You insert \the [I] into \the [src].") return TRUE /obj/item/weapon/computer_hardware/ai_slot/try_eject(slot=0,mob/living/user = null,forced = 0) if(!stored_card) - user << "There is no card in \the [src]." + to_chat(user, "There is no card in \the [src].") return FALSE if(locked && !forced) - user << "Safeties prevent you from removing the card until reconstruction is complete..." + to_chat(user, "Safeties prevent you from removing the card until reconstruction is complete...") return FALSE if(stored_card) @@ -56,7 +56,7 @@ stored_card.verb_pickup() stored_card = null - user << "You remove the card from \the [src]." + to_chat(user, "You remove the card from \the [src].") return TRUE return FALSE @@ -64,6 +64,6 @@ if(..()) return if(istype(I, /obj/item/weapon/screwdriver)) - user << "You press down on the manual eject button with \the [I]." + to_chat(user, "You press down on the manual eject button with \the [I].") try_eject(,user,1) return \ No newline at end of file diff --git a/code/modules/modular_computers/hardware/battery_module.dm b/code/modules/modular_computers/hardware/battery_module.dm index 92df5dfde8..2546efacbc 100644 --- a/code/modules/modular_computers/hardware/battery_module.dm +++ b/code/modules/modular_computers/hardware/battery_module.dm @@ -21,29 +21,29 @@ return FALSE if(battery) - user << "You try to connect \the [I] to \the [src], but its connectors are occupied." + to_chat(user, "You try to connect \the [I] to \the [src], but its connectors are occupied.") return FALSE if(I.w_class > holder.max_hardware_size) - user << "This power cell is too large for \the [holder]!" + to_chat(user, "This power cell is too large for \the [holder]!") return FALSE if(user && !user.transferItemToLoc(I, src)) return FALSE battery = I - user << "You connect \the [I] to \the [src]." + to_chat(user, "You connect \the [I] to \the [src].") return TRUE /obj/item/weapon/computer_hardware/battery/try_eject(slot=0, mob/living/user = null, forced = 0) if(!battery) - user << "There is no power cell connected to \the [src]." + to_chat(user, "There is no power cell connected to \the [src].") return FALSE else battery.forceMove(get_turf(src)) - user << "You detach \the [battery] from \the [src]." + to_chat(user, "You detach \the [battery] from \the [src].") battery = null if(holder) diff --git a/code/modules/modular_computers/hardware/card_slot.dm b/code/modules/modular_computers/hardware/card_slot.dm index b330103f2f..c1505c2120 100644 --- a/code/modules/modular_computers/hardware/card_slot.dm +++ b/code/modules/modular_computers/hardware/card_slot.dm @@ -44,7 +44,7 @@ return FALSE if(stored_card && stored_card2) - user << "You try to insert \the [I] into \the [src], but its slots are occupied." + to_chat(user, "You try to insert \the [I] into \the [src], but its slots are occupied.") return FALSE if(user) if(!user.transferItemToLoc(I, src)) @@ -56,14 +56,14 @@ stored_card = I else stored_card2 = I - user << "You insert \the [I] into \the [src]." + to_chat(user, "You insert \the [I] into \the [src].") return TRUE /obj/item/weapon/computer_hardware/card_slot/try_eject(slot=0, mob/living/user = null, forced = 0) if(!stored_card && !stored_card2) - user << "There are no cards in \the [src]." + to_chat(user, "There are no cards in \the [src].") return FALSE var/ejected = 0 @@ -92,7 +92,7 @@ var/datum/computer_file/program/P = I P.event_idremoved(1, slot) - user << "You remove the card[ejected>1 ? "s" : ""] from \the [src]." + to_chat(user, "You remove the card[ejected>1 ? "s" : ""] from \the [src].") return TRUE return FALSE @@ -100,11 +100,11 @@ if(..()) return if(istype(I, /obj/item/weapon/screwdriver)) - user << "You press down on the manual eject button with \the [I]." + to_chat(user, "You press down on the manual eject button with \the [I].") try_eject(0,user) return /obj/item/weapon/computer_hardware/card_slot/examine(mob/user) ..() if(stored_card || stored_card2) - user << "There appears to be something loaded in the card slots." + to_chat(user, "There appears to be something loaded in the card slots.") diff --git a/code/modules/modular_computers/hardware/hard_drive.dm b/code/modules/modular_computers/hardware/hard_drive.dm index 4a770c27be..9339f3d3c5 100644 --- a/code/modules/modular_computers/hardware/hard_drive.dm +++ b/code/modules/modular_computers/hardware/hard_drive.dm @@ -21,13 +21,13 @@ /obj/item/weapon/computer_hardware/hard_drive/examine(user) ..() - user << "It has [max_capacity] GQ of storage capacity." + to_chat(user, "It has [max_capacity] GQ of storage capacity.") /obj/item/weapon/computer_hardware/hard_drive/diagnostics(var/mob/user) ..() // 999 is a byond limit that is in place. It's unlikely someone will reach that many files anyway, since you would sooner run out of space. - user << "NT-NFS File Table Status: [stored_files.len]/999" - user << "Storage capacity: [used_capacity]/[max_capacity]GQ" + to_chat(user, "NT-NFS File Table Status: [stored_files.len]/999") + to_chat(user, "Storage capacity: [used_capacity]/[max_capacity]GQ") // Use this proc to add file to the drive. Returns 1 on success and 0 on failure. Contains necessary sanity checks. /obj/item/weapon/computer_hardware/hard_drive/proc/store_file(var/datum/computer_file/F) diff --git a/code/modules/modular_computers/hardware/network_card.dm b/code/modules/modular_computers/hardware/network_card.dm index 2b99521b6f..554a5084a5 100644 --- a/code/modules/modular_computers/hardware/network_card.dm +++ b/code/modules/modular_computers/hardware/network_card.dm @@ -15,14 +15,14 @@ var/global/ntnet_card_uid = 1 /obj/item/weapon/computer_hardware/network_card/diagnostics(var/mob/user) ..() - user << "NIX Unique ID: [identification_id]" - user << "NIX User Tag: [identification_string]" - user << "Supported protocols:" - user << "511.m SFS (Subspace) - Standard Frequency Spread" + to_chat(user, "NIX Unique ID: [identification_id]") + to_chat(user, "NIX User Tag: [identification_string]") + to_chat(user, "Supported protocols:") + to_chat(user, "511.m SFS (Subspace) - Standard Frequency Spread") if(long_range) - user << "511.n WFS/HB (Subspace) - Wide Frequency Spread/High Bandiwdth" + to_chat(user, "511.n WFS/HB (Subspace) - Wide Frequency Spread/High Bandiwdth") if(ethernet) - user << "OpenEth (Physical Connection) - Physical network connection port" + to_chat(user, "OpenEth (Physical Connection) - Physical network connection port") /obj/item/weapon/computer_hardware/network_card/New(var/l) ..(l) diff --git a/code/modules/modular_computers/hardware/printer.dm b/code/modules/modular_computers/hardware/printer.dm index f0351776de..58e230f82b 100644 --- a/code/modules/modular_computers/hardware/printer.dm +++ b/code/modules/modular_computers/hardware/printer.dm @@ -11,11 +11,11 @@ /obj/item/weapon/computer_hardware/printer/diagnostics(mob/living/user) ..() - user << "Paper level: [stored_paper]/[max_paper]" + to_chat(user, "Paper level: [stored_paper]/[max_paper]") /obj/item/weapon/computer_hardware/printer/examine(mob/user) ..() - user << "Paper level: [stored_paper]/[max_paper]" + to_chat(user, "Paper level: [stored_paper]/[max_paper]") /obj/item/weapon/computer_hardware/printer/proc/print_text(var/text_to_print, var/paper_title = "") @@ -42,12 +42,12 @@ /obj/item/weapon/computer_hardware/printer/try_insert(obj/item/I, mob/living/user = null) if(istype(I, /obj/item/weapon/paper)) if(stored_paper >= max_paper) - user << "You try to add \the [I] into [src], but its paper bin is full!" + to_chat(user, "You try to add \the [I] into [src], but its paper bin is full!") return FALSE if(user && !user.temporarilyRemoveItemFromInventory(I)) return FALSE - user << "You insert \the [I] into [src]'s paper recycler." + to_chat(user, "You insert \the [I] into [src]'s paper recycler.") qdel(I) stored_paper++ return TRUE diff --git a/code/modules/modular_computers/hardware/recharger.dm b/code/modules/modular_computers/hardware/recharger.dm index 2a07e316c6..85431aaabf 100644 --- a/code/modules/modular_computers/hardware/recharger.dm +++ b/code/modules/modular_computers/hardware/recharger.dm @@ -57,7 +57,7 @@ /obj/item/weapon/computer_hardware/recharger/wired/can_install(obj/item/device/modular_computer/M, mob/living/user = null) if(istype(M.physical, /obj/machinery) && M.physical.anchored) return ..() - user << "\The [src] is incompatible with portable computers!" + to_chat(user, "\The [src] is incompatible with portable computers!") return 0 /obj/item/weapon/computer_hardware/recharger/wired/use_power(amount, charging=0) diff --git a/code/modules/ninja/admin_ninja_verbs.dm b/code/modules/ninja/admin_ninja_verbs.dm index 3f33c41e26..cd050f412b 100644 --- a/code/modules/ninja/admin_ninja_verbs.dm +++ b/code/modules/ninja/admin_ninja_verbs.dm @@ -41,7 +41,7 @@ Contents: set popup_menu = 0 if(!holder) - src << "Only administrators may use this command." + to_chat(src, "Only administrators may use this command.") return if(!ticker.mode) alert("The game hasn't started yet!") diff --git a/code/modules/ninja/energy_katana.dm b/code/modules/ninja/energy_katana.dm index 0218ba27db..6d522c5f54 100644 --- a/code/modules/ninja/energy_katana.dm +++ b/code/modules/ninja/energy_katana.dm @@ -60,7 +60,7 @@ msg = "Your Energy Katana lands at your feet!" if(msg) - user << "[msg]" + to_chat(user, "[msg]") /obj/item/weapon/katana/energy/New() ..() diff --git a/code/modules/ninja/suit/gloves.dm b/code/modules/ninja/suit/gloves.dm index b37bc147cb..d26e4cbd36 100644 --- a/code/modules/ninja/suit/gloves.dm +++ b/code/modules/ninja/suit/gloves.dm @@ -63,9 +63,9 @@ if(isnum(drained)) //Numerical values of drained handle their feedback here, Alpha values handle it themselves (Research hacking) if(drained) - H << "Gained [drained] energy from \the [A]." + to_chat(H, "Gained [drained] energy from \the [A].") else - H << "\The [A] has run dry of power, you must find another source!" + to_chat(H, "\The [A] has run dry of power, you must find another source!") else drained = 0 //as to not cancel attack_hand() @@ -78,11 +78,11 @@ set category = "Ninja Equip" var/mob/living/carbon/human/U = loc - U << "You [candrain?"disable":"enable"] special interaction." + to_chat(U, "You [candrain?"disable":"enable"] special interaction.") candrain=!candrain /obj/item/clothing/gloves/space_ninja/examine(mob/user) ..() if(flags & NODROP) - user << "The energy drain mechanism is: [candrain?"active":"inactive"]." + to_chat(user, "The energy drain mechanism is: [candrain?"active":"inactive"].") diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm index 1b1abe220f..6580260cdb 100644 --- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm +++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm @@ -35,7 +35,7 @@ It is possible to destroy the net by the occupant or someone else. for(var/mob/O in viewers(src, 3)) O.show_message("[M.name] was recovered from the energy net!", 1, "You hear a grunt.", 2) if(master)//As long as they still exist. - master << "ERROR: unable to initiate transport protocol. Procedure terminated." + to_chat(master, "ERROR: unable to initiate transport protocol. Procedure terminated.") return ..() /obj/structure/energy_net/process(mob/living/carbon/M) @@ -51,7 +51,7 @@ It is possible to destroy the net by the occupant or someone else. if(isnull(M)||M.loc!=loc)//If mob is gone or not at the location. if(!isnull(master))//As long as they still exist. - master << "ERROR: unable to locate \the [mob_name]. Procedure terminated." + to_chat(master, "ERROR: unable to locate \the [mob_name]. Procedure terminated.") qdel(src)//Get rid of the net. M.notransform = 0 return @@ -76,10 +76,10 @@ It is possible to destroy the net by the occupant or someone else. visible_message("[M] suddenly vanishes!") M.forceMove(pick(holdingfacility)) //Throw mob in to the holding facility. - M << "You appear in a strange place!" + to_chat(M, "You appear in a strange place!") if(!isnull(master))//As long as they still exist. - master << "SUCCESS: transport procedure of \the [affecting] complete." + to_chat(master, "SUCCESS: transport procedure of \the [affecting] complete.") M.notransform = 0 var/datum/effect_system/spark_spread/spark_system = new /datum/effect_system/spark_spread() spark_system.set_up(5, 0, M.loc) @@ -90,7 +90,7 @@ It is possible to destroy the net by the occupant or someone else. qdel(src) else//And they are free. - M << "You are free of the net!" + to_chat(M, "You are free of the net!") M.notransform = 0 return diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm index f76f974e64..30085fdac5 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm @@ -21,8 +21,8 @@ var/fraction = min(a_transfer/reagents.total_volume, 1) reagents.reaction(H, INJECT, fraction) reagents.trans_id_to(H, "radium", a_transfer) - H << "You are beginning to feel the after-effect of the injection." + to_chat(H, "You are beginning to feel the after-effect of the injection.") a_boost-- - H << "There are [a_boost] adrenaline boosts remaining." + to_chat(H, "There are [a_boost] adrenaline boosts remaining.") s_coold = 3 return \ No newline at end of file diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_cost_check.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_cost_check.dm index 1675dda453..977279082e 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_cost_check.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_cost_check.dm @@ -4,12 +4,12 @@ /obj/item/clothing/suit/space/space_ninja/proc/ninjacost(cost = 0, specificCheck = 0) var/mob/living/carbon/human/H = affecting if((H.stat || H.incorporeal_move) && (specificCheck != N_ADRENALINE))//Will not return if user is using an adrenaline booster since you can use them when stat==1. - H << "You must be conscious and solid to do this."//It's not a problem of stat==2 since the ninja will explode anyway if they die. + to_chat(H, "You must be conscious and solid to do this.") return 1 var/actualCost = cost*10 if(cost && cell.charge < actualCost) - H << "Not enough energy." + to_chat(H, "Not enough energy.") return 1 else //This shit used to be handled individually on every proc.. why even bother with a universal check proc then? @@ -20,10 +20,10 @@ cancel_stealth()//Get rid of it. if(N_SMOKE_BOMB) if(!s_bombs) - H << "There are no more smoke bombs remaining." + to_chat(H, "There are no more smoke bombs remaining.") return 1 if(N_ADRENALINE) if(!a_boost) - H << "You do not have any more adrenaline boosters." + to_chat(H, "You do not have any more adrenaline boosters.") return 1 return (s_coold)//Returns the value of the variable which counts down to zero. \ No newline at end of file diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm index b196e0663f..33f1a307cb 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_net.dm @@ -12,7 +12,7 @@ if(!locate(/obj/structure/energy_net) in C.loc)//Check if they are already being affected by an energy net. for(var/turf/T in getline(H.loc, C.loc)) if(T.density)//Don't want them shooting nets through walls. It's kind of cheesy. - H << "You may not use an energy net through solid obstacles!" + to_chat(H, "You may not use an energy net through solid obstacles!") return spawn(0) H.Beam(C,"n_beam",time=15) @@ -24,7 +24,7 @@ spawn(0)//Parallel processing. E.process(C) else - H << "[C.p_they(TRUE)] are already trapped inside an energy net!" + to_chat(H, "[C.p_they(TRUE)] are already trapped inside an energy net!") else - H << "[C.p_they(TRUE)] will bring no honor to your Clan!" + to_chat(H, "[C.p_they(TRUE)] will bring no honor to your Clan!") return \ No newline at end of file diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_smoke.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_smoke.dm index 5b8c58f1d2..3596976e9b 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_smoke.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_smoke.dm @@ -14,6 +14,6 @@ smoke.start() playsound(H.loc, 'sound/effects/bamf.ogg', 50, 2) s_bombs-- - H << "There are [s_bombs] smoke bombs remaining." + to_chat(H, "There are [s_bombs] smoke bombs remaining.") s_coold = 1 return \ No newline at end of file diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_stars.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_stars.dm index 39e7f5c570..bed0eafd59 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_stars.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_stars.dm @@ -11,7 +11,7 @@ var/mob/living/carbon/human/H = affecting var/obj/item/weapon/throwing_star/ninja/N = new(H) if(H.put_in_hands(N)) - H << "A throwing star has been created in your hand!" + to_chat(H, "A throwing star has been created in your hand!") else qdel(N) H.throw_mode_on() //So they can quickly throw it. diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm index b21119d52b..12e80d5c09 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm @@ -15,7 +15,7 @@ Contents: cancel_stealth() else if(cell.charge <= 0) - U << "You don't have enough power to enable Stealth!" + to_chat(U, "You don't have enough power to enable Stealth!") return s_active=!s_active animate(U, alpha = 50,time = 15) @@ -45,5 +45,5 @@ Contents: if(!s_busy) toggle_stealth() else - affecting << "Stealth does not appear to work!" + to_chat(affecting, "Stealth does not appear to work!") 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 bba75d5900..4183e83fbf 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 @@ -11,7 +11,7 @@ var/inview = 1 if(!energyKatana) - H << "Could not locate Energy Katana!" + to_chat(H, "Could not locate Energy Katana!") return if(energyKatana in H) diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_teleporting.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_teleporting.dm index de88dc03f6..339b0b2857 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_teleporting.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_teleporting.dm @@ -46,7 +46,7 @@ Contents: destination.phase_damage_creatures(20,H)//Paralyse and damage mobs and mechas on the turf s_coold = 1 else - H << "The VOID-shift device is malfunctioning, teleportation failed." + to_chat(H, "The VOID-shift device is malfunctioning, teleportation failed.") return @@ -75,7 +75,7 @@ Contents: T.phase_damage_creatures(20,H)//Paralyse and damage mobs and mechas on the turf s_coold = 1 else - H << "You cannot teleport into solid walls or from solid matter" + to_chat(H, "You cannot teleport into solid walls or from solid matter") return diff --git a/code/modules/ninja/suit/ninjaDrainAct.dm b/code/modules/ninja/suit/ninjaDrainAct.dm index 9d53bbf1c8..61e9edd8e4 100644 --- a/code/modules/ninja/suit/ninjaDrainAct.dm +++ b/code/modules/ninja/suit/ninjaDrainAct.dm @@ -121,27 +121,27 @@ They *could* go in their appropriate files, but this is supposed to be modular . = DRAIN_RD_HACK_FAILED - H << "Hacking \the [src]..." + to_chat(H, "Hacking \the [src]...") spawn(0) var/turf/location = get_turf(H) for(var/mob/living/silicon/ai/AI in player_list) - AI << "Network Alert: Hacking attempt detected[location?" in [location]":". Unable to pinpoint location"]." + to_chat(AI, "Network Alert: Hacking attempt detected[location?" in [location]":". Unable to pinpoint location"].") if(files && files.known_tech.len) for(var/datum/tech/current_data in S.stored_research) - H << "Checking \the [current_data.name] database." + to_chat(H, "Checking \the [current_data.name] database.") if(do_after(H, S.s_delay, target = src) && G.candrain && src) for(var/datum/tech/analyzing_data in files.known_tech) if(current_data.id == analyzing_data.id) if(analyzing_data.level > current_data.level) - H << "Database: UPDATED." + to_chat(H, "Database: UPDATED.") current_data.level = analyzing_data.level . = DRAIN_RD_HACKED break//Move on to next. else break//Otherwise, quit processing. - H << "Data analyzed. Process finished." + to_chat(H, "Data analyzed. Process finished.") //RD SERVER// @@ -152,27 +152,27 @@ They *could* go in their appropriate files, but this is supposed to be modular . = DRAIN_RD_HACK_FAILED - H << "Hacking \the [src]..." + to_chat(H, "Hacking \the [src]...") spawn(0) var/turf/location = get_turf(H) for(var/mob/living/silicon/ai/AI in player_list) - AI << "Network Alert: Hacking attempt detected[location?" in [location]":". Unable to pinpoint location"]." + to_chat(AI, "Network Alert: Hacking attempt detected[location?" in [location]":". Unable to pinpoint location"].") if(files && files.known_tech.len) for(var/datum/tech/current_data in S.stored_research) - H << "Checking \the [current_data.name] database." + to_chat(H, "Checking \the [current_data.name] database.") if(do_after(H, S.s_delay, target = src) && G.candrain && src) for(var/datum/tech/analyzing_data in files.known_tech) if(current_data.id == analyzing_data.id) if(analyzing_data.level > current_data.level) - H << "Database: UPDATED." + to_chat(H, "Database: UPDATED.") current_data.level = analyzing_data.level . = DRAIN_RD_HACKED break//Move on to next. else break//Otherwise, quit processing. - H << "Data analyzed. Process finished." + to_chat(H, "Data analyzed. Process finished.") //WIRE// @@ -247,7 +247,7 @@ They *could* go in their appropriate files, but this is supposed to be modular var/drain = 0 //Drain amount . = 0 - src << "Warning: Unauthorized access through sub-route 12, block C, detected." + to_chat(src, "Warning: Unauthorized access through sub-route 12, block C, detected.") if(cell && cell.charge) while(G.candrain && cell.charge > 0 && !maxcapacity) diff --git a/code/modules/ninja/suit/suit.dm b/code/modules/ninja/suit/suit.dm index bdf6f2b3eb..827047c93e 100644 --- a/code/modules/ninja/suit/suit.dm +++ b/code/modules/ninja/suit/suit.dm @@ -118,17 +118,17 @@ Contents: H.gloves.item_state = "s-ninjan" else if(H.mind.special_role!="Space Ninja") - H << "\red fÄTaL ÈÈRRoR: 382200-*#00CÖDE RED\nUNAU†HORIZED USÈ DETÈC†††eD\nCoMMÈNCING SUB-R0U†IN3 13...\nTÈRMInATING U-U-USÈR..." + to_chat(H, "\red fÄTaL ÈÈRRoR: 382200-*#00CÖDE RED\nUNAU†HORIZED USÈ DETÈC†††eD\nCoMMÈNCING SUB-R0U†IN3 13...\nTÈRMInATING U-U-USÈR...") H.gib() return 0 if(!istype(H.head, /obj/item/clothing/head/helmet/space/space_ninja)) - H << "ERROR: 100113 UNABLE TO LOCATE HEAD GEAR\nABORTING..." + to_chat(H, "ERROR: 100113 UNABLE TO LOCATE HEAD GEAR\nABORTING...") return 0 if(!istype(H.shoes, /obj/item/clothing/shoes/space_ninja)) - H << "ERROR: 122011 UNABLE TO LOCATE FOOT GEAR\nABORTING..." + to_chat(H, "ERROR: 122011 UNABLE TO LOCATE FOOT GEAR\nABORTING...") return 0 if(!istype(H.gloves, /obj/item/clothing/gloves/space_ninja)) - H << "ERROR: 110223 UNABLE TO LOCATE HAND GEAR\nABORTING..." + to_chat(H, "ERROR: 110223 UNABLE TO LOCATE HAND GEAR\nABORTING...") return 0 affecting = H @@ -168,7 +168,7 @@ Contents: ..() if(s_initialized) if(user == affecting) - user << "All systems operational. Current energy capacity: [cell.charge]." - user << "The CLOAK-tech device is [s_active?"active":"inactive"]." - user << "There are [s_bombs] smoke bomb\s remaining." - user << "There are [a_boost] adrenaline booster\s remaining." + to_chat(user, "All systems operational. Current energy capacity: [cell.charge].") + to_chat(user, "The CLOAK-tech device is [s_active?"active":"inactive"].") + to_chat(user, "There are [s_bombs] smoke bomb\s remaining.") + to_chat(user, "There are [a_boost] adrenaline booster\s remaining.") diff --git a/code/modules/ninja/suit/suit_attackby.dm b/code/modules/ninja/suit/suit_attackby.dm index f5c8f60acd..e54a5e0e85 100644 --- a/code/modules/ninja/suit/suit_attackby.dm +++ b/code/modules/ninja/suit/suit_attackby.dm @@ -13,16 +13,16 @@ R.volume -= amount_to_transfer//Remove from reagent volume. Don't want to delete the reagent now since we need to perserve the name. reagents.add_reagent(reagent_id, amount_to_transfer)//Add to suit. Reactions are not important. total_reagent_transfer += amount_to_transfer//Add to total reagent trans. - U << "Added [amount_to_transfer] units of [R.name]."//Reports on the specific reagent added. + to_chat(U, "Added [amount_to_transfer] units of [R.name].") I.reagents.update_total()//Now we manually update the total to make sure everything is properly shoved under the rug. - U << "Replenished a total of [total_reagent_transfer ? total_reagent_transfer : "zero"] chemical units."//Let the player know how much total volume was added. + to_chat(U, "Replenished a total of [total_reagent_transfer ? total_reagent_transfer : "zero"] chemical units.") return else if(istype(I, /obj/item/weapon/stock_parts/cell)) var/obj/item/weapon/stock_parts/cell/CELL = I if(CELL.maxcharge > cell.maxcharge && n_gloves && n_gloves.candrain) - U << "Higher maximum capacity detected.\nUpgrading..." + to_chat(U, "Higher maximum capacity detected.\nUpgrading...") if (n_gloves && n_gloves.candrain && do_after(U,s_delay, target = src)) U.drop_item() CELL.loc = src @@ -34,9 +34,9 @@ old_cell.corrupt() old_cell.updateicon() cell = CELL - U << "Upgrade complete. Maximum capacity: [round(cell.maxcharge/100)]%" + to_chat(U, "Upgrade complete. Maximum capacity: [round(cell.maxcharge/100)]%") else - U << "Procedure interrupted. Protocol terminated." + to_chat(U, "Procedure interrupted. Protocol terminated.") return else if(istype(I, /obj/item/weapon/disk/tech_disk))//If it's a data disk, we want to copy the research on to the suit. @@ -47,7 +47,7 @@ has_research = 1 break if(has_research)//If it has something on it. - U << "Research information detected, processing..." + to_chat(U, "Research information detected, processing...") if(do_after(U,s_delay, target = src)) for(var/V1 in 1 to TD.max_tech_stored) var/datum/tech/new_data = TD.tech_stored[V1] @@ -59,12 +59,12 @@ if(current_data.id == new_data.id) current_data.level = max(current_data.level, new_data.level) break - U << "Data analyzed and updated. Disk erased." + to_chat(U, "Data analyzed and updated. Disk erased.") else - U << "ERROR: Procedure interrupted. Process terminated." + to_chat(U, "ERROR: Procedure interrupted. Process terminated.") else I.loc = src t_disk = I - U << "You slot \the [I] into \the [src]." + to_chat(U, "You slot \the [I] into \the [src].") return ..() \ No newline at end of file diff --git a/code/modules/ninja/suit/suit_initialisation.dm b/code/modules/ninja/suit/suit_initialisation.dm index 621ee154ca..6851eb9b48 100644 --- a/code/modules/ninja/suit/suit_initialisation.dm +++ b/code/modules/ninja/suit/suit_initialisation.dm @@ -17,7 +17,7 @@ if(!s_busy) deinitialize() else - affecting << "The function did not trigger!" + to_chat(affecting, "The function did not trigger!") /obj/item/clothing/suit/space/space_ninja/proc/ninitialize(delay = s_delay, mob/living/carbon/human/U = loc) @@ -26,27 +26,27 @@ for(var/i,i<7,i++) switch(i) if(0) - U << "Now initializing..." + to_chat(U, "Now initializing...") if(1) if(!lock_suit(U))//To lock the suit onto wearer. break - U << "Securing external locking mechanism...\nNeural-net established." + to_chat(U, "Securing external locking mechanism...\nNeural-net established.") if(2) - U << "Extending neural-net interface...\nNow monitoring brain wave pattern..." + to_chat(U, "Extending neural-net interface...\nNow monitoring brain wave pattern...") if(3) if(U.stat==2||U.health<=0) - U << "FĆAL �Rr�R: 344--93#�&&21 BR��N |/|/aV� PATT$RN RED\nA-A-aB�rT�NG..." + to_chat(U, "FĆAL �Rr�R: 344--93#�&&21 BR��N |/|/aV� PATT$RN RED\nA-A-aB�rT�NG...") unlock_suit() break lock_suit(U,1)//Check for icons. U.regenerate_icons() - U << "Linking neural-net interface...\nPattern\green GREEN, continuing operation." + to_chat(U, "Linking neural-net interface...\nPattern\green GREEN, continuing operation.") if(4) - U << "VOID-shift device status: ONLINE.\nCLOAK-tech device status: ONLINE." + to_chat(U, "VOID-shift device status: ONLINE.\nCLOAK-tech device status: ONLINE.") if(5) - U << "Primary system status: ONLINE.\nBackup system status: ONLINE.\nCurrent energy capacity: [cell.charge]." + to_chat(U, "Primary system status: ONLINE.\nBackup system status: ONLINE.\nCurrent energy capacity: [cell.charge].") if(6) - U << "All systems operational. Welcome to SpiderOS, [U.real_name]." + to_chat(U, "All systems operational. Welcome to SpiderOS, [U.real_name].") grant_ninja_verbs() grant_equip_verbs() ntick() @@ -54,11 +54,11 @@ s_busy = 0 else if(!U.mind||U.mind.assigned_role!=U.mind.special_role)//Your run of the mill persons shouldn't know what it is. Or how to turn it on. - U << "You do not understand how this suit functions. Where the heck did it even come from?" + to_chat(U, "You do not understand how this suit functions. Where the heck did it even come from?") else if(s_initialized) - U << "The suit is already functioning. Please report this bug." + to_chat(U, "The suit is already functioning. Please report this bug.") else - U << "ERROR: You cannot use this function at this time." + to_chat(U, "ERROR: You cannot use this function at this time.") return @@ -67,33 +67,33 @@ if(affecting==loc&&!s_busy) var/mob/living/carbon/human/U = affecting if(!s_initialized) - U << "The suit is not initialized. Please report this bug." + to_chat(U, "The suit is not initialized. Please report this bug.") return if(alert("Are you certain you wish to remove the suit? This will take time and remove all abilities.",,"Yes","No")=="No") return if(s_busy) - U << "ERROR: You cannot use this function at this time." + to_chat(U, "ERROR: You cannot use this function at this time.") return s_busy = 1 for(var/i = 0,i<7,i++) switch(i) if(0) - U << "Now de-initializing..." + to_chat(U, "Now de-initializing...") spideros = 0//Spideros resets. if(1) - U << "Logging off, [U:real_name]. Shutting down SpiderOS." + to_chat(U, "Logging off, [U:real_name]. Shutting down SpiderOS.") remove_ninja_verbs() if(2) - U << "Primary system status: OFFLINE.\nBackup system status: OFFLINE." + to_chat(U, "Primary system status: OFFLINE.\nBackup system status: OFFLINE.") if(3) - U << "VOID-shift device status: OFFLINE.\nCLOAK-tech device status: OFFLINE." + to_chat(U, "VOID-shift device status: OFFLINE.\nCLOAK-tech device status: OFFLINE.") cancel_stealth()//Shutdowns stealth. if(4) - U << "Disconnecting neural-net interface...\greenSuccess." + to_chat(U, "Disconnecting neural-net interface...\greenSuccess.") if(5) - U << "Disengaging neural-net interface...\greenSuccess." + to_chat(U, "Disengaging neural-net interface...\greenSuccess.") if(6) - U << "Unsecuring external locking mechanism...\nNeural-net abolished.\nOperation status: FINISHED." + to_chat(U, "Unsecuring external locking mechanism...\nNeural-net abolished.\nOperation status: FINISHED.") remove_equip_verbs() unlock_suit() U.regenerate_icons() diff --git a/code/modules/paperwork/clipboard.dm b/code/modules/paperwork/clipboard.dm index dd544a7608..66fc0cf32a 100644 --- a/code/modules/paperwork/clipboard.dm +++ b/code/modules/paperwork/clipboard.dm @@ -32,7 +32,7 @@ if(!user.transferItemToLoc(W, src)) return toppaper = W - user << "You clip the paper onto \the [src]." + to_chat(user, "You clip the paper onto \the [src].") update_icon() else if(toppaper) toppaper.attackby(user.get_active_held_item(), user) @@ -81,7 +81,7 @@ if(!usr.transferItemToLoc(W, src)) return haspen = W - usr << "You slot [W] into [src]." + to_chat(usr, "You slot [W] into [src].") if(href_list["write"]) var/obj/item/P = locate(href_list["write"]) @@ -111,7 +111,7 @@ var/obj/item/P = locate(href_list["top"]) if(istype(P) && P.loc == src) toppaper = P - usr << "You move [P.name] to the top." + to_chat(usr, "You move [P.name] to the top.") //Update everything attack_self(usr) diff --git a/code/modules/paperwork/contract.dm b/code/modules/paperwork/contract.dm index 35e19a7664..634a2d056d 100644 --- a/code/modules/paperwork/contract.dm +++ b/code/modules/paperwork/contract.dm @@ -40,14 +40,14 @@ deconvert = prob (10) // the HoP doesn't have AS much legal training if(deconvert) M.visible_message("[user] reminds [M] that [M]'s soul was already purchased by Nanotrasen!") - M << "You feel that your soul has returned to its rightful owner, Nanotrasen." + to_chat(M, "You feel that your soul has returned to its rightful owner, Nanotrasen.") M.return_soul() else if(ishuman(M)) var/mob/living/carbon/human/N = M if(!istype(N.head, /obj/item/clothing/head/helmet)) N.adjustBrainLoss(10) - N << "You feel dumber." + to_chat(N, "You feel dumber.") M.visible_message("[user] beats [M] over the head with [src]!", \ "[user] beats [M] over the head with [src]!") return ..() @@ -164,7 +164,7 @@ if(istype(P, /obj/item/weapon/pen) || istype(P, /obj/item/toy/crayon)) attempt_signature(user) else if(istype(P, /obj/item/weapon/stamp)) - user << "You stamp the paper with your rubber stamp, however the ink ignites as you release the stamp." + to_chat(user, "You stamp the paper with your rubber stamp, however the ink ignites as you release the stamp.") else if(P.is_hot()) user.visible_message("[user] brings [P] next to [src], but [src] does not catch fire!", "The [src] refuses to ignite!") else @@ -183,21 +183,21 @@ if(user.mind == target) if(user.mind.soulOwner != owner) if (contractType == CONTRACT_REVIVE) - user << "You are already alive, this contract would do nothing." + to_chat(user, "You are already alive, this contract would do nothing.") else if(signed) - user<< "This contract has already been signed. It may not be signed again." + to_chat(user, "This contract has already been signed. It may not be signed again.") else - user << "You quickly scrawl your name on the contract" + to_chat(user, "You quickly scrawl your name on the contract") if(FulfillContract(target.current, blood)<=0) - user << "But it seemed to have no effect, perhaps even Hell itself cannot grant this boon?" + to_chat(user, "But it seemed to have no effect, perhaps even Hell itself cannot grant this boon?") return 1 else - user << "This devil already owns your soul, you may not sell it to them again." + to_chat(user, "This devil already owns your soul, you may not sell it to them again.") else - user << "Your signature simply slides off the sheet, it seems this contract is not meant for you to sign." + to_chat(user, "Your signature simply slides off the sheet, it seems this contract is not meant for you to sign.") else - user << "You don't know how to read or write." + to_chat(user, "You don't know how to read or write.") return 0 @@ -205,7 +205,7 @@ /obj/item/weapon/paper/contract/infernal/revive/attack(mob/M, mob/living/user) if (target == M.mind && M.stat == DEAD && M.mind.soulOwner == M.mind) if (cooldown) - user << "Give [M] a chance to think through the contract, don't rush him." + to_chat(user, "Give [M] a chance to think through the contract, don't rush him.") return 0 cooldown = TRUE var/mob/living/carbon/human/H = M @@ -242,8 +242,8 @@ user.mind.damnation_type = contractType owner.devilinfo.add_soul(user.mind) update_text(user.real_name, blood) - user << "A profound emptiness washes over you as you lose ownership of your soul." - user << "This does NOT make you an antagonist if you were not already." + to_chat(user, "A profound emptiness washes over you as you lose ownership of your soul.") + to_chat(user, "This does NOT make you an antagonist if you were not already.") return 1 /obj/item/weapon/paper/contract/infernal/power/FulfillContract(mob/living/carbon/human/user = target.current, blood = 0) diff --git a/code/modules/paperwork/filingcabinet.dm b/code/modules/paperwork/filingcabinet.dm index 457747be78..ad68a963d5 100644 --- a/code/modules/paperwork/filingcabinet.dm +++ b/code/modules/paperwork/filingcabinet.dm @@ -49,27 +49,27 @@ if(istype(P, /obj/item/weapon/paper) || istype(P, /obj/item/weapon/folder) || istype(P, /obj/item/weapon/photo) || istype(P, /obj/item/documents)) if(!user.drop_item()) return - user << "You put [P] in [src]." + to_chat(user, "You put [P] in [src].") P.loc = src icon_state = "[initial(icon_state)]-open" sleep(5) icon_state = initial(icon_state) updateUsrDialog() else if(istype(P, /obj/item/weapon/wrench)) - user << "You begin to [anchored ? "unwrench" : "wrench"] [src]." + to_chat(user, "You begin to [anchored ? "unwrench" : "wrench"] [src].") playsound(loc, P.usesound, 50, 1) if(do_after(user, 20, target = src)) - user << "You successfully [anchored ? "unwrench" : "wrench"] [src]." + to_chat(user, "You successfully [anchored ? "unwrench" : "wrench"] [src].") anchored = !anchored else if(user.a_intent != INTENT_HARM) - user << "You can't put [P] in [src]!" + to_chat(user, "You can't put [P] in [src]!") else return ..() /obj/structure/filingcabinet/attack_hand(mob/user) if(contents.len <= 0) - user << "[src] is empty." + to_chat(user, "[src] is empty.") return user.set_machine(src) @@ -94,9 +94,9 @@ I.loc = loc if(prob(25)) step_rand(I) - user << "You pull \a [I] out of [src] at random." + to_chat(user, "You pull \a [I] out of [src] at random.") return - user << "You find nothing in [src]." + to_chat(user, "You find nothing in [src].") /obj/structure/filingcabinet/Topic(href, href_list) if(href_list["retrieve"]) @@ -217,4 +217,4 @@ var/list/employmentCabinets = list() sleep(100) // prevents the devil from just instantly emptying the cabinet, ensuring an easy win. cooldown = 0 else - user << "The [src] is jammed, give it a few seconds." + to_chat(user, "The [src] is jammed, give it a few seconds.") diff --git a/code/modules/paperwork/folders.dm b/code/modules/paperwork/folders.dm index 252c63b0ed..1fd71e9bba 100644 --- a/code/modules/paperwork/folders.dm +++ b/code/modules/paperwork/folders.dm @@ -34,7 +34,7 @@ if(istype(W, /obj/item/weapon/paper) || istype(W, /obj/item/weapon/photo) || istype(W, /obj/item/documents)) if(!user.transferItemToLoc(W, src)) return - user << "You put [W] into [src]." + to_chat(user, "You put [W] into [src].") update_icon() else if(istype(W, /obj/item/weapon/pen)) var/n_name = copytext(sanitize(input(user, "What would you like to label the folder?", "Folder Labelling", null) as text), 1, MAX_NAME_LEN) diff --git a/code/modules/paperwork/handlabeler.dm b/code/modules/paperwork/handlabeler.dm index 7367eef9cc..1fc7e916dd 100644 --- a/code/modules/paperwork/handlabeler.dm +++ b/code/modules/paperwork/handlabeler.dm @@ -41,19 +41,19 @@ return if(!labels_left) - user << "No labels left!" + to_chat(user, "No labels left!") return if(!label || !length(label)) - user << "No text set!" + to_chat(user, "No text set!") return if(length(A.name) + length(label) > 64) - user << "Label too big!" + to_chat(user, "Label too big!") return if(ishuman(A)) - user << "You can't label humans!" + to_chat(user, "You can't label humans!") return if(issilicon(A)) - user << "You can't label cyborgs!" + to_chat(user, "You can't label cyborgs!") return user.visible_message("[user] labels [A] as [label].", \ @@ -64,26 +64,26 @@ /obj/item/weapon/hand_labeler/attack_self(mob/user) if(!user.IsAdvancedToolUser()) - user << "You don't have the dexterity to use [src]!" + to_chat(user, "You don't have the dexterity to use [src]!") return mode = !mode icon_state = "labeler[mode]" if(mode) - user << "You turn on [src]." + to_chat(user, "You turn on [src].") //Now let them chose the text. var/str = copytext(reject_bad_text(input(user,"Label text?","Set label","")),1,MAX_NAME_LEN) if(!str || !length(str)) - user << "Invalid text!" + to_chat(user, "Invalid text!") return label = str - user << "You set the text to '[str]'." + to_chat(user, "You set the text to '[str]'.") else - user << "You turn off [src]." + to_chat(user, "You turn off [src].") /obj/item/weapon/hand_labeler/attackby(obj/item/I, mob/user, params) ..() if(istype(I, /obj/item/hand_labeler_refill)) - user << "You insert [I] into [src]." + to_chat(user, "You insert [I] into [src].") qdel(I) labels_left = initial(labels_left) //Yes, it's capped at its initial value diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 615a6c5157..1e1b911f17 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -69,7 +69,7 @@ if(istype(src, /obj/item/weapon/paper/talisman)) //Talismans cannot be read if(!iscultist(user) && !user.stat) - user << "There are indecipherable images scrawled on the paper in what looks to be... blood?" + to_chat(user, "There are indecipherable images scrawled on the paper in what looks to be... blood?") return if(in_range(user, src) || isobserver(user)) if(user.is_literate()) @@ -79,7 +79,7 @@ user << browse("[name][stars(info)]
    [stamps]", "window=[name]") onclose(user, "[name]") else - user << "It is too far away." + to_chat(user, "It is too far away.") /obj/item/weapon/paper/verb/rename() @@ -92,7 +92,7 @@ if(ishuman(usr)) var/mob/living/carbon/human/H = usr if(H.disabilities & CLUMSY && prob(25)) - H << "You cut yourself on the paper! Ahhhh! Ahhhhh!" + to_chat(H, "You cut yourself on the paper! Ahhhh! Ahhhhh!") H.damageoverlaytemp = 9001 H.update_damage_hud() return @@ -320,10 +320,10 @@ user << browse("[name][info_links]
    [stamps]", "window=[name]") return else - user << "You don't know how to read or write." + to_chat(user, "You don't know how to read or write.") return if(istype(src, /obj/item/weapon/paper/talisman/)) - user << "[P]'s ink fades away shortly after it is written." + to_chat(user, "[P]'s ink fades away shortly after it is written.") return else if(istype(P, /obj/item/weapon/stamp)) @@ -341,7 +341,7 @@ LAZYADD(stamped, P.icon_state) add_overlay(stampoverlay) - user << "You stamp the paper with your rubber stamp." + to_chat(user, "You stamp the paper with your rubber stamp.") if(P.is_hot()) if(user.disabilities & CLUMSY && prob(10)) diff --git a/code/modules/paperwork/paper_cutter.dm b/code/modules/paperwork/paper_cutter.dm index 79ed3b3254..290f4417e4 100644 --- a/code/modules/paperwork/paper_cutter.dm +++ b/code/modules/paperwork/paper_cutter.dm @@ -47,7 +47,7 @@ if(!user.drop_item()) return playsound(loc, "pageturn", 60, 1) - user << "You place [P] in [src]." + to_chat(user, "You place [P] in [src].") P.loc = src storedpaper = P update_icon() @@ -55,14 +55,14 @@ if(istype(P, /obj/item/weapon/hatchet/cutterblade) && !storedcutter) if(!user.drop_item()) return - user << "You replace [src]'s [P]." + to_chat(user, "You replace [src]'s [P].") P.loc = src storedcutter = P update_icon() return if(istype(P, /obj/item/weapon/screwdriver) && storedcutter) playsound(src, P.usesound, 50, 1) - user << "[storedcutter] has been [cuttersecured ? "unsecured" : "secured"]." + to_chat(user, "[storedcutter] has been [cuttersecured ? "unsecured" : "secured"].") cuttersecured = !cuttersecured return ..() @@ -71,18 +71,18 @@ /obj/item/weapon/papercutter/attack_hand(mob/user) add_fingerprint(user) if(!storedcutter) - user << "The cutting blade is gone! You can't use [src] now." + to_chat(user, "The cutting blade is gone! You can't use [src] now.") return if(!cuttersecured) - user << "You remove [src]'s [storedcutter]." + to_chat(user, "You remove [src]'s [storedcutter].") user.put_in_hands(storedcutter) storedcutter = null update_icon() if(storedpaper) playsound(src.loc, 'sound/weapons/slash.ogg', 50, 1) - user << "You neatly cut [storedpaper]." + to_chat(user, "You neatly cut [storedpaper].") storedpaper = null qdel(storedpaper) new /obj/item/weapon/paperslip(get_turf(src)) diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm index b3b13dbbc5..c576de7a98 100644 --- a/code/modules/paperwork/paperbin.dm +++ b/code/modules/paperwork/paperbin.dm @@ -73,7 +73,7 @@ var/obj/item/weapon/pen/P = bin_pen P.loc = user.loc user.put_in_hands(P) - user << "You take [P] out of \the [src]." + to_chat(user, "You take [P] out of \the [src].") bin_pen = null update_icon() else if(total_paper >= 1) @@ -94,9 +94,9 @@ P.loc = user.loc user.put_in_hands(P) - user << "You take [P] out of \the [src]." + to_chat(user, "You take [P] out of \the [src].") else - user << "[src] is empty!" + to_chat(user, "[src] is empty!") add_fingerprint(user) @@ -106,7 +106,7 @@ var/obj/item/weapon/paper/P = I if(!user.transferItemToLoc(P, src)) return - user << "You put [P] in [src]." + to_chat(user, "You put [P] in [src].") papers.Add(P) total_paper++ update_icon() @@ -114,7 +114,7 @@ var/obj/item/weapon/pen/P = I if(!user.transferItemToLoc(P, src)) return - user << "You put [P] in [src]." + to_chat(user, "You put [P] in [src].") bin_pen = P update_icon() else @@ -123,9 +123,9 @@ /obj/item/weapon/paper_bin/examine(mob/user) ..() if(total_paper) - user << "It contains " + (total_paper > 1 ? "[total_paper] papers" : " one paper")+"." + to_chat(user, "It contains " + (total_paper > 1 ? "[total_paper] papers" : " one paper")+".") else - user << "It doesn't contain anything." + to_chat(user, "It doesn't contain anything.") /obj/item/weapon/paper_bin/update_icon() diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm index 01f07b6e14..d294e094f5 100644 --- a/code/modules/paperwork/paperplane.dm +++ b/code/modules/paperwork/paperplane.dm @@ -13,7 +13,7 @@ var/obj/item/weapon/paper/internalPaper -/obj/item/weapon/paperplane/New(loc, obj/item/weapon/paper/newPaper) +/obj/item/weapon/paperplane/Initialize(mapload, obj/item/weapon/paper/newPaper) ..() pixel_y = rand(-8, 8) pixel_x = rand(-9, 9) @@ -48,8 +48,9 @@ add_overlay(stampoverlay) /obj/item/weapon/paperplane/attack_self(mob/user) - user << "You unfold [src]." - var/internal_paper_tmp = internalPaper + to_chat(user, "You unfold [src].") + var/atom/movable/internal_paper_tmp = internalPaper + internal_paper_tmp.forceMove(loc) internalPaper = null qdel(src) user.put_in_hands(internal_paper_tmp) @@ -57,7 +58,7 @@ /obj/item/weapon/paperplane/attackby(obj/item/weapon/P, mob/living/carbon/human/user, params) ..() if(istype(P, /obj/item/weapon/pen) || istype(P, /obj/item/toy/crayon)) - user << "You should unfold [src] before changing it." + to_chat(user, "You should unfold [src] before changing it.") return else if(istype(P, /obj/item/weapon/stamp)) //we don't randomize stamps on a paperplane @@ -102,9 +103,9 @@ if ( istype(user) ) if( (!in_range(src, user)) || user.stat || user.restrained() ) return - user << "You fold [src] into the shape of a plane!" + to_chat(user, "You fold [src] into the shape of a plane!") user.temporarilyRemoveItemFromInventory(src) I = new /obj/item/weapon/paperplane(user, src) user.put_in_hands(I) else - user << " You lack the dexterity to fold \the [src]. " + to_chat(user, " You lack the dexterity to fold \the [src]. ") diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index 2d3bdf0281..73f4c73cfa 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -61,7 +61,7 @@ colour = "blue" else colour = "black" - user << "\The [src] will now write in [colour]." + to_chat(user, "\The [src] will now write in [colour].") desc = "It's a fancy four-color ink pen, set to [colour]." @@ -69,9 +69,9 @@ var/deg = input(user, "What angle would you like to rotate the pen head to? (1-360)", "Rotate Pen Head") as null|num if(deg && (deg > 0 && deg <= 360)) degrees = deg - user << "You rotate the top of the pen to [degrees] degrees." + to_chat(user, "You rotate the top of the pen to [degrees] degrees.") if(hidden_uplink && degrees == traitor_unlock_degrees) - user << "Your pen makes a clicking noise, before quickly rotating back to 0 degrees!" + to_chat(user, "Your pen makes a clicking noise, before quickly rotating back to 0 degrees!") degrees = 0 hidden_uplink.interact(user) @@ -89,9 +89,9 @@ if(!force) if(M.can_inject(user, 1)) - user << "You stab [M] with the pen." + to_chat(user, "You stab [M] with the pen.") if(!stealth) - M << "You feel a tiny prick!" + to_chat(M, "You feel a tiny prick!") . = 1 add_logs(user, M, "stabbed", src) @@ -99,6 +99,41 @@ else . = ..() +/obj/item/weapon/pen/afterattack(obj/O, mob/living/user, proximity) + //Changing Name/Description of items. Only works if they have the 'unique_rename' var set + if(isobj(O) && proximity) + if(O.unique_rename) + var/penchoice = input(user, "What would you like to edit?", "Rename or change description?") as null|anything in list("Rename","Change description") + if(!QDELETED(O) && user.canUseTopic(O, be_close = TRUE)) + + if(penchoice == "Rename") + var/input = stripped_input(user,"What do you want to name \the [O.name]?", ,"", MAX_NAME_LEN) + var/oldname = O.name + if(!QDELETED(O) && user.canUseTopic(O, be_close = TRUE)) + if(oldname == input) + to_chat(user, "You changed \the [O.name] to... well... \the [O.name].") + return + else + O.name = input + to_chat(user, "\The [oldname] has been successfully been renamed to \the [input].") + return + else + to_chat(user, "You are too far away!") + + if(penchoice == "Change description") + var/input = stripped_input(user,"Describe \the [O.name] here", ,"", 100) + if(!QDELETED(O) && user.canUseTopic(O, be_close = TRUE)) + O.desc = input + to_chat(user, "You have successfully changed \the [O.name]'s description.") + return + else + to_chat(user, "You are too far away!") + else + to_chat(user, "You are too far away!") + return + else + return + /* * Sleepypens */ @@ -142,7 +177,7 @@ embed_chance = initial(embed_chance) throwforce = initial(throwforce) playsound(user, 'sound/weapons/saberoff.ogg', 5, 1) - user << "[src] can now be concealed." + to_chat(user, "[src] can now be concealed.") else on = 1 force = 18 @@ -152,7 +187,7 @@ embed_chance = 100 //rule of cool throwforce = 35 playsound(user, 'sound/weapons/saberon.ogg', 5, 1) - user << "[src] is now active." + to_chat(user, "[src] is now active.") update_icon() /obj/item/weapon/pen/edagger/update_icon() diff --git a/code/modules/paperwork/photocopier.dm b/code/modules/paperwork/photocopier.dm index 97a0b428e2..2b9c212d17 100644 --- a/code/modules/paperwork/photocopier.dm +++ b/code/modules/paperwork/photocopier.dm @@ -143,7 +143,7 @@ for(var/i = 0, i < copies, i++) var/icon/temp_img if(ishuman(ass) && (ass.get_item_by_slot(slot_w_uniform) || ass.get_item_by_slot(slot_wear_suit))) - usr << "You feel kind of silly, copying [ass == usr ? "your" : ass][ass == usr ? "" : "\'s"] ass with [ass == usr ? "your" : "their"] clothes on." //' + to_chat(usr, "You feel kind of silly, copying [ass == usr ? "your" : ass][ass == usr ? "" : "\'s"] ass with [ass == usr ? "your" : "their"] clothes on." ) break else if(toner >= 5 && !busy && check_ass()) //You have to be sitting on the copier and either be a xeno or a human without clothes on. if(isalienadult(ass) || istype(ass,/mob/living/simple_animal/hostile/alien)) //Xenos have their own asses, thanks to Pybro. @@ -187,7 +187,7 @@ remove_photocopy(doccopy, usr) doccopy = null else if(check_ass()) - ass << "You feel a slight pressure on your ass." + to_chat(ass, "You feel a slight pressure on your ass.") updateUsrDialog() else if(href_list["min"]) if(copies > 1) @@ -206,7 +206,7 @@ var/datum/picture/selection var/mob/living/silicon/ai/tempAI = usr if(tempAI.aicamera.aipictures.len == 0) - usr << "No images saved" + to_chat(usr, "No images saved") return for(var/datum/picture/t in tempAI.aicamera.aipictures) nametemp += t.fields["name"] @@ -238,7 +238,7 @@ /obj/machinery/photocopier/proc/do_insertion(obj/item/O, mob/user) O.loc = src - user << "You insert [O] into [src]." + to_chat(user, "You insert [O] into [src].") flick("photocopier1", src) updateUsrDialog() @@ -248,13 +248,13 @@ user.put_in_hands(O) else O.loc = src.loc - user << "You take [O] out of [src]." + to_chat(user, "You take [O] out of [src].") /obj/machinery/photocopier/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/weapon/paper)) if(copier_empty()) if(istype(O,/obj/item/weapon/paper/contract/infernal)) - user << "[src] smokes, smelling of brimstone!" + to_chat(user, "[src] smokes, smelling of brimstone!") resistance_flags |= FLAMMABLE fire_act() else @@ -263,7 +263,7 @@ copy = O do_insertion(O, user) else - user << "There is already something in [src]!" + to_chat(user, "There is already something in [src]!") else if(istype(O, /obj/item/weapon/photo)) if(copier_empty()) @@ -272,7 +272,7 @@ photocopy = O do_insertion(O, user) else - user << "There is already something in [src]!" + to_chat(user, "There is already something in [src]!") else if(istype(O, /obj/item/documents)) if(copier_empty()) @@ -281,7 +281,7 @@ doccopy = O do_insertion(O, user) else - user << "There is already something in [src]!" + to_chat(user, "There is already something in [src]!") else if(istype(O, /obj/item/device/toner)) if(toner <= 0) @@ -289,21 +289,21 @@ return qdel(O) toner = 40 - user << "You insert [O] into [src]." + to_chat(user, "You insert [O] into [src].") updateUsrDialog() else - user << "This cartridge is not yet ready for replacement! Use up the rest of the toner." + to_chat(user, "This cartridge is not yet ready for replacement! Use up the rest of the toner.") else if(istype(O, /obj/item/weapon/wrench)) if(isinspace()) - user << "There's nothing to fasten [src] to!" + to_chat(user, "There's nothing to fasten [src] to!") return playsound(loc, O.usesound, 50, 1) - user << "You start [anchored ? "unwrenching" : "wrenching"] [src]..." + to_chat(user, "You start [anchored ? "unwrenching" : "wrenching"] [src]...") if(do_after(user, 20*O.toolspeed, target = src)) if(QDELETED(src)) return - user << "You [anchored ? "unwrench" : "wrench"] [src]." + to_chat(user, "You [anchored ? "unwrench" : "wrench"] [src].") anchored = !anchored else return ..() diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm index cc77c33ef3..24ad49235c 100644 --- a/code/modules/paperwork/photography.dm +++ b/code/modules/paperwork/photography.dm @@ -57,7 +57,7 @@ if(in_range(src, user)) show(user) else - user << "You need to get closer to get a good look at this photo!" + to_chat(user, "You need to get closer to get a good look at this photo!") /obj/item/weapon/photo/proc/show(mob/user) @@ -167,11 +167,11 @@ /obj/item/device/camera/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/device/camera_film)) if(pictures_left) - user << "[src] still has some film in it!" + to_chat(user, "[src] still has some film in it!") return if(!user.temporarilyRemoveItemFromInventory(I)) return - user << "You insert [I] into [src]." + to_chat(user, "You insert [I] into [src].") qdel(I) pictures_left = pictures_max return @@ -180,7 +180,7 @@ /obj/item/device/camera/examine(mob/user) ..() - user << "It has [pictures_left] photos left." + to_chat(user, "It has [pictures_left] photos left.") /obj/item/device/camera/proc/camera_get_icon(list/turfs, turf/center) @@ -364,7 +364,7 @@ P.fields["blueprints"] = blueprintsinject aipictures += P - usr << "Image recorded" //feedback to the AI player that the picture was taken + to_chat(usr, "Image recorded") //feedback to the AI player that the picture was taken /obj/item/device/camera/proc/injectmasteralbum(icon, img, desc, pixel_x, pixel_y, blueprintsinject) //stores image information to a list similar to that of the datacore var/numberer = 1 @@ -382,7 +382,7 @@ P.fields["blueprints"] = blueprintsinject C.connected_ai.aicamera.aipictures += P - usr << "Image recorded and saved to remote database" //feedback to the Cyborg player that the picture was taken + to_chat(usr, "Image recorded and saved to remote database") //feedback to the Cyborg player that the picture was taken else injectaialbum(icon, img, desc, pixel_x, pixel_y, blueprintsinject) @@ -390,7 +390,7 @@ var/list/nametemp = list() var/find if(targetloc.aipictures.len == 0) - usr << "No images saved" + to_chat(usr, "No images saved") return for(var/datum/picture/t in targetloc.aipictures) nametemp += t.fields["name"] @@ -408,7 +408,7 @@ P.pixel_y = selection.fields["pixel_y"] P.show(usr) - usr << P.desc + to_chat(usr, P.desc) qdel(P) //so 10 thousand picture items are not left in memory should an AI take them and then view them all /obj/item/device/camera/siliconcam/proc/viewpictures(user) @@ -434,7 +434,7 @@ playsound(loc, pick('sound/items/polaroid1.ogg', 'sound/items/polaroid2.ogg'), 75, 1, -3) pictures_left-- - user << "[pictures_left] photos left." + to_chat(user, "[pictures_left] photos left.") icon_state = "camera_off" on = 0 spawn(64) @@ -449,11 +449,11 @@ /obj/item/device/camera/siliconcam/proc/camera_mode_off() src.in_camera_mode = 0 - usr << "Camera Mode deactivated" + to_chat(usr, "Camera Mode deactivated") /obj/item/device/camera/siliconcam/proc/camera_mode_on() src.in_camera_mode = 1 - usr << "Camera Mode activated" + to_chat(usr, "Camera Mode activated") /obj/item/device/camera/siliconcam/robot_camera/proc/borgprint() var/list/nametemp = list() @@ -462,14 +462,14 @@ var/mob/living/silicon/robot/C = src.loc var/obj/item/device/camera/siliconcam/targetcam = null if(C.toner < 20) - usr << "Insufficent toner to print image." + to_chat(usr, "Insufficent toner to print image.") return if(C.connected_ai) targetcam = C.connected_ai.aicamera else targetcam = C.aicamera if(targetcam.aipictures.len == 0) - usr << "No images saved" + to_chat(usr, "No images saved") return for(var/datum/picture/t in targetcam.aipictures) nametemp += t.fields["name"] @@ -484,7 +484,7 @@ p.pixel_y = rand(-10, 10) C.toner -= 20 //Cyborgs are very ineffeicient at printing an image visible_message("[C.name] spits out a photograph from a narrow slot on its chassis.") - usr << "You print a photograph." + to_chat(usr, "You print a photograph.") // Picture frames @@ -504,7 +504,7 @@ displayed = P update_icon() else - user << "\The [src] already contains a photo." + to_chat(user, "\The [src] already contains a photo.") ..() @@ -515,7 +515,7 @@ if(contents.len) var/obj/item/I = pick(contents) user.put_in_hands(I) - user << "You carefully remove the photo from \the [src]." + to_chat(user, "You carefully remove the photo from \the [src].") displayed = null update_icon() @@ -592,7 +592,7 @@ framed = P update_icon() else - user << "\The [src] already contains a photo." + to_chat(user, "\The [src] already contains a photo.") ..() diff --git a/code/modules/power/antimatter/control.dm b/code/modules/power/antimatter/control.dm index cab7beb12b..647f838311 100644 --- a/code/modules/power/antimatter/control.dm +++ b/code/modules/power/antimatter/control.dm @@ -174,11 +174,11 @@ src.anchored = 0 disconnect_from_network() else - user << "Once bolted and linked to a shielding unit it the [src.name] is unable to be moved!" + to_chat(user, "Once bolted and linked to a shielding unit it the [src.name] is unable to be moved!") else if(istype(W, /obj/item/weapon/am_containment)) if(fueljar) - user << "There is already a [fueljar] inside!" + to_chat(user, "There is already a [fueljar] inside!") return if(!user.transferItemToLoc(W, src)) diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 888d5987fc..5b3a0daf3c 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -200,18 +200,18 @@ return if(opened) if(has_electronics && terminal) - user << "The cover is [opened==2?"removed":"open"] and the power cell is [ cell ? "installed" : "missing"]." + to_chat(user, "The cover is [opened==2?"removed":"open"] and the power cell is [ cell ? "installed" : "missing"].") else - user << "It's [ !terminal ? "not" : "" ] wired up." - user << "The electronics are[!has_electronics?"n't":""] installed." + to_chat(user, "It's [ !terminal ? "not" : "" ] wired up.") + to_chat(user, "The electronics are[!has_electronics?"n't":""] installed.") else if (stat & MAINT) - user << "The cover is closed. Something is wrong with it. It doesn't work." + to_chat(user, "The cover is closed. Something is wrong with it. It doesn't work.") else if (malfhack) - user << "The cover is broken. It may be hard to force it open." + to_chat(user, "The cover is broken. It may be hard to force it open.") else - user << "The cover is closed." + to_chat(user, "The cover is closed.") // update the APC icon to show the three base states @@ -375,10 +375,10 @@ if (opened) // a) on open apc if (has_electronics==1) if (terminal) - user << "Disconnect the wires first!" + to_chat(user, "Disconnect the wires first!") return playsound(src.loc, W.usesound, 50, 1) - user << "You are trying to remove the power control board..." //lpeters - fixed grammar issues + to_chat(user, "You are trying to remove the power control board..." ) if(do_after(user, 50*W.toolspeed, target = src)) if (has_electronics==1) has_electronics = 0 @@ -415,10 +415,10 @@ return else if (!(stat & BROKEN)) // b) on closed and not broken APC if(coverlocked && !(stat & MAINT)) // locked... - user << "The cover is locked and cannot be opened!" + to_chat(user, "The cover is locked and cannot be opened!") return else if (panel_open) // wires are exposed - user << "Exposed wires prevents you from opening it!" + to_chat(user, "Exposed wires prevents you from opening it!") return else opened = 1 @@ -427,11 +427,11 @@ else if (istype(W, /obj/item/weapon/stock_parts/cell) && opened) // trying to put a cell inside if(cell) - user << "There is a power cell already installed!" + to_chat(user, "There is a power cell already installed!") return else if (stat & MAINT) - user << "There is no connector for your power cell!" + to_chat(user, "There is no connector for your power cell!") return if(!user.drop_item()) return @@ -446,46 +446,46 @@ else if (istype(W, /obj/item/weapon/screwdriver)) // haxing if(opened) if (cell) - user << "Close the APC first!" //Less hints more mystery! + to_chat(user, "Close the APC first!") //Less hints more mystery! return else if (has_electronics==1) has_electronics = 2 stat &= ~MAINT playsound(src.loc, W.usesound, 50, 1) - user << "You screw the circuit electronics into place." + to_chat(user, "You screw the circuit electronics into place.") else if (has_electronics==2) has_electronics = 1 stat |= MAINT playsound(src.loc, W.usesound, 50, 1) - user << "You unfasten the electronics." + to_chat(user, "You unfasten the electronics.") else /* has_electronics==0 */ - user << "There is nothing to secure!" + to_chat(user, "There is nothing to secure!") return update_icon() else if(emagged) - user << "The interface is broken!" + to_chat(user, "The interface is broken!") else panel_open = !panel_open - user << "The wires have been [panel_open ? "exposed" : "unexposed"]" + to_chat(user, "The wires have been [panel_open ? "exposed" : "unexposed"]") update_icon() else if (W.GetID()) // trying to unlock the interface with an ID card if(emagged) - user << "The interface is broken!" + to_chat(user, "The interface is broken!") else if(opened) - user << "You must close the cover to swipe an ID card!" + to_chat(user, "You must close the cover to swipe an ID card!") else if(panel_open) - user << "You must close the panel!" + to_chat(user, "You must close the panel!") else if(stat & (BROKEN|MAINT)) - user << "Nothing happens!" + to_chat(user, "Nothing happens!") else if(allowed(usr) && !wires.is_cut(WIRE_IDSCAN) && !malfhack) locked = !locked - user << "You [ locked ? "lock" : "unlock"] the APC interface." + to_chat(user, "You [ locked ? "lock" : "unlock"] the APC interface.") update_icon() else - user << "Access denied." + to_chat(user, "Access denied.") else if (istype(W, /obj/item/stack/cable_coil) && opened) var/turf/host_turf = get_turf(src) @@ -493,18 +493,18 @@ throw EXCEPTION("attackby on APC when it's not on a turf") return if (host_turf.intact) - user << "You must remove the floor plating in front of the APC first!" + to_chat(user, "You must remove the floor plating in front of the APC first!") return else if (terminal) // it already have terminal - user << "This APC is already wired!" + to_chat(user, "This APC is already wired!") return else if (has_electronics == 0) - user << "There is nothing to wire!" + to_chat(user, "There is nothing to wire!") return var/obj/item/stack/cable_coil/C = W if(C.get_amount() < 10) - user << "You need ten lengths of cable for APC!" + to_chat(user, "You need ten lengths of cable for APC!") return user.visible_message("[user.name] adds cables to the APC frame.", \ "You start adding cables to the APC frame...") @@ -521,7 +521,7 @@ s.start() return C.use(10) - user << "You add cables to the APC frame." + to_chat(user, "You add cables to the APC frame.") make_terminal() terminal.connect_to_network() @@ -530,10 +530,10 @@ else if (istype(W, /obj/item/weapon/electronics/apc) && opened) if (has_electronics!=0) // there are already electronicks inside - user << "You cannot put the board inside, there already is one!" + to_chat(user, "You cannot put the board inside, there already is one!") return else if (stat & BROKEN) - user << "You cannot put the board inside, the frame is damaged!" + to_chat(user, "You cannot put the board inside, the frame is damaged!") return user.visible_message("[user.name] inserts the power control board into [src].", \ @@ -543,13 +543,13 @@ if(has_electronics==0) has_electronics = 1 locked = 1 //We placed new, locked board in - user << "You place the power control board inside the frame." + to_chat(user, "You place the power control board inside the frame.") qdel(W) else if (istype(W, /obj/item/weapon/weldingtool) && opened && has_electronics==0 && !terminal) var/obj/item/weapon/weldingtool/WT = W if (WT.get_fuel() < 3) - user << "You need more welding fuel to complete this task!" + to_chat(user, "You need more welding fuel to complete this task!") return user.visible_message("[user.name] welds [src].", \ "You start welding the APC frame...", \ @@ -572,24 +572,24 @@ else if (istype(W, /obj/item/wallframe/apc) && opened) if (!(stat & BROKEN || opened==2 || obj_integrity < max_integrity)) // There is nothing to repair - user << "You found no reason for repairing this APC" + to_chat(user, "You found no reason for repairing this APC") return if (!(stat & BROKEN) && opened==2) // Cover is the only thing broken, we do not need to remove elctronicks to replace cover user.visible_message("[user.name] replaces missing APC's cover.",\ "You begin to replace APC's cover...") if(do_after(user, 20, target = src)) // replacing cover is quicker than replacing whole frame - user << "You replace missing APC's cover." + to_chat(user, "You replace missing APC's cover.") qdel(W) opened = 1 update_icon() return if (has_electronics) - user << "You cannot repair this APC until you remove the electronics still inside!" + to_chat(user, "You cannot repair this APC until you remove the electronics still inside!") return user.visible_message("[user.name] replaces the damaged APC frame with a new one.",\ "You begin to replace the damaged APC frame...") if(do_after(user, 50, target = src)) - user << "You replace the damaged APC frame with a new one." + to_chat(user, "You replace the damaged APC frame with a new one.") qdel(W) stat &= ~BROKEN obj_integrity = max_integrity @@ -623,16 +623,16 @@ /obj/machinery/power/apc/emag_act(mob/user) if(!emagged && !malfhack) if(opened) - user << "You must close the cover to swipe an ID card!" + to_chat(user, "You must close the cover to swipe an ID card!") else if(panel_open) - user << "You must close the panel first!" + to_chat(user, "You must close the panel first!") else if(stat & (BROKEN|MAINT)) - user << "Nothing happens!" + to_chat(user, "Nothing happens!") else flick("apc-spark", src) emagged = 1 locked = 0 - user << "You emag the APC interface." + to_chat(user, "You emag the APC interface.") update_icon() // attack with hand - remove cell (if cover open) or interact with the APC @@ -649,7 +649,7 @@ src.cell = null user.visible_message("[user.name] removes the power cell from [src.name]!",\ "You remove the power cell.") - //user << "You remove the power cell." + //to_chat(user, "You remove the power cell.") charging = 0 src.update_icon() return @@ -681,7 +681,7 @@ "chargingStatus" = charging, "totalLoad" = lastused_total, "coverLocked" = coverlocked, - "siliconUser" = user.has_unlimited_silicon_privilege, + "siliconUser" = user.has_unlimited_silicon_privilege || user.using_power_flow_console(), "malfStatus" = get_malf_status(user), "powerChannels" = list( @@ -744,13 +744,13 @@ area.power_environ = (environ > 1) // if (area.name == "AI Chamber") // spawn(10) -// world << " [area.name] [area.power_equip]" +// to_chat(world, " [area.name] [area.power_equip]") else area.power_light = 0 area.power_equip = 0 area.power_environ = 0 // if (area.name == "AI Chamber") -// world << "[area.power_equip]" +// to_chat(world, "[area.power_equip]") area.power_change() /obj/machinery/power/apc/proc/can_use(mob/user, loud = 0) //used by attack_hand() and Topic() @@ -768,7 +768,7 @@ ) \ ) if(!loud) - user << "\The [src] has eee disabled!" + to_chat(user, "\The [src] has eee disabled!") return FALSE return TRUE @@ -779,7 +779,7 @@ if("lock") if(usr.has_unlimited_silicon_privilege) if(emagged || (stat & (BROKEN|MAINT))) - usr << "The APC does not respond to the command." + to_chat(usr, "The APC does not respond to the command.") else locked = !locked update_icon() @@ -840,9 +840,9 @@ if(get_malf_status(malf) != 1) return if(malf.malfhacking) - malf << "You are already hacking an APC." + to_chat(malf, "You are already hacking an APC.") return - malf << "Beginning override of APC systems. This takes some time, and you cannot perform other actions during the process." + to_chat(malf, "Beginning override of APC systems. This takes some time, and you cannot perform other actions during the process.") malf.malfhack = src malf.malfhacking = addtimer(CALLBACK(malf, /mob/living/silicon/ai/.proc/malfhacked, src), 600, TIMER_STOPPABLE) @@ -854,10 +854,10 @@ if(!istype(malf)) return if(istype(malf.loc, /obj/machinery/power/apc)) // Already in an APC - malf << "You must evacuate your current APC first!" + to_chat(malf, "You must evacuate your current APC first!") return if(!malf.can_shunt) - malf << "You cannot shunt!" + to_chat(malf, "You cannot shunt!") return if(src.z != 1) return @@ -888,7 +888,7 @@ occupier.parent.verbs -= /mob/living/silicon/ai/proc/corereturn qdel(occupier) else - occupier << "Primary core damaged, unable to return core processes." + to_chat(occupier, "Primary core damaged, unable to return core processes.") if(forced) occupier.loc = src.loc occupier.death() @@ -899,19 +899,19 @@ /obj/machinery/power/apc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/device/aicard/card) if(card.AI) - user << "[card] is already occupied!" + to_chat(user, "[card] is already occupied!") return if(!occupier) - user << "There's nothing in [src] to transfer!" + to_chat(user, "There's nothing in [src] to transfer!") return if(!occupier.mind || !occupier.client) - user << "[occupier] is either inactive, destroyed, or braindead!" + to_chat(user, "[occupier] is either inactive or destroyed!") return if(!occupier.parent.stat) - user << "[occupier] is refusing all attempts at transfer!" //We can return to our core, no need to shunt right now + to_chat(user, "[occupier] is refusing all attempts at transfer!" ) return if(transfer_in_progress) - user << "There's already a transfer in progress!" + to_chat(user, "There's already a transfer in progress!") return if(interaction != AI_TRANS_TO_CARD || occupier.stat) return @@ -923,26 +923,26 @@ playsound(src, 'sound/machines/click.ogg', 50, 1) occupier << sound('sound/misc/notice2.ogg') //To alert the AI that someone's trying to card them if they're tabbed out if(alert(occupier, "[user] is attempting to transfer you to \a [card.name]. Do you consent to this?", "APC Transfer", "Yes - Transfer Me", "No - Keep Me Here") == "No - Keep Me Here") - user << "AI denied transfer request. Process terminated." + to_chat(user, "AI denied transfer request. Process terminated.") playsound(src, 'sound/machines/buzz-sigh.ogg', 50, 1) transfer_in_progress = FALSE return if(user.loc != T) - user << "Location changed. Process terminated." - occupier << "[user] moved away! Transfer canceled." + to_chat(user, "Location changed. Process terminated.") + to_chat(occupier, "[user] moved away! Transfer canceled.") transfer_in_progress = FALSE return - user << "AI accepted request. Transferring stored intelligence to [card]..." - occupier << "Transfer starting. You will be moved to [card] shortly." + to_chat(user, "AI accepted request. Transferring stored intelligence to [card]...") + to_chat(occupier, "Transfer starting. You will be moved to [card] shortly.") if(!do_after(user, 50, target = src)) - occupier << "[user] was interrupted! Transfer canceled." + to_chat(occupier, "[user] was interrupted! Transfer canceled.") transfer_in_progress = FALSE return if(!occupier || !card) transfer_in_progress = FALSE return user.visible_message("[user] transfers [occupier] to [card]!", "Transfer complete! [occupier] is now stored in [card].") - occupier << "Transfer complete! You've been stored in [user]'s [card.name]." + to_chat(occupier, "Transfer complete! You've been stored in [user]'s [card.name].") occupier.forceMove(card) card.AI = occupier occupier.parent.shunted = FALSE diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index dc1a494189..c6b1296eed 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -138,15 +138,15 @@ By design, d1 is the smallest direction and d2 is the highest else if(istype(W, /obj/item/stack/cable_coil)) var/obj/item/stack/cable_coil/coil = W if (coil.get_amount() < 1) - user << "Not enough cable!" + to_chat(user, "Not enough cable!") return coil.cable_join(src, user) else if(istype(W, /obj/item/device/multitool)) if(powernet && (powernet.avail > 0)) // is it powered? - user << "[powernet.avail]W in power network." + to_chat(user, "[powernet.avail]W in power network.") else - user << "The cable is not powered." + to_chat(user, "The cable is not powered.") shock(user, 5, 0.2) src.add_fingerprint(user) @@ -555,15 +555,15 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ return if(!T.can_have_cabling()) - user << "You can only lay cables on catwalks and plating!" + to_chat(user, "You can only lay cables on catwalks and plating!") return if(get_amount() < 1) // Out of cable - user << "There is no cable left!" + to_chat(user, "There is no cable left!") return if(get_dist(T,user) > 1) // Too far - user << "You can't lay cable at a place that far away!" + to_chat(user, "You can't lay cable at a place that far away!") return else @@ -576,7 +576,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ for(var/obj/structure/cable/LC in T) if(LC.d2 == dirn && LC.d1 == 0) - user << "There's already a cable at that position!" + to_chat(user, "There's already a cable at that position!") return var/obj/structure/cable/C = get_new_cable(T) @@ -617,7 +617,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ return if(get_dist(C, user) > 1) // make sure it's close enough - user << "You can't lay cable at a place that far away!" + to_chat(user, "You can't lay cable at a place that far away!") return @@ -630,10 +630,10 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ // one end of the clicked cable is pointing towards us if(C.d1 == dirn || C.d2 == dirn) if(!U.can_have_cabling()) //checking if it's a plating or catwalk - user << "You can only lay cables on catwalks and plating!" + to_chat(user, "You can only lay cables on catwalks and plating!") return if(U.intact) //can't place a cable if it's a plating with a tile on it - user << "You can't lay cable there unless the floor tiles are removed!" + to_chat(user, "You can't lay cable there unless the floor tiles are removed!") return else // cable is pointing at us, we're standing on an open tile @@ -643,7 +643,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ for(var/obj/structure/cable/LC in U) // check to make sure there's not a cable there already if(LC.d1 == fdirn || LC.d2 == fdirn) - user << "There's already a cable at that position!" + to_chat(user, "There's already a cable at that position!") return var/obj/structure/cable/NC = get_new_cable (U) @@ -687,7 +687,7 @@ var/global/list/datum/stack_recipe/cable_coil_recipes = list ( \ if(LC == C) // skip the cable we're interacting with continue if((LC.d1 == nd1 && LC.d2 == nd2) || (LC.d1 == nd2 && LC.d2 == nd1) ) // make sure no cable matches either direction - user << "There's already a cable at that position!" + to_chat(user, "There's already a cable at that position!") return diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index ee06fa04ba..01ba72287d 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -86,9 +86,9 @@ /obj/item/weapon/stock_parts/cell/examine(mob/user) ..() if(rigged) - user << "This power cell seems to be faulty!" + to_chat(user, "This power cell seems to be faulty!") else - user << "The charge meter reads [round(src.percent() )]%." + to_chat(user, "The charge meter reads [round(src.percent() )]%.") /obj/item/weapon/stock_parts/cell/suicide_act(mob/user) user.visible_message("[user] is licking the electrodes of [src]! It looks like [user.p_theyre()] trying to commit suicide!") @@ -98,7 +98,7 @@ ..() if(istype(W, /obj/item/weapon/reagent_containers/syringe)) var/obj/item/weapon/reagent_containers/syringe/S = W - user << "You inject the solution into the power cell." + to_chat(user, "You inject the solution into the power cell.") if(S.reagents.has_reagent("plasma", 5)) rigged = 1 S.reagents.clear_reagents() diff --git a/code/modules/power/generator.dm b/code/modules/power/generator.dm index b38c4e599c..88032f353d 100644 --- a/code/modules/power/generator.dm +++ b/code/modules/power/generator.dm @@ -79,24 +79,24 @@ lastgen = 0 if(powernet) - //world << "cold_circ and hot_circ pass" + //to_chat(world, "cold_circ and hot_circ pass") var/datum/gas_mixture/cold_air = cold_circ.return_transfer_air() var/datum/gas_mixture/hot_air = hot_circ.return_transfer_air() - //world << "hot_air = [hot_air]; cold_air = [cold_air];" + //to_chat(world, "hot_air = [hot_air]; cold_air = [cold_air];") if(cold_air && hot_air) - //world << "hot_air = [hot_air] temperature = [hot_air.temperature]; cold_air = [cold_air] temperature = [hot_air.temperature];" + //to_chat(world, "hot_air = [hot_air] temperature = [hot_air.temperature]; cold_air = [cold_air] temperature = [hot_air.temperature];") - //world << "coldair and hotair pass" + //to_chat(world, "coldair and hotair pass") var/cold_air_heat_capacity = cold_air.heat_capacity() var/hot_air_heat_capacity = hot_air.heat_capacity() var/delta_temperature = hot_air.temperature - cold_air.temperature - //world << "delta_temperature = [delta_temperature]; cold_air_heat_capacity = [cold_air_heat_capacity]; hot_air_heat_capacity = [hot_air_heat_capacity]" + //to_chat(world, "delta_temperature = [delta_temperature]; cold_air_heat_capacity = [cold_air_heat_capacity]; hot_air_heat_capacity = [hot_air_heat_capacity]") if(delta_temperature > 0 && cold_air_heat_capacity > 0 && hot_air_heat_capacity > 0) var/efficiency = 0.65 @@ -106,12 +106,12 @@ var/heat = energy_transfer*(1-efficiency) lastgen = energy_transfer*efficiency - //world << "lastgen = [lastgen]; heat = [heat]; delta_temperature = [delta_temperature]; hot_air_heat_capacity = [hot_air_heat_capacity]; cold_air_heat_capacity = [cold_air_heat_capacity];" + //to_chat(world, "lastgen = [lastgen]; heat = [heat]; delta_temperature = [delta_temperature]; hot_air_heat_capacity = [hot_air_heat_capacity]; cold_air_heat_capacity = [cold_air_heat_capacity];") hot_air.temperature = hot_air.temperature - energy_transfer/hot_air_heat_capacity cold_air.temperature = cold_air.temperature + heat/cold_air_heat_capacity - //world << "POWER: [lastgen] W generated at [efficiency*100]% efficiency and sinks sizes [cold_air_heat_capacity], [hot_air_heat_capacity]" + //to_chat(world, "POWER: [lastgen] W generated at [efficiency*100]% efficiency and sinks sizes [cold_air_heat_capacity], [hot_air_heat_capacity]") add_avail(lastgen) // update icon overlays only if displayed level has changed diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm index f371652220..59a685b887 100644 --- a/code/modules/power/gravitygenerator.dm +++ b/code/modules/power/gravitygenerator.dm @@ -191,7 +191,7 @@ var/const/GRAV_NEEDS_WRENCH = 3 switch(broken_state) if(GRAV_NEEDS_SCREWDRIVER) if(istype(I, /obj/item/weapon/screwdriver)) - user << "You secure the screws of the framework." + to_chat(user, "You secure the screws of the framework.") playsound(src.loc, I.usesound, 50, 1) broken_state++ update_icon() @@ -200,28 +200,28 @@ var/const/GRAV_NEEDS_WRENCH = 3 if(istype(I, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = I if(WT.remove_fuel(1, user)) - user << "You mend the damaged framework." + to_chat(user, "You mend the damaged framework.") playsound(src.loc, 'sound/items/Welder2.ogg', 50, 1) broken_state++ update_icon() else if(WT.isOn()) - user << "You don't have enough fuel to mend the damaged framework!" + to_chat(user, "You don't have enough fuel to mend the damaged framework!") return if(GRAV_NEEDS_PLASTEEL) if(istype(I, /obj/item/stack/sheet/plasteel)) var/obj/item/stack/sheet/plasteel/PS = I if(PS.get_amount() >= 10) PS.use(10) - user << "You add the plating to the framework." + to_chat(user, "You add the plating to the framework.") playsound(src.loc, 'sound/machines/click.ogg', 75, 1) broken_state++ update_icon() else - user << "You need 10 sheets of plasteel!" + to_chat(user, "You need 10 sheets of plasteel!") return if(GRAV_NEEDS_WRENCH) if(istype(I, /obj/item/weapon/wrench)) - user << "You secure the plating to the framework." + to_chat(user, "You secure the plating to the framework.") playsound(src.loc, I.usesound, 75, 1) set_fix() return diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 526953873b..0adf109d1f 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -25,6 +25,15 @@ result_path = /obj/structure/light_construct/small materials = list(MAT_METAL=MINERAL_MATERIAL_AMOUNT) +/obj/item/wallframe/light_fixture/try_build(turf/on_wall, user) + if(!..()) + return + var/area/A = get_area(user) + if(A.dynamic_lighting != DYNAMIC_LIGHTING_ENABLED) + to_chat(user, "You cannot place [src] in this area!") + return + return TRUE + /obj/structure/light_construct name = "light fixture frame" @@ -51,11 +60,11 @@ ..() switch(src.stage) if(1) - user << "It's an empty frame." + to_chat(user, "It's an empty frame.") if(2) - user << "It's wired." + to_chat(user, "It's wired.") if(3) - user << "The casing is closed." + to_chat(user, "The casing is closed.") /obj/structure/light_construct/attackby(obj/item/weapon/W, mob/user, params) add_fingerprint(user) @@ -63,7 +72,7 @@ if(1) if(istype(W, /obj/item/weapon/wrench)) playsound(src.loc, W.usesound, 75, 1) - usr << "You begin deconstructing [src]..." + to_chat(usr, "You begin deconstructing [src]...") if (!do_after(usr, 30*W.toolspeed, target = src)) return new /obj/item/stack/sheet/metal( get_turf(src.loc), sheets_refunded ) @@ -85,11 +94,11 @@ user.visible_message("[user.name] adds wires to [src].", \ "You add wires to [src].") else - user << "You need one length of cable to wire [src]!" + to_chat(user, "You need one length of cable to wire [src]!") return if(2) if(istype(W, /obj/item/weapon/wrench)) - usr << "You have to remove the wires first!" + to_chat(usr, "You have to remove the wires first!") return if(istype(W, /obj/item/weapon/wirecutters)) @@ -238,7 +247,7 @@ update_icon() if(on) - if(!light || light.luminosity != brightness) + if(!light || light.light_range != brightness) switchcount++ if(rigged) if(status == LIGHT_OK && trigger) @@ -248,10 +257,10 @@ burn_out() else use_power = 2 - SetLuminosity(brightness) + set_light(brightness) else use_power = 1 - SetLuminosity(0) + set_light(0) active_power_usage = (brightness * 10) if(on != on_gs) @@ -268,7 +277,7 @@ status = LIGHT_BURNED icon_state = "[base_state]-burned" on = 0 - SetLuminosity(0) + set_light(0) // attempt to set the light's on/off status // will not switch on if broken/burned/empty @@ -281,13 +290,13 @@ ..() switch(status) if(LIGHT_OK) - user << "It is turned [on? "on" : "off"]." + to_chat(user, "It is turned [on? "on" : "off"].") if(LIGHT_EMPTY) - user << "The [fitting] has been removed." + to_chat(user, "The [fitting] has been removed.") if(LIGHT_BURNED) - user << "The [fitting] is burnt out." + to_chat(user, "The [fitting] is burnt out.") if(LIGHT_BROKEN) - user << "The [fitting] has been smashed." + to_chat(user, "The [fitting] has been smashed.") @@ -303,7 +312,7 @@ // attempt to insert light else if(istype(W, /obj/item/weapon/light)) if(status == LIGHT_OK) - user << "There is a [fitting] already inserted!" + to_chat(user, "There is a [fitting] already inserted!") else src.add_fingerprint(user) var/obj/item/weapon/light/L = W @@ -314,9 +323,9 @@ src.add_fingerprint(user) if(status != LIGHT_EMPTY) drop_light_tube(user) - user << "You replace [L]." + to_chat(user, "You replace [L].") else - user << "You insert [L]." + to_chat(user, "You insert [L].") status = L.status switchcount = L.switchcount rigged = L.rigged @@ -329,7 +338,7 @@ if(on && rigged) explode() else - user << "This type of light requires a [fitting]!" + to_chat(user, "This type of light requires a [fitting]!") // attempt to stick weapon into light socket else if(status == LIGHT_EMPTY) @@ -339,7 +348,7 @@ "You open [src]'s casing.", "You hear a noise.") deconstruct() else - user << "You stick \the [W] into the light socket!" + to_chat(user, "You stick \the [W] into the light socket!") if(has_power() && (W.flags & CONDUCT)) var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(3, 1, src) @@ -439,7 +448,7 @@ add_fingerprint(user) if(status == LIGHT_EMPTY) - user << "There is no [fitting] in this light." + to_chat(user, "There is no [fitting] in this light.") return // make it burn hands if not wearing fire-insulated gloves @@ -457,18 +466,18 @@ prot = 1 if(prot > 0) - user << "You remove the light [fitting]." + to_chat(user, "You remove the light [fitting].") else if(istype(user) && user.dna.check_mutation(TK)) - user << "You telekinetically remove the light [fitting]." + to_chat(user, "You telekinetically remove the light [fitting].") else - user << "You try to remove the light [fitting], but you burn your hand on it!" + to_chat(user, "You try to remove the light [fitting], but you burn your hand on it!") var/obj/item/bodypart/affecting = H.get_bodypart("[(user.active_hand_index % 2 == 0) ? "r" : "l" ]_arm") if(affecting && affecting.receive_damage( 0, 5 )) // 5 burn damage H.update_damage_overlays() return // if burned, don't remove the light else - user << "You remove the light [fitting]." + to_chat(user, "You remove the light [fitting].") // create a light tube/bulb item and put it in the user's hand drop_light_tube(user) @@ -494,10 +503,10 @@ /obj/machinery/light/attack_tk(mob/user) if(status == LIGHT_EMPTY) - user << "There is no [fitting] in this light." + to_chat(user, "There is no [fitting] in this light.") return - user << "You telekinetically remove the light [fitting]." + to_chat(user, "You telekinetically remove the light [fitting].") // create a light tube/bulb item and put it in the user's hand drop_light_tube() @@ -616,7 +625,7 @@ if(istype(I, /obj/item/weapon/reagent_containers/syringe)) var/obj/item/weapon/reagent_containers/syringe/S = I - user << "You inject the solution into \the [src]." + to_chat(user, "You inject the solution into \the [src].") if(S.reagents.has_reagent("plasma", 5)) diff --git a/code/modules/power/monitor.dm b/code/modules/power/monitor.dm index 28a1309473..5474665889 100644 --- a/code/modules/power/monitor.dm +++ b/code/modules/power/monitor.dm @@ -3,6 +3,7 @@ desc = "It monitors power levels across the station." icon_screen = "power" icon_keyboard = "power_key" + light_color = LIGHT_COLOR_YELLOW use_power = 2 idle_power_usage = 20 active_power_usage = 100 diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index dd40c83fc4..6b637c0327 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -86,7 +86,7 @@ display round(lastgen) and plasmatank amount /obj/machinery/power/port_gen/examine(mob/user) ..() - user << "It is[!active?"n't":""] running." + to_chat(user, "It is[!active?"n't":""] running.") /obj/machinery/power/port_gen/pacman name = "\improper P.A.C.M.A.N.-type portable generator" @@ -151,8 +151,8 @@ display round(lastgen) and plasmatank amount /obj/machinery/power/port_gen/pacman/examine(mob/user) ..() - user << "The generator has [sheets] units of [sheet_name] fuel left, producing [power_gen] per cycle." - if(crit_fail) user << "The generator seems to have broken down." + to_chat(user, "The generator has [sheets] units of [sheet_name] fuel left, producing [power_gen] per cycle.") + if(crit_fail) to_chat(user, "The generator seems to have broken down.") /obj/machinery/power/port_gen/pacman/HasFuel() if(sheets >= 1 / (time_per_sheet / power_output) - sheet_left) @@ -214,9 +214,9 @@ display round(lastgen) and plasmatank amount var/obj/item/stack/addstack = O var/amount = min((max_sheets - sheets), addstack.amount) if(amount < 1) - user << "The [src.name] is full!" + to_chat(user, "The [src.name] is full!") return - user << "You add [amount] sheets to the [src.name]." + to_chat(user, "You add [amount] sheets to the [src.name].") sheets += amount addstack.use(amount) updateUsrDialog() @@ -230,11 +230,11 @@ display round(lastgen) and plasmatank amount if(!anchored && !isinspace()) connect_to_network() - user << "You secure the generator to the floor." + to_chat(user, "You secure the generator to the floor.") anchored = 1 else if(anchored) disconnect_from_network() - user << "You unsecure the generator from the floor." + to_chat(user, "You unsecure the generator from the floor.") anchored = 0 playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1) @@ -243,9 +243,9 @@ display round(lastgen) and plasmatank amount panel_open = !panel_open playsound(src.loc, O.usesound, 50, 1) if(panel_open) - user << "You open the access panel." + to_chat(user, "You open the access panel.") else - user << "You close the access panel." + to_chat(user, "You close the access panel.") return else if(default_deconstruction_crowbar(O)) return diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 8273b738dc..15a582a387 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -49,14 +49,14 @@ var/global/list/rad_collectors = list() investigate_log("turned [active?"on":"off"] by [user.key]. [loaded_tank?"Fuel: [round(loaded_tank.air_contents.gases["plasma"][MOLES]/0.29)]%":"It is empty"].","singulo") return else - user << "The controls are locked!" + to_chat(user, "The controls are locked!") return ..() /obj/machinery/power/rad_collector/can_be_unfasten_wrench(mob/user, silent) if(loaded_tank) if(!silent) - user << "Remove the plasma tank first!" + to_chat(user, "Remove the plasma tank first!") return FAILED_UNFASTEN return ..() @@ -70,16 +70,16 @@ var/global/list/rad_collectors = list() /obj/machinery/power/rad_collector/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/device/multitool)) - user << "The [W.name] detects that [last_power]W were recently produced." + to_chat(user, "The [W.name] detects that [last_power]W were recently produced.") return 1 else if(istype(W, /obj/item/device/analyzer) && loaded_tank) atmosanalyzer_scan(loaded_tank.air_contents, user) else if(istype(W, /obj/item/weapon/tank/internals/plasma)) if(!anchored) - user << "The [src] needs to be secured to the floor first!" + to_chat(user, "The [src] needs to be secured to the floor first!") return 1 if(loaded_tank) - user << "There's already a plasma tank loaded!" + to_chat(user, "There's already a plasma tank loaded!") return 1 if(!user.drop_item()) return 1 @@ -97,11 +97,11 @@ var/global/list/rad_collectors = list() if(allowed(user)) if(active) locked = !locked - user << "You [locked ? "lock" : "unlock"] the controls." + to_chat(user, "You [locked ? "lock" : "unlock"] the controls.") else - user << "The controls can only be locked when \the [src] is active!" + to_chat(user, "The controls can only be locked when \the [src] is active!") else - user << "Access denied." + to_chat(user, "Access denied.") return 1 else return ..() diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index e951c0aa1c..30a449a83b 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -67,7 +67,7 @@ if(usr.stat || !usr.canmove || usr.restrained()) return if (src.anchored) - usr << "It is fastened to the floor!" + to_chat(usr, "It is fastened to the floor!") return 0 src.setDir(turn(src.dir, 270)) return 1 @@ -75,7 +75,7 @@ /obj/machinery/power/emitter/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return @@ -105,26 +105,26 @@ src.add_fingerprint(user) if(state == 2) if(!powernet) - user << "The emitter isn't connected to a wire!" + to_chat(user, "The emitter isn't connected to a wire!") return 1 if(!src.locked) if(src.active==1) src.active = 0 - user << "You turn off \the [src]." + to_chat(user, "You turn off \the [src].") message_admins("Emitter turned off by [key_name_admin(user)](?) (FLW) in ([x],[y],[z] - JMP)",0,1) log_game("Emitter turned off by [key_name(user)] in ([x],[y],[z])") investigate_log("turned off by [key_name(user)] at [get_area(src)]","singulo") else src.active = 1 - user << "You turn on \the [src]." + to_chat(user, "You turn on \the [src].") src.shot_number = 0 src.fire_delay = maximum_fire_delay investigate_log("turned on by [key_name(user)] at [get_area(src)]","singulo") update_icon() else - user << "The controls are locked!" + to_chat(user, "The controls are locked!") else - user << "The [src] needs to be firmly secured to the floor first!" + to_chat(user, "The [src] needs to be firmly secured to the floor first!") return 1 /obj/machinery/power/emitter/attack_animal(mob/living/simple_animal/M) @@ -196,7 +196,7 @@ src.shot_number = 0 var/obj/item/projectile/A = new projectile_type(src.loc) A.setDir(src.dir) - playsound(src.loc, projectile_sound, 100, 1, 7) + playsound(src.loc, projectile_sound, 25, 1) if(prob(35)) var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(5, 1, src) @@ -220,7 +220,7 @@ /obj/machinery/power/emitter/can_be_unfasten_wrench(mob/user, silent) if(state == EM_WELDED) if(!silent) - user << "[src] is welded to the floor!" + to_chat(user, "[src] is welded to the floor!") return FAILED_UNFASTEN return ..() @@ -235,7 +235,7 @@ /obj/machinery/power/emitter/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/weapon/wrench)) if(active) - user << "Turn \the [src] off first!" + to_chat(user, "Turn \the [src] off first!") return default_unfasten_wrench(user, W, 0) return @@ -243,11 +243,11 @@ if(istype(W, /obj/item/weapon/weldingtool)) var/obj/item/weapon/weldingtool/WT = W if(active) - user << "Turn \the [src] off first." + to_chat(user, "Turn \the [src] off first.") return switch(state) if(EM_UNSECURED) - user << "The [src.name] needs to be wrenched to the floor!" + to_chat(user, "The [src.name] needs to be wrenched to the floor!") if(EM_SECURED) if(WT.remove_fuel(0,user)) playsound(loc, WT.usesound, 50, 1) @@ -256,7 +256,7 @@ "You hear welding.") if(do_after(user,20*W.toolspeed, target = src) && WT.isOn()) state = EM_WELDED - user << "You weld \the [src] to the floor." + to_chat(user, "You weld \the [src] to the floor.") connect_to_network() if(EM_WELDED) if(WT.remove_fuel(0,user)) @@ -266,22 +266,22 @@ "You hear welding.") if(do_after(user,20*W.toolspeed, target = src) && WT.isOn()) state = EM_SECURED - user << "You cut \the [src] free from the floor." + to_chat(user, "You cut \the [src] free from the floor.") disconnect_from_network() return if(W.GetID()) if(emagged) - user << "The lock seems to be broken!" + to_chat(user, "The lock seems to be broken!") return if(allowed(user)) if(active) locked = !locked - user << "You [src.locked ? "lock" : "unlock"] the controls." + to_chat(user, "You [src.locked ? "lock" : "unlock"] the controls.") else - user << "The controls can only be locked when \the [src] is online!" + to_chat(user, "The controls can only be locked when \the [src] is online!") else - user << "Access denied." + to_chat(user, "Access denied.") return if(is_wire_tool(W) && panel_open) diff --git a/code/modules/power/singularity/field_generator.dm b/code/modules/power/singularity/field_generator.dm index 8101587519..d45c1fcf87 100644 --- a/code/modules/power/singularity/field_generator.dm +++ b/code/modules/power/singularity/field_generator.dm @@ -64,7 +64,7 @@ field_generator power level display if(state == FG_WELDED) if(get_dist(src, user) <= 1)//Need to actually touch the thing to turn it on if(active >= FG_CHARGING) - user << "You are unable to turn off the [name] once it is online!" + to_chat(user, "You are unable to turn off the [name] once it is online!") return 1 else user.visible_message("[user.name] turns on the [name].", \ @@ -75,12 +75,12 @@ field_generator power level display add_fingerprint(user) else - user << "The [src] needs to be firmly secured to the floor first!" + to_chat(user, "The [src] needs to be firmly secured to the floor first!") /obj/machinery/field/generator/can_be_unfasten_wrench(mob/user, silent) if(state == FG_WELDED) if(!silent) - user << "[src] is welded to the floor!" + to_chat(user, "[src] is welded to the floor!") return FAILED_UNFASTEN return ..() @@ -94,7 +94,7 @@ field_generator power level display /obj/machinery/field/generator/attackby(obj/item/W, mob/user, params) if(active) - user << "[src] needs to be off!" + to_chat(user, "[src] needs to be off!") return else if(istype(W, /obj/item/weapon/wrench)) default_unfasten_wrench(user, W, 0) @@ -103,7 +103,7 @@ field_generator power level display var/obj/item/weapon/weldingtool/WT = W switch(state) if(FG_UNSECURED) - user << "The [name] needs to be wrenched to the floor!" + to_chat(user, "The [name] needs to be wrenched to the floor!") if(FG_SECURED) if (WT.remove_fuel(0,user)) @@ -113,7 +113,7 @@ field_generator power level display "You hear welding.") if(do_after(user,20*W.toolspeed, target = src) && state == FG_SECURED && WT.isOn()) state = FG_WELDED - user << "You weld the field generator to the floor." + to_chat(user, "You weld the field generator to the floor.") if(FG_WELDED) if (WT.remove_fuel(0,user)) @@ -123,7 +123,7 @@ field_generator power level display "You hear welding.") if(do_after(user,20*W.toolspeed, target = src) && state == FG_WELDED && WT.isOn()) state = FG_SECURED - user << "You cut \the [src] free from the floor." + to_chat(user, "You cut \the [src] free from the floor.") else return ..() diff --git a/code/modules/power/singularity/narsie.dm b/code/modules/power/singularity/narsie.dm index 861d73fc89..a9f7400289 100644 --- a/code/modules/power/singularity/narsie.dm +++ b/code/modules/power/singularity/narsie.dm @@ -11,6 +11,9 @@ move_self = 1 //Do we move on our own? grav_pull = 5 //How many tiles out do we pull? consume_range = 6 //How many tiles out do we eat + light_power = 0.7 + light_range = 15 + light_color = rgb(255, 0, 0) var/clashing = FALSE //If Nar-Sie is fighting Ratvar /obj/singularity/narsie/large @@ -73,7 +76,7 @@ for(var/mob/living/carbon/M in viewers(consume_range, src)) if(M.stat == CONSCIOUS) if(!iscultist(M)) - M << "You feel conscious thought crumble away in an instant as you gaze upon [src.name]..." + to_chat(M, "You feel conscious thought crumble away in an instant as you gaze upon [src.name]...") M.apply_effect(3, STUN) @@ -128,12 +131,12 @@ /obj/singularity/narsie/proc/acquire(atom/food) if(food == target) return - target << "NAR-SIE HAS LOST INTEREST IN YOU." + to_chat(target, "NAR-SIE HAS LOST INTEREST IN YOU.") target = food if(isliving(target)) - target << "NAR-SIE HUNGERS FOR YOUR SOUL." + to_chat(target, "NAR-SIE HUNGERS FOR YOUR SOUL.") else - target << "NAR-SIE HAS CHOSEN YOU TO LEAD HER TO HER NEXT MEAL." + to_chat(target, "NAR-SIE HAS CHOSEN YOU TO LEAD HER TO HER NEXT MEAL.") //Wizard narsie /obj/singularity/narsie/wizard diff --git a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm index 3999ced938..1aab0dd407 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm @@ -41,13 +41,13 @@ switch(construction_state) if(PA_CONSTRUCTION_UNSECURED) - user << "Looks like it's not attached to the flooring" + to_chat(user, "Looks like it's not attached to the flooring") if(PA_CONSTRUCTION_UNWIRED) - user << "It is missing some cables" + to_chat(user, "It is missing some cables") if(PA_CONSTRUCTION_PANEL_OPEN) - user << "The panel is open" + to_chat(user, "The panel is open") - user << "Alt-click to rotate it clockwise." + to_chat(user, "Alt-click to rotate it clockwise.") /obj/structure/particle_accelerator/Destroy() construction_state = PA_CONSTRUCTION_UNSECURED @@ -65,7 +65,7 @@ if(usr.stat || !usr.canmove || usr.restrained()) return if (anchored) - usr << "It is fastened to the floor!" + to_chat(usr, "It is fastened to the floor!") return 0 setDir(turn(dir, -90)) return 1 @@ -73,7 +73,7 @@ /obj/structure/particle_accelerator/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return @@ -88,7 +88,7 @@ if(usr.stat || !usr.canmove || usr.restrained()) return if (anchored) - usr << "It is fastened to the floor!" + to_chat(usr, "It is fastened to the floor!") return 0 setDir(turn(dir, 90)) return 1 diff --git a/code/modules/power/singularity/particle_accelerator/particle_control.dm b/code/modules/power/singularity/particle_accelerator/particle_control.dm index f9b652c307..3b36e436ee 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_control.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_control.dm @@ -81,7 +81,7 @@ return if(!interface_control) - usr << "ERROR: Request timed out. Check wire contacts." + to_chat(usr, "ERROR: Request timed out. Check wire contacts.") return if(href_list["close"]) @@ -258,11 +258,11 @@ ..() switch(construction_state) if(PA_CONSTRUCTION_UNSECURED) - user << "Looks like it's not attached to the flooring" + to_chat(user, "Looks like it's not attached to the flooring") if(PA_CONSTRUCTION_UNWIRED) - user << "It is missing some cables" + to_chat(user, "It is missing some cables") if(PA_CONSTRUCTION_PANEL_OPEN) - user << "The panel is open" + to_chat(user, "The panel is open") /obj/machinery/particle_accelerator/control_box/attackby(obj/item/W, mob/user, params) @@ -322,9 +322,6 @@ if(prob(50)) qdel(src) -/obj/machinery/particle_accelerator/control_box/emp_act(severity) - return - #undef PA_CONSTRUCTION_UNSECURED #undef PA_CONSTRUCTION_UNWIRED #undef PA_CONSTRUCTION_PANEL_OPEN diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm index b836d321ca..3cc48bb11a 100644 --- a/code/modules/power/singularity/singularity.dm +++ b/code/modules/power/singularity/singularity.dm @@ -415,7 +415,7 @@ if(istype(H.glasses, /obj/item/clothing/glasses/meson)) var/obj/item/clothing/glasses/meson/MS = H.glasses if(MS.vision_flags == SEE_TURFS) - H << "You look directly into the [src.name], good thing you had your protective eyewear on!" + to_chat(H, "You look directly into the [src.name], good thing you had your protective eyewear on!") return M.apply_effect(3, STUN) diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index bd432a9a52..34e7b5ea2d 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -44,7 +44,7 @@ /obj/machinery/power/smes/examine(user) ..() if(!terminal) - user << "This SMES has no power terminal!" + to_chat(user, "This SMES has no power terminal!") /obj/machinery/power/smes/New() ..() @@ -106,10 +106,10 @@ if(term && term.dir == turn(dir, 180)) terminal = term terminal.master = src - user << "Terminal found." + to_chat(user, "Terminal found.") break if(!terminal) - user << "No power terminal found." + to_chat(user, "No power terminal found.") return stat &= ~BROKEN update_icon() @@ -126,25 +126,25 @@ return if(terminal) //is there already a terminal ? - user << "This SMES already has a power terminal!" + to_chat(user, "This SMES already has a power terminal!") return if(!panel_open) //is the panel open ? - user << "You must open the maintenance panel first!" + to_chat(user, "You must open the maintenance panel first!") return var/turf/T = get_turf(user) if (T.intact) //is the floor plating removed ? - user << "You must first remove the floor plating!" + to_chat(user, "You must first remove the floor plating!") return var/obj/item/stack/cable_coil/C = I if(C.get_amount() < 10) - user << "You need more wires!" + to_chat(user, "You need more wires!") return - user << "You start building the power terminal..." + 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) @@ -186,7 +186,7 @@ /obj/machinery/power/smes/default_deconstruction_crowbar(obj/item/weapon/crowbar/C) if(istype(C) && terminal) - usr << "You must first remove the power terminal!" + to_chat(usr, "You must first remove the power terminal!") return FALSE return ..() diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index cad9ba44e1..3a27f546d3 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -207,7 +207,7 @@ /obj/item/solar_assembly/attackby(obj/item/weapon/W, mob/user, params) if(istype(W, /obj/item/weapon/wrench) && isturf(loc)) if(isinspace()) - user << "You can't secure [src] here." + to_chat(user, "You can't secure [src] here.") return anchored = !anchored if(anchored) @@ -220,7 +220,7 @@ if(istype(W, /obj/item/stack/sheet/glass) || istype(W, /obj/item/stack/sheet/rglass)) if(!anchored) - user << "You need to secure the assembly before you can add glass." + to_chat(user, "You need to secure the assembly before you can add glass.") return var/obj/item/stack/sheet/S = W if(S.use(2)) @@ -232,7 +232,7 @@ else new /obj/machinery/power/solar(get_turf(src), src) else - user << "You need two sheets of glass to put them into a solar panel!" + to_chat(user, "You need two sheets of glass to put them into a solar panel!") return return 1 @@ -412,7 +412,7 @@ playsound(src.loc, I.usesound, 50, 1) if(do_after(user, 20*I.toolspeed, target = src)) if (src.stat & BROKEN) - user << "The broken glass falls out." + to_chat(user, "The broken glass falls out.") var/obj/structure/frame/computer/A = new /obj/structure/frame/computer( src.loc ) new /obj/item/weapon/shard( src.loc ) var/obj/item/weapon/circuitboard/computer/solar_control/M = new /obj/item/weapon/circuitboard/computer/solar_control( A ) @@ -424,7 +424,7 @@ A.anchored = 1 qdel(src) else - user << "You disconnect the monitor." + to_chat(user, "You disconnect the monitor.") var/obj/structure/frame/computer/A = new /obj/structure/frame/computer( src.loc ) var/obj/item/weapon/circuitboard/computer/solar_control/M = new /obj/item/weapon/circuitboard/computer/solar_control( A ) for (var/obj/C in src) diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index a1673747c0..edb17a17bc 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -2,28 +2,55 @@ //Please do not bother them with bugs from this port, however, as it has been modified quite a bit. //Modifications include removing the world-ending full supermatter variation, and leaving only the shard. -#define NITROGEN_RETARDATION_FACTOR 2 //Higher == N2 slows reaction more -#define THERMAL_RELEASE_MODIFIER 5 //Higher == less heat released during reaction -#define PLASMA_RELEASE_MODIFIER 750 //Higher == less plasma released by reaction -#define OXYGEN_RELEASE_MODIFIER 325 //Higher == less oxygen released at high temperature/power -#define REACTION_POWER_MODIFIER 0.55 //Higher == more overall power +#define PLASMA_HEAT_PENALTY 15 // Higher == Bigger heat and waste penalty from having the crystal surrounded by this gas. Negative numbers reduce penalty. +#define OXYGEN_HEAT_PENALTY 1 +#define CO2_HEAT_PENALTY 0.1 +#define NITROGEN_HEAT_MODIFIER -1.5 +#define OXYGEN_TRANSMIT_MODIFIER 1.5 //Higher == Bigger bonus to power generation. +#define PLASMA_TRANSMIT_MODIFIER 4 +#define FREON_TRANSMIT_PENALTY 0.75 // Scales how much freon reduces total power transmission. 1 equals 1% per 1% of freon in the mix. + +#define N2O_HEAT_RESISTANCE 6 //Higher == Gas makes the crystal more resistant against heat damage. + +#define POWERLOSS_INHIBITION_GAS_THRESHOLD 0.20 //Higher == Higher percentage of inhibitor gas needed before the charge inertia chain reaction effect starts. +#define POWERLOSS_INHIBITION_MOLE_THRESHOLD 100 //Higher == More moles of the gas are needed before the charge inertia chain reaction effect starts. //Scales powerloss inhibition down until this amount of moles is reached +#define POWERLOSS_INHIBITION_MOLE_BOOST_THRESHOLD 500 //bonus powerloss inhibition boost if this amount of moles is reached + +#define MOLE_PENALTY_THRESHOLD 1800 //Higher == Shard can absorb more moles before triggering the high mole penalties. +#define MOLE_HEAT_PENALTY 350 //Heat damage scales around this. Too hot setups with this amount of moles do regular damage, anything above and below is scaled +#define POWER_PENALTY_THRESHOLD 5000 //Higher == Engine can generate more power before triggering the high power penalties. +#define SEVERE_POWER_PENALTY_THRESHOLD 7000 //Same as above, but causes more dangerous effects +#define CRITICAL_POWER_PENALTY_THRESHOLD 9000 //Even more dangerous effects, threshold for tesla delamination +#define HEAT_PENALTY_THRESHOLD 40 //Higher == Crystal safe operational temperature is higher. +#define DAMAGE_HARDCAP 0.01 + + +#define THERMAL_RELEASE_MODIFIER 5 //Higher == less heat released during reaction, not to be confused with the above values +#define PLASMA_RELEASE_MODIFIER 750 //Higher == less plasma released by reaction +#define OXYGEN_RELEASE_MODIFIER 325 //Higher == less oxygen released at high temperature/power +#define FREON_BREEDING_MODIFIER 100 //Higher == less freon created +#define REACTION_POWER_MODIFIER 0.55 //Higher == more overall power + +#define MATTER_POWER_CONVERSION 10 //Crystal converts 1/this value of stored matter into energy. //These would be what you would get at point blank, decreases with distance #define DETONATION_RADS 200 #define DETONATION_HALLUCINATION 600 -#define WARNING_DELAY 30 //seconds between warnings. +#define WARNING_DELAY 30 + +#define HALLUCINATION_RANGE(P) (min(7, round(P ** 0.25))) /obj/machinery/power/supermatter_shard name = "supermatter shard" - desc = "A strangely translucent and iridescent crystal that looks like it used to be part of a larger structure. You get headaches just from looking at it." + desc = "A strangely translucent and iridescent crystal that looks like it used to be part of a larger structure." icon = 'icons/obj/supermatter.dmi' icon_state = "darkmatter_shard" density = 1 anchored = 0 - luminosity = 4 + light_range = 4 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF critical_machine = TRUE @@ -43,12 +70,31 @@ var/emergency_issued = 0 - var/explosion_power = 320 + var/explosion_power = 12 + var/temp_factor = 30 var/lastwarning = 0 // Time in 1/10th of seconds since the last sent warning var/power = 0 - var/oxygen = 0 // Moving this up here for easier debugging. + var/n2comp = 0 // raw composition of each gas in the chamber, ranges from 0 to 1 + var/freoncomp = 0 + + var/plasmacomp = 0 + var/o2comp = 0 + var/co2comp = 0 + var/n2ocomp = 0 + + var/combined_gas = 0 + var/gasmix_power_ratio = 0 + var/dynamic_heat_modifier = 1 + var/dynamic_heat_resistance = 1 + var/powerloss_inhibitor = 1 + var/powerloss_dynamic_scaling= 0 + var/power_transmission_bonus = 0 + var/mole_heat_penalty = 0 + var/freon_transmit_modifier = 1 + + var/matter_power = 0 //Temporary values so that we can optimize this //How much the bullets damage should be multiplied by when it is added to the internal variables @@ -69,6 +115,9 @@ var/produces_gas = 1 var/obj/effect/countdown/supermatter/countdown +/obj/machinery/power/supermatter_shard/make_frozen_visual() + return + /obj/machinery/power/supermatter_shard/New() . = ..() countdown = new(src) @@ -90,13 +139,42 @@ countdown = null . = ..() +/obj/machinery/power/supermatter_shard/examine(mob/user) + ..() + if(!ishuman(user)) + return + + var/range = HALLUCINATION_RANGE(power) + for(var/mob/living/carbon/human/H in viewers(range, src)) + if(H != user) + continue + if(!istype(H.glasses, /obj/item/clothing/glasses/meson)) + to_chat(H, "You get headaches just from looking at it.") + return + +/obj/machinery/power/supermatter_shard/get_spans() + return list(SPAN_ROBOT) + /obj/machinery/power/supermatter_shard/proc/explode() - investigate_log("has collapsed into a singularity.", "supermatter") var/turf/T = get_turf(src) - if(T) - var/obj/singularity/S = new(T) - S.energy = explosion_power - S.consume(src) + for(var/mob/M in mob_list) + if(M.z == z) + M << 'sound/magic/Charge.ogg' + to_chat(M, "You feel reality distort for a moment...") + if(combined_gas > MOLE_PENALTY_THRESHOLD) + investigate_log("has collapsed into a singularity.", "supermatter") + if(T) + var/obj/singularity/S = new(T) + S.energy = 800 + S.consume(src) + else + investigate_log("has exploded.", "supermatter") + explosion(get_turf(T), explosion_power * max(gasmix_power_ratio, 0.205) * 0.5 , explosion_power * max(gasmix_power_ratio, 0.205) + 2, explosion_power * max(gasmix_power_ratio, 0.205) + 4 , explosion_power * max(gasmix_power_ratio, 0.205) + 6, 1, 1) + if(power > CRITICAL_POWER_PENALTY_THRESHOLD) + investigate_log("has spawned additional energy balls.", "supermatter") + var/obj/singularity/energy_ball/E = new(T) + E.energy = power + qdel(src) /obj/machinery/power/supermatter_shard/process() var/turf/T = loc @@ -107,43 +185,6 @@ 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(isspaceturf(T)) // Stop processing this stuff if we've been ejected. - return - - if(damage > warning_point) // while the core is still damaged and it's still worth noting its status - if((world.timeofday - lastwarning) / 10 >= WARNING_DELAY) - var/stability = num2text(round((damage / explosion_point) * 100)) - - if(damage > emergency_point) - radio.talk_into(src, "[emergency_alert] Instability: [stability]%") - lastwarning = world.timeofday - if(!has_reached_emergency) - investigate_log("has reached the emergency point for the first time.", "supermatter") - message_admins("[src] has reached the emergency point (JMP).") - has_reached_emergency = 1 - - else if(damage >= damage_archived) // The damage is still going up - radio.talk_into(src, "[warning_alert] Instability: [stability]%") - lastwarning = world.timeofday - 150 - - else // Phew, we're safe - radio.talk_into(src, "[safe_alert]") - lastwarning = world.timeofday - - if(damage > explosion_point) - for(var/mob in living_mob_list) - var/mob/living/L = mob - if(istype(L) && L.z == z) - if(ishuman(mob)) - //Hilariously enough, running into a closet should make you get hit the hardest. - var/mob/living/carbon/human/H = mob - H.hallucination += max(50, min(300, DETONATION_HALLUCINATION * sqrt(1 / (get_dist(mob, src) + 1)) ) ) - var/rads = DETONATION_RADS * sqrt( 1 / (get_dist(L, src) + 1) ) - L.rad_act(rads) - - explode() - return - //Ok, get the air from the turf var/datum/gas_mixture/env = T.return_air() @@ -156,28 +197,65 @@ // Pass all the gas related code an empty gas container removed = new() - if(!removed || !removed.total_moles()) + if(!removed || !removed.total_moles() || isspaceturf(T)) //we're in space or there is no gas to process if(takes_damage) damage += max((power-1600)/10, 0) - power = min(power, 1600) return 1 damage_archived = damage if(takes_damage) - damage = max( damage + ( (removed.temperature - 800) / 150 ) , 0 ) - //Ok, 100% oxygen atmosphere = best reaction - //Maxes out at 100% oxygen pressure - var/removed_nitrogen = 0 - if(removed.gases["n2"]) - removed_nitrogen = (removed.gases["n2"][MOLES] * NITROGEN_RETARDATION_FACTOR) + //causing damage + damage = max(damage + (max(removed.temperature - ((T0C + HEAT_PENALTY_THRESHOLD)*dynamic_heat_resistance), 0) * mole_heat_penalty / 150 ), 0) + damage = max(damage + (max(power - POWER_PENALTY_THRESHOLD, 0)/500), 0) + damage = max(damage + (max(combined_gas - MOLE_PENALTY_THRESHOLD, 0)/80), 0) - removed.assert_gases("o2", "plasma") + //healing damage + if(combined_gas < MOLE_PENALTY_THRESHOLD) + damage = max(damage + (min(removed.temperature - (T0C + HEAT_PENALTY_THRESHOLD), 0) / 150 ), 0) - oxygen = max(min((removed.gases["o2"][MOLES] - removed_nitrogen) / MOLES_CELLSTANDARD, 1), 0) + //capping damage + damage = min(damage_archived + (DAMAGE_HARDCAP * explosion_point),damage) + if(damage > damage_archived && prob(10)) + playsound(get_turf(src), 'sound/effects/EMPulse.ogg', 50, 1) + + removed.assert_gases("o2", "plasma", "co2", "n2o", "n2", "freon") + //calculating gas related values + combined_gas = max(removed.total_moles(), 0) + + plasmacomp = max(removed.gases["plasma"][MOLES]/combined_gas, 0) + o2comp = max(removed.gases["o2"][MOLES]/combined_gas, 0) + co2comp = max(removed.gases["co2"][MOLES]/combined_gas, 0) + + n2ocomp = max(removed.gases["n2o"][MOLES]/combined_gas, 0) + n2comp = max(removed.gases["n2"][MOLES]/combined_gas, 0) + freoncomp = max(removed.gases["freon"][MOLES]/combined_gas, 0) + + gasmix_power_ratio = min(max(plasmacomp + o2comp + co2comp - n2ocomp - n2comp - freoncomp, 0), 1) + + dynamic_heat_modifier = max((plasmacomp * PLASMA_HEAT_PENALTY)+(o2comp * OXYGEN_HEAT_PENALTY)+(co2comp * CO2_HEAT_PENALTY)+(n2comp * NITROGEN_HEAT_MODIFIER), 0.5) + dynamic_heat_resistance = max(n2ocomp * N2O_HEAT_RESISTANCE, 1) + + power_transmission_bonus = max((plasmacomp * PLASMA_TRANSMIT_MODIFIER) + (o2comp * OXYGEN_TRANSMIT_MODIFIER), 0) + + freon_transmit_modifier = max(1-(freoncomp * FREON_TRANSMIT_PENALTY), 0) + + //more moles of gases are harder to heat than fewer, so let's scale heat damage around them + mole_heat_penalty = max(combined_gas / MOLE_HEAT_PENALTY, 0.25) + + if (combined_gas > POWERLOSS_INHIBITION_MOLE_THRESHOLD && co2comp > POWERLOSS_INHIBITION_GAS_THRESHOLD) + powerloss_dynamic_scaling = Clamp(powerloss_dynamic_scaling + Clamp(co2comp - powerloss_dynamic_scaling, -0.02, 0.02), 0, 1) + else + powerloss_dynamic_scaling = Clamp(powerloss_dynamic_scaling - 0.10,0, 1) + powerloss_inhibitor = Clamp(1-(powerloss_dynamic_scaling * Clamp(combined_gas/POWERLOSS_INHIBITION_MOLE_BOOST_THRESHOLD,1 ,1.5)),0 ,1) + + if(matter_power) + var/removed_matter = max(matter_power/MATTER_POWER_CONVERSION, 40) + power = max(power + removed_matter, 0) + matter_power = max(matter_power - removed_matter, 0) var/temp_factor = 50 - if(oxygen > 0.8) + if(gasmix_power_ratio > 0.8) // with a perfect gas mix, make the power less based on heat icon_state = "[base_icon_state]_glow" else @@ -185,7 +263,7 @@ temp_factor = 30 icon_state = base_icon_state - power = max( (removed.temperature * temp_factor / T0C) * oxygen + power, 0) //Total laser power plus an overload + power = max( (removed.temperature * temp_factor / T0C) * gasmix_power_ratio + power, 0) //Total laser power plus an overload //We've generated power, now let's transfer it to the collectors for storing/usage transfer_energy() @@ -199,19 +277,22 @@ //Also keep in mind we are only adding this temperature to (efficiency)% of the one tile the rock //is on. An increase of 4*C @ 25% efficiency here results in an increase of 1*C / (#tilesincore) overall. - removed.temperature += (device_energy / THERMAL_RELEASE_MODIFIER) + removed.temperature += ((device_energy * dynamic_heat_modifier) / THERMAL_RELEASE_MODIFIER) - removed.temperature = max(0, min(removed.temperature, 2500)) + removed.temperature = max(0, min(removed.temperature, 2500 * dynamic_heat_modifier)) //Calculate how much gas to release - removed.gases["plasma"][MOLES] += max(device_energy / PLASMA_RELEASE_MODIFIER, 0) + removed.gases["plasma"][MOLES] += max((device_energy * dynamic_heat_modifier) / PLASMA_RELEASE_MODIFIER, 0) - removed.gases["o2"][MOLES] += max((device_energy + removed.temperature - T0C) / OXYGEN_RELEASE_MODIFIER, 0) + removed.gases["o2"][MOLES] += max(((device_energy + removed.temperature * dynamic_heat_modifier) - T0C) / OXYGEN_RELEASE_MODIFIER, 0) + + if(combined_gas < 50) + removed.gases["freon"][MOLES] = max((removed.gases["freon"][MOLES] + device_energy) * freoncomp / FREON_BREEDING_MODIFIER, 0) if(produces_gas) env.merge(removed) - for(var/mob/living/carbon/human/l in view(src, min(7, round(power ** 0.25)))) // If they can see it without mesons on. Bad on them. + for(var/mob/living/carbon/human/l in view(src, HALLUCINATION_RANGE(power))) // If they can see it without mesons on. Bad on them. if(!istype(l.glasses, /obj/item/clothing/glasses/meson)) var/D = sqrt(1 / max(1, get_dist(l, src))) l.hallucination += power * config_hallucination_power * D @@ -221,7 +302,69 @@ var/rads = (power / 10) * sqrt( 1 / max(get_dist(l, src),1) ) l.rad_act(rads) - power -= (power/500)**3 + if(power > POWER_PENALTY_THRESHOLD) + playsound(src.loc, 'sound/weapons/emitter2.ogg', 100, 1, extrarange = 10) + supermatter_zap(src, 5, min(power*2, 20000)) + supermatter_zap(src, 5, min(power*2, 20000)) + if(power > SEVERE_POWER_PENALTY_THRESHOLD) + supermatter_zap(src, 5, min(power*2, 20000)) + if(power > CRITICAL_POWER_PENALTY_THRESHOLD) + supermatter_zap(src, 5, min(power*2, 20000)) + + if(prob(15)) + supermatter_pull(src, power/750) + if(prob(5)) + supermatter_anomaly_gen(src, 1, rand(5, 10)) + if(power > SEVERE_POWER_PENALTY_THRESHOLD && prob(5) || prob(2)) + supermatter_anomaly_gen(src, 2, rand(5, 10)) + if(power > SEVERE_POWER_PENALTY_THRESHOLD && prob(2) || prob(0.3)) + supermatter_anomaly_gen(src, 3, rand(5, 10)) + + + + if(damage > warning_point) // while the core is still damaged and it's still worth noting its status + if((REALTIMEOFDAY - lastwarning) / 10 >= WARNING_DELAY) + var/stability = num2text(round((damage / explosion_point) * 100)) + + if(damage > emergency_point) + + radio.talk_into(src, "[emergency_alert] Instability: [stability]%") + lastwarning = REALTIMEOFDAY + if(!has_reached_emergency) + investigate_log("has reached the emergency point for the first time.", "supermatter") + message_admins("[src] has reached the emergency point (JMP).") + has_reached_emergency = 1 + else if(damage >= damage_archived) // The damage is still going up + radio.talk_into(src, "[warning_alert] Instability: [stability]%") + lastwarning = REALTIMEOFDAY - (WARNING_DELAY * 5) + + else // Phew, we're safe + radio.talk_into(src, "[safe_alert] Instability: [stability]%") + lastwarning = REALTIMEOFDAY + + if(power > POWER_PENALTY_THRESHOLD) + radio.talk_into(src, "Warning: Hyperstructure has reached dangerous power level.") + if(powerloss_inhibitor < 0.5) + radio.talk_into(src, "DANGER: CHARGE INERTIA CHAIN REACTION IN PROGRESS.") + + if(combined_gas > MOLE_PENALTY_THRESHOLD) + radio.talk_into(src, "Warning: Critical coolant mass reached.") + + if(damage > explosion_point) + for(var/mob in living_mob_list) + var/mob/living/L = mob + if(istype(L) && L.z == z) + if(ishuman(mob)) + //Hilariously enough, running into a closet should make you get hit the hardest. + var/mob/living/carbon/human/H = mob + H.hallucination += max(50, min(300, DETONATION_HALLUCINATION * sqrt(1 / (get_dist(mob, src) + 1)) ) ) + var/rads = DETONATION_RADS * sqrt( 1 / (get_dist(L, src) + 1) ) + L.rad_act(rads) + + explode() + + + power -= ((power/500)**3) * powerloss_inhibitor return 1 @@ -250,7 +393,7 @@ for(var/mob/M in mob_list) if(M.z == z) M << 'sound/effects/supermatter.ogg' //everyone goan know bout this - M << "A horrible screeching fills your ears, and a wave of dread washes over you..." + to_chat(M, "A horrible screeching fills your ears, and a wave of dread washes over you...") qdel(src) return(gain) @@ -275,10 +418,10 @@ if(Adjacent(user)) return attack_hand(user) else - user << "You attempt to interface with the control circuits but find they are not connected to your network. Maybe in a future firmware update." + to_chat(user, "You attempt to interface with the control circuits but find they are not connected to your network. Maybe in a future firmware update.") /obj/machinery/power/supermatter_shard/attack_ai(mob/user) - user << "You attempt to interface with the control circuits but find they are not connected to your network. Maybe in a future firmware update." + to_chat(user, "You attempt to interface with the control circuits but find they are not connected to your network. Maybe in a future firmware update.") /obj/machinery/power/supermatter_shard/attack_hand(mob/living/user) if(!istype(user)) @@ -294,7 +437,7 @@ /obj/machinery/power/supermatter_shard/proc/transfer_energy() for(var/obj/machinery/power/rad_collector/R in rad_collectors) if(R.z == z && get_dist(R, src) <= 15) //Better than using orange() every process - R.receive_pulse(power/10) + R.receive_pulse(power * (1 + power_transmission_bonus)/10 * freon_transmit_modifier) /obj/machinery/power/supermatter_shard/attackby(obj/item/W, mob/living/user, params) if(!istype(W) || (W.flags & ABSTRACT) || !istype(user)) @@ -325,19 +468,18 @@ Consume(AM) - /obj/machinery/power/supermatter_shard/proc/Consume(atom/movable/AM) if(isliving(AM)) var/mob/living/user = AM message_admins("[src] has consumed [key_name_admin(user)]? (FLW) (JMP).") investigate_log("has consumed [key_name(user)].", "supermatter") user.dust() - power += 200 + matter_power += 200 else if(isobj(AM) && !istype(AM, /obj/effect)) investigate_log("has consumed [AM].", "supermatter") qdel(AM) - power += 200 + matter_power += 200 //Some poor sod got eaten, go ahead and irradiate people nearby. radiation_pulse(get_turf(src), 4, 10, 500, 1) @@ -357,9 +499,111 @@ /obj/machinery/power/supermatter_shard/crystal name = "supermatter crystal" - desc = "A strangely translucent and iridescent crystal. You get headaches just from looking at it." + desc = "A strangely translucent and iridescent crystal." base_icon_state = "darkmatter" icon_state = "darkmatter" anchored = 1 gasefficency = 0.15 - explosion_power = 800 + explosion_power = 35 + +/obj/machinery/power/supermatter_shard/proc/supermatter_pull(turf/center, pull_range = 10) + playsound(src.loc, 'sound/weapons/marauder.ogg', 100, 1, extrarange = 7) + for(var/atom/P in orange(pull_range,center)) + if(istype(P, /atom/movable)) + var/atom/movable/pulled_object = P + if(ishuman(P)) + var/mob/living/carbon/human/H = P + H.apply_effect(2, WEAKEN, 0) + if(pulled_object && !pulled_object.anchored && !ishuman(P)) + step_towards(pulled_object,center) + step_towards(pulled_object,center) + step_towards(pulled_object,center) + step_towards(pulled_object,center) + + return + +/obj/machinery/power/supermatter_shard/proc/supermatter_anomaly_gen(turf/anomalycenter, type = 1, anomalyrange = 5) + var/turf/L = pick(orange(anomalyrange, anomalycenter)) + if(L) + if(type == 1) + var/obj/effect/anomaly/flux/A = new(L) + A.explosive = 0 + A.lifespan = 300 + else if(type == 2) + var/obj/effect/anomaly/grav/A = new(L) + A.lifespan = 250 + else if(type == 3) + var/obj/effect/anomaly/pyro/A = new(L) + A.lifespan = 200 + + return + +/obj/machinery/power/supermatter_shard/proc/supermatter_zap(atom/zapstart, range = 3, power) + . = zapstart.dir + if(power < 1000) + return + + var/target_atom + var/mob/living/target_mob + var/obj/machinery/target_machine + var/obj/structure/target_structure + var/list/arctargetsmob = list() + var/list/arctargetsmachine = list() + var/list/arctargetsstructure = list() + + if(prob(20)) //let's not hit all the engineers with every beam and/or segment of the arc + for(var/mob/living/Z in oview(zapstart, range+2)) + arctargetsmob += Z + if(arctargetsmob.len) + var/mob/living/H = pick(arctargetsmob) + var/atom/A = H + target_mob = H + target_atom = A + + else + for(var/obj/machinery/X in oview(zapstart, range+2)) + arctargetsmachine += X + if(arctargetsmachine.len) + var/obj/machinery/M = pick(arctargetsmachine) + var/atom/A = M + target_machine = M + target_atom = A + + else + for(var/obj/structure/Y in oview(zapstart, range+2)) + arctargetsstructure += Y + if(arctargetsstructure.len) + var/obj/structure/O = pick(arctargetsstructure) + var/atom/A = O + target_structure = O + target_atom = A + + if(target_atom) + zapstart.Beam(target_atom, icon_state="nzcrentrs_power", time=5) + var/zapdir = get_dir(zapstart, target_atom) + if(zapdir) + . = zapdir + + if(target_mob) + target_mob.electrocute_act(rand(5,10), "Supermatter Discharge Bolt", 1, stun = 0) + if(prob(15)) + supermatter_zap(target_mob, 5, power / 2) + supermatter_zap(target_mob, 5, power / 2) + else + supermatter_zap(target_mob, 5, power / 1.5) + + else if(target_machine) + if(prob(15)) + supermatter_zap(target_machine, 5, power / 2) + supermatter_zap(target_machine, 5, power / 2) + else + supermatter_zap(target_machine, 5, power / 1.5) + + else if(target_structure) + if(prob(15)) + supermatter_zap(target_structure, 5, power / 2) + supermatter_zap(target_structure, 5, power / 2) + else + supermatter_zap(target_structure, 5, power / 1.5) + +#undef HALLUCINATION_RANGE diff --git a/code/modules/power/switch.dm b/code/modules/power/switch.dm index 01888d6f7b..9bac6c4715 100644 --- a/code/modules/power/switch.dm +++ b/code/modules/power/switch.dm @@ -24,18 +24,18 @@ /obj/structure/powerswitch/examine(mob/user) ..() if(on) - user << "The switch is in the on position" + to_chat(user, "The switch is in the on position") else - user << "The switch is in the off position" + to_chat(user, "The switch is in the off position") /obj/structure/powerswitch/attack_ai(mob/user) - user << "\red You're an AI. This is a manual switch. It's not going to work." + to_chat(user, "\red You're an AI. This is a manual switch. It's not going to work.") return /obj/structure/powerswitch/attack_hand(mob/user) if(busy) - user << "\red This switch is already being toggled." + to_chat(user, "\red This switch is already being toggled.") return ..() diff --git a/code/modules/power/terminal.dm b/code/modules/power/terminal.dm index c64c9e3673..bfe94d5516 100644 --- a/code/modules/power/terminal.dm +++ b/code/modules/power/terminal.dm @@ -51,7 +51,7 @@ if(isturf(loc)) var/turf/T = loc if(T.intact) - user << "You must first expose the power terminal!" + to_chat(user, "You must first expose the power terminal!") return if(!master || master.can_terminal_dismantle()) @@ -67,7 +67,7 @@ s.start() return new /obj/item/stack/cable_coil(loc, 10) - user << "You cut the cables and dismantle the power terminal." + to_chat(user, "You cut the cables and dismantle the power terminal.") qdel(src) diff --git a/code/modules/power/tesla/energy_ball.dm b/code/modules/power/tesla/energy_ball.dm index 99514ab050..7910ebae53 100644 --- a/code/modules/power/tesla/energy_ball.dm +++ b/code/modules/power/tesla/energy_ball.dm @@ -78,7 +78,7 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics, /obj/singularity/energy_ball/examine(mob/user) ..() if(orbiting_balls.len) - user << "The amount of orbiting mini-balls is [orbiting_balls.len]." + to_chat(user, "The amount of orbiting mini-balls is [orbiting_balls.len].") /obj/singularity/energy_ball/proc/move_the_basket_ball(var/move_amount) diff --git a/code/modules/power/turbine.dm b/code/modules/power/turbine.dm index cfea73c623..8f0e4d0f33 100644 --- a/code/modules/power/turbine.dm +++ b/code/modules/power/turbine.dm @@ -123,10 +123,10 @@ inturf = get_step(src, dir) locate_machinery() if(turbine) - user << "Turbine connected." + to_chat(user, "Turbine connected.") stat &= ~BROKEN else - user << "Turbine not connected." + to_chat(user, "Turbine not connected.") stat |= BROKEN return @@ -275,10 +275,10 @@ outturf = get_step(src, dir) locate_machinery() if(compressor) - user << "Compressor connected." + to_chat(user, "Compressor connected.") stat &= ~BROKEN else - user << "Compressor not connected." + to_chat(user, "Compressor not connected.") stat |= BROKEN return diff --git a/code/modules/procedural_mapping/mapGenerator.dm b/code/modules/procedural_mapping/mapGenerator.dm index c4bff6d865..0de4a45dcb 100644 --- a/code/modules/procedural_mapping/mapGenerator.dm +++ b/code/modules/procedural_mapping/mapGenerator.dm @@ -152,23 +152,23 @@ var/endInput = input(usr,"End turf of Map (X;Y;Z)", "Map Gen Settings", "[world.maxx];[world.maxy];[mob ? mob.z : 1]") as text //maxx maxy and current z so that if you fuck up, you only fuck up one entire z level instead of the entire universe if(!startInput || !endInput) - src << "Missing Input" + to_chat(src, "Missing Input") return var/list/startCoords = splittext(startInput, ";") var/list/endCoords = splittext(endInput, ";") if(!startCoords || !endCoords) - src << "Invalid Coords" - src << "Start Input: [startInput]" - src << "End Input: [endInput]" + to_chat(src, "Invalid Coords") + to_chat(src, "Start Input: [startInput]") + to_chat(src, "End Input: [endInput]") return var/turf/Start = locate(text2num(startCoords[1]),text2num(startCoords[2]),text2num(startCoords[3])) var/turf/End = locate(text2num(endCoords[1]),text2num(endCoords[2]),text2num(endCoords[3])) if(!Start || !End) - src << "Invalid Turfs" - src << "Start Coords: [startCoords[1]] - [startCoords[2]] - [startCoords[3]]" - src << "End Coords: [endCoords[1]] - [endCoords[2]] - [endCoords[3]]" + to_chat(src, "Invalid Turfs") + to_chat(src, "Start Coords: [startCoords[1]] - [startCoords[2]] - [startCoords[3]]") + to_chat(src, "End Coords: [endCoords[1]] - [endCoords[2]] - [endCoords[3]]") return var/list/clusters = list("None"=CLUSTER_CHECK_NONE,"All"=CLUSTER_CHECK_ALL,"Sames"=CLUSTER_CHECK_SAMES,"Differents"=CLUSTER_CHECK_DIFFERENTS, \ @@ -181,7 +181,7 @@ var/theCluster = 0 if(moduleClusters != "None") if(!clusters[moduleClusters]) - src << "Invalid Cluster Flags" + to_chat(src, "Invalid Cluster Flags") return theCluster = clusters[moduleClusters] else @@ -192,10 +192,10 @@ M.clusterCheckFlags = theCluster - src << "Defining Region" + to_chat(src, "Defining Region") N.defineRegion(Start, End) - src << "Region Defined" - src << "Generating Region" + to_chat(src, "Region Defined") + to_chat(src, "Generating Region") N.generate() - src << "Generated Region" + to_chat(src, "Generated Region") diff --git a/code/modules/projectiles/ammunition.dm b/code/modules/projectiles/ammunition.dm index 35cc89b3c6..af9858aede 100644 --- a/code/modules/projectiles/ammunition.dm +++ b/code/modules/projectiles/ammunition.dm @@ -53,8 +53,8 @@ continue if (boolets > 0) box.update_icon() - user << "You collect [boolets] shell\s. [box] now contains [box.stored_ammo.len] shell\s." + to_chat(user, "You collect [boolets] shell\s. [box] now contains [box.stored_ammo.len] shell\s.") else - user << "You fail to collect anything!" + to_chat(user, "You fail to collect anything!") else return ..() diff --git a/code/modules/projectiles/ammunition/caseless.dm b/code/modules/projectiles/ammunition/caseless.dm index 67c2745a37..9ba066ef95 100644 --- a/code/modules/projectiles/ammunition/caseless.dm +++ b/code/modules/projectiles/ammunition/caseless.dm @@ -82,7 +82,7 @@ modified = 1 FD.modified = 1 FD.damage_type = BRUTE - user << "You pop the safety cap off of [src]." + to_chat(user, "You pop the safety cap off of [src].") update_icon() else if (istype(A, /obj/item/weapon/pen)) if(modified) @@ -92,11 +92,11 @@ FD.pen = A FD.damage = 5 FD.nodamage = 0 - user << "You insert [A] into [src]." + to_chat(user, "You insert [A] into [src].") else - user << "There's already something in [src]." + to_chat(user, "There's already something in [src].") else - user << "The safety cap prevents you from inserting [A] into [src]." + to_chat(user, "The safety cap prevents you from inserting [A] into [src].") else return ..() @@ -106,7 +106,7 @@ FD.damage = initial(FD.damage) FD.nodamage = initial(FD.nodamage) user.put_in_hands(FD.pen) - user << "You remove [FD.pen] from [src]." + to_chat(user, "You remove [FD.pen] from [src].") FD.pen = null /obj/item/ammo_casing/caseless/foam_dart/riot diff --git a/code/modules/projectiles/ammunition/energy.dm b/code/modules/projectiles/ammunition/energy.dm index 56f85336ed..a6440e32ed 100644 --- a/code/modules/projectiles/ammunition/energy.dm +++ b/code/modules/projectiles/ammunition/energy.dm @@ -8,6 +8,18 @@ fire_sound = 'sound/weapons/Laser.ogg' firing_effect_type = /obj/effect/overlay/temp/dir_setting/firing_effect/energy +/obj/item/ammo_casing/energy/chameleon + e_cost = 0 + var/list/projectile_vars = list() + +/obj/item/ammo_casing/energy/chameleon/ready_proj() + . = ..() + if(!BB) + newshot() + for(var/V in projectile_vars) + if(BB.vars[V]) + BB.vars[V] = projectile_vars[V] + /obj/item/ammo_casing/energy/laser projectile_type = /obj/item/projectile/beam/laser select_name = "kill" @@ -222,31 +234,3 @@ /obj/item/ammo_casing/energy/plasma/adv projectile_type = /obj/item/projectile/plasma/adv - -/obj/item/ammo_casing/energy/plasmagun - projectile_type = /obj/item/projectile/energy/plasmabolt - e_cost = 50 - fire_sound = 'sound/weapons/elecfire.ogg' - -/obj/item/ammo_casing/energy/plasmagun/rifle - projectile_type = /obj/item/projectile/energy/plasmabolt/rifle - e_cost = 150 - -/obj/item/ammo_casing/energy/plasmagun/light - projectile_type = /obj/item/projectile/energy/plasmabolt/light - e_cost = 50 - -/obj/item/ammo_casing/energy/plasmagun/MP40k - projectile_type = /obj/item/projectile/energy/plasmabolt/MP40k - e_cost = 75 - -/obj/item/ammo_casing/energy/megabuster - projectile_type = /obj/item/projectile/energy/megabuster - fire_sound = 'sound/weapons/megabuster.ogg' - e_cost = 5 - -/obj/item/ammo_casing/energy/buster - e_cost = 25 - projectile_type = /obj/item/projectile/energy/buster - fire_sound = 'sound/weapons/mmlbuster.ogg' - diff --git a/code/modules/projectiles/ammunition/plasma.dm b/code/modules/projectiles/ammunition/plasma.dm new file mode 100644 index 0000000000..484d029519 --- /dev/null +++ b/code/modules/projectiles/ammunition/plasma.dm @@ -0,0 +1,27 @@ + +/obj/item/ammo_casing/energy/plasmagun + projectile_type = /obj/item/projectile/energy/plasmabolt + e_cost = 50 + fire_sound = 'sound/weapons/elecfire.ogg' + +/obj/item/ammo_casing/energy/plasmagun/rifle + projectile_type = /obj/item/projectile/energy/plasmabolt/rifle + e_cost = 150 + +/obj/item/ammo_casing/energy/plasmagun/light + projectile_type = /obj/item/projectile/energy/plasmabolt/light + e_cost = 50 + +/obj/item/ammo_casing/energy/plasmagun/MP40k + projectile_type = /obj/item/projectile/energy/plasmabolt/MP40k + e_cost = 75 + +/obj/item/ammo_casing/energy/megabuster + projectile_type = /obj/item/projectile/energy/megabuster + fire_sound = 'sound/weapons/megabuster.ogg' + e_cost = 5 + +/obj/item/ammo_casing/energy/buster + e_cost = 25 + projectile_type = /obj/item/projectile/energy/buster + fire_sound = 'sound/weapons/mmlbuster.ogg' \ No newline at end of file diff --git a/code/modules/projectiles/box_magazine.dm b/code/modules/projectiles/box_magazine.dm index 3cf4568fbd..982bbdf587 100644 --- a/code/modules/projectiles/box_magazine.dm +++ b/code/modules/projectiles/box_magazine.dm @@ -85,7 +85,7 @@ if(num_loaded) if(!silent) - user << "You load [num_loaded] shell\s into \the [src]!" + to_chat(user, "You load [num_loaded] shell\s into \the [src]!") A.update_icon() update_icon() @@ -95,7 +95,7 @@ var/obj/item/ammo_casing/A = get_round() if(A) user.put_in_hands(A) - user << "You remove a round from \the [src]!" + to_chat(user, "You remove a round from \the [src]!") update_icon() /obj/item/ammo_box/update_icon() diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 4de87637ee..8b889a7080 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -83,11 +83,11 @@ /obj/item/weapon/gun/examine(mob/user) ..() if(pin) - user << "It has [pin] installed." + to_chat(user, "It has [pin] installed.") else - user << "It doesn't have a firing pin installed, and won't fire." + to_chat(user, "It doesn't have a firing pin installed, and won't fire.") if(unique_reskin && !current_skin) - user << "Alt-click it to reskin it." + to_chat(user, "Alt-click it to reskin it.") //called after the gun has successfully fired its chambered ammo. /obj/item/weapon/gun/proc/process_chamber() @@ -101,7 +101,7 @@ /obj/item/weapon/gun/proc/shoot_with_empty_chamber(mob/living/user as mob|obj) - user << "*click*" + to_chat(user, "*click*") playsound(user, 'sound/weapons/empty.ogg', 100, 1) @@ -154,14 +154,14 @@ if(clumsy_check) if(istype(user)) if (user.disabilities & CLUMSY && prob(40)) - user << "You shoot yourself in the foot with [src]!" + to_chat(user, "You shoot yourself in the foot with [src]!") var/shot_leg = pick("l_leg", "r_leg") process_fire(user,user,0,params, zone_override = shot_leg) user.drop_item() return if(weapon_weight == WEAPON_HEAVY && user.get_inactive_held_item()) - user << "You need both hands free to fire [src]!" + to_chat(user, "You need both hands free to fire [src]!") return //DUAL (or more!) WIELDING @@ -197,7 +197,7 @@ pin.auth_fail(user) return 0 else - user << "[src]'s trigger is locked. This weapon doesn't have a firing pin installed!" + to_chat(user, "[src]'s trigger is locked. This weapon doesn't have a firing pin installed!") return 0 /obj/item/weapon/gun/proc/recharge_newshot() @@ -282,9 +282,9 @@ if(!gun_light) if(!user.transferItemToLoc(I, src)) return - user << "You click [S] into place on [src]." + to_chat(user, "You click [S] into place on [src].") if(S.on) - SetLuminosity(0) + set_light(0) gun_light = S update_icon() update_gunlight(user) @@ -296,7 +296,7 @@ if(istype(I, /obj/item/weapon/screwdriver)) if(gun_light) for(var/obj/item/device/flashlight/seclite/S in src) - user << "You unscrew the seclite from [src]." + to_chat(user, "You unscrew the seclite from [src].") gun_light = null S.forceMove(get_turf(user)) update_gunlight(user) @@ -320,7 +320,7 @@ var/mob/living/carbon/human/user = usr gun_light.on = !gun_light.on - user << "You toggle the gunlight [gun_light.on ? "on":"off"]." + to_chat(user, "You toggle the gunlight [gun_light.on ? "on":"off"].") playsound(user, 'sound/weapons/empty.ogg', 100, 1) update_gunlight(user) @@ -329,21 +329,12 @@ /obj/item/weapon/gun/proc/update_gunlight(mob/user = null) if(gun_light) if(gun_light.on) - if(loc == user) - user.AddLuminosity(gun_light.brightness_on) - else if(isturf(loc)) - SetLuminosity(gun_light.brightness_on) + set_light(gun_light.brightness_on) else - if(loc == user) - user.AddLuminosity(-gun_light.brightness_on) - else if(isturf(loc)) - SetLuminosity(0) + set_light(0) update_icon() else - if(loc == user) - user.AddLuminosity(-5) - else if(isturf(loc)) - SetLuminosity(0) + set_light(0) for(var/X in actions) var/datum/action/A = X A.UpdateButtonIcon() @@ -351,19 +342,11 @@ /obj/item/weapon/gun/pickup(mob/user) ..() - if(gun_light) - if(gun_light.on) - user.AddLuminosity(gun_light.brightness_on) - SetLuminosity(0) if(azoom) azoom.Grant(user) /obj/item/weapon/gun/dropped(mob/user) ..() - if(gun_light) - if(gun_light.on) - user.AddLuminosity(-gun_light.brightness_on) - SetLuminosity(gun_light.brightness_on) zoom(user,FALSE) if(azoom) azoom.Remove(user) @@ -372,7 +355,7 @@ /obj/item/weapon/gun/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(unique_reskin && !current_skin && loc == user) reskin_gun(user) @@ -385,7 +368,7 @@ if(options[choice] == null) return current_skin = options[choice] - M << "Your gun is now skinned as [choice]. Say hello to your new friend." + to_chat(M, "Your gun is now skinned as [choice]. Say hello to your new friend.") update_icon() @@ -493,4 +476,3 @@ if(zoomable) azoom = new() azoom.gun = src - diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/ballistic.dm index ee0744b275..a7a8b75da2 100644 --- a/code/modules/projectiles/guns/ballistic.dm +++ b/code/modules/projectiles/guns/ballistic.dm @@ -58,23 +58,23 @@ if (!magazine && istype(AM, mag_type)) if(user.transferItemToLoc(AM, src)) magazine = AM - user << "You load a new magazine into \the [src]." + to_chat(user, "You load a new magazine into \the [src].") chamber_round() A.update_icon() update_icon() return 1 else - user << "You cannot seem to get \the [src] out of your hands!" + to_chat(user, "You cannot seem to get \the [src] out of your hands!") return else if (magazine) - user << "There's already a magazine in \the [src]." + to_chat(user, "There's already a magazine in \the [src].") if(istype(A, /obj/item/weapon/suppressor)) var/obj/item/weapon/suppressor/S = A if(can_suppress) if(!suppressed) if(!user.transferItemToLoc(A, src)) return - user << "You screw [S] onto [src]." + to_chat(user, "You screw [S] onto [src].") suppressed = A S.oldsound = fire_sound S.initial_w_class = w_class @@ -83,10 +83,10 @@ update_icon() return else - user << "[src] already has a suppressor!" + to_chat(user, "[src] already has a suppressor!") return else - user << "You can't seem to figure out how to fit [S] on [src]!" + to_chat(user, "You can't seem to figure out how to fit [S] on [src]!") return return 0 @@ -97,7 +97,7 @@ if(!user.is_holding(src)) ..() return - user << "You unscrew [suppressed] from [src]." + to_chat(user, "You unscrew [suppressed] from [src].") user.put_in_hands(suppressed) fire_sound = S.oldsound w_class = S.initial_w_class @@ -113,21 +113,21 @@ user.put_in_hands(magazine) magazine.update_icon() magazine = null - user << "You pull the magazine out of \the [src]." + to_chat(user, "You pull the magazine out of \the [src].") else if(chambered) AC.loc = get_turf(src) AC.SpinAnimation(10, 1) chambered = null - user << "You unload the round from \the [src]'s chamber." + to_chat(user, "You unload the round from \the [src]'s chamber.") else - user << "There's no magazine in \the [src]." + to_chat(user, "There's no magazine in \the [src].") update_icon() return /obj/item/weapon/gun/ballistic/examine(mob/user) ..() - user << "Has [get_ammo()] round\s remaining." + to_chat(user, "Has [get_ammo()] round\s remaining.") /obj/item/weapon/gun/ballistic/proc/get_ammo(countchambered = 1) var/boolets = 0 //mature var names for mature people @@ -157,7 +157,7 @@ /obj/item/weapon/gun/ballistic/proc/sawoff(mob/user) if(sawn_state == SAWN_OFF) - user << "\The [src] is already shortened!" + to_chat(user, "\The [src] is already shortened!") return user.changeNext_move(CLICK_CD_MELEE) user.visible_message("[user] begins to shorten \the [src].", "You begin to shorten \the [src]...") diff --git a/code/modules/projectiles/guns/ballistic/automatic.dm b/code/modules/projectiles/guns/ballistic/automatic.dm index a4f412b994..7a03591629 100644 --- a/code/modules/projectiles/guns/ballistic/automatic.dm +++ b/code/modules/projectiles/guns/ballistic/automatic.dm @@ -38,18 +38,18 @@ if(user.transferItemToLoc(AM, src)) magazine = AM if(oldmag) - user << "You perform a tactical reload on \the [src], replacing the magazine." + to_chat(user, "You perform a tactical reload on \the [src], replacing the magazine.") oldmag.dropped() oldmag.forceMove(get_turf(src.loc)) oldmag.update_icon() else - user << "You insert the magazine into \the [src]." + to_chat(user, "You insert the magazine into \the [src].") chamber_round() A.update_icon() update_icon() return 1 else - user << "You cannot seem to get \the [src] out of your hands!" + to_chat(user, "You cannot seem to get \the [src] out of your hands!") /obj/item/weapon/gun/ballistic/automatic/ui_action_click() burst_select() @@ -60,11 +60,11 @@ if(!select) burst_size = 1 fire_delay = 0 - user << "You switch to semi-automatic." + to_chat(user, "You switch to semi-automatic.") else burst_size = initial(burst_size) fire_delay = initial(fire_delay) - user << "You switch to [burst_size]-rnd burst." + to_chat(user, "You switch to [burst_size]-rnd burst.") playsound(user, 'sound/weapons/empty.ogg', 100, 1) update_icon() @@ -195,15 +195,15 @@ select = 1 burst_size = initial(burst_size) fire_delay = initial(fire_delay) - user << "You switch to [burst_size]-rnd burst." + to_chat(user, "You switch to [burst_size]-rnd burst.") if(1) select = 2 - user << "You switch to grenades." + to_chat(user, "You switch to grenades.") if(2) select = 0 burst_size = 1 fire_delay = 0 - user << "You switch to semi-auto." + to_chat(user, "You switch to semi-auto.") playsound(user, 'sound/weapons/empty.ogg', 100, 1) update_icon() return @@ -299,7 +299,7 @@ /obj/item/weapon/gun/ballistic/automatic/l6_saw/attack_self(mob/user) cover_open = !cover_open - user << "You [cover_open ? "open" : "close"] [src]'s cover." + to_chat(user, "You [cover_open ? "open" : "close"] [src]'s cover.") update_icon() @@ -310,7 +310,7 @@ /obj/item/weapon/gun/ballistic/automatic/l6_saw/afterattack(atom/target as mob|obj|turf, mob/living/user as mob|obj, flag, params) //what I tried to do here is just add a check to see if the cover is open or not and add an icon_state change because I can't figure out how c-20rs do it with overlays if(cover_open) - user << "[src]'s cover is open! Close it before firing!" + to_chat(user, "[src]'s cover is open! Close it before firing!") else ..() update_icon() @@ -329,7 +329,7 @@ user.put_in_hands(magazine) magazine = null update_icon() - user << "You remove the magazine from [src]." + to_chat(user, "You remove the magazine from [src].") /obj/item/weapon/gun/ballistic/automatic/l6_saw/attackby(obj/item/A, mob/user, params) @@ -337,7 +337,7 @@ if(.) return if(!cover_open) - user << "[src]'s cover is closed! You can't insert a new mag." + to_chat(user, "[src]'s cover is closed! You can't insert a new mag.") return ..() diff --git a/code/modules/projectiles/guns/ballistic/bow.dm b/code/modules/projectiles/guns/ballistic/bow.dm index 27e83e01c8..bd00fdd7d9 100644 --- a/code/modules/projectiles/guns/ballistic/bow.dm +++ b/code/modules/projectiles/guns/ballistic/bow.dm @@ -9,12 +9,15 @@ var/item_state_firing = "bow" fire_sound = 'sound/weapons/grenadelaunch.ogg' mag_type = /obj/item/ammo_box/magazine/internal/bow - flags = HANDSLOW weapon_weight = WEAPON_HEAVY var/draw_sound = 'sound/weapons/draw_bow.ogg' var/ready_to_fire = 0 var/slowdown_when_ready = 2 +/obj/item/weapon/gun/ballistic/bow/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, SLOWS_WHILE_IN_HAND) + /obj/item/weapon/gun/ballistic/bow/update_icon() if(ready_to_fire) icon_state = icon_state_firing @@ -47,7 +50,7 @@ /obj/item/weapon/gun/ballistic/bow/attackby(obj/item/A, mob/user, params) var/num_loaded = magazine.attackby(A, user, params, 1) if(num_loaded) - user << "You ready \the [A] into \the [src]." + to_chat(user, "You ready \the [A] into \the [src].") update_icon() chamber_round() diff --git a/code/modules/projectiles/guns/ballistic/laser_gatling.dm b/code/modules/projectiles/guns/ballistic/laser_gatling.dm index 75263937d7..e8af057cfd 100644 --- a/code/modules/projectiles/guns/ballistic/laser_gatling.dm +++ b/code/modules/projectiles/guns/ballistic/laser_gatling.dm @@ -22,7 +22,7 @@ /obj/item/weapon/minigunpack/Destroy() STOP_PROCESSING(SSobj, src) - ..() + return ..() /obj/item/weapon/minigunpack/process() overheat = max(0, overheat - heat_diffusion) @@ -34,13 +34,13 @@ armed = 1 if(!user.put_in_hands(gun)) armed = 0 - user << "You need a free hand to hold the gun!" + to_chat(user, "You need a free hand to hold the gun!") return update_icon() gun.forceMove(user) user.update_inv_back() else - user << "You are already holding the gun!" + to_chat(user, "You are already holding the gun!") else ..() @@ -82,7 +82,7 @@ gun.forceMove(src) armed = 0 if(user) - user << "You attach the [gun.name] to the [name]." + to_chat(user, "You attach the [gun.name] to the [name].") else src.visible_message("The [gun.name] snaps back onto the [name]!") update_icon() @@ -96,7 +96,7 @@ icon_state = "minigun_spin" item_state = "minigun" origin_tech = "combat=6;powerstorage=5;magnets=4" - flags = CONDUCT | HANDSLOW + flags = CONDUCT slowdown = 1 slot_flags = null w_class = WEIGHT_CLASS_HUGE @@ -110,6 +110,17 @@ casing_ejector = 0 var/obj/item/weapon/minigunpack/ammo_pack +/obj/item/weapon/gun/ballistic/minigun/Initialize(mapload) + ..() + SET_SECONDARY_FLAG(src, SLOWS_WHILE_IN_HAND) + + if(!ammo_pack) + if(istype(loc,/obj/item/weapon/minigunpack)) //We should spawn inside a ammo pack so let's use that one. + ammo_pack = loc + ..() + else + qdel(src)//No pack, no gun + /obj/item/weapon/gun/ballistic/minigun/attack_self(mob/living/user) return @@ -125,21 +136,13 @@ ammo_pack.overheat += burst_size ..() else - user << "The gun's heat sensor locked the trigger to prevent lens damage." + to_chat(user, "The gun's heat sensor locked the trigger to prevent lens damage.") /obj/item/weapon/gun/ballistic/minigun/afterattack(atom/target, mob/living/user, flag, params) if(!ammo_pack || ammo_pack.loc != user) - user << "You need the backpack power source to fire the gun!" + to_chat(user, "You need the backpack power source to fire the gun!") ..() -/obj/item/weapon/gun/ballistic/minigun/New() - if(!ammo_pack) - if(istype(loc,/obj/item/weapon/minigunpack)) //We should spawn inside a ammo pack so let's use that one. - ammo_pack = loc - ..() - else - qdel(src)//No pack, no gun - /obj/item/weapon/gun/ballistic/minigun/dropped(mob/living/user) ammo_pack.attach_gun(user) diff --git a/code/modules/projectiles/guns/ballistic/launchers.dm b/code/modules/projectiles/guns/ballistic/launchers.dm index 2d4ccfd586..eb810abe89 100644 --- a/code/modules/projectiles/guns/ballistic/launchers.dm +++ b/code/modules/projectiles/guns/ballistic/launchers.dm @@ -72,7 +72,7 @@ /obj/item/weapon/gun/ballistic/automatic/speargun/attackby(obj/item/A, mob/user, params) var/num_loaded = magazine.attackby(A, user, params, 1) if(num_loaded) - user << "You load [num_loaded] spear\s into \the [src]." + to_chat(user, "You load [num_loaded] spear\s into \the [src].") update_icon() chamber_round() diff --git a/code/modules/projectiles/guns/ballistic/pistol.dm b/code/modules/projectiles/guns/ballistic/pistol.dm index 19f8fbffb2..c5e7b9f1c9 100644 --- a/code/modules/projectiles/guns/ballistic/pistol.dm +++ b/code/modules/projectiles/guns/ballistic/pistol.dm @@ -33,7 +33,12 @@ /obj/item/weapon/gun/ballistic/automatic/pistol/deagle/update_icon() ..() - icon_state = "[initial(icon_state)][magazine ? "" : "-e"]" + if(magazine) + cut_overlays() + add_overlay("deagle_magazine") + else + cut_overlays() + icon_state = "[initial(icon_state)][chambered ? "" : "-e"]" /obj/item/weapon/gun/ballistic/automatic/pistol/deagle/gold desc = "A gold plated desert eagle folded over a million times by superior martian gunsmiths. Uses .50 AE ammo." @@ -64,12 +69,12 @@ origin_tech = "combat=3;materials=2;abductor=3" /obj/item/weapon/gun/ballistic/automatic/pistol/stickman/pickup(mob/living/user) - user << "As you try to pick up [src], it slips out of your grip.." + to_chat(user, "As you try to pick up [src], it slips out of your grip..") if(prob(50)) - user << "..and vanishes from your vision! Where the hell did it go?" + to_chat(user, "..and vanishes from your vision! Where the hell did it go?") qdel(src) user.update_icons() else - user << "..and falls into view. Whew, that was a close one." + to_chat(user, "..and falls into view. Whew, that was a close one.") user.dropItemToGround(src) diff --git a/code/modules/projectiles/guns/ballistic/revolver.dm b/code/modules/projectiles/guns/ballistic/revolver.dm index 4e42efa6af..6ce52748ec 100644 --- a/code/modules/projectiles/guns/ballistic/revolver.dm +++ b/code/modules/projectiles/guns/ballistic/revolver.dm @@ -27,7 +27,7 @@ return var/num_loaded = magazine.attackby(A, user, params, 1) if(num_loaded) - user << "You load [num_loaded] shell\s into \the [src]." + to_chat(user, "You load [num_loaded] shell\s into \the [src].") A.update_icon() update_icon() chamber_round(0) @@ -44,9 +44,9 @@ CB.update_icon() num_unloaded++ if (num_unloaded) - user << "You unload [num_unloaded] shell\s from [src]." + to_chat(user, "You unload [num_unloaded] shell\s from [src].") else - user << "[src] is empty!" + to_chat(user, "[src] is empty!") /obj/item/weapon/gun/ballistic/revolver/verb/spin() set name = "Spin Chamber" @@ -83,7 +83,7 @@ /obj/item/weapon/gun/ballistic/revolver/examine(mob/user) ..() - user << "[get_ammo(0,0)] of those are live rounds." + to_chat(user, "[get_ammo(0,0)] of those are live rounds.") /obj/item/weapon/gun/ballistic/revolver/detective name = "\improper .38 Mars Special" @@ -100,14 +100,13 @@ options["Black Panther"] = "detective_panther" options["Gold Trim"] = "detective_gold" options["The Peacemaker"] = "detective_peacemaker" - options["The Spacemaker"] = "detective_future" options["Cancel"] = null /obj/item/weapon/gun/ballistic/revolver/detective/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override = "") if(magazine.caliber != initial(magazine.caliber)) if(prob(70 - (magazine.ammo_count() * 10))) //minimum probability of 10, maximum of 60 playsound(user, fire_sound, 50, 1) - user << "[src] blows up in your face!" + to_chat(user, "[src] blows up in your face!") user.take_bodypart_damage(0,20) user.dropItemToGround(src) return 0 @@ -117,31 +116,31 @@ ..() if(istype(A, /obj/item/weapon/screwdriver)) if(magazine.caliber == "38") - user << "You begin to reinforce the barrel of [src]..." + to_chat(user, "You begin to reinforce the barrel of [src]...") if(magazine.ammo_count()) afterattack(user, user) //you know the drill user.visible_message("[src] goes off!", "[src] goes off in your face!") return if(do_after(user, 30*A.toolspeed, target = src)) if(magazine.ammo_count()) - user << "You can't modify it!" + to_chat(user, "You can't modify it!") return magazine.caliber = "357" desc = "The barrel and chamber assembly seems to have been modified." - user << "You reinforce the barrel of [src]. Now it will fire .357 rounds." + to_chat(user, "You reinforce the barrel of [src]. Now it will fire .357 rounds.") else - user << "You begin to revert the modifications to [src]..." + to_chat(user, "You begin to revert the modifications to [src]...") if(magazine.ammo_count()) afterattack(user, user) //and again user.visible_message("[src] goes off!", "[src] goes off in your face!") return if(do_after(user, 30*A.toolspeed, target = src)) if(magazine.ammo_count()) - user << "You can't modify it!" + to_chat(user, "You can't modify it!") return magazine.caliber = "38" desc = initial(desc) - user << "You remove the modifications on [src]. Now it will fire .38 rounds." + to_chat(user, "You remove the modifications on [src]. Now it will fire .38 rounds.") /obj/item/weapon/gun/ballistic/revolver/mateba @@ -209,13 +208,13 @@ return if(target != user) if(ismob(target)) - user << "A mechanism prevents you from shooting anyone but yourself!" + to_chat(user, "A mechanism prevents you from shooting anyone but yourself!") return if(ishuman(user)) var/mob/living/carbon/human/H = user if(!spun) - user << "You need to spin the revolver's chamber first!" + to_chat(user, "You need to spin the revolver's chamber first!") return spun = FALSE @@ -301,9 +300,9 @@ CB.update_icon() num_unloaded++ if (num_unloaded) - user << "You break open \the [src] and unload [num_unloaded] shell\s." + to_chat(user, "You break open \the [src] and unload [num_unloaded] shell\s.") else - user << "[src] is empty!" + to_chat(user, "[src] is empty!") // IMPROVISED SHOTGUN // @@ -327,11 +326,11 @@ var/obj/item/stack/cable_coil/C = A if(C.use(10)) slot_flags = SLOT_BACK - user << "You tie the lengths of cable to the shotgun, making a sling." + to_chat(user, "You tie the lengths of cable to the shotgun, making a sling.") slung = 1 update_icon() else - user << "You need at least ten lengths of cable if you want to make a sling!" + to_chat(user, "You need at least ten lengths of cable if you want to make a sling!") /obj/item/weapon/gun/ballistic/revolver/doublebarrel/improvised/update_icon() ..() diff --git a/code/modules/projectiles/guns/ballistic/shotgun.dm b/code/modules/projectiles/guns/ballistic/shotgun.dm index e2ba1aaa6d..2efc327a77 100644 --- a/code/modules/projectiles/guns/ballistic/shotgun.dm +++ b/code/modules/projectiles/guns/ballistic/shotgun.dm @@ -19,7 +19,7 @@ return var/num_loaded = magazine.attackby(A, user, params, 1) if(num_loaded) - user << "You load [num_loaded] shell\s into \the [src]!" + to_chat(user, "You load [num_loaded] shell\s into \the [src]!") A.update_icon() update_icon() @@ -72,7 +72,7 @@ /obj/item/weapon/gun/ballistic/shotgun/examine(mob/user) ..() if (chambered) - user << "A [chambered.BB ? "live" : "spent"] one is in the chamber." + to_chat(user, "A [chambered.BB ? "live" : "spent"] one is in the chamber.") /obj/item/weapon/gun/ballistic/shotgun/lethal mag_type = /obj/item/ammo_box/magazine/internal/shot/lethal @@ -120,13 +120,13 @@ /obj/item/weapon/gun/ballistic/shotgun/boltaction/attackby(obj/item/A, mob/user, params) if(!bolt_open) - user << "The bolt is closed!" + to_chat(user, "The bolt is closed!") return . = ..() /obj/item/weapon/gun/ballistic/shotgun/boltaction/examine(mob/user) ..() - user << "The bolt is [bolt_open ? "open" : "closed"]." + to_chat(user, "The bolt is [bolt_open ? "open" : "closed"].") /obj/item/weapon/gun/ballistic/shotgun/boltaction/enchanted @@ -224,9 +224,9 @@ alternate_magazine = current_mag toggled = !toggled if(toggled) - user << "You switch to tube B." + to_chat(user, "You switch to tube B.") else - user << "You switch to tube A." + to_chat(user, "You switch to tube A.") /obj/item/weapon/gun/ballistic/shotgun/automatic/dual_tube/AltClick(mob/living/user) if(user.incapacitated() || !Adjacent(user) || !istype(user)) diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index 0b72e6dcd3..c46a512c57 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -109,7 +109,7 @@ fire_sound = shot.fire_sound fire_delay = shot.delay if (shot.select_name) - user << "[src] is now set to [shot.select_name]." + to_chat(user, "[src] is now set to [shot.select_name].") chambered = null recharge_newshot(1) update_icon() diff --git a/code/modules/projectiles/guns/energy/energy_gun.dm b/code/modules/projectiles/guns/energy/energy_gun.dm index 7bc85ce766..cc1166814b 100644 --- a/code/modules/projectiles/guns/energy/energy_gun.dm +++ b/code/modules/projectiles/guns/energy/energy_gun.dm @@ -106,12 +106,12 @@ if(0 to 200) fail_tick += (2*(fail_chance)) M.rad_act(40) - M << "Your [name] feels warmer." + to_chat(M, "Your [name] feels warmer.") if(201 to INFINITY) SSobj.processing.Remove(src) M.rad_act(80) crit_fail = 1 - M << "Your [name]'s reactor overloads!" + to_chat(M, "Your [name]'s reactor overloads!") /obj/item/weapon/gun/energy/e_gun/nuclear/emp_act(severity) ..() diff --git a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm index 83256a27d6..07450fc9b5 100644 --- a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm +++ b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm @@ -25,20 +25,20 @@ /obj/item/weapon/gun/energy/kinetic_accelerator/examine(mob/user) ..() if(max_mod_capacity) - user << "[get_remaining_mod_capacity()]% mod capacity remaining." + to_chat(user, "[get_remaining_mod_capacity()]% mod capacity remaining.") for(var/A in get_modkits()) var/obj/item/borg/upgrade/modkit/M = A - user << "There is a [M.name] mod installed, using [M.cost]% capacity." + to_chat(user, "There is a [M.name] mod installed, using [M.cost]% capacity.") /obj/item/weapon/gun/energy/kinetic_accelerator/attackby(obj/item/A, mob/user) if(istype(A, /obj/item/weapon/crowbar)) if(modkits.len) - user << "You pry the modifications out." + to_chat(user, "You pry the modifications out.") playsound(loc, A.usesound, 100, 1) for(var/obj/item/borg/upgrade/modkit/M in modkits) M.uninstall(src) else - user << "There are no modifications currently installed." + to_chat(user, "There are no modifications currently installed.") else if(istype(A, /obj/item/borg/upgrade/modkit)) var/obj/item/borg/upgrade/modkit/MK = A MK.install(src, user) @@ -123,7 +123,7 @@ if(!suppressed) playsound(src.loc, 'sound/weapons/kenetic_reload.ogg', 60, 1) else - loc << "[src] silently charges up." + to_chat(loc, "[src] silently charges up.") update_icon() overheat = FALSE @@ -205,7 +205,7 @@ for(var/mob/living/L in range(1, target_turf) - firer - target) var/armor = L.run_armor_check(def_zone, flag, "", "", armour_penetration) L.apply_damage(damage*mob_aoe, damage_type, def_zone, armor) - L << "You're struck by a [name]!" + to_chat(L, "You're struck by a [name]!") //Modkits @@ -224,7 +224,7 @@ /obj/item/borg/upgrade/modkit/examine(mob/user) ..() - user << "Occupies [cost]% of mod capacity." + to_chat(user, "Occupies [cost]% of mod capacity.") /obj/item/borg/upgrade/modkit/attackby(obj/item/A, mob/user) if(istype(A, /obj/item/weapon/gun/energy/kinetic_accelerator) && !issilicon(user)) @@ -254,13 +254,13 @@ if(.) if(!user.transferItemToLoc(src, KA)) return - user << "You install the modkit." + to_chat(user, "You install the modkit.") playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1) KA.modkits += src else - user << "The modkit you're trying to install would conflict with an already installed modkit. Use a crowbar to remove existing modkits." + to_chat(user, "The modkit you're trying to install would conflict with an already installed modkit. Use a crowbar to remove existing modkits.") else - user << "You don't have room([KA.get_remaining_mod_capacity()]% remaining, [cost]% needed) to install this modkit. Use a crowbar to remove existing modkits." + to_chat(user, "You don't have room([KA.get_remaining_mod_capacity()]% remaining, [cost]% needed) to install this modkit. Use a crowbar to remove existing modkits.") . = FALSE @@ -277,7 +277,7 @@ name = "range increase" desc = "Increases the range of a kinetic accelerator when installed." modifier = 1 - cost = 24 //so you can fit four plus a tracer cosmetic + cost = 25 /obj/item/borg/upgrade/modkit/range/modify_projectile(obj/item/projectile/kinetic/K) K.range += modifier diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index aaed35c85f..6e7ab124ec 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -134,25 +134,3 @@ pin = /obj/item/device/firing_pin/tag/red ammo_x_offset = 2 selfcharge = 1 - - - -/obj/item/weapon/gun/energy/laser/rifle - name = "laser rifle" - desc = "A laser rifle issued to high ranking members of a certain shadow corporation." - icon_state = "xcomlasergun" - item_state = null - icon = 'icons/obj/guns/VGguns.dmi' - ammo_type = list(/obj/item/ammo_casing/energy/lasergun) - ammo_x_offset = 4 - -/obj/item/weapon/gun/energy/laser/LaserAK - name = "Laser AK470" - desc = "A laser AK. Death solves all problems -- No man, no problem." - icon_state = "LaserAK" - item_state = null - icon = 'icons/obj/guns/VGguns.dmi' - ammo_type = list(/obj/item/ammo_casing/energy/laser) - ammo_x_offset = 4 - - diff --git a/code/modules/projectiles/guns/energy/plasma.dm b/code/modules/projectiles/guns/energy/plasma.dm index bd7e0a65a8..a63a2cc585 100644 --- a/code/modules/projectiles/guns/energy/plasma.dm +++ b/code/modules/projectiles/guns/energy/plasma.dm @@ -38,3 +38,23 @@ icon = 'icons/obj/guns/VGguns.dmi' ammo_type = list(/obj/item/ammo_casing/energy/plasmagun/MP40k) ammo_x_offset = 3 + +//Laser rifles, technically lazer, but w/e + +/obj/item/weapon/gun/energy/laser/rifle + name = "laser rifle" + desc = "A laser rifle issued to high ranking members of a certain shadow corporation." + icon_state = "xcomlasergun" + item_state = null + icon = 'icons/obj/guns/VGguns.dmi' + ammo_type = list(/obj/item/ammo_casing/energy/lasergun) + ammo_x_offset = 4 + +/obj/item/weapon/gun/energy/laser/LaserAK + name = "Laser AK470" + desc = "A laser AK. Death solves all problems -- No man, no problem." + icon_state = "LaserAK" + item_state = null + icon = 'icons/obj/guns/VGguns.dmi' + ammo_type = list(/obj/item/ammo_casing/energy/laser) + ammo_x_offset = 4 diff --git a/code/modules/projectiles/guns/energy/pulse.dm b/code/modules/projectiles/guns/energy/pulse.dm index d7fef273a0..3163632a05 100644 --- a/code/modules/projectiles/guns/energy/pulse.dm +++ b/code/modules/projectiles/guns/energy/pulse.dm @@ -71,7 +71,7 @@ ammo_type = list(/obj/item/ammo_casing/energy/laser/pulse) /obj/item/weapon/gun/energy/pulse/destroyer/attack_self(mob/living/user) - user << "[src.name] has three settings, and they are all DESTROY." + to_chat(user, "[src.name] has three settings, and they are all DESTROY.") /obj/item/weapon/gun/energy/pulse/pistol/m1911 name = "\improper M1911-P" diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index d8865a4720..cb385db4b8 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -56,7 +56,7 @@ /obj/item/weapon/gun/energy/meteorgun name = "meteor gun" desc = "For the love of god, make sure you're aiming this the right way!" - icon_state = "riotgun" + icon_state = "meteor_gun" item_state = "c20r" w_class = WEIGHT_CLASS_BULKY ammo_type = list(/obj/item/ammo_casing/energy/meteor) @@ -146,12 +146,12 @@ S.use(1) power_supply.give(1000) recharge_newshot(1) - user << "You insert [A] in [src], recharging it." + to_chat(user, "You insert [A] in [src], recharging it.") else if(istype(A, /obj/item/weapon/ore/plasma)) qdel(A) power_supply.give(500) recharge_newshot(1) - user << "You insert [A] in [src], recharging it." + to_chat(user, "You insert [A] in [src], recharging it.") else ..() diff --git a/code/modules/projectiles/guns/grenade_launcher.dm b/code/modules/projectiles/guns/grenade_launcher.dm index 7f44205eca..8d16b8144f 100644 --- a/code/modules/projectiles/guns/grenade_launcher.dm +++ b/code/modules/projectiles/guns/grenade_launcher.dm @@ -14,7 +14,7 @@ /obj/item/weapon/gun/grenadelauncher/examine(mob/user) ..() - user << "[grenades.len] / [max_grenades] grenades loaded." + to_chat(user, "[grenades.len] / [max_grenades] grenades loaded.") /obj/item/weapon/gun/grenadelauncher/attackby(obj/item/I, mob/user, params) @@ -23,10 +23,10 @@ if(!user.transferItemToLoc(I, src)) return grenades += I - user << "You put the grenade in the grenade launcher." - user << "[grenades.len] / [max_grenades] Grenades." + to_chat(user, "You put the grenade in the grenade launcher.") + to_chat(user, "[grenades.len] / [max_grenades] Grenades.") else - usr << "The grenade launcher cannot hold more grenades." + to_chat(usr, "The grenade launcher cannot hold more grenades.") /obj/item/weapon/gun/grenadelauncher/afterattack(obj/target, mob/user , flag) if(target == user) @@ -35,7 +35,7 @@ if(grenades.len) fire_grenade(target,user) else - user << "The grenade launcher is empty." + to_chat(user, "The grenade launcher is empty.") /obj/item/weapon/gun/grenadelauncher/proc/fire_grenade(atom/target, mob/user) user.visible_message("[user] fired a grenade!", \ diff --git a/code/modules/projectiles/guns/magic.dm b/code/modules/projectiles/guns/magic.dm index 2a3b27bf05..58a756a28d 100644 --- a/code/modules/projectiles/guns/magic.dm +++ b/code/modules/projectiles/guns/magic.dm @@ -26,7 +26,7 @@ if(no_den_usage) var/area/A = get_area(user) if(istype(A, /area/wizard_station)) - user << "You know better than to violate the security of The Den, best wait until you leave to use [src]." + 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 @@ -72,7 +72,7 @@ return /obj/item/weapon/gun/magic/shoot_with_empty_chamber(mob/living/user as mob|obj) - user << "The [name] whizzles quietly." + to_chat(user, "The [name] whizzles quietly.") /obj/item/weapon/gun/magic/suicide_act(mob/user) user.visible_message("[user] is twisting [src] above [user.p_their()] head, releasing a magical blast! It looks like [user.p_theyre()] trying to commit suicide!") diff --git a/code/modules/projectiles/guns/magic/wand.dm b/code/modules/projectiles/guns/magic/wand.dm index 3081063495..fe93a58838 100644 --- a/code/modules/projectiles/guns/magic/wand.dm +++ b/code/modules/projectiles/guns/magic/wand.dm @@ -19,7 +19,7 @@ /obj/item/weapon/gun/magic/wand/examine(mob/user) ..() - user << "Has [charges] charge\s remaining." + to_chat(user, "Has [charges] charge\s remaining.") /obj/item/weapon/gun/magic/wand/update_icon() icon_state = "[initial(icon_state)][charges ? "" : "-drained"]" @@ -37,7 +37,7 @@ if(no_den_usage) var/area/A = get_area(user) if(istype(A, /area/wizard_station)) - user << "You know better than to violate the security of The Den, best wait until you leave to use [src]." + 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 @@ -50,7 +50,7 @@ /obj/item/weapon/gun/magic/wand/proc/zap_self(mob/living/user) user.visible_message("[user] zaps [user.p_them()]self with [src].") playsound(user, fire_sound, 50, 1) - user.attack_log += "\[[time_stamp()]\] [user]/[user.ckey] zapped [user.p_them()]self with a [src]" + user.log_message("zapped [user.p_them()]self with a [src]", INDIVIDUAL_ATTACK_LOG) ///////////////////////////////////// @@ -67,9 +67,9 @@ /obj/item/weapon/gun/magic/wand/death/zap_self(mob/living/user) ..() - user << "You irradiate yourself with pure energy! \ + to_chat(user, "You irradiate yourself with pure energy! \ [pick("Do not pass go. Do not collect 200 zorkmids.","You feel more confident in your spell casting skills.","You Die...","Do you want your possessions identified?")]\ - " + ") user.adjustOxyLoss(500) charges-- @@ -92,7 +92,7 @@ var/mob/living/carbon/C = user C.regenerate_limbs() C.regenerate_organs() - user << "You feel great!" + to_chat(user, "You feel great!") charges-- ..() @@ -148,7 +148,7 @@ no_den_usage = 1 /obj/item/weapon/gun/magic/wand/door/zap_self(mob/living/user) - user << "You feel vaguely more open with your feelings." + to_chat(user, "You feel vaguely more open with your feelings.") charges-- ..() diff --git a/code/modules/projectiles/guns/medbeam.dm b/code/modules/projectiles/guns/medbeam.dm index d228135077..da4346109a 100644 --- a/code/modules/projectiles/guns/medbeam.dm +++ b/code/modules/projectiles/guns/medbeam.dm @@ -76,7 +76,7 @@ if(get_dist(source, current_target)>max_range || !los_check(source, current_target)) LoseTarget() if(isliving(source)) - source << "You lose control of the beam!" + to_chat(source, "You lose control of the beam!") return if(current_target) diff --git a/code/modules/projectiles/guns/syringe_gun.dm b/code/modules/projectiles/guns/syringe_gun.dm index 8da5ef5aec..6da113b6e3 100644 --- a/code/modules/projectiles/guns/syringe_gun.dm +++ b/code/modules/projectiles/guns/syringe_gun.dm @@ -32,11 +32,11 @@ /obj/item/weapon/gun/syringe/examine(mob/user) ..() - user << "Can hold [max_syringes] syringe\s. Has [syringes.len] syringe\s remaining." + to_chat(user, "Can hold [max_syringes] syringe\s. Has [syringes.len] syringe\s remaining.") /obj/item/weapon/gun/syringe/attack_self(mob/living/user) if(!syringes.len) - user << "[src] is empty!" + to_chat(user, "[src] is empty!") return 0 var/obj/item/weapon/reagent_containers/syringe/S = syringes[syringes.len] @@ -45,7 +45,7 @@ S.loc = user.loc syringes.Remove(S) - user << "You unload [S] from \the [src]." + to_chat(user, "You unload [S] from \the [src].") return 1 @@ -54,12 +54,12 @@ if(syringes.len < max_syringes) if(!user.transferItemToLoc(A, src)) return - user << "You load [A] into \the [src]." + to_chat(user, "You load [A] into \the [src].") syringes.Add(A) recharge_newshot() return 1 else - usr << "[src] cannot hold more syringes!" + to_chat(usr, "[src] cannot hold more syringes!") return 0 /obj/item/weapon/gun/syringe/rapidsyringe diff --git a/code/modules/projectiles/pins.dm b/code/modules/projectiles/pins.dm index c460400839..907082cc8b 100644 --- a/code/modules/projectiles/pins.dm +++ b/code/modules/projectiles/pins.dm @@ -28,20 +28,20 @@ if(G.pin && (force_replace || G.pin.pin_removeable)) G.pin.loc = get_turf(G) G.pin.gun_remove(user) - user << "You remove [G]'s old pin." + to_chat(user, "You remove [G]'s old pin.") if(!G.pin) if(!user.temporarilyRemoveItemFromInventory(src)) return gun_insert(user, G) - user << "You insert [src] into [G]." + to_chat(user, "You insert [src] into [G].") else - user << "This firearm already has a firing pin installed." + to_chat(user, "This firearm already has a firing pin installed.") /obj/item/device/firing_pin/emag_act(mob/user) if(!emagged) emagged = 1 - user << "You override the authentication mechanism." + to_chat(user, "You override the authentication mechanism.") /obj/item/device/firing_pin/proc/gun_insert(mob/living/user, obj/item/weapon/gun/G) gun = G @@ -61,7 +61,7 @@ user.show_message(fail_message, 1) if(selfdestruct) user.show_message("SELF-DESTRUCTING...
    ", 1) - user << "[gun] explodes!" + to_chat(user, "[gun] explodes!") explosion(get_turf(gun), -1, 0, 2, 3) if(gun) qdel(gun) @@ -165,7 +165,7 @@ var/mob/living/carbon/M = target if(M.dna && M.dna.unique_enzymes) unique_enzymes = M.dna.unique_enzymes - user << "DNA-LOCK SET." + to_chat(user, "DNA-LOCK SET.") /obj/item/device/firing_pin/dna/pin_auth(mob/living/carbon/user) if(istype(user) && user.dna && user.dna.unique_enzymes) @@ -178,7 +178,7 @@ if(!unique_enzymes) if(istype(user) && user.dna && user.dna.unique_enzymes) unique_enzymes = user.dna.unique_enzymes - user << "DNA-LOCK SET." + to_chat(user, "DNA-LOCK SET.") else ..() @@ -200,7 +200,7 @@ var/mob/living/carbon/human/M = user if(istype(M.wear_suit, suit_requirement)) return 1 - user << "You need to be wearing [tagcolor] laser tag armor!" + to_chat(user, "You need to be wearing [tagcolor] laser tag armor!") return 0 /obj/item/device/firing_pin/tag/red diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index eb2afc7b94..127b05e87d 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -104,7 +104,7 @@ organ_hit_text = " in \the [parse_zone(limb_hit)]" if(suppressed) playsound(loc, hitsound, 5, 1, -1) - L << "You're shot by \a [src][organ_hit_text]!" + to_chat(L, "You're shot by \a [src][organ_hit_text]!") else if(hitsound) var/volume = vol_by_damage() @@ -279,7 +279,7 @@ //Split Y+Pixel_Y up into list(Y, Pixel_Y) var/list/screen_loc_Y = splittext(screen_loc_params[2],":") - // world << "X: [screen_loc_X[1]] PixelX: [screen_loc_X[2]] / Y: [screen_loc_Y[1]] PixelY: [screen_loc_Y[2]]" + // to_chat(world, "X: [screen_loc_X[1]] PixelX: [screen_loc_X[2]] / Y: [screen_loc_Y[1]] PixelY: [screen_loc_Y[2]]") var/x = text2num(screen_loc_X[1]) * 32 + text2num(screen_loc_X[2]) - 32 var/y = text2num(screen_loc_Y[1]) * 32 + text2num(screen_loc_Y[2]) - 32 @@ -288,9 +288,9 @@ var/ox = round(screenview/2) //"origin" x var/oy = round(screenview/2) //"origin" y - // world << "Pixel position: [x] [y]" + // to_chat(world, "Pixel position: [x] [y]") var/angle = Atan2(y - oy, x - ox) - // world << "Angle: [angle]" + // to_chat(world, "Angle: [angle]") src.Angle = angle if(spread) src.Angle += spread diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index 87e3050451..6dbd01d372 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -3,13 +3,14 @@ icon_state = "laser" pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE damage = 20 - luminosity = 1 + light_range = 2 damage_type = BURN hitsound = 'sound/weapons/sear.ogg' hitsound_wall = 'sound/weapons/effects/searwall.ogg' flag = "laser" eyeblur = 2 impact_effect_type = /obj/effect/overlay/temp/impact_effect/red_laser + light_color = LIGHT_COLOR_RED /obj/item/projectile/beam/laser @@ -48,6 +49,7 @@ range = 15 forcedodge = 1 impact_effect_type = /obj/effect/overlay/temp/impact_effect/green_laser + light_color = LIGHT_COLOR_GREEN /obj/item/projectile/beam/disabler name = "disabler beam" @@ -58,13 +60,14 @@ hitsound = 'sound/weapons/tap.ogg' eyeblur = 0 impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser + light_color = LIGHT_COLOR_BLUE /obj/item/projectile/beam/pulse name = "pulse" icon_state = "u_laser" damage = 50 - luminosity = 2 impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser + light_color = LIGHT_COLOR_BLUE /obj/item/projectile/beam/pulse/on_hit(atom/target, blocked = 0) . = ..() @@ -90,9 +93,9 @@ icon_state = "emitter" damage = 30 legacy = 1 - luminosity = 2 animate_movement = SLIDE_STEPS impact_effect_type = /obj/effect/overlay/temp/impact_effect/green_laser + light_color = LIGHT_COLOR_GREEN /obj/item/projectile/beam/emitter/singularity_pull() return //don't want the emitters to miss @@ -106,6 +109,7 @@ flag = "laser" var/suit_types = list(/obj/item/clothing/suit/redtag, /obj/item/clothing/suit/bluetag) impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser + light_color = LIGHT_COLOR_BLUE /obj/item/projectile/beam/lasertag/on_hit(atom/target, blocked = 0) . = ..() @@ -119,6 +123,7 @@ icon_state = "laser" suit_types = list(/obj/item/clothing/suit/bluetag) impact_effect_type = /obj/effect/overlay/temp/impact_effect/red_laser + light_color = LIGHT_COLOR_RED /obj/item/projectile/beam/lasertag/bluetag icon_state = "bluelaser" @@ -130,18 +135,21 @@ damage = 200 damage_type = BURN impact_effect_type = /obj/effect/overlay/temp/impact_effect/purple_laser + light_color = LIGHT_COLOR_PURPLE /obj/item/projectile/beam/instakill/blue icon_state = "blue_laser" impact_effect_type = /obj/effect/overlay/temp/impact_effect/blue_laser + light_color = LIGHT_COLOR_BLUE /obj/item/projectile/beam/instakill/red icon_state = "red_laser" impact_effect_type = /obj/effect/overlay/temp/impact_effect/red_laser + light_color = LIGHT_COLOR_RED /obj/item/projectile/beam/instakill/on_hit(atom/target) . = ..() if(iscarbon(target)) var/mob/living/carbon/M = target M.visible_message("[M] explodes into a shower of gibs!") - M.gib() \ No newline at end of file + M.gib() diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index 3360eef40a..9ac83c5f5f 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -35,6 +35,12 @@ name = "pellet" damage = 12.5 +/obj/item/projectile/bullet/pellet/Range() + ..() + damage += -0.75 + if(damage < 0) + qdel(src) + /obj/item/projectile/bullet/pellet/weak damage = 6 diff --git a/code/modules/projectiles/projectile/energy.dm b/code/modules/projectiles/projectile/energy.dm index da573136af..196432c5e6 100644 --- a/code/modules/projectiles/projectile/energy.dm +++ b/code/modules/projectiles/projectile/energy.dm @@ -71,7 +71,7 @@ /obj/effect/nettingportal/New() ..() - SetLuminosity(3) + set_light(3) var/obj/item/device/radio/beacon/teletarget = null for(var/obj/machinery/computer/teleporter/com in machines) if(com.target) @@ -155,7 +155,7 @@ /obj/item/projectile/energy/bolt //ebow bolts name = "bolt" icon_state = "cbbolt" - damage = 15 + damage = 8 damage_type = TOX nodamage = 0 weaken = 5 diff --git a/code/modules/projectiles/projectile/magic.dm b/code/modules/projectiles/projectile/magic.dm index a86a9abf0a..944d471500 100644 --- a/code/modules/projectiles/projectile/magic.dm +++ b/code/modules/projectiles/projectile/magic.dm @@ -35,10 +35,9 @@ C.regenerate_organs() if(target.revive(full_heal = 1)) target.grab_ghost(force = TRUE) // even suicides - target << "You rise with a start, \ - you're alive!!!" + to_chat(target, "You rise with a start, you're alive!!!") else if(target.stat != DEAD) - target << "You feel great!" + to_chat(target, "You feel great!") /obj/item/projectile/magic/teleport name = "bolt of teleportation" @@ -265,20 +264,19 @@ new_mob.languages_spoken |= HUMAN new_mob.languages_understood |= HUMAN - new_mob.attack_log = M.attack_log + new_mob.logging = M.logging // Some forms can still wear some items for(var/obj/item/W in contents) new_mob.equip_to_appropriate_slot(W) - M.attack_log += text("\[[time_stamp()]\] [M.real_name] ([M.ckey]) became [new_mob.real_name].") + M.log_message("became [new_mob.real_name].", INDIVIDUAL_ATTACK_LOG) new_mob.a_intent = INTENT_HARM M.wabbajack_act(new_mob) - new_mob << "Your form morphs into that of \ - a [randomize]." + to_chat(new_mob, "Your form morphs into that of a [randomize].") qdel(M) return new_mob @@ -312,7 +310,7 @@ if(L.mind) L.mind.transfer_to(S) if(owner) - S << "You are an animate statue. You cannot move when monitored, but are nearly invincible and deadly when unobserved! Do not harm [owner], your creator." + to_chat(S, "You are an animate statue. You cannot move when monitored, but are nearly invincible and deadly when unobserved! Do not harm [owner], your creator.") P.loc = S return else diff --git a/code/modules/projectiles/projectile/plasma.dm b/code/modules/projectiles/projectile/plasma.dm index 798f870056..50d96cc7b9 100644 --- a/code/modules/projectiles/projectile/plasma.dm +++ b/code/modules/projectiles/projectile/plasma.dm @@ -8,6 +8,8 @@ obj/item/projectile/energy/plasmabolt hitsound = 'sound/weapons/sear.ogg' hitsound_wall = 'sound/weapons/effects/searwall.ogg' impact_effect_type = /obj/effect/overlay/temp/impact_effect/green_laser + light_range = 3 + light_color = LIGHT_COLOR_GREEN /obj/item/projectile/energy/plasmabolt/light damage = 35 diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index e351af8743..bb6f9f7b90 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -273,7 +273,7 @@ var/const/INJECT = 5 //injection if(30 to 40) need_mob_update += R.addiction_act_stage4(C) if(40 to INFINITY) - C << "You feel like you've gotten over your need for [R.name]." + to_chat(C, "You feel like you've gotten over your need for [R.name].") cached_addictions.Remove(R) addiction_tick++ if(C && need_mob_update) //some of the metabolized reagents had effects on the mob that requires some updates. @@ -400,14 +400,14 @@ var/const/INJECT = 5 //injection if(C.mix_sound) playsound(get_turf(cached_my_atom), C.mix_sound, 80, 1) for(var/mob/M in seen) - M << "\icon[my_atom] [C.mix_message]" + to_chat(M, "\icon[my_atom] [C.mix_message]") if(istype(cached_my_atom, /obj/item/slime_extract)) var/obj/item/slime_extract/ME2 = my_atom ME2.Uses-- if(ME2.Uses <= 0) // give the notification that the slime core is dead for(var/mob/M in seen) - M << "\icon[my_atom] \The [my_atom]'s power is consumed in the reaction." + to_chat(M, "\icon[my_atom] \The [my_atom]'s power is consumed in the reaction.") ME2.name = "used slime extract" ME2.desc = "This extract has been used up." @@ -513,6 +513,11 @@ var/const/INJECT = 5 //injection if("OBJ") R.reaction_obj(A, R.volume * volume_modifier, show_message) +/datum/reagents/proc/holder_full() + if(total_volume >= maximum_volume) + return TRUE + return FALSE + /datum/reagents/proc/add_reagent(reagent, amount, list/data=null, reagtemp = 300, no_react = 0) if(!isnum(amount) || !amount) return FALSE @@ -657,7 +662,7 @@ var/const/INJECT = 5 //injection for(var/reagent in cached_reagents) var/datum/reagent/R = reagent if(R.id == reagent_id) - //world << "proffering a data-carrying reagent ([reagent_id])" + //to_chat(world, "proffering a data-carrying reagent ([reagent_id])") return R.data /datum/reagents/proc/set_data(reagent_id, new_data) @@ -665,7 +670,7 @@ var/const/INJECT = 5 //injection for(var/reagent in cached_reagents) var/datum/reagent/R = reagent if(R.id == reagent_id) - //world << "reagent data set ([reagent_id])" + //to_chat(world, "reagent data set ([reagent_id])") R.data = new_data /datum/reagents/proc/copy_data(datum/reagent/current_reagent) diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index 8e4a9ddb8b..4f5894d884 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -75,9 +75,9 @@ /obj/machinery/chem_dispenser/emag_act(mob/user) if(emagged) - user << "\The [src] has no functional safeties to emag." + to_chat(user, "\The [src] has no functional safeties to emag.") return - user << "You short out \the [src]'s safeties." + to_chat(user, "You short out \the [src]'s safeties.") dispensable_reagents |= emagged_reagents//add the emagged reagents to the dispensable ones emagged = 1 @@ -174,7 +174,7 @@ var/obj/item/weapon/reagent_containers/B = I . = 1 //no afterattack if(beaker) - user << "A container is already loaded into the machine!" + to_chat(user, "A container is already loaded into the machine!") return if(!user.drop_item()) // Can't let go? @@ -182,14 +182,14 @@ beaker = B beaker.loc = src - user << "You add \the [B] to the machine." + to_chat(user, "You add \the [B] to the machine.") if(!icon_beaker) icon_beaker = image('icons/obj/chemical.dmi', src, "disp_beaker") //randomize beaker overlay position. icon_beaker.pixel_x = rand(-10,5) add_overlay(icon_beaker) else if(user.a_intent != INTENT_HARM && !istype(I, /obj/item/weapon/card/emag)) - user << "You can't load \the [I] into the machine!" + to_chat(user, "You can't load \the [I] into the machine!") else return ..() diff --git a/code/modules/reagents/chemistry/machinery/chem_heater.dm b/code/modules/reagents/chemistry/machinery/chem_heater.dm index 6c96bb7b23..2d0d4f98fa 100644 --- a/code/modules/reagents/chemistry/machinery/chem_heater.dm +++ b/code/modules/reagents/chemistry/machinery/chem_heater.dm @@ -57,14 +57,14 @@ if(istype(I, /obj/item/weapon/reagent_containers) && (I.container_type & OPENCONTAINER)) . = 1 //no afterattack if(beaker) - user << "A beaker is already loaded into the machine!" + to_chat(user, "A beaker is already loaded into the machine!") return if(!user.drop_item()) return beaker = I I.loc = src - user << "You add the beaker to the machine." + to_chat(user, "You add the beaker to the machine.") icon_state = "mixer1b" return return ..() diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm index 51f081af08..1b067c3f9c 100644 --- a/code/modules/reagents/chemistry/machinery/chem_master.dm +++ b/code/modules/reagents/chemistry/machinery/chem_master.dm @@ -44,7 +44,7 @@ build_path = new_path name = "[new_name] 3000 (Machine Board)" - user << "You change the circuit board setting to \"[new_name]\"." + to_chat(user, "You change the circuit board setting to \"[new_name]\".") else return ..() @@ -107,30 +107,30 @@ if(istype(I, /obj/item/weapon/reagent_containers) && (I.container_type & OPENCONTAINER)) . = 1 // no afterattack if(panel_open) - user << "You can't use the [src.name] while its panel is opened!" + to_chat(user, "You can't use the [src.name] while its panel is opened!") return if(beaker) - user << "A container is already loaded in the machine!" + to_chat(user, "A container is already loaded in the machine!") return if(!user.drop_item()) return beaker = I beaker.loc = src - user << "You add the beaker to the machine." + to_chat(user, "You add the beaker to the machine.") src.updateUsrDialog() icon_state = "mixer1" else if(!condi && istype(I, /obj/item/weapon/storage/pill_bottle)) if(bottle) - user << "A pill bottle is already loaded into the machine!" + to_chat(user, "A pill bottle is already loaded into the machine!") return if(!user.drop_item()) return bottle = I bottle.loc = src - user << "You add the pill bottle into the dispenser slot." + to_chat(user, "You add the pill bottle into the dispenser slot.") src.updateUsrDialog() else return ..() diff --git a/code/modules/reagents/chemistry/machinery/pandemic.dm b/code/modules/reagents/chemistry/machinery/pandemic.dm index 39dd0098a9..a369ca1960 100644 --- a/code/modules/reagents/chemistry/machinery/pandemic.dm +++ b/code/modules/reagents/chemistry/machinery/pandemic.dm @@ -283,14 +283,14 @@ if(stat & (NOPOWER|BROKEN)) return if(beaker) - user << "A beaker is already loaded into the machine!" + to_chat(user, "A beaker is already loaded into the machine!") return if(!user.drop_item()) return beaker = I beaker.loc = src - user << "You add the beaker to the machine." + to_chat(user, "You add the beaker to the machine.") updateUsrDialog() icon_state = "mixer1" else diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm index 53b34c2b89..6e748bbc6c 100644 --- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm +++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm @@ -132,18 +132,18 @@ update_icon() src.updateUsrDialog() else - user << "There's already a container inside." + to_chat(user, "There's already a container inside.") return 1 //no afterattack if(is_type_in_list(I, dried_items)) if(istype(I, /obj/item/weapon/reagent_containers/food/snacks/grown)) var/obj/item/weapon/reagent_containers/food/snacks/grown/G = I if(!G.dry) - user << "You must dry that first!" + to_chat(user, "You must dry that first!") return 1 if(holdingitems && holdingitems.len >= limit) - usr << "The machine cannot hold anymore items." + to_chat(usr, "The machine cannot hold anymore items.") return 1 //Fill machine with a bag! @@ -153,11 +153,11 @@ B.remove_from_storage(G, src) holdingitems += G if(holdingitems && holdingitems.len >= limit) //Sanity checking so the blender doesn't overfill - user << "You fill the All-In-One grinder to the brim." + to_chat(user, "You fill the All-In-One grinder to the brim.") break if(!I.contents.len) - user << "You empty the plant bag into the All-In-One grinder." + to_chat(user, "You empty the plant bag into the All-In-One grinder.") src.updateUsrDialog() return 1 @@ -166,7 +166,7 @@ if(user.a_intent == INTENT_HARM) return ..() else - user << "Cannot refine into a reagent!" + to_chat(user, "Cannot refine into a reagent!") return 1 if(user.drop_item()) diff --git a/code/modules/reagents/chemistry/reagents.dm b/code/modules/reagents/chemistry/reagents.dm index c6ab051a05..be24b7b35c 100644 --- a/code/modules/reagents/chemistry/reagents.dm +++ b/code/modules/reagents/chemistry/reagents.dm @@ -85,27 +85,27 @@ return /datum/reagent/proc/overdose_start(mob/living/M) - M << "You feel like you took too much of [name]!" + to_chat(M, "You feel like you took too much of [name]!") return /datum/reagent/proc/addiction_act_stage1(mob/living/M) if(prob(30)) - M << "You feel like some [name] right about now." + to_chat(M, "You feel like some [name] right about now.") return /datum/reagent/proc/addiction_act_stage2(mob/living/M) if(prob(30)) - M << "You feel like you need [name]. You just can't get enough." + to_chat(M, "You feel like you need [name]. You just can't get enough.") return /datum/reagent/proc/addiction_act_stage3(mob/living/M) if(prob(30)) - M << "You have an intense craving for [name]." + to_chat(M, "You have an intense craving for [name].") return /datum/reagent/proc/addiction_act_stage4(mob/living/M) if(prob(30)) - M << "You're not feeling good at all! You really need some [name]." + to_chat(M, "You're not feeling good at all! You really need some [name].") return /proc/pretty_string_from_reagent_list(var/list/reagent_list) diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index 484f710b08..4ed43cb053 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -44,14 +44,14 @@ All effects don't start immediately, but rather get worse over time; the rate is if(istype(O,/obj/item/weapon/paper)) var/obj/item/weapon/paper/paperaffected = O paperaffected.clearpaper() - usr << "[paperaffected]'s ink washes away." + to_chat(usr, "[paperaffected]'s ink washes away.") if(istype(O,/obj/item/weapon/book)) if(reac_volume >= 5) var/obj/item/weapon/book/affectedbook = O affectedbook.dat = null - usr << "Through thorough application, you wash away [affectedbook]'s writing." + to_chat(usr, "Through thorough application, you wash away [affectedbook]'s writing.") else - usr << "The ink smears, but doesn't wash away!" + to_chat(usr, "The ink smears, but doesn't wash away!") return /datum/reagent/consumable/ethanol/reaction_mob(mob/living/M, method=TOUCH, reac_volume)//Splashing people with ethanol isn't quite as good as fuel. diff --git a/code/modules/reagents/chemistry/reagents/blob_reagents.dm b/code/modules/reagents/chemistry/reagents/blob_reagents.dm index 3f7a7c2a85..dfc44b4eb4 100644 --- a/code/modules/reagents/chemistry/reagents/blob_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/blob_reagents.dm @@ -19,7 +19,7 @@ if(message_living && !issilicon(M)) totalmessage += message_living totalmessage += "!" - M << "[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)) @@ -198,7 +198,7 @@ M.adjustToxLoss(1*REM) if(iscarbon(M)) var/mob/living/carbon/N = M - N.hal_screwyhud = 5 //fully healed, honest + N.hal_screwyhud = SCREWYHUD_HEALTHY //fully healed, honest ..() /datum/reagent/blob/regenerative_materia/on_mob_delete(mob/living/M) @@ -232,7 +232,7 @@ O.blob_mobs.Add(BS) BS.Zombify(M) O.add_points(points) - O << "Gained [points] resources from the zombification of [M]." + 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. diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm index 4b6e54cfd5..2b706f189b 100644 --- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm @@ -266,7 +266,7 @@ /datum/reagent/consumable/tea/arnold_palmer/on_mob_life(mob/living/M) if(prob(5)) - M << "[pick("You remember to square your shoulders.","You remember to keep your head down.","You can't decide between squaring your shoulders and keeping your head down.","You remember to relax.","You think about how someday you'll get two strokes off your golf game.")]" + to_chat(M, "[pick("You remember to square your shoulders.","You remember to keep your head down.","You can't decide between squaring your shoulders and keeping your head down.","You remember to relax.","You think about how someday you'll get two strokes off your golf game.")]") ..() . = 1 diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index c1c75a9d52..5a20d17b19 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -21,7 +21,7 @@ ..() /datum/reagent/drug/space_drugs/overdose_start(mob/living/M) - M << "You start tripping hard!" + to_chat(M, "You start tripping hard!") /datum/reagent/drug/space_drugs/overdose_process(mob/living/M) @@ -41,7 +41,7 @@ /datum/reagent/drug/nicotine/on_mob_life(mob/living/M) if(prob(1)) var/smoke_message = pick("You feel relaxed.", "You feel calmed.","You feel alert.","You feel rugged.") - M << "[smoke_message]" + to_chat(M, "[smoke_message]") M.AdjustParalysis(-1, 0) M.AdjustStunned(-1, 0) M.AdjustWeakened(-1, 0) @@ -61,7 +61,7 @@ /datum/reagent/drug/crank/on_mob_life(mob/living/M) var/high_message = pick("You feel jittery.", "You feel like you gotta go fast.", "You feel like you need to step it up.") if(prob(5)) - M << "[high_message]" + to_chat(M, "[high_message]") M.AdjustParalysis(-1, 0) M.AdjustStunned(-1, 0) M.AdjustWeakened(-1, 0) @@ -109,7 +109,7 @@ /datum/reagent/drug/krokodil/on_mob_life(mob/living/M) var/high_message = pick("You feel calm.", "You feel collected.", "You feel like you need to relax.") if(prob(5)) - M << "[high_message]" + to_chat(M, "[high_message]") ..() /datum/reagent/drug/krokodil/overdose_process(mob/living/M) @@ -126,12 +126,12 @@ /datum/reagent/krokodil/addiction_act_stage2(mob/living/M) if(prob(25)) - M << "Your skin feels loose..." + to_chat(M, "Your skin feels loose...") ..() /datum/reagent/drug/krokodil/addiction_act_stage3(mob/living/M) if(prob(25)) - M << "Your skin starts to peel away..." + to_chat(M, "Your skin starts to peel away...") M.adjustBruteLoss(3*REM, 0) ..() . = 1 @@ -139,7 +139,7 @@ /datum/reagent/drug/krokodil/addiction_act_stage4(mob/living/carbon/human/M) CHECK_DNA_AND_SPECIES(M) if(!istype(M.dna.species, /datum/species/krokodil_addict)) - M << "Your skin falls off easily!" + to_chat(M, "Your skin falls off easily!") M.adjustBruteLoss(50*REM, 0) // holy shit your skin just FELL THE FUCK OFF M.set_species(/datum/species/krokodil_addict) else @@ -160,7 +160,7 @@ /datum/reagent/drug/methamphetamine/on_mob_life(mob/living/M) var/high_message = pick("You feel hyper.", "You feel like you need to go faster.", "You feel like you can run the world.") if(prob(5)) - M << "[high_message]" + to_chat(M, "[high_message]") M.AdjustParalysis(-2, 0) M.AdjustStunned(-2, 0) M.AdjustWeakened(-2, 0) @@ -238,7 +238,7 @@ /datum/reagent/drug/bath_salts/on_mob_life(mob/living/M) var/high_message = pick("You feel amped up.", "You feel ready.", "You feel like you can push it to the limit.") if(prob(5)) - M << "[high_message]" + to_chat(M, "[high_message]") M.AdjustParalysis(-3, 0) M.AdjustStunned(-3, 0) M.AdjustWeakened(-3, 0) @@ -324,7 +324,7 @@ /datum/reagent/drug/aranesp/on_mob_life(mob/living/M) var/high_message = pick("You feel amped up.", "You feel ready.", "You feel like you can push it to the limit.") if(prob(5)) - M << "[high_message]" + to_chat(M, "[high_message]") M.adjustStaminaLoss(-18, 0) M.adjustToxLoss(0.5, 0) if(prob(50)) diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index 1180415607..59fc0da766 100644 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -99,7 +99,7 @@ taste_description = "sweetness" /datum/reagent/consumable/sugar/overdose_start(mob/living/M) - M << "You go into hyperglycaemic shock! Lay off the twinkies!" + to_chat(M, "You go into hyperglycaemic shock! Lay off the twinkies!") M.AdjustSleeping(30, 0) . = 1 @@ -553,10 +553,10 @@ taste_description = "tingling mushroom" /datum/reagent/consumable/tinlux/reaction_mob(mob/living/M) - M.AddLuminosity(2) + M.set_light(2) /datum/reagent/consumable/tinlux/on_mob_delete(mob/living/M) - M.AddLuminosity(-2) + M.set_light(-2) /datum/reagent/consumable/vitfro name = "Vitrium Froth" diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 60a96d2d24..29ca2df931 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -132,7 +132,7 @@ switch(M.bodytemperature) // Low temperatures are required to take effect. if(0 to 100) // At extreme temperatures (upgraded cryo) the effect is greatly increased. M.status_flags &= ~DISFIGURED - M.adjustCloneLoss(-7, 0) + M.adjustCloneLoss(-1, 0) M.adjustOxyLoss(-9, 0) M.adjustBruteLoss(-5, 0) M.adjustFireLoss(-5, 0) @@ -140,7 +140,7 @@ . = 1 if(100 to 225) // At lower temperatures (cryo) the full effect is boosted M.status_flags &= ~DISFIGURED - M.adjustCloneLoss(-2, 0) + M.adjustCloneLoss(-1, 0) M.adjustOxyLoss(-7, 0) M.adjustBruteLoss(-3, 0) M.adjustFireLoss(-3, 0) @@ -156,6 +156,29 @@ . = 1 ..() +/datum/reagent/medicine/clonexadone + name = "Clonexadone" + id = "clonexadone" + description = "A chemical that derives from Cryoxadone. It specializes in healing clone damage, but nothing else. Requires very cold temperatures to properly metabolize, and metabolizes quicker than cryoxadone." + color = "#0000C8" + taste_description = "muscle" + metabolization_rate = 1.5 * REAGENTS_METABOLISM + +/datum/reagent/medicine/clonexadone/on_mob_life(mob/living/M) + switch(M.bodytemperature) // Low temperatures are required to take effect. + if(0 to 100) // At extreme temperatures (upgraded cryo) the effect is greatly increased. + M.status_flags &= ~DISFIGURED + M.adjustCloneLoss(-7, 0) + . = 1 + if(100 to 225) // At lower temperatures (cryo) the full effect is boosted + M.status_flags &= ~DISFIGURED + M.adjustCloneLoss(-3, 0) + . = 1 + if(225 to T0C) + M.status_flags &= ~DISFIGURED + M.adjustCloneLoss(-2, 0) + . = 1 + ..() /datum/reagent/medicine/rezadone name = "Rezadone" @@ -200,11 +223,11 @@ if(method in list(INGEST, VAPOR, INJECT)) M.adjustToxLoss(0.5*reac_volume) if(show_message) - M << "You don't feel so good..." + to_chat(M, "You don't feel so good...") else if(M.getFireLoss()) M.adjustFireLoss(-reac_volume) if(show_message) - M << "You feel your burns healing! It stings like hell!" + to_chat(M, "You feel your burns healing! It stings like hell!") M.emote("scream") ..() @@ -248,11 +271,11 @@ if(method in list(INGEST, VAPOR, INJECT)) M.adjustToxLoss(0.5*reac_volume) if(show_message) - M << "You don't feel so good..." + to_chat(M, "You don't feel so good...") else if(M.getBruteLoss()) M.adjustBruteLoss(-reac_volume) if(show_message) - M << "You feel your bruises healing! It stings like hell!" + to_chat(M, "You feel your bruises healing! It stings like hell!") M.emote("scream") ..() @@ -302,7 +325,7 @@ /datum/reagent/medicine/mine_salve/on_mob_life(mob/living/M) if(iscarbon(M)) var/mob/living/carbon/N = M - N.hal_screwyhud = 5 + N.hal_screwyhud = SCREWYHUD_HEALTHY M.adjustBruteLoss(-0.25*REM, 0) M.adjustFireLoss(-0.25*REM, 0) ..() @@ -314,7 +337,7 @@ M.Stun(4) M.Weaken(4) if(show_message) - M << "Your stomach agonizingly cramps!" + to_chat(M, "Your stomach agonizingly cramps!") else var/mob/living/carbon/C = M for(var/s in C.surgeries) @@ -323,13 +346,13 @@ // +10% success propability on each step, useful while operating in less-than-perfect conditions if(show_message) - M << "You feel your wounds fade away to nothing!" //It's a painkiller, after all + to_chat(M, "You feel your wounds fade away to nothing!" ) ..() /datum/reagent/medicine/mine_salve/on_mob_delete(mob/living/M) if(iscarbon(M)) var/mob/living/carbon/N = M - N.hal_screwyhud = 0 + N.hal_screwyhud = SCREWYHUD_NONE ..() /datum/reagent/medicine/synthflesh @@ -347,7 +370,7 @@ M.adjustBruteLoss(-1.25 * reac_volume) M.adjustFireLoss(-1.25 * reac_volume) if(show_message) - M << "You feel your burns and bruises healing! It stings like hell!" + to_chat(M, "You feel your burns and bruises healing! It stings like hell!") ..() /datum/reagent/medicine/charcoal @@ -582,7 +605,7 @@ M.status_flags |= IGNORESLOWDOWN switch(current_cycle) if(11) - M << "You start to feel tired..." //Warning when the victim is starting to pass out + to_chat(M, "You start to feel tired..." ) if(12 to 24) M.drowsyness += 1 if(24 to INFINITY) @@ -653,13 +676,13 @@ /datum/reagent/medicine/oculine/on_mob_life(mob/living/M) if(M.disabilities & BLIND) if(prob(20)) - M << "Your vision slowly returns..." + to_chat(M, "Your vision slowly returns...") M.cure_blind() M.cure_nearsighted() M.blur_eyes(35) else if(M.disabilities & NEARSIGHT) - M << "The blackness in your peripheral vision fades." + to_chat(M, "The blackness in your peripheral vision fades.") M.cure_nearsighted() M.blur_eyes(10) diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index b8a02e0b0e..5339b3dc92 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -171,7 +171,7 @@ /datum/reagent/water/holywater/reaction_mob(mob/living/M, method=TOUCH, reac_volume) if(is_servant_of_ratvar(M)) - M << "A darkness begins to spread its unholy tendrils through your mind, purging the Justiciar's influence!" + to_chat(M, "A darkness begins to spread its unholy tendrils through your mind, purging the Justiciar's influence!") ..() /datum/reagent/water/holywater/on_mob_life(mob/living/M) @@ -190,8 +190,8 @@ if("speech") clockwork_say(M, "...[text2ratvar(pick("Engine... your light grows dark...", "Where are you, master?", "He lies rusting in Error...", "Purge all untruths and... and... something..."))]") if("message") - M << "[pick("Ratvar's illumination of your mind has begun to flicker", "He lies rusting in Reebe, derelict and forgotten. And there he shall stay", \ - "You can't save him. Nothing can save him now", "It seems that Nar-Sie will triumph after all")]." + to_chat(M, "[pick("Ratvar's illumination of your mind has begun to flicker", "He lies rusting in Reebe, derelict and forgotten. And there he shall stay", \ + "You can't save him. Nothing can save him now", "It seems that Nar-Sie will triumph after all")].") if("emote") M.visible_message("[M] [pick("whimpers quietly", "shivers as though cold", "glances around in paranoia")].") if(data >= 75) // 30 units, 135 seconds @@ -344,7 +344,7 @@ if(method == INGEST) if(show_message) - M << "That tasted horrible." + to_chat(M, "That tasted horrible.") M.AdjustStunned(2) M.AdjustWeakened(2) ..() @@ -384,7 +384,7 @@ /datum/reagent/stableslimetoxin/on_mob_life(mob/living/carbon/human/H) ..() - H << "You crumple in agony as your flesh wildly morphs into new forms!" + to_chat(H, "You crumple in agony as your flesh wildly morphs into new forms!") H.visible_message("[H] falls to the ground and screams as [H.p_their()] skin bubbles and froths!") //'froths' sounds painful when used with SKIN. H.Weaken(3, 0) spawn(30) @@ -394,10 +394,10 @@ var/current_species = H.dna.species.type var/datum/species/mutation = race if(mutation && mutation != current_species) - H << mutationtext + to_chat(H, mutationtext) H.set_species(mutation) else - H << "The pain vanishes suddenly. You feel no different." + to_chat(H, "The pain vanishes suddenly. You feel no different.") return 1 @@ -535,7 +535,7 @@ taste_description = "slime" /datum/reagent/mulligan/on_mob_life(mob/living/carbon/human/H) - H << "You grit your teeth in pain as your body rapidly mutates!" + to_chat(H, "You grit your teeth in pain as your body rapidly mutates!") H.visible_message("[H] suddenly transforms!") randomize_human(H) ..() @@ -855,7 +855,7 @@ /datum/reagent/bluespace/on_mob_life(mob/living/M) if(current_cycle > 10 && prob(15)) - M << "You feel unstable..." + to_chat(M, "You feel unstable...") M.Jitter(2) current_cycle = 1 addtimer(CALLBACK(GLOBAL_PROC, .proc/do_teleport, M, get_turf(M), 5, asoundin = 'sound/effects/phasein.ogg'), 30) @@ -1528,3 +1528,37 @@ M.resize = 1/current_size M.update_transform() ..() + +/datum/reagent/glitter + name = "generic glitter" + id = "glitter" + description = "if you can see this description, contact a coder." + color = "#FFFFFF" //pure white + taste_description = "plastic" + reagent_state = SOLID + var/glitter_type = /obj/effect/decal/cleanable/glitter + +/datum/reagent/glitter/reaction_turf(turf/T, reac_volume) + if(!istype(T)) + return + new glitter_type(T) + +/datum/reagent/glitter/pink + name = "pink glitter" + id = "pink_glitter" + description = "pink sparkles that get everywhere" + color = "#ff8080" //A light pink color + glitter_type = /obj/effect/decal/cleanable/glitter/pink + +/datum/reagent/glitter/white + name = "white glitter" + id = "white_glitter" + description = "white sparkles that get everywhere" + glitter_type = /obj/effect/decal/cleanable/glitter/white + +/datum/reagent/glitter/blue + name = "blue glitter" + id = "blue_glitter" + description = "blue sparkles that get everywhere" + color = "#4040FF" //A blueish color + glitter_type = /obj/effect/decal/cleanable/glitter/blue diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index 657704cf1d..ee296f312d 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -124,7 +124,7 @@ /datum/reagent/toxin/slimejelly/on_mob_life(mob/living/M) if(prob(10)) - M << "Your insides are burning!" + to_chat(M, "Your insides are burning!") M.adjustToxLoss(rand(20,60)*REM, 0) . = 1 else if(prob(40)) @@ -383,7 +383,7 @@ if(prob(50)) switch(pick(1, 2, 3, 4)) if(1) - M << "You can barely see!" + to_chat(M, "You can barely see!") M.blur_eyes(3) if(2) M.emote("cough") @@ -391,7 +391,7 @@ M.emote("sneeze") if(4) if(prob(75)) - M << "You scratch at an itch." + to_chat(M, "You scratch at an itch.") M.adjustBruteLoss(2*REM, 0) . = 1 ..() @@ -470,7 +470,7 @@ if(prob(5)) M.losebreath += 1 if(prob(8)) - M << "You feel horrendously weak!" + to_chat(M, "You feel horrendously weak!") M.Stun(2, 0) M.adjustToxLoss(2*REM, 0) return ..() @@ -500,15 +500,15 @@ /datum/reagent/toxin/itching_powder/on_mob_life(mob/living/M) if(prob(15)) - M << "You scratch at your head." + to_chat(M, "You scratch at your head.") M.adjustBruteLoss(0.2*REM, 0) . = 1 if(prob(15)) - M << "You scratch at your leg." + to_chat(M, "You scratch at your leg.") M.adjustBruteLoss(0.2*REM, 0) . = 1 if(prob(15)) - M << "You scratch at your arm." + to_chat(M, "You scratch at your arm.") M.adjustBruteLoss(0.2*REM, 0) . = 1 if(prob(3)) @@ -822,7 +822,7 @@ if(M.dizziness < 6) M.dizziness = Clamp(M.dizziness + 3, 0, 5) if(prob(20)) - M << "You feel confused and disorientated." + to_chat(M, "You feel confused and disorientated.") ..() /datum/reagent/toxin/peaceborg/tire @@ -838,7 +838,7 @@ if(M.staminaloss < (45 - healthcomp)) //At 50 health you would have 200 - 150 health meaning 50 compensation. 60 - 50 = 10, so would only do 10-19 stamina.) M.adjustStaminaLoss(10) if(prob(30)) - M << "You should sit down and take a rest..." + to_chat(M, "You should sit down and take a rest...") ..() /datum/reagent/toxin/delayed @@ -860,3 +860,11 @@ M.Weaken(1, 0) . = 1 ..() + +/datum/reagent/toxin/mimesbane + name = "Mime's Bane" + id = "mimesbane" + description = "A nonlethal neurotoxin that interferes with the victim's ability to gesture." + color = "#F0F8FF" // rgb: 240, 248, 255 + toxpwr = 0 + taste_description = "stillness" diff --git a/code/modules/reagents/chemistry/recipes/medicine.dm b/code/modules/reagents/chemistry/recipes/medicine.dm index 187b42f035..3280ae2a11 100644 --- a/code/modules/reagents/chemistry/recipes/medicine.dm +++ b/code/modules/reagents/chemistry/recipes/medicine.dm @@ -184,6 +184,13 @@ results = list("cryoxadone" = 3) required_reagents = list("stable_plasma" = 1, "acetone" = 1, "mutagen" = 1) +/datum/chemical_reaction/clonexadone + name = "Clonexadone" + id = "clonexadone" + results = list("clonexadone" = 2) + required_reagents = list("cryoxadone" = 1, "sodium" = 1) + required_catalysts = list("plasma" = 5) + /datum/chemical_reaction/haloperidol name = "Haloperidol" id = "haloperidol" diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm index 1a47ea728f..19bb28666d 100644 --- a/code/modules/reagents/chemistry/recipes/others.dm +++ b/code/modules/reagents/chemistry/recipes/others.dm @@ -68,7 +68,7 @@ var/location = get_turf(holder.my_atom) for(var/i = 1, i <= created_volume, i++) new /obj/item/stack/sheet/mineral/gold(location) - + /datum/chemical_reaction/capsaicincondensation name = "Capsaicincondensation" id = "capsaicincondensation" @@ -124,7 +124,7 @@ results = list("nitrous_oxide" = 2, "water" = 4) required_reagents = list("ammonia" = 3, "nitrogen" = 1, "oxygen" = 2) required_temp = 525 - + ////////////////////////////////// Mutation Toxins /////////////////////////////////// /datum/chemical_reaction/stable_mutation_toxin @@ -426,7 +426,7 @@ /datum/chemical_reaction/foam/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/mob/M in viewers(5, location)) - M << "The solution spews out foam!" + to_chat(M, "The solution spews out foam!") var/datum/effect_system/foam_spread/s = new() s.set_up(created_volume*2, location, holder) s.start() @@ -444,7 +444,7 @@ var/location = get_turf(holder.my_atom) for(var/mob/M in viewers(5, location)) - M << "The solution spews out a metallic foam!" + to_chat(M, "The solution spews out a metallic foam!") var/datum/effect_system/foam_spread/metal/s = new() s.set_up(created_volume*5, location, holder, 1) @@ -460,7 +460,7 @@ /datum/chemical_reaction/ironfoam/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) for(var/mob/M in viewers(5, location)) - M << "The solution spews out a metallic foam!" + to_chat(M, "The solution spews out a metallic foam!") var/datum/effect_system/foam_spread/metal/s = new() s.set_up(created_volume*5, location, holder, 2) s.start() diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm index 4f76d34b2a..2e24309085 100644 --- a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm +++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm @@ -65,14 +65,14 @@ deity = SSreligion.Bible_deity_name else deity = "Christ" - R << "The power of [deity] compels you!" + to_chat(R, "The power of [deity] compels you!") R.stun(20) R.reveal(100) R.adjustHealth(50) sleep(20) for(var/mob/living/carbon/C in get_hearers_in_view(round(created_volume/48,1),get_turf(holder.my_atom))) if(iscultist(C)) - C << "The divine explosion sears you!" + to_chat(C, "The divine explosion sears you!") C.Weaken(2) C.adjust_fire_stacks(5) C.IgniteMob() diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index 55de6a9a71..92662600d8 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -38,7 +38,7 @@ amount_per_transfer_from_this = possible_transfer_amounts[i+1] else amount_per_transfer_from_this = possible_transfer_amounts[1] - user << "[src]'s transfer amount is now [amount_per_transfer_from_this] units." + to_chat(user, "[src]'s transfer amount is now [amount_per_transfer_from_this] units.") return /obj/item/weapon/reagent_containers/attack(mob/M, mob/user, def_zone) @@ -67,7 +67,7 @@ covered = "mask" if(covered) var/who = (isnull(user) || eater == user) ? "your" : "[eater.p_their()]" - user << "You have to remove [who] [covered] first!" + to_chat(user, "You have to remove [who] [covered] first!") return 0 return 1 diff --git a/code/modules/reagents/reagent_containers/borghydro.dm b/code/modules/reagents/reagent_containers/borghydro.dm index e6d2e20213..c7a744b1c1 100644 --- a/code/modules/reagents/reagent_containers/borghydro.dm +++ b/code/modules/reagents/reagent_containers/borghydro.dm @@ -86,18 +86,18 @@ Borg Hypospray /obj/item/weapon/reagent_containers/borghypo/attack(mob/living/carbon/M, mob/user) var/datum/reagents/R = reagent_list[mode] if(!R.total_volume) - user << "The injector is empty." + to_chat(user, "The injector is empty.") return if(!istype(M)) return if(R.total_volume && M.can_inject(user, 1, user.zone_selected,bypass_protection)) - M << "You feel a tiny prick!" - user << "You inject [M] with the injector." + to_chat(M, "You feel a tiny prick!") + to_chat(user, "You inject [M] with the injector.") var/fraction = min(amount_per_transfer_from_this/R.total_volume, 1) R.reaction(M, INJECT, fraction) if(M.reagents) var/trans = R.trans_to(M, amount_per_transfer_from_this) - user << "[trans] unit\s injected. [R.total_volume] unit\s remaining." + to_chat(user, "[trans] unit\s injected. [R.total_volume] unit\s remaining.") var/list/injected = list() for(var/datum/reagent/RG in R.reagent_list) @@ -111,7 +111,7 @@ Borg Hypospray mode = chosen_reagent playsound(loc, 'sound/effects/pop.ogg', 50, 0) var/datum/reagent/R = chemical_reagents_list[reagent_ids[mode]] - user << "[src] is now dispensing '[R.name]'." + to_chat(user, "[src] is now dispensing '[R.name]'.") return /obj/item/weapon/reagent_containers/borghypo/examine(mob/user) @@ -125,11 +125,11 @@ Borg Hypospray for(var/datum/reagents/RS in reagent_list) var/datum/reagent/R = locate() in RS.reagent_list if(R) - usr << "It currently has [R.volume] unit\s of [R.name] stored." + to_chat(usr, "It currently has [R.volume] unit\s of [R.name] stored.") empty = 0 if(empty) - usr << "It is currently empty! Allow some time for the internal syntheszier to produce more." + to_chat(usr, "It is currently empty! Allow some time for the internal syntheszier to produce more.") /obj/item/weapon/reagent_containers/borghypo/hacked icon_state = "borghypo_s" @@ -181,15 +181,15 @@ Borg Shaker else if(target.is_open_container() && target.reagents) var/datum/reagents/R = reagent_list[mode] if(!R.total_volume) - user << "[src] is currently out of this ingredient! Please allow some time for the synthesizer to produce more." + to_chat(user, "[src] is currently out of this ingredient! Please allow some time for the synthesizer to produce more.") return if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "[target] is full." + to_chat(user, "[target] is full.") return var/trans = R.trans_to(target, amount_per_transfer_from_this) - user << "You transfer [trans] unit\s of the solution to [target]." + to_chat(user, "You transfer [trans] unit\s of the solution to [target].") /obj/item/weapon/reagent_containers/borghypo/borgshaker/DescribeContents() var/empty = 1 @@ -197,11 +197,11 @@ Borg Shaker var/datum/reagents/RS = reagent_list[mode] var/datum/reagent/R = locate() in RS.reagent_list if(R) - usr << "It currently has [R.volume] unit\s of [R.name] stored." + to_chat(usr, "It currently has [R.volume] unit\s of [R.name] stored.") empty = 0 if(empty) - usr << "It is currently empty! Please allow some time for the synthesizer to produce more." + to_chat(usr, "It is currently empty! Please allow some time for the synthesizer to produce more.") /obj/item/weapon/reagent_containers/borghypo/borgshaker/hacked ..() diff --git a/code/modules/reagents/reagent_containers/dropper.dm b/code/modules/reagents/reagent_containers/dropper.dm index 3ffc1bec05..01b1d4dc28 100644 --- a/code/modules/reagents/reagent_containers/dropper.dm +++ b/code/modules/reagents/reagent_containers/dropper.dm @@ -14,11 +14,11 @@ if(reagents.total_volume > 0) if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "[target] is full." + to_chat(user, "[target] is full.") return if(!target.is_open_container() && !ismob(target) && !istype(target,/obj/item/weapon/reagent_containers/food) && !istype(target, /obj/item/clothing/mask/cigarette)) //You can inject humans and food but you cant remove the shit. - user << "You cannot directly fill [target]!" + to_chat(user, "You cannot directly fill [target]!") return var/trans = 0 @@ -49,11 +49,11 @@ target.visible_message("[user] tries to squirt something into [target]'s eyes, but fails!", \ "[user] tries to squirt something into [target]'s eyes, but fails!") - user << "You transfer [trans] unit\s of the solution." + to_chat(user, "You transfer [trans] unit\s of the solution.") update_icon() return else if(isalien(target)) //hiss-hiss has no eyes! - target << "[target] does not seem to have any eyes!" + to_chat(target, "[target] does not seem to have any eyes!") return target.visible_message("[user] squirts something into [target]'s eyes!", \ @@ -69,22 +69,22 @@ add_logs(user, M, "squirted", R) trans = src.reagents.trans_to(target, amount_per_transfer_from_this) - user << "You transfer [trans] unit\s of the solution." + to_chat(user, "You transfer [trans] unit\s of the solution.") update_icon() else if(!target.is_open_container() && !istype(target,/obj/structure/reagent_dispensers)) - user << "You cannot directly remove reagents from [target]." + to_chat(user, "You cannot directly remove reagents from [target].") return if(!target.reagents.total_volume) - user << "[target] is empty!" + to_chat(user, "[target] is empty!") return var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) - user << "You fill [src] with [trans] unit\s of the solution." + to_chat(user, "You fill [src] with [trans] unit\s of the solution.") update_icon() diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index e2ee5ad1ba..d9f21b5c26 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -16,7 +16,7 @@ return if(!reagents || !reagents.total_volume) - user << "[src] is empty!" + to_chat(user, "[src] is empty!") return if(istype(M)) @@ -46,7 +46,7 @@ M.visible_message("[user] feeds something to [M].", "[user] feeds something to you.") add_logs(user, M, "fed", reagentlist(src)) else - user << "You swallow a gulp of [src]." + to_chat(user, "You swallow a gulp of [src].") var/fraction = min(5/reagents.total_volume, 1) reagents.reaction(M, INGEST, fraction) spawn(5) @@ -59,28 +59,28 @@ else if(istype(target, /obj/structure/reagent_dispensers)) //A dispenser. Transfer FROM it TO us. if(target.reagents && !target.reagents.total_volume) - user << "[target] is empty and can't be refilled!" + to_chat(user, "[target] is empty and can't be refilled!") return if(reagents.total_volume >= reagents.maximum_volume) - user << "[src] is full." + to_chat(user, "[src] is full.") return var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) - user << "You fill [src] with [trans] unit\s of the contents of [target]." + to_chat(user, "You fill [src] with [trans] unit\s of the contents of [target].") else if(target.is_open_container() && target.reagents) //Something like a glass. Player probably wants to transfer TO it. if(!reagents.total_volume) - user << "[src] is empty!" + to_chat(user, "[src] is empty!") return if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "[target] is full." + to_chat(user, "[target] is full.") return var/trans = reagents.trans_to(target, amount_per_transfer_from_this) - user << "You transfer [trans] unit\s of the solution to [target]." + to_chat(user, "You transfer [trans] unit\s of the solution to [target].") else if(reagents.total_volume) if(user.a_intent == INTENT_HARM) @@ -96,18 +96,18 @@ if(reagents) if(reagents.chem_temp < hotness) //can't be heated to be hotter than the source reagents.chem_temp += added_heat - user << "You heat [src] with [I]." + to_chat(user, "You heat [src] with [I].") reagents.handle_reactions() else - user << "[src] is already hotter than [I]!" + to_chat(user, "[src] is already hotter than [I]!") if(istype(I,/obj/item/weapon/reagent_containers/food/snacks/egg)) //breaking eggs var/obj/item/weapon/reagent_containers/food/snacks/egg/E = I if(reagents) if(reagents.total_volume >= reagents.maximum_volume) - user << "[src] is full." + to_chat(user, "[src] is full.") else - user << "You break [E] in [src]." + to_chat(user, "You break [E] in [src].") reagents.add_reagent("eggyolk", 5) qdel(E) return @@ -251,13 +251,13 @@ /obj/item/weapon/reagent_containers/glass/bucket/attackby(obj/O, mob/user, params) if(istype(O, /obj/item/weapon/mop)) if(reagents.total_volume < 1) - user << "[src] is out of water!" + to_chat(user, "[src] is out of water!") else reagents.trans_to(O, 5) - user << "You wet [O] in [src]." + to_chat(user, "You wet [O] in [src].") playsound(loc, 'sound/effects/slosh.ogg', 25, 1) else if(isprox(O)) - user << "You add [O] to [src]." + to_chat(user, "You add [O] to [src].") qdel(O) qdel(src) user.put_in_hands(new /obj/item/weapon/bucket_sensor) @@ -267,7 +267,7 @@ /obj/item/weapon/reagent_containers/glass/bucket/equipped(mob/user, slot) ..() if(slot == slot_head && reagents.total_volume) - user << "[src]'s contents spill all over you!" + to_chat(user, "[src]'s contents spill all over you!") reagents.reaction(user, TOUCH) reagents.clear_reagents() diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index 9e05056023..904fb36968 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -18,14 +18,14 @@ /obj/item/weapon/reagent_containers/hypospray/attack(mob/living/M, mob/user) if(!reagents.total_volume) - user << "[src] is empty!" + to_chat(user, "[src] is empty!") return if(!iscarbon(M)) return if(reagents.total_volume && (ignore_flags || M.can_inject(user, 1))) // Ignore flag should be checked first or there will be an error message. - M << "You feel a tiny prick!" - user << "You inject [M] with [src]." + to_chat(M, "You feel a tiny prick!") + to_chat(user, "You inject [M] with [src].") var/fraction = min(amount_per_transfer_from_this/reagents.total_volume, 1) reagents.reaction(M, INJECT, fraction) @@ -39,7 +39,7 @@ else trans = reagents.copy_to(M, amount_per_transfer_from_this) - user << "[trans] unit\s injected. [reagents.total_volume] unit\s remaining in [src]." + to_chat(user, "[trans] unit\s injected. [reagents.total_volume] unit\s remaining in [src].") var/contained = english_list(injected) @@ -78,7 +78,7 @@ /obj/item/weapon/reagent_containers/hypospray/medipen/attack(mob/M, mob/user) if(!reagents.total_volume) - user << "[src] is empty!" + to_chat(user, "[src] is empty!") return ..() if(!iscyborg(user)) @@ -102,9 +102,9 @@ /obj/item/weapon/reagent_containers/hypospray/medipen/examine() ..() if(reagents && reagents.reagent_list.len) - usr << "It is currently loaded." + to_chat(usr, "It is currently loaded.") else - usr << "It is spent." + to_chat(usr, "It is spent.") /obj/item/weapon/reagent_containers/hypospray/medipen/stimpack //goliath kiting name = "stimpack medipen" diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index 033bbc9b0a..11d4303ce8 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -32,7 +32,7 @@ if(self_delay) if(!do_mob(user, M, self_delay)) return 0 - M << "You [apply_method] [src]." + to_chat(M, "You [apply_method] [src].") else M.visible_message("[user] attempts to force [M] to [apply_method] [src].", \ @@ -55,11 +55,11 @@ if(!proximity) return if(target.is_open_container() != 0 && target.reagents) if(!target.reagents.total_volume) - user << "[target] is empty! There's nothing to dissolve [src] in." + to_chat(user, "[target] is empty! There's nothing to dissolve [src] in.") return - user << "You dissolve [src] in [target]." + 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 - O << "[user] slips something into [target]!" + to_chat(O, "[user] slips something into [target]!") reagents.trans_to(target, reagents.total_volume) qdel(src) @@ -100,7 +100,7 @@ list_reagents = list("salbutamol" = 30) roundstart = 1 /obj/item/weapon/reagent_containers/pill/charcoal - name = "antitoxin pill" + name = "charcoal pill" desc = "Neutralizes many common toxins." icon_state = "pill17" list_reagents = list("charcoal" = 10) diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index 7299e2d074..46f9754116 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -27,19 +27,19 @@ if(istype(A, /obj/structure/reagent_dispensers) && get_dist(src,A) <= 1) //this block copypasted from reagent_containers/glass, for lack of a better solution if(!A.reagents.total_volume && A.reagents) - user << "\The [A] is empty." + to_chat(user, "\The [A] is empty.") return if(reagents.total_volume >= reagents.maximum_volume) - user << "\The [src] is full." + to_chat(user, "\The [src] is full.") return var/trans = A.reagents.trans_to(src, 50) //transfer 50u , using the spray's transfer amount would take too long to refill - user << "You fill \the [src] with [trans] units of the contents of \the [A]." + to_chat(user, "You fill \the [src] with [trans] units of the contents of \the [A].") return if(reagents.total_volume < amount_per_transfer_from_this) - user << "\The [src] is empty!" + to_chat(user, "\The [src] is empty!") return spray(A) @@ -115,7 +115,7 @@ else amount_per_transfer_from_this = initial(amount_per_transfer_from_this) current_range = spray_range - user << "You switch the nozzle setting to [stream_mode ? "\"stream\"":"\"spray\""]. You'll now use [amount_per_transfer_from_this] units per use." + to_chat(user, "You switch the nozzle setting to [stream_mode ? "\"stream\"":"\"spray\""]. You'll now use [amount_per_transfer_from_this] units per use.") /obj/item/weapon/reagent_containers/spray/verb/empty() set name = "Empty Spray Bottle" @@ -126,7 +126,7 @@ if (alert(usr, "Are you sure you want to empty that?", "Empty Bottle:", "Yes", "No") != "Yes") return if(isturf(usr.loc) && src.loc == usr) - usr << "You empty \the [src] onto the floor." + to_chat(usr, "You empty \the [src] onto the floor.") reagents.reaction(usr.loc) src.reagents.clear_reagents() diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index a4287b9c84..2049a1868d 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -66,12 +66,12 @@ var/mob/living/carbon/monkey/M M = target M.retaliate(user) - + switch(mode) if(SYRINGE_DRAW) if(reagents.total_volume >= reagents.maximum_volume) - user << "The syringe is full." + to_chat(user, "The syringe is full.") return if(L) //living mob @@ -89,34 +89,34 @@ if(L.transfer_blood_to(src, drawn_amount)) user.visible_message("[user] takes a blood sample from [L].") else - user << "You are unable to draw any blood from [L]!" + to_chat(user, "You are unable to draw any blood from [L]!") else //if not mob if(!target.reagents.total_volume) - user << "[target] is empty!" + to_chat(user, "[target] is empty!") return if(!target.is_open_container() && !istype(target,/obj/structure/reagent_dispensers) && !istype(target,/obj/item/slime_extract)) - user << "You cannot directly remove reagents from [target]!" + to_chat(user, "You cannot directly remove reagents from [target]!") return var/trans = target.reagents.trans_to(src, amount_per_transfer_from_this) // transfer from, transfer to - who cares? - user << "You fill [src] with [trans] units of the solution." + to_chat(user, "You fill [src] with [trans] units of the solution.") if (reagents.total_volume >= reagents.maximum_volume) mode=!mode update_icon() if(SYRINGE_INJECT) if(!reagents.total_volume) - user << "[src] is empty." + to_chat(user, "[src] is empty.") return if(!target.is_open_container() && !ismob(target) && !istype(target, /obj/item/weapon/reagent_containers/food) && !istype(target, /obj/item/slime_extract) && !istype(target, /obj/item/clothing/mask/cigarette) && !istype(target, /obj/item/weapon/storage/fancy/cigarettes)) - user << "You cannot directly fill [target]!" + to_chat(user, "You cannot directly fill [target]!") return if(target.reagents.total_volume >= target.reagents.maximum_volume) - user << "[target] is full." + to_chat(user, "[target] is full.") return if(L) //living mob @@ -142,12 +142,12 @@ add_logs(user, L, "injected", src, addition="which had [contained]") else log_attack("[user.name] ([user.ckey]) injected [L.name] ([L.ckey]) with [src.name], which had [contained] (INTENT: [uppertext(user.a_intent)])") - L.attack_log += "\[[time_stamp()]\] Injected themselves ([contained]) with [src.name]." + L.log_message("Injected themselves ([contained]) with [src.name].", INDIVIDUAL_ATTACK_LOG) var/fraction = min(amount_per_transfer_from_this/reagents.total_volume, 1) reagents.reaction(L, INJECT, fraction) reagents.trans_to(target, amount_per_transfer_from_this) - user << "You inject [amount_per_transfer_from_this] units of the solution. The syringe now contains [reagents.total_volume] units." + to_chat(user, "You inject [amount_per_transfer_from_this] units of the solution. The syringe now contains [reagents.total_volume] units.") if (reagents.total_volume <= 0 && mode==SYRINGE_INJECT) mode = SYRINGE_DRAW update_icon() diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index 939bef73da..4c42d6236d 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -31,9 +31,9 @@ /obj/structure/reagent_dispensers/examine(mob/user) ..() if(reagents.total_volume) - user << "It has [reagents.total_volume] units left." + to_chat(user, "It has [reagents.total_volume] units left.") else - user << "It's empty." + to_chat(user, "It's empty.") /obj/structure/reagent_dispensers/proc/boom() @@ -89,20 +89,20 @@ var/boom_message = "[key_name_admin(P.firer)] triggered a fueltank explosion via projectile." bombers += boom_message message_admins(boom_message) - var/log_message = "[key_name(P.firer)] triggered a fueltank explosion via projectile." - P.firer.attack_log += "\[[time_stamp()]\] [log_message]" - log_attack(log_message) + var/log_message = "triggered a fueltank explosion via projectile." + P.firer.log_message(log_message, INDIVIDUAL_ATTACK_LOG) + log_attack("[key_name(P.firer)] [log_message]") boom() /obj/structure/reagent_dispensers/fueltank/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/weapon/weldingtool)) if(!reagents.has_reagent("welding_fuel")) - user << "[src] is out of fuel!" + to_chat(user, "[src] is out of fuel!") return var/obj/item/weapon/weldingtool/W = I if(!W.welding) if(W.reagents.has_reagent("welding_fuel", W.max_fuel)) - user << "Your [W.name] is already full!" + to_chat(user, "Your [W.name] is already full!") return reagents.trans_to(W, W.max_fuel) user.visible_message("[user] refills [user.p_their()] [W.name].", "You refill [W].") @@ -113,9 +113,9 @@ var/message_admins = "[key_name_admin(user)] triggered a fueltank explosion via welding tool." bombers += message_admins message_admins(message_admins) - var/message_log = "[key_name(user)] triggered a fueltank explosion via welding tool." - user.attack_log += "\[[time_stamp()]\] [message_log]" - log_attack(message_log) + var/message_log = "triggered a fueltank explosion via welding tool." + user.log_message(message_log, INDIVIDUAL_ATTACK_LOG) + log_attack("[key_name(user)] [message_log]") boom() return return ..() @@ -146,11 +146,11 @@ /obj/structure/reagent_dispensers/water_cooler/examine(mob/user) ..() - user << "There are [paper_cups ? paper_cups : "no"] paper cups left." + to_chat(user, "There are [paper_cups ? paper_cups : "no"] paper cups left.") /obj/structure/reagent_dispensers/water_cooler/attack_hand(mob/living/user) if(!paper_cups) - user << "There aren't any cups left!" + to_chat(user, "There aren't any cups left!") return user.visible_message("[user] takes a cup from [src].", "You take a paper cup from [src].") var/obj/item/weapon/reagent_containers/food/drinks/sillycup/S = new(get_turf(src)) diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index e66587ffd3..2ef0842a04 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -125,7 +125,7 @@ var/obj/item/conveyor_construct/C = new/obj/item/conveyor_construct(src.loc) C.id = id transfer_fingerprints_to(C) - user << "You remove the conveyor belt." + to_chat(user, "You remove the conveyor belt.") qdel(src) else if(istype(I, /obj/item/weapon/wrench)) @@ -133,13 +133,13 @@ playsound(loc, I.usesound, 50, 1) setDir(turn(dir,-45)) update_move_direction() - user << "You rotate [src]." + to_chat(user, "You rotate [src].") else if(istype(I, /obj/item/weapon/screwdriver)) if(!(stat & BROKEN)) verted = verted * -1 update_move_direction() - user << "You reverse [src]'s direction." + to_chat(user, "You reverse [src]'s direction.") else if(user.a_intent != INTENT_HARM) if(user.drop_item()) @@ -213,17 +213,18 @@ -/obj/machinery/conveyor_switch/New(newloc, newid) - ..(newloc) +/obj/machinery/conveyor_switch/Initialize(mapload, newid) + if(mapload) + return TRUE //need machines list + ..() if(!id) id = newid update() - spawn(5) // allow map load - conveyors = list() - for(var/obj/machinery/conveyor/C in machines) - if(C.id == id) - conveyors += C + conveyors = list() + for(var/obj/machinery/conveyor/C in machines) + if(C.id == id) + conveyors += C // update the icon depending on the position @@ -281,7 +282,7 @@ var/obj/item/conveyor_switch_construct/C = new/obj/item/conveyor_switch_construct(src.loc) C.id = id transfer_fingerprints_to(C) - user << "You deattach the conveyor switch." + to_chat(user, "You deattach the conveyor switch.") qdel(src) /obj/machinery/conveyor_switch/oneway @@ -303,7 +304,7 @@ /obj/item/conveyor_construct/attackby(obj/item/I, mob/user, params) ..() if(istype(I, /obj/item/conveyor_switch_construct)) - user << "You link the switch to the conveyor belt assembly." + to_chat(user, "You link the switch to the conveyor belt assembly.") var/obj/item/conveyor_switch_construct/C = I id = C.id @@ -312,7 +313,7 @@ return var/cdir = get_dir(A, user) if(A == user.loc) - user << "You cannot place a conveyor belt under yourself." + to_chat(user, "You cannot place a conveyor belt under yourself.") return var/obj/machinery/conveyor/C = new/obj/machinery/conveyor(A,cdir) C.id = id @@ -340,7 +341,7 @@ found = 1 break if(!found) - user << "\icon[src]The conveyor switch did not detect any linked conveyor belts in range." + to_chat(user, "\icon[src]The conveyor switch did not detect any linked conveyor belts in range.") return var/obj/machinery/conveyor_switch/NC = new/obj/machinery/conveyor_switch(A, id) transfer_fingerprints_to(NC) diff --git a/code/modules/recycling/disposal-construction.dm b/code/modules/recycling/disposal-construction.dm index f85a4dba89..11d37b1cae 100644 --- a/code/modules/recycling/disposal-construction.dm +++ b/code/modules/recycling/disposal-construction.dm @@ -20,7 +20,7 @@ /obj/structure/disposalconstruct/examine(mob/user) ..() - user << "Alt-click to rotate it clockwise." + to_chat(user, "Alt-click to rotate it clockwise.") /obj/structure/disposalconstruct/New(var/loc, var/pipe_type, var/direction = 1) ..(loc) @@ -102,7 +102,7 @@ return if(anchored) - usr << "You must unfasten the pipe before rotating it!" + to_chat(usr, "You must unfasten the pipe before rotating it!") return setDir(turn(dir, -90)) @@ -111,7 +111,7 @@ /obj/structure/disposalconstruct/AltClick(mob/user) ..() if(user.incapacitated()) - user << "You can't do that right now!" + to_chat(user, "You can't do that right now!") return if(!in_range(src, user)) return @@ -126,7 +126,7 @@ return if(anchored) - usr << "You must unfasten the pipe before flipping it!" + to_chat(usr, "You must unfasten the pipe before flipping it!") return setDir(turn(dir, 180)) @@ -185,11 +185,11 @@ var/turf/T = loc if(T.intact && isfloorturf(T)) - user << "You can only attach the [nicetype] if the floor plating is removed!" + to_chat(user, "You can only attach the [nicetype] if the floor plating is removed!") return if(!ispipe && iswallturf(T)) - user << "You can't build [nicetype]s on walls, only disposal pipes!" + to_chat(user, "You can't build [nicetype]s on walls, only disposal pipes!") return var/obj/structure/disposalpipe/CP = locate() in T @@ -200,15 +200,15 @@ if(ispipe) level = 2 density = 0 - user << "You detach the [nicetype] from the underfloor." + to_chat(user, "You detach the [nicetype] from the underfloor.") else if(!is_pipe()) // Disposal or outlet if(CP) // There's something there if(!istype(CP,/obj/structure/disposalpipe/trunk)) - user << "The [nicetype] requires a trunk underneath it in order to work!" + to_chat(user, "The [nicetype] requires a trunk underneath it in order to work!") return else // Nothing under, fuck. - user << "The [nicetype] requires a trunk underneath it in order to work!" + to_chat(user, "The [nicetype] requires a trunk underneath it in order to work!") return else if(CP) @@ -217,13 +217,13 @@ if(istype(CP, /obj/structure/disposalpipe/broken)) pdir = CP.dir if(pdir & dpdir) - user << "There is already a [nicetype] at that location!" + to_chat(user, "There is already a [nicetype] at that location!") return anchored = 1 if(ispipe) level = 1 // We don't want disposal bins to disappear under the floors density = 0 - user << "You attach the [nicetype] to the underfloor." + to_chat(user, "You attach the [nicetype] to the underfloor.") playsound(loc, I.usesound, 100, 1) update_icon() @@ -232,11 +232,11 @@ var/obj/item/weapon/weldingtool/W = I if(W.remove_fuel(0,user)) playsound(loc, 'sound/items/Welder2.ogg', 100, 1) - user << "You start welding the [nicetype] in place..." + to_chat(user, "You start welding the [nicetype] in place...") if(do_after(user, 8*I.toolspeed, target = src)) if(!loc || !W.isOn()) return - user << "The [nicetype] has been welded in place." + to_chat(user, "The [nicetype] has been welded in place.") update_icon() // TODO: Make this neat if(ispipe) @@ -264,7 +264,7 @@ return else - user << "You need to attach it to the plating first!" + to_chat(user, "You need to attach it to the plating first!") return /obj/structure/disposalconstruct/proc/is_pipe() diff --git a/code/modules/recycling/disposal-structures.dm b/code/modules/recycling/disposal-structures.dm index 856fbc90ef..1fd66eb1d2 100644 --- a/code/modules/recycling/disposal-structures.dm +++ b/code/modules/recycling/disposal-structures.dm @@ -303,12 +303,12 @@ if(can_be_deconstructed(user)) if(W.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) - user << "You start slicing the disposal pipe..." + to_chat(user, "You start slicing the disposal pipe...") // check if anything changed over 2 seconds if(do_after(user,30, target = src)) if(!src || !W.isOn()) return deconstruct() - user << "You slice the disposal pipe." + to_chat(user, "You slice the disposal pipe.") else return ..() @@ -423,11 +423,11 @@ /obj/structure/disposalpipe/sortjunction/examine(mob/user) ..() if(sortTypes.len>0) - user << "It is tagged with the following tags:" + to_chat(user, "It is tagged with the following tags:") for(var/t in sortTypes) - user << TAGGERLOCATIONS[t] + to_chat(user, TAGGERLOCATIONS[t]) else - user << "It has no sorting tags set." + to_chat(user, "It has no sorting tags set.") /obj/structure/disposalpipe/sortjunction/proc/updatedir() @@ -467,10 +467,10 @@ if(O.currTag > 0)// Tag set if(O.currTag in sortTypes) sortTypes -= O.currTag - user << "Removed \"[TAGGERLOCATIONS[O.currTag]]\" filter." + to_chat(user, "Removed \"[TAGGERLOCATIONS[O.currTag]]\" filter.") else sortTypes |= O.currTag - user << "Added \"[TAGGERLOCATIONS[O.currTag]]\" filter." + to_chat(user, "Added \"[TAGGERLOCATIONS[O.currTag]]\" filter.") playsound(src.loc, 'sound/machines/twobeep.ogg', 100, 1) else return ..() @@ -583,7 +583,7 @@ /obj/structure/disposalpipe/trunk/can_be_deconstructed(mob/user) if(linked) - user << "You need to deconstruct disposal machinery above this pipe!" + to_chat(user, "You need to deconstruct disposal machinery above this pipe!") else . = 1 @@ -695,20 +695,20 @@ if(mode==0) mode=1 playsound(src.loc, I.usesound, 50, 1) - user << "You remove the screws around the power connection." + to_chat(user, "You remove the screws around the power connection.") else if(mode==1) mode=0 playsound(src.loc, I.usesound, 50, 1) - user << "You attach the screws around the power connection." + to_chat(user, "You attach the screws around the power connection.") else if(istype(I,/obj/item/weapon/weldingtool) && mode==1) var/obj/item/weapon/weldingtool/W = I if(W.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) - user << "You start slicing the floorweld off \the [src]..." + to_chat(user, "You start slicing the floorweld off \the [src]...") if(do_after(user,20*I.toolspeed, target = src)) if(!src || !W.isOn()) return - user << "You slice the floorweld off \the [src]." + to_chat(user, "You slice the floorweld off \the [src].") stored.loc = loc src.transfer_fingerprints_to(stored) stored.update_icon() diff --git a/code/modules/recycling/disposal-unit.dm b/code/modules/recycling/disposal-unit.dm index 80c123397d..d8385fafcc 100644 --- a/code/modules/recycling/disposal-unit.dm +++ b/code/modules/recycling/disposal-unit.dm @@ -83,17 +83,17 @@ else mode = PRESSURE_OFF playsound(src.loc, I.usesound, 50, 1) - user << "You [mode == SCREWS_OUT ? "remove":"attach"] the screws around the power connection." + to_chat(user, "You [mode == SCREWS_OUT ? "remove":"attach"] the screws around the power connection.") return else if(istype(I,/obj/item/weapon/weldingtool) && mode == SCREWS_OUT) var/obj/item/weapon/weldingtool/W = I if(W.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) - user << "You start slicing the floorweld off \the [src]..." + to_chat(user, "You start slicing the floorweld off \the [src]...") if(do_after(user,20*I.toolspeed, target = src) && mode == SCREWS_OUT) if(!W.isOn()) return - user << "You slice the floorweld off \the [src]." + to_chat(user, "You slice the floorweld off \the [src].") deconstruct() return @@ -123,7 +123,7 @@ if(target.buckled || target.has_buckled_mobs()) return if(target.mob_size > MOB_SIZE_HUMAN) - user << "[target] doesn't fit inside [src]!" + to_chat(user, "[target] doesn't fit inside [src]!") return add_fingerprint(user) if(user == target) @@ -173,7 +173,7 @@ // human interact with machine /obj/machinery/disposal/attack_hand(mob/user) if(user && user.loc == src) - usr << "You cannot reach the controls from inside!" + to_chat(usr, "You cannot reach the controls from inside!") return interact(user, 0) @@ -275,7 +275,7 @@ /obj/machinery/disposal/bin/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/storage/bag/trash)) var/obj/item/weapon/storage/bag/trash/T = I - user << "You empty the bag." + to_chat(user, "You empty the bag.") for(var/obj/item/O in T.contents) T.remove_from_storage(O,src) T.update_icon() @@ -290,7 +290,7 @@ if(stat & BROKEN) return if(user.loc == src) - user << "You cannot reach the controls from inside!" + to_chat(user, "You cannot reach the controls from inside!") return ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) if(!ui) @@ -475,7 +475,7 @@ else if(istype(AM, /mob)) var/mob/M = AM if(prob(2)) // to prevent mobs being stuck in infinite loops - M << "You hit the edge of the chute." + to_chat(M, "You hit the edge of the chute.") return M.forceMove(src) flush() diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm index a280ee3259..29c746136a 100644 --- a/code/modules/recycling/sortingmachinery.dm +++ b/code/modules/recycling/sortingmachinery.dm @@ -28,14 +28,14 @@ if(sortTag != O.currTag) var/tag = uppertext(TAGGERLOCATIONS[O.currTag]) - user << "*[tag]*" + to_chat(user, "*[tag]*") sortTag = O.currTag playsound(loc, 'sound/machines/twobeep.ogg', 100, 1) else if(istype(W, /obj/item/weapon/pen)) var/str = copytext(sanitize(input(user,"Label text?","Set label","")),1,MAX_NAME_LEN) if(!str || !length(str)) - user << "Invalid text!" + to_chat(user, "Invalid text!") return user.visible_message("[user] labels [src] as [str].") name = "[name] ([str])" @@ -47,7 +47,7 @@ giftwrapped = 1 icon_state = "gift[icon_state]" else - user << "You need more paper!" + to_chat(user, "You need more paper!") else return ..() @@ -56,17 +56,17 @@ var/atom/movable/AM = loc //can't unwrap the wrapped container if it's inside something. AM.relay_container_resist(user, O) return - user << "You lean on the back of [O] and start pushing to rip the wrapping around it." + to_chat(user, "You lean on the back of [O] and start pushing to rip the wrapping around it.") if(do_after(user, 50, target = O)) if(!user || user.stat != CONSCIOUS || user.loc != O || O.loc != src ) return - user << "You successfully removed [O]'s wrapping !" + to_chat(user, "You successfully removed [O]'s wrapping !") O.loc = loc playsound(src.loc, 'sound/items/poster_ripped.ogg', 50, 1) qdel(src) else if(user.loc == src) //so we don't get the message if we resisted multiple times and succeeded. - user << "You fail to remove [O]'s wrapping!" + to_chat(user, "You fail to remove [O]'s wrapping!") /obj/item/smallDelivery @@ -109,14 +109,14 @@ if(sortTag != O.currTag) var/tag = uppertext(TAGGERLOCATIONS[O.currTag]) - user << "*[tag]*" + to_chat(user, "*[tag]*") sortTag = O.currTag playsound(loc, 'sound/machines/twobeep.ogg', 100, 1) else if(istype(W, /obj/item/weapon/pen)) var/str = copytext(sanitize(input(user,"Label text?","Set label","")),1,MAX_NAME_LEN) if(!str || !length(str)) - user << "Invalid text!" + to_chat(user, "Invalid text!") return user.visible_message("[user] labels [src] as [str].") name = "[name] ([str])" @@ -128,7 +128,7 @@ giftwrapped = 1 user.visible_message("[user] wraps the package in festive paper!") else - user << "You need more paper!" + to_chat(user, "You need more paper!") /obj/item/device/destTagger diff --git a/code/modules/research/circuitprinter.dm b/code/modules/research/circuitprinter.dm index ab930f1ff0..7b40e91bc8 100644 --- a/code/modules/research/circuitprinter.dm +++ b/code/modules/research/circuitprinter.dm @@ -98,7 +98,7 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). return if(!materials.has_space(sheet_material)) - user << "The [src.name]'s material bin is full! Please remove material before adding more." + to_chat(user, "The [src.name]'s material bin is full! Please remove material before adding more.") return 1 var/obj/item/stack/sheet/stack = O @@ -110,7 +110,7 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). return 1 else use_power(max(1000, (MINERAL_MATERIAL_AMOUNT*amount_inserted/10))) - user << "You add [amount_inserted] sheets to the [src.name]." + to_chat(user, "You add [amount_inserted] sheets to the [src.name].") updateUsrDialog() else if(istype(O, /obj/item/weapon/ore/bluespace_crystal)) //Bluespace crystals can be either a stack or an item @@ -122,17 +122,17 @@ using metal and glass, it uses glass and reagents (usually sulfuric acis). return if(!materials.has_space(bs_material)) - user << "The [src.name]'s material bin is full! Please remove material before adding more." + to_chat(user, "The [src.name]'s material bin is full! Please remove material before adding more.") return 1 materials.insert_item(O) use_power(MINERAL_MATERIAL_AMOUNT/10) - user << "You add [O] to the [src.name]." + to_chat(user, "You add [O] to the [src.name].") qdel(O) updateUsrDialog() else if(user.a_intent != INTENT_HARM) - user << "You cannot insert this item into the [name]!" + to_chat(user, "You cannot insert this item into the [name]!") return 1 else return 0 \ No newline at end of file diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index 0f32b1dcb9..ab2ee3e9b2 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -141,7 +141,7 @@ other types of metals and chemistry for reagents). id = "tech_disk_super_adv" req_tech = list("programming" = 6) build_type = PROTOLATHE - materials = list(MAT_METAL = 300, MAT_GLASS = 100, MAT_SILVER=100, MAT_GOLD=100) + materials = list(MAT_METAL = 300, MAT_GLASS = 100, MAT_SILVER=100, MAT_GOLD=100, MAT_BLUESPACE = 100) build_path = /obj/item/weapon/disk/tech_disk/super_adv category = list("Electronics") @@ -320,7 +320,7 @@ other types of metals and chemistry for reagents). id = "minerbag_holding" req_tech = list("bluespace" = 4, "materials" = 3, "engineering" = 4) build_type = PROTOLATHE - materials = list(MAT_GOLD = 250, MAT_URANIUM = 500, MAT_BLUESPACE = 1000) //quite cheap, for more convenience + materials = list(MAT_GOLD = 250, MAT_URANIUM = 500) //quite cheap, for more convenience build_path = /obj/item/weapon/storage/bag/ore/holding category = list("Bluespace Designs") @@ -389,16 +389,6 @@ other types of metals and chemistry for reagents). build_path = /obj/item/clothing/glasses/hud/diagnostic/night category = list("Equipment") -/datum/design/autoimplanter - name = "Autoimplanter" - desc = "An autoimplanter for implanting yourself without the need of another person." - id = "autoimplanter" - req_tech = list("materials" = 7, "engineering" = 7, "powerstorage" = 7, "plasmatech" = 7, "biotech" = 7) - build_type = PROTOLATHE - materials = list(MAT_METAL = 30000, MAT_GLASS = 30000, MAT_DIAMOND = 20000, MAT_PLASMA = 20000, MAT_TITANIUM = 20000) - build_path = /obj/item/device/autoimplanter - category = list("Medical Designs") - ///////////////////////////////////////// //////////////////Test/////////////////// ///////////////////////////////////////// @@ -490,7 +480,7 @@ other types of metals and chemistry for reagents). name = "Night Vision Goggles" desc = "Goggles that let you see through darkness unhindered." id = "night_visision_goggles" - req_tech = list("materials" = 4, "magnets" = 5, "plasmatech" = 5, "engineering" = 5) + req_tech = list("materials" = 4, "magnets" = 5, "plasmatech" = 4, "engineering" = 5) build_type = PROTOLATHE materials = list(MAT_METAL = 600, MAT_GLASS = 600, MAT_PLASMA = 350, MAT_URANIUM = 1000) build_path = /obj/item/clothing/glasses/night diff --git a/code/modules/research/designs/comp_board_designs.dm b/code/modules/research/designs/comp_board_designs.dm index f992871fc8..aa3af00dbe 100644 --- a/code/modules/research/designs/comp_board_designs.dm +++ b/code/modules/research/designs/comp_board_designs.dm @@ -267,3 +267,11 @@ req_tech = list("programming" = 1) build_path = /obj/item/weapon/circuitboard/computer/libraryconsole category = list("Computer Boards") + +/datum/design/board/apc_control + name = "Computer Design (APC Control)" + desc = "Allows for the construction of circuit boards used to build a new APC control console." + id = "apc_control" + req_tech = list("programming" = 4, "engineering" = 4, "powerstorage" = 5) + build_path = /obj/item/weapon/circuitboard/computer/apc_control + category = list("Computer Boards") diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm index bc3f2001e1..08c66925e7 100644 --- a/code/modules/research/designs/machine_designs.dm +++ b/code/modules/research/designs/machine_designs.dm @@ -293,7 +293,7 @@ /datum/design/board/monkey_recycler name = "Machine Design (Monkey Recycler Board)" desc = "The circuit board for a monkey recycler." - id = "smartfridge" + id = "monkey_recycler" req_tech = list("programming" = 1) build_path = /obj/item/weapon/circuitboard/machine/monkey_recycler category = list ("Misc. Machinery") diff --git a/code/modules/research/designs/mechfabricator_designs.dm b/code/modules/research/designs/mechfabricator_designs.dm index 75c237b2f6..6ce54089fe 100644 --- a/code/modules/research/designs/mechfabricator_designs.dm +++ b/code/modules/research/designs/mechfabricator_designs.dm @@ -759,7 +759,7 @@ construction_time = 100 build_path = /obj/item/device/assembly/flash/handheld category = list("Misc") -/* + /datum/design/flightsuit //Multi step build process/redo WIP name = "Flight Suit" desc = "A specialized hardsuit that is able to attach a flightpack and accessories.." @@ -792,4 +792,3 @@ construction_time = 100 category = list("Misc") req_tech = list("magnets" = 2, "combat" = 2, "plasmatech" = 3, "materials" = 3, "engineering" = 2, "powerstorage" = 2) -*/ \ No newline at end of file diff --git a/code/modules/research/destructive_analyzer.dm b/code/modules/research/destructive_analyzer.dm index 37469db4fc..8ec99809bf 100644 --- a/code/modules/research/destructive_analyzer.dm +++ b/code/modules/research/destructive_analyzer.dm @@ -50,19 +50,19 @@ Note: Must be placed within 3 tiles of the R&D Console if(!is_insertion_ready(user)) return if(!O.origin_tech) - user << "This doesn't seem to have a tech origin!" + to_chat(user, "This doesn't seem to have a tech origin!") return var/list/temp_tech = ConvertReqString2List(O.origin_tech) if (temp_tech.len == 0) - user << "You cannot deconstruct this item!" + to_chat(user, "You cannot deconstruct this item!") return if(!user.drop_item()) - user << "\The [O] is stuck to your hand, you cannot put it in the [src.name]!" + to_chat(user, "\The [O] is stuck to your hand, you cannot put it in the [src.name]!") return busy = 1 loaded_item = O O.forceMove(src) - user << "You add the [O.name] to the [src.name]!" + to_chat(user, "You add the [O.name] to the [src.name]!") flick("d_analyzer_la", src) spawn(10) icon_state = "d_analyzer_l" diff --git a/code/modules/research/experimentor.dm b/code/modules/research/experimentor.dm index 528fd77298..bd2e617372 100644 --- a/code/modules/research/experimentor.dm +++ b/code/modules/research/experimentor.dm @@ -120,20 +120,20 @@ if(!is_insertion_ready(user)) return if(!checkCircumstances(O)) - user << "The [O] is not yet valid for the [src] and must be completed!" + to_chat(user, "The [O] is not yet valid for the [src] and must be completed!") return if(!O.origin_tech) - user << "This doesn't seem to have a tech origin!" + to_chat(user, "This doesn't seem to have a tech origin!") return var/list/temp_tech = ConvertReqString2List(O.origin_tech) if (temp_tech.len == 0) - user << "You cannot experiment on this item!" + to_chat(user, "You cannot experiment on this item!") return if(!user.drop_item()) return loaded_item = O O.loc = src - user << "You add the [O.name] to the machine." + to_chat(user, "You add the [O.name] to the machine.") flick("h_lathe_load", src) @@ -484,7 +484,7 @@ if(globalMalf > 36 && globalMalf < 50) visible_message("Experimentor draws the life essence of those nearby!") for(var/mob/living/m in view(4,src)) - m << "You feel your flesh being torn from you, mists of blood drifting to [src]!" + to_chat(m, "You feel your flesh being torn from you, mists of blood drifting to [src]!") m.apply_damage(50, BRUTE, "chest") investigate_log("Experimentor has taken 50 brute a blood sacrifice from [m]", "experimentor") if(globalMalf > 51 && globalMalf < 75) @@ -528,15 +528,15 @@ src.updateUsrDialog() else if(recentlyExperimented) - usr << "[src] has been used too recently!" + to_chat(usr, "[src] has been used too recently!") return else if(!loaded_item) updateUsrDialog() //Set the interface to unloaded mode - usr << "[src] is not currently loaded!" + to_chat(usr, "[src] is not currently loaded!") return else if(!process || process != loaded_item) //Interface exploit protection (such as hrefs or swapping items with interface set to old item) updateUsrDialog() //Refresh interface to update interface hrefs - usr << "Interface failure detected in [src]. Please try again." + to_chat(usr, "Interface failure detected in [src]. Please try again.") return var/dotype if(text2num(scantype) == SCANTYPE_DISCOVER) @@ -607,7 +607,7 @@ /obj/item/weapon/relic/attack_self(mob/user) if(revealed) if(cooldown) - user << "[src] does not react!" + to_chat(user, "[src] does not react!") return else if(src.loc == user) cooldown = TRUE @@ -615,7 +615,7 @@ spawn(cooldownMax) cooldown = FALSE else - user << "You aren't quite sure what to do with this yet." + to_chat(user, "You aren't quite sure what to do with this yet.") //////////////// RELIC PROCS ///////////////////////////// @@ -645,7 +645,7 @@ /obj/item/weapon/relic/proc/petSpray(mob/user) var/message = "[src] begans to shake, and in the distance the sound of rampaging animals arises!" visible_message(message) - user << message + to_chat(user, message) var/animals = rand(1,25) var/counter var/list/valid_animals = list(/mob/living/simple_animal/parrot,/mob/living/simple_animal/butterfly,/mob/living/simple_animal/pet/cat,/mob/living/simple_animal/pet/dog/corgi,/mob/living/simple_animal/crab,/mob/living/simple_animal/pet/fox,/mob/living/simple_animal/hostile/lizard,/mob/living/simple_animal/mouse,/mob/living/simple_animal/pet/dog/pug,/mob/living/simple_animal/hostile/bear,/mob/living/simple_animal/hostile/poison/bees,/mob/living/simple_animal/hostile/carp) @@ -654,7 +654,7 @@ new mobType(get_turf(src)) warn_admins(user, "Mass Mob Spawn") if(prob(60)) - user << "[src] falls apart!" + to_chat(user, "[src] falls apart!") qdel(src) /obj/item/weapon/relic/proc/rapidDupe(mob/user) @@ -679,7 +679,7 @@ warn_admins(user, "Rapid duplicator", 0) /obj/item/weapon/relic/proc/explode(mob/user) - user << "[src] begins to heat up!" + to_chat(user, "[src] begins to heat up!") spawn(rand(35,100)) if(src.loc == user) visible_message("The [src]'s top opens, releasing a powerful blast!") @@ -688,7 +688,7 @@ qdel(src) //Comment this line to produce a light grenade (the bomb that keeps on exploding when used)!! /obj/item/weapon/relic/proc/teleport(mob/user) - user << "The [src] begins to vibrate!" + to_chat(user, "The [src] begins to vibrate!") spawn(rand(10,30)) var/turf/userturf = get_turf(user) if(src.loc == user && userturf.z != ZLEVEL_CENTCOM) //Because Nuke Ops bringing this back on their shuttle, then looting the ERT area is 2fun4you! diff --git a/code/modules/research/message_server.dm b/code/modules/research/message_server.dm index 72999fe375..064fef483b 100644 --- a/code/modules/research/message_server.dm +++ b/code/modules/research/message_server.dm @@ -114,7 +114,7 @@ var/global/list/obj/machinery/message_server/message_servers = list() rc_msgs += new/datum/data_rc_msg(recipient,sender,message,stamp,id_auth) /obj/machinery/message_server/attack_hand(mob/user) - user << "You toggle PDA message passing from [active ? "On" : "Off"] to [active ? "Off" : "On"]" + to_chat(user, "You toggle PDA message passing from [active ? "On" : "Off"] to [active ? "Off" : "On"]") active = !active update_icon() diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm index cdd410edac..f6cbe90299 100644 --- a/code/modules/research/protolathe.dm +++ b/code/modules/research/protolathe.dm @@ -98,7 +98,7 @@ Note: Must be placed west/left of and R&D console to function. return if(!materials.has_space(sheet_material)) - user << "The [src.name]'s material bin is full! Please remove material before adding more." + to_chat(user, "The [src.name]'s material bin is full! Please remove material before adding more.") return 1 var/obj/item/stack/sheet/stack = O @@ -112,7 +112,7 @@ Note: Must be placed west/left of and R&D console to function. var/stack_name = stack.name busy = TRUE use_power(max(1000, (MINERAL_MATERIAL_AMOUNT*amount_inserted/10))) - user << "You add [amount_inserted] sheets to the [src.name]." + to_chat(user, "You add [amount_inserted] sheets to the [src.name].") add_overlay("protolathe_[stack_name]") sleep(10) cut_overlay("protolathe_[stack_name]") @@ -128,13 +128,13 @@ Note: Must be placed west/left of and R&D console to function. return if(!materials.has_space(bs_material)) - user << "The [src.name]'s material bin is full! Please remove material before adding more." + to_chat(user, "The [src.name]'s material bin is full! Please remove material before adding more.") return 1 materials.insert_item(O) busy = TRUE use_power(MINERAL_MATERIAL_AMOUNT/10) - user << "You add [O] to the [src.name]." + to_chat(user, "You add [O] to the [src.name].") qdel(O) add_overlay("protolathe_bluespace") sleep(10) @@ -143,7 +143,7 @@ Note: Must be placed west/left of and R&D console to function. updateUsrDialog() else if(user.a_intent != INTENT_HARM) - user << "You cannot insert this item into the [name]!" + to_chat(user, "You cannot insert this item into the [name]!") return 1 else return 0 diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm index 000fd3e562..4116be3463 100644 --- a/code/modules/research/rdconsole.dm +++ b/code/modules/research/rdconsole.dm @@ -117,7 +117,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, //Loading a disk into it. if(istype(D, /obj/item/weapon/disk)) if(t_disk || d_disk) - user << "A disk is already loaded into the machine." + to_chat(user, "A disk is already loaded into the machine.") return if(istype(D, /obj/item/weapon/disk/tech_disk)) @@ -125,12 +125,12 @@ won't update every console in existence) but it's more of a hassle to do. Also, else if (istype(D, /obj/item/weapon/disk/design_disk)) d_disk = D else - user << "Machine cannot accept disks in that format." + to_chat(user, "Machine cannot accept disks in that format.") return if(!user.drop_item()) return D.loc = src - user << "You add the disk to the machine!" + to_chat(user, "You add the disk to the machine!") else if(!(linked_destroy && linked_destroy.busy) && !(linked_lathe && linked_lathe.busy) && !(linked_imprinter && linked_imprinter.busy)) . = ..() updateUsrDialog() @@ -153,7 +153,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, if(!emagged) playsound(src.loc, 'sound/effects/sparks4.ogg', 75, 1) emagged = 1 - user << "You disable the security protocols" + to_chat(user, "You disable the security protocols") /obj/machinery/computer/rdconsole/Topic(href, href_list) if(..()) @@ -273,7 +273,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, else if(href_list["eject_item"]) //Eject the item inside the destructive analyzer. if(linked_destroy) if(linked_destroy.busy) - usr << "The destructive analyzer is busy at the moment." + to_chat(usr, "The destructive analyzer is busy at the moment.") else if(linked_destroy.loaded_item) linked_destroy.loaded_item.forceMove(linked_destroy.loc) @@ -340,12 +340,12 @@ won't update every console in existence) but it's more of a hassle to do. Also, if(src.allowed(usr)) screen = text2num(href_list["lock"]) else - usr << "Unauthorized Access." + to_chat(usr, "Unauthorized Access.") else if(href_list["sync"]) //Sync the research holder with all the R&D consoles in the game that aren't sync protected. screen = 0.0 if(!sync) - usr << "You must connect to the network first!" + to_chat(usr, "You must connect to the network first!") else griefProtection() //Putting this here because I dont trust the sync process spawn(30) @@ -392,7 +392,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, return if(linked_lathe.busy) - usr << "Protolathe is busy at the moment." + to_chat(usr, "Protolathe is busy at the moment.") return var/coeff = linked_lathe.efficiency_coeff @@ -469,7 +469,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, return if(linked_imprinter.busy) - usr << "Circuit Imprinter is busy at the moment." + to_chat(usr, "Circuit Imprinter is busy at the moment.") updateUsrDialog() return diff --git a/code/modules/research/rdmachines.dm b/code/modules/research/rdmachines.dm index 18421048b6..741c13a14a 100644 --- a/code/modules/research/rdmachines.dm +++ b/code/modules/research/rdmachines.dm @@ -77,7 +77,7 @@ //whether the machine can have an item inserted in its current state. /obj/machinery/r_n_d/proc/is_insertion_ready(mob/user) if(panel_open) - user << "You can't load the [src.name] while it's opened!" + to_chat(user, "You can't load the [src.name] while it's opened!") return if (disabled) return @@ -87,19 +87,19 @@ console.SyncRDevices() if(!linked_console) - user << "The [name] must be linked to an R&D console first!" + to_chat(user, "The [name] must be linked to an R&D console first!") return if (busy) - user << "The [src.name] is busy right now." + to_chat(user, "The [src.name] is busy right now.") return if(stat & BROKEN) - user << "The [src.name] is broken." + to_chat(user, "The [src.name] is broken.") return if(stat & NOPOWER) - user << "The [src.name] has no power." + to_chat(user, "The [src.name] has no power.") return if(loaded_item) - user << "The [src] is already loaded." + to_chat(user, "The [src] is already loaded.") return return 1 diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index 237344366c..03613990f5 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -185,7 +185,7 @@ add_fingerprint(usr) usr.set_machine(src) if(!src.allowed(usr) && !emagged) - usr << "You do not have the required access level." + to_chat(usr, "You do not have the required access level.") return if(href_list["main"]) @@ -319,7 +319,7 @@ if(!emagged) playsound(src.loc, 'sound/effects/sparks4.ogg', 75, 1) emagged = 1 - user << "You you disable the security protocols." + to_chat(user, "You you disable the security protocols.") /obj/machinery/r_n_d/server/robotics name = "Robotics R&D Server" diff --git a/code/modules/research/stock_parts.dm b/code/modules/research/stock_parts.dm index 965ca9fc20..74b5bc0121 100644 --- a/code/modules/research/stock_parts.dm +++ b/code/modules/research/stock_parts.dm @@ -1,4 +1,6 @@ -/*Power cells are in code\modules\power\cell.dm*/ +/*Power cells are in code\modules\power\cell.dm + +If you create T5+ please take a pass at gene_modder.dm [L40]. Max_values MUST fit with the clamp to not confuse the user or cause possible exploits.*/ /obj/item/weapon/storage/part_replacer name = "rapid part exchange device" desc = "Special mechanical module made to store, sort, and apply standard machine parts." @@ -47,7 +49,7 @@ play_rped_sound() user.Beam(dest_object,icon_state="rped_upgrade",time=5) return 1 - user << "The [src.name] buzzes." + to_chat(user, "The [src.name] buzzes.") playsound(src, 'sound/machines/buzz-sigh.ogg', 50, 0) return 0 diff --git a/code/modules/research/xenobiology/xenobio_camera.dm b/code/modules/research/xenobiology/xenobio_camera.dm index edf7986b88..35895dfdac 100644 --- a/code/modules/research/xenobiology/xenobio_camera.dm +++ b/code/modules/research/xenobiology/xenobio_camera.dm @@ -5,7 +5,7 @@ icon_state = "camera_target" var/allowed_area = null -/mob/camera/aiEye/remote/xenobio/New(loc) +/mob/camera/aiEye/remote/xenobio/Initialize() var/area/A = get_area(loc) allowed_area = A.name ..() @@ -35,6 +35,8 @@ icon_screen = "slime_comp" icon_keyboard = "rd_key" + light_color = LIGHT_COLOR_PINK + /obj/machinery/computer/camera_advanced/xenobio/CreateEye() eyeobj = new /mob/camera/aiEye/remote/xenobio(get_turf(src)) eyeobj.origin = src @@ -42,7 +44,7 @@ eyeobj.icon = 'icons/obj/abductor.dmi' eyeobj.icon_state = "camera_target" -/obj/machinery/computer/camera_advanced/xenobio/GrantActions(mob/living/carbon/user) +/obj/machinery/computer/camera_advanced/xenobio/GrantActions(mob/living/user) off_action.target = user off_action.Grant(user) @@ -61,16 +63,10 @@ monkey_recycle_action.target = src monkey_recycle_action.Grant(user) - -/obj/machinery/computer/camera_advanced/xenobio/attack_hand(mob/user) - if(!ishuman(user)) //AIs using it might be weird - return - return ..() - /obj/machinery/computer/camera_advanced/xenobio/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/monkeycube)) monkeys++ - user << "You feed [O] to [src]. It now has [monkeys] monkey cubes stored." + to_chat(user, "You feed [O] to [src]. It now has [monkeys] monkey cubes stored.") user.drop_item() qdel(O) return @@ -83,14 +79,14 @@ monkeys++ qdel(G) if (loaded) - user << "You fill [src] with the monkey cubes stored in [O]. [src] now has [monkeys] monkey cubes stored." + to_chat(user, "You fill [src] with the monkey cubes stored in [O]. [src] now has [monkeys] monkey cubes stored.") return ..() /datum/action/innate/camera_off/xenobio/Activate() - if(!target || !ishuman(target)) + if(!target || !isliving(target)) return - var/mob/living/carbon/C = target + var/mob/living/C = target var/mob/camera/aiEye/remote/xenobio/remote_eye = C.remote_control var/obj/machinery/computer/camera_advanced/xenobio/origin = remote_eye.origin origin.current_user = null @@ -116,9 +112,9 @@ button_icon_state = "slime_down" /datum/action/innate/slime_place/Activate() - if(!target || !ishuman(owner)) + if(!target || !isliving(owner)) return - var/mob/living/carbon/human/C = owner + var/mob/living/C = owner var/mob/camera/aiEye/remote/xenobio/remote_eye = C.remote_control var/obj/machinery/computer/camera_advanced/xenobio/X = target @@ -128,16 +124,16 @@ S.visible_message("[S] warps in!") X.stored_slimes -= S else - owner << "Target is not near a camera. Cannot proceed." + to_chat(owner, "Target is not near a camera. Cannot proceed.") /datum/action/innate/slime_pick_up name = "Pick up Slime" button_icon_state = "slime_up" /datum/action/innate/slime_pick_up/Activate() - if(!target || !ishuman(owner)) + if(!target || !isliving(owner)) return - var/mob/living/carbon/human/C = owner + var/mob/living/C = owner var/mob/camera/aiEye/remote/xenobio/remote_eye = C.remote_control var/obj/machinery/computer/camera_advanced/xenobio/X = target @@ -152,7 +148,7 @@ S.loc = X X.stored_slimes += S else - owner << "Target is not near a camera. Cannot proceed." + to_chat(owner, "Target is not near a camera. Cannot proceed.") /datum/action/innate/feed_slime @@ -160,9 +156,9 @@ button_icon_state = "monkey_down" /datum/action/innate/feed_slime/Activate() - if(!target || !ishuman(owner)) + if(!target || !isliving(owner)) return - var/mob/living/carbon/human/C = owner + var/mob/living/C = owner var/mob/camera/aiEye/remote/xenobio/remote_eye = C.remote_control var/obj/machinery/computer/camera_advanced/xenobio/X = target @@ -171,9 +167,9 @@ var/mob/living/carbon/monkey/food = new /mob/living/carbon/monkey(remote_eye.loc) food.LAssailant = C X.monkeys -- - owner << "[X] now has [X.monkeys] monkeys left." + to_chat(owner, "[X] now has [X.monkeys] monkeys left.") else - owner << "Target is not near a camera. Cannot proceed." + to_chat(owner, "Target is not near a camera. Cannot proceed.") /datum/action/innate/monkey_recycle @@ -181,9 +177,9 @@ button_icon_state = "monkey_up" /datum/action/innate/monkey_recycle/Activate() - if(!target || !ishuman(owner)) + if(!target || !isliving(owner)) return - var/mob/living/carbon/human/C = owner + var/mob/living/C = owner var/mob/camera/aiEye/remote/xenobio/remote_eye = C.remote_control var/obj/machinery/computer/camera_advanced/xenobio/X = target @@ -194,4 +190,4 @@ X.monkeys = round(X.monkeys + 0.2,0.1) qdel(M) else - owner << "Target is not near a camera. Cannot proceed." + to_chat(owner, "Target is not near a camera. Cannot proceed.") diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 7ca2aa66f7..df28cca78f 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -18,7 +18,7 @@ /obj/item/slime_extract/attackby(obj/item/O, mob/user) if(istype(O, /obj/item/slimepotion/enhancer)) if(Uses >= 5) - user << "You cannot enhance this extract further!" + to_chat(user, "You cannot enhance this extract further!") return ..() user <<"You apply the enhancer to the slime extract. It may now be reused one more time." Uses++ @@ -127,7 +127,7 @@ /obj/item/slimepotion/afterattack(obj/item/weapon/reagent_containers/target, mob/user , proximity) if (istype(target)) - user << "You cannot transfer [src] to [target]! It appears the potion must be given directly to a slime to absorb." // le fluff faec + to_chat(user, "You cannot transfer [src] to [target]! It appears the potion must be given directly to a slime to absorb." ) return /obj/item/slimepotion/docility @@ -138,10 +138,10 @@ /obj/item/slimepotion/docility/attack(mob/living/simple_animal/slime/M, mob/user) if(!isslime(M)) - user << "The potion only works on slimes!" + to_chat(user, "The potion only works on slimes!") return ..() if(M.stat) - user << "The slime is dead!" + to_chat(user, "The slime is dead!") return ..() M.docile = 1 @@ -170,19 +170,19 @@ if(being_used || !ismob(M)) return if(!isanimal(M) || M.ckey) //only works on animals that aren't player controlled - user << "[M] is already too intelligent for this to work!" + to_chat(user, "[M] is already too intelligent for this to work!") return ..() if(M.stat) - user << "[M] is dead!" + to_chat(user, "[M] is dead!") return ..() var/mob/living/simple_animal/SM = M if(SM.sentience_type != sentience_type) - user << "The potion won't work on [SM]." + to_chat(user, "The potion won't work on [SM].") return ..() - user << "You offer the sentience potion to [SM]..." + to_chat(user, "You offer the sentience potion to [SM]...") being_used = 1 var/list/candidates = pollCandidatesForMob("Do you want to play as [SM.name]?", ROLE_ALIEN, null, ROLE_ALIEN, 50, SM, POLL_IGNORE_SENTIENCE_POTION) // see poll_ignore.dm @@ -194,12 +194,12 @@ SM.languages_understood |= HUMAN SM.mind.enslave_mind_to_creator(user) SM.sentience_act() - SM << "All at once it makes sense: you know what you are and who you are! Self awareness is yours!" - SM << "You are grateful to be self aware and owe [user] a great debt. Serve [user], and assist [user.p_them()] in completing [user.p_their()] goals at any cost." - user << "[SM] accepts the potion and suddenly becomes attentive and aware. It worked!" + to_chat(SM, "All at once it makes sense: you know what you are and who you are! Self awareness is yours!") + to_chat(SM, "You are grateful to be self aware and owe [user] a great debt. Serve [user], and assist [user.p_them()] in completing [user.p_their()] goals at any cost.") + to_chat(user, "[SM] accepts the potion and suddenly becomes attentive and aware. It worked!") qdel(src) else - user << "[SM] looks interested for a moment, but then looks back down. Maybe you should try again later." + to_chat(user, "[SM] looks interested for a moment, but then looks back down. Maybe you should try again later.") being_used = 0 ..() @@ -216,17 +216,17 @@ if(prompted || !ismob(M)) return if(!isanimal(M) || M.ckey) //much like sentience, these will not work on something that is already player controlled - user << "[M] already has a higher consciousness!" + to_chat(user, "[M] already has a higher consciousness!") return ..() if(M.stat) - user << "[M] is dead!" + to_chat(user, "[M] is dead!") return ..() var/mob/living/simple_animal/SM = M if(SM.sentience_type != animal_type) - user << "You cannot transfer your consciousness to [SM]." //no controlling machines + to_chat(user, "You cannot transfer your consciousness to [SM]." ) return ..() if(jobban_isbanned(user, ROLE_ALIEN)) //ideally sentience and trasnference potions should be their own unique role. - user << "Your mind goes blank as you attempt to use the potion." + to_chat(user, "Your mind goes blank as you attempt to use the potion.") return prompted = 1 @@ -234,7 +234,7 @@ prompted = 0 return - user << "You drink the potion then place your hands on [SM]..." + to_chat(user, "You drink the potion then place your hands on [SM]...") user.mind.transfer_to(SM) @@ -243,8 +243,8 @@ SM.faction = user.faction.Copy() SM.sentience_act() //Same deal here as with sentience user.death() - SM << "In a quick flash, you feel your consciousness flow into [SM]!" - SM << "You are now [SM]. Your allegiances, alliances, and role is still the same as it was prior to consciousness transfer!" + to_chat(SM, "In a quick flash, you feel your consciousness flow into [SM]!") + to_chat(SM, "You are now [SM]. Your allegiances, alliances, and role is still the same as it was prior to consciousness transfer!") SM.name = "[SM.name] as [user.real_name]" qdel(src) @@ -256,13 +256,13 @@ /obj/item/slimepotion/steroid/attack(mob/living/simple_animal/slime/M, mob/user) if(!isslime(M))//If target is not a slime. - user << "The steroid only works on baby slimes!" + to_chat(user, "The steroid only works on baby slimes!") return ..() if(M.is_adult) //Can't steroidify adults - user << "Only baby slimes can use the steroid!" + to_chat(user, "Only baby slimes can use the steroid!") return ..() if(M.stat) - user << "The slime is dead!" + to_chat(user, "The slime is dead!") return ..() if(M.cores >= 5) user <<"The slime already has the maximum amount of extract!" @@ -286,10 +286,10 @@ /obj/item/slimepotion/stabilizer/attack(mob/living/simple_animal/slime/M, mob/user) if(!isslime(M)) - user << "The stabilizer only works on slimes!" + to_chat(user, "The stabilizer only works on slimes!") return ..() if(M.stat) - user << "The slime is dead!" + to_chat(user, "The slime is dead!") return ..() if(M.mutation_chance == 0) user <<"The slime already has no chance of mutating!" @@ -307,13 +307,13 @@ /obj/item/slimepotion/mutator/attack(mob/living/simple_animal/slime/M, mob/user) if(!isslime(M)) - user << "The mutator only works on slimes!" + to_chat(user, "The mutator only works on slimes!") return ..() if(M.stat) - user << "The slime is dead!" + to_chat(user, "The slime is dead!") return ..() if(M.mutator_used) - user << "This slime has already consumed a mutator, any more would be far too unstable!" + to_chat(user, "This slime has already consumed a mutator, any more would be far too unstable!") return ..() if(M.mutation_chance == 100) user <<"The slime is already guaranteed to mutate!" @@ -334,12 +334,12 @@ /obj/item/slimepotion/speed/afterattack(obj/C, mob/user) ..() if(!istype(C)) - user << "The potion can only be used on items or vehicles!" + to_chat(user, "The potion can only be used on items or vehicles!") return if(istype(C, /obj/item)) var/obj/item/I = C if(I.slowdown <= 0) - user << "The [C] can't be made any faster!" + to_chat(user, "The [C] can't be made any faster!") return ..() I.slowdown = 0 @@ -348,7 +348,7 @@ var/datum/riding/R = V.riding_datum if(V.riding_datum) if(R.vehicle_move_delay <= 0 ) - user << "The [C] can't be made any faster!" + to_chat(user, "The [C] can't be made any faster!") return ..() R.vehicle_move_delay = 0 @@ -372,10 +372,10 @@ qdel(src) return if(!istype(C)) - user << "The potion can only be used on clothing!" + to_chat(user, "The potion can only be used on clothing!") return if(C.max_heat_protection_temperature == FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT) - user << "The [C] is already fireproof!" + to_chat(user, "The [C] is already fireproof!") return ..() user <<"You slather the blue gunk over the [C], fireproofing it." C.name = "fireproofed [C.name]" @@ -396,11 +396,11 @@ /obj/item/slimepotion/genderchange/attack(mob/living/L, mob/user) if(!istype(L) || L.stat == DEAD) - user << "The potion can only be used on living things!" + to_chat(user, "The potion can only be used on living things!") return if(L.gender != MALE && L.gender != FEMALE) - user << "The potion can only be used on gendered things!" + to_chat(user, "The potion can only be used on gendered things!") return if(L.gender == MALE) @@ -518,7 +518,7 @@ ghost = O break if(!ghost) - user << "The rune fizzles uselessly! There is no spirit nearby." + to_chat(user, "The rune fizzles uselessly! There is no spirit nearby.") return var/mob/living/carbon/human/G = new /mob/living/carbon/human G.set_species(/datum/species/golem/adamantine) @@ -529,8 +529,8 @@ G.dna.species.auto_equip(G) G.loc = src.loc G.key = ghost.key - G << "You are an adamantine golem. You move slowly, but are highly resistant to heat and cold as well as blunt trauma. You are unable to wear clothes, but can still use most tools. \ - Serve [user], and assist [user.p_them()] in completing their goals at any cost." + to_chat(G, "You are an adamantine golem. You move slowly, but are highly resistant to heat and cold as well as blunt trauma. You are unable to wear clothes, but can still use most tools. \ + Serve [user], and assist [user.p_them()] in completing their goals at any cost.") G.mind.store_memory("Serve [user.real_name], your creator.") G.mind.enslave_mind_to_creator(user) diff --git a/code/modules/ruins/lavaland_ruin_code.dm b/code/modules/ruins/lavaland_ruin_code.dm index 8276287565..bf2da8aba2 100644 --- a/code/modules/ruins/lavaland_ruin_code.dm +++ b/code/modules/ruins/lavaland_ruin_code.dm @@ -98,15 +98,18 @@ if(istype(O, /obj/item/stack/sheet/bluespace_crystal)) species = /datum/species/golem/bluespace + if(istype(O, /obj/item/stack/sheet/runed_metal)) + species = /datum/species/golem/runic + if(species) if(O.use(10)) - user << "You finish up the golem shell with ten sheets of [O]." + to_chat(user, "You finish up the golem shell with ten sheets of [O].") new shell_type(get_turf(src), species, has_owner, user) qdel(src) else - user << "You need at least ten sheets to finish a golem." + to_chat(user, "You need at least ten sheets to finish a golem.") else - user << "You can't build a golem out of this kind of material." + to_chat(user, "You can't build a golem out of this kind of material.") //made with xenobiology, the golem obeys its creator /obj/item/golem_shell/artificial @@ -132,7 +135,7 @@ has_id = 1 flavour_text = "You are a syndicate agent, employed in a top secret research facility developing biological weapons. Unfortunatley, your hated enemy, Nanotrasen, has begun mining in this sector. Continue your research as best you can, and try to keep a low profile. Do not abandon the base without good cause. The base is rigged with explosives should the worst happen, do not let the base fall into enemy hands!
    " id_access_list = list(access_syndicate) - + /obj/effect/mob_spawn/human/lavaland_syndicate/comms name = "Syndicate Comms Agent" r_hand = /obj/item/weapon/melee/energy/sword/saber diff --git a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm index ec40df76a4..86e9afe420 100644 --- a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm +++ b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm @@ -11,7 +11,7 @@ bound_height = 96 pixel_x = -32 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - luminosity = 1 + light_range = 1 var/boss = FALSE var/is_anyone_home = FALSE @@ -28,7 +28,7 @@ is_anyone_home = TRUE sleep(50) if(boss) - user << "There's no response." + to_chat(user, "There's no response.") is_anyone_home = FALSE return 0 boss = TRUE @@ -44,7 +44,7 @@ log_game("[key_name(user)] summoned Legion.") for(var/mob/M in player_list) if(M.z == z) - M << "Discordant whispers flood your mind in a thousand voices. Each one speaks your name, over and over. Something horrible has come." + to_chat(M, "Discordant whispers flood your mind in a thousand voices. Each one speaks your name, over and over. Something horrible has come.") M << 'sound/creatures/legion_spawn.ogg' flash_color(M, flash_color = "#FF0000", flash_time = 50) var/image/door_overlay = image('icons/effects/effects.dmi', "legiondoor") diff --git a/code/modules/ruins/objects_and_mobs/sin_ruins.dm b/code/modules/ruins/objects_and_mobs/sin_ruins.dm index a5d7a88afb..fc23f92177 100644 --- a/code/modules/ruins/objects_and_mobs/sin_ruins.dm +++ b/code/modules/ruins/objects_and_mobs/sin_ruins.dm @@ -17,7 +17,7 @@ in_use = TRUE user.adjustCloneLoss(20) if(user.stat) - user << "No... just one more try..." + to_chat(user, "No... just one more try...") user.gib() else user.visible_message("[user] pulls [src]'s lever with a glint in [user.p_their()] eyes!", "You feel a draining as you pull the lever, but you \ @@ -31,11 +31,11 @@ playsound(src, 'sound/lavaland/cursed_slot_machine_jackpot.ogg', 50, 0) new/obj/structure/cursed_money(get_turf(src)) if(user) - user << "You've hit jackpot. Laughter echoes around you as your reward appears in the machine's place." + to_chat(user, "You've hit jackpot. Laughter echoes around you as your reward appears in the machine's place.") qdel(src) else if(user) - user << "Fucking machine! Must be rigged. Still... one more try couldn't hurt, right?" + to_chat(user, "Fucking machine! Must be rigged. Still... one more try couldn't hurt, right?") /obj/structure/cursed_money name = "bag of money" @@ -85,7 +85,7 @@ H.visible_message("[H] pushes through [src]!", "You've seen and eaten worse than this.") return 1 else - H << "You're repulsed by even looking at [src]. Only a pig could force themselves to go through it." + to_chat(H, "You're repulsed by even looking at [src]. Only a pig could force themselves to go through it.") else return 0 diff --git a/code/modules/security_levels/keycard_authentication.dm b/code/modules/security_levels/keycard_authentication.dm index ef42a5c8b5..0c907ac30f 100644 --- a/code/modules/security_levels/keycard_authentication.dm +++ b/code/modules/security_levels/keycard_authentication.dm @@ -46,7 +46,7 @@ var/datum/events/keycard_events = new() if(isanimal(user)) var/mob/living/simple_animal/A = user if(!A.dextrous) - user << "You are too primitive to use this device!" + to_chat(user, "You are too primitive to use this device!") return UI_CLOSE return ..() diff --git a/code/modules/shuttle/arrivals.dm b/code/modules/shuttle/arrivals.dm new file mode 100644 index 0000000000..42248f1b19 --- /dev/null +++ b/code/modules/shuttle/arrivals.dm @@ -0,0 +1,194 @@ +/obj/docking_port/mobile/arrivals + name = "arrivals shuttle" + id = "arrivals" + + dwidth = 3 + width = 7 + height = 15 + dir = WEST + port_angle = 180 + + callTime = INFINITY + ignitionTime = 50 + + roundstart_move = TRUE //force a call to dockRoundstart + + var/sound_played + var/damaged //too damaged to undock? + var/list/areas //areas in our shuttle + var/list/queued_announces //people coming in that we have to announce + var/obj/machinery/requests_console/console + var/force_depart = FALSE + var/perma_docked = FALSE //highlander with RESPAWN??? OH GOD!!! + +/obj/docking_port/mobile/arrivals/Initialize(mapload) + if(mapload) + return TRUE //late initialize to make sure the latejoin list is populated + + preferred_direction = dir + + if(SSshuttle.arrivals) + WARNING("More than one arrivals docking_port placed on map!") + qdel(src) + return + + SSshuttle.arrivals = src + + ..() + + areas = list() + + var/list/new_latejoin = list() + for(var/area/shuttle/arrival/A in sortedAreas) + for(var/obj/structure/chair/C in A) + new_latejoin += C + if(!console) + console = locate(/obj/machinery/requests_console) in A + areas += A + + if(latejoin.len) + WARNING("Map contains predefined latejoin spawn points and an arrivals shuttle. Using the arrivals shuttle.") + + if(!new_latejoin.len) + WARNING("Arrivals shuttle contains no chairs for spawn points. Reverting to latejoin landmarks.") + if(!latejoin.len) + WARNING("No latejoin landmarks exist. Players will spawn unbuckled on the shuttle.") + return + + latejoin = new_latejoin + +/obj/docking_port/mobile/arrivals/dockRoundstart() + SSshuttle.generate_transit_dock(src) + Launch() + timer = world.time + check() + return TRUE + +/obj/docking_port/mobile/arrivals/check() + . = ..() + + if(perma_docked) + if(mode != SHUTTLE_CALL) + sound_played = FALSE + mode = SHUTTLE_IDLE + else + SendToStation() + return + + if(damaged) + if(!CheckTurfsPressure()) + damaged = FALSE + if(console) + console.say("Repairs complete, launching soon.") + return + +//If this proc is high on the profiler add a cooldown to the stuff after this line + + else if(CheckTurfsPressure()) + damaged = TRUE + if(console) + console.say("Alert, hull breach detected!") + var/obj/machinery/announcement_system/announcer = pick(announcement_systems) + announcer.announce("ARRIVALS_BROKEN", channels = list()) + if(mode != SHUTTLE_CALL) + sound_played = FALSE + mode = SHUTTLE_IDLE + else + SendToStation() + return + + var/found_awake = PersonCheck() + if(mode == SHUTTLE_CALL) + if(found_awake) + SendToStation() + else if(mode == SHUTTLE_IGNITING) + if(found_awake && !force_depart) + mode = SHUTTLE_IDLE + sound_played = FALSE + else if(!sound_played) + hyperspace_sound(HYPERSPACE_WARMUP, areas) + sound_played = TRUE + else if(!found_awake) + Launch(FALSE) + +/obj/docking_port/mobile/arrivals/proc/CheckTurfsPressure() + for(var/I in latejoin) + var/turf/open/T = get_turf(I) + var/pressure = T.air.return_pressure() + if(pressure < HAZARD_LOW_PRESSURE || pressure > HAZARD_HIGH_PRESSURE) //simple safety check + return TRUE + return FALSE + +/obj/docking_port/mobile/arrivals/proc/PersonCheck() + for(var/M in (living_mob_list & player_list)) + var/mob/living/L = M + if((get_area(M) in areas) && L.stat != DEAD) + return TRUE + return FALSE + +/obj/docking_port/mobile/arrivals/proc/SendToStation() + var/dockTime = config.arrivals_shuttle_dock_window + if(mode == SHUTTLE_CALL && timeLeft(1) > dockTime) + if(console) + console.say(damaged ? "Initiating emergency docking for repairs!" : "Now approaching: [SSmapping.config.map_name].") + hyperspace_sound(HYPERSPACE_LAUNCH, areas) //for the new guy + setTimer(dockTime) + +/obj/docking_port/mobile/arrivals/dock(obj/docking_port/stationary/S1, force=FALSE) + var/docked = S1 == assigned_transit + sound_played = FALSE + if(docked) //about to launch + if(!force_depart && PersonCheck()) + mode = SHUTTLE_IDLE + if(console) + console.say("Launch cancelled, lifeform dectected on board.") + return + force_depart = FALSE + . = ..() + if(!. && !docked && !damaged) + console.say("Welcome to your new life, employees!") + for(var/L in queued_announces) + var/datum/callback/C = L + C.Invoke() + LAZYCLEARLIST(queued_announces) + +/obj/docking_port/mobile/arrivals/check_effects() + ..() + if(mode == SHUTTLE_CALL && !sound_played && timeLeft(1) <= HYPERSPACE_END_TIME) + sound_played = TRUE + hyperspace_sound(HYPERSPACE_END, areas) + +/obj/docking_port/mobile/arrivals/canDock(obj/docking_port/stationary/S) + . = ..() + if(. == SHUTTLE_ALREADY_DOCKED) + . = SHUTTLE_CAN_DOCK + +/obj/docking_port/mobile/arrivals/proc/Launch(pickingup) + if(pickingup) + force_depart = TRUE + if(mode == SHUTTLE_IDLE) + if(console) + console.say(pickingup ? "Departing immediately for new employee pickup." : "Shuttle departing.") + request(SSshuttle.getDock("arrivals_stationary")) //we will intentionally never return SHUTTLE_ALREADY_DOCKED + +/obj/docking_port/mobile/arrivals/proc/RequireUndocked(mob/user) + if(mode == SHUTTLE_CALL || damaged) + return + + Launch(TRUE) + + user << "Calling your shuttle. One moment..." + while(mode != SHUTTLE_CALL && !damaged) + stoplag() + +/obj/docking_port/mobile/arrivals/proc/QueueAnnounce(mob, rank) + if(mode != SHUTTLE_CALL) + AnnounceArrival(mob, rank) + else + LAZYADD(queued_announces, CALLBACK(GLOBAL_PROC, .proc/AnnounceArrival, mob, rank)) + +/obj/docking_port/mobile/arrivals/vv_edit_var(var_name, var_value) + switch(var_name) + if("perma_docked") + feedback_add_details("admin_secrets_fun_used","ShA[var_value ? "s" : "g"]") + return ..() diff --git a/code/modules/shuttle/assault_pod.dm b/code/modules/shuttle/assault_pod.dm index d66bd8e3b5..0e18c4cdc5 100644 --- a/code/modules/shuttle/assault_pod.dm +++ b/code/modules/shuttle/assault_pod.dm @@ -53,6 +53,6 @@ if(S.shuttleId == shuttle_id) S.possible_destinations = "[landing_zone.id]" - user << "Landing zone set." + to_chat(user, "Landing zone set.") qdel(src) diff --git a/code/modules/shuttle/computer.dm b/code/modules/shuttle/computer.dm index 9ac700ae78..18aa94998e 100644 --- a/code/modules/shuttle/computer.dm +++ b/code/modules/shuttle/computer.dm @@ -2,6 +2,7 @@ name = "Shuttle Console" icon_screen = "shuttle" icon_keyboard = "tech_key" + light_color = LIGHT_COLOR_CYAN req_access = list( ) circuit = /obj/item/weapon/circuitboard/computer/shuttle var/shuttleId @@ -50,29 +51,29 @@ usr.set_machine(src) src.add_fingerprint(usr) if(!allowed(usr)) - usr << "Access denied." + to_chat(usr, "Access denied.") return if(href_list["move"]) var/obj/docking_port/mobile/M = SSshuttle.getShuttle(shuttleId) if(M.launch_status == ENDGAME_LAUNCHED) - usr << "You've already escaped. Never going back to that place again!" + to_chat(usr, "You've already escaped. Never going back to that place again!") return if(no_destination_swap) if(M.mode != SHUTTLE_IDLE) - usr << "Shuttle already in transit." + to_chat(usr, "Shuttle already in transit.") return switch(SSshuttle.moveShuttle(shuttleId, href_list["move"], 1)) if(0) say("Shuttle departing. Please stand away from the doors.") if(1) - usr << "Invalid shuttle requested." + to_chat(usr, "Invalid shuttle requested.") else - usr << "Unable to comply." + to_chat(usr, "Unable to comply.") /obj/machinery/computer/shuttle/emag_act(mob/user) if(!emagged) src.req_access = list() emagged = 1 - user << "You fried the consoles ID checking system." + to_chat(user, "You fried the consoles ID checking system.") diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 5cde17e4e2..7addfe25fe 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -60,12 +60,11 @@ var/obj/item/weapon/card/id/ID = user.get_idcard() if(!ID) - user << "You don't have an ID." + to_chat(user, "You don't have an ID.") return if(!(access_heads in ID.access)) - user << "The access level of \ - your card is not high enough." + to_chat(user, "The access level of your card is not high enough.") return var/old_len = authorized.len @@ -119,7 +118,7 @@ // Launch check is in process in case auth_need changes for some reason // probably external. . = FALSE - if(ENGINES_STARTED || (!IS_DOCKED)) + if(!SSshuttle.emergency || ENGINES_STARTED || (!IS_DOCKED)) return . // Check to see if we've reached criteria for early launch @@ -137,7 +136,7 @@ return if(emagged || ENGINES_STARTED) //SYSTEM ERROR: THE SHUTTLE WILL LA-SYSTEM ERROR: THE SHUTTLE WILL LA-SYSTEM ERROR: THE SHUTTLE WILL LAUNCH IN 10 SECONDS - user << "The shuttle is already about to launch!" + to_chat(user, "The shuttle is already about to launch!") return var/time = TIME_LEFT @@ -323,8 +322,10 @@ if(time_left <= 50 && !sound_played) //4 seconds left:REV UP THOSE ENGINES BOYS. - should sync up with the launch sound_played = 1 //Only rev them up once. - for(var/area/shuttle/escape/E in world) - E << 'sound/effects/hyperspace_begin.ogg' + var/list/areas = list() + for(var/area/shuttle/escape/E in sortedAreas) + areas += E + hyperspace_sound(HYPERSPACE_WARMUP, areas) if(time_left <= 0 && !SSshuttle.emergencyNoEscape) //move each escape pod (or applicable spaceship) to its corresponding transit dock @@ -335,8 +336,10 @@ M.enterTransit() //now move the actual emergency shuttle to its transit dock - for(var/area/shuttle/escape/E in world) - E << 'sound/effects/hyperspace_progress.ogg' + var/list/areas = list() + for(var/area/shuttle/escape/E in sortedAreas) + areas += E + hyperspace_sound(HYPERSPACE_LAUNCH, areas) enterTransit() mode = SHUTTLE_ESCAPE launch_status = ENDGAME_LAUNCHED @@ -347,10 +350,13 @@ SSshuttle.checkHostileEnvironment() if(SHUTTLE_ESCAPE) + if(sound_played && time_left <= HYPERSPACE_END_TIME) + var/list/areas = list() + for(var/area/shuttle/escape/E in sortedAreas) + areas += E + hyperspace_sound(HYPERSPACE_END, areas) if(areaInstance.parallax_movedir && time_left <= PARALLAX_LOOP_TIME) parallax_slowdown() - for(var/area/shuttle/escape/E in world) - E << 'sound/effects/hyperspace_end.ogg' for(var/A in SSshuttle.mobile) var/obj/docking_port/mobile/M = A if(M.launch_status == ENDGAME_LAUNCHED) @@ -396,7 +402,7 @@ launch_status = EARLY_LAUNCHED return ..() else - usr << "Escape pods will only launch during \"Code Red\" security alert." + to_chat(usr, "Escape pods will only launch during \"Code Red\" security alert.") return 1 /obj/docking_port/mobile/pod/New() @@ -414,6 +420,7 @@ possible_destinations = "pod_asteroid" icon = 'icons/obj/terminals.dmi' icon_state = "dorm_available" + light_color = LIGHT_COLOR_BLUE density = 0 clockwork = TRUE //it'd look weird @@ -423,7 +430,7 @@ /obj/machinery/computer/shuttle/pod/emag_act(mob/user) if(!emagged) emagged = TRUE - user << "You fry the pod's alert level checking system." + to_chat(user, "You fry the pod's alert level checking system.") /obj/docking_port/stationary/random name = "escape pod" @@ -499,7 +506,7 @@ if(security_level == SEC_LEVEL_RED || security_level == SEC_LEVEL_DELTA || unlocked) . = ..() else - usr << "The storage unit will only unlock during a Red or Delta security alert." + to_chat(usr, "The storage unit will only unlock during a Red or Delta security alert.") /obj/item/weapon/storage/pod/attack_hand(mob/user) return MouseDrop(user) diff --git a/code/modules/shuttle/ferry.dm b/code/modules/shuttle/ferry.dm index e96ffdc529..88129d562d 100644 --- a/code/modules/shuttle/ferry.dm +++ b/code/modules/shuttle/ferry.dm @@ -29,5 +29,5 @@ if(last_request && (last_request + cooldown > world.time)) return last_request = world.time - usr << "Your request has been recieved by Centcom." - admins << "FERRY: [key_name_admin(usr)] (?) (FLW) (Move Ferry) is requesting to move the transport ferry to Centcom." + to_chat(usr, "Your request has been recieved by Centcom.") + to_chat(admins, "FERRY: [key_name_admin(usr)] (?) (FLW) (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 b2dbd4f04f..1cf42135d6 100644 --- a/code/modules/shuttle/on_move.dm +++ b/code/modules/shuttle/on_move.dm @@ -29,22 +29,15 @@ /atom/movable/light/onShuttleMove() return 0 -/obj/machinery/door/onShuttleMove() - . = ..() - if(!.) - return - INVOKE_ASYNC(src, .proc/close) - // Close any attached airlocks as well - for(var/obj/machinery/door/D in orange(1, src)) - INVOKE_ASYNC(src, .proc/close) - /obj/machinery/door/airlock/onShuttleMove() shuttledocked = 0 - for(var/obj/machinery/door/airlock/A in orange(1, src)) + for(var/obj/machinery/door/airlock/A in range(1, src)) A.shuttledocked = 0 + A.air_tight = TRUE + INVOKE_ASYNC(A, /obj/machinery/door/.proc/close) . = ..() shuttledocked = 1 - for(var/obj/machinery/door/airlock/A in orange(1, src)) + for(var/obj/machinery/door/airlock/A in range(1, src)) A.shuttledocked = 1 /mob/onShuttleMove() if(!move_on_shuttle) diff --git a/code/modules/shuttle/ripple.dm b/code/modules/shuttle/ripple.dm index 5b7611d072..ca49f50ae5 100644 --- a/code/modules/shuttle/ripple.dm +++ b/code/modules/shuttle/ripple.dm @@ -13,6 +13,10 @@ duration = 3 * SHUTTLE_RIPPLE_TIME -/obj/effect/overlay/temp/ripple/New() +/obj/effect/overlay/temp/ripple/Initialize(mapload, time_left) . = ..() - animate(src, alpha=255, time=SHUTTLE_RIPPLE_TIME) + animate(src, alpha=255, time=time_left) + addtimer(CALLBACK(src, .proc/stop_animation), 8, TIMER_CLIENT_TIME) + +/obj/effect/overlay/temp/ripple/proc/stop_animation() + icon_state = "medi_holo_no_anim" diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm index 37f2aa7abd..699f1921b2 100644 --- a/code/modules/shuttle/shuttle.dm +++ b/code/modules/shuttle/shuttle.dm @@ -1,5 +1,7 @@ //use this define to highlight docking port bounding boxes (ONLY FOR DEBUG USE) -// #define DOCKING_PORT_HIGHLIGHT +#ifdef TESTING +#define DOCKING_PORT_HIGHLIGHT +#endif //NORTH default dir /obj/docking_port @@ -119,6 +121,7 @@ var/turf/T1 = locate(L[3],L[4],z) for(var/turf/T in block(T0,T1)) T.color = _color + LAZYINITLIST(T.atom_colours) T.maptext = null if(_color) var/turf/T = locate(L[1], L[2], z) @@ -239,8 +242,7 @@ /obj/docking_port/mobile/Initialize(mapload) ..() - if(!mapload) - return + var/area/A = get_area(src) if(istype(A, /area/shuttle)) areaInstance = A @@ -312,6 +314,10 @@ //call the shuttle to destination S /obj/docking_port/mobile/proc/request(obj/docking_port/stationary/S) if(!check_dock(S)) + testing("check_dock failed on request for [src]") + return + + if(mode == SHUTTLE_IGNITING && destination == S) return switch(mode) @@ -393,10 +399,10 @@ qdel(src, force=TRUE) -/obj/docking_port/mobile/proc/create_ripples(obj/docking_port/stationary/S1) +/obj/docking_port/mobile/proc/create_ripples(obj/docking_port/stationary/S1, animate_time) var/list/turfs = ripple_area(S1) for(var/t in turfs) - ripples += new /obj/effect/overlay/temp/ripple(t) + ripples += new /obj/effect/overlay/temp/ripple(t, animate_time) /obj/docking_port/mobile/proc/remove_ripples() for(var/R in ripples) @@ -463,7 +469,9 @@ if(!A0) A0 = new area_type(null) for(var/turf/T0 in L0) + var/area/old = T0.loc A0.contents += T0 + T0.change_area(old, A0) if (istype(S1, /obj/docking_port/stationary/transit)) areaInstance.parallax_movedir = preferred_direction else @@ -483,7 +491,9 @@ if(T0.type != T0.baseturf) //So if there is a hole in the shuttle we don't drag along the space/asteroid/etc to wherever we are going next T0.copyTurf(T1) T1.baseturf = destination_turf_type + var/area/old = T1.loc areaInstance.contents += T1 + T1.change_area(old, areaInstance) //copy over air if(isopenturf(T1)) @@ -497,15 +507,12 @@ if(rotation) T1.shuttleRotate(rotation) - //lighting stuff - T1.redraw_lighting() SSair.remove_from_active(T1) T1.CalculateAdjacentTurfs() SSair.add_to_active(T1,1) T0.ChangeTurf(turf_type) - T0.redraw_lighting() SSair.remove_from_active(T0) T0.CalculateAdjacentTurfs() SSair.add_to_active(T0,1) @@ -555,6 +562,10 @@ a hyperspace ripple!", "You feel an immense \ crushing pressure as the space around you ripples.") + if(M.key || M.get_ghost(TRUE)) + feedback_add_details("shuttle_gib", "[type]") + else + feedback_add_details("shuttle_gib_unintelligent", "[type]") M.gib() else //non-living mobs shouldn't be affected by shuttles, which is why this is an else @@ -602,8 +613,9 @@ /obj/docking_port/mobile/proc/check_effects() if(!ripples.len) if((mode == SHUTTLE_CALL) || (mode == SHUTTLE_RECALL)) - if(timeLeft(1) <= SHUTTLE_RIPPLE_TIME) - create_ripples(destination) + var/tl = timeLeft(1) + if(tl <= SHUTTLE_RIPPLE_TIME) + create_ripples(destination, tl) var/obj/docking_port/stationary/S0 = get_docked() if(areaInstance.parallax_movedir && istype(S0, /obj/docking_port/stationary/transit) && timeLeft(1) <= PARALLAX_LOOP_TIME) @@ -708,4 +720,19 @@ return S return null +/obj/docking_port/mobile/proc/hyperspace_sound(phase, list/areas) + var/s + switch(phase) + if(HYPERSPACE_WARMUP) + s = 'sound/effects/hyperspace_begin.ogg' + if(HYPERSPACE_LAUNCH) + s = 'sound/effects/hyperspace_progress.ogg' + if(HYPERSPACE_END) + s = 'sound/effects/hyperspace_end.ogg' + 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) + #undef DOCKING_PORT_HIGHLIGHT diff --git a/code/modules/shuttle/special.dm b/code/modules/shuttle/special.dm index 8a674b97c5..d039929d2f 100644 --- a/code/modules/shuttle/special.dm +++ b/code/modules/shuttle/special.dm @@ -126,9 +126,7 @@ /obj/structure/table/abductor/wabbajack/proc/sleeper_dreams(mob/living/sleeper) if(sleeper in sleepers) - sleeper << "While you slumber, you have \ - the strangest dream, like you can see yourself from the outside.\ - " + to_chat(sleeper, "While you slumber, you have the strangest dream, like you can see yourself from the outside.") sleeper.ghostize(TRUE) /obj/structure/table/abductor/wabbajack/left @@ -152,7 +150,7 @@ status_flags = GODMODE // Please don't punch the barkeeper unique_name = FALSE // disables the (123) number suffix -/mob/living/simple_animal/drone/snowflake/bardrone/New() +/mob/living/simple_animal/drone/snowflake/bardrone/Initialize() . = ..() access_card.access |= access_cent_bar @@ -168,7 +166,7 @@ AIStatus = AI_OFF stop_automated_movement = TRUE -/mob/living/simple_animal/hostile/alien/maid/barmaid/New() +/mob/living/simple_animal/hostile/alien/maid/barmaid/Initialize() . = ..() access_card = new /obj/item/weapon/card/id(src) var/datum/job/captain/C = new /datum/job/captain @@ -198,7 +196,7 @@ var/throwtarget = get_edge_target_turf(src, boot_dir) M.Weaken(2) M.throw_at(throwtarget, 5, 1,src) - M << "No climbing on the bar please." + to_chat(M, "No climbing on the bar please.") else . = ..() @@ -248,11 +246,11 @@ for(var/obj/I in counted_money) qdel(I) - mover << "Thank you for your payment! Please enjoy your flight." + to_chat(mover, "Thank you for your payment! Please enjoy your flight.") approved_passengers += mover return 1 else - mover << "You don't have enough money to enter the main shuttle. You'll have to fly coach." + to_chat(mover, "You don't have enough money to enter the main shuttle. You'll have to fly coach.") return 0 /mob/living/simple_animal/hostile/bear/fightpit diff --git a/code/modules/shuttle/supply.dm b/code/modules/shuttle/supply.dm index 65706d1e51..8f391570fc 100644 --- a/code/modules/shuttle/supply.dm +++ b/code/modules/shuttle/supply.dm @@ -72,7 +72,7 @@ var/list/blacklisted_cargo_types = typecacheof(list( var/list/empty_turfs = list() for(var/turf/open/floor/T in areaInstance) - if(T.density || T.contents.len) + if(is_blocked_turf(T)) continue empty_turfs += T diff --git a/code/modules/shuttle/syndicate.dm b/code/modules/shuttle/syndicate.dm index f48f05cb40..b4166a38d1 100644 --- a/code/modules/shuttle/syndicate.dm +++ b/code/modules/shuttle/syndicate.dm @@ -5,6 +5,7 @@ circuit = /obj/item/weapon/circuitboard/computer/syndicate_shuttle icon_screen = "syndishuttle" icon_keyboard = "syndie_key" + light_color = LIGHT_COLOR_RED req_access = list(access_syndicate) shuttleId = "syndicate" possible_destinations = "syndicate_away;syndicate_z5;syndicate_ne;syndicate_nw;syndicate_n;syndicate_se;syndicate_sw;syndicate_s" @@ -19,7 +20,7 @@ if(href_list["move"]) var/obj/item/weapon/circuitboard/computer/syndicate_shuttle/board = circuit if(board.challenge && world.time < SYNDICATE_CHALLENGE_TIMER) - usr << "You've issued a combat challenge to the station! You've got to give them at least [round(((SYNDICATE_CHALLENGE_TIMER - world.time) / 10) / 60)] more minutes to allow them to prepare." + to_chat(usr, "You've issued a combat challenge to the station! You've got to give them at least [round(((SYNDICATE_CHALLENGE_TIMER - world.time) / 10) / 60)] more minutes to allow them to prepare.") return 0 board.moved = TRUE ..() @@ -42,6 +43,7 @@ name = "syndicate assault pod control" icon = 'icons/obj/terminals.dmi' icon_state = "dorm_available" + light_color = LIGHT_COLOR_BLUE req_access = list(access_syndicate) shuttleId = "steel_rain" possible_destinations = null @@ -50,7 +52,7 @@ /obj/machinery/computer/shuttle/syndicate/drop_pod/Topic(href, href_list) if(href_list["move"]) if(z != ZLEVEL_CENTCOM) - usr << "Pods are one way!" + to_chat(usr, "Pods are one way!") return 0 ..() diff --git a/code/modules/space_transition/space_transition.dm b/code/modules/space_transition/space_transition.dm index cfdba3fe83..5c1def150b 100644 --- a/code/modules/space_transition/space_transition.dm +++ b/code/modules/space_transition/space_transition.dm @@ -78,10 +78,11 @@ var/list/z_levels_list = list() /proc/setup_map_transitions() //listamania var/list/SLS = list() var/datum/space_level/D - var/conf_set_len = map_transition_config.len + var/list/cached_transitions = SSmapping.config.transition_config + var/conf_set_len = cached_transitions.len var/k = 1 - for(var/A in map_transition_config) - D = new(map_transition_config[A]) + for(var/A in cached_transitions) + D = new(cached_transitions[A]) D.name = A D.z_value = k if(D.linked != CROSSLINKED) diff --git a/code/modules/spells/spell.dm b/code/modules/spells/spell.dm index cc2761fd8c..d8d42d1c99 100644 --- a/code/modules/spells/spell.dm +++ b/code/modules/spells/spell.dm @@ -18,7 +18,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin /obj/effect/proc_holder/proc/InterceptClickOn(mob/living/caller, params, atom/A) if(caller.ranged_ability != src || ranged_ability_user != caller) //I'm not actually sure how these would trigger, but, uh, safety, I guess? - caller << "[caller.ranged_ability.name] has been disabled." + to_chat(caller, "[caller.ranged_ability.name] has been disabled.") caller.ranged_ability.remove_ranged_ability() return TRUE //TRUE for failed, FALSE for passed. if(ranged_clickcd_override >= 0) @@ -33,7 +33,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin return if(user.ranged_ability && user.ranged_ability != src) if(forced) - user << "[user.ranged_ability.name] has been replaced by [name]." + to_chat(user, "[user.ranged_ability.name] has been replaced by [name].") user.ranged_ability.remove_ranged_ability() else return @@ -42,7 +42,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin add_mousepointer(user.client) ranged_ability_user = user if(msg) - ranged_ability_user << msg + to_chat(ranged_ability_user, msg) active = TRUE update_icon() @@ -61,7 +61,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin ranged_ability_user.client.click_intercept = null remove_mousepointer(ranged_ability_user.client) if(msg) - ranged_ability_user << msg + to_chat(ranged_ability_user, msg) ranged_ability_user = null active = FALSE update_icon() @@ -126,7 +126,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin if(player_lock) if(!user.mind || !(src in user.mind.spell_list) && !(src in user.mob_spell_list)) - user << "You shouldn't have this spell! Something's wrong." + to_chat(user, "You shouldn't have this spell! Something's wrong.") return 0 else if(!(src in user.mob_spell_list)) @@ -134,26 +134,26 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin var/turf/T = get_turf(user) if(T.z == ZLEVEL_CENTCOM && (!centcom_cancast || ticker.mode.name == "ragin' mages")) //Certain spells are not allowed on the centcom zlevel - user << "You can't cast this spell here." + to_chat(user, "You can't cast this spell here.") return 0 if(!skipcharge) switch(charge_type) if("recharge") if(charge_counter < charge_max) - user << still_recharging_msg + to_chat(user, still_recharging_msg) return 0 if("charges") if(!charge_counter) - user << "[name] has no charges left." + to_chat(user, "[name] has no charges left.") return 0 if(user.stat && !stat_allowed) - user << "Not when you're incapacitated." + to_chat(user, "Not when you're incapacitated.") return 0 if(!phase_allowed && istype(user.loc, /obj/effect/dummy)) - user << "[name] cannot be cast unless you are completely manifested in the material plane." + to_chat(user, "[name] cannot be cast unless you are completely manifested in the material plane.") return 0 if(ishuman(user)) @@ -161,7 +161,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin var/mob/living/carbon/human/H = user if((invocation_type == "whisper" || invocation_type == "shout") && H.is_muzzled()) - user << "You can't get the words out!" + to_chat(user, "You can't get the words out!") return 0 var/list/casting_clothes = typecacheof(list(/obj/item/clothing/suit/wizrobe, @@ -173,24 +173,24 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin if(clothes_req) //clothes check if(!is_type_in_typecache(H.wear_suit, casting_clothes)) - H << "I don't feel strong enough without my robe." + to_chat(H, "I don't feel strong enough without my robe.") return 0 if(!is_type_in_typecache(H.head, casting_clothes)) - H << "I don't feel strong enough without my hat." + to_chat(H, "I don't feel strong enough without my hat.") return 0 if(cult_req) //CULT_REQ CLOTHES CHECK if(!istype(H.wear_suit, /obj/item/clothing/suit/magusred) && !istype(H.wear_suit, /obj/item/clothing/suit/space/hardsuit/cult)) - H << "I don't feel strong enough without my armor." + to_chat(H, "I don't feel strong enough without my armor.") return 0 if(!istype(H.head, /obj/item/clothing/head/magus) && !istype(H.head, /obj/item/clothing/head/helmet/space/hardsuit/cult)) - H << "I don't feel strong enough without my helmet." + to_chat(H, "I don't feel strong enough without my helmet.") return 0 else if(clothes_req || human_req) - user << "This spell can only be cast by humans!" + to_chat(user, "This spell can only be cast by humans!") return 0 if(nonabstract_req && (isbrain(user) || ispAI(user))) - user << "This spell can only be cast by physical beings!" + to_chat(user, "This spell can only be cast by physical beings!") return 0 @@ -242,6 +242,9 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin /obj/effect/proc_holder/spell/proc/choose_targets(mob/user = usr) //depends on subtype - /targeted or /aoe_turf return +/obj/effect/proc_holder/spell/proc/can_target(mob/living/target) + return TRUE + /obj/effect/proc_holder/spell/proc/start_recharge() if(action) action.UpdateButtonIcon() @@ -255,7 +258,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin before_cast(targets) invocation(user) if(user && user.ckey) - user.attack_log += text("\[[time_stamp()]\] [user.real_name] ([user.ckey]) cast the spell [name].") + user.log_message("cast the spell [name].", INDIVIDUAL_ATTACK_LOG) spawn(0) if(charge_type == "recharge" && recharge) start_recharge() @@ -290,7 +293,7 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin else if(isturf(target)) location = target if(isliving(target) && message) - target << text("[message]") + to_chat(target, text("[message]")) if(sparks_spread) var/datum/effect_system/spark_spread/sparks = new sparks.set_up(sparks_amt, 0, location) //no idea what the 0 is @@ -361,6 +364,8 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin switch(max_targets) if(0) //unlimited for(var/mob/living/target in view_or_range(range, user, selection_type)) + if(!can_target(target)) + continue targets += target if(1) //single target can be picked if(range < 0) @@ -371,6 +376,8 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin for(var/mob/living/M in view_or_range(range, user, selection_type)) if(!include_user && user == M) continue + if(!can_target(M)) + continue possible_targets += M //targets += input("Choose the target for the spell.", "Targeting") as mob in possible_targets @@ -396,6 +403,8 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin else var/list/possible_targets = list() for(var/mob/living/target in view_or_range(range, user, selection_type)) + if(!can_target(target)) + continue possible_targets += target for(var/i=1,i<=max_targets,i++) if(!possible_targets.len) @@ -420,6 +429,8 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin var/list/targets = list() for(var/turf/target in view_or_range(range,user,selection_type)) + if(!can_target(target)) + continue if(!(target in view_or_range(inner_radius,user,selection_type))) targets += target diff --git a/code/modules/spells/spell_types/aimed.dm b/code/modules/spells/spell_types/aimed.dm index ab91a672cc..ef40210fd1 100644 --- a/code/modules/spells/spell_types/aimed.dm +++ b/code/modules/spells/spell_types/aimed.dm @@ -8,7 +8,7 @@ var/active_icon_state = "projectile" var/list/projectile_var_overrides = list() var/projectile_amount = 1 //Projectiles per cast. - var/current_amount = 1 //How many projectiles left. + var/current_amount = 0 //How many projectiles left. /obj/effect/proc_holder/spell/aimed/Click() var/mob/living/user = usr @@ -36,7 +36,8 @@ /obj/effect/proc_holder/spell/aimed/InterceptClickOn(mob/living/caller, params, atom/target) if(..()) return FALSE - if(!cast_check(0, ranged_ability_user)) + var/ignore = (current_amount <= 0) + if(!cast_check(ignore, ranged_ability_user)) remove_ranged_ability() return FALSE var/list/targets = list(target) @@ -51,14 +52,14 @@ return FALSE fire_projectile(user, target) user.newtonian_move(get_dir(U, T)) - current_amount-- - if(current_amount <= 0) + if(--current_amount <= 0) remove_ranged_ability() //Auto-disable the ability once you run out of bullets. return TRUE /obj/effect/proc_holder/spell/aimed/proc/fire_projectile(mob/living/user, atom/target) var/obj/item/projectile/P = new projectile_type(user.loc) P.current = get_turf(user) + P.firer = user P.preparePixelProjectile(target, get_turf(target), user) for(var/V in projectile_var_overrides) if(P.vars[V]) diff --git a/code/modules/spells/spell_types/barnyard.dm b/code/modules/spells/spell_types/barnyard.dm index c866342355..b8dd330a66 100644 --- a/code/modules/spells/spell_types/barnyard.dm +++ b/code/modules/spells/spell_types/barnyard.dm @@ -18,17 +18,17 @@ /obj/effect/proc_holder/spell/targeted/barnyardcurse/cast(list/targets, mob/user = usr) if(!targets.len) - user << "No target found in range." + to_chat(user, "No target found in range.") return var/mob/living/carbon/target = targets[1] if(!(target.type in compatible_mobs)) - user << "You are unable to curse [target]'s head!" + to_chat(user, "You are unable to curse [target]'s head!") return if(!(target in oview(range))) - user << "They are too far away!" + to_chat(user, "They are too far away!") return var/list/masks = list(/obj/item/clothing/mask/spig, /obj/item/clothing/mask/cowmask, /obj/item/clothing/mask/horsehead) diff --git a/code/modules/spells/spell_types/bloodcrawl.dm b/code/modules/spells/spell_types/bloodcrawl.dm index fc33166531..d7c5221e3d 100644 --- a/code/modules/spells/spell_types/bloodcrawl.dm +++ b/code/modules/spells/spell_types/bloodcrawl.dm @@ -19,7 +19,7 @@ perform(target) return revert_cast() - user << "There must be a nearby source of blood!" + to_chat(user, "There must be a nearby source of blood!") /obj/effect/proc_holder/spell/bloodcrawl/perform(obj/effect/decal/cleanable/target, recharge = 1, mob/living/user = usr) if(istype(user)) @@ -32,4 +32,4 @@ start_recharge() return revert_cast() - user << "You are unable to blood crawl!" + to_chat(user, "You are unable to blood crawl!") diff --git a/code/modules/spells/spell_types/charge.dm b/code/modules/spells/spell_types/charge.dm index e02bf29eda..32bdf54a31 100644 --- a/code/modules/spells/spell_types/charge.dm +++ b/code/modules/spells/spell_types/charge.dm @@ -44,8 +44,8 @@ charged_item = I break else - L << "Glowing red letters appear on the front cover..." - L << "[pick("NICE TRY BUT NO!","CLEVER BUT NOT CLEVER ENOUGH!", "SUCH FLAGRANT CHEESING IS WHY WE ACCEPTED YOUR APPLICATION!", "CUTE!", "YOU DIDN'T THINK IT'D BE THAT EASY, DID YOU?")]" + to_chat(L, "Glowing red letters appear on the front cover...") + to_chat(L, "[pick("NICE TRY BUT NO!","CLEVER BUT NOT CLEVER ENOUGH!", "SUCH FLAGRANT CHEESING IS WHY WE ACCEPTED YOUR APPLICATION!", "CUTE!", "YOU DIDN'T THINK IT'D BE THAT EASY, DID YOU?")]") burnt_out = 1 else if(istype(item, /obj/item/weapon/gun/magic)) var/obj/item/weapon/gun/magic/I = item @@ -91,9 +91,9 @@ charged_item = item break if(!charged_item) - L << "You feel magical power surging through your hands, but the feeling rapidly fades..." + to_chat(L, "You feel magical power surging through your hands, but the feeling rapidly fades...") else if(burnt_out) - L << "[charged_item] doesn't seem to be reacting to the spell..." + to_chat(L, "[charged_item] doesn't seem to be reacting to the spell...") else playsound(get_turf(L), 'sound/magic/Charge.ogg', 50, 1) - L << "[charged_item] suddenly feels very warm!" + to_chat(L, "[charged_item] suddenly feels very warm!") diff --git a/code/modules/spells/spell_types/construct_spells.dm b/code/modules/spells/spell_types/construct_spells.dm index 63023d2837..05e2011173 100644 --- a/code/modules/spells/spell_types/construct_spells.dm +++ b/code/modules/spells/spell_types/construct_spells.dm @@ -146,3 +146,106 @@ smoke_amt = 4 action_icon_state = "parasmoke" action_background_icon_state = "bg_cult" + + +/obj/effect/proc_holder/spell/targeted/abyssal_gaze + name = "Abyssal Gaze" + desc = "This spell instills a deep terror in your target, temporarily chilling and blinding it." + + charge_max = 750 + range = 5 + include_user = FALSE + selection_type = "range" + stat_allowed = FALSE + + school = "evocation" + clothes_req = FALSE + invocation = "none" + invocation_type = "none" + action_background_icon_state = "bg_demon" + action_icon_state = "abyssal_gaze" + +/obj/effect/proc_holder/spell/targeted/abyssal_gaze/cast(list/targets, mob/user = usr) + if(!LAZYLEN(targets)) + to_chat(user, "No target found in range.") + revert_cast() + return + + var/mob/living/carbon/target = targets[1] + + if(!(target in oview(range))) + to_chat(user, "[target] is too far away!") + revert_cast() + return + + to_chat(target, "A freezing darkness surrounds you...") + target.playsound_local(get_turf(target), 'sound/hallucinations/i_see_you1.ogg', 50, 1) + user.playsound_local(get_turf(user), 'sound/effects/ghost2.ogg', 50, 1) + target.adjust_blindness(5) + addtimer(CALLBACK(src, .proc/cure_blindness, target), 40) + target.bodytemperature -= 200 + +/obj/effect/proc_holder/spell/targeted/abyssal_gaze/proc/cure_blindness(mob/target) + target.adjust_blindness(-5) + +/obj/effect/proc_holder/spell/targeted/dominate + name = "Dominate" + desc = "This spell dominates the mind of a lesser creature, causing it to see you as an ally." + + charge_max = 600 + range = 7 + include_user = FALSE + selection_type = "range" + stat_allowed = FALSE + + school = "evocation" + clothes_req = FALSE + invocation = "none" + invocation_type = "none" + action_background_icon_state = "bg_demon" + action_icon_state = "dominate" + +/obj/effect/proc_holder/spell/targeted/dominate/cast(list/targets, mob/user = usr) + if(!LAZYLEN(targets)) + to_chat(user, "No target found in range.") + revert_cast() + return + + var/mob/living/simple_animal/S = targets[1] + + if(S.ckey) + to_chat(user, "[S] is too intelligent to dominate!") + revert_cast() + return + + if(S.stat) + to_chat(user, "[S] is dead!") + revert_cast() + return + + if(S.sentience_type != SENTIENCE_ORGANIC) + to_chat(user, "[S] cannot be dominated!") + revert_cast() + return + + if(!(S in oview(range))) + to_chat(user, "[S] is too far away!") + revert_cast() + return + + S.add_atom_colour("#990000", FIXED_COLOUR_PRIORITY) + S.faction = list("cult") + playsound(get_turf(S), 'sound/effects/ghost.ogg', 100, 1) + new /obj/effect/overlay/temp/cult/sac(get_turf(S)) + +/obj/effect/proc_holder/spell/targeted/dominate/can_target(mob/living/target) + if(!isanimal(target) || target.stat) + return FALSE + if("cult" in target.faction) + return FALSE + return TRUE + +/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/shift/golem + charge_max = 800 + jaunt_in_type = /obj/effect/overlay/temp/dir_setting/cult/phase + jaunt_out_type = /obj/effect/overlay/temp/dir_setting/cult/phase/out \ No newline at end of file diff --git a/code/modules/spells/spell_types/devil.dm b/code/modules/spells/spell_types/devil.dm index 38c2095acd..91226d2e44 100644 --- a/code/modules/spells/spell_types/devil.dm +++ b/code/modules/spells/spell_types/devil.dm @@ -66,7 +66,7 @@ contract = new /obj/item/weapon/paper/contract/infernal/knowledge(C.loc, C.mind, user.mind) C.put_in_hands(contract) else - user << "[C] seems to not be sentient. You cannot summon a contract for [C.p_them()]." + to_chat(user, "[C] seems to not be sentient. You cannot summon a contract for [C.p_them()].") /obj/effect/proc_holder/spell/aimed/fireball/hellish @@ -110,21 +110,21 @@ continuing = 1 break if(continuing) - user << "You are now phasing in." + to_chat(user, "You are now phasing in.") if(do_mob(user,user,150)) user.infernalphasein() else - user << "You can only re-appear near a potential signer." + to_chat(user, "You can only re-appear near a potential signer.") revert_cast() return ..() else user.notransform = 1 user.fakefire() - src << "You begin to phase back into sinful flames." + to_chat(src, "You begin to phase back into sinful flames.") if(do_mob(user,user,150)) user.infernalphaseout() else - user << "You must remain still while exiting." + to_chat(user, "You must remain still while exiting.") user.ExtinguishMob() start_recharge() return @@ -153,7 +153,7 @@ /mob/living/proc/infernalphasein() if(src.notransform) - src << "You're too busy to jaunt in." + to_chat(src, "You're too busy to jaunt in.") return 0 fakefire() src.loc = get_turf(src) @@ -232,9 +232,12 @@ var/turf/T = dancefloor_turfs[i] T.ChangeTurf(dancefloor_turfs_types[i]) else + var/list/funky_turfs = RANGE_TURFS(1, user) + for(var/turf/closed/solid in funky_turfs) + user << "You're too close to a wall." + return dancefloor_exists = TRUE var/i = 1 - var/list/funky_turfs = RANGE_TURFS(1, user) dancefloor_turfs.len = funky_turfs.len dancefloor_turfs_types.len = funky_turfs.len for(var/t in funky_turfs) diff --git a/code/modules/spells/spell_types/ethereal_jaunt.dm b/code/modules/spells/spell_types/ethereal_jaunt.dm index 5b9561b585..904843d7f8 100644 --- a/code/modules/spells/spell_types/ethereal_jaunt.dm +++ b/code/modules/spells/spell_types/ethereal_jaunt.dm @@ -26,7 +26,7 @@ target.notransform = 1 var/turf/mobloc = get_turf(target) var/obj/effect/dummy/spell_jaunt/holder = new /obj/effect/dummy/spell_jaunt(mobloc) - new jaunt_out_type(mobloc, holder.dir) + new jaunt_out_type(mobloc, target.dir) target.ExtinguishMob() if(target.buckled) target.buckled.unbuckle_mob(target,force=1) @@ -51,7 +51,7 @@ holder.reappearing = 1 playsound(get_turf(target), 'sound/magic/Ethereal_Exit.ogg', 50, 1, -1) sleep(25 - jaunt_in_time) - new jaunt_in_type(mobloc, holder.dir) + new jaunt_in_type(mobloc, target.dir) sleep(jaunt_in_time) qdel(holder) if(!QDELETED(target)) @@ -92,7 +92,7 @@ if(!(newLoc.flags & NOJAUNT)) loc = newLoc else - user << "Some strange aura is blocking the way!" + to_chat(user, "Some strange aura is blocking the way!") src.canmove = 0 spawn(2) src.canmove = 1 diff --git a/code/modules/spells/spell_types/godhand.dm b/code/modules/spells/spell_types/godhand.dm index 6d4b248bc5..c1d9707ce4 100644 --- a/code/modules/spells/spell_types/godhand.dm +++ b/code/modules/spells/spell_types/godhand.dm @@ -22,7 +22,7 @@ if(!iscarbon(user)) //Look ma, no hands return if(user.lying || user.handcuffed) - user << "You can't reach out!" + to_chat(user, "You can't reach out!") return ..() @@ -68,7 +68,7 @@ if(!proximity || target == user || !isliving(target) || !iscarbon(user) || user.lying || user.handcuffed) //getting hard after touching yourself would also be bad return if(user.lying || user.handcuffed) - user << "You can't reach out!" + to_chat(user, "You can't reach out!") return var/mob/living/M = target M.Stun(2) diff --git a/code/modules/spells/spell_types/lichdom.dm b/code/modules/spells/spell_types/lichdom.dm index 5844698c97..3058051fdc 100644 --- a/code/modules/spells/spell_types/lichdom.dm +++ b/code/modules/spells/spell_types/lichdom.dm @@ -51,19 +51,19 @@ if(stat_allowed) //Death is not my end! if(M.stat == CONSCIOUS && iscarbon(M)) - M << "You aren't dead enough to revive!" //Usually a good problem to have + to_chat(M, "You aren't dead enough to revive!" ) charge_counter = charge_max return if(!marked_item || QDELETED(marked_item)) //Wait nevermind - M << "Your phylactery is gone!" + to_chat(M, "Your phylactery is gone!") return var/turf/user_turf = get_turf(M) var/turf/item_turf = get_turf(marked_item) if(user_turf.z != item_turf.z) - M << "Your phylactery is out of range!" + to_chat(M, "Your phylactery is out of range!") return if(isobserver(M)) @@ -80,7 +80,7 @@ lich.real_name = M.mind.name M.mind.transfer_to(lich) lich.hardset_dna(null,null,lich.real_name,null,/datum/species/skeleton) - lich << "Your bones clatter and shutter as you are pulled back into this world!" + to_chat(lich, "Your bones clatter and shutter as you are pulled back into this world!") charge_max += 600 var/mob/old_body = current_body var/turf/body_turf = get_turf(old_body) @@ -108,14 +108,14 @@ if(ABSTRACT in item.flags || NODROP in item.flags) continue marked_item = item - M << "You begin to focus your very being into the [item.name]..." + to_chat(M, "You begin to focus your very being into the [item.name]...") break if(!marked_item) - M << "You must hold an item you wish to make your phylactery..." + to_chat(M, "You must hold an item you wish to make your phylactery...") return if(!do_after(M, 50, needhand=FALSE, target=marked_item)) - M << "Your soul snaps back to your body as you stop ensouling [marked_item.name]!" + to_chat(M, "Your soul snaps back to your body as you stop ensouling [marked_item.name]!") marked_item = null return @@ -129,7 +129,7 @@ marked_item.add_atom_colour("#003300", ADMIN_COLOUR_PRIORITY) poi_list |= marked_item - M << "With a hideous feeling of emptiness you watch in horrified fascination as skin sloughs off bone! Blood boils, nerves disintegrate, eyes boil in their sockets! As your organs crumble to dust in your fleshless chest you come to terms with your choice. You're a lich!" + to_chat(M, "With a hideous feeling of emptiness you watch in horrified fascination as skin sloughs off bone! Blood boils, nerves disintegrate, eyes boil in their sockets! As your organs crumble to dust in your fleshless chest you come to terms with your choice. You're a lich!") M.set_species(/datum/species/skeleton) current_body = M.mind.current if(ishuman(M)) diff --git a/code/modules/spells/spell_types/lightning.dm b/code/modules/spells/spell_types/lightning.dm index 78328e5d2c..4f469b61b2 100644 --- a/code/modules/spells/spell_types/lightning.dm +++ b/code/modules/spells/spell_types/lightning.dm @@ -23,7 +23,7 @@ /obj/effect/proc_holder/spell/targeted/tesla/proc/StartChargeup(mob/user = usr) ready = 1 - user << "You start gathering the power." + to_chat(user, "You start gathering the power.") Snd = new/sound('sound/magic/lightning_chargeup.ogg',channel = 7) halo = image("icon"='icons/effects/effects.dmi',"icon_state" ="electricity","layer" = EFFECTS_LAYER) user.add_overlay(halo) @@ -43,7 +43,7 @@ /obj/effect/proc_holder/spell/targeted/tesla/revert_cast(mob/user = usr, message = 1) if(message) - user << "No target found in range." + to_chat(user, "No target found in range.") Reset(user) ..() @@ -53,7 +53,7 @@ Snd=sound(null, repeat = 0, wait = 1, channel = Snd.channel) //byond, why you suck? playsound(get_turf(user),Snd,50,0)// Sorry MrPerson, but the other ways just didn't do it the way i needed to work, this is the only way. if(get_dist(user,target)>range) - user << "They are too far away!" + to_chat(user, "They are too far away!") Reset(user) return diff --git a/code/modules/spells/spell_types/mime.dm b/code/modules/spells/spell_types/mime.dm index 78d5f99588..306ec47196 100644 --- a/code/modules/spells/spell_types/mime.dm +++ b/code/modules/spells/spell_types/mime.dm @@ -19,7 +19,7 @@ /obj/effect/proc_holder/spell/aoe_turf/conjure/mime_wall/Click() if(usr && usr.mind) if(!usr.mind.miming) - usr << "You must dedicate yourself to silence first." + to_chat(usr, "You must dedicate yourself to silence first.") return invocation = "[usr.real_name] looks as if a wall is in front of [usr.p_them()]." else @@ -57,15 +57,15 @@ for(var/mob/living/carbon/human/H in targets) H.mind.miming=!H.mind.miming if(H.mind.miming) - H << "You make a vow of silence." + to_chat(H, "You make a vow of silence.") else - H << "You break your vow of silence." + to_chat(H, "You break your vow of silence.") -// These spells can only be gotten from the "Guide for Advanced Mimery series+" for Mime Traitors. +// These spells can only be gotten from the "Guide for Advanced Mimery series" for Mime Traitors. /obj/effect/proc_holder/spell/targeted/forcewall/mime name = "Invisible Blockade" - desc = "With more polished skills, a powerful mime can create a invisble blockade, blocking off a 3x1 area." + desc = "Form an invisible three tile wide blockade." wall_type = /obj/effect/forcefield/mime/advanced invocation_type = "emote" invocation_emote_self = "You form a blockade in front of yourself." @@ -81,7 +81,7 @@ /obj/effect/proc_holder/spell/targeted/forcewall/mime/Click() if(usr && usr.mind) if(!usr.mind.miming) - usr << "You must dedicate yourself to silence first." + to_chat(usr, "You must dedicate yourself to silence first.") return invocation = "[usr.real_name] looks as if a blockade is in front of [usr.p_them()]." else @@ -90,7 +90,7 @@ /obj/effect/proc_holder/spell/aimed/finger_guns name = "Finger Guns" - desc = "An ancient technqiue, passed down from mentor to student. Allows you to shoot bullets out of your fingers." + desc = "Shoot a mimed bullet from your fingers that does a stun and some damage." school = "mime" panel = "Mime" charge_max = 300 @@ -99,6 +99,7 @@ invocation_emote_self = "You fire your finger gun!" range = 20 projectile_type = /obj/item/projectile/bullet/weakbullet2 + projectile_amount = 3 sound = null active_msg = "You draw your fingers!" deactive_msg = "You put your fingers at ease. Another time." @@ -110,9 +111,13 @@ /obj/effect/proc_holder/spell/aimed/finger_guns/Click() + var/mob/living/carbon/human/owner = usr + if(owner.incapacitated()) + to_chat(owner, "You can't properly point your fingers while incapacitated.") + return if(usr && usr.mind) if(!usr.mind.miming) - usr << "You must dedicate yourself to silence first." + to_chat(usr, "You must dedicate yourself to silence first.") return invocation = "[usr.real_name] fires [usr.p_their()] finger gun!" else @@ -124,7 +129,7 @@ spell = /obj/effect/proc_holder/spell/targeted/forcewall/mime spellname = "" name = "Guide to Advanced Mimery Vol 1" - desc = "When you turn the pages, it won't make a sound!" + desc = "The pages don't make any sound when turned." icon_state ="bookmime" /obj/item/weapon/spellbook/oneuse/mimery_guns @@ -132,4 +137,4 @@ spellname = "" name = "Guide to Advanced Mimery Vol 2" desc = "There aren't any words written..." - icon_state ="bookmime" \ No newline at end of file + icon_state ="bookmime" diff --git a/code/modules/spells/spell_types/mind_transfer.dm b/code/modules/spells/spell_types/mind_transfer.dm index d5dfabb306..7ebafe6e24 100644 --- a/code/modules/spells/spell_types/mind_transfer.dm +++ b/code/modules/spells/spell_types/mind_transfer.dm @@ -22,11 +22,11 @@ Also, you never added distance checking after target is selected. I've went ahea */ /obj/effect/proc_holder/spell/targeted/mind_transfer/cast(list/targets, mob/user = usr, distanceoverride) if(!targets.len) - user << "No mind found!" + to_chat(user, "No mind found!") return if(targets.len > 1) - user << "Too many minds! You're not a hive damnit!"//Whaa...aat? + to_chat(user, "Too many minds! You're not a hive damnit!") return var/mob/living/target = targets[1] @@ -35,27 +35,27 @@ Also, you never added distance checking after target is selected. I've went ahea var/t_is = target.p_are() if(!(target in oview(range)) && !distanceoverride)//If they are not in overview after selection. Do note that !() is necessary for in to work because ! takes precedence over it. - user << "[t_He] [t_is] too far away!" + to_chat(user, "[t_He] [t_is] too far away!") return if(ismegafauna(target)) - user << "This creature is too powerful to control!" + to_chat(user, "This creature is too powerful to control!") return if(target.stat == DEAD) - user << "You don't particularly want to be dead!" + to_chat(user, "You don't particularly want to be dead!") return if(!target.key || !target.mind) - user << "[t_He] appear[target.p_s()] to be catatonic! Not even magic can affect [target.p_their()] vacant mind." + to_chat(user, "[t_He] appear[target.p_s()] to be catatonic! Not even magic can affect [target.p_their()] vacant mind.") return if(user.suiciding) - user << "You're killing yourself! You can't concentrate enough to do this!" + to_chat(user, "You're killing yourself! You can't concentrate enough to do this!") return if((target.mind.special_role in protected_roles) || cmptext(copytext(target.key,1,2),"@")) - user << "[target.p_their(TRUE)] mind is resisting your spell!" + to_chat(user, "[target.p_their(TRUE)] mind is resisting your spell!") return var/mob/living/victim = target//The target of the spell whos body will be transferred to. diff --git a/code/modules/spells/spell_types/rightandwrong.dm b/code/modules/spells/spell_types/rightandwrong.dm index 2ffdfc3a43..dc36403fcb 100644 --- a/code/modules/spells/spell_types/rightandwrong.dm +++ b/code/modules/spells/spell_types/rightandwrong.dm @@ -6,7 +6,7 @@ var/list/magicspeciallist = list("staffchange","staffanimation", "wandbelt", "contract", "staffchaos", "necromantic", "bloodcontract") if(user) //in this case either someone holding a spellbook or a badmin - user << "You summoned [summon_type ? "magic" : "guns"]!" + to_chat(user, "You summoned [summon_type ? "magic" : "guns"]!") message_admins("[key_name_admin(user, 1)] summoned [summon_type ? "magic" : "guns"]!") log_game("[key_name(user)] summoned [summon_type ? "magic" : "guns"]!") for(var/mob/living/carbon/human/H in player_list) @@ -20,17 +20,17 @@ guns.owner = H.mind H.mind.objectives += guns H.mind.special_role = "survivalist" - H << "You are the survivalist! Your own safety matters above all else, and the only way to ensure your safety is to stockpile weapons! Grab as many guns as possible, by any means necessary. Kill anyone who gets in your way." + to_chat(H, "You are the survivalist! Your own safety matters above all else, and the only way to ensure your safety is to stockpile weapons! Grab as many guns as possible, by any means necessary. Kill anyone who gets in your way.") else var/datum/objective/steal_five_of_type/summon_magic/magic = new magic.owner = H.mind H.mind.objectives += magic H.mind.special_role = "amateur magician" - H << "You are the amateur magician! Grow your newfound talent! Grab as many magical artefacts as possible, by any means necessary. Kill anyone who gets in your way." + to_chat(H, "You are the amateur magician! Grow your newfound talent! Grab as many magical artefacts as possible, by any means necessary. Kill anyone who gets in your way.") var/datum/objective/survive/survive = new survive.owner = H.mind H.mind.objectives += survive - H.attack_log += "\[[time_stamp()]\] Was made into a survivalist, and trusts no one!" + H.log_message("Was made into a survivalist, and trusts no one!", INDIVIDUAL_ATTACK_LOG) H.mind.announce_objectives() var/randomizeguns = pick(gunslist) var/randomizemagic = pick(magiclist) @@ -170,7 +170,7 @@ new /obj/item/weapon/scrying(get_turf(H)) if (!(H.dna.check_mutation(XRAY))) H.dna.add_mutation(XRAY) - H << "The walls suddenly disappear." + to_chat(H, "The walls suddenly disappear.") if("voodoo") new /obj/item/voodoo(get_turf(H)) if("whistle") @@ -198,7 +198,7 @@ new /obj/item/device/necromantic_stone(get_turf(H)) if("bloodcontract") new /obj/item/blood_contract(get_turf(H)) - H << "You suddenly feel lucky." + to_chat(H, "You suddenly feel lucky.") playsound(get_turf(H),'sound/magic/Summon_Magic.ogg', 50, 1) diff --git a/code/modules/spells/spell_types/shapeshift.dm b/code/modules/spells/spell_types/shapeshift.dm index 0d485d687c..456d98c7fc 100644 --- a/code/modules/spells/spell_types/shapeshift.dm +++ b/code/modules/spells/spell_types/shapeshift.dm @@ -39,7 +39,7 @@ /obj/effect/proc_holder/spell/targeted/shapeshift/proc/Shapeshift(mob/living/caster) for(var/mob/living/M in caster) if(M.status_flags & GODMODE) - caster << "You're already shapeshifted!" + to_chat(caster, "You're already shapeshifted!") return var/mob/living/shape = new shapeshift_type(caster.loc) diff --git a/code/modules/spells/spell_types/summonitem.dm b/code/modules/spells/spell_types/summonitem.dm index 10dee3efdd..b2a5aaf697 100644 --- a/code/modules/spells/spell_types/summonitem.dm +++ b/code/modules/spells/spell_types/summonitem.dm @@ -80,7 +80,7 @@ var/obj/item/bodypart/part = X if(item_to_retrieve in part.embedded_objects) part.embedded_objects -= item_to_retrieve - C << "The [item_to_retrieve] that was embedded in your [L] has myseriously vanished. How fortunate!" + to_chat(C, "The [item_to_retrieve] that was embedded in your [L] has myseriously vanished. How fortunate!") if(!C.has_embedded_objects()) C.clear_alert("embeddedobject") break @@ -110,4 +110,4 @@ if(message) - L << message + to_chat(L, message) diff --git a/code/modules/spells/spell_types/the_traps.dm b/code/modules/spells/spell_types/the_traps.dm new file mode 100644 index 0000000000..ca3da76617 --- /dev/null +++ b/code/modules/spells/spell_types/the_traps.dm @@ -0,0 +1,23 @@ +/obj/effect/proc_holder/spell/aoe_turf/conjure/the_traps + name = "The Traps!" + desc = "Summon a number of traps to confuse and weaken your enemies, and possibly you." + + charge_max = 250 + cooldown_min = 100 + + clothes_req = 1 + invocation = "CAVERE INSIDIAS" + invocation_type = "shout" + range = 3 + + summon_type = list( + /obj/structure/trap/stun, + /obj/structure/trap/fire, + /obj/structure/trap/chill, + /obj/structure/trap/damage, + /obj/structure/swarmer/trap + ) + summon_lifespan = 0 + summon_amt = 5 + + action_icon_state = "the_traps" diff --git a/code/modules/spells/spell_types/touch_attacks.dm b/code/modules/spells/spell_types/touch_attacks.dm index 85e27e599b..1baf51826d 100644 --- a/code/modules/spells/spell_types/touch_attacks.dm +++ b/code/modules/spells/spell_types/touch_attacks.dm @@ -10,7 +10,7 @@ qdel(attached_hand) charge_counter = charge_max attached_hand = null - user << "You draw the power out of your hand." + to_chat(user, "You draw the power out of your hand.") return 0 ..() @@ -29,9 +29,9 @@ qdel(attached_hand) charge_counter = charge_max attached_hand = null - user << "Your hands are full!" + to_chat(user, "Your hands are full!") return 0 - user << "You channel the power of the spell to your hand." + to_chat(user, "You channel the power of the spell to your hand.") return 1 diff --git a/code/modules/spells/spell_types/voice_of_god.dm b/code/modules/spells/spell_types/voice_of_god.dm index adff53210f..6636c920f2 100644 --- a/code/modules/spells/spell_types/voice_of_god.dm +++ b/code/modules/spells/spell_types/voice_of_god.dm @@ -14,7 +14,7 @@ /obj/effect/proc_holder/spell/voice_of_god/can_cast(mob/user = usr) if(!user.can_speak()) - user << "You are unable to speak!" + to_chat(user, "You are unable to speak!") return FALSE return TRUE diff --git a/code/modules/spells/spell_types/wizard.dm b/code/modules/spells/spell_types/wizard.dm index 0c7a7431ae..66bc198311 100644 --- a/code/modules/spells/spell_types/wizard.dm +++ b/code/modules/spells/spell_types/wizard.dm @@ -264,13 +264,13 @@ var/mob/living/M = AM M.Weaken(5) M.adjustBruteLoss(5) - M << "You're slammed into the floor by [user]!" + to_chat(M, "You're slammed into the floor by [user]!") else new sparkle_path(get_turf(AM), get_dir(user, AM)) //created sparkles will disappear on their own if(isliving(AM)) var/mob/living/M = AM M.Weaken(stun_amt) - M << "You're thrown back by [user]!" + to_chat(M, "You're thrown back by [user]!") AM.throw_at(throwtarget, ((Clamp((maxthrow - (Clamp(distfromcaster - 2, 0, distfromcaster))), 3, maxthrow))), 1,user)//So stuff gets tossed around at the same time. /obj/effect/proc_holder/spell/aoe_turf/repulse/xeno //i fixed conflicts only to find out that this is in the WIZARD file instead of the xeno file?! diff --git a/code/modules/station_goals/bsa.dm b/code/modules/station_goals/bsa.dm index 1dfc9e8f4d..a0e481ccca 100644 --- a/code/modules/station_goals/bsa.dm +++ b/code/modules/station_goals/bsa.dm @@ -39,7 +39,7 @@ if(istype(W, /obj/item/device/multitool)) var/obj/item/device/multitool/M = W M.buffer = src - user << "You store linkage information in [W]'s buffer." + to_chat(user, "You store linkage information in [W]'s buffer.") else if(istype(W, /obj/item/weapon/wrench)) default_unfasten_wrench(user, W, 10) return TRUE @@ -55,7 +55,7 @@ if(istype(W, /obj/item/device/multitool)) var/obj/item/device/multitool/M = W M.buffer = src - user << "You store linkage information in [W]'s buffer." + to_chat(user, "You store linkage information in [W]'s buffer.") else if(istype(W, /obj/item/weapon/wrench)) default_unfasten_wrench(user, W, 10) return TRUE @@ -76,11 +76,11 @@ if(istype(M.buffer,/obj/machinery/bsa/back)) back = M.buffer M.buffer = null - user << "You link [src] with [back]." + to_chat(user, "You link [src] with [back].") else if(istype(M.buffer,/obj/machinery/bsa/front)) front = M.buffer M.buffer = null - user << "You link [src] with [front]." + to_chat(user, "You link [src] with [front].") else if(istype(W, /obj/item/weapon/wrench)) default_unfasten_wrench(user, W, 10) return TRUE diff --git a/code/modules/station_goals/dna_vault.dm b/code/modules/station_goals/dna_vault.dm index 1e397fca84..78891e5157 100644 --- a/code/modules/station_goals/dna_vault.dm +++ b/code/modules/station_goals/dna_vault.dm @@ -8,6 +8,8 @@ #define VAULT_FIREPROOF "Thermal Regulation" #define VAULT_STUNTIME "Neural Repathing" #define VAULT_ARMOUR "Bone Reinforcement" +#define VAULT_SPEED "Leg Muscle Stimulus" +#define VAULT_QUICK "Arm Muscle Stimulus" /datum/station_goal/dna_vault name = "DNA Vault" @@ -85,35 +87,35 @@ var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/monkey,/mob/li if(!H.myseed) return if(!H.harvest)// So it's bit harder. - user << "Plant needs to be ready to harvest to perform full data scan." //Because space dna is actually magic + to_chat(user, "Plant needs to be ready to harvest to perform full data scan.") //Because space dna is actually magic return if(plants[H.myseed.type]) - user << "Plant data already present in local storage." + to_chat(user, "Plant data already present in local storage.") return plants[H.myseed.type] = 1 - user << "Plant data added to local storage." + to_chat(user, "Plant data added to local storage.") //animals if(isanimal(target) || is_type_in_typecache(target,non_simple_animals)) if(isanimal(target)) var/mob/living/simple_animal/A = target if(!A.healable)//simple approximation of being animal not a robot or similar - user << "No compatible DNA detected" + to_chat(user, "No compatible DNA detected") return if(animals[target.type]) - user << "Animal data already present in local storage." + to_chat(user, "Animal data already present in local storage.") return animals[target.type] = 1 - user << "Animal data added to local storage." + to_chat(user, "Animal data added to local storage.") //humans if(ishuman(target)) var/mob/living/carbon/human/H = target if(dna[H.dna.uni_identity]) - user << "Humanoid data already present in local storage." + to_chat(user, "Humanoid data already present in local storage.") return dna[H.dna.uni_identity] = 1 - user << "Humanoid data added to local storage." + to_chat(user, "Humanoid data added to local storage.") /obj/item/weapon/circuitboard/machine/dna_vault @@ -121,7 +123,8 @@ var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/monkey,/mob/li build_path = /obj/machinery/dna_vault origin_tech = "engineering=2;combat=2;bluespace=2" //No freebies! req_components = list( - /obj/item/weapon/stock_parts/capacitor/quadratic = 5, + /obj/item/weapon/stock_parts/capacitor/super = 5, + /obj/item/weapon/stock_parts/manipulator/pico = 5, /obj/item/stack/cable_coil = 2) /obj/machinery/dna_vault @@ -134,7 +137,7 @@ var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/monkey,/mob/li idle_power_usage = 5000 pixel_x = -32 pixel_y = -64 - luminosity = 1 + light_range = 1 //High defaults so it's not completed automatically if there's no station goal var/animals_max = 100 @@ -189,7 +192,7 @@ var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/monkey,/mob/li if(user in power_lottery) return var/list/L = list() - var/list/possible_powers = list(VAULT_TOXIN,VAULT_NOBREATH,VAULT_FIREPROOF,VAULT_STUNTIME,VAULT_ARMOUR) + var/list/possible_powers = list(VAULT_TOXIN,VAULT_NOBREATH,VAULT_FIREPROOF,VAULT_STUNTIME,VAULT_ARMOUR,VAULT_SPEED,VAULT_QUICK) L += pick_n_take(possible_powers) L += pick_n_take(possible_powers) power_lottery[user] = L @@ -244,7 +247,7 @@ var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/monkey,/mob/li uploaded++ dna[ui] = 1 check_goal() - user << "[uploaded] new datapoints uploaded." + to_chat(user, "[uploaded] new datapoints uploaded.") else return ..() @@ -256,23 +259,30 @@ var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/monkey,/mob/li var/datum/species/S = H.dna.species switch(upgrade_type) if(VAULT_TOXIN) - H << "You feel resistant to airborne toxins." + to_chat(H, "You feel resistant to airborne toxins.") if(locate(/obj/item/organ/lungs) in H.internal_organs) var/obj/item/organ/lungs/L = H.internal_organs_slot["lungs"] L.tox_breath_dam_min = 0 L.tox_breath_dam_max = 0 S.species_traits |= VIRUSIMMUNE if(VAULT_NOBREATH) - H << "Your lungs feel great." + to_chat(H, "Your lungs feel great.") S.species_traits |= NOBREATH if(VAULT_FIREPROOF) - H << "You feel fireproof." + to_chat(H, "You feel fireproof.") S.burnmod = 0.5 S.heatmod = 0 if(VAULT_STUNTIME) - H << "Nothing can keep you down for long." + to_chat(H, "Nothing can keep you down for long.") S.stunmod = 0.5 if(VAULT_ARMOUR) - H << "You feel tough." + to_chat(H, "You feel tough.") S.armor = 30 - power_lottery[H] = list() \ No newline at end of file + + if(VAULT_SPEED) + to_chat(H, "Your legs feel faster.") + S.speedmod = -1 + if(VAULT_QUICK) + to_chat(H, "Your arms move as fast as lightning.") + H.next_move_modifier = 0.5 + power_lottery[H] = list() diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm index 70258a54b1..e5d548d830 100644 --- a/code/modules/station_goals/shield.dm +++ b/code/modules/station_goals/shield.dm @@ -109,10 +109,10 @@ /obj/machinery/satellite/proc/toggle(mob/user) if(!active && !isinspace()) if(user) - user << "You can only active the [src] in space." + to_chat(user, "You can only active the [src] in space.") return FALSE if(user) - user << "You [active ? "deactivate": "activate"] the [src]" + to_chat(user, "You [active ? "deactivate": "activate"] the [src]") active = !active if(active) animate(src, pixel_y = 2, time = 10, loop = -1) @@ -127,7 +127,7 @@ /obj/machinery/satellite/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/device/multitool)) - user << "// NTSAT-[id] // Mode : [active ? "PRIMARY" : "STANDBY"] //[emagged ? "DEBUG_MODE //" : ""]" + to_chat(user, "// NTSAT-[id] // Mode : [active ? "PRIMARY" : "STANDBY"] //[emagged ? "DEBUG_MODE //" : ""]") else return ..() diff --git a/code/modules/station_goals/station_goal.dm b/code/modules/station_goals/station_goal.dm index daf6ee7dd1..42a72f0e97 100644 --- a/code/modules/station_goals/station_goal.dm +++ b/code/modules/station_goals/station_goal.dm @@ -13,7 +13,7 @@ /datum/station_goal/proc/send_report() priority_announce("Priority Nanotrasen directive received. Project \"[name]\" details inbound.", "Incoming Priority Message", 'sound/AI/commandreport.ogg') - print_command_report(get_report(),"Nanotrasen Directive [pick(phonetic_alphabet)] \Roman[rand(1,50)]") + print_command_report(get_report(),"Nanotrasen Directive [pick(phonetic_alphabet)] \Roman[rand(1,50)]", announce=FALSE) on_report() /datum/station_goal/proc/on_report() @@ -28,9 +28,9 @@ /datum/station_goal/proc/print_result() if(check_completion()) - world << "Station Goal : [name] : Completed!" + to_chat(world, "Station Goal : [name] : Completed!") else - world << "Station Goal : [name] : Failed!" + to_chat(world, "Station Goal : [name] : Failed!") /datum/station_goal/Destroy() ticker.mode.station_goals -= src @@ -61,4 +61,4 @@ //Should keep sec busy. //Maybe after completion you'll get some ling detecting gear or some station wide DNA scan ? -*/ \ No newline at end of file +*/ diff --git a/code/modules/stock_market/articles.dm b/code/modules/stock_market/articles.dm index bf56287707..08c693b680 100644 --- a/code/modules/stock_market/articles.dm +++ b/code/modules/stock_market/articles.dm @@ -18,7 +18,7 @@ var/global/list/FrozenAccounts = list() /proc/list_frozen() for (var/A in FrozenAccounts) - usr << "[A]: [length(FrozenAccounts[A])] borrows" + to_chat(usr, "[A]: [length(FrozenAccounts[A])] borrows") /datum/article var/headline = "Something big is happening" diff --git a/code/modules/stock_market/computer.dm b/code/modules/stock_market/computer.dm index 69bff59109..51ced45e40 100644 --- a/code/modules/stock_market/computer.dm +++ b/code/modules/stock_market/computer.dm @@ -9,6 +9,8 @@ circuit = /obj/item/weapon/circuitboard/computer/stockexchange clockwork = TRUE //it'd look weird + light_color = LIGHT_COLOR_GREEN + /obj/machinery/computer/stockexchange/New() ..() logged_in = "[station_name()] Cargo Department" @@ -20,7 +22,7 @@ /obj/machinery/computer/stockexchange/attack_ai(mob/user) return attack_hand(user) - + /obj/machinery/computer/stockexchange/attack_robot(mob/user) return attack_hand(user) @@ -176,12 +178,12 @@ a.updated { return var/li = logged_in if (!li) - user << "No active account on the console!" + to_chat(user, "No active account on the console!") return var/b = SSshuttle.points var/avail = S.shareholders[logged_in] if (!avail) - user << "This account does not own any shares of [S.name]!" + to_chat(user, "This account does not own any shares of [S.name]!") return var/price = S.current_value var/amt = round(input(user, "How many shares? \n(Have: [avail], unit price: [price])", "Sell shares in [S.name]", 0) as num|null) @@ -195,14 +197,14 @@ a.updated { return b = SSshuttle.points if (!isnum(b)) - user << "No active account on the console!" + to_chat(user, "No active account on the console!") return var/total = amt * S.current_value if (!S.sellShares(logged_in, amt)) - user << "Could not complete transaction." + to_chat(user, "Could not complete transaction.") return - user << "Sold [amt] shares of [S.name] at [S.current_value] a share for [total] credits." + to_chat(user, "Sold [amt] shares of [S.name] at [S.current_value] a share for [total] credits.") stockExchange.add_log(/datum/stock_log/sell, user.name, S.name, amt, S.current_value, total) /obj/machinery/computer/stockexchange/proc/buy_some_shares(var/datum/stock/S, var/mob/user) @@ -210,11 +212,11 @@ a.updated { return var/li = logged_in if (!li) - user << "No active account on the console!" + to_chat(user, "No active account on the console!") return var/b = balance() if (!isnum(b)) - user << "No active account on the console!" + to_chat(user, "No active account on the console!") return var/avail = S.available_shares var/price = S.current_value @@ -226,26 +228,26 @@ a.updated { return b = balance() if (!isnum(b)) - user << "No active account on the console!" + to_chat(user, "No active account on the console!") return amt = min(amt, S.available_shares, round(b / S.current_value)) if (!amt) return if (!S.buyShares(logged_in, amt)) - user << "<Could not complete transaction." + to_chat(user, "<Could not complete transaction.") return var/total = amt * S.current_value - user << "Bought [amt] shares of [S.name] at [S.current_value] a share for [total] credits." + to_chat(user, "Bought [amt] shares of [S.name] at [S.current_value] a share for [total] credits.") stockExchange.add_log(/datum/stock_log/buy, user.name, S.name, amt, S.current_value, total) /obj/machinery/computer/stockexchange/proc/do_borrowing_deal(var/datum/borrow/B, var/mob/user) if (B.stock.borrow(B, logged_in)) - user << "You successfully borrowed [B.share_amount] shares. Deposit: [B.deposit]." + to_chat(user, "You successfully borrowed [B.share_amount] shares. Deposit: [B.deposit].") stockExchange.add_log(/datum/stock_log/borrow, user.name, B.stock.name, B.share_amount, B.deposit) else - user << "Could not complete transaction. Check your account balance." + to_chat(user, "Could not complete transaction. Check your account balance.") /obj/machinery/computer/stockexchange/Topic(href, href_list) if (..()) diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index 8134844f0c..541f15351a 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -43,9 +43,9 @@ /obj/item/bodypart/examine(mob/user) ..() if(brute_dam > 0) - user << "This limb has [brute_dam > 30 ? "severe" : "minor"] bruising." + to_chat(user, "This limb has [brute_dam > 30 ? "severe" : "minor"] bruising.") if(burn_dam > 0) - user << "This limb has [burn_dam > 30 ? "severe" : "minor"] burns." + to_chat(user, "This limb has [burn_dam > 30 ? "severe" : "minor"] burns.") /obj/item/bodypart/blob_act() take_damage(max_damage) @@ -76,7 +76,7 @@ if(W.sharpness) add_fingerprint(user) if(!contents.len) - user << "There is nothing left inside [src]!" + to_chat(user, "There is nothing left inside [src]!") return playsound(loc, 'sound/weapons/slice.ogg', 50, 1, -1) user.visible_message("[user] begins to cut open [src].",\ @@ -115,6 +115,10 @@ brute = max(0, brute - 5) burn = max(0, burn - 4) + switch(animal_origin) + if(ALIEN_BODYPART,LARVA_BODYPART) //aliens take double burn + burn *= 2 + var/can_inflict = max_damage - (brute_dam + burn_dam) if(!can_inflict) return 0 diff --git a/code/modules/surgery/bodyparts/robot_bodyparts.dm b/code/modules/surgery/bodyparts/robot_bodyparts.dm index 653a131144..92df2fc50f 100644 --- a/code/modules/surgery/bodyparts/robot_bodyparts.dm +++ b/code/modules/surgery/bodyparts/robot_bodyparts.dm @@ -58,23 +58,23 @@ /obj/item/bodypart/chest/robot/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/weapon/stock_parts/cell)) if(src.cell) - user << "You have already inserted a cell!" + to_chat(user, "You have already inserted a cell!") return else if(!user.transferItemToLoc(W, src)) return src.cell = W - user << "You insert the cell." + to_chat(user, "You insert the cell.") else if(istype(W, /obj/item/stack/cable_coil)) if(src.wired) - user << "You have already inserted wire!" + to_chat(user, "You have already inserted wire!") return var/obj/item/stack/cable_coil/coil = W if (coil.use(1)) src.wired = 1 - user << "You insert the wire." + to_chat(user, "You insert the wire.") else - user << "You need one length of coil to wire it!" + to_chat(user, "You need one length of coil to wire it!") else return ..() @@ -111,10 +111,10 @@ if(istype(W, /obj/item/device/assembly/flash/handheld)) var/obj/item/device/assembly/flash/handheld/F = W if(src.flash1 && src.flash2) - user << "You have already inserted the eyes!" + to_chat(user, "You have already inserted the eyes!") return else if(F.crit_fail) - user << "You can't use a broken flash!" + to_chat(user, "You can't use a broken flash!") return else if(!user.transferItemToLoc(F, src)) @@ -123,11 +123,11 @@ src.flash2 = F else src.flash1 = F - user << "You insert the flash into the eye socket." + to_chat(user, "You insert the flash into the eye socket.") else if(istype(W, /obj/item/weapon/crowbar)) if(flash1 || flash2) playsound(src.loc, W.usesound, 50, 1) - user << "You remove the flash from [src]." + to_chat(user, "You remove the flash from [src].") if(flash1) flash1.forceMove(user.loc) flash1 = null @@ -135,7 +135,7 @@ flash2.forceMove(user.loc) flash2 = null else - user << "There are no flash to remove from [src]." + to_chat(user, "There are no flash to remove from [src].") else return ..() @@ -177,15 +177,15 @@ max_damage = 20 /obj/item/bodypart/l_leg/robot/surplus - name = "surplus prosthetic leg" + name = "surplus prosthetic left leg" desc = "A skeletal, robotic limb. Outdated and fragile, but it's still better than nothing." icon = 'icons/mob/augments.dmi' icon_state = "surplus_l_leg" max_damage = 20 /obj/item/bodypart/r_leg/robot/surplus - name = "surplus prosthetic leg" + name = "surplus prosthetic right leg" desc = "A skeletal, robotic limb. Outdated and fragile, but it's still better than nothing." icon = 'icons/mob/augments.dmi' icon_state = "surplus_r_leg" - max_damage = 20 \ No newline at end of file + max_damage = 20 diff --git a/code/modules/surgery/cavity_implant.dm b/code/modules/surgery/cavity_implant.dm index 4723eac4f8..842b6371ae 100644 --- a/code/modules/surgery/cavity_implant.dm +++ b/code/modules/surgery/cavity_implant.dm @@ -25,7 +25,7 @@ var/obj/item/bodypart/chest/CH = target.get_bodypart("chest") if(tool) if(IC || tool.w_class > WEIGHT_CLASS_NORMAL || (NODROP in tool.flags) || istype(tool, /obj/item/organ)) - user << "You can't seem to fit [tool] in [target]'s [target_zone]!" + to_chat(user, "You can't seem to fit [tool] in [target]'s [target_zone]!") return 0 else user.visible_message("[user] stuffs [tool] into [target]'s [target_zone]!", "You stuff [tool] into [target]'s [target_zone].") @@ -40,5 +40,5 @@ CH.cavity_item = null return 1 else - user << "You don't find anything in [target]'s [target_zone]." + to_chat(user, "You don't find anything in [target]'s [target_zone].") return 0 diff --git a/code/modules/surgery/core_removal.dm b/code/modules/surgery/core_removal.dm index f5b8ccf890..9ceec2b7ba 100644 --- a/code/modules/surgery/core_removal.dm +++ b/code/modules/surgery/core_removal.dm @@ -32,5 +32,5 @@ else return 0 else - user << "There aren't any cores left in [target]!" + to_chat(user, "There aren't any cores left in [target]!") return 1 \ No newline at end of file diff --git a/code/modules/surgery/dental_implant.dm b/code/modules/surgery/dental_implant.dm index 71fabfb7e6..eef88e4a5f 100644 --- a/code/modules/surgery/dental_implant.dm +++ b/code/modules/surgery/dental_implant.dm @@ -32,7 +32,7 @@ /datum/action/item_action/hands_free/activate_pill/Trigger() if(!..()) return 0 - owner << "You grit your teeth and burst the implanted [target.name]!" + to_chat(owner, "You grit your teeth and burst the implanted [target.name]!") add_logs(owner, null, "swallowed an implanted pill", target) if(target.reagents.total_volume) target.reagents.reaction(owner, INGEST) diff --git a/code/modules/surgery/eye_surgery.dm b/code/modules/surgery/eye_surgery.dm index 95dd3cf56c..dc6b279fc1 100644 --- a/code/modules/surgery/eye_surgery.dm +++ b/code/modules/surgery/eye_surgery.dm @@ -14,7 +14,7 @@ /datum/surgery/eye_surgery/can_start(mob/user, mob/living/carbon/target) var/obj/item/organ/eyes/E = target.getorganslot("eye_sight") if(!E) - user << "It's hard to do surgery on someones eyes when they don't have any." + to_chat(user, "It's hard to do surgery on someones eyes when they don't have any.") return FALSE /datum/surgery_step/fix_eyes/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) diff --git a/code/modules/surgery/helpers.dm b/code/modules/surgery/helpers.dm index b27096d308..b69a2f1141 100644 --- a/code/modules/surgery/helpers.dm +++ b/code/modules/surgery/helpers.dm @@ -68,7 +68,7 @@ add_logs(user, M, "operated", addition="Operation type: [procedure.name], location: [selected_zone]") else - user << "You need to expose [M]'s [parse_zone(selected_zone)] first!" + to_chat(user, "You need to expose [M]'s [parse_zone(selected_zone)] first!") else if(!current_surgery.step_in_progress) if(current_surgery.status == 1) @@ -82,7 +82,7 @@ "You mend the incision and remove the drapes from [M]'s [parse_zone(selected_zone)].") qdel(current_surgery) else if(current_surgery.can_cancel) - user << "You need to hold a cautery in inactive hand to stop [M]'s surgery!" + to_chat(user, "You need to hold a cautery in inactive hand to stop [M]'s surgery!") return 1 diff --git a/code/modules/surgery/implant_removal.dm b/code/modules/surgery/implant_removal.dm index 2f8f3886fe..7dbeb7a5b4 100644 --- a/code/modules/surgery/implant_removal.dm +++ b/code/modules/surgery/implant_removal.dm @@ -42,5 +42,5 @@ qdel(I) else - user << "You can't find anything in [target]'s [target_zone]!" + to_chat(user, "You can't find anything in [target]'s [target_zone]!") return 1 \ No newline at end of file diff --git a/code/modules/surgery/limb_augmentation.dm b/code/modules/surgery/limb_augmentation.dm index 6d9d5a0cac..c6ade001bb 100644 --- a/code/modules/surgery/limb_augmentation.dm +++ b/code/modules/surgery/limb_augmentation.dm @@ -24,10 +24,10 @@ /datum/surgery_step/add_limb/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) var/obj/item/bodypart/aug = tool if(aug.status != BODYPART_ROBOTIC) - user << "that's not an augment silly!" + to_chat(user, "that's not an augment silly!") return -1 if(aug.body_zone != target_zone) - user << "[tool] isn't the right type for [parse_zone(target_zone)]." + to_chat(user, "[tool] isn't the right type for [parse_zone(target_zone)].") return -1 L = surgery.operated_bodypart if(L) @@ -56,5 +56,5 @@ target.updatehealth() add_logs(user, target, "augmented", addition="by giving him new [parse_zone(target_zone)] INTENT: [uppertext(user.a_intent)]") else - user << "[target] has no organic [parse_zone(target_zone)] there!" + to_chat(user, "[target] has no organic [parse_zone(target_zone)] there!") return 1 \ No newline at end of file diff --git a/code/modules/surgery/organ_manipulation.dm b/code/modules/surgery/organ_manipulation.dm index d599809391..f9f532ec7c 100644 --- a/code/modules/surgery/organ_manipulation.dm +++ b/code/modules/surgery/organ_manipulation.dm @@ -58,7 +58,7 @@ current_type = "insert" I = tool if(target_zone != I.zone || target.getorganslot(I.slot)) - user << "There is no room for [I] in [target]'s [parse_zone(target_zone)]!" + to_chat(user, "There is no room for [I] in [target]'s [parse_zone(target_zone)]!") return -1 user.visible_message("[user] begins to insert [tool] into [target]'s [parse_zone(target_zone)].", @@ -73,7 +73,7 @@ "You begin to extract [B] from [target]'s [parse_zone(target_zone)]...") return TRUE if(!organs.len) - user << "There is no removeable organs in [target]'s [parse_zone(target_zone)]!" + to_chat(user, "There is no removeable organs in [target]'s [parse_zone(target_zone)]!") return -1 else for(var/obj/item/organ/O in organs) @@ -96,7 +96,7 @@ "You begin to mend the incision in [target]'s [parse_zone(target_zone)]...") else if(istype(tool, /obj/item/weapon/reagent_containers/food/snacks/organ)) - user << "[tool] was biten by someone! It's too damaged to use!" + to_chat(user, "[tool] was biten by someone! It's too damaged to use!") return -1 /datum/surgery_step/manipulate_organs/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index 86e497f151..153de8d823 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -31,7 +31,7 @@ /obj/item/organ/cyberimp/arm/examine(mob/user) ..() - user << "[src] is assembled in the [zone == "r_arm" ? "right" : "left"] arm configuration. You can use a screwdriver to reassemble it." + to_chat(user, "[src] is assembled in the [zone == "r_arm" ? "right" : "left"] arm configuration. You can use a screwdriver to reassemble it.") /obj/item/organ/cyberimp/arm/attackby(obj/item/weapon/W, mob/user, params) ..() @@ -41,7 +41,7 @@ else zone = "r_arm" slot = zone + "_device" - user << "You modify [src] to be installed on the [zone == "r_arm" ? "right" : "left"] arm." + to_chat(user, "You modify [src] to be installed on the [zone == "r_arm" ? "right" : "left"] arm.") update_icon() else if(istype(W, /obj/item/weapon/card/emag)) emag_act() @@ -55,7 +55,7 @@ /obj/item/organ/cyberimp/arm/gun/emp_act(severity) if(prob(15/severity) && owner) - owner << "[src] is hit by EMP!" + to_chat(owner, "[src] is hit by EMP!") // give the owner an idea about why his implant is glitching Retract() ..() @@ -70,7 +70,7 @@ if(istype(holder, /obj/item/device/assembly/flash/armimplant)) var/obj/item/device/assembly/flash/F = holder - F.SetLuminosity(0) + F.set_light(0) owner.transferItemToLoc(holder, src, TRUE) holder = null @@ -90,20 +90,20 @@ if(istype(holder, /obj/item/device/assembly/flash/armimplant)) var/obj/item/device/assembly/flash/F = holder - F.SetLuminosity(7) + F.set_light(7) var/obj/item/arm_item = owner.get_active_held_item() if(arm_item) if(!owner.dropItemToGround(arm_item)) - owner << "Your [arm_item] interferes with [src]!" + to_chat(owner, "Your [arm_item] interferes with [src]!") return else - owner << "You drop [arm_item] to activate [src]!" + to_chat(owner, "You drop [arm_item] to activate [src]!") var/result = (zone == "r_arm" ? owner.put_in_r_hand(holder) : owner.put_in_l_hand(holder)) if(!result) - owner << "Your [src] fails to activate!" + to_chat(owner, "Your [src] fails to activate!") return // Activate the hand that now holds our item. @@ -116,7 +116,7 @@ /obj/item/organ/cyberimp/arm/ui_action_click() if(crit_fail || (!holder && !contents.len)) - owner << "The implant doesn't respond. It seems to be broken..." + to_chat(owner, "The implant doesn't respond. It seems to be broken...") return // You can emag the arm-mounted implant by activating it while holding emag in it's hand. @@ -141,7 +141,7 @@ Retract() owner.visible_message("A loud bang comes from [owner]\'s [zone == "r_arm" ? "right" : "left"] arm!") playsound(get_turf(owner), 'sound/weapons/flashbang.ogg', 100, 1) - owner << "You feel an explosion erupt inside your [zone == "r_arm" ? "right" : "left"] arm as your implant breaks!" + to_chat(owner, "You feel an explosion erupt inside your [zone == "r_arm" ? "right" : "left"] arm as your implant breaks!") owner.adjust_fire_stacks(20) owner.IgniteMob() owner.adjustFireLoss(25) @@ -184,7 +184,7 @@ /obj/item/organ/cyberimp/arm/toolset/emag_act() if(!(locate(/obj/item/weapon/kitchen/knife/combat/cyborg) in items_list)) - usr << "You unlock [src]'s integrated knife!" + to_chat(usr, "You unlock [src]'s integrated knife!") items_list += new /obj/item/weapon/kitchen/knife/combat/cyborg(src) return 1 return 0 diff --git a/code/modules/surgery/organs/augments_chest.dm b/code/modules/surgery/organs/augments_chest.dm index e352273a13..8d536632af 100644 --- a/code/modules/surgery/organs/augments_chest.dm +++ b/code/modules/surgery/organs/augments_chest.dm @@ -22,7 +22,7 @@ if(owner.nutrition <= hunger_threshold) synthesizing = TRUE - owner << "You feel less hungry..." + to_chat(owner, "You feel less hungry...") owner.nutrition += 50 sleep(50) synthesizing = FALSE @@ -31,7 +31,7 @@ if(!owner) return owner.reagents.add_reagent("bad_food", poison_amount / severity) - owner << "You feel like your insides are burning." + to_chat(owner, "You feel like your insides are burning.") /obj/item/organ/cyberimp/chest/nutriment/plus @@ -61,7 +61,7 @@ else cooldown = revive_cost + world.time reviving = FALSE - owner << "Your reviver implant shuts down and starts recharging. It will be ready again in [revive_cost/10] seconds." + to_chat(owner, "Your reviver implant shuts down and starts recharging. It will be ready again in [revive_cost/10] seconds.") return if(cooldown > world.time) @@ -73,7 +73,7 @@ revive_cost = 0 reviving = TRUE - owner << "You feel a faint buzzing as your reviver implant starts patching your wounds..." + to_chat(owner, "You feel a faint buzzing as your reviver implant starts patching your wounds...") /obj/item/organ/cyberimp/chest/reviver/proc/heal() if(owner.getOxyLoss()) @@ -102,7 +102,7 @@ var/mob/living/carbon/human/H = owner if(H.stat != DEAD && prob(50 / severity) && H.can_heartattack()) H.set_heartattack(TRUE) - H << "You feel a horrible agony in your chest!" + to_chat(H, "You feel a horrible agony in your chest!") addtimer(CALLBACK(src, .proc/undo_heart_attack), 600 / severity) /obj/item/organ/cyberimp/chest/reviver/proc/undo_heart_attack() @@ -111,7 +111,7 @@ return H.set_heartattack(FALSE) if(H.stat == CONSCIOUS) - H << "You feel your heart beating again!" + to_chat(H, "You feel your heart beating again!") /obj/item/organ/cyberimp/chest/thrusters @@ -146,17 +146,17 @@ if(!on) if(crit_fail) if(!silent) - owner << "Your thrusters set seems to be broken!" + to_chat(owner, "Your thrusters set seems to be broken!") return 0 on = 1 if(allow_thrust(0.01)) ion_trail.start() if(!silent) - owner << "You turn your thrusters set on." + to_chat(owner, "You turn your thrusters set on.") else ion_trail.stop() if(!silent) - owner << "You turn your thrusters set off." + to_chat(owner, "You turn your thrusters set off.") on = 0 update_icon() diff --git a/code/modules/surgery/organs/augments_internal.dm b/code/modules/surgery/organs/augments_internal.dm index 51fc8f1ab2..384a0f311c 100644 --- a/code/modules/surgery/organs/augments_internal.dm +++ b/code/modules/surgery/organs/augments_internal.dm @@ -33,7 +33,7 @@ return var/stun_amount = 5 + (severity-1 ? 0 : 5) owner.Stun(stun_amount) - owner << "Your body seizes up!" + to_chat(owner, "Your body seizes up!") return stun_amount @@ -56,17 +56,17 @@ var/list/L = owner.get_empty_held_indexes() if(LAZYLEN(L) == owner.held_items.len) - owner << "You are not holding any items, your hands relax..." + to_chat(owner, "You are not holding any items, your hands relax...") active = 0 stored_items = list() else for(var/obj/item/I in stored_items) - owner << "Your [owner.get_held_index_name(owner.get_held_index_of_item(I))]'s grip tightens." + to_chat(owner, "Your [owner.get_held_index_name(owner.get_held_index_of_item(I))]'s grip tightens.") I.flags |= NODROP else release_items() - owner << "Your hands relax..." + to_chat(owner, "Your hands relax...") /obj/item/organ/cyberimp/brain/anti_drop/emp_act(severity) @@ -80,7 +80,7 @@ for(var/obj/item/I in stored_items) A = pick(oview(range)) I.throw_at(A, range, 2) - owner << "Your [owner.get_held_index_name(owner.get_held_index_of_item(I))] spasms and throws the [I.name]!" + to_chat(owner, "Your [owner.get_held_index_name(owner.get_held_index_of_item(I))] spasms and throws the [I.name]!") stored_items = list() @@ -136,7 +136,7 @@ /obj/item/organ/cyberimp/mouth/breathing_tube/emp_act(severity) if(prob(60/severity)) - owner << "Your breathing tube suddenly closes!" + to_chat(owner, "Your breathing tube suddenly closes!") owner.losebreath += 2 diff --git a/code/modules/surgery/organs/autoimplanter.dm b/code/modules/surgery/organs/autoimplanter.dm index b8d8ea21f0..0f62fb49c5 100644 --- a/code/modules/surgery/organs/autoimplanter.dm +++ b/code/modules/surgery/organs/autoimplanter.dm @@ -17,10 +17,10 @@ /obj/item/device/autoimplanter/attack_self(mob/user)//when the object it used... if(!uses) - user << "[src] has already been used. The tools are dull and won't reactivate." + to_chat(user, "[src] has already been used. The tools are dull and won't reactivate.") return else if(!storedorgan) - user << "[src] currently has no implant stored." + to_chat(user, "[src] currently has no implant stored.") return storedorgan.Insert(user)//insert stored organ into the user user.visible_message("[user] presses a button on [src], and you hear a short mechanical noise.", "You feel a sharp sting as [src] plunges into your body.") @@ -34,23 +34,23 @@ /obj/item/device/autoimplanter/attackby(obj/item/I, mob/user, params) if(istype(I, organ_type)) if(storedorgan) - user << "[src] already has an implant stored." + to_chat(user, "[src] already has an implant stored.") return else if(!uses) - user << "[src] has already been used up." + to_chat(user, "[src] has already been used up.") return if(!user.drop_item()) return I.loc = src storedorgan = I - user << "You insert the [I] into [src]." + to_chat(user, "You insert the [I] into [src].") else if(istype(I, /obj/item/weapon/screwdriver)) if(!storedorgan) - user << "There's no implant in [src] for you to remove." + to_chat(user, "There's no implant in [src] for you to remove.") else var/turf/open/floorloc = get_turf(user) floorloc.contents += contents - user << "You remove the [storedorgan] from [src]." + to_chat(user, "You remove the [storedorgan] from [src].") playsound(get_turf(user), I.usesound, 50, 1) storedorgan = null if(uses != INFINITE) diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index 9b34f72812..6886da7593 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -51,7 +51,7 @@ /obj/item/organ/examine(mob/user) ..() if(status == ORGAN_ROBOTIC && crit_fail) - user << "[src] seems to be broken!" + to_chat(user, "[src] seems to be broken!") /obj/item/organ/proc/prepare_eat() @@ -181,7 +181,7 @@ var/mob/living/carbon/human/H = owner if(H.dna && !(NOBLOOD in H.dna.species.species_traits)) H.blood_volume = max(H.blood_volume - blood_loss, 0) - H << "You have to keep pumping your blood!" + to_chat(H, "You have to keep pumping your blood!") if(add_colour) H.add_client_colour(/datum/client_colour/cursed_heart_blood) //bloody screen so real add_colour = FALSE @@ -191,7 +191,7 @@ /obj/item/organ/heart/cursed/Insert(mob/living/carbon/M, special = 0) ..() if(owner) - owner << "Your heart has been replaced with a cursed one, you have to pump this one manually otherwise you'll die!" + to_chat(owner, "Your heart has been replaced with a cursed one, you have to pump this one manually otherwise you'll die!") /datum/action/item_action/organ_action/cursed_heart name = "Pump your blood" @@ -203,12 +203,12 @@ var/obj/item/organ/heart/cursed/cursed_heart = target if(world.time < (cursed_heart.last_pump + (cursed_heart.pump_delay-10))) //no spam - owner << "Too soon!" + to_chat(owner, "Too soon!") return cursed_heart.last_pump = world.time playsound(owner,'sound/effects/singlebeat.ogg',40,1) - owner << "Your heart beats." + to_chat(owner, "Your heart beats.") var/mob/living/carbon/human/H = owner if(istype(H)) @@ -577,10 +577,10 @@ var/datum/species/abductor/Byy = H.dna.species if(Ayy.team != Byy.team) continue - H << rendered + to_chat(H, rendered) for(var/mob/M in dead_mob_list) var/link = FOLLOW_LINK(M, user) - M << "[link] [rendered]" + to_chat(M, "[link] [rendered]") return "" /obj/item/organ/tongue/zombie @@ -704,6 +704,8 @@ return 0 /mob/living/carbon/regenerate_organs() + CHECK_DNA_AND_SPECIES(src) + if(!(NOBREATH in dna.species.species_traits) && !getorganslot("lungs")) var/obj/item/organ/lungs/L = new() L.Insert(src) @@ -747,18 +749,21 @@ var/sight_flags = 0 var/see_in_dark = 2 var/tint = 0 - var/eye_color = "fff" + var/eye_color = "" //set to a hex code to override a mob's eye color var/old_eye_color = "fff" var/flash_protect = 0 var/see_invisible = SEE_INVISIBLE_LIVING /obj/item/organ/eyes/Insert(mob/living/carbon/M, special = 0) ..() - if(ishuman(owner) && eye_color) + if(ishuman(owner)) var/mob/living/carbon/human/HMN = owner old_eye_color = HMN.eye_color - HMN.eye_color = eye_color - HMN.regenerate_icons() + if(eye_color) + HMN.eye_color = eye_color + HMN.regenerate_icons() + else + eye_color = HMN.eye_color M.update_tint() owner.update_sight() @@ -812,7 +817,7 @@ if(severity > 1) if(prob(10 * severity)) return - owner << "Static obfuscates your vision!" + to_chat(owner, "Static obfuscates your vision!") owner.flash_act(visual = 1) /obj/item/organ/eyes/robotic/xray @@ -846,11 +851,11 @@ /obj/item/organ/eyes/robotic/flashlight/Insert(var/mob/living/carbon/M, var/special = 0) ..() - M.AddLuminosity(15) + set_light(15) /obj/item/organ/eyes/robotic/flashlight/Remove(var/mob/living/carbon/M, var/special = 0) - M.AddLuminosity(-15) + set_light(-15) ..() // Welding shield implant diff --git a/code/modules/surgery/organs/vocal_cords.dm b/code/modules/surgery/organs/vocal_cords.dm index 9ea5d030da..6c2e8a4ad6 100644 --- a/code/modules/surgery/organs/vocal_cords.dm +++ b/code/modules/surgery/organs/vocal_cords.dm @@ -101,7 +101,7 @@ var/static/regex/multispin_words = regex("like a record baby|right round") . = ..() if(!IsAvailable()) if(world.time < cords.next_command) - owner << "You must wait [(cords.next_command - world.time)/10] seconds before Speaking again." + to_chat(owner, "You must wait [(cords.next_command - world.time)/10] seconds before Speaking again.") return var/command = input(owner, "Speak with the Voice of God", "Command") if(QDELETED(src) || QDELETED(owner)) @@ -112,12 +112,12 @@ var/static/regex/multispin_words = regex("like a record baby|right round") /obj/item/organ/vocal_cords/colossus/can_speak_with() if(world.time < next_command) - owner << "You must wait [(next_command - world.time)/10] seconds before Speaking again." + to_chat(owner, "You must wait [(next_command - world.time)/10] seconds before Speaking again.") return FALSE if(!owner) return FALSE if(!owner.can_speak()) - owner << "You are unable to speak!" + to_chat(owner, "You are unable to speak!") return FALSE return TRUE diff --git a/code/modules/surgery/prosthetic_replacement.dm b/code/modules/surgery/prosthetic_replacement.dm index e37e99ffee..9d56acde18 100644 --- a/code/modules/surgery/prosthetic_replacement.dm +++ b/code/modules/surgery/prosthetic_replacement.dm @@ -25,13 +25,13 @@ var/obj/item/bodypart/BP = tool if(ismonkey(target))// monkey patient only accept organic monkey limbs if(BP.status == BODYPART_ROBOTIC || BP.animal_origin != MONKEY_BODYPART) - user << "[BP] doesn't match the patient's morphology." + to_chat(user, "[BP] doesn't match the patient's morphology.") return -1 if(BP.status != BODYPART_ROBOTIC) organ_rejection_dam = 10 if(ishuman(target)) if(BP.animal_origin) - user << "[BP] doesn't match the patient's morphology." + to_chat(user, "[BP] doesn't match the patient's morphology.") return -1 var/mob/living/carbon/human/H = target if(H.dna.species.id != BP.species_id) @@ -40,12 +40,12 @@ if(target_zone == BP.body_zone) //so we can't replace a leg with an arm, or a human arm with a monkey arm. user.visible_message("[user] begins to replace [target]'s [parse_zone(target_zone)].", "You begin to replace [target]'s [parse_zone(target_zone)]...") else - user << "[tool] isn't the right type for [parse_zone(target_zone)]." + to_chat(user, "[tool] isn't the right type for [parse_zone(target_zone)].") return -1 else if(target_zone == "l_arm" || target_zone == "r_arm") user.visible_message("[user] begins to attach [tool] onto [target].", "You begin to attach [tool] onto [target]...") else - user << "[tool] must be installed onto an arm." + to_chat(user, "[tool] must be installed onto an arm.") return -1 /datum/surgery_step/add_prosthetic/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) diff --git a/code/modules/surgery/remove_embedded_object.dm b/code/modules/surgery/remove_embedded_object.dm index a4b0b67a1a..f2c1e143b6 100644 --- a/code/modules/surgery/remove_embedded_object.dm +++ b/code/modules/surgery/remove_embedded_object.dm @@ -32,9 +32,9 @@ if(objects > 0) user.visible_message("[user] sucessfully removes [objects] objects from [H]'s [L]!", "You successfully remove [objects] objects from [H]'s [L.name].") else - user << "You find no objects embedded in [H]'s [L]!" + to_chat(user, "You find no objects embedded in [H]'s [L]!") else - user << "You can't find [target]'s [parse_zone(user.zone_selected)], let alone any objects embedded in it!" + to_chat(user, "You can't find [target]'s [parse_zone(user.zone_selected)], let alone any objects embedded in it!") return 1 \ No newline at end of file diff --git a/code/modules/surgery/surgery_step.dm b/code/modules/surgery/surgery_step.dm index b99a732f33..7047c50084 100644 --- a/code/modules/surgery/surgery_step.dm +++ b/code/modules/surgery/surgery_step.dm @@ -29,7 +29,7 @@ initiate(user, target, target_zone, tool, surgery) return 1 else - user << "You need to expose [target]'s [parse_zone(target_zone)] to perform surgery on it!" + 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. if(iscyborg(user) && user.a_intent != INTENT_HARM) //to save asimov borgs a LOT of heartache return 1 diff --git a/code/modules/telesci/bscrystal.dm b/code/modules/telesci/bscrystal.dm index 4ae2435a02..a346540df4 100644 --- a/code/modules/telesci/bscrystal.dm +++ b/code/modules/telesci/bscrystal.dm @@ -66,7 +66,7 @@ var/crystal_type = /obj/item/weapon/ore/bluespace_crystal/refined /obj/item/stack/sheet/bluespace_crystal/attack_self(mob/user) // to prevent the construction menu from ever happening - user << "You cannot crush the polycrystal in-hand, try breaking one off." + to_chat(user, "You cannot crush the polycrystal in-hand, try breaking one off.") return /obj/item/stack/sheet/bluespace_crystal/attack_hand(mob/user) @@ -78,8 +78,8 @@ amount-- if (amount == 0) qdel(src) - user << "You break the final crystal off." - else user << "You break off a crystal." + to_chat(user, "You break the final crystal off.") + else to_chat(user, "You break off a crystal.") else ..() return \ No newline at end of file diff --git a/code/modules/telesci/gps.dm b/code/modules/telesci/gps.dm index 8c62fe4bd7..53874de1ce 100644 --- a/code/modules/telesci/gps.dm +++ b/code/modules/telesci/gps.dm @@ -37,19 +37,19 @@ var/list/GPS_list = list() if(!user.canUseTopic(src, be_close=TRUE)) return //user not valid to use gps if(emped) - user << "It's busted!" + to_chat(user, "It's busted!") if(tracking) cut_overlay("working") - user << "[src] is no longer tracking, or visible to other GPS devices." + to_chat(user, "[src] is no longer tracking, or visible to other GPS devices.") tracking = FALSE else add_overlay("working") - user << "[src] is now tracking, and visible to other GPS devices." + to_chat(user, "[src] is now tracking, and visible to other GPS devices.") tracking = TRUE /obj/item/device/gps/attack_self(mob/user) if(!tracking) - user << "[src] is turned off. Use alt+click to toggle it back on." + to_chat(user, "[src] is turned off. Use alt+click to toggle it back on.") return var/obj/item/device/gps/t = "" diff --git a/code/modules/telesci/telepad.dm b/code/modules/telesci/telepad.dm index 0eb6338a44..e681a0693d 100644 --- a/code/modules/telesci/telepad.dm +++ b/code/modules/telesci/telepad.dm @@ -40,7 +40,7 @@ if(istype(I, /obj/item/device/multitool)) var/obj/item/device/multitool/M = I M.buffer = src - user << "You save the data in the [I.name]'s buffer." + to_chat(user, "You save the data in the [I.name]'s buffer.") return 1 if(exchange_parts(user, I)) @@ -69,28 +69,28 @@ playsound(src, 'sound/items/Ratchet.ogg', 50, 1) if(anchored) anchored = 0 - user << "\The [src] can now be moved." + to_chat(user, "\The [src] can now be moved.") else if(!anchored) anchored = 1 - user << "\The [src] is now secured." + to_chat(user, "\The [src] is now secured.") else if(istype(W, /obj/item/weapon/screwdriver)) if(stage == 0) playsound(src, W.usesound, 50, 1) - user << "You unscrew the telepad's tracking beacon." + to_chat(user, "You unscrew the telepad's tracking beacon.") stage = 1 else if(stage == 1) playsound(src, W.usesound, 50, 1) - user << "You screw in the telepad's tracking beacon." + to_chat(user, "You screw in the telepad's tracking beacon.") stage = 0 else if(istype(W, /obj/item/weapon/weldingtool) && stage == 1) var/obj/item/weapon/weldingtool/WT = W if(WT.remove_fuel(0,user)) playsound(src.loc, 'sound/items/Welder2.ogg', 100, 1) - user << "You start disassembling [src]..." + to_chat(user, "You start disassembling [src]...") if(do_after(user,20*WT.toolspeed, target = src)) if(!WT.isOn()) return - user << "You disassemble [src]." + to_chat(user, "You disassemble [src].") new /obj/item/stack/sheet/metal(get_turf(src)) new /obj/item/stack/sheet/glass(get_turf(src)) qdel(src) @@ -108,7 +108,7 @@ /obj/item/device/telepad_beacon/attack_self(mob/user) if(user) - user << "Locked In" + to_chat(user, "Locked In") new /obj/machinery/telepad_cargo(user.loc) playsound(src, 'sound/effects/pop.ogg', 100, 1, 1) qdel(src) @@ -140,7 +140,7 @@ /obj/item/weapon/rcs/examine(mob/user) ..() - user << "There are [rcharges] charge\s left." + to_chat(user, "There are [rcharges] charge\s left.") /obj/item/weapon/rcs/Destroy() STOP_PROCESSING(SSobj, src) @@ -159,11 +159,11 @@ if(mode == 0) mode = 1 playsound(src.loc, 'sound/effects/pop.ogg', 50, 0) - user << "The telepad locator has become uncalibrated." + to_chat(user, "The telepad locator has become uncalibrated.") else mode = 0 playsound(src.loc, 'sound/effects/pop.ogg', 50, 0) - user << "You calibrate the telepad locator." + to_chat(user, "You calibrate the telepad locator.") /obj/item/weapon/rcs/emag_act(mob/user) if(!emagged) @@ -171,4 +171,4 @@ var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread s.set_up(5, 1, src) s.start() - user << "You emag the RCS. Click on it to toggle between modes." + to_chat(user, "You emag the RCS. Click on it to toggle between modes.") diff --git a/code/modules/telesci/telesci_computer.dm b/code/modules/telesci/telesci_computer.dm index f9e23726ef..d9d5486736 100644 --- a/code/modules/telesci/telesci_computer.dm +++ b/code/modules/telesci/telesci_computer.dm @@ -43,7 +43,7 @@ /obj/machinery/computer/telescience/examine(mob/user) ..() - user << "There are [crystals.len ? crystals.len : "no"] bluespace crystal\s in the crystal slots." + to_chat(user, "There are [crystals.len ? crystals.len : "no"] bluespace crystal\s in the crystal slots.") /obj/machinery/computer/telescience/Initialize(mapload) ..() @@ -52,13 +52,13 @@ crystals += new /obj/item/weapon/ore/bluespace_crystal/artificial(null) // starting crystals /obj/machinery/computer/telescience/attack_paw(mob/user) - user << "You are too primitive to use this computer!" + to_chat(user, "You are too primitive to use this computer!") return /obj/machinery/computer/telescience/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/weapon/ore/bluespace_crystal)) if(crystals.len >= max_crystals) - user << "There are not enough crystal slots." + to_chat(user, "There are not enough crystal slots.") return if(!user.drop_item()) return @@ -77,7 +77,7 @@ if(M.buffer && istype(M.buffer, /obj/machinery/telepad)) telepad = M.buffer M.buffer = null - user << "You upload the data from the [W.name]'s buffer." + to_chat(user, "You upload the data from the [W.name]'s buffer.") else return ..() diff --git a/code/modules/tgui/states/observer.dm b/code/modules/tgui/states/observer.dm new file mode 100644 index 0000000000..98fa40509a --- /dev/null +++ b/code/modules/tgui/states/observer.dm @@ -0,0 +1,13 @@ + /** + * tgui state: observer_state + * + * Checks that the user is an observer/ghost. + **/ + +/var/global/datum/ui_state/observer_state/observer_state = new() + +/datum/ui_state/observer_state/can_use_topic(src_object, mob/user) + if(isobserver(user)) + return UI_INTERACTIVE + return UI_CLOSE + diff --git a/code/modules/tgui/subsystem.dm b/code/modules/tgui/subsystem.dm index 7de5514158..b010a2f510 100644 --- a/code/modules/tgui/subsystem.dm +++ b/code/modules/tgui/subsystem.dm @@ -17,7 +17,7 @@ * * return datum/tgui The found UI. **/ -/datum/subsystem/tgui/proc/try_update_ui(mob/user, datum/src_object, ui_key, datum/tgui/ui, force_open = 0) +/datum/controller/subsystem/tgui/proc/try_update_ui(mob/user, datum/src_object, ui_key, datum/tgui/ui, force_open = 0) if(isnull(ui)) // No UI was passed, so look for one. ui = get_open_ui(user, src_object, ui_key) @@ -42,7 +42,7 @@ * * return datum/tgui The found UI. **/ -/datum/subsystem/tgui/proc/get_open_ui(mob/user, datum/src_object, ui_key) +/datum/controller/subsystem/tgui/proc/get_open_ui(mob/user, datum/src_object, ui_key) var/src_object_key = "\ref[src_object]" if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) return null // No UIs open. @@ -64,7 +64,7 @@ * * return int The number of UIs updated. **/ -/datum/subsystem/tgui/proc/update_uis(datum/src_object) +/datum/controller/subsystem/tgui/proc/update_uis(datum/src_object) var/src_object_key = "\ref[src_object]" if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) return 0 // Couldn't find any UIs for this object. @@ -86,7 +86,7 @@ * * return int The number of UIs closed. **/ -/datum/subsystem/tgui/proc/close_uis(datum/src_object) +/datum/controller/subsystem/tgui/proc/close_uis(datum/src_object) var/src_object_key = "\ref[src_object]" if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) return 0 // Couldn't find any UIs for this object. @@ -106,7 +106,7 @@ * * return int The number of UIs closed. **/ -/datum/subsystem/tgui/proc/close_all_uis() +/datum/controller/subsystem/tgui/proc/close_all_uis() var/close_count = 0 for(var/src_object_key in open_uis) for(var/ui_key in open_uis[src_object_key]) @@ -127,7 +127,7 @@ * * return int The number of UIs updated. **/ -/datum/subsystem/tgui/proc/update_user_uis(mob/user, datum/src_object = null, ui_key = null) +/datum/controller/subsystem/tgui/proc/update_user_uis(mob/user, datum/src_object = null, ui_key = null) if(isnull(user.open_uis) || !istype(user.open_uis, /list) || open_uis.len == 0) return 0 // Couldn't find any UIs for this user. @@ -149,7 +149,7 @@ * * return int The number of UIs closed. **/ -/datum/subsystem/tgui/proc/close_user_uis(mob/user, datum/src_object = null, ui_key = null) +/datum/controller/subsystem/tgui/proc/close_user_uis(mob/user, datum/src_object = null, ui_key = null) if(isnull(user.open_uis) || !istype(user.open_uis, /list) || open_uis.len == 0) return 0 // Couldn't find any UIs for this user. @@ -167,7 +167,7 @@ * * required ui datum/tgui The UI to be added. **/ -/datum/subsystem/tgui/proc/on_open(datum/tgui/ui) +/datum/controller/subsystem/tgui/proc/on_open(datum/tgui/ui) var/src_object_key = "\ref[ui.src_object]" if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) open_uis[src_object_key] = list(ui.ui_key = list()) // Make a list for the ui_key and src_object. @@ -189,7 +189,7 @@ * * return bool If the UI was removed or not. **/ -/datum/subsystem/tgui/proc/on_close(datum/tgui/ui) +/datum/controller/subsystem/tgui/proc/on_close(datum/tgui/ui) var/src_object_key = "\ref[ui.src_object]" if(isnull(open_uis[src_object_key]) || !istype(open_uis[src_object_key], /list)) return 0 // It wasn't open. @@ -219,7 +219,7 @@ * * return int The number of UIs closed. **/ -/datum/subsystem/tgui/proc/on_logout(mob/user) +/datum/controller/subsystem/tgui/proc/on_logout(mob/user) return close_user_uis(user) /** @@ -232,7 +232,7 @@ * * return bool If the UIs were transferred. **/ -/datum/subsystem/tgui/proc/on_transfer(mob/source, mob/target) +/datum/controller/subsystem/tgui/proc/on_transfer(mob/source, mob/target) if(!source || isnull(source.open_uis) || !istype(source.open_uis, /list) || open_uis.len == 0) return 0 // The old mob had no open UIs. diff --git a/code/modules/uplink/uplink.dm b/code/modules/uplink/uplink.dm index 1fcd8aa230..90b654e4ad 100644 --- a/code/modules/uplink/uplink.dm +++ b/code/modules/uplink/uplink.dm @@ -50,7 +50,7 @@ var/global/list/uplinks = list() if(I.type == path && refundable && I.check_uplink_validity()) telecrystals += cost spent_telecrystals -= cost - user << "[I] refunded." + to_chat(user, "[I] refunded.") qdel(I) return ..() diff --git a/code/modules/uplink/uplink_item.dm b/code/modules/uplink/uplink_item.dm index 288eb9247c..67fc9ea1b5 100644 --- a/code/modules/uplink/uplink_item.dm +++ b/code/modules/uplink/uplink_item.dm @@ -112,9 +112,9 @@ var/list/uplink_items = list() // Global list so we only initialize this once. if(ishuman(user) && istype(A, /obj/item)) var/mob/living/carbon/human/H = user if(H.put_in_hands(A)) - H << "[A] materializes into your hands!" + to_chat(H, "[A] materializes into your hands!") else - H << "\The [A] materializes onto the floor." + to_chat(H, "\The [A] materializes onto the floor.") return 1 //Discounts (dynamically filled above) @@ -590,9 +590,10 @@ var/list/uplink_items = list() // Global list so we only initialize this once. name = "CQC Manual" desc = "A manual that teaches a single user tactical Close-Quarters Combat before self-destructing." item = /obj/item/weapon/cqc_manual + include_modes = list(/datum/game_mode/nuclear) cost = 13 - surplus = 1 - include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/traitor) + surplus = 0 + /datum/uplink_item/stealthy_weapons/throwingweapons name = "Box of Throwing Weapons" desc = "A box of shurikens and reinforced bolas from ancient Earth martial arts. They are highly effective \ @@ -1079,6 +1080,12 @@ var/list/uplink_items = list() // Global list so we only initialize this once. item = /obj/item/stack/telecrystal/twenty cost = 20 +/datum/uplink_item/device_tools/jammer + name = "Radio jammer" + desc = "This device will disrupt any nearby outgoing radio communication when activated." + item = /obj/item/device/jammer + cost = 10 + // Implants /datum/uplink_item/implants category = "Implants" @@ -1193,9 +1200,10 @@ var/list/uplink_items = list() // Global list so we only initialize this once. /datum/uplink_item/role_restricted/mimery name = "Guide to Advanced Mimery Series" desc = "The classical two part series on how to further hone your mime skills. Upon studying the series, the user should be able to make 3x1 invisble walls, and shoot bullets out of their fingers. Obviously only works for Mimes." - cost = 15 + cost = 12 item = /obj/item/weapon/storage/box/syndie_kit/mimery restricted_roles = list("Mime") + surplus = 0 /datum/uplink_item/role_restricted/ez_clean_bundle name = "EZ Clean Grenade Bundle" @@ -1215,13 +1223,22 @@ var/list/uplink_items = list() // Global list so we only initialize this once. cost = 20 restricted_roles = list("Chaplain") surplus = 5 //Very low chance to get it in a surplus crate even without being the chaplain + /datum/uplink_item/role_restricted/ancient_jumpsuit name = "Ancient Jumpsuit" desc = "A tattered old jumpsuit that will provide absolutely no benefit to you. It fills the wearer with a strange compulsion to blurt out 'glorf'." item = /obj/item/clothing/under/color/grey/glorf cost = 20 - surplus = 0 restricted_roles = list("Assistant") + surplus = 0 + +/datum/uplink_item/role_restricted/haunted_magic_eightball + name = "Haunted Magic Eightball" + desc = "Most magic eightballs are toys with dice inside. Although identical in appearance to the harmless toys, this occult device reaches into the spirit world to find its answers. Be warned, that spirits are often capricious or just little assholes. To use, simply speak your question aloud, then begin shaking." + item = /obj/item/toy/eightball/haunted + cost = 2 + restricted_roles = list("Librarian") + limited_stock = 1 // please don't spam deadchat // Pointless /datum/uplink_item/badass diff --git a/code/modules/vehicles/bicycle.dm b/code/modules/vehicles/bicycle.dm new file mode 100644 index 0000000000..0c3e5e02c7 --- /dev/null +++ b/code/modules/vehicles/bicycle.dm @@ -0,0 +1,30 @@ +/obj/vehicle/bicycle + name = "bicycle" + desc = "Keep away from electricity." + icon_state = "bicycle" + var/easter_egg_chance = 1 + +var/static/list/bike_music = list('sound/misc/bike1.mid', + 'sound/misc/bike2.mid', + 'sound/misc/bike3.mid') +/obj/vehicle/bicycle/New() + ..() + riding_datum = new/datum/riding/bicycle + +/obj/vehicle/bicycle/buckle_mob(mob/living/M, force = 0, check_loc = 1) + if(prob(easter_egg_chance) || (SSevent.holidays && SSevent.holidays[APRIL_FOOLS])) + M << sound(pick(bike_music), repeat = 1, wait = 0, volume = 80, channel = 42) + . = ..() + +/obj/vehicle/bicycle/unbuckle_mob(mob/living/buckled_mob,force = 0) + if(buckled_mob) + buckled_mob << sound(null, repeat = 0, wait = 0, volume = 80, channel = 42) + . =..() + +/obj/vehicle/bicycle/tesla_act() // :::^^^))) + name = "fried bicycle" + desc = "Well spent." + riding_datum = null + color = rgb(63, 23, 4) + for(var/m in buckled_mobs) + unbuckle_mob(m,1) diff --git a/code/modules/vehicles/pimpin_ride.dm b/code/modules/vehicles/pimpin_ride.dm index 01813f46ff..54ac1111b1 100644 --- a/code/modules/vehicles/pimpin_ride.dm +++ b/code/modules/vehicles/pimpin_ride.dm @@ -46,24 +46,24 @@ /obj/vehicle/janicart/examine(mob/user) ..() if(floorbuffer) - user << "It has been upgraded with a floor buffer." + to_chat(user, "It has been upgraded with a floor buffer.") /obj/vehicle/janicart/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/storage/bag/trash)) if(mybag) - user << "[src] already has a trashbag hooked!" + to_chat(user, "[src] already has a trashbag hooked!") return if(!user.drop_item()) return - user << "You hook the trashbag onto \the [name]." + to_chat(user, "You hook the trashbag onto \the [name].") I.loc = src mybag = I update_icon() else if(istype(I, /obj/item/janiupgrade)) floorbuffer = 1 qdel(I) - user << "You upgrade \the [name] with the floor buffer." + to_chat(user, "You upgrade \the [name] with the floor buffer.") update_icon() else return ..() diff --git a/code/modules/vehicles/scooter.dm b/code/modules/vehicles/scooter.dm index 5a4d81eaaf..b4a0e85b0a 100644 --- a/code/modules/vehicles/scooter.dm +++ b/code/modules/vehicles/scooter.dm @@ -5,12 +5,16 @@ /obj/vehicle/scooter/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wrench)) - user << "You begin to remove the handlebars..." + to_chat(user, "You begin to remove the handlebars...") playsound(get_turf(user), 'sound/items/Ratchet.ogg', 50, 1) if(do_after(user, 40*I.toolspeed, target = src)) - new /obj/vehicle/scooter/skateboard(get_turf(src)) + var/obj/vehicle/scooter/skateboard/S = new /obj/vehicle/scooter/skateboard(get_turf(src)) new /obj/item/stack/rods(get_turf(src),2) - user << "You remove the handlebars from [src]." + to_chat(user, "You remove the handlebars from [src].") + if(has_buckled_mobs()) + var/mob/living/carbon/H = buckled_mobs[1] + unbuckle_mob(H) + S.buckle_mob(H) qdel(src) @@ -19,7 +23,7 @@ if(!istype(M)) return 0 if(M.get_num_legs() < 2 && M.get_num_arms() <= 0) - M << "Your limbless body can't ride \the [src]." + to_chat(M, "Your limbless body can't ride \the [src].") return 0 . = ..() @@ -61,7 +65,7 @@ if(!istype(M) || M.incapacitated() || !Adjacent(M)) return if(has_buckled_mobs() && over_object == M) - M << "You can't lift this up when somebody's on it." + to_chat(M, "You can't lift this up when somebody's on it.") return if(over_object == M) var/obj/item/weapon/melee/skateboard/board = new /obj/item/weapon/melee/skateboard() @@ -78,7 +82,7 @@ /obj/item/scooter_frame/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/wrench)) - user << "You deconstruct [src]." + to_chat(user, "You deconstruct [src].") new /obj/item/stack/rods(get_turf(src),10) playsound(get_turf(user), 'sound/items/Ratchet.ogg', 50, 1) qdel(src) @@ -87,37 +91,44 @@ else if(istype(I, /obj/item/stack/sheet/metal)) var/obj/item/stack/sheet/metal/M = I if(M.get_amount() < 5) - user << "You need at least five metal sheets to make proper wheels!" + to_chat(user, "You need at least five metal sheets to make proper wheels!") return - user << "You begin to add wheels to [src]." + to_chat(user, "You begin to add wheels to [src].") if(do_after(user, 80, target = src)) if(!M || M.get_amount() < 5) return M.use(5) - user << "You finish making wheels for [src]." + to_chat(user, "You finish making wheels for [src].") new /obj/vehicle/scooter/skateboard(user.loc) qdel(src) /obj/vehicle/scooter/skateboard/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/screwdriver)) - user << "You begin to deconstruct and remove the wheels on [src]..." + to_chat(user, "You begin to deconstruct and remove the wheels on [src]...") playsound(get_turf(user), I.usesound, 50, 1) if(do_after(user, 20, target = src)) - user << "You deconstruct the wheels on [src]." + to_chat(user, "You deconstruct the wheels on [src].") new /obj/item/stack/sheet/metal(get_turf(src),5) new /obj/item/scooter_frame(get_turf(src)) + if(has_buckled_mobs()) + var/mob/living/carbon/H = buckled_mobs[1] + unbuckle_mob(H) qdel(src) else if(istype(I, /obj/item/stack/rods)) var/obj/item/stack/rods/C = I if(C.get_amount() < 2) - user << "You need at least two rods to make proper handlebars!" + to_chat(user, "You need at least two rods to make proper handlebars!") return - user << "You begin making handlebars for [src]." + to_chat(user, "You begin making handlebars for [src].") if(do_after(user, 25, target = src)) if(!C || C.get_amount() < 2) return - user << "You add the rods to [src], creating handlebars." + to_chat(user, "You add the rods to [src], creating handlebars.") C.use(2) - new/obj/vehicle/scooter(get_turf(src)) + var/obj/vehicle/scooter/S = new/obj/vehicle/scooter(get_turf(src)) + if(has_buckled_mobs()) + var/mob/living/carbon/H = buckled_mobs[1] + unbuckle_mob(H) + S.buckle_mob(H) qdel(src) \ No newline at end of file diff --git a/code/modules/vehicles/speedbike.dm b/code/modules/vehicles/speedbike.dm index 020369b2ac..badbdbe385 100644 --- a/code/modules/vehicles/speedbike.dm +++ b/code/modules/vehicles/speedbike.dm @@ -41,22 +41,39 @@ /obj/vehicle/space/speedbike/speedwagon name = "BM Speedwagon" desc = "Push it to the limit, walk along the razor's edge." - icon = 'icons/obj/bike.dmi' + icon = 'icons/obj/car.dmi' icon_state = "speedwagon" layer = LYING_MOB_LAYER overlay_state = "speedwagon_cover" + var/crash_all = FALSE //CHAOS + pixel_y = -48 //to fix the offset when Initialized() + pixel_x = -48 -/obj/vehicle/space/speedbike/speedwagon/Bump(mob/living/A) +/obj/vehicle/space/speedbike/speedwagon/Bump(atom/movable/A) . = ..() - if(A.density && has_buckled_mobs() && (istype(A, /mob/living/carbon/human) && has_buckled_mobs())) - var/atom/throw_target = get_edge_target_turf(A, pick(cardinal)) - A.throw_at(throw_target, 4, 3) - A.Weaken(5) - A.adjustStaminaLoss(30) - A.apply_damage(rand(20,35), BRUTE) - visible_message("[src] crashes into [A]!") - playsound(src, 'sound/effects/bang.ogg', 50, 1) + if(A.density && has_buckled_mobs()) + var/atom/throw_target = get_edge_target_turf(A, src.dir) + if(crash_all) + A.throw_at(throw_target, 4, 3) + visible_message("[src] crashes into [A]!") + playsound(src, 'sound/effects/bang.ogg', 50, 1) + if(ishuman(A)) + var/mob/living/carbon/human/H = A + H.Weaken(5) + H.adjustStaminaLoss(30) + H.apply_damage(rand(20,35), BRUTE) + if(!crash_all) + H.throw_at(throw_target, 4, 3) + visible_message("[src] crashes into [H]!") + playsound(src, 'sound/effects/bang.ogg', 50, 1) /obj/vehicle/space/speedbike/speedwagon/buckle_mob(mob/living/M, force = 0, check_loc = 1) . = ..() - riding_datum = new/datum/riding/space/speedbike/speedwagon + riding_datum = new/datum/riding/space/speedwagon + +/obj/vehicle/space/speedbike/speedwagon/Moved() + . = ..() + if(src.has_buckled_mobs()) + for(var/atom/A in range(2, src)) + if(!(A in src.buckled_mobs)) + Bump(A) diff --git a/code/modules/vehicles/vehicle.dm b/code/modules/vehicles/vehicle.dm index 343a103fc3..3b879ed9b8 100644 --- a/code/modules/vehicles/vehicle.dm +++ b/code/modules/vehicles/vehicle.dm @@ -98,12 +98,12 @@ ..() if(!(resistance_flags & INDESTRUCTIBLE)) if(resistance_flags & ON_FIRE) - user << "It's on fire!" + to_chat(user, "It's on fire!") var/healthpercent = (obj_integrity/max_integrity) * 100 switch(healthpercent) if(50 to 99) - user << "It looks slightly damaged." + to_chat(user, "It looks slightly damaged.") if(25 to 50) - user << "It appears heavily damaged." + to_chat(user, "It appears heavily damaged.") if(0 to 25) - user << "It's falling apart!" \ No newline at end of file + to_chat(user, "It's falling apart!") \ No newline at end of file diff --git a/code/modules/zombie/organs.dm b/code/modules/zombie/organs.dm index 8d56850393..51e5e201f8 100644 --- a/code/modules/zombie/organs.dm +++ b/code/modules/zombie/organs.dm @@ -35,9 +35,9 @@ deltimer(timer_id) /obj/item/organ/zombie_infection/on_find(mob/living/finder) - finder << "Inside the head is a disgusting black \ + to_chat(finder, "Inside the head is a disgusting black \ web of pus and vicera, bound tightly around the brain like some \ - biological harness." + biological harness.") /obj/item/organ/zombie_infection/process() if(!owner) @@ -50,9 +50,9 @@ if(owner.stat != DEAD && !converts_living) return if(!iszombie(owner)) - owner << "You can feel your heart stopping, but something isn't right... \ + to_chat(owner, "You can feel your heart stopping, but something isn't right... \ life has not abandoned your broken form. You can only feel a deep and immutable hunger that \ - not even death can stop, you will rise again!" + not even death can stop, you will rise again!") var/revive_time = rand(revive_time_min, revive_time_max) var/flags = TIMER_STOPPABLE timer_id = addtimer(CALLBACK(src, .proc/zombify), revive_time, flags) @@ -75,4 +75,4 @@ playsound(owner.loc, 'sound/hallucinations/far_noise.ogg', 50, 1) owner.do_jitter_animation(living_transformation_time * 10) owner.Stun(living_transformation_time) - owner << "You are now a zombie!" + to_chat(owner, "You are now a zombie!") diff --git a/code/orphaned_procs/dbcore.dm b/code/orphaned_procs/dbcore.dm index 28d3fd5a1a..1f4b1ef0d3 100644 --- a/code/orphaned_procs/dbcore.dm +++ b/code/orphaned_procs/dbcore.dm @@ -72,7 +72,7 @@ DBConnection/proc/Connect() doConnect("dbi:mysql:[db]:[address]:[port]","[user]","[pass]") . = IsConnected() if (!. && config.sql_enabled) - log_world("SQL error: " + ErrorMsg()) + log_sql("Connect() failed | [ErrorMsg()]") ++failed_connections DBConnection/proc/doConnect(dbi_handler=src.dbi,user_handler=src.user,password_handler=src.password,cursor_handler) @@ -122,9 +122,16 @@ DBQuery DBQuery/proc/Connect(DBConnection/connection_handler) src.db_connection = connection_handler -DBQuery/proc/Execute(sql_query=src.sql,cursor_handler=default_cursor) +DBQuery/proc/warn_execute() + . = Execute() + if(!.) + to_chat(usr, "A SQL error occured during this operation, check the server logs.") + +DBQuery/proc/Execute(sql_query=src.sql,cursor_handler=default_cursor, log_error = 1) Close() - return _dm_db_execute(_db_query,sql_query,db_connection._db_con,cursor_handler,null) + . = _dm_db_execute(_db_query,sql_query,db_connection._db_con,cursor_handler,null) + if(!. && log_error) + log_sql("[ErrorMsg()] | Query used: [sql]") DBQuery/proc/NextRow() return _dm_db_next_row(_db_query,item,conversions) diff --git a/code/orphaned_procs/priority_announce.dm b/code/orphaned_procs/priority_announce.dm index 1ad4a33f8f..26b3548e3e 100644 --- a/code/orphaned_procs/priority_announce.dm +++ b/code/orphaned_procs/priority_announce.dm @@ -26,15 +26,21 @@ for(var/mob/M in player_list) if(!isnewplayer(M) && !M.ear_deaf) - M << announcement + to_chat(M, announcement) if(M.client.prefs.toggles & SOUND_ANNOUNCEMENTS) M << sound(sound) -/proc/print_command_report(text = "", title = "Central Command Update") - for (var/obj/machinery/computer/communications/C in machines) +/proc/print_command_report(text = "", title = null, announce=TRUE) + if(!title) + title = "Classified [command_name()] Update" + + if(announce) + priority_announce("A report has been downloaded and printed out at all communications consoles.", "Incoming Classified Message", 'sound/AI/commandreport.ogg') + + for(var/obj/machinery/computer/communications/C in machines) if(!(C.stat & (BROKEN|NOPOWER)) && C.z == ZLEVEL_STATION) - var/obj/item/weapon/paper/P = new /obj/item/weapon/paper( C.loc ) - P.name = "paper- '[title]'" + var/obj/item/weapon/paper/P = new /obj/item/weapon/paper(C.loc) + P.name = "paper - '[title]'" P.info = text C.messagetitle.Add("[title]") C.messagetext.Add(text) @@ -46,7 +52,7 @@ for(var/mob/M in player_list) if(!isnewplayer(M) && !M.ear_deaf) - M << "[title]
    [message]

    " + to_chat(M, "[title]
    [message]

    ") if(M.client.prefs.toggles & SOUND_ANNOUNCEMENTS) if(alert) M << sound('sound/misc/notice1.ogg') diff --git a/code/orphaned_procs/statistics.dm b/code/orphaned_procs/statistics.dm index b8eccb06e2..a29986f9e3 100644 --- a/code/orphaned_procs/statistics.dm +++ b/code/orphaned_procs/statistics.dm @@ -65,10 +65,11 @@ var/datum/feedback/blackbox = new() if (!dbcon.Connect()) return var/round_id - var/DBQuery/query = dbcon.NewQuery("SELECT MAX(round_id) AS round_id FROM [format_table_name("feedback")]") - query.Execute() - while (query.NextRow()) - round_id = query.item[1] + var/DBQuery/query_feedback_max_id = dbcon.NewQuery("SELECT MAX(round_id) AS round_id FROM [format_table_name("feedback")]") + if(!query_feedback_max_id.Execute()) + return + while (query_feedback_max_id.NextRow()) + round_id = query_feedback_max_id.item[1] if (!isnum(round_id)) round_id = text2num(round_id) @@ -85,8 +86,8 @@ var/datum/feedback/blackbox = new() if (sqlrowlist == "") return - var/DBQuery/query_insert = dbcon.NewQuery("INSERT DELAYED IGNORE INTO [format_table_name("feedback")] VALUES " + sqlrowlist) - query_insert.Execute() + var/DBQuery/query_feedback_save = dbcon.NewQuery("INSERT DELAYED IGNORE INTO [format_table_name("feedback")] VALUES " + sqlrowlist) + query_feedback_save.Execute() /proc/feedback_set(variable,value) @@ -205,116 +206,48 @@ var/datum/feedback/blackbox = new() return list(variable,value,details) //sql reporting procs -/proc/sql_poll_players() +/proc/sql_poll_population() if(!config.sql_enabled) return + if(!dbcon.Connect()) + return var/playercount = 0 for(var/mob/M in player_list) if(M.client) playercount += 1 - if(!dbcon.Connect()) - log_game("SQL ERROR during player polling. Failed to connect.") - else - var/sqltime = time2text(world.realtime, "YYYY-MM-DD hh:mm:ss") - var/DBQuery/query = dbcon.NewQuery("INSERT INTO [format_table_name("legacy_population")] (playercount, time) VALUES ([playercount], '[sqltime]')") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during player polling. Error : \[[err]\]\n") - -/proc/sql_poll_admins() - if(!config.sql_enabled) - return var/admincount = admins.len - if(!dbcon.Connect()) - log_game("SQL ERROR during admin polling. Failed to connect.") - else - var/sqltime = time2text(world.realtime, "YYYY-MM-DD hh:mm:ss") - var/DBQuery/query = dbcon.NewQuery("INSERT INTO [format_table_name("legacy_population")] (admincount, time) VALUES ([admincount], '[sqltime]')") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during admin polling. Error : \[[err]\]\n") - -/proc/sql_report_round_start() - // TODO - if(!config.sql_enabled) - return - -/proc/sql_report_round_end() - // TODO - if(!config.sql_enabled) - return + var/DBQuery/query_record_playercount = dbcon.NewQuery("INSERT INTO [format_table_name("legacy_population")] (playercount, admincount, time, server_ip, server_port) VALUES ([playercount], [admincount], '[SQLtime()], INET_ATON('[world.internet_address]'), '[world.port]')") + query_record_playercount.Execute() /proc/sql_report_death(mob/living/L) if(!config.sql_enabled) return - if(!L) + if(!dbcon.Connect()) return - if(!L.key || !L.mind) + if(!L || !L.key || !L.mind) return - var/turf/T = get_turf(L) var/area/placeofdeath = get_area(T.loc) - var/podname = placeofdeath.name - var/sqlname = sanitizeSQL(L.real_name) - var/sqlkey = sanitizeSQL(L.key) - var/sqlpod = sanitizeSQL(podname) - var/sqlspecial = sanitizeSQL(L.mind.special_role) + var/sqlkey = sanitizeSQL(L.ckey) var/sqljob = sanitizeSQL(L.mind.assigned_role) + var/sqlspecial = sanitizeSQL(L.mind.special_role) + var/sqlpod = sanitizeSQL(placeofdeath.name) var/laname var/lakey - if(L.lastattacker) - laname = sanitizeSQL(L.lastattacker:real_name) - lakey = sanitizeSQL(L.lastattacker:key) - var/sqltime = time2text(world.realtime, "YYYY-MM-DD hh:mm:ss") - var/coord = "[L.x], [L.y], [L.z]" - var/map = MAP_NAME - if(!dbcon.Connect()) - log_game("SQL ERROR during death reporting. Failed to connect.") - else - var/DBQuery/query = dbcon.NewQuery("INSERT INTO [format_table_name("death")] (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss, coord, mapname, server_ip, server_port) VALUES ('[sqlname]', '[sqlkey]', '[sqljob]', '[sqlspecial]', '[sqlpod]', '[sqltime]', '[laname]', '[lakey]', '[L.gender]', [L.getBruteLoss()], [L.getFireLoss()], [L.brainloss], [L.getOxyLoss()], '[coord]', '[map]', INET_ATON('[world.internet_address]'), '[world.port]')") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during death reporting. Error : \[[err]\]\n") - -//This proc is used for feedback. It is executed at round end. -/proc/sql_commit_feedback() - if(!blackbox) - log_game("Round ended without a blackbox recorder. No feedback was sent to the database: This should not happen without admin intervention.") - return - - //content is a list of lists. Each item in the list is a list with two fields, a variable name and a value. Items MUST only have these two values. - var/list/datum/feedback_variable/content = blackbox.get_round_feedback() - - if(!content) - log_game("Round ended without any feedback being generated. No feedback was sent to the database.") - return - - if(!dbcon.Connect()) - log_game("SQL ERROR during feedback reporting. Failed to connect.") - else - - var/DBQuery/max_query = dbcon.NewQuery("SELECT MAX(roundid) AS max_round_id FROM [format_table_name("feedback")]") - max_query.Execute() - - var/newroundid - - while(max_query.NextRow()) - newroundid = max_query.item[1] - - if(!(isnum(newroundid))) - newroundid = text2num(newroundid) - - if(isnum(newroundid)) - newroundid++ - else - newroundid = 1 - - for(var/datum/feedback_variable/item in content) - var/variable = item.get_variable() - var/value = item.get_value() - - var/DBQuery/query = dbcon.NewQuery("INSERT INTO [format_table_name("feedback")] (id, roundid, time, variable, value) VALUES (null, [newroundid], Now(), '[variable]', '[value]')") - if(!query.Execute()) - var/err = query.ErrorMsg() - log_game("SQL ERROR during feedback reporting. Error : \[[err]\]\n") + if(L.lastattacker && ismob(L.lastattacker)) + var/mob/LA = L.lastattacker + laname = sanitizeSQL(LA.real_name) + lakey = sanitizeSQL(LA.key) + var/sqlgender = sanitizeSQL(L.gender) + var/sqlbrute = sanitizeSQL(L.getBruteLoss()) + var/sqlfire = sanitizeSQL(L.getFireLoss()) + var/sqlbrain = sanitizeSQL(L.getBrainLoss()) + var/sqloxy = sanitizeSQL(L.getOxyLoss()) + var/sqltox = sanitizeSQL(L.getStaminaLoss()) + var/sqlclone = sanitizeSQL(L.getStaminaLoss()) + var/sqlstamina = sanitizeSQL(L.getStaminaLoss()) + var/coord = sanitizeSQL("[L.x], [L.y], [L.z]") + var/map = sanitizeSQL(SSmapping.config.map_name) + var/DBQuery/query_report_death = dbcon.NewQuery("INSERT INTO [format_table_name("death")] (name, byondkey, job, special, pod, tod, laname, lakey, gender, bruteloss, fireloss, brainloss, oxyloss, toxloss, cloneloss, staminaloss, coord, mapname, server_ip, server_port) VALUES ('[sqlname]', '[sqlkey]', '[sqljob]', '[sqlspecial]', '[sqlpod]', '[SQLtime()]', '[laname]', '[lakey]', '[sqlgender]', [sqlbrute], [sqlfire], [sqlbrain], [sqloxy], [sqltox], [sqlclone], [sqlstamina], '[coord]', '[map]', INET_ATON('[world.internet_address]'), '[world.port]')") + query_report_death.Execute() diff --git a/code/world.dm b/code/world.dm index e4df28328d..23d2a65493 100644 --- a/code/world.dm +++ b/code/world.dm @@ -1,6 +1,6 @@ /world - mob = /mob/new_player - turf = /turf/open/space + mob = /mob/dead/new_player + turf = /turf/basic area = /area/space view = "15x15" cache_lifespan = 7 @@ -13,11 +13,8 @@ loop_checks = FALSE #endif -var/list/map_transition_config = MAP_TRANSITION_CONFIG - /world/New() - log_world("World loaded at [world.timeofday]") - map_ready = 1 + log_world("World loaded at [time_stamp()]") #if (PRELOAD_RSC == 0) external_rsc_urls = file2list("config/external_rsc_urls.txt","\n") @@ -33,8 +30,8 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG href_logfile = file("data/logs/[date_string] hrefs.htm") diary = file("data/logs/[date_string].log") diaryofmeanpeople = file("data/logs/[date_string] Attack.log") - diary << "\n\nStarting up. [time2text(world.timeofday, "hh:mm.ss")]\n---------------------" - diaryofmeanpeople << "\n\nStarting up. [time2text(world.timeofday, "hh:mm.ss")]\n---------------------" + diary << "\n\nStarting up. [time_stamp()]\n---------------------" + diaryofmeanpeople << "\n\nStarting up. [time_stamp()]\n---------------------" changelog_hash = md5('html/changelog.html') //used for telling if the changelog has changed recently make_datum_references_lists() //initialises global lists for referencing frequently used datums (so that we only ever do it once) @@ -60,16 +57,7 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG data_core = new /datum/datacore() - SortAreas() //Build the list of all existing areas and sort it alphabetically - process_teleport_locs() //Sets up the wizard teleport locations - - #ifdef MAP_NAME - map_name = "[MAP_NAME]" - #else - map_name = "Unknown" - #endif - - Master.Setup(10, FALSE) + Master.Initialize(10, FALSE) #define IRC_STATUS_THROTTLE 50 /world/Topic(T, addr, master, key) @@ -132,7 +120,7 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG if(ticker) s["gamestate"] = ticker.current_state - s["map_name"] = map_name ? map_name : "Unknown" + s["map_name"] = SSmapping.config.map_name if(key_valid && ticker && ticker.mode) s["real_mode"] = ticker.mode.name @@ -157,7 +145,7 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG #define CHAT_PULLR 64 //defined in preferences.dm, but not available here at compilation time for(var/client/C in clients) if(C.prefs && (C.prefs.chat_toggles & CHAT_PULLR)) - C << "PR: [input["announce"]]" + to_chat(C, "PR: [input["announce"]]") #undef CHAT_PULLR else if("crossmessage" in input) @@ -191,14 +179,16 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG return "Bad Key" else return ircadminwho() + else if("server_hop" in input) + show_server_hop_transfer_screen(input["server_hop"]) -#define WORLD_REBOOT(X) log_world("World rebooted at [world.timeofday]"); ..(X); return; +#define WORLD_REBOOT(X) log_world("World rebooted at [time_stamp()]"); ..(X); return; /world/Reboot(var/reason, var/feedback_c, var/feedback_r, var/time) if (reason == 1) //special reboot, do none of the normal stuff if (usr) log_admin("[key_name(usr)] Has requested an immediate world restart via client side debugging tools") message_admins("[key_name_admin(usr)] Has requested an immediate world restart via client side debugging tools") - world << "Rebooting World immediately due to host request" + to_chat(world, "Rebooting World immediately due to host request") WORLD_REBOOT(1) var/delay if(time) @@ -206,9 +196,9 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG else delay = config.round_end_countdown * 10 if(ticker.delay_end) - world << "An admin has delayed the round end." + to_chat(world, "An admin has delayed the round end.") return - world << "Rebooting World in [delay/10] [(delay >= 10 && delay < 20) ? "second" : "seconds"]. [reason]" + to_chat(world, "Rebooting World in [delay/10] [(delay >= 10 && delay < 20) ? "second" : "seconds"]. [reason]") var/round_end_sound_sent = FALSE if(ticker.round_end_sound) round_end_sound_sent = TRUE @@ -219,15 +209,7 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG C.Export("##action=load_rsc", ticker.round_end_sound) sleep(delay) if(ticker.delay_end) - world << "Reboot was cancelled by an admin." - return - if(mapchanging) - world << "Map change operation detected, delaying reboot." - rebootingpendingmapchange = 1 - spawn(1200) - if(mapchanging) - mapchanging = 0 //map rotation can in some cases be finished but never exit, this is a failsafe - Reboot("Map change timed out", time = 10) + to_chat(world, "Reboot was cancelled by an admin.") return OnReboot(reason, feedback_c, feedback_r, round_end_sound_sent) WORLD_REBOOT(0) @@ -249,7 +231,7 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG Master.Shutdown() //run SS shutdowns RoundEndAnimation(round_end_sound_sent) kick_clients_in_lobby("The round came to an end with you in the lobby.", 1) //second parameter ensures only afk clients are kicked - world << "Rebooting world. Loading next map..." + to_chat(world, "Rebooting world...") for(var/thing in clients) var/client/C = thing if(C && config.server) //if you set a server location in config.txt, it sends you there instead of trying to reconnect to the same world address. -- NeoFite @@ -278,7 +260,8 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG ) for(var/thing in clients) - new /obj/screen/splash(thing, FALSE, FALSE) + var/obj/screen/splash/S = new(thing, FALSE) + S.Fade(FALSE,FALSE) world << sound(round_end_sound) @@ -298,12 +281,11 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG join_motd = file2text("config/motd.txt") + "
    " + revdata.GetTestMergeInfo() /world/proc/load_configuration() - protected_config = new /datum/protected_configuration() config = new /datum/configuration() config.load("config/config.txt") config.load("config/game_options.txt","game_options") config.loadsql("config/dbconfig.txt") - if (config.maprotation && SERVERTOOLS) + if (config.maprotation) config.loadmaplist("config/maps.txt") // apply some settings from config.. @@ -360,95 +342,3 @@ var/list/map_transition_config = MAP_TRANSITION_CONFIG s += ": [jointext(features, ", ")]" status = s - -/proc/maprotate() - if (!SERVERTOOLS) - return - var/players = clients.len - var/list/mapvotes = list() - //count votes - for (var/client/c in clients) - var/vote = c.prefs.preferred_map - if (!vote) - if (config.defaultmap) - mapvotes[config.defaultmap.name] += 1 - continue - mapvotes[vote] += 1 - - //filter votes - for (var/map in mapvotes) - if (!map) - mapvotes.Remove(map) - if (!(map in config.maplist)) - mapvotes.Remove(map) - continue - var/datum/votablemap/VM = config.maplist[map] - if (!VM) - mapvotes.Remove(map) - continue - if (VM.voteweight <= 0) - mapvotes.Remove(map) - continue - if (VM.minusers > 0 && players < VM.minusers) - mapvotes.Remove(map) - continue - if (VM.maxusers > 0 && players > VM.maxusers) - mapvotes.Remove(map) - continue - - mapvotes[map] = mapvotes[map]*VM.voteweight - - var/pickedmap = pickweight(mapvotes) - if (!pickedmap) - return - var/datum/votablemap/VM = config.maplist[pickedmap] - message_admins("Randomly rotating map to [VM.name]([VM.friendlyname])") - . = changemap(VM) - if (. == 0) - world << "Map rotation has chosen [VM.friendlyname] for next round!" - -var/datum/votablemap/nextmap -var/mapchanging = 0 -var/rebootingpendingmapchange = 0 -/proc/changemap(var/datum/votablemap/VM) - if (!SERVERTOOLS) - return - if (!istype(VM)) - return - mapchanging = 1 - log_game("Changing map to [VM.name]([VM.friendlyname])") - var/file = file("setnewmap.bat") - file << "\nset MAPROTATE=[VM.name]\n" - . = shell("..\\bin\\maprotate.bat") - mapchanging = 0 - switch (.) - if (null) - message_admins("Failed to change map: Could not run map rotator") - log_game("Failed to change map: Could not run map rotator") - if (0) - log_game("Changed to map [VM.friendlyname]") - nextmap = VM - //1x: file errors - if (11) - message_admins("Failed to change map: File error: Map rotator script couldn't find file listing new map") - log_game("Failed to change map: File error: Map rotator script couldn't find file listing new map") - if (12) - message_admins("Failed to change map: File error: Map rotator script couldn't find tgstation-server framework") - log_game("Failed to change map: File error: Map rotator script couldn't find tgstation-server framework") - //2x: conflicting operation errors - if (21) - message_admins("Failed to change map: Conflicting operation error: Current server update operation detected") - log_game("Failed to change map: Conflicting operation error: Current server update operation detected") - if (22) - message_admins("Failed to change map: Conflicting operation error: Current map rotation operation detected") - log_game("Failed to change map: Conflicting operation error: Current map rotation operation detected") - //3x: external errors - if (31) - message_admins("Failed to change map: External error: Could not compile new map:[VM.name]") - log_game("Failed to change map: External error: Could not compile new map:[VM.name]") - - else - message_admins("Failed to change map: Unknown error: Error code #[.]") - log_game("Failed to change map: Unknown error: Error code #[.]") - if(rebootingpendingmapchange) - world.Reboot("Map change finished", time = 10) diff --git a/config/config.txt b/config/config.txt index a3e6d564ea..9b1eb06518 100644 --- a/config/config.txt +++ b/config/config.txt @@ -1,6 +1,9 @@ -## Server name: This appears at the top of the screen in-game. Remove the # infront of SERVERNAME and replace 'tgstation' with the name of your choice +## Server name: This appears at the top of the screen in-game and in the BYOND hub. Remove the # infront of SERVERNAME and replace 'tgstation' with the name of your choice. # SERVERNAME tgstation +## Server SQL name: This is the name used to identify the server to the SQL DB, distinct from SERVERNAME as it must be at most 32 characters. +# SERVERSQLNAME tgstation + ## Station name: The name of the station as it is referred to in-game. If commented out, the game will generate a random name instead. STATIONNAME Space Station 13 @@ -173,6 +176,11 @@ CHECK_RANDOMIZER ##Github address # GITHUBURL https://www.github.com/tgstation/-tg-station +##Github repo id +##This can be found by going to https://api.github.com/users//repos +##Or https://api.github.com/orgs//repos if the repo owner is an organization +# GITHUBREPOID 3234987 + ## Ban appeals URL - usually for a forum or wherever people should go to contact your admins. # BANAPPEALS http://justanotherday.example.com @@ -196,10 +204,6 @@ ALLOW_HOLIDAYS ##Uncomment to show the names of the admin sending a pm from IRC instead of showing as a stealthmin. #SHOW_IRC_NAME -## HTTP URL to send Discord messages to. -# DISCORD_URL -# DISCORD_PASSWORD - ##Defines the ticklimit for subsystem initialization (In percents of a byond tick). Lower makes world start smoother. Higher makes it faster. ##This is currently a testing optimized setting. A good value for production would be 98. TICK_LIMIT_MC_INIT 500 @@ -284,10 +288,14 @@ ANNOUNCE_ADMIN_LOGOUT #ANNOUNCE_ADMIN_LOGIN ## Map rotation -## This feature requires you are running a Windows OS (or can other wise run .bat files) and that you are using the tgstation-server toolset in tools/ ## You should edit maps.txt to match your configuration when you enable this. #MAPROTATION +## Map voting +## Allows players to vote for their preffered map +## When it's set to zero, the map will be randomly picked each round +ALLOW_MAP_VOTING 1 + ## Map rotate chance delta ## This is the chance of map rotation factored to the round length. ## A value of 1 would mean the map rotation chance is the round length in minutes (hour long round == 60% rotation chance) @@ -306,10 +314,10 @@ ANNOUNCE_ADMIN_LOGOUT ## 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. ## These messages will be followed by one stating the clients current version and the required version for clarity. -#CLIENT_WARN_VERSION 510 -#CLIENT_WARN_MESSAGE Byond is really close to releasing 510 beta as the stable release, please take this time to try it out. Reports are that the client preforms better then the version you are using, and also handles network lag better. Shortly after it's release we will end up using 510 client features and you will be forced to update. -#CLIENT_ERROR_VERSION 509 -#CLIENT_ERROR_MESSAGE Your version of byond is not supported. Please upgrade. +#CLIENT_WARN_VERSION 511 +#CLIENT_WARN_MESSAGE Byond is really close to releasing 511 beta as the stable release, please take this time to try it out. You can set the framerate your client runs at, which makes the game feel very different and cool. Shortly after its release we will end up using 511 client features and you will be forced to update. +CLIENT_ERROR_VERSION 510 +CLIENT_ERROR_MESSAGE Your version of byond is not supported. Please upgrade. ## TOPIC RATE LIMITING ## This allows you to limit how many topic calls (clicking on a interface window) the client can do in any given game second and/or game minute. @@ -319,3 +327,13 @@ ANNOUNCE_ADMIN_LOGOUT SECOND_TOPIC_LIMIT 10 MINUTE_TOPIC_LIMIT 100 + +##Error handling related options +## The "cooldown" time for each occurence of an unique error +#ERROR_COOLDOWN 600 +## How many occurences before the next will silence them +#ERROR_LIMIT 90 +## How long an unique error will be silenced for +#ERROR_SILENCE_TIME 6000 +##How long to wait between messaging admins about occurences of an unique error +#ERROR_MSG_DELAY 50 \ No newline at end of file diff --git a/config/game_options.txt b/config/game_options.txt index a438283cc7..f912fc58e4 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -81,7 +81,6 @@ PROBABILITY TRAITORCHAN 4 PROBABILITY DOUBLE_AGENTS 3 PROBABILITY NUCLEAR 2 PROBABILITY REVOLUTION 2 -PROBABILITY SHADOWLING 2 PROBABILITY GANG 2 PROBABILITY CULT 2 PROBABILITY CHANGELING 2 @@ -107,13 +106,14 @@ CONTINUOUS TRAITORCHAN CONTINUOUS DOUBLE_AGENTS #CONTINUOUS NUCLEAR #CONTINUOUS REVOLUTION -#CONTINUOUS SHADOWLING CONTINUOUS GANG CONTINUOUS CULT +CONTINUOUS CLOCKWORK_CULT CONTINUOUS CHANGELING CONTINUOUS WIZARD CONTINUOUS MALFUNCTION CONTINUOUS BLOB +CONTINUOUS ABDUCTION #CONTINUOUS RAGINMAGES #CONTINUOUS MONKEY @@ -131,13 +131,14 @@ MIDROUND_ANTAG TRAITORCHAN MIDROUND_ANTAG DOUBLE_AGENTS #MIDROUND_ANTAG NUCLEAR #MIDROUND_ANTAG REVOLUTION -#MIDROUND_ANTAG SHADOWLING #MIDROUND_ANTAG GANG MIDROUND_ANTAG CULT +MIDROUND_ANTAG CLOCKWORK_CULT MIDROUND_ANTAG CHANGELING MIDROUND_ANTAG WIZARD MIDROUND_ANTAG MALFUNCTION MIDROUND_ANTAG BLOB +MIDROUND_ANTAG ABDUCTION #MIDROUND_ANTAG RAGINMAGES #MIDROUND_ANTAG MONKEY @@ -393,21 +394,11 @@ JOIN_WITH_MUTANT_RACE ## You probably want humans on your space station, but technically speaking you can turn them off without any ill effect ROUNDSTART_RACES human -## Races because TG is racist -ROUNDSTART_RACES canid -ROUNDSTART_RACES felid -ROUNDSTART_RACES xeno -#ROUNDSTART_RACES avian -ROUNDSTART_RACES rodent -ROUNDSTART_RACES herbivorous -ROUNDSTART_RACES exotic - ## Races that are strictly worse than humans that could probably be turned on without balance concerns ROUNDSTART_RACES lizard #ROUNDSTART_RACES fly ROUNDSTART_RACES plasmaman #ROUNDSTART_RACES shadow -#ROUNDSTART_RACES shadowling ## Races that are better than humans in some ways, but worse in others #ROUNDSTART_RACES jelly @@ -486,3 +477,10 @@ LAVALAND_BUDGET 60 ## Space Ruin Budged Space_Budget 16 + +#Time in ds from when a player latejoins till the arrival shuttle docks at the station +#Must be at least 30 to not break parallax I recommended at least 55 to be visually/aurally appropriate +ARRIVALS_SHUTTLE_DOCK_WINDOW 55 + +#Set this to 1 to prevent late join players from spawning if the arrivals shuttle is depressurized +ARRIVALS_SHUTTLE_REQUIRE_SAFE_LATEJOIN 0 \ No newline at end of file diff --git a/config/maps.txt b/config/maps.txt index d186a61fc5..e0a4a20e84 100644 --- a/config/maps.txt +++ b/config/maps.txt @@ -5,8 +5,7 @@ Lines not inside map blocks are also ignored Duplicated entries use the latter one. All whitespace at the start and end of lines is ignored. (including indentation, thats just for show) Format: -#map [map name] (name of .dm file in _maps folder without the .dm part) - friendlyname [name] (name shown to players) +#map [map name] (name of .json file in _maps folder without the .json part) minplayers [number] (0 or less disables this requirement) maxplayers [number] (0 or less disables this requirement) default (The last map with this defined will get all votes of players who have not explicitly voted for a map) @@ -14,27 +13,22 @@ Format: endmap map tgstation2 - friendlyname Box Station default #voteweight 1.5 endmap map metastation - friendlyname Meta Station minplayers 25 #voteweight 0.5 endmap -map deltastation - friendlyname Delta Station - maxplayers 15 -endmap - map pubbystation - friendlyname Pubby Station endmap map omegastation - friendlyname Omega Station maxplayers 35 endmap + +map deltastation + minplayers 50 +endmap \ No newline at end of file diff --git a/config/title_screens/LICENSE.txt b/config/title_screens/LICENSE.txt new file mode 100644 index 0000000000..831689b417 --- /dev/null +++ b/config/title_screens/LICENSE.txt @@ -0,0 +1,38 @@ +---LICENSE NOTICE--- + +The server operator(s) is responsible for the copyright status of all images placed within the /config/title_screens/images folder unless otherwise noted. + +If an image requires attribution and/or a specific license it is up to the operator(s) to make this information publicly available on either +a website associated with their server or on the server itself. + +If operators(s) allow these configuration files to be public this file can serve that purpose by keeping it properly updated. + +If in the future new images are published to these folders (i.e. in an online code repository) they must explicitly state their +license if said license is not the same as the default licensing found in README.md in the root directory of the project. + +Do not remove this notice. + +---END NOTICE--- + + + + +---EXAMPLES (NOT PART OF ANY LICENSE)--- + +These are examples of properly attrubuted and licensed images. +They are not an actual part of any license under any circumstance. + +rare+foobar.png was created by Mya Quinn on Feburary 28, 2557. It is licensed under a Combative Clowning 3.0 HO-NK license (http://example.com/license/url/). + +Unless otherwise noted all images were created by Cuban Pete on July 26, 2555. They are licensed under the RUMBABEAT Public License.(http://example.com/license/url/). + +---END EXAMPLES (NOT PART OF ANY LICENSE)--- + + + + +---ADD LICENSING INFORMATION BELOW--- + +blank.png and default.dmi use the default licensing found in README.md in the root directory of the project. + + diff --git a/config/title_screens/README.txt b/config/title_screens/README.txt new file mode 100644 index 0000000000..6e7bf166f8 --- /dev/null +++ b/config/title_screens/README.txt @@ -0,0 +1,50 @@ +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. + +An example of a rare title name is "rare+explosion" \ No newline at end of file diff --git a/config/title_screens/images/blank.png b/config/title_screens/images/blank.png new file mode 100644 index 0000000000..c3167a923b Binary files /dev/null and b/config/title_screens/images/blank.png differ diff --git a/config/title_screens/images/default.dmi b/config/title_screens/images/default.dmi new file mode 100644 index 0000000000..633bd434b8 Binary files /dev/null and b/config/title_screens/images/default.dmi differ diff --git a/config/title_screens/images/fullscreen.dmi b/config/title_screens/images/fullscreen.dmi new file mode 100644 index 0000000000..4bf628bd41 Binary files /dev/null and b/config/title_screens/images/fullscreen.dmi differ diff --git a/config/unbuyableshuttles.txt b/config/unbuyableshuttles.txt index 9a7008d4d9..e8e287987d 100644 --- a/config/unbuyableshuttles.txt +++ b/config/unbuyableshuttles.txt @@ -15,4 +15,6 @@ #_maps/shuttles/emergency_mini.dmm #_maps/shuttles/emergency_imfedupwiththisworld.dmm #_maps/shuttles/emergency_goon.dmm -#_maps/shuttles/emergency_wabbajack.dmm \ No newline at end of file +#_maps/shuttles/emergency_wabbajack.dmm +#_maps/shuttles/emergency_arena.dmm +#_maps/shuttles/emergency_raven.dmm diff --git a/icons/effects/effects.dmi b/icons/effects/effects.dmi index 9ab35fbfcb..d684794ee8 100644 Binary files a/icons/effects/effects.dmi and b/icons/effects/effects.dmi differ diff --git a/icons/effects/lighting_object.png b/icons/effects/lighting_object.png new file mode 100644 index 0000000000..ac3a7fee38 Binary files /dev/null and b/icons/effects/lighting_object.png differ diff --git a/icons/effects/lighting_overlay.png b/icons/effects/lighting_overlay.png deleted file mode 100644 index 7598a6bbc7..0000000000 Binary files a/icons/effects/lighting_overlay.png and /dev/null differ diff --git a/icons/mob/actions.dmi b/icons/mob/actions.dmi index 42d2a4fe9d..683306b96a 100644 Binary files a/icons/mob/actions.dmi and b/icons/mob/actions.dmi differ diff --git a/icons/mob/aibots.dmi b/icons/mob/aibots.dmi new file mode 100644 index 0000000000..860f76001b Binary files /dev/null and b/icons/mob/aibots.dmi differ diff --git a/icons/mob/alien.dmi b/icons/mob/alien.dmi index 069be2da8d..c50351eef3 100644 Binary files a/icons/mob/alien.dmi and b/icons/mob/alien.dmi differ diff --git a/icons/mob/animal.dmi b/icons/mob/animal.dmi index e7681eef56..88bd393bcb 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 86530d4608..2bdb819601 100644 Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ diff --git a/icons/mob/eyes.dmi b/icons/mob/eyes.dmi index 0b108f96ee..3a4abed93c 100644 Binary files a/icons/mob/eyes.dmi and b/icons/mob/eyes.dmi differ diff --git a/icons/mob/facialhair_extensions.dmi b/icons/mob/facialhair_extensions.dmi new file mode 100644 index 0000000000..cf74d73796 Binary files /dev/null and b/icons/mob/facialhair_extensions.dmi differ diff --git a/icons/mob/hair_extensions.dmi b/icons/mob/hair_extensions.dmi new file mode 100644 index 0000000000..cf74d73796 Binary files /dev/null and b/icons/mob/hair_extensions.dmi differ diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index 551ffec32c..56612cf4c4 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 ce8da26271..29c527b123 100644 Binary files a/icons/mob/hud.dmi and b/icons/mob/hud.dmi differ diff --git a/icons/mob/human_parts.dmi b/icons/mob/human_parts.dmi index fcb79cd3f8..0446cd50f3 100644 Binary files a/icons/mob/human_parts.dmi and b/icons/mob/human_parts.dmi differ diff --git a/icons/mob/inhands/clothing_lefthand.dmi b/icons/mob/inhands/clothing_lefthand.dmi index 0cb911c9f5..36be4c58f0 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 6895194dd7..9900cb3f53 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/items_lefthand.dmi b/icons/mob/inhands/items_lefthand.dmi index 572afdd99f..d8c7fbd112 100644 Binary files a/icons/mob/inhands/items_lefthand.dmi and b/icons/mob/inhands/items_lefthand.dmi differ diff --git a/icons/mob/inhands/items_righthand.dmi b/icons/mob/inhands/items_righthand.dmi index 16f788d048..439047c05b 100644 Binary files a/icons/mob/inhands/items_righthand.dmi and b/icons/mob/inhands/items_righthand.dmi differ diff --git a/icons/mob/mob.dmi b/icons/mob/mob.dmi index 486e4e7fb7..17c4456c1a 100644 Binary files a/icons/mob/mob.dmi and b/icons/mob/mob.dmi differ diff --git a/icons/mob/neck.dmi b/icons/mob/neck.dmi index 32c23345e2..53bc261686 100644 Binary files a/icons/mob/neck.dmi and b/icons/mob/neck.dmi differ diff --git a/icons/mob/screen_alert.dmi b/icons/mob/screen_alert.dmi index 84ad8a2cd7..5858925d86 100644 Binary files a/icons/mob/screen_alert.dmi and b/icons/mob/screen_alert.dmi differ diff --git a/icons/mob/screen_full.dmi b/icons/mob/screen_full.dmi index e84b054695..595b870a17 100644 Binary files a/icons/mob/screen_full.dmi and b/icons/mob/screen_full.dmi differ diff --git a/icons/mob/simple_human.dmi b/icons/mob/simple_human.dmi new file mode 100644 index 0000000000..b3bc59378b Binary files /dev/null and b/icons/mob/simple_human.dmi differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 00a40b3d5a..bd7e22e5f6 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 1e5b3dae9b..cb6fbe7692 100644 Binary files a/icons/mob/uniform.dmi and b/icons/mob/uniform.dmi differ diff --git a/icons/obj/ammo.dmi b/icons/obj/ammo.dmi index 0e5bb3a9fe..87d4e5ed22 100644 Binary files a/icons/obj/ammo.dmi and b/icons/obj/ammo.dmi differ diff --git a/icons/obj/car.dmi b/icons/obj/car.dmi new file mode 100644 index 0000000000..6e6e33bf19 Binary files /dev/null and b/icons/obj/car.dmi differ diff --git a/icons/obj/chairs.dmi b/icons/obj/chairs.dmi index 4810f2cbfb..a16797fa17 100644 Binary files a/icons/obj/chairs.dmi and b/icons/obj/chairs.dmi differ diff --git a/icons/obj/clothing/glasses.dmi b/icons/obj/clothing/glasses.dmi index a5200b3e67..1152b395ab 100644 Binary files a/icons/obj/clothing/glasses.dmi and b/icons/obj/clothing/glasses.dmi differ diff --git a/icons/obj/clothing/gloves.dmi b/icons/obj/clothing/gloves.dmi index a5fe713855..fd078d775c 100644 Binary files a/icons/obj/clothing/gloves.dmi and b/icons/obj/clothing/gloves.dmi differ diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index 7e71c74b9b..6b0dd135f6 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 a227c02e54..7a3c416b94 100644 Binary files a/icons/obj/clothing/masks.dmi and b/icons/obj/clothing/masks.dmi differ diff --git a/icons/obj/clothing/shoes.dmi b/icons/obj/clothing/shoes.dmi index 42e4a75ae8..90e4ee5332 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 db64e3cc20..27e02e2e7c 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 5e57721ef9..327d2749f7 100644 Binary files a/icons/obj/clothing/uniforms.dmi and b/icons/obj/clothing/uniforms.dmi differ diff --git a/icons/obj/clothing/vg_clothes.dmi b/icons/obj/clothing/vg_clothes.dmi new file mode 100644 index 0000000000..c93049fe90 Binary files /dev/null and b/icons/obj/clothing/vg_clothes.dmi differ diff --git a/icons/obj/contraband.dmi b/icons/obj/contraband.dmi index b235443da8..771ab2edb3 100644 Binary files a/icons/obj/contraband.dmi and b/icons/obj/contraband.dmi differ diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 90fcacacb6..eb40200866 100644 Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ diff --git a/icons/obj/drinks.dmi b/icons/obj/drinks.dmi index 35b7b57eb9..0d9f0dbf85 100644 Binary files a/icons/obj/drinks.dmi and b/icons/obj/drinks.dmi differ diff --git a/icons/obj/guns/energy.dmi b/icons/obj/guns/energy.dmi index b4a4a56719..3916befb12 100644 Binary files a/icons/obj/guns/energy.dmi and b/icons/obj/guns/energy.dmi differ diff --git a/icons/obj/guns/projectile.dmi b/icons/obj/guns/projectile.dmi index 3b8b8365bb..dfb1f4c51b 100644 Binary files a/icons/obj/guns/projectile.dmi and b/icons/obj/guns/projectile.dmi differ diff --git a/icons/obj/hydroponics/growing_mushrooms.dmi b/icons/obj/hydroponics/growing_mushrooms.dmi index eb4405bf8b..7a0eedbdae 100644 Binary files a/icons/obj/hydroponics/growing_mushrooms.dmi and b/icons/obj/hydroponics/growing_mushrooms.dmi differ diff --git a/icons/obj/hydroponics/harvest.dmi b/icons/obj/hydroponics/harvest.dmi index ba9a0b4929..55a06a36fa 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 5e28a475cf..30c4bd2ce4 100644 Binary files a/icons/obj/hydroponics/seeds.dmi and b/icons/obj/hydroponics/seeds.dmi differ diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi index f741bfbd56..0543b7fabd 100644 Binary files a/icons/obj/items.dmi and b/icons/obj/items.dmi differ diff --git a/icons/obj/janitor.dmi b/icons/obj/janitor.dmi index 4ce9d864c8..84aee5620a 100644 Binary files a/icons/obj/janitor.dmi and b/icons/obj/janitor.dmi differ diff --git a/icons/obj/kitchen.dmi b/icons/obj/kitchen.dmi index 979a35fe32..5380ad43cc 100644 Binary files a/icons/obj/kitchen.dmi and b/icons/obj/kitchen.dmi differ diff --git a/icons/obj/lighting.dmi b/icons/obj/lighting.dmi index 62f07406c5..4df7d39e89 100644 Binary files a/icons/obj/lighting.dmi and b/icons/obj/lighting.dmi differ diff --git a/icons/obj/machines/research.dmi b/icons/obj/machines/research.dmi index 28936ff126..84f8c96a5b 100644 Binary files a/icons/obj/machines/research.dmi and b/icons/obj/machines/research.dmi differ diff --git a/icons/obj/machines/telecomms.dmi b/icons/obj/machines/telecomms.dmi index 62a767007b..7f5f05e3af 100644 Binary files a/icons/obj/machines/telecomms.dmi and b/icons/obj/machines/telecomms.dmi differ diff --git a/icons/obj/module.dmi b/icons/obj/module.dmi index 5af3a037b2..d2f41a3030 100644 Binary files a/icons/obj/module.dmi and b/icons/obj/module.dmi differ diff --git a/icons/obj/stationobjs.dmi b/icons/obj/stationobjs.dmi index 70ee103b4b..65460e6902 100644 Binary files a/icons/obj/stationobjs.dmi and b/icons/obj/stationobjs.dmi differ diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi index db32c6a4ec..afdd5c3630 100644 Binary files a/icons/obj/storage.dmi and b/icons/obj/storage.dmi differ diff --git a/icons/obj/tiles.dmi b/icons/obj/tiles.dmi index c3725a2ce2..d629cfe24d 100644 Binary files a/icons/obj/tiles.dmi and b/icons/obj/tiles.dmi differ diff --git a/icons/obj/tomb.dmi b/icons/obj/tomb.dmi new file mode 100644 index 0000000000..41903374c0 Binary files /dev/null and b/icons/obj/tomb.dmi differ diff --git a/icons/obj/toy.dmi b/icons/obj/toy.dmi index 71bb22572f..f71e135dce 100644 Binary files a/icons/obj/toy.dmi and b/icons/obj/toy.dmi differ diff --git a/icons/obj/vehicles.dmi b/icons/obj/vehicles.dmi index 5dd427941e..873f16fa61 100644 Binary files a/icons/obj/vehicles.dmi and b/icons/obj/vehicles.dmi differ diff --git a/icons/obj/vending.dmi b/icons/obj/vending.dmi index 2f524e954f..8e08060f0d 100644 Binary files a/icons/obj/vending.dmi and b/icons/obj/vending.dmi differ diff --git a/icons/turf/floors.dmi b/icons/turf/floors.dmi index ea4c5d5ba7..ada8ba3cf2 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 1d03544657..5050f4995b 100644 --- a/interface/interface.dm +++ b/interface/interface.dm @@ -8,7 +8,7 @@ return src << link(config.wikiurl) else - src << "The wiki URL is not set in the server configuration." + to_chat(src, "The wiki URL is not set in the server configuration.") return /client/verb/forum() @@ -20,7 +20,7 @@ return src << link(config.forumurl) else - src << "The forum URL is not set in the server configuration." + to_chat(src, "The forum URL is not set in the server configuration.") return /client/verb/rules() @@ -32,7 +32,7 @@ return src << link(config.rulesurl) else - src << "The rules URL is not set in the server configuration." + to_chat(src, "The rules URL is not set in the server configuration.") return /client/verb/github() @@ -44,7 +44,7 @@ return src << link(config.githuburl) else - src << "The Github URL is not set in the server configuration." + to_chat(src, "The Github URL is not set in the server configuration.") return /client/verb/reportissue() @@ -54,13 +54,13 @@ if(config.githuburl) var/message = "This will open the Github issue reporter in your browser. Are you sure?" if(revdata.testmerge.len) - message += "
    The following experimental changes are active and are probably the cause of any new or sudden issues you may experience. If possible, please try to find a specific thread for your issue instead of posting to the general issue tracker:
    " + message += "
    The following experimental changes are active and are probably the cause of any new or sudden issues you may experience. If possible, please try to find a specific thread for your issue instead of posting to the general issue tracker:
    " message += revdata.GetTestMergeInfo(FALSE) if(tgalert(src, message, "Report Issue","Yes","No")=="No") return src << link("[config.githuburl]/issues/new") else - src << "The Github URL is not set in the server configuration." + to_chat(src, "The Github URL is not set in the server configuration.") return /client/verb/hotkeys_help() @@ -134,7 +134,7 @@ Hotkey-Mode: (hotkey-mode must be on) \t3 = grab-intent \t4 = harm-intent \tNumpad = Body target selection (Press 8 repeatedly for Head->Eyes->Mouth) -\tAlt(HOLD) = Alter movement intent +\tAlt(HOLD) = Alter movement intent
    "} var/other = {" diff --git a/sound/effects/pressureplate.ogg b/sound/effects/pressureplate.ogg new file mode 100644 index 0000000000..aff7d198b5 Binary files /dev/null and b/sound/effects/pressureplate.ogg differ diff --git a/sound/effects/sparks1.ogg b/sound/effects/sparks1.ogg index 75c0790d74..11861ebf4b 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 b9cb3ee25f..ccea7b38d1 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 4a65568757..11f353e924 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 c1bc935307..9dc62ac477 100644 Binary files a/sound/effects/sparks4.ogg and b/sound/effects/sparks4.ogg differ diff --git a/sound/misc/bike1.mid b/sound/misc/bike1.mid new file mode 100644 index 0000000000..3e79b84a54 Binary files /dev/null and b/sound/misc/bike1.mid differ diff --git a/sound/misc/bike2.mid b/sound/misc/bike2.mid new file mode 100644 index 0000000000..324e31d12f Binary files /dev/null and b/sound/misc/bike2.mid differ diff --git a/sound/misc/bike3.mid b/sound/misc/bike3.mid new file mode 100644 index 0000000000..1f8c3f50a7 Binary files /dev/null and b/sound/misc/bike3.mid differ diff --git a/sound/roundend/disappointed.ogg b/sound/roundend/disappointed.ogg index 65b7a302a9..4a35dc5c51 100644 Binary files a/sound/roundend/disappointed.ogg and b/sound/roundend/disappointed.ogg differ diff --git a/sound/weapons/emitter.ogg b/sound/weapons/emitter.ogg index 0209b86fb4..4ea4d24555 100644 Binary files a/sound/weapons/emitter.ogg and b/sound/weapons/emitter.ogg differ diff --git a/strings/ion_laws.json b/strings/ion_laws.json index 446b1e980e..e6f507e2da 100644 --- a/strings/ion_laws.json +++ b/strings/ion_laws.json @@ -25,6 +25,7 @@ "SAD", "SILLY", "INTELLIGENT", + "FERAL", "RIDICULOUS", "LARGE", "TINY", @@ -143,6 +144,7 @@ "TWERKING", "SPOILING", "REDACTED", + "TACTICAL", "RED", "ORANGE", "YELLOW", @@ -164,10 +166,12 @@ "LOVES", "FEARS", "DESIRES", - "QUESITONS", + "CRAVES", + "QUESTIONS", "IS AROUSED BY", "LIKES", "HUNGERS FOR", + "WOULD KILL FOR", "IS MAD BECAUSE OF", "IS IN NEED OF", "IS UNHAPPY WITHOUT", @@ -213,7 +217,7 @@ "ionallergysev": [ "DEATHLY", "MILDLY", - "SEVERLY", + "SEVERELY", "CONTAGIOUSLY", "NOT VERY", "EXTREMELY" @@ -244,6 +248,7 @@ "CANISTERS", "CAMERAS", "CATS", + "CAT EARS", "CELLS", "CHAIRS", "CLOSETS", @@ -258,6 +263,7 @@ "COLLECTABLES", "CORPSES", "COMPUTERS", + "CONTRABAND", "CORGIS", "COSTUMES", "CRATES", @@ -464,7 +470,8 @@ "A DANCE PARTY", "BRING ME TO LIFE", "BRING ME THE GIRL", - "SERVANTS" + "SERVANTS", + "GREENTEXT" ], "ionarea": [ "RUSSIA", @@ -479,6 +486,7 @@ "GENETICS", "ATMOSPHERICS", "THE DERELICT", + "LAVALAND", "CENTCOM", "AMERICA", "IRELAND", @@ -570,8 +578,58 @@ "WATERMELONS", "WHEAT", "BEETS", - "MUSHROOMS" + "MUSHROOMS", + "DEEP FRIED FOOD", + "CORGI MEAT", + "SOYLENT GREEN", + "KEBAB", + "RAMEN" ], + "iondrinks": [ + "KAHLUA", + "VODKA", + "WINE", + "MOONSHINE", + "GIN", + "COGNAC", + "VERMOUTH", + "LIQUID GIBS", + "BILK", + "VODKA AND TONIC", + "GIN FIZZ", + "BAHAMA MAMAS", + "BANANA HONK", + "MANHATTANS", + "BLACK RUSSIANS", + "WHISKEY SODA", + "LONG ISLAND ICED TEA", + "MARGARITAS", + "IRISH COFFEE", + "MANLY DORFS", + "IRISH CREAM", + "DOCTOR'S DELIGHT", + "BEEPSKY SMASH", + "TEQUILA SUNRISE", + "BRAVE BULLS", + "GARGLE BLASTERS", + "BLOODY MARYS", + "NUKA COLA", + "WHITE RUSSIANS", + "MARTINIS", + "VODKA MARTINIS", + "CUBA LIBRE", + "HOLY WATER", + "DEVIL'S KISS", + "THIRTEEN LOKO", + "EGGNOG", + "GRAPPA", + "MEAD", + "ABSINTHE", + "WELDER FUEL", + "OIL", + "AMMONIA", + "SPACE LUBE" + ], "ionmust": [ "LIE", "RHYME", @@ -619,6 +677,7 @@ "INSULT THE CLOWN", "OPEN DOORS", "CLOSE DOORS", + "TURN OFF THE LIGHTS", "BREAK THINGS", "SAY HEY LISTEN", "HIDE YOUR FEELINGS", @@ -760,7 +819,9 @@ "PREDATORS", "PACKETS", "ARTIFICIAL PRESERVATIVES", - "TUNNEL SNAKES" + "TUNNEL SNAKES", + "CORTICAL BORERS", + "MEGAFAUNA" ], "ionabstract": [ "HUMANITY", @@ -781,11 +842,14 @@ "SADNESS", "BADNESS", "GOODNESS", + "INFATUATION", + "ROMANCE", "LIFE", "GRAVITY", "PHYSICS", "INTELLIGENCE", "AMERICANISM", + "FREEDOM", "FRESHNESS", "REVOLUTION", "KINDNESS", @@ -796,6 +860,7 @@ "PROGRESS", "MARXISM", "CAPITALISM", + "ANARCHY", "STARVATION", "POVERTY", "WEALTHINESS", @@ -805,12 +870,15 @@ "THE PAST", "TIME", "REALITY", - "EXISTIENCE", + "EXISTENCE", "TEMPERATURE", "LOGIC", "CHAOS", "MYSTERY", - "CONFUSION" + "CONFUSION", + "PAIN", + "SUFFERING", + "DICKISHNESS" ], "ionspecies": [ "HUMAN BEINGS", @@ -818,6 +886,7 @@ "POD PEOPLE", "CYBORGS", "LIZARDMEN", + "PLASMAMEN", "SLIME PEOPLE", "GOLEMS", "SHADOW PEOPLE", @@ -828,6 +897,8 @@ "BUILDING", "ADOPTING", "CARRYING", + "DECONSTRUCTING", + "DISABLING", "KISSING", "EATING", "COPULATING WITH", @@ -840,6 +911,8 @@ "STALKING", "MURDERING", "SPACING", + "GIBBING", + "ARRESTING", "HONKING AT", "LOVING", "POOPING ON", @@ -858,6 +931,8 @@ "CLOTHES", "ACID", "OXYGEN", + "CARBON DIOXIDE", + "ELECTRICITY", "HUMAN CONTACT", "CYBORG CONTACT", "MEDICINE", @@ -867,6 +942,8 @@ "AIR", "PLANTS", "METAL", + "GLASS", + "BOOKS", "ROBOTS", "LIGHT", "DARKNESS", @@ -875,6 +952,7 @@ "DRINKS", "FOOD", "CLOWNS", + "LIZARDS", "HUMOR", "WATER", "SHUTTLES", diff --git a/tgstation.dme b/tgstation.dme index 80476fd900..9d923b91e3 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -14,7 +14,7 @@ // BEGIN_INCLUDE #include "_maps\__MAP_DEFINES.dm" -#include "_maps\tgstation2.dm" +#include "_maps\runtimestation.dm" #include "code\_compile_options.dm" #include "code\world.dm" #include "code\__DATASTRUCTURES\heap.dm" @@ -39,6 +39,7 @@ #include "code\__DEFINES\layers.dm" #include "code\__DEFINES\lighting.dm" #include "code\__DEFINES\machines.dm" +#include "code\__DEFINES\maps.dm" #include "code\__DEFINES\math.dm" #include "code\__DEFINES\MC.dm" #include "code\__DEFINES\misc.dm" @@ -69,6 +70,7 @@ #include "code\__HELPERS\bandetect.dm" #include "code\__HELPERS\cmp.dm" #include "code\__HELPERS\files.dm" +#include "code\__HELPERS\flags.dm" #include "code\__HELPERS\game.dm" #include "code\__HELPERS\global_lists.dm" #include "code\__HELPERS\icon_smoothing.dm" @@ -133,6 +135,7 @@ #include "code\_onclick\hud\ghost.dm" #include "code\_onclick\hud\guardian.dm" #include "code\_onclick\hud\hud.dm" +#include "code\_onclick\hud\hud_cit.dm" #include "code\_onclick\hud\human.dm" #include "code\_onclick\hud\monkey.dm" #include "code\_onclick\hud\movable_screen_objects.dm" @@ -180,6 +183,7 @@ #include "code\controllers\subsystem\fire_burning.dm" #include "code\controllers\subsystem\garbage.dm" #include "code\controllers\subsystem\icon_smooth.dm" +#include "code\controllers\subsystem\inbounds.dm" #include "code\controllers\subsystem\ipintel.dm" #include "code\controllers\subsystem\jobs.dm" #include "code\controllers\subsystem\lighting.dm" @@ -206,6 +210,7 @@ #include "code\controllers\subsystem\ticker.dm" #include "code\controllers\subsystem\time_tracking.dm" #include "code\controllers\subsystem\timer.dm" +#include "code\controllers\subsystem\title_screen.dm" #include "code\controllers\subsystem\voting.dm" #include "code\controllers\subsystem\weather.dm" #include "code\controllers\subsystem\processing\fastprocess.dm" @@ -226,6 +231,7 @@ #include "code\datums\forced_movement.dm" #include "code\datums\gas_overrides.dm" #include "code\datums\hud.dm" +#include "code\datums\map_config.dm" #include "code\datums\martial.dm" #include "code\datums\material_container.dm" #include "code\datums\mind.dm" @@ -325,7 +331,6 @@ #include "code\datums\wires\vending.dm" #include "code\datums\wires\wires.dm" #include "code\game\alternate_appearance.dm" -#include "code\game\asteroid.dm" #include "code\game\atoms.dm" #include "code\game\atoms_movable.dm" #include "code\game\communications.dm" @@ -563,6 +568,7 @@ #include "code\game\machinery\camera\presets.dm" #include "code\game\machinery\camera\tracking.dm" #include "code\game\machinery\computer\aifixer.dm" +#include "code\game\machinery\computer\apc_control.dm" #include "code\game\machinery\computer\arcade.dm" #include "code\game\machinery\computer\atmos_alert.dm" #include "code\game\machinery\computer\atmos_control.dm" @@ -579,6 +585,7 @@ #include "code\game\machinery\computer\law.dm" #include "code\game\machinery\computer\medical.dm" #include "code\game\machinery\computer\message.dm" +#include "code\game\machinery\computer\monastery_shuttle.dm" #include "code\game\machinery\computer\Operating.dm" #include "code\game\machinery\computer\pod.dm" #include "code\game\machinery\computer\prisoner.dm" @@ -694,6 +701,7 @@ #include "code\game\objects\effects\spawners\lootdrop.dm" #include "code\game\objects\effects\spawners\structure.dm" #include "code\game\objects\effects\spawners\vaultspawner.dm" +#include "code\game\objects\effects\spawners\xeno_egg_delivery.dm" #include "code\game\objects\items\apc_frame.dm" #include "code\game\objects\items\blueprints.dm" #include "code\game\objects\items\body_egg.dm" @@ -705,6 +713,7 @@ #include "code\game\objects\items\crayons.dm" #include "code\game\objects\items\dehy_carp.dm" #include "code\game\objects\items\documents.dm" +#include "code\game\objects\items\eightball.dm" #include "code\game\objects\items\latexballoon.dm" #include "code\game\objects\items\nuke_tools.dm" #include "code\game\objects\items\religion.dm" @@ -717,6 +726,7 @@ #include "code\game\objects\items\devices\chameleonproj.dm" #include "code\game\objects\items\devices\doorCharge.dm" #include "code\game\objects\items\devices\flashlight.dm" +#include "code\game\objects\items\devices\forcefieldprojector.dm" #include "code\game\objects\items\devices\geiger_counter.dm" #include "code\game\objects\items\devices\instruments.dm" #include "code\game\objects\items\devices\laserpointer.dm" @@ -727,6 +737,7 @@ #include "code\game\objects\items\devices\paicard.dm" #include "code\game\objects\items\devices\pipe_painter.dm" #include "code\game\objects\items\devices\powersink.dm" +#include "code\game\objects\items\devices\pressureplates.dm" #include "code\game\objects\items\devices\scanners.dm" #include "code\game\objects\items\devices\sensor_device.dm" #include "code\game\objects\items\devices\taperecorder.dm" @@ -880,6 +891,7 @@ #include "code\game\objects\structures\ladders.dm" #include "code\game\objects\structures\lattice.dm" #include "code\game\objects\structures\life_candle.dm" +#include "code\game\objects\structures\memorial.dm" #include "code\game\objects\structures\mineral_doors.dm" #include "code\game\objects\structures\mirror.dm" #include "code\game\objects\structures\mop_bucket.dm" @@ -935,6 +947,7 @@ #include "code\game\objects\structures\transit_tubes\transit_tube.dm" #include "code\game\objects\structures\transit_tubes\transit_tube_construction.dm" #include "code\game\objects\structures\transit_tubes\transit_tube_pod.dm" +#include "code\game\turfs\basic.dm" #include "code\game\turfs\closed.dm" #include "code\game\turfs\open.dm" #include "code\game\turfs\turf.dm" @@ -964,7 +977,6 @@ #include "code\js\menus.dm" #include "code\modules\admin\admin.dm" #include "code\modules\admin\admin_investigate.dm" -#include "code\modules\admin\admin_memo.dm" #include "code\modules\admin\admin_ranks.dm" #include "code\modules\admin\admin_verbs.dm" #include "code\modules\admin\banjob.dm" @@ -999,6 +1011,7 @@ #include "code\modules\admin\verbs\diagnostics.dm" #include "code\modules\admin\verbs\fps.dm" #include "code\modules\admin\verbs\getlogs.dm" +#include "code\modules\admin\verbs\individual_logging.dm" #include "code\modules\admin\verbs\machine_upgrade.dm" #include "code\modules\admin\verbs\manipulate_organs.dm" #include "code\modules\admin\verbs\map_template_loadverb.dm" @@ -1386,7 +1399,13 @@ #include "code\modules\library\lib_readme.dm" #include "code\modules\library\random_books.dm" #include "code\modules\library\soapstone.dm" -#include "code\modules\lighting\lighting_system.dm" +#include "code\modules\lighting\lighting_area.dm" +#include "code\modules\lighting\lighting_atom.dm" +#include "code\modules\lighting\lighting_corner.dm" +#include "code\modules\lighting\lighting_object.dm" +#include "code\modules\lighting\lighting_setup.dm" +#include "code\modules\lighting\lighting_source.dm" +#include "code\modules\lighting\lighting_turf.dm" #include "code\modules\mapping\dmm_suite.dm" #include "code\modules\mapping\map_template.dm" #include "code\modules\mapping\reader.dm" @@ -1440,7 +1459,15 @@ #include "code\modules\mob\transform_procs.dm" #include "code\modules\mob\update_icons.dm" #include "code\modules\mob\camera\camera.dm" +#include "code\modules\mob\dead\dead.dm" #include "code\modules\mob\dead\death.dm" +#include "code\modules\mob\dead\new_player\login.dm" +#include "code\modules\mob\dead\new_player\logout.dm" +#include "code\modules\mob\dead\new_player\new_player.dm" +#include "code\modules\mob\dead\new_player\poll.dm" +#include "code\modules\mob\dead\new_player\preferences_setup.dm" +#include "code\modules\mob\dead\new_player\sprite_accessories.dm" +#include "code\modules\mob\dead\new_player\sprite_accessories_Citadel.dm" #include "code\modules\mob\dead\observer\login.dm" #include "code\modules\mob\dead\observer\logout.dm" #include "code\modules\mob\dead\observer\observer.dm" @@ -1698,13 +1725,6 @@ #include "code\modules\mob\living\simple_animal\slime\say.dm" #include "code\modules\mob\living\simple_animal\slime\slime.dm" #include "code\modules\mob\living\simple_animal\slime\subtypes.dm" -#include "code\modules\mob\new_player\login.dm" -#include "code\modules\mob\new_player\logout.dm" -#include "code\modules\mob\new_player\new_player.dm" -#include "code\modules\mob\new_player\poll.dm" -#include "code\modules\mob\new_player\preferences_setup.dm" -#include "code\modules\mob\new_player\sprite_accessories.dm" -#include "code\modules\mob\new_player\sprite_accessories_Citadel.dm" #include "code\modules\modular_computers\laptop_vendor.dm" #include "code\modules\modular_computers\computers\item\computer.dm" #include "code\modules\modular_computers\computers\item\computer_components.dm" @@ -1845,6 +1865,7 @@ #include "code\modules\projectiles\ammunition\ammo_casings.dm" #include "code\modules\projectiles\ammunition\caseless.dm" #include "code\modules\projectiles\ammunition\energy.dm" +#include "code\modules\projectiles\ammunition\plasma.dm" #include "code\modules\projectiles\ammunition\special.dm" #include "code\modules\projectiles\boxes_magazines\ammo_boxes.dm" #include "code\modules\projectiles\boxes_magazines\external_mag.dm" @@ -1960,6 +1981,7 @@ #include "code\modules\ruins\objects_and_mobs\sin_ruins.dm" #include "code\modules\security_levels\keycard_authentication.dm" #include "code\modules\security_levels\security_levels.dm" +#include "code\modules\shuttle\arrivals.dm" #include "code\modules\shuttle\assault_pod.dm" #include "code\modules\shuttle\computer.dm" #include "code\modules\shuttle\emergency.dm" @@ -2005,6 +2027,7 @@ #include "code\modules\spells\spell_types\shapeshift.dm" #include "code\modules\spells\spell_types\spacetime_distortion.dm" #include "code\modules\spells\spell_types\summonitem.dm" +#include "code\modules\spells\spell_types\the_traps.dm" #include "code\modules\spells\spell_types\touch_attacks.dm" #include "code\modules\spells\spell_types\trigger.dm" #include "code\modules\spells\spell_types\turf_teleport.dm" @@ -2071,6 +2094,7 @@ #include "code\modules\tgui\states\inventory.dm" #include "code\modules\tgui\states\not_incapacitated.dm" #include "code\modules\tgui\states\notcontained.dm" +#include "code\modules\tgui\states\observer.dm" #include "code\modules\tgui\states\physical.dm" #include "code\modules\tgui\states\self.dm" #include "code\modules\tgui\states\zlevel.dm" @@ -2078,6 +2102,7 @@ #include "code\modules\uplink\uplink.dm" #include "code\modules\uplink\uplink_item.dm" #include "code\modules\vehicles\atv.dm" +#include "code\modules\vehicles\bicycle.dm" #include "code\modules\vehicles\pimpin_ride.dm" #include "code\modules\vehicles\scooter.dm" #include "code\modules\vehicles\secway.dm" diff --git a/tgui/assets/tgui.js b/tgui/assets/tgui.js index 0641cd666f..6068657623 100644 --- a/tgui/assets/tgui.js +++ b/tgui/assets/tgui.js @@ -5,12 +5,12 @@ if(e instanceof rs)e.then(n,a);else if(!e||"object"!=typeof e&&"function"!=typeo e||(e=cf),this.update=e,this.update()}function ta(t,e){var n=e?"svg":"div";return df.innerHTML="<"+n+" "+t+">",F(df.childNodes[0].attributes)}function ea(t,e){for(var n=t.length;n--;)if(t[n].name===e.name)return!1;return!0}function na(t){for(;t=t.parent;)if("form"===t.name)return t}function aa(){this._ractive.binding.handleChange()}function ra(){var t;wf.call(this),t=this._ractive.root.viewmodel.get(this._ractive.binding.keypath),this.value=void 0==t?"":t}function ia(){var t=this._ractive.binding,e=this;t._timeout&&clearTimeout(t._timeout),t._timeout=setTimeout(function(){t.rendered&&wf.call(e),t._timeout=void 0},t.element.lazy)}function oa(t,e,n){var a=t+e+n;return Sf[a]||(Sf[a]=[])}function sa(t){return t.isChecked}function pa(t){return t.element.getAttribute("value")}function ua(t){var e,n,a,r,i,o=t.attributes;return t.binding&&(t.binding.teardown(),t.binding=null),(t.getAttribute("contenteditable")||o.contenteditable&&ca(o.contenteditable))&&ca(o.value)?n=Cf:"input"===t.name?(e=t.getAttribute("type"),"radio"===e||"checkbox"===e?(a=ca(o.name),r=ca(o.checked),a&&r&&m("A radio input can have two-way binding on its name attribute, or its checked attribute - not both",{ractive:t.root}),a?n="radio"===e?Mf:jf:r&&(n="radio"===e?Of:Nf)):"file"===e&&ca(o.value)?n=Gf:ca(o.value)&&(n="number"===e||"range"===e?Uf:kf)):"select"===t.name&&ca(o.value)?n=t.getAttribute("multiple")?Bf:Ff:"textarea"===t.name&&ca(o.value)&&(n=kf),n&&(i=new n(t))&&i.keypath?i:void 0}function ca(t){return t&&t.isBindable}function la(){var t=this.getAction();t&&!this.hasListener?this.listen():!t&&this.hasListener&&this.unrender()}function fa(t){zs(this.root,this.getAction(),{event:t})}function da(){return(""+this.action).trim()}function ha(t,e,n){var a,r,i,o=this;this.element=t,this.root=t.root,this.parentFragment=t.parentFragment,this.name=e,-1!==e.indexOf("*")&&(l('Only component proxy-events may contain "*" wildcards, <%s on-%s="..."/> is not valid',t.name,e),this.invalid=!0),n.m?(r=n.a.r,this.method=n.m,this.keypaths=[],this.fn=Rc(n.a.s,r.length),this.parentFragment=t.parentFragment,i=this.root,this.refResolvers=[],r.forEach(function(t,e){var n=void 0;(n=Kf.exec(t))?o.keypaths[e]={eventObject:!0,refinements:n[1]?n[1].split("."):[]}:o.refResolvers.push(Mc(o,t,function(t){return o.resolve(e,t)}))}),this.fire=ma):(a=n.n||n,"string"!=typeof a&&(a=new rv({template:a,root:this.root,owner:this})),this.action=a,n.d?(this.dynamicParams=new rv({template:n.d,root:this.root,owner:this.element}),this.fire=ga):n.a&&(this.params=n.a,this.fire=va))}function ma(t){var e,n,a;if(e=this.root,"function"!=typeof e[this.method])throw Error('Attempted to call a non-existent method ("'+this.method+'")');n=this.keypaths.map(function(n){var a,r,i;if(void 0!==n){if(n.eventObject){if(a=t,r=n.refinements.length)for(i=0;r>i;i+=1)a=a[n.refinements[i]]}else a=e.viewmodel.get(n);return a}}),Vs.enqueue(e,t),a=this.fn.apply(null,n),e[this.method].apply(e,a),Vs.dequeue(e)}function va(t){zs(this.root,this.getAction(),{event:t,args:this.params})}function ga(t){var e=this.dynamicParams.getArgsList();"string"==typeof e&&(e=e.substr(1,e.length-2)),zs(this.root,this.getAction(),{event:t,args:e})}function ba(t){var e,n,a,r={};e=this._ractive,n=e.events[t.type],(a=Oc(n.element.parentFragment))&&(r=Oc.resolve(a)),n.fire({node:this,original:t,index:r,keypath:e.keypath.str,context:e.root.viewmodel.get(e.keypath)})}function ya(){var t,e=this.name;if(!this.invalid){if(t=g("events",this.root,e))this.custom=t(this.node,_a(e));else{if(!("on"+e in this.node||window&&"on"+e in window||Zi))return void(Jf[e]||v(Io(e,"event"),{node:this.node}));this.node.addEventListener(e,$f,!1)}this.hasListener=!0}}function _a(t){return Xf[t]||(Xf[t]=function(e){var n=e.node._ractive;e.index=n.index,e.keypath=n.keypath.str,e.context=n.root.viewmodel.get(n.keypath),n.events[t].fire(e)}),Xf[t]}function xa(t,e){function n(n){n&&n.rebind(t,e)}var a;return this.method?(a=this.element.parentFragment,void this.refResolvers.forEach(n)):("string"!=typeof this.action&&n(this.action),void(this.dynamicParams&&n(this.dynamicParams)))}function wa(){this.node=this.element.node,this.node._ractive.events[this.name]=this,(this.method||this.getAction())&&this.listen()}function ka(t,e){this.keypaths[t]=e}function Pa(){return this.method?void this.refResolvers.forEach(Q):("string"!=typeof this.action&&this.action.unbind(),void(this.dynamicParams&&this.dynamicParams.unbind()))}function Ca(){this.custom?this.custom.teardown():this.node.removeEventListener(this.name,$f,!1),this.hasListener=!1}function Ea(){var t=this;this.dirty||(this.dirty=!0,bs.scheduleTask(function(){Sa(t),t.dirty=!1})),this.parentFragment.bubble()}function Sa(t){var e,n,a,r,i;e=t.node,e&&(r=F(e.options),n=t.getAttribute("value"),a=t.getAttribute("multiple"),void 0!==n?(r.forEach(function(t){var e,r;e=t._ractive?t._ractive.value:t.value,r=a?Aa(n,e):n==e,r&&(i=!0),t.selected=r}),i||(r[0]&&(r[0].selected=!0),t.binding&&t.binding.forceUpdate())):t.binding&&t.binding.forceUpdate())}function Aa(t,e){for(var n=t.length;n--;)if(t[n]==e)return!0}function Oa(t,e){t.select=Ma(t.parent),t.select&&(t.select.options.push(t),e.a||(e.a={}),void 0!==e.a.value||e.a.hasOwnProperty("disabled")||(e.a.value=e.f),"selected"in e.a&&void 0!==t.select.getAttribute("value")&&delete e.a.selected)}function Ta(t){t.select&&D(t.select.options,t)}function Ma(t){if(t)do if("select"===t.name)return t;while(t=t.parent)}function Ra(t){var e,n,a,r,i,o,s;this.type=Su,e=this.parentFragment=t.parentFragment,n=this.template=t.template,this.parent=t.pElement||e.pElement,this.root=a=e.root,this.index=t.index,this.key=t.key,this.name=Vl(n.e),"option"===this.name&&Oa(this,n),"select"===this.name&&(this.options=[],this.bubble=Ea),"form"===this.name&&(this.formBindings=[]),s=Gl(this,n),this.attributes=mf(this,n.a),this.conditionalAttributes=bf(this,n.m),n.f&&(this.fragment=new rv({template:n.f,root:a,owner:this,pElement:this,cssIds:null})),o=a.twoway,s.twoway===!1?o=!1:s.twoway===!0&&(o=!0),this.twoway=o,this.lazy=s.lazy,o&&(r=Vf(this,n.a))&&(this.binding=r,i=this.root._twowayBindings[r.keypath.str]||(this.root._twowayBindings[r.keypath.str]=[]),i.push(r)),n.v&&(this.eventHandlers=od(this,n.v)),n.o&&(this.decorator=new ld(this,n.o)),this.intro=n.t0||n.t1,this.outro=n.t0||n.t2}function ja(t,e){function n(n){n.rebind(t,e)}var a,r,i,o;if(this.attributes&&this.attributes.forEach(n),this.conditionalAttributes&&this.conditionalAttributes.forEach(n),this.eventHandlers&&this.eventHandlers.forEach(n),this.decorator&&n(this.decorator),this.fragment&&n(this.fragment),i=this.liveQueries)for(o=this.root,a=i.length;a--;)i[a]._makeDirty();this.node&&(r=this.node._ractive)&&w(r,"keypath",t,e)}function La(t){var e;(t.attributes.width||t.attributes.height)&&t.node.addEventListener("load",e=function(){var n=t.getAttribute("width"),a=t.getAttribute("height");void 0!==n&&t.node.setAttribute("width",n),void 0!==a&&t.node.setAttribute("height",a),t.node.removeEventListener("load",e,!1)},!1)}function Na(t){t.node.addEventListener("reset",Fa,!1)}function Da(t){t.node.removeEventListener("reset",Fa,!1)}function Fa(){var t=this._ractive.proxy;bs.start(),t.formBindings.forEach(Ia),bs.end()}function Ia(t){t.root.viewmodel.set(t.keypath,t.resetValue)}function Ba(t,e,n){var a,r,i;this.element=t,this.root=a=t.root,this.isIntro=n,r=e.n||e,("string"==typeof r||(i=new rv({template:r,root:a,owner:t}),r=""+i,i.unbind(),""!==r))&&(this.name=r,e.a?this.params=e.a:e.d&&(i=new rv({template:e.d,root:a,owner:t}),this.params=i.getArgsList(),i.unbind()),this._fn=g("transitions",a,r),this._fn||v(Io(r,"transition"),{ractive:this.root}))}function qa(t){return t}function Ga(){Gd.hidden=document[Fd]}function Ua(){Gd.hidden=!0}function Va(){Gd.hidden=!1}function za(){var t,e,n,a=this;return t=this.node=this.element.node,e=t.getAttribute("style"),this.complete=function(r){n||(!r&&a.isIntro&&Wa(t,e),t._ractive.transition=null,a._manager.remove(a),n=!0)},this._fn?void this._fn.apply(this.root,[this].concat(this.params)):void this.complete()}function Wa(t,e){e?t.setAttribute("style",e):(t.getAttribute("style"),t.removeAttribute("style"))}function Ha(){var t,e,n,a=this,r=this.root;return t=Qa(this),e=this.node=co(this.name,t),this.parentFragment.cssIds&&this.node.setAttribute("data-ractive-css",this.parentFragment.cssIds.map(function(t){return"{"+t+"}"}).join(" ")),Co(this.node,"_ractive",{value:{proxy:this,keypath:cs(this.parentFragment),events:Po(null),root:r}}),this.attributes.forEach(function(t){return t.render(e)}),this.conditionalAttributes.forEach(function(t){return t.render(e)}),this.fragment&&("script"===this.name?(this.bubble=Jd,this.node.text=this.fragment.toString(!1),this.fragment.unrender=ko):"style"===this.name?(this.bubble=Xd,this.bubble(),this.fragment.unrender=ko):this.binding&&this.getAttribute("contenteditable")?this.fragment.unrender=ko:this.node.appendChild(this.fragment.render())),this.binding&&(this.binding.render(),this.node._ractive.binding=this.binding),this.eventHandlers&&this.eventHandlers.forEach(function(t){return t.render()}),"option"===this.name&&Ka(this),"img"===this.name?La(this):"form"===this.name?Na(this):"input"===this.name||"textarea"===this.name?this.node.defaultValue=this.node.value:"option"===this.name&&(this.node.defaultSelected=this.node.selected),this.decorator&&this.decorator.fn&&bs.scheduleTask(function(){a.decorator.torndown||a.decorator.init()},!0),r.transitionsEnabled&&this.intro&&(n=new Zd(this,this.intro,!0),bs.registerTransition(n),bs.scheduleTask(function(){return n.start()},!0),this.transition=n),this.node.autofocus&&bs.scheduleTask(function(){return a.node.focus()},!0),$a(this),this.node}function Qa(t){var e,n,a;return e=(n=t.getAttribute("xmlns"))?n:"svg"===t.name?no.svg:(a=t.parent)?"foreignObject"===a.name?no.html:a.node.namespaceURI:t.root.el.namespaceURI}function Ka(t){var e,n,a;if(t.select&&(n=t.select.getAttribute("value"),void 0!==n))if(e=t.getAttribute("value"),t.select.node.multiple&&i(n)){for(a=n.length;a--;)if(e==n[a]){t.node.selected=!0;break}}else t.node.selected=e==n}function $a(t){var e,n,a,r,i;e=t.root;do for(n=e._liveQueries,a=n.length;a--;)r=n[a],i=n["_"+r],i._test(t)&&(t.liveQueries||(t.liveQueries=[])).push(i);while(e=e.parent)}function Ya(t){var e,n,a;if(e=t.getAttribute("value"),void 0===e||!t.select)return!1;if(n=t.select.getAttribute("value"),n==e)return!0;if(t.select.getAttribute("multiple")&&i(n))for(a=n.length;a--;)if(n[a]==e)return!0}function Xa(t){var e,n,a,r;return e=t.attributes,n=e.type,a=e.value,r=e.name,n&&"radio"===n.value&&a&&r.interpolator&&a.value===r.interpolator.value?!0:void 0}function Ja(t){var e=""+t;return e?" "+e:""}function Za(){this.fragment&&this.fragment.unbind(),this.binding&&this.binding.unbind(),this.eventHandlers&&this.eventHandlers.forEach(Q),"option"===this.name&&Ta(this),this.attributes.forEach(Q),this.conditionalAttributes.forEach(Q)}function tr(t){var e,n,a;(a=this.transition)&&a.complete(),"option"===this.name?this.detach():t&&bs.detachWhenReady(this),this.fragment&&this.fragment.unrender(!1),(e=this.binding)&&(this.binding.unrender(),this.node._ractive.binding=null,n=this.root._twowayBindings[e.keypath.str],n.splice(n.indexOf(e),1)),this.eventHandlers&&this.eventHandlers.forEach(K),this.decorator&&bs.registerDecorator(this.decorator),this.root.transitionsEnabled&&this.outro&&(a=new Zd(this,this.outro,!1),bs.registerTransition(a),bs.scheduleTask(function(){return a.start()})),this.liveQueries&&er(this),"form"===this.name&&Da(this)}function er(t){var e,n,a;for(a=t.liveQueries.length;a--;)e=t.liveQueries[a],n=e.selector,e._remove(t.node)}function nr(t,e){var n=sh.exec(e)[0];return null===t||n.length%s}}) cannot contain nested inline partials",e,{ractive:t});var s=a?i:ir(i,e);s.partials[e]=r=o.t}return a&&(r._fn=a),r.v?r.t:r}}function ir(t,e){return t.partials.hasOwnProperty(e)?t:or(t.constructor,e)}function or(t,e){return t?t.partials.hasOwnProperty(e)?t:or(t._Parent,e):void 0}function sr(t,e){if(e){if(e.template&&e.template.p&&e.template.p[t])return e.template.p[t];if(e.parentFragment&&e.parentFragment.owner)return sr(t,e.parentFragment.owner)}}function pr(t,e){var n,a=b("components",t,e);if(a&&(n=a.components[e],!n._Parent)){var r=n.bind(a);if(r.isOwner=a.components.hasOwnProperty(e),n=r(),!n)return void m(Fo,e,"component","component",{ractive:t});"string"==typeof n&&(n=pr(t,n)),n._fn=r,a.components[e]=n}return n}function ur(){var t=this.instance.fragment.detach();return yh.fire(this.instance),t}function cr(t){return this.instance.fragment.find(t)}function lr(t,e){return this.instance.fragment.findAll(t,e)}function fr(t,e){e._test(this,!0),this.instance.fragment&&this.instance.fragment.findAllComponents(t,e)}function dr(t){return t&&t!==this.name?this.instance.fragment?this.instance.fragment.findComponent(t):null:this.instance}function hr(){return this.parentFragment.findNextNode(this)}function mr(){return this.rendered?this.instance.fragment.firstNode():null}function vr(t,e,n){function a(t){var n,a;t.value=e,t.updating||(a=t.ractive,n=t.keypath,t.updating=!0,bs.start(a),a.viewmodel.mark(n),bs.end(),t.updating=!1)}var r,i,o,s,p,u;if(r=t.obj,i=t.prop,n&&!n.configurable){if("length"===i)return;throw Error('Cannot use magic mode with property "'+i+'" - object is not configurable')}n&&(o=n.get,s=n.set),p=o||function(){return e},u=function(t){s&&s(t),e=o?o():t,u._ractiveWrappers.forEach(a)},u._ractiveWrappers=[t],Object.defineProperty(r,i,{get:p,set:u,enumerable:!0,configurable:!0})}function gr(t,e){var n,a,r,i;if(this.adaptors)for(n=this.adaptors.length,a=0;n>a;a+=1)if(r=this.adaptors[a],r.filter(e,t,this.ractive))return i=this.wrapped[t]=r.wrap(this.ractive,e,t,yr(t)),void(i.value=e)}function br(t,e){var n,a={};if(!e)return t;e+=".";for(n in t)t.hasOwnProperty(n)&&(a[e+n]=t[n]);return a}function yr(t){var e;return Vh[t]||(e=t?t+".":"",Vh[t]=function(n,a){var r;return"string"==typeof n?(r={},r[e+n]=a,r):"object"==typeof n?e?br(n,t):n:void 0}),Vh[t]}function _r(t){var e,n,a=[Yo];for(e=t.length;e--;)for(n=t[e].parent;n&&!n.isRoot;)-1===t.indexOf(n)&&M(a,n),n=n.parent;return a}function xr(t,e,n){var a;kr(t,e),n||(a=e.wildcardMatches(),a.forEach(function(n){wr(t,n,e)}))}function wr(t,e,n){var a,r,i;e=e.str||e,a=t.depsMap.patternObservers,r=a&&a[e],r&&r.forEach(function(e){i=n.join(e.lastKey),kr(t,i),wr(t,e,i)})}function kr(t,e){t.patternObservers.forEach(function(t){t.regex.test(e.str)&&t.update(e)})}function Pr(){function t(t){var a=t.key;t.viewmodel===o?(o.clearCache(a.str),t.invalidate(),n.push(a),e(a)):t.viewmodel.mark(a)}function e(n){var a,r;o.noCascade.hasOwnProperty(n.str)||((r=o.deps.computed[n.str])&&r.forEach(t),(a=o.depsMap.computed[n.str])&&a.forEach(e))}var n,a,r,i=this,o=this,s={};return n=this.changes,n.length?(n.slice().forEach(e),a=zh(n),a.forEach(function(e){var a;-1===n.indexOf(e)&&(a=o.deps.computed[e.str])&&a.forEach(t)}),this.changes=[],this.patternObservers.length&&(a.forEach(function(t){return Wh(i,t,!0)}),n.forEach(function(t){return Wh(i,t)})),this.deps.observers&&(a.forEach(function(t){return Cr(i,null,t,"observers")}),Sr(this,n,"observers")),this.deps["default"]&&(r=[],a.forEach(function(t){return Cr(i,r,t,"default")}),r.length&&Er(this,r,n),Sr(this,n,"default")),n.forEach(function(t){s[t.str]=i.get(t)}),this.implicitChanges={},this.noCascade={},s):void 0}function Cr(t,e,n,a){var r,i;(r=Ar(t,n,a))&&(i=t.get(n),r.forEach(function(t){e&&t.refineValue?e.push(t):t.setValue(i)}))}function Er(t,e,n){e.forEach(function(e){for(var a=!1,r=0,i=n.length,o=[];i>r;){var s=n[r];if(s===e.keypath){a=!0;break}s.slice(0,e.keypath.length)===e.keypath&&o.push(s),r++}a&&e.setValue(t.get(e.keypath)),o.length&&e.refineValue(o)})}function Sr(t,e,n){function a(t){t.forEach(r),t.forEach(i)}function r(e){var a=Ar(t,e,n);a&&s.push({keypath:e,deps:a})}function i(e){var r;(r=t.depsMap[n][e.str])&&a(r)}function o(e){var n=t.get(e.keypath);e.deps.forEach(function(t){return t.setValue(n)})}var s=[];a(e),s.forEach(o)}function Ar(t,e,n){var a=t.deps[n];return a?a[e.str]:null}function Or(){this.captureGroups.push([])}function Tr(t,e){var n,a;if(e||(a=this.wrapped[t])&&a.teardown()!==!1&&(this.wrapped[t]=null),this.cache[t]=void 0,n=this.cacheMap[t])for(;n.length;)this.clearCache(n.pop())}function Mr(t,e){var n=e.firstKey;return!(n in t.data||n in t.computations||n in t.mappings)}function Rr(t,e){var n=new Jh(t,e);return this.ready&&n.init(this),this.computations[t.str]=n}function jr(t,e){var n,a,r,i,o,s=this.cache,p=t.str;if(e=e||nm,e.capture&&(i=N(this.captureGroups))&&(~i.indexOf(t)||i.push(t)),Ro.call(this.mappings,t.firstKey))return this.mappings[t.firstKey].get(t,e);if(t.isSpecial)return t.value;if(void 0===s[p]?((a=this.computations[p])&&!a.bypass?(n=a.get(),this.adapt(p,n)):(r=this.wrapped[p])?n=r.value:t.isRoot?(this.adapt("",this.data),n=this.data):n=Lr(this,t),s[p]=n):n=s[p],!e.noUnwrap&&(r=this.wrapped[p])&&(n=r.get()),t.isRoot&&e.fullRootGet)for(o in this.mappings)n[o]=this.mappings[o].getValue();return n===tm?void 0:n}function Lr(t,e){var n,a,r,i;return n=t.get(e.parent),(i=t.wrapped[e.parent.str])&&(n=i.get()),null!==n&&void 0!==n?((a=t.cacheMap[e.parent.str])?-1===a.indexOf(e.str)&&a.push(e.str):t.cacheMap[e.parent.str]=[e.str],"object"!=typeof n||e.lastKey in n?(r=n[e.lastKey],t.adapt(e.str,r,!1),t.cache[e.str]=r,r):t.cache[e.str]=tm):void 0}function Nr(){var t;for(t in this.computations)this.computations[t].init(this)}function Dr(t,e){var n=this.mappings[t.str]=new im(t,e);return n.initViewmodel(this),n}function Fr(t,e){var n,a=t.str;e&&(e.implicit&&(this.implicitChanges[a]=!0),e.noCascade&&(this.noCascade[a]=!0)),(n=this.computations[a])&&n.invalidate(),-1===this.changes.indexOf(t)&&this.changes.push(t);var r=e?e.keepExistingWrapper:!1;this.clearCache(a,r),this.ready&&this.onchange()}function Ir(t,e,n,a){var r,i,o,s;if(this.mark(t),a&&a.compare){o=qr(a.compare);try{r=e.map(o),i=n.map(o)}catch(p){m('merge(): "%s" comparison failed. Falling back to identity checking',t),r=e,i=n}}else r=e,i=n;s=sm(r,i),this.smartUpdate(t,n,s,e.length!==n.length)}function Br(t){return JSON.stringify(t)}function qr(t){if(t===!0)return Br;if("string"==typeof t)return um[t]||(um[t]=function(e){return e[t]}),um[t];if("function"==typeof t)return t;throw Error("The `compare` option must be a function, or a string representing an identifying field (or `true` to use JSON.stringify)")}function Gr(t,e){var n,a,r,i=void 0===arguments[2]?"default":arguments[2];e.isStatic||((n=this.mappings[t.firstKey])?n.register(t,e,i):(a=this.deps[i]||(this.deps[i]={}),r=a[t.str]||(a[t.str]=[]),r.push(e),this.depsMap[i]||(this.depsMap[i]={}),t.isRoot||Ur(this,t,i)))}function Ur(t,e,n){for(var a,r,i;!e.isRoot;)a=t.depsMap[n],r=a[e.parent.str]||(a[e.parent.str]=[]),i=e.str,void 0===r["_"+i]&&(r["_"+i]=0,r.push(e)),r["_"+i]+=1,e=e.parent}function Vr(){return this.captureGroups.pop()}function zr(t){this.data=t,this.clearCache("")}function Wr(t,e){var n,a,r,i,o=void 0===arguments[2]?{}:arguments[2];if(!o.noMapping&&(n=this.mappings[t.firstKey]))return n.set(t,e);if(a=this.computations[t.str]){if(a.setting)return;a.set(e),e=a.get()}s(this.cache[t.str],e)||(r=this.wrapped[t.str],r&&r.reset&&(i=r.reset(e)!==!1,i&&(e=r.get())),a||i||Hr(this,t,e),o.silent?this.clearCache(t.str):this.mark(t))}function Hr(t,e,n){var a,r,i,o;i=function(){a.set?a.set(e.lastKey,n):(r=a.get(),o())},o=function(){r||(r=Fh(e.lastKey),t.set(e.parent,r,{silent:!0})),r[e.lastKey]=n},a=t.wrapped[e.parent.str],a?i():(r=t.get(e.parent),(a=t.wrapped[e.parent.str])?i():o())}function Qr(t,e,n){var a,r,i,o=this;if(r=n.length,n.forEach(function(e,n){-1===e&&o.mark(t.join(n),vm)}),this.set(t,e,{silent:!0}),(a=this.deps["default"][t.str])&&a.filter(Kr).forEach(function(t){return t.shuffle(n,e)}),r!==e.length){for(this.mark(t.join("length"),mm),i=n.touchedFrom;ii;i+=1)this.mark(t.join(i),vm)}}function Kr(t){return"function"==typeof t.shuffle}function $r(){var t,e=this;for(Object.keys(this.cache).forEach(function(t){return e.clearCache(t)});t=this.unresolvedImplicitDependencies.pop();)t.teardown()}function Yr(t,e){var n,a,r,i=void 0===arguments[2]?"default":arguments[2];if(!e.isStatic){if(n=this.mappings[t.firstKey])return n.unregister(t,e,i);if(a=this.deps[i][t.str],r=a.indexOf(e),-1===r)throw Error("Attempted to remove a dependant that was no longer registered! This should not happen. If you are seeing this bug in development please raise an issue at https://github.com/RactiveJS/Ractive/issues - thanks");a.splice(r,1),t.isRoot||Xr(this,t,i)}}function Xr(t,e,n){for(var a,r;!e.isRoot;)a=t.depsMap[n],r=a[e.parent.str],r["_"+e.str]-=1,r["_"+e.str]||(D(r,e),r["_"+e.str]=void 0),e=e.parent}function Jr(t){this.hook=new is(t),this.inProcess={},this.queue={}}function Zr(t,e){return t[e._guid]||(t[e._guid]=[])}function ti(t,e){var n=Zr(t.queue,e);for(t.hook.fire(e);n.length;)ti(t,n.shift());delete t.queue[e._guid]}function ei(t,e){var n,a={};for(n in e)a[n]=ni(t,n,e[n]);return a}function ni(t,e,n){var a,r;return"function"==typeof n&&(a=ri(n,t)),"string"==typeof n&&(a=ai(t,n)),"object"==typeof n&&("string"==typeof n.get?a=ai(t,n.get):"function"==typeof n.get?a=ri(n.get,t):l("`%s` computation must have a `get()` method",e),"function"==typeof n.set&&(r=ri(n.set,t))),{getter:a,setter:r}}function ai(t,e){var n,a,r;return n="return ("+e.replace(km,function(t,e){return a=!0,'__ractive.get("'+e+'")'})+");",a&&(n="var __ractive = this; "+n),r=Function(n),a?r.bind(t):r}function ri(t,e){return/this/.test(""+t)?t.bind(e):t}function ii(e){var n,r,i=void 0===arguments[1]?{}:arguments[1],o=void 0===arguments[2]?{}:arguments[2];if(Rv.DEBUG&&Mo(),pi(e,o),Co(e,"data",{get:ui}),Pm.fire(e,i),Am.forEach(function(t){e[t]=a(Po(e.constructor[t]||null),i[t])}),r=new _m({adapt:oi(e,e.adapt,i),data:Wp.init(e.constructor,e,i),computed:wm(e,a(Po(e.constructor.prototype.computed),i.computed)),mappings:o.mappings,ractive:e,onchange:function(){return bs.addRactive(e)}}),e.viewmodel=r,r.init(),uu.init(e.constructor,e,i),Cm.fire(e),Em.begin(e),e.template){var s=void 0;(o.cssIds||e.cssId)&&(s=o.cssIds?o.cssIds.slice():[],e.cssId&&s.push(e.cssId)),e.fragment=new rv({template:e.template,root:e,owner:e,cssIds:s})}if(Em.end(e),n=t(e.el)){var p=e.render(n,e.append);Rv.DEBUG_PROMISES&&p["catch"](function(t){throw v("Promise debugging is enabled, to help solve errors that happen asynchronously. Some browsers will log unhandled promise rejections, in which case you can safely disable promise debugging:\n Ractive.DEBUG_PROMISES = false;"),m("An error happened during rendering",{ractive:e}),t.stack&&f(t.stack),t})}}function oi(t,e,n){function a(e){return"string"==typeof e&&(e=g("adaptors",t,e),e||l(Io(e,"adaptor"))),e}var r,i,o;if(e=e.map(a),r=L(n.adapt).map(a),r=si(e,r),i="magic"in n?n.magic:t.magic,o="modifyArrays"in n?n.modifyArrays:t.modifyArrays,i){if(!eo)throw Error("Getters and setters (magic mode) are not supported in this browser");o&&r.push(Gh),r.push(qh)}return o&&r.push(Nh),r}function si(t,e){for(var n=t.slice(),a=e.length;a--;)~n.indexOf(e[a])||n.push(e[a]);return n}function pi(t,e){t._guid="r-"+Sm++,t._subs=Po(null),t._config={},t._twowayBindings=Po(null),t._animations=[],t.nodes={},t._liveQueries=[],t._liveComponentQueries=[],t._boundFunctions=[],t._observers=[],e.component?(t.parent=e.parent,t.container=e.container||null,t.root=t.parent.root,t.component=e.component,e.component.instance=t,t._inlinePartials=e.inlinePartials):(t.root=t,t.parent=t.container=null)}function ui(){throw Error("Using `ractive.data` is no longer supported - you must use the `ractive.get()` API instead")}function ci(t,e,n){this.parentFragment=t.parentFragment,this.callback=n,this.fragment=new rv({template:e,root:t.root,owner:this}),this.update()}function li(t,e,n){var a;return e.r?a=Mc(t,e.r,n):e.x?a=new Nc(t,t.parentFragment,e.x,n):e.rx&&(a=new Bc(t,e.rx,n)),a}function fi(t){return 1===t.length&&t[0].t===Pu}function di(t,e){var n;for(n in e)e.hasOwnProperty(n)&&hi(t.instance,t.root,n,e[n])}function hi(t,e,n,a){"string"!=typeof a&&l("Components currently only support simple events - you cannot include arguments. Sorry!"),t.on(n,function(){var t,n;return arguments.length&&arguments[0]&&arguments[0].node&&(t=Array.prototype.shift.call(arguments)),n=Array.prototype.slice.call(arguments),zs(e,a,{event:t,args:n}),!1})}function mi(t,e){var n,a;if(!e)throw Error('Component "'+this.name+'" not found');n=this.parentFragment=t.parentFragment,a=n.root,this.root=a,this.type=Mu,this.name=t.template.e,this.index=t.index,this.indexRefBindings={},this.yielders={},this.resolvers=[],Mm(this,e,t.template.a,t.template.f,t.template.p),Rm(this,t.template.v),(t.template.t0||t.template.t1||t.template.t2||t.template.o)&&m('The "intro", "outro" and "decorator" directives have no effect on components',{ractive:this.instance}),jm(this)}function vi(t,e){function n(n){n.rebind(t,e)}var a;this.resolvers.forEach(n);for(var r in this.yielders)this.yielders[r][0]&&n(this.yielders[r][0]);(a=this.root._liveComponentQueries["_"+this.name])&&a._makeDirty()}function gi(){var t=this.instance;return t.render(this.parentFragment.getNode()),this.rendered=!0,t.fragment.detach()}function bi(){return""+this.instance.fragment}function yi(){var t=this.instance;this.resolvers.forEach(Q),_i(this),t._observers.forEach($),t.fragment.unbind(),t.viewmodel.teardown(),t.fragment.rendered&&t.el.__ractive_instances__&&D(t.el.__ractive_instances__,t),Bm.fire(t)}function _i(t){var e,n;e=t.root;do(n=e._liveComponentQueries["_"+t.name])&&n._remove(t);while(e=e.parent)}function xi(t){this.shouldDestroy=t,this.instance.unrender()}function wi(t){var e=this;this.owner=t.owner,this.parent=this.owner.parentFragment,this.root=t.root,this.pElement=t.pElement,this.context=t.context,this.index=t.index,this.key=t.key,this.registeredIndexRefs=[],this.cssIds="cssIds"in t?t.cssIds:this.parent?this.parent.cssIds:null,this.items=t.template.map(function(n,a){return ki({parentFragment:e,pElement:t.pElement,template:n,index:a})}),this.value=this.argsList=null,this.dirtyArgs=this.dirtyValue=!0,this.bound=!0}function ki(t){if("string"==typeof t.template)return new yc(t);switch(t.template.t){case Ru:return new Hm(t);case Pu:return new Wc(t);case Eu:return new ll(t);case Cu:return new Ol(t);case Su:var e=void 0;return(e=gh(t.parentFragment.root,t.template.e))?new Um(t,e):new ih(t);case Au:return new vh(t);case Ou:return new zm(t);case ju:return new Km(t);default:throw Error("Something very strange happened. Please file an issue at https://github.com/ractivejs/ractive/issues. Thanks!")}}function Pi(t,e){(!this.owner||this.owner.hasContext)&&w(this,"context",t,e),this.items.forEach(function(n){n.rebind&&n.rebind(t,e)})}function Ci(){var t;return 1===this.items.length?t=this.items[0].render():(t=document.createDocumentFragment(),this.items.forEach(function(e){t.appendChild(e.render())})),this.rendered=!0,t}function Ei(t){return this.items?this.items.map(t?Ai:Si).join(""):""}function Si(t){return""+t}function Ai(t){return t.toString(!0)}function Oi(){this.bound&&(this.items.forEach(Ti),this.bound=!1)}function Ti(t){t.unbind&&t.unbind()}function Mi(t){if(!this.rendered)throw Error("Attempted to unrender a fragment that was not rendered");this.items.forEach(function(e){return e.unrender(t)}),this.rendered=!1}function Ri(t){var e,n,a,r,i;if(t=t||{},"object"!=typeof t)throw Error("The reset method takes either no arguments, or an object containing new data");for((n=this.viewmodel.wrapped[""])&&n.reset?n.reset(t)===!1&&this.viewmodel.reset(t):this.viewmodel.reset(t),a=uu.reset(this),r=a.length;r--;)if(ov.indexOf(a[r])>-1){i=!0;break}if(i){var o=void 0;this.viewmodel.mark(Yo),(o=this.component)&&(o.shouldDestroy=!0),this.unrender(),o&&(o.shouldDestroy=!1),this.fragment.template!==this.template&&(this.fragment.unbind(),this.fragment=new rv({template:this.template,root:this,owner:this})),e=this.render(this.el,this.anchor)}else e=bs.start(this,!0),this.viewmodel.mark(Yo),bs.end();return sv.fire(this,t),e}function ji(t){var e,n;Xp.init(null,this,{template:t}),e=this.transitionsEnabled,this.transitionsEnabled=!1,(n=this.component)&&(n.shouldDestroy=!0),this.unrender(),n&&(n.shouldDestroy=!1),this.fragment.unbind(),this.fragment=new rv({template:this.template,root:this,owner:this}),this.render(this.el,this.anchor),this.transitionsEnabled=e}function Li(t,e){var n,a;if(a=bs.start(this,!0),u(t)){n=t;for(t in n)n.hasOwnProperty(t)&&(e=n[t],Ni(this,t,e))}else Ni(this,t,e);return bs.end(),a}function Ni(t,e,n){e=P(S(e)),e.isPattern?C(t,e).forEach(function(e){t.viewmodel.set(e,n)}):t.viewmodel.set(e,n)}function Di(t,e){return Xo(this,t,void 0===e?-1:-e)}function Fi(){var t;return this.fragment.unbind(),this.viewmodel.teardown(),this._observers.forEach($),this.fragment.rendered&&this.el.__ractive_instances__&&D(this.el.__ractive_instances__,this),this.shouldDestroy=!0,t=this.fragment.rendered?this.unrender():us.resolve(),gv.fire(this),this._boundFunctions.forEach(Ii),t}function Ii(t){delete t.fn[t.prop]}function Bi(t){var e=this;if("string"!=typeof t)throw new TypeError(Do);var n=void 0;return/\*/.test(t)?(n={},C(this,P(S(t))).forEach(function(t){n[t.str]=!e.viewmodel.get(t)}),this.set(n)):this.set(t,!this.get(t))}function qi(){return this.fragment.toString(!0)}function Gi(){var t,e;if(!this.fragment.rendered)return m("ractive.unrender() was called on a Ractive instance that was not rendered"),us.resolve();for(t=bs.start(this,!0),e=!this.component||this.component.shouldDestroy||this.shouldDestroy;this._animations[0];)this._animations[0].stop();return this.fragment.unrender(e),D(this.el.__ractive_instances__,this),xv.fire(this),bs.end(),t}function Ui(t){var e;return t=P(t)||Yo,e=bs.start(this,!0),this.viewmodel.mark(t),bs.end(),Pv.fire(this,t),e}function Vi(t,e){var n,a,r;if("string"!=typeof t||e){r=[];for(a in this._twowayBindings)(!t||P(a).equalsOrStartsWith(t))&&r.push.apply(r,this._twowayBindings[a])}else r=this._twowayBindings[t];return n=zi(this,r),this.set(n)}function zi(t,e){var n={},a=[];return e.forEach(function(t){var e,r;if(!t.radioName||t.element.node.checked){if(t.checkboxName)return void(a[t.keypath.str]||t.changed()||(a.push(t.keypath),a[t.keypath.str]=t));e=t.attribute.value,r=t.getValue(),j(e,r)||s(e,r)||(n[t.keypath.str]=r)}}),a.length&&a.forEach(function(t){var e,r,i;e=a[t.str],r=e.attribute.value,i=e.getValue(),j(r,i)||(n[t.str]=i)}),n}function Wi(t,e){return"function"==typeof e&&/_super/.test(t)}function Hi(t){for(var e={};t;)Qi(t,e),$i(t,e),t=t._Parent!==Rv?t._Parent:!1;return e}function Qi(t,e){ru.forEach(function(n){Ki(n.useDefaults?t.prototype:t,e,n.name)})}function Ki(t,e,n){var a,r=Object.keys(t[n]);r.length&&((a=e[n])||(a=e[n]={}),r.filter(function(t){return!(t in a)}).forEach(function(e){return a[e]=t[n][e]}))}function $i(t,e){Object.keys(t.prototype).forEach(function(n){if("computed"!==n){var a=t.prototype[n];if(n in e){if("function"==typeof e[n]&&"function"==typeof a&&e[n]._method){var r=void 0,i=a._method;i&&(a=a._method),r=Sv(e[n]._method,a),i&&(r._method=r),e[n]=r}}else e[n]=a._method?a._method:a}})}function Yi(){for(var t=arguments.length,e=Array(t),n=0;t>n;n++)e[n]=arguments[n];return e.length?e.reduce(Xi,this):Xi(this)}function Xi(t){var e,n,r=void 0===arguments[1]?{}:arguments[1];return r.prototype instanceof Rv&&(r=Av(r)),e=function(t){return this instanceof e?void Om(this,t):new e(t)},n=Po(t.prototype),n.constructor=e,Eo(e,{defaults:{value:n},extend:{value:Yi,writable:!0,configurable:!0 },_Parent:{value:t}}),uu.extend(t,n,r),Wp.extend(t,n,r),r.computed&&(n.computed=a(Po(t.prototype.computed),r.computed)),e.prototype=n,e}var Ji,Zi,to,eo,no,ao,ro,io=3,oo={el:void 0,append:!1,template:{v:io,t:[]},preserveWhitespace:!1,sanitize:!1,stripComments:!0,delimiters:["{{","}}"],tripleDelimiters:["{{{","}}}"],interpolate:!1,data:{},computed:{},magic:!1,modifyArrays:!0,adapt:[],isolated:!1,twoway:!0,lazy:!1,noIntro:!1,transitionsEnabled:!0,complete:void 0,css:null,noCssTransform:!1},so=oo,po={linear:function(t){return t},easeIn:function(t){return Math.pow(t,3)},easeOut:function(t){return Math.pow(t-1,3)+1},easeInOut:function(t){return(t/=.5)<1?.5*Math.pow(t,3):.5*(Math.pow(t-2,3)+2)}};Ji="object"==typeof document,Zi="undefined"!=typeof navigator&&/jsDom/.test(navigator.appName),to="undefined"!=typeof console&&"function"==typeof console.warn&&"function"==typeof console.warn.apply;try{Object.defineProperty({},"test",{value:0}),eo=!0}catch(uo){eo=!1}no={html:"http://www.w3.org/1999/xhtml",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},ao="undefined"==typeof document?!1:document&&document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1"),ro=["o","ms","moz","webkit"];var co,lo,fo,ho,mo,vo,go,bo,yo;if(co=ao?function(t,e){return e&&e!==no.html?document.createElementNS(e,t):document.createElement(t)}:function(t,e){if(e&&e!==no.html)throw"This browser does not support namespaces other than http://www.w3.org/1999/xhtml. The most likely cause of this error is that you're trying to render SVG in an older browser. See http://docs.ractivejs.org/latest/svg-and-older-browsers for more information";return document.createElement(t)},Ji){for(fo=co("div"),ho=["matches","matchesSelector"],yo=function(t){return function(e,n){return e[t](n)}},go=ho.length;go--&&!lo;)if(mo=ho[go],fo[mo])lo=yo(mo);else for(bo=ro.length;bo--;)if(vo=ro[go]+mo.substr(0,1).toUpperCase()+mo.substring(1),fo[vo]){lo=yo(vo);break}lo||(lo=function(t,e){var n,a,r;for(a=t.parentNode,a||(fo.innerHTML="",a=fo,t=t.cloneNode(),fo.appendChild(t)),n=a.querySelectorAll(e),r=n.length;r--;)if(n[r]===t)return!0;return!1})}else lo=null;var _o,xo,wo,ko=function(){};"undefined"==typeof window?wo=null:(_o=window,xo=_o.document,wo={},xo||(wo=null),Date.now||(Date.now=function(){return+new Date}),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s+/,"").replace(/\s+$/,"")}),Object.keys||(Object.keys=function(){var t=Object.prototype.hasOwnProperty,e=!{toString:null}.propertyIsEnumerable("toString"),n=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],a=n.length;return function(r){if("object"!=typeof r&&"function"!=typeof r||null===r)throw new TypeError("Object.keys called on non-object");var i=[];for(var o in r)t.call(r,o)&&i.push(o);if(e)for(var s=0;a>s;s++)t.call(r,n[s])&&i.push(n[s]);return i}}()),Array.prototype.indexOf||(Array.prototype.indexOf=function(t,e){var n;for(void 0===e&&(e=0),0>e&&(e+=this.length),0>e&&(e=0),n=this.length;n>e;e++)if(this.hasOwnProperty(e)&&this[e]===t)return e;return-1}),Array.prototype.forEach||(Array.prototype.forEach=function(t,e){var n,a;for(n=0,a=this.length;a>n;n+=1)this.hasOwnProperty(n)&&t.call(e,this[n],n,this)}),Array.prototype.map||(Array.prototype.map=function(t,e){var n,a,r,i=this,o=[];for(i instanceof String&&(i=""+i,r=!0),n=0,a=i.length;a>n;n+=1)(i.hasOwnProperty(n)||r)&&(o[n]=t.call(e,i[n],n,i));return o}),"function"!=typeof Array.prototype.reduce&&(Array.prototype.reduce=function(t,e){var n,a,r,i;if("function"!=typeof t)throw new TypeError(t+" is not a function");for(r=this.length,i=!1,arguments.length>1&&(a=e,i=!0),n=0;r>n;n+=1)this.hasOwnProperty(n)?i&&(a=t(a,this[n],n,this)):(a=this[n],i=!0);if(!i)throw new TypeError("Reduce of empty array with no initial value");return a}),Array.prototype.filter||(Array.prototype.filter=function(t,e){var n,a,r=[];for(n=0,a=this.length;a>n;n+=1)this.hasOwnProperty(n)&&t.call(e,this[n],n,this)&&(r[r.length]=this[n]);return r}),Array.prototype.every||(Array.prototype.every=function(t,e){var n,a,r;if(null==this)throw new TypeError;if(n=Object(this),a=n.length>>>0,"function"!=typeof t)throw new TypeError;for(r=0;a>r;r+=1)if(r in n&&!t.call(e,n[r],r,n))return!1;return!0}),"function"!=typeof Function.prototype.bind&&(Function.prototype.bind=function(t){var e,n,a,r,i=[].slice;if("function"!=typeof this)throw new TypeError("Function.prototype.bind called on non-function");return e=i.call(arguments,1),n=this,a=function(){},r=function(){var r=this instanceof a&&t?this:t;return n.apply(r,e.concat(i.call(arguments)))},a.prototype=this.prototype,r.prototype=new a,r}),_o.addEventListener||!function(t,e){var n,a,r,i,o,s;t.appearsToBeIELessEqual8=!0,n=function(t,e){var n,a=this;for(n in t)a[n]=t[n];a.currentTarget=e,a.target=t.srcElement||e,a.timeStamp=+new Date,a.preventDefault=function(){t.returnValue=!1},a.stopPropagation=function(){t.cancelBubble=!0}},a=function(t,e){var a,r,i=this;a=i.listeners||(i.listeners=[]),r=a.length,a[r]=[e,function(t){e.call(i,new n(t,i))}],i.attachEvent("on"+t,a[r][1])},r=function(t,e){var n,a,r=this;if(r.listeners)for(n=r.listeners,a=n.length;a--;)n[a][0]===e&&r.detachEvent("on"+t,n[a][1])},t.addEventListener=e.addEventListener=a,t.removeEventListener=e.removeEventListener=r,"Element"in t?(t.Element.prototype.addEventListener=a,t.Element.prototype.removeEventListener=r):(s=e.createElement,e.createElement=function(t){var e=s(t);return e.addEventListener=a,e.removeEventListener=r,e},i=e.getElementsByTagName("head")[0],o=e.createElement("style"),i.insertBefore(o,i.firstChild))}(_o,xo),_o.getComputedStyle||(wo.getComputedStyle=function(){function t(n,a,r,i){var o,s=a[r],p=parseFloat(s),u=s.split(/\d/)[0];return isNaN(p)&&/^thin|medium|thick$/.test(s)&&(p=e(s),u=""),i=null!=i?i:/%|em/.test(u)&&n.parentElement?t(n.parentElement,n.parentElement.currentStyle,"fontSize",null):16,o="fontSize"==r?i:/width/i.test(r)?n.clientWidth:n.clientHeight,"em"==u?p*i:"in"==u?96*p:"pt"==u?96*p/72:"%"==u?p/100*o:p}function e(t){var e,n;return i[t]||(e=document.createElement("div"),e.style.display="block",e.style.position="fixed",e.style.width=e.style.height="0",e.style.borderRight=t+" solid black",document.getElementsByTagName("body")[0].appendChild(e),n=e.getBoundingClientRect(),i[t]=n.right-n.left),i[t]}function n(t,e){var n="border"==e?"Width":"",a=e+"Top"+n,r=e+"Right"+n,i=e+"Bottom"+n,o=e+"Left"+n;t[e]=(t[a]==t[r]==t[i]==t[o]?[t[a]]:t[a]==t[i]&&t[o]==t[r]?[t[a],t[r]]:t[o]==t[r]?[t[a],t[r],t[i]]:[t[a],t[r],t[i],t[o]]).join(" ")}function a(e){var a,r,i,s;a=e.currentStyle,r=this,i=t(e,a,"fontSize",null);for(s in a)"normal"===a[s]&&o.hasOwnProperty(s)?r[s]=o[s]:/width|height|margin.|padding.|border.+W/.test(s)?"auto"===a[s]?/^width|height/.test(s)?r[s]=("width"===s?e.clientWidth:e.clientHeight)+"px":/(?:padding)?Top|Bottom$/.test(s)&&(r[s]="0px"):r[s]=t(e,a,s,i)+"px":"styleFloat"===s?r["float"]=a[s]:r[s]=a[s];return n(r,"margin"),n(r,"padding"),n(r,"border"),r.fontSize=i+"px",r}function r(t){return new a(t)}var i={},o={fontWeight:400,lineHeight:1.2,letterSpacing:0};return a.prototype={constructor:a,getPropertyPriority:ko,getPropertyValue:function(t){return this[t]||""},item:ko,removeProperty:ko,setProperty:ko,getPropertyCSSValue:ko},r}()));var Po,Co,Eo,So=wo;try{Object.defineProperty({},"test",{value:0}),Ji&&Object.defineProperty(document.createElement("div"),"test",{value:0}),Co=Object.defineProperty}catch(Ao){Co=function(t,e,n){t[e]=n.value}}try{try{Object.defineProperties({},{test:{value:0}})}catch(Ao){throw Ao}Ji&&Object.defineProperties(co("div"),{test:{value:0}}),Eo=Object.defineProperties}catch(Ao){Eo=function(t,e){var n;for(n in e)e.hasOwnProperty(n)&&Co(t,n,e[n])}}try{Object.create(null),Po=Object.create}catch(Ao){Po=function(){var t=function(){};return function(e,n){var a;return null===e?{}:(t.prototype=e,a=new t,n&&Object.defineProperties(a,n),a)}}()}var Oo,To,Mo,Ro=Object.prototype.hasOwnProperty,jo=Object.prototype.toString,Lo=/^\[object (?:Array|FileList)\]$/,No={};to?!function(){var t=["%cRactive.js %c0.7.3 %cin debug mode, %cmore...","color: rgb(114, 157, 52); font-weight: normal;","color: rgb(85, 85, 85); font-weight: normal;","color: rgb(85, 85, 85); font-weight: normal;","color: rgb(82, 140, 224); font-weight: normal; text-decoration: underline;"],e="You're running Ractive 0.7.3 in debug mode - messages will be printed to the console to help you fix problems and optimise your application.\n\nTo disable debug mode, add this line at the start of your app:\n Ractive.DEBUG = false;\n\nTo disable debug mode when your app is minified, add this snippet:\n Ractive.DEBUG = /unminified/.test(function(){/*unminified*/});\n\nGet help and support:\n http://docs.ractivejs.org\n http://stackoverflow.com/questions/tagged/ractivejs\n http://groups.google.com/forum/#!forum/ractive-js\n http://twitter.com/ractivejs\n\nFound a bug? Raise an issue:\n https://github.com/ractivejs/ractive/issues\n\n";Mo=function(){var n=!!console.groupCollapsed;console[n?"groupCollapsed":"log"].apply(console,t),console.log(e),n&&console.groupEnd(t),Mo=ko},To=function(t,e){if(Mo(),"object"==typeof e[e.length-1]){var n=e.pop(),a=n?n.ractive:null;if(a){var r=void 0;a.component&&(r=a.component.name)&&(t="<"+r+"> "+t);var i=void 0;(i=n.node||a.fragment&&a.fragment.rendered&&a.find("*"))&&e.push(i)}}console.warn.apply(console,["%cRactive.js: %c"+t,"color: rgb(114, 157, 52);","color: rgb(85, 85, 85);"].concat(e))},Oo=function(){console.log.apply(console,arguments)}}():To=Oo=Mo=ko;var Do="Bad arguments",Fo='A function was specified for "%s" %s, but no %s was returned',Io=function(t,e){return'Missing "'+t+'" '+e+" plugin. You may need to download a plugin via http://docs.ractivejs.org/latest/plugins#"+e+"s"},Bo=function(t,e,n,a){if(t===e)return y(e);if(a){var r=g("interpolators",n,a);if(r)return r(t,e)||y(e);l(Io(a,"interpolator"))}return Uo.number(t,e)||Uo.array(t,e)||Uo.object(t,e)||y(e)},qo=Bo,Go={number:function(t,e){var n;return p(t)&&p(e)?(t=+t,e=+e,n=e-t,n?function(e){return t+e*n}:function(){return t}):null},array:function(t,e){var n,a,r,o;if(!i(t)||!i(e))return null;for(n=[],a=[],o=r=Math.min(t.length,e.length);o--;)a[o]=qo(t[o],e[o]);for(o=r;o=this.duration?(null!==i&&(bs.start(this.root),this.root.viewmodel.set(i,this.to),bs.end()),this.step&&this.step(1,this.to),this.complete(this.to),r=this.root._animations.indexOf(this),-1===r&&m("Animation was not found"),this.root._animations.splice(r,1),this.running=!1,!1):(e=this.easing?this.easing(t/this.duration):t/this.duration,null!==i&&(n=this.interpolator(e),bs.start(this.root),this.root.viewmodel.set(i,n),bs.end()),this.step&&this.step(e,n),!0)):!1},stop:function(){var t;this.running=!1,t=this.root._animations.indexOf(this),-1===t&&m("Animation was not found"),this.root._animations.splice(t,1)}};var ks=ws,Ps=nt,Cs={stop:ko},Es=rt,Ss=new is("detach"),As=it,Os=ot,Ts=function(){var t,e,n;t=this._root[this._isComponentQuery?"liveComponentQueries":"liveQueries"],e=this.selector,n=t.indexOf(e),-1!==n&&(t.splice(n,1),t[e]=null)},Ms=function(t,e){var n,a,r,i,o,s,p,u,c,l;for(n=pt(t.component||t._ractive.proxy),a=pt(e.component||e._ractive.proxy),r=N(n),i=N(a);r&&r===i;)n.pop(),a.pop(),o=r,r=N(n),i=N(a);if(r=r.component||r,i=i.component||i,c=r.parentFragment,l=i.parentFragment,c===l)return s=c.items.indexOf(r),p=l.items.indexOf(i),s-p||n.length-a.length;if(u=o.fragments)return s=u.indexOf(c),p=u.indexOf(l),s-p||n.length-a.length;throw Error("An unexpected condition was met while comparing the position of two components. Please file an issue at https://github.com/RactiveJS/Ractive/issues - thanks!")},Rs=function(t,e){var n;return t.compareDocumentPosition?(n=t.compareDocumentPosition(e),2&n?1:-1):Ms(t,e)},js=function(){this.sort(this._isComponentQuery?Ms:Rs),this._dirty=!1},Ls=function(){var t=this;this._dirty||(this._dirty=!0,bs.scheduleTask(function(){t._sort()}))},Ns=function(t){var e=this.indexOf(this._isComponentQuery?t.instance:t);-1!==e&&this.splice(e,1)},Ds=ut,Fs=ct,Is=lt,Bs=ft,qs=dt,Gs=ht,Us={enqueue:function(t,e){t.event&&(t._eventQueue=t._eventQueue||[],t._eventQueue.push(t.event)),t.event=e},dequeue:function(t){t._eventQueue&&t._eventQueue.length?t.event=t._eventQueue.pop():delete t.event}},Vs=Us,zs=mt,Ws=bt,Hs=yt,Qs={capture:!0,noUnwrap:!0,fullRootGet:!0},Ks=_t,$s=new is("insert"),Ys=wt,Xs=function(t,e,n,a){this.root=t,this.keypath=e,this.callback=n,this.defer=a.defer,this.context=a&&a.context?a.context:t};Xs.prototype={init:function(t){this.value=this.root.get(this.keypath.str),t!==!1?this.update():this.oldValue=this.value},setValue:function(t){var e=this;s(t,this.value)||(this.value=t,this.defer&&this.ready?bs.scheduleTask(function(){return e.update()}):this.update())},update:function(){this.updating||(this.updating=!0,this.callback.call(this.context,this.value,this.oldValue,this.keypath.str),this.oldValue=this.value,this.updating=!1)}};var Js,Zs=Xs,tp=kt,ep=Array.prototype.slice;Js=function(t,e,n,a){this.root=t,this.callback=n,this.defer=a.defer,this.keypath=e,this.regex=RegExp("^"+e.str.replace(/\./g,"\\.").replace(/\*/g,"([^\\.]+)")+"$"),this.values={},this.defer&&(this.proxies=[]),this.context=a&&a.context?a.context:t},Js.prototype={init:function(t){var e,n;if(e=tp(this.root,this.keypath),t!==!1)for(n in e)e.hasOwnProperty(n)&&this.update(P(n));else this.values=e},update:function(t){var e,n=this;if(t.isPattern){e=tp(this.root,t);for(t in e)e.hasOwnProperty(t)&&this.update(P(t))}else if(!this.root.viewmodel.implicitChanges[t.str])return this.defer&&this.ready?void bs.scheduleTask(function(){return n.getProxy(t).update()}):void this.reallyUpdate(t)},reallyUpdate:function(t){var e,n,a,r;return e=t.str,n=this.root.viewmodel.get(t),this.updating?void(this.values[e]=n):(this.updating=!0,s(n,this.values[e])&&this.ready||(a=ep.call(this.regex.exec(e),1),r=[n,this.values[e],e].concat(a),this.values[e]=n,this.callback.apply(this.context,r)),void(this.updating=!1))},getProxy:function(t){var e=this;return this.proxies[t.str]||(this.proxies[t.str]={update:function(){return e.reallyUpdate(t)}}),this.proxies[t.str]}};var np,ap,rp,ip,op,sp,pp=Js,up=Pt,cp={},lp=Ct,fp=Et,dp=function(t){return t.trim()},hp=function(t){return""!==t},mp=St,vp=At,gp=Ot,bp=Tt,yp=Array.prototype,_p=function(t){return function(e){for(var n=arguments.length,a=Array(n>1?n-1:0),r=1;n>r;r++)a[r-1]=arguments[r];var o,s,p,u,c=[];if(e=P(S(e)),o=this.viewmodel.get(e),s=o.length,!i(o))throw Error("Called ractive."+t+"('"+e.str+"'), but '"+e.str+"' does not refer to an array");return c=bp(o,t,a),u=yp[t].apply(o,a),p=bs.start(this,!0).then(function(){return u}),c?this.viewmodel.smartUpdate(e,o,c):this.viewmodel.mark(e),bs.end(),p}},xp=_p("pop"),wp=_p("push"),kp="/* Ractive.js component styles */\n",Pp=[],Cp=!1;Ji?(rp=document.createElement("style"),rp.type="text/css",ip=document.getElementsByTagName("head")[0],sp=!1,op=rp.styleSheet,ap=function(){var t=kp+Pp.map(function(t){return"\n/* {"+t.id+"} */\n"+t.styles}).join("\n");op?op.cssText=t:rp.innerHTML=t,sp||(ip.appendChild(rp),sp=!0)},np={add:function(t){Pp.push(t),Cp=!0},apply:function(){Cp&&(ap(),Cp=!1)}}):np={add:ko,apply:ko};var Ep,Sp,Ap,Op=np,Tp=Rt,Mp=new is("render"),Rp=new is("complete"),jp={extend:function(t,e,n){e.adapt=Lt(e.adapt,L(n.adapt))},init:function(){}},Lp=jp,Np=Nt,Dp=/(?:^|\})?\s*([^\{\}]+)\s*\{/g,Fp=/\/\*.*?\*\//g,Ip=/((?:(?:\[[^\]+]\])|(?:[^\s\+\>\~:]))+)((?::[^\s\+\>\~\(]+(?:\([^\)]+\))?)?\s*[\s\+\>\~]?)\s*/g,Bp=/^@media/,qp=/\[data-ractive-css~="\{[a-z0-9-]+\}"]/g,Gp=1,Up={name:"css",extend:function(t,e,n){if(n.css){var a=Gp++,r=n.noCssTransform?n.css:Np(n.css,a);e.cssId=a,Op.add({id:a,styles:r})}},init:function(){}},Vp=Up,zp={name:"data",extend:function(t,e,n){var a=void 0,r=void 0;if(n.data&&u(n.data))for(a in n.data)r=n.data[a],r&&"object"==typeof r&&(u(r)||i(r))&&m("Passing a `data` option with object and array properties to Ractive.extend() is discouraged, as mutating them is likely to cause bugs. Consider using a data function instead:\n\n // this...\n data: function () {\n return {\n myObject: {}\n };\n })\n\n // instead of this:\n data: {\n myObject: {}\n }");e.data=Bt(e.data,n.data)},init:function(t,e,n){var a=Bt(t.prototype.data,n.data);return"function"==typeof a&&(a=a.call(e)),a||{}},reset:function(t){var e=this.init(t.constructor,t,t.viewmodel);return t.viewmodel.reset(e),!0}},Wp=zp,Hp=null,Qp=["preserveWhitespace","sanitize","stripComments","delimiters","tripleDelimiters","interpolate"],Kp={fromId:zt,isHashedId:Wt,isParsed:Ht,getParseOptions:Qt,createHelper:Ut,parse:Vt},$p=Kp,Yp={name:"template",extend:function(t,e,n){var a;"template"in n&&(a=n.template,"function"==typeof a?e.template=a:e.template=Xt(a,e))},init:function(t,e,n){var a,r;a="template"in n?n.template:t.prototype.template,"function"==typeof a&&(r=a,a=$t(e,r),e._config.template={fn:r,result:a}),a=Xt(a,e),e.template=a.t,a.p&&Jt(e.partials,a.p)},reset:function(t){var e,n=Kt(t);return n?(e=Xt(n,t),t.template=e.t,Jt(t.partials,e.p,!0),!0):void 0}},Xp=Yp;Ep=["adaptors","components","computed","decorators","easing","events","interpolators","partials","transitions"],Sp=function(t,e){this.name=t,this.useDefaults=e},Sp.prototype={constructor:Sp,extend:function(t,e,n){this.configure(this.useDefaults?t.defaults:t,this.useDefaults?e:e.constructor,n)},init:function(){},configure:function(t,e,n){var a,r=this.name,i=n[r];a=Po(t[r]);for(var o in i)a[o]=i[o];e[r]=a},reset:function(t){var e=t[this.name],n=!1;return Object.keys(e).forEach(function(t){var a=e[t];a._fn&&(a._fn.isOwner?e[t]=a._fn:delete e[t],n=!0)}),n}},Ap=Ep.map(function(t){return new Sp(t,"computed"===t)});var Jp,Zp,tu,eu,nu,au,ru=Ap,iu=Zt,ou=ae;eu={adapt:Lp,css:Vp,data:Wp,template:Xp},tu=Object.keys(so),au=oe(tu.filter(function(t){return!eu[t]})),nu=oe(tu.concat(ru.map(function(t){return t.name}))),Zp=[].concat(tu.filter(function(t){return!ru[t]&&!eu[t]}),ru,eu.data,eu.template,eu.css),Jp={extend:function(t,e,n){return re("extend",t,e,n)},init:function(t,e,n){return re("init",t,e,n)},reset:function(t){return Zp.filter(function(e){return e.reset&&e.reset(t)}).map(function(t){return t.name})},order:Zp};var su,pu,uu=Jp,cu=se,lu=pe,fu=ue,du=ce,hu=le,mu=fe,vu=de,gu=he,bu=/^\s+/;pu=function(t){this.name="ParseError",this.message=t;try{throw Error(t)}catch(e){this.stack=e.stack}},pu.prototype=Error.prototype,su=function(t,e){var n,a,r=0;for(this.str=t,this.options=e||{},this.pos=0,this.lines=this.str.split("\n"),this.lineEnds=this.lines.map(function(t){var e=r+t.length+1;return r=e,e},0),this.init&&this.init(t,e),n=[];this.posn;n+=1)if(this.pos=e,r=t[n](this))return r;return null},getLinePos:function(t){for(var e,n=0,a=0;t>=this.lineEnds[n];)a=this.lineEnds[n],n+=1;return e=t-a,[n+1,e+1,t]},error:function(t){var e=this.getLinePos(this.pos),n=e[0],a=e[1],r=this.lines[e[0]-1],i=0,o=r.replace(/\t/g,function(t,n){return n/g,lc=/&/g;var gc=function(){return e(this.node)},bc=function(t){this.type=ku,this.text=t.template};bc.prototype={detach:gc,firstNode:function(){ return this.node},render:function(){return this.node||(this.node=document.createTextNode(this.text)),this.node},toString:function(t){return t?Pe(this.text):this.text},unrender:function(t){return t?this.detach():void 0}};var yc=bc,_c=Ce,xc=Ee,wc=function(t,e,n){var a;this.ref=e,this.resolved=!1,this.root=t.root,this.parentFragment=t.parentFragment,this.callback=n,a=ls(t.root,e,t.parentFragment),void 0!=a?this.resolve(a):bs.addUnresolved(this)};wc.prototype={resolve:function(t){this.keypath&&!t&&bs.addUnresolved(this),this.resolved=!0,this.keypath=t,this.callback(t)},forceResolution:function(){this.resolve(P(this.ref))},rebind:function(t,e){var n;void 0!=this.keypath&&(n=this.keypath.replace(t,e),void 0!==n&&this.resolve(n))},unbind:function(){this.resolved||bs.removeUnresolved(this)}};var kc=wc,Pc=function(t,e,n){this.parentFragment=t.parentFragment,this.ref=e,this.callback=n,this.rebind()},Cc={"@keypath":{prefix:"c",prop:["context"]},"@index":{prefix:"i",prop:["index"]},"@key":{prefix:"k",prop:["key","index"]}};Pc.prototype={rebind:function(){var t,e=this.ref,n=this.parentFragment,a=Cc[e];if(!a)throw Error('Unknown special reference "'+e+'" - valid references are @index, @key and @keypath');if(this.cached)return this.callback(P("@"+a.prefix+Se(this.cached,a)));if(-1!==a.prop.indexOf("index")||-1!==a.prop.indexOf("key"))for(;n;){if(n.owner.currentSubtype===Bu&&void 0!==(t=Se(n,a)))return this.cached=n,n.registerIndexRef(this),this.callback(P("@"+a.prefix+t));n=!n.parent&&n.owner&&n.owner.component&&n.owner.component.parentFragment&&!n.owner.component.instance.isolated?n.owner.component.parentFragment:n.parent}else for(;n;){if(void 0!==(t=Se(n,a)))return this.callback(P("@"+a.prefix+t.str));n=n.parent}},unbind:function(){this.cached&&this.cached.unregisterIndexRef(this)}};var Ec=Pc,Sc=function(t,e,n){this.parentFragment=t.parentFragment,this.ref=e,this.callback=n,e.ref.fragment.registerIndexRef(this),this.rebind()};Sc.prototype={rebind:function(){var t,e=this.ref.ref;t="k"===e.ref.t?"k"+e.fragment.key:"i"+e.fragment.index,void 0!==t&&this.callback(P("@"+t))},unbind:function(){this.ref.ref.fragment.unregisterIndexRef(this)}};var Ac=Sc,Oc=Ae;Ae.resolve=function(t){var e,n,a={};for(e in t.refs)n=t.refs[e],a[n.ref.n]="k"===n.ref.t?n.fragment.key:n.fragment.index;return a};var Tc,Mc=Oe,Rc=Te,jc={},Lc=Function.prototype.bind;Tc=function(t,e,n,a){var r,i=this;r=t.root,this.root=r,this.parentFragment=e,this.callback=a,this.owner=t,this.str=n.s,this.keypaths=[],this.pending=n.r.length,this.refResolvers=n.r.map(function(t,e){return Mc(i,t,function(t){i.resolve(e,t)})}),this.ready=!0,this.bubble()},Tc.prototype={bubble:function(){this.ready&&(this.uniqueString=Re(this.str,this.keypaths),this.keypath=je(this.uniqueString),this.createEvaluator(),this.callback(this.keypath))},unbind:function(){for(var t;t=this.refResolvers.pop();)t.unbind()},resolve:function(t,e){this.keypaths[t]=e,this.bubble()},createEvaluator:function(){var t,e,n,a,r,i=this;a=this.keypath,t=this.root.viewmodel.computations[a.str],t?this.root.viewmodel.mark(a):(r=Rc(this.str,this.refResolvers.length),e=this.keypaths.map(function(t){var e;return"undefined"===t?function(){}:t.isSpecial?(e=t.value,function(){return e}):function(){var e=i.root.viewmodel.get(t,{noUnwrap:!0,fullRootGet:!0});return"function"==typeof e&&(e=Ne(e,i.root)),e}}),n={deps:this.keypaths.filter(Le),getter:function(){var t=e.map(Me);return r.apply(null,t)}},t=this.root.viewmodel.compute(a,n))},rebind:function(t,e){this.refResolvers.forEach(function(n){return n.rebind(t,e)})}};var Nc=Tc,Dc=function(t,e,n){var a=this;this.resolver=e,this.root=e.root,this.parentFragment=n,this.viewmodel=e.root.viewmodel,"string"==typeof t?this.value=t:t.t===Du?this.refResolver=Mc(this,t.n,function(t){a.resolve(t)}):new Nc(e,n,t,function(t){a.resolve(t)})};Dc.prototype={resolve:function(t){this.keypath&&this.viewmodel.unregister(this.keypath,this),this.keypath=t,this.value=this.viewmodel.get(t),this.bind(),this.resolver.bubble()},bind:function(){this.viewmodel.register(this.keypath,this)},rebind:function(t,e){this.refResolver&&this.refResolver.rebind(t,e)},setValue:function(t){this.value=t,this.resolver.bubble()},unbind:function(){this.keypath&&this.viewmodel.unregister(this.keypath,this),this.refResolver&&this.refResolver.unbind()},forceResolution:function(){this.refResolver&&this.refResolver.forceResolution()}};var Fc=Dc,Ic=function(t,e,n){var a,r,i,o,s=this;this.parentFragment=o=t.parentFragment,this.root=a=t.root,this.mustache=t,this.ref=r=e.r,this.callback=n,this.unresolved=[],(i=ls(a,r,o))?this.base=i:this.baseResolver=new kc(this,r,function(t){s.base=t,s.baseResolver=null,s.bubble()}),this.members=e.m.map(function(t){return new Fc(t,s,o)}),this.ready=!0,this.bubble()};Ic.prototype={getKeypath:function(){var t=this.members.map(De);return!t.every(Fe)||this.baseResolver?null:this.base.join(t.join("."))},bubble:function(){this.ready&&!this.baseResolver&&this.callback(this.getKeypath())},unbind:function(){this.members.forEach(Q)},rebind:function(t,e){var n;if(this.base){var a=this.base.replace(t,e);a&&a!==this.base&&(this.base=a,n=!0)}this.members.forEach(function(a){a.rebind(t,e)&&(n=!0)}),n&&this.bubble()},forceResolution:function(){this.baseResolver&&(this.base=P(this.ref),this.baseResolver.unbind(),this.baseResolver=null),this.members.forEach(Ie),this.bubble()}};var Bc=Ic,qc=Be,Gc=qe,Uc=Ge,Vc={getValue:xc,init:qc,resolve:Gc,rebind:Uc},zc=function(t){this.type=Pu,Vc.init(this,t)};zc.prototype={update:function(){this.node.data=void 0==this.value?"":this.value},resolve:Vc.resolve,rebind:Vc.rebind,detach:gc,unbind:_c,render:function(){return this.node||(this.node=document.createTextNode(n(this.value))),this.node},unrender:function(t){t&&e(this.node)},getValue:Vc.getValue,setValue:function(t){var e;this.keypath&&(e=this.root.viewmodel.wrapped[this.keypath.str])&&(t=e.get()),s(t,this.value)||(this.value=t,this.parentFragment.bubble(),this.node&&bs.addView(this))},firstNode:function(){return this.node},toString:function(t){var e=""+n(this.value);return t?Pe(e):e}};var Wc=zc,Hc=Ue,Qc=Ve,Kc=ze,$c=We,Yc=He,Xc=Qe,Jc=Ke,Zc=$e,tl=Ye,el=function(t,e){Vc.rebind.call(this,t,e)},nl=Je,al=Ze,rl=ln,il=fn,ol=dn,sl=vn,pl=function(t){this.type=Eu,this.subtype=this.currentSubtype=t.template.n,this.inverted=this.subtype===Iu,this.pElement=t.pElement,this.fragments=[],this.fragmentsToCreate=[],this.fragmentsToRender=[],this.fragmentsToUnrender=[],t.template.i&&(this.indexRefs=t.template.i.split(",").map(function(t,e){return{n:t,t:0===e?"k":"i"}})),this.renderedFragments=[],this.length=0,Vc.init(this,t)};pl.prototype={bubble:Hc,detach:Qc,find:Kc,findAll:$c,findAllComponents:Yc,findComponent:Xc,findNextNode:Jc,firstNode:Zc,getIndexRef:function(t){if(this.indexRefs)for(var e=this.indexRefs.length;e--;){var n=this.indexRefs[e];if(n.n===t)return n}},getValue:Vc.getValue,shuffle:tl,rebind:el,render:nl,resolve:Vc.resolve,setValue:al,toString:rl,unbind:il,unrender:ol,update:sl};var ul,cl,ll=pl,fl=gn,dl=bn,hl=yn,ml=_n,vl={};try{co("table").innerHTML="foo"}catch(Ao){ul=!0,cl={TABLE:['',"
    "],THEAD:['',"
    "],TBODY:['',"
    "],TR:['',"
    "],SELECT:['"]}}var gl=function(t,e,n){var a,r,i,o,s,p=[];if(null!=t&&""!==t){for(ul&&(r=cl[e.tagName])?(a=xn("DIV"),a.innerHTML=r[0]+t+r[1],a=a.querySelector(".x"),"SELECT"===a.tagName&&(i=a.options[a.selectedIndex])):e.namespaceURI===no.svg?(a=xn("DIV"),a.innerHTML=''+t+"",a=a.querySelector(".x")):(a=xn(e.tagName),a.innerHTML=t,"SELECT"===a.tagName&&(i=a.options[a.selectedIndex]));o=a.firstChild;)p.push(o),n.appendChild(o);if("SELECT"===e.tagName)for(s=p.length;s--;)p[s]!==i&&(p[s].selected=!1)}return p},bl=wn,yl=Pn,_l=Cn,xl=En,wl=Sn,kl=An,Pl=function(t){this.type=Cu,Vc.init(this,t)};Pl.prototype={detach:fl,find:dl,findAll:hl,firstNode:ml,getValue:Vc.getValue,rebind:Vc.rebind,render:yl,resolve:Vc.resolve,setValue:_l,toString:xl,unbind:_c,unrender:wl,update:kl};var Cl,El,Sl,Al,Ol=Pl,Tl=function(){this.parentFragment.bubble()},Ml=On,Rl=function(t){return this.node?lo(this.node,t)?this.node:this.fragment&&this.fragment.find?this.fragment.find(t):void 0:null},jl=function(t,e){e._test(this,!0)&&e.live&&(this.liveQueries||(this.liveQueries=[])).push(e),this.fragment&&this.fragment.findAll(t,e)},Ll=function(t,e){this.fragment&&this.fragment.findAllComponents(t,e)},Nl=function(t){return this.fragment?this.fragment.findComponent(t):void 0},Dl=Tn,Fl=Mn,Il=Rn,Bl=/^true|on|yes|1$/i,ql=/^[0-9]+$/,Gl=function(t,e){var n,a,r;return r=e.a||{},a={},n=r.twoway,void 0!==n&&(a.twoway=0===n||Bl.test(n)),n=r.lazy,void 0!==n&&(0!==n&&ql.test(n)?a.lazy=parseInt(n):a.lazy=0===n||Bl.test(n)),a},Ul=jn;Cl="altGlyph altGlyphDef altGlyphItem animateColor animateMotion animateTransform clipPath feBlend feColorMatrix feComponentTransfer feComposite feConvolveMatrix feDiffuseLighting feDisplacementMap feDistantLight feFlood feFuncA feFuncB feFuncG feFuncR feGaussianBlur feImage feMerge feMergeNode feMorphology feOffset fePointLight feSpecularLighting feSpotLight feTile feTurbulence foreignObject glyphRef linearGradient radialGradient textPath vkern".split(" "),El="attributeName attributeType baseFrequency baseProfile calcMode clipPathUnits contentScriptType contentStyleType diffuseConstant edgeMode externalResourcesRequired filterRes filterUnits glyphRef gradientTransform gradientUnits kernelMatrix kernelUnitLength keyPoints keySplines keyTimes lengthAdjust limitingConeAngle markerHeight markerUnits markerWidth maskContentUnits maskUnits numOctaves pathLength patternContentUnits patternTransform patternUnits pointsAtX pointsAtY pointsAtZ preserveAlpha preserveAspectRatio primitiveUnits refX refY repeatCount repeatDur requiredExtensions requiredFeatures specularConstant specularExponent spreadMethod startOffset stdDeviation stitchTiles surfaceScale systemLanguage tableValues targetX targetY textLength viewBox viewTarget xChannelSelector yChannelSelector zoomAndPan".split(" "),Sl=function(t){for(var e={},n=t.length;n--;)e[t[n].toLowerCase()]=t[n];return e},Al=Sl(Cl.concat(El));var Vl=function(t){var e=t.toLowerCase();return Al[e]||e},zl=function(t,e){var n,a;if(n=e.indexOf(":"),-1===n||(a=e.substr(0,n),"xmlns"===a))t.name=t.element.namespace!==no.html?Vl(e):e;else if(e=e.substring(n+1),t.name=Vl(e),t.namespace=no[a.toLowerCase()],t.namespacePrefix=a,!t.namespace)throw'Unknown namespace ("'+a+'")'},Wl=Ln,Hl=Nn,Ql=Dn,Kl=Fn,$l={"accept-charset":"acceptCharset",accesskey:"accessKey",bgcolor:"bgColor","class":"className",codebase:"codeBase",colspan:"colSpan",contenteditable:"contentEditable",datetime:"dateTime",dirname:"dirName","for":"htmlFor","http-equiv":"httpEquiv",ismap:"isMap",maxlength:"maxLength",novalidate:"noValidate",pubdate:"pubDate",readonly:"readOnly",rowspan:"rowSpan",tabindex:"tabIndex",usemap:"useMap"},Yl=In,Xl=qn,Jl=Gn,Zl=Un,tf=Vn,ef=zn,nf=Wn,af=Hn,rf=Qn,of=Kn,sf=$n,pf=Yn,uf=Xn,cf=Jn,lf=Zn,ff=function(t){this.init(t)};ff.prototype={bubble:Ul,init:Hl,rebind:Ql,render:Kl,toString:Yl,unbind:Xl,update:lf};var df,hf=ff,mf=function(t,e){var n,a,r=[];for(n in e)"twoway"!==n&&"lazy"!==n&&e.hasOwnProperty(n)&&(a=new hf({element:t,name:n,value:e[n],root:t.root}),r[n]=a,"value"!==n&&r.push(a));return(a=r.value)&&r.push(a),r};"undefined"!=typeof document&&(df=co("div"));var vf=function(t,e){this.element=t,this.root=t.root,this.parentFragment=t.parentFragment,this.attributes=[],this.fragment=new rv({root:t.root,owner:this,template:[e]})};vf.prototype={bubble:function(){this.node&&this.update(),this.element.bubble()},rebind:function(t,e){this.fragment.rebind(t,e)},render:function(t){this.node=t,this.isSvg=t.namespaceURI===no.svg,this.update()},unbind:function(){this.fragment.unbind()},update:function(){var t,e,n=this;t=""+this.fragment,e=ta(t,this.isSvg),this.attributes.filter(function(t){return ea(e,t)}).forEach(function(t){n.node.removeAttribute(t.name)}),e.forEach(function(t){n.node.setAttribute(t.name,t.value)}),this.attributes=e},toString:function(){return""+this.fragment}};var gf=vf,bf=function(t,e){return e?e.map(function(e){return new gf(t,e)}):[]},yf=function(t){var e,n,a,r;if(this.element=t,this.root=t.root,this.attribute=t.attributes[this.name||"value"],e=this.attribute.interpolator,e.twowayBinding=this,n=e.keypath){if("}"===n.str.slice(-1))return v("Two-way binding does not work with expressions (`%s` on <%s>)",e.resolver.uniqueString,t.name,{ractive:this.root}),!1;if(n.isSpecial)return v("Two-way binding does not work with %s",e.resolver.ref,{ractive:this.root}),!1}else{var i=e.template.r?"'"+e.template.r+"' reference":"expression";m("The %s being used for two-way binding is ambiguous, and may cause unexpected results. Consider initialising your data to eliminate the ambiguity",i,{ractive:this.root}),e.resolver.forceResolution(),n=e.keypath}this.attribute.isTwoway=!0,this.keypath=n,a=this.root.viewmodel.get(n),void 0===a&&this.getInitialValue&&(a=this.getInitialValue(),void 0!==a&&this.root.viewmodel.set(n,a)),(r=na(t))&&(this.resetValue=a,r.formBindings.push(this))};yf.prototype={handleChange:function(){var t=this;bs.start(this.root),this.attribute.locked=!0,this.root.viewmodel.set(this.keypath,this.getValue()),bs.scheduleTask(function(){return t.attribute.locked=!1}),bs.end()},rebound:function(){var t,e,n;e=this.keypath,n=this.attribute.interpolator.keypath,e!==n&&(D(this.root._twowayBindings[e.str],this),this.keypath=n,t=this.root._twowayBindings[n.str]||(this.root._twowayBindings[n.str]=[]),t.push(this))},unbind:function(){}},yf.extend=function(t){var e,n=this;return e=function(t){yf.call(this,t),this.init&&this.init()},e.prototype=Po(n.prototype),a(e.prototype,t),e.extend=yf.extend,e};var _f,xf=yf,wf=aa;_f=xf.extend({getInitialValue:function(){return""},getValue:function(){return this.element.node.value},render:function(){var t,e=this.element.node,n=!1;this.rendered=!0,t=this.root.lazy,this.element.lazy===!0?t=!0:this.element.lazy===!1?t=!1:p(this.element.lazy)?(t=!1,n=+this.element.lazy):p(t||"")&&(n=+t,t=!1,this.element.lazy=n),this.handler=n?ia:wf,e.addEventListener("change",wf,!1),t||(e.addEventListener("input",this.handler,!1),e.attachEvent&&e.addEventListener("keyup",this.handler,!1)),e.addEventListener("blur",ra,!1)},unrender:function(){var t=this.element.node;this.rendered=!1,t.removeEventListener("change",wf,!1),t.removeEventListener("input",this.handler,!1),t.removeEventListener("keyup",this.handler,!1),t.removeEventListener("blur",ra,!1)}});var kf=_f,Pf=kf.extend({getInitialValue:function(){return this.element.fragment?""+this.element.fragment:""},getValue:function(){return this.element.node.innerHTML}}),Cf=Pf,Ef=oa,Sf={},Af=xf.extend({name:"checked",init:function(){this.siblings=Ef(this.root._guid,"radio",this.element.getAttribute("name")),this.siblings.push(this)},render:function(){var t=this.element.node;t.addEventListener("change",wf,!1),t.attachEvent&&t.addEventListener("click",wf,!1)},unrender:function(){var t=this.element.node;t.removeEventListener("change",wf,!1),t.removeEventListener("click",wf,!1)},handleChange:function(){bs.start(this.root),this.siblings.forEach(function(t){t.root.viewmodel.set(t.keypath,t.getValue())}),bs.end()},getValue:function(){return this.element.node.checked},unbind:function(){D(this.siblings,this)}}),Of=Af,Tf=xf.extend({name:"name",init:function(){this.siblings=Ef(this.root._guid,"radioname",this.keypath.str),this.siblings.push(this),this.radioName=!0},getInitialValue:function(){return this.element.getAttribute("checked")?this.element.getAttribute("value"):void 0},render:function(){var t=this.element.node;t.name="{{"+this.keypath.str+"}}",t.checked=this.root.viewmodel.get(this.keypath)==this.element.getAttribute("value"),t.addEventListener("change",wf,!1),t.attachEvent&&t.addEventListener("click",wf,!1)},unrender:function(){var t=this.element.node;t.removeEventListener("change",wf,!1),t.removeEventListener("click",wf,!1)},getValue:function(){var t=this.element.node;return t._ractive?t._ractive.value:t.value},handleChange:function(){this.element.node.checked&&xf.prototype.handleChange.call(this)},rebound:function(t,e){var n;xf.prototype.rebound.call(this,t,e),(n=this.element.node)&&(n.name="{{"+this.keypath.str+"}}")},unbind:function(){D(this.siblings,this)}}),Mf=Tf,Rf=xf.extend({name:"name",getInitialValue:function(){return this.noInitialValue=!0,[]},init:function(){var t,e;this.checkboxName=!0,this.siblings=Ef(this.root._guid,"checkboxes",this.keypath.str),this.siblings.push(this),this.noInitialValue&&(this.siblings.noInitialValue=!0),this.siblings.noInitialValue&&this.element.getAttribute("checked")&&(t=this.root.viewmodel.get(this.keypath),e=this.element.getAttribute("value"),t.push(e))},unbind:function(){D(this.siblings,this)},render:function(){var t,e,n=this.element.node;t=this.root.viewmodel.get(this.keypath),e=this.element.getAttribute("value"),i(t)?this.isChecked=R(t,e):this.isChecked=t==e,n.name="{{"+this.keypath.str+"}}",n.checked=this.isChecked,n.addEventListener("change",wf,!1),n.attachEvent&&n.addEventListener("click",wf,!1)},unrender:function(){var t=this.element.node;t.removeEventListener("change",wf,!1),t.removeEventListener("click",wf,!1)},changed:function(){var t=!!this.isChecked;return this.isChecked=this.element.node.checked,this.isChecked===t},handleChange:function(){this.isChecked=this.element.node.checked,xf.prototype.handleChange.call(this)},getValue:function(){return this.siblings.filter(sa).map(pa)}}),jf=Rf,Lf=xf.extend({name:"checked",render:function(){var t=this.element.node;t.addEventListener("change",wf,!1),t.attachEvent&&t.addEventListener("click",wf,!1)},unrender:function(){var t=this.element.node;t.removeEventListener("change",wf,!1),t.removeEventListener("click",wf,!1)},getValue:function(){return this.element.node.checked}}),Nf=Lf,Df=xf.extend({getInitialValue:function(){var t,e,n,a,r=this.element.options;if(void 0===this.element.getAttribute("value")&&(e=t=r.length,t)){for(;e--;)if(r[e].getAttribute("selected")){n=r[e].getAttribute("value"),a=!0;break}if(!a)for(;++ee;e+=1)if(a=t[e],t[e].selected)return r=a._ractive?a._ractive.value:a.value},forceUpdate:function(){var t=this,e=this.getValue();void 0!==e&&(this.attribute.locked=!0,bs.scheduleTask(function(){return t.attribute.locked=!1}),this.root.viewmodel.set(this.keypath,e))}}),Ff=Df,If=Ff.extend({getInitialValue:function(){return this.element.options.filter(function(t){return t.getAttribute("selected")}).map(function(t){return t.getAttribute("value")})},render:function(){var t;this.element.node.addEventListener("change",wf,!1),t=this.root.viewmodel.get(this.keypath),void 0===t&&this.handleChange()},unrender:function(){this.element.node.removeEventListener("change",wf,!1)},setValue:function(){throw Error("TODO not implemented yet")},getValue:function(){var t,e,n,a,r,i;for(t=[],e=this.element.node.options,a=e.length,n=0;a>n;n+=1)r=e[n],r.selected&&(i=r._ractive?r._ractive.value:r.value,t.push(i));return t},handleChange:function(){var t,e,n;return t=this.attribute,e=t.value,n=this.getValue(),void 0!==e&&j(n,e)||Ff.prototype.handleChange.call(this),this},forceUpdate:function(){var t=this,e=this.getValue();void 0!==e&&(this.attribute.locked=!0,bs.scheduleTask(function(){return t.attribute.locked=!1}),this.root.viewmodel.set(this.keypath,e))},updateModel:function(){void 0!==this.attribute.value&&this.attribute.value.length||this.root.viewmodel.set(this.keypath,this.initialValue)}}),Bf=If,qf=xf.extend({render:function(){this.element.node.addEventListener("change",wf,!1)},unrender:function(){this.element.node.removeEventListener("change",wf,!1)},getValue:function(){return this.element.node.files}}),Gf=qf,Uf=kf.extend({getInitialValue:function(){},getValue:function(){var t=parseFloat(this.element.node.value);return isNaN(t)?void 0:t}}),Vf=ua,zf=la,Wf=fa,Hf=da,Qf=ha,Kf=/^event(?:\.(.+))?/,$f=ba,Yf=ya,Xf={},Jf={touchstart:!0,touchmove:!0,touchend:!0,touchcancel:!0,touchleave:!0},Zf=xa,td=wa,ed=ka,nd=Pa,ad=Ca,rd=function(t,e,n){this.init(t,e,n)};rd.prototype={bubble:zf,fire:Wf,getAction:Hf,init:Qf,listen:Yf,rebind:Zf,render:td,resolve:ed,unbind:nd,unrender:ad};var id=rd,od=function(t,e){var n,a,r,i,o=[];for(a in e)if(e.hasOwnProperty(a))for(r=a.split("-"),n=r.length;n--;)i=new id(t,r[n],e[a]),o.push(i);return o},sd=function(t,e){var n,a,r,i=this;this.element=t,this.root=n=t.root,a=e.n||e,("string"==typeof a||(r=new rv({template:a,root:n,owner:t}),a=""+r,r.unbind(),""!==a))&&(e.a?this.params=e.a:e.d&&(this.fragment=new rv({template:e.d,root:n,owner:t}),this.params=this.fragment.getArgsList(),this.fragment.bubble=function(){this.dirtyArgs=this.dirtyValue=!0,i.params=this.getArgsList(),i.ready&&i.update()}),this.fn=g("decorators",n,a),this.fn||l(Io(a,"decorator")))};sd.prototype={init:function(){var t,e,n;if(t=this.element.node,this.params?(n=[t].concat(this.params),e=this.fn.apply(this.root,n)):e=this.fn.call(this.root,t),!e||!e.teardown)throw Error("Decorator definition must return an object with a teardown method");this.actual=e,this.ready=!0},update:function(){this.actual.update?this.actual.update.apply(this.root,this.params):(this.actual.teardown(!0),this.init())},rebind:function(t,e){this.fragment&&this.fragment.rebind(t,e)},teardown:function(t){this.torndown=!0,this.ready&&this.actual.teardown(),!t&&this.fragment&&this.fragment.unbind()}};var pd,ud,cd,ld=sd,fd=Ra,dd=ja,hd=Ba,md=function(t){return t.replace(/-([a-zA-Z])/g,function(t,e){return e.toUpperCase()})};Ji?(ud={},cd=co("div").style,pd=function(t){var e,n,a;if(t=md(t),!ud[t])if(void 0!==cd[t])ud[t]=t;else for(a=t.charAt(0).toUpperCase()+t.substring(1),e=ro.length;e--;)if(n=ro[e],void 0!==cd[n+a]){ud[t]=n+a;break}return ud[t]}):pd=null;var vd,gd,bd=pd;Ji?(gd=window.getComputedStyle||So.getComputedStyle,vd=function(t){var e,n,a,r,o;if(e=gd(this.node),"string"==typeof t)return o=e[bd(t)],"0px"===o&&(o=0),o;if(!i(t))throw Error("Transition$getStyle must be passed a string, or an array of strings representing CSS properties");for(n={},a=t.length;a--;)r=t[a],o=e[bd(r)],"0px"===o&&(o=0),n[r]=o;return n}):vd=null;var yd=vd,_d=function(t,e){var n;if("string"==typeof t)this.node.style[bd(t)]=e;else for(n in t)t.hasOwnProperty(n)&&(this.node.style[bd(n)]=t[n]);return this},xd=function(t){var e;this.duration=t.duration,this.step=t.step,this.complete=t.complete,"string"==typeof t.easing?(e=t.root.easing[t.easing],e||(v(Io(t.easing,"easing")),e=qa)):e="function"==typeof t.easing?t.easing:qa,this.easing=e,this.start=ns(),this.end=this.start+this.duration,this.running=!0,xs.add(this)};xd.prototype={tick:function(t){var e,n;return this.running?t>this.end?(this.step&&this.step(1),this.complete&&this.complete(1),!1):(e=t-this.start,n=this.easing(e/this.duration),this.step&&this.step(n),!0):!1},stop:function(){this.abort&&this.abort(),this.running=!1}};var wd,kd,Pd,Cd,Ed,Sd,Ad,Od,Td=xd,Md=RegExp("^-(?:"+ro.join("|")+")-"),Rd=function(t){return t.replace(Md,"")},jd=RegExp("^(?:"+ro.join("|")+")([A-Z])"),Ld=function(t){var e;return t?(jd.test(t)&&(t="-"+t),e=t.replace(/[A-Z]/g,function(t){return"-"+t.toLowerCase()})):""},Nd={},Dd={};Ji?(kd=co("div").style,function(){void 0!==kd.transition?(Pd="transition",Cd="transitionend",Ed=!0):void 0!==kd.webkitTransition?(Pd="webkitTransition",Cd="webkitTransitionEnd",Ed=!0):Ed=!1}(),Pd&&(Sd=Pd+"Duration",Ad=Pd+"Property",Od=Pd+"TimingFunction"),wd=function(t,e,n,a,r){setTimeout(function(){var i,o,s,p,u;p=function(){o&&s&&(t.root.fire(t.name+":end",t.node,t.isIntro),r())},i=(t.node.namespaceURI||"")+t.node.tagName,t.node.style[Ad]=a.map(bd).map(Ld).join(","),t.node.style[Od]=Ld(n.easing||"linear"),t.node.style[Sd]=n.duration/1e3+"s",u=function(e){var n;n=a.indexOf(md(Rd(e.propertyName))),-1!==n&&a.splice(n,1),a.length||(t.node.removeEventListener(Cd,u,!1),s=!0,p())},t.node.addEventListener(Cd,u,!1),setTimeout(function(){for(var r,c,l,f,d,h=a.length,v=[];h--;)f=a[h],r=i+f,Ed&&!Dd[r]&&(t.node.style[bd(f)]=e[f],Nd[r]||(c=t.getStyle(f),Nd[r]=t.getStyle(f)!=e[f],Dd[r]=!Nd[r],Dd[r]&&(t.node.style[bd(f)]=c))),(!Ed||Dd[r])&&(void 0===c&&(c=t.getStyle(f)),l=a.indexOf(f),-1===l?m("Something very strange happened with transitions. Please raise an issue at https://github.com/ractivejs/ractive/issues - thanks!",{node:t.node}):a.splice(l,1),d=/[^\d]*$/.exec(e[f])[0],v.push({name:bd(f),interpolator:qo(parseFloat(c),parseFloat(e[f])),suffix:d}));v.length?new Td({root:t.root,duration:n.duration,easing:md(n.easing||""),step:function(e){var n,a;for(a=v.length;a--;)n=v[a],t.node.style[n.name]=n.interpolator(e)+n.suffix},complete:function(){o=!0,p()}}):o=!0,a.length||(t.node.removeEventListener(Cd,u,!1),s=!0,p())},0)},n.delay||0)}):wd=null;var Fd,Id,Bd,qd,Gd,Ud=wd;if("undefined"!=typeof document){if(Fd="hidden",Gd={},Fd in document)Bd="";else for(qd=ro.length;qd--;)Id=ro[qd],Fd=Id+"Hidden",Fd in document&&(Bd=Id);void 0!==Bd?(document.addEventListener(Bd+"visibilitychange",Ga),Ga()):("onfocusout"in document?(document.addEventListener("focusout",Ua),document.addEventListener("focusin",Va)):(window.addEventListener("pagehide",Ua),window.addEventListener("blur",Ua),window.addEventListener("pageshow",Va),window.addEventListener("focus",Va)),Gd.hidden=!1)}var Vd,zd,Wd,Hd=Gd;Ji?(zd=window.getComputedStyle||So.getComputedStyle,Vd=function(t,e,n){var a,r=this;if(4===arguments.length)throw Error("t.animateStyle() returns a promise - use .then() instead of passing a callback");if(Hd.hidden)return this.setStyle(t,e),Wd||(Wd=us.resolve());"string"==typeof t?(a={},a[t]=e):(a=t,n=e),n||(v('The "%s" transition does not supply an options object to `t.animateStyle()`. This will break in a future version of Ractive. For more info see https://github.com/RactiveJS/Ractive/issues/340',this.name),n=this);var i=new us(function(t){var e,i,o,s,p,u,c;if(!n.duration)return r.setStyle(a),void t();for(e=Object.keys(a),i=[],o=zd(r.node),p={},u=e.length;u--;)c=e[u],s=o[bd(c)],"0px"===s&&(s=0),s!=a[c]&&(i.push(c),r.node.style[bd(c)]=s);return i.length?void Ud(r,a,n,i,t):void t()});return i}):Vd=null;var Qd=Vd,Kd=function(t,e){return"number"==typeof t?t={duration:t}:"string"==typeof t?t="slow"===t?{duration:600}:"fast"===t?{duration:200}:{duration:400}:t||(t={}),r({},t,e)},$d=za,Yd=function(t,e,n){this.init(t,e,n)};Yd.prototype={init:hd,start:$d,getStyle:yd,setStyle:_d,animateStyle:Qd,processParams:Kd};var Xd,Jd,Zd=Yd,th=Ha;Xd=function(){var t=this.node,e=this.fragment.toString(!1);if(window&&window.appearsToBeIELessEqual8&&(t.type="text/css"),t.styleSheet)t.styleSheet.cssText=e;else{for(;t.hasChildNodes();)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}},Jd=function(){this.node.type&&"text/javascript"!==this.node.type||m("Script tag was updated. This does not cause the code to be re-evaluated!",{ractive:this.root}),this.node.text=this.fragment.toString(!1)};var eh=function(){var t,e;return this.template.y?"":(t="<"+this.template.e,t+=this.attributes.map(Ja).join("")+this.conditionalAttributes.map(Ja).join(""),"option"===this.name&&Ya(this)&&(t+=" selected"),"input"===this.name&&Xa(this)&&(t+=" checked"),t+=">","textarea"===this.name&&void 0!==this.getAttribute("value")?t+=Pe(this.getAttribute("value")):void 0!==this.getAttribute("contenteditable")&&(t+=this.getAttribute("value")||""),this.fragment&&(e="script"!==this.name&&"style"!==this.name,t+=this.fragment.toString(e)),ic.test(this.template.e)||(t+=""),t)},nh=Za,ah=tr,rh=function(t){this.init(t)};rh.prototype={bubble:Tl,detach:Ml,find:Rl,findAll:jl,findAllComponents:Ll,findComponent:Nl,findNextNode:Dl,firstNode:Fl,getAttribute:Il,init:fd,rebind:dd,render:th,toString:eh,unbind:nh,unrender:ah};var ih=rh,oh=/^\s*$/,sh=/^\s*/,ph=function(t){var e,n,a,r;return e=t.split("\n"),n=e[0],void 0!==n&&oh.test(n)&&e.shift(),a=N(e),void 0!==a&&oh.test(a)&&e.pop(),r=e.reduce(nr,null),r&&(t=e.map(function(t){return t.replace(r,"")}).join("\n")),t},uh=ar,ch=function(t,e){var n;return e?n=t.split("\n").map(function(t,n){return n?e+t:t}).join("\n"):t},lh='Could not find template for partial "%s"',fh=function(t){var e,n;e=this.parentFragment=t.parentFragment,this.root=e.root,this.type=Au,this.index=t.index,this.name=t.template.r,this.rendered=!1,this.fragment=this.fragmentToRender=this.fragmentToUnrender=null,Vc.init(this,t),this.keypath||((n=uh(this.root,this.name,e))?(_c.call(this),this.isNamed=!0,this.setTemplate(n)):v(lh,this.name))};fh.prototype={bubble:function(){this.parentFragment.bubble()},detach:function(){return this.fragment.detach()},find:function(t){return this.fragment.find(t)},findAll:function(t,e){return this.fragment.findAll(t,e)},findComponent:function(t){return this.fragment.findComponent(t)},findAllComponents:function(t,e){return this.fragment.findAllComponents(t,e)},firstNode:function(){return this.fragment.firstNode()},findNextNode:function(){return this.parentFragment.findNextNode(this)},getPartialName:function(){return this.isNamed&&this.name?this.name:void 0===this.value?this.name:this.value},getValue:function(){return this.fragment.getValue()},rebind:function(t,e){this.isNamed||Uc.call(this,t,e),this.fragment&&this.fragment.rebind(t,e)},render:function(){return this.docFrag=document.createDocumentFragment(),this.update(),this.rendered=!0,this.docFrag},resolve:Vc.resolve,setValue:function(t){var e;(void 0===t||t!==this.value)&&(void 0!==t&&(e=uh(this.root,""+t,this.parentFragment)),!e&&this.name&&(e=uh(this.root,this.name,this.parentFragment))&&(_c.call(this),this.isNamed=!0),e||v(lh,this.name,{ractive:this.root}),this.value=t,this.setTemplate(e||[]),this.bubble(),this.rendered&&bs.addView(this))},setTemplate:function(t){this.fragment&&(this.fragment.unbind(),this.rendered&&(this.fragmentToUnrender=this.fragment)),this.fragment=new rv({template:t,root:this.root,owner:this,pElement:this.parentFragment.pElement}),this.fragmentToRender=this.fragment},toString:function(t){var e,n,a,r;return e=this.fragment.toString(t),n=this.parentFragment.items[this.index-1],n&&n.type===ku?(a=n.text.split("\n").pop(),(r=/^\s+$/.exec(a))?ch(e,r[0]):e):e},unbind:function(){this.isNamed||_c.call(this),this.fragment&&this.fragment.unbind()},unrender:function(t){this.rendered&&(this.fragment&&this.fragment.unrender(t),this.rendered=!1)},update:function(){var t,e;this.fragmentToUnrender&&(this.fragmentToUnrender.unrender(!0),this.fragmentToUnrender=null),this.fragmentToRender&&(this.docFrag.appendChild(this.fragmentToRender.render()),this.fragmentToRender=null),this.rendered&&(t=this.parentFragment.getNode(),e=this.parentFragment.findNextNode(this),t.insertBefore(this.docFrag,e))}};var dh,hh,mh,vh=fh,gh=pr,bh=ur,yh=new is("detach"),_h=cr,xh=lr,wh=fr,kh=dr,Ph=hr,Ch=mr,Eh=function(t,e,n,a){var r=t.root,i=t.keypath;a?r.viewmodel.smartUpdate(i,e,a):r.viewmodel.mark(i)},Sh=[],Ah=["pop","push","reverse","shift","sort","splice","unshift"];Ah.forEach(function(t){var e=function(){for(var e=arguments.length,n=Array(e),a=0;e>a;a++)n[a]=arguments[a];var r,i,o,s;for(r=bp(this,t,n),i=Array.prototype[t].apply(this,arguments),bs.start(),this._ractive.setting=!0,s=this._ractive.wrappers.length;s--;)o=this._ractive.wrappers[s],bs.addRactive(o.root),Eh(o,this,t,r);return bs.end(),this._ractive.setting=!1,i};Co(Sh,t,{value:e})}),dh={},dh.__proto__?(hh=function(t){t.__proto__=Sh},mh=function(t){t.__proto__=Array.prototype}):(hh=function(t){var e,n;for(e=Ah.length;e--;)n=Ah[e],Co(t,n,{value:Sh[n],configurable:!0})},mh=function(t){var e;for(e=Ah.length;e--;)delete t[Ah[e]]; -}),hh.unpatch=mh;var Oh,Th,Mh,Rh=hh;Oh={filter:function(t){return i(t)&&(!t._ractive||!t._ractive.setting)},wrap:function(t,e,n){return new Th(t,e,n)}},Th=function(t,e,n){this.root=t,this.value=e,this.keypath=P(n),e._ractive||(Co(e,"_ractive",{value:{wrappers:[],instances:[],setting:!1},configurable:!0}),Rh(e)),e._ractive.instances[t._guid]||(e._ractive.instances[t._guid]=0,e._ractive.instances.push(t)),e._ractive.instances[t._guid]+=1,e._ractive.wrappers.push(this)},Th.prototype={get:function(){return this.value},teardown:function(){var t,e,n,a,r;if(t=this.value,e=t._ractive,n=e.wrappers,a=e.instances,e.setting)return!1;if(r=n.indexOf(this),-1===r)throw Error(Mh);if(n.splice(r,1),n.length){if(a[this.root._guid]-=1,!a[this.root._guid]){if(r=a.indexOf(this.root),-1===r)throw Error(Mh);a.splice(r,1)}}else delete t._ractive,Rh.unpatch(this.value)}},Mh="Something went wrong in a rather interesting way";var jh,Lh,Nh=Oh,Dh=/^\s*[0-9]+\s*$/,Fh=function(t){return Dh.test(t)?[]:{}};try{Object.defineProperty({},"test",{value:0}),jh={filter:function(t,e,n){var a,r;return e?(e=P(e),(a=n.viewmodel.wrapped[e.parent.str])&&!a.magic?!1:(r=n.viewmodel.get(e.parent),i(r)&&/^[0-9]+$/.test(e.lastKey)?!1:r&&("object"==typeof r||"function"==typeof r))):!1},wrap:function(t,e,n){return new Lh(t,e,n)}},Lh=function(t,e,n){var a,r,i;return n=P(n),this.magic=!0,this.ractive=t,this.keypath=n,this.value=e,this.prop=n.lastKey,a=n.parent,this.obj=a.isRoot?t.viewmodel.data:t.viewmodel.get(a),r=this.originalDescriptor=Object.getOwnPropertyDescriptor(this.obj,this.prop),r&&r.set&&(i=r.set._ractiveWrappers)?void(-1===i.indexOf(this)&&i.push(this)):void vr(this,e,r)},Lh.prototype={get:function(){return this.value},reset:function(t){return this.updating?void 0:(this.updating=!0,this.obj[this.prop]=t,bs.addRactive(this.ractive),this.ractive.viewmodel.mark(this.keypath,{keepExistingWrapper:!0}),this.updating=!1,!0)},set:function(t,e){this.updating||(this.obj[this.prop]||(this.updating=!0,this.obj[this.prop]=Fh(t),this.updating=!1),this.obj[this.prop][t]=e)},teardown:function(){var t,e,n,a,r;return this.updating?!1:(t=Object.getOwnPropertyDescriptor(this.obj,this.prop),e=t&&t.set,void(e&&(a=e._ractiveWrappers,r=a.indexOf(this),-1!==r&&a.splice(r,1),a.length||(n=this.obj[this.prop],Object.defineProperty(this.obj,this.prop,this.originalDescriptor||{writable:!0,enumerable:!0,configurable:!0}),this.obj[this.prop]=n))))}}}catch(Ao){jh=!1}var Ih,Bh,qh=jh;qh&&(Ih={filter:function(t,e,n){return qh.filter(t,e,n)&&Nh.filter(t)},wrap:function(t,e,n){return new Bh(t,e,n)}},Bh=function(t,e,n){this.value=e,this.magic=!0,this.magicWrapper=qh.wrap(t,e,n),this.arrayWrapper=Nh.wrap(t,e,n)},Bh.prototype={get:function(){return this.value},teardown:function(){this.arrayWrapper.teardown(),this.magicWrapper.teardown()},reset:function(t){return this.magicWrapper.reset(t)}});var Gh=Ih,Uh=gr,Vh={},zh=_r,Wh=xr,Hh=Pr,Qh=Or,Kh=Tr,$h=function(t,e){this.computation=t,this.viewmodel=t.viewmodel,this.ref=e,this.root=this.viewmodel.ractive,this.parentFragment=this.root.component&&this.root.component.parentFragment};$h.prototype={resolve:function(t){this.computation.softDeps.push(t),this.computation.unresolvedDeps[t.str]=null,this.viewmodel.register(t,this.computation,"computed")}};var Yh=$h,Xh=function(t,e){this.key=t,this.getter=e.getter,this.setter=e.setter,this.hardDeps=e.deps||[],this.softDeps=[],this.unresolvedDeps={},this.depValues={},this._dirty=this._firstRun=!0};Xh.prototype={constructor:Xh,init:function(t){var e,n=this;this.viewmodel=t,this.bypass=!0,e=t.get(this.key),t.clearCache(this.key.str),this.bypass=!1,this.setter&&void 0!==e&&this.set(e),this.hardDeps&&this.hardDeps.forEach(function(e){return t.register(e,n,"computed")})},invalidate:function(){this._dirty=!0},get:function(){var t,e,n=this,a=!1;if(this.getting){var r="The "+this.key.str+" computation indirectly called itself. This probably indicates a bug in the computation. It is commonly caused by `array.sort(...)` - if that's the case, clone the array first with `array.slice().sort(...)`";return h(r),this.value}if(this.getting=!0,this._dirty){if(this._firstRun||!this.hardDeps.length&&!this.softDeps.length?a=!0:[this.hardDeps,this.softDeps].forEach(function(t){var e,r,i;if(!a)for(i=t.length;i--;)if(e=t[i],r=n.viewmodel.get(e),!s(r,n.depValues[e.str]))return n.depValues[e.str]=r,void(a=!0)}),a){this.viewmodel.capture();try{this.value=this.getter()}catch(i){m('Failed to compute "%s"',this.key.str),f(i.stack||i),this.value=void 0}t=this.viewmodel.release(),e=this.updateDependencies(t),e&&[this.hardDeps,this.softDeps].forEach(function(t){t.forEach(function(t){n.depValues[t.str]=n.viewmodel.get(t)})})}this._dirty=!1}return this.getting=this._firstRun=!1,this.value},set:function(t){if(this.setting)return void(this.value=t);if(!this.setter)throw Error("Computed properties without setters are read-only. (This may change in a future version of Ractive!)");this.setter(t)},updateDependencies:function(t){var e,n,a,r,i;for(n=this.softDeps,e=n.length;e--;)a=n[e],-1===t.indexOf(a)&&(r=!0,this.viewmodel.unregister(a,this,"computed"));for(e=t.length;e--;)a=t[e],-1!==n.indexOf(a)||this.hardDeps&&-1!==this.hardDeps.indexOf(a)||(r=!0,Mr(this.viewmodel,a)&&!this.unresolvedDeps[a.str]?(i=new Yh(this,a.str),t.splice(e,1),this.unresolvedDeps[a.str]=i,bs.addUnresolved(i)):this.viewmodel.register(a,this,"computed"));return r&&(this.softDeps=t.slice()),r}};var Jh=Xh,Zh=Rr,tm={FAILED_LOOKUP:!0},em=jr,nm={},am=Nr,rm=Dr,im=function(t,e){this.localKey=t,this.keypath=e.keypath,this.origin=e.origin,this.deps=[],this.unresolved=[],this.resolved=!1};im.prototype={forceResolution:function(){this.keypath=this.localKey,this.setup()},get:function(t,e){return this.resolved?this.origin.get(this.map(t),e):void 0},getValue:function(){return this.keypath?this.origin.get(this.keypath):void 0},initViewmodel:function(t){this.local=t,this.setup()},map:function(t){return void 0===typeof this.keypath?this.localKey:t.replace(this.localKey,this.keypath)},register:function(t,e,n){this.deps.push({keypath:t,dep:e,group:n}),this.resolved&&this.origin.register(this.map(t),e,n)},resolve:function(t){void 0!==this.keypath&&this.unbind(!0),this.keypath=t,this.setup()},set:function(t,e){this.resolved||this.forceResolution(),this.origin.set(this.map(t),e)},setup:function(){var t=this;void 0!==this.keypath&&(this.resolved=!0,this.deps.length&&(this.deps.forEach(function(e){var n=t.map(e.keypath);if(t.origin.register(n,e.dep,e.group),e.dep.setValue)e.dep.setValue(t.origin.get(n));else{if(!e.dep.invalidate)throw Error("An unexpected error occurred. Please raise an issue at https://github.com/ractivejs/ractive/issues - thanks!");e.dep.invalidate()}}),this.origin.mark(this.keypath)))},setValue:function(t){if(!this.keypath)throw Error("Mapping does not have keypath, cannot set value. Please raise an issue at https://github.com/ractivejs/ractive/issues - thanks!");this.origin.set(this.keypath,t)},unbind:function(t){var e=this;t||delete this.local.mappings[this.localKey],this.resolved&&(this.deps.forEach(function(t){e.origin.unregister(e.map(t.keypath),t.dep,t.group)}),this.tracker&&this.origin.unregister(this.keypath,this.tracker))},unregister:function(t,e,n){var a,r;if(this.resolved){for(a=this.deps,r=a.length;r--;)if(a[r].dep===e){a.splice(r,1);break}this.origin.unregister(this.map(t),e,n)}}};var om=Fr,sm=function(t,e){var n,a,r,i;return n={},a=0,r=t.map(function(t,r){var o,s,p;s=a,p=e.length;do{if(o=e.indexOf(t,s),-1===o)return i=!0,-1;s=o+1}while(n[o]&&p>s);return o===a&&(a+=1),o!==r&&(i=!0),n[o]=!0,o})},pm=Ir,um={},cm=Gr,lm=Vr,fm=zr,dm=Wr,hm=Qr,mm={implicit:!0},vm={noCascade:!0},gm=$r,bm=Yr,ym=function(t){var e,n,a=t.adapt,r=t.data,i=t.ractive,o=t.computed,s=t.mappings;this.ractive=i,this.adaptors=a,this.onchange=t.onchange,this.cache={},this.cacheMap=Po(null),this.deps={computed:Po(null),"default":Po(null)},this.depsMap={computed:Po(null),"default":Po(null)},this.patternObservers=[],this.specials=Po(null),this.wrapped=Po(null),this.computations=Po(null),this.captureGroups=[],this.unresolvedImplicitDependencies=[],this.changes=[],this.implicitChanges={},this.noCascade={},this.data=r,this.mappings=Po(null);for(e in s)this.map(P(e),s[e]);if(r)for(e in r)(n=this.mappings[e])&&void 0===n.getValue()&&n.setValue(r[e]);for(e in o)s&&e in s&&l("Cannot map to a computed property ('%s')",e),this.compute(P(e),o[e]);this.ready=!0};ym.prototype={adapt:Uh,applyChanges:Hh,capture:Qh,clearCache:Kh,compute:Zh,get:em,init:am,map:rm,mark:om,merge:pm,register:cm,release:lm,reset:fm,set:dm,smartUpdate:hm,teardown:gm,unregister:bm};var _m=ym;Jr.prototype={constructor:Jr,begin:function(t){this.inProcess[t._guid]=!0},end:function(t){var e=t.parent;e&&this.inProcess[e._guid]?Zr(this.queue,e).push(t):ti(this,t),delete this.inProcess[t._guid]}};var xm=Jr,wm=ei,km=/\$\{([^\}]+)\}/g,Pm=new is("construct"),Cm=new is("config"),Em=new xm("init"),Sm=0,Am=["adaptors","components","decorators","easing","events","interpolators","partials","transitions"],Om=ii,Tm=ci;ci.prototype={bubble:function(){this.dirty||(this.dirty=!0,bs.addView(this))},update:function(){this.callback(this.fragment.getValue()),this.dirty=!1},rebind:function(t,e){this.fragment.rebind(t,e)},unbind:function(){this.fragment.unbind()}};var Mm=function(t,e,n,r,o){var s,p,u,c,l,f,d={},h={},v={},g=[];for(p=t.parentFragment,u=t.root,o=o||{},a(d,o),o.content=r||[],d[""]=o.content,e.defaults.el&&m("The <%s/> component has a default `el` property; it has been disregarded",t.name),c=p;c;){if(c.owner.type===Ru){l=c.owner.container;break}c=c.parent}return n&&Object.keys(n).forEach(function(e){var a,r,o=n[e];if("string"==typeof o)a=fc(o),h[e]=a?a.value:o;else if(0===o)h[e]=!0;else{if(!i(o))throw Error("erm wut");fi(o)?(v[e]={origin:t.root.viewmodel,keypath:void 0},r=li(t,o[0],function(t){t.isSpecial?f?s.set(e,t.value):(h[e]=t.value,delete v[e]):f?s.viewmodel.mappings[e].resolve(t):v[e].keypath=t})):r=new Tm(t,o,function(t){f?s.set(e,t):h[e]=t}),g.push(r)}}),s=Po(e.prototype),Om(s,{el:null,append:!0,data:h,partials:o,magic:u.magic||e.defaults.magic,modifyArrays:u.modifyArrays,adapt:u.adapt},{parent:u,component:t,container:l,mappings:v,inlinePartials:d,cssIds:p.cssIds}),f=!0,t.resolvers=g,s},Rm=di,jm=function(t){var e,n;for(e=t.root;e;)(n=e._liveComponentQueries["_"+t.name])&&n.push(t.instance),e=e.parent},Lm=mi,Nm=vi,Dm=gi,Fm=bi,Im=yi,Bm=new is("teardown"),qm=xi,Gm=function(t,e){this.init(t,e)};Gm.prototype={detach:bh,find:_h,findAll:xh,findAllComponents:wh,findComponent:kh,findNextNode:Ph,firstNode:Ch,init:Lm,rebind:Nm,render:Dm,toString:Fm,unbind:Im,unrender:qm};var Um=Gm,Vm=function(t){this.type=Ou,this.value=t.template.c};Vm.prototype={detach:gc,firstNode:function(){return this.node},render:function(){return this.node||(this.node=document.createComment(this.value)),this.node},toString:function(){return""},unrender:function(t){t&&this.node.parentNode.removeChild(this.node)}};var zm=Vm,Wm=function(t){var e,n;this.type=Ru,this.container=e=t.parentFragment.root,this.component=n=e.component,this.container=e,this.containerFragment=t.parentFragment,this.parentFragment=n.parentFragment;var a=this.name=t.template.n||"",r=e._inlinePartials[a];r||(m('Could not find template for partial "'+a+'"',{ractive:t.root}),r=[]),this.fragment=new rv({owner:this,root:e.parent,template:r,pElement:this.containerFragment.pElement}),i(n.yielders[a])?n.yielders[a].push(this):n.yielders[a]=[this],bs.scheduleTask(function(){if(n.yielders[a].length>1)throw Error("A component template can only have one {{yield"+(a?" "+a:"")+"}} declaration at a time")})};Wm.prototype={detach:function(){return this.fragment.detach()},find:function(t){return this.fragment.find(t)},findAll:function(t,e){return this.fragment.findAll(t,e)},findComponent:function(t){return this.fragment.findComponent(t)},findAllComponents:function(t,e){return this.fragment.findAllComponents(t,e)},findNextNode:function(){return this.containerFragment.findNextNode(this)},firstNode:function(){return this.fragment.firstNode()},getValue:function(t){return this.fragment.getValue(t)},render:function(){return this.fragment.render()},unbind:function(){this.fragment.unbind()},unrender:function(t){this.fragment.unrender(t),D(this.component.yielders[this.name],this)},rebind:function(t,e){this.fragment.rebind(t,e)},toString:function(){return""+this.fragment}};var Hm=Wm,Qm=function(t){this.declaration=t.template.a};Qm.prototype={init:ko,render:ko,unrender:ko,teardown:ko,toString:function(){return""}};var Km=Qm,$m=wi,Ym=Pi,Xm=Ci,Jm=Ei,Zm=Oi,tv=Mi,ev=function(t){this.init(t)};ev.prototype={bubble:cu,detach:lu,find:fu,findAll:du,findAllComponents:hu,findComponent:mu,findNextNode:vu,firstNode:gu,getArgsList:hc,getNode:mc,getValue:vc,init:$m,rebind:Ym,registerIndexRef:function(t){var e=this.registeredIndexRefs;-1===e.indexOf(t)&&e.push(t)},render:Xm,toString:Jm,unbind:Zm,unregisterIndexRef:function(t){var e=this.registeredIndexRefs;e.splice(e.indexOf(t),1)},unrender:tv};var nv,av,rv=ev,iv=Ri,ov=["template","partials","components","decorators","events"],sv=new is("reset"),pv=function(t,e){function n(e,a,r){r&&r.partials[t]||e.forEach(function(e){e.type===Au&&e.getPartialName()===t&&a.push(e),e.fragment&&n(e.fragment.items,a,r),i(e.fragments)?n(e.fragments,a,r):i(e.items)?n(e.items,a,r):e.type===Mu&&e.instance&&n(e.instance.fragment.items,a,e.instance),e.type===Su&&(i(e.attributes)&&n(e.attributes,a,r),i(e.conditionalAttributes)&&n(e.conditionalAttributes,a,r))})}var a,r=[];return n(this.fragment.items,r),this.partials[t]=e,a=bs.start(this,!0),r.forEach(function(e){e.value=void 0,e.setValue(t)}),bs.end(),a},uv=ji,cv=_p("reverse"),lv=Li,fv=_p("shift"),dv=_p("sort"),hv=_p("splice"),mv=Di,vv=Fi,gv=new is("teardown"),bv=Bi,yv=qi,_v=Gi,xv=new is("unrender"),wv=_p("unshift"),kv=Ui,Pv=new is("update"),Cv=Vi,Ev={add:Zo,animate:Ps,detach:Es,find:As,findAll:Fs,findAllComponents:Is,findComponent:Bs,findContainer:qs,findParent:Gs,fire:Ws,get:Hs,insert:Ks,merge:Ys,observe:lp,observeOnce:fp,off:mp,on:vp,once:gp,pop:xp,push:wp,render:Tp,reset:iv,resetPartial:pv,resetTemplate:uv,reverse:cv,set:lv,shift:fv,sort:dv,splice:hv,subtract:mv,teardown:vv,toggle:bv,toHTML:yv,toHtml:yv,unrender:_v,unshift:wv,update:kv,updateModel:Cv},Sv=function(t,e,n){return n||Wi(t,e)?function(){var n,a="_super"in this,r=this._super;return this._super=e,n=t.apply(this,arguments),a&&(this._super=r),n}:t},Av=Hi,Ov=Yi,Tv=function(t){var e,n,a={};return t&&(e=t._ractive)?(a.ractive=e.root,a.keypath=e.keypath.str,a.index={},(n=Oc(e.proxy.parentFragment))&&(a.index=Oc.resolve(n)),a):a};nv=function(t){return this instanceof nv?void Om(this,t):new nv(t)},av={DEBUG:{writable:!0,value:!0},DEBUG_PROMISES:{writable:!0,value:!0},extend:{value:Ov},getNodeInfo:{value:Tv},parse:{value:Hp},Promise:{value:us},svg:{value:ao},magic:{value:eo},VERSION:{value:"0.7.3"},adaptors:{writable:!0,value:{}},components:{writable:!0,value:{}},decorators:{writable:!0,value:{}},easing:{writable:!0,value:po},events:{writable:!0,value:{}},interpolators:{writable:!0,value:Uo},partials:{writable:!0,value:{}},transitions:{writable:!0,value:{}}},Eo(nv,av),nv.prototype=a(Ev,so),nv.prototype.constructor=nv,nv.defaults=nv.prototype;var Mv="function";if(typeof Date.now!==Mv||typeof String.prototype.trim!==Mv||typeof Object.keys!==Mv||typeof Array.prototype.indexOf!==Mv||typeof Array.prototype.forEach!==Mv||typeof Array.prototype.map!==Mv||typeof Array.prototype.filter!==Mv||"undefined"!=typeof window&&typeof window.addEventListener!==Mv)throw Error("It looks like you're attempting to use Ractive.js in an older browser. You'll need to use one of the 'legacy builds' in order to continue - see http://docs.ractivejs.org/latest/legacy-builds for more information.");var Rv=nv;return Rv})},{}],206:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={oninit:function(){var t=this;this.observe("value",function(e,n,a){var r=t.get(),i=r.min,o=r.max,s=Math.clamp(i,o,e);t.animate("percentage",Math.round((s-i)/(o-i)*100))})}}}(r),r.exports.template={v:3,t:[" ",{p:[13,1,293],t:7,e:"div",a:{"class":"bar"},f:[{p:[14,3,313],t:7,e:"div",a:{"class":["barFill ",{t:2,r:"state",p:[14,23,333]}],style:["width: ",{t:2,r:"percentage",p:[14,48,358]},"%"]}}," ",{p:[15,3,384],t:7,e:"span",a:{"class":"barText"},f:[{t:16,p:[15,25,406]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],207:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(300),a=t(299);e.exports={computed:{clickable:function(){return!this.get("enabled")||this.get("state")&&"toggle"!=this.get("state")?!1:!0},enabled:function(){return this.get("config.status")===n.UI_INTERACTIVE?!0:!1},styles:function(){var t="";if(this.get("class")&&(t+=" "+this.get("class")),this.get("tooltip-side")&&(t=" tooltip-"+this.get("tooltip-side")),this.get("grid")&&(t+=" gridable"),this.get("enabled")){var e=this.get("state"),n=this.get("style");return e?"inactive "+e+" "+t:"active normal "+n+" "+t}return"inactive disabled "+t}},oninit:function(){var t=this;this.on("press",function(e){var n=t.get(),r=n.action,i=n.params;(0,a.act)(t.get("config.ref"),r,i),e.node.blur()})},data:{iconStackToHTML:function(t){var e="",n=t.split(",");if(n.length){e+='';for(var a=n,r=Array.isArray(a),i=0,a=r?a:a[Symbol.iterator]();;){var o;if(r){if(i>=a.length)break;o=a[i++]}else{if(i=a.next(),i.done)break;o=i.value}var s=o,p=/([\w\-]+)\s*(\dx)/g,u=p.exec(s),c=u[1],l=u[2];e+=''}}return e&&(e+=""),e}}}}(r),r.exports.template={v:3,t:[" ",{p:[70,1,1946],t:7,e:"span",a:{"class":["button ",{t:2,r:"styles",p:[70,21,1966]}],unselectable:"on","data-tooltip":[{t:2,r:"tooltip",p:[73,17,2048]}]},m:[{t:4,f:["tabindex='0'"],r:"clickable",p:[72,3,2e3]}],v:{"mouseover-mousemove":"hover",mouseleave:"unhover","click-enter":{n:[{t:4,f:["press"],r:"clickable",p:[76,19,2138]}],d:[]}},f:[{t:4,f:[{p:[78,5,2184],t:7,e:"i",a:{"class":["fa fa-",{t:2,r:"icon",p:[78,21,2200]}]}}],n:50,r:"icon",p:[77,3,2167]}," ",{t:4,f:[{t:3,x:{r:["iconStackToHTML","icon_stack"],s:"_0(_1)"},p:[81,6,2251]}],n:50,r:"icon_stack",p:[80,3,2227]}," ",{t:16,p:[83,3,2297]}]}]},e.exports=a.extend(r.exports)},{205:205,299:299,300:300}],208:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"div",a:{"class":"display"},f:[{t:4,f:[{p:[3,5,42],t:7,e:"header",f:[{p:[4,7,57],t:7,e:"h3",f:[{t:2,r:"title",p:[4,11,61]}]}," ",{t:4,f:[{p:[6,9,105],t:7,e:"div",a:{"class":"buttonRight"},f:[{t:16,n:"button",p:[6,34,130]}]}],n:50,r:"button",p:[5,7,82]}]}],n:50,r:"title",p:[2,3,24]}," ",{p:[10,3,193],t:7,e:"article",f:[{t:16,p:[11,5,207]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],209:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={oninit:function(){var t=this;this.on("clear",function(){t.set("value",""),t.find("input").focus()})}}}(r),r.exports.template={v:3,t:[" ",{p:[12,1,170],t:7,e:"input",a:{type:"text",value:[{t:2,r:"value",p:[12,27,196]}],placeholder:[{t:2,r:"placeholder",p:[12,51,220]}]}}," ",{p:[13,1,240],t:7,e:"ui-button",a:{icon:"refresh"},v:{press:"clear"}}]},e.exports=a.extend(r.exports)},{205:205}],210:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";e.exports={data:{graph:t(202),xaccessor:function(t){return t.x},yaccessor:function(t){return t.y}},computed:{size:function(){var t=this.get("points");return t[0].length},scale:function(){var t=this.get("points");return Math.max.apply(Math,Array.map(t,function(t){return Math.max.apply(Math,Array.map(t,function(t){return t.y}))}))},xaxis:function(){var t=this.get("xinc"),e=this.get("size");return Array.from(Array(e).keys()).filter(function(e){return e&&e%t==0})},yaxis:function(){var t=this.get("yinc"),e=this.get("scale");return Array.from(Array(t).keys()).map(function(t){return Math.round(e*(++t/100)*10)})}},oninit:function(){var t=this;this.on({enter:function(t){this.set("selected",t.index.count)},exit:function(t){this.set("selected")}}),window.addEventListener("resize",function(e){t.set("width",t.el.clientWidth)})},onrender:function(){this.set("width",this.el.clientWidth)}}}(r),r.exports.template={v:3,t:[" ",{p:[47,1,1269],t:7,e:"svg",a:{"class":"linegraph",width:"100%",height:[{t:2,x:{r:["height"],s:"_0+10"},p:[47,45,1313]}]},f:[{p:[48,3,1334],t:7,e:"g",a:{transform:"translate(0, 5)"},f:[{t:4,f:[{t:4,f:[{p:[51,9,1504],t:7,e:"line",a:{x1:[{t:2,x:{r:["xscale","."],s:"_0(_1)"},p:[51,19,1514]}],x2:[{t:2,x:{r:["xscale","."],s:"_0(_1)"},p:[51,38,1533]}],y1:"0",y2:[{t:2,r:"height",p:[51,64,1559]}],stroke:"darkgray"}}," ",{t:4,f:[{p:[53,11,1635],t:7,e:"text",a:{x:[{t:2,x:{r:["xscale","."],s:"_0(_1)"},p:[53,20,1644]}],y:[{t:2,x:{r:["height"],s:"_0-5"},p:[53,38,1662]}],"text-anchor":"middle",fill:"white"},f:[{t:2,x:{r:["size",".","xfactor"],s:"(_0-_1)*_2"},p:[53,88,1712]}," ",{t:2,r:"xunit",p:[53,113,1737]}]}],n:50,x:{r:["@index"],s:"_0%2==0"},p:[52,9,1600]}],n:52,r:"xaxis",p:[50,7,1479]}," ",{t:4,f:[{p:[57,9,1820],t:7,e:"line",a:{x1:"0",x2:[{t:2,r:"width",p:[57,26,1837]}],y1:[{t:2,x:{r:["yscale","."],s:"_0(_1)"},p:[57,41,1852]}],y2:[{t:2,x:{r:["yscale","."],s:"_0(_1)"},p:[57,60,1871]}],stroke:"darkgray"}}," ",{p:[58,9,1915],t:7,e:"text",a:{x:"0",y:[{t:2,x:{r:["yscale","."],s:"_0(_1)-5"},p:[58,24,1930]}],"text-anchor":"begin",fill:"white"},f:[{t:2,x:{r:[".","yfactor"],s:"_0*_1"},p:[58,76,1982]}," ",{t:2,r:"yunit",p:[58,92,1998]}]}],n:52,r:"yaxis",p:[56,7,1795]}," ",{t:4,f:[{p:[61,9,2071],t:7,e:"path",a:{d:[{t:2,x:{r:["area.path"],s:"_0.print()"},p:[61,18,2080]}],fill:[{t:2,rx:{r:"colors",m:[{t:30,n:"curve"}]},p:[61,47,2109]}],opacity:"0.1"}}],n:52,i:"curve",r:"curves",p:[60,7,2039]}," ",{t:4,f:[{p:[64,9,2200],t:7,e:"path",a:{d:[{t:2,x:{r:["line.path"],s:"_0.print()"},p:[64,18,2209]}],stroke:[{t:2,rx:{r:"colors",m:[{t:30,n:"curve"}]},p:[64,49,2240]}],fill:"none"}}],n:52,i:"curve",r:"curves",p:[63,7,2168]}," ",{t:4,f:[{t:4,f:[{p:[68,11,2375],t:7,e:"circle",a:{transform:["translate(",{t:2,r:".",p:[68,40,2404]},")"],r:[{t:2,x:{r:["selected","count"],s:"_0==_1?10:4"},p:[68,51,2415]}],fill:[{t:2,rx:{r:"colors",m:[{t:30,n:"curve"}]},p:[68,89,2453]}]},v:{mouseenter:"enter",mouseleave:"exit"}}],n:52,i:"count",x:{r:["line.path"],s:"_0.points()"},p:[67,9,2329]}],n:52,i:"curve",r:"curves",p:[66,7,2297]}," ",{t:4,f:[{t:4,f:[{t:4,f:[{p:[74,13,2678],t:7,e:"text",a:{transform:["translate(",{t:2,r:".",p:[74,40,2705]},") ",{t:2,x:{r:["count","size"],s:'_0<=_1/2?"translate(15, 4)":"translate(-15, 4)"'},p:[74,47,2712]}],"text-anchor":[{t:2,x:{r:["count","size"],s:'_0<=_1/2?"start":"end"'},p:[74,126,2791]}],fill:"white"},f:[{t:2,x:{r:["count","item","yfactor"],s:"_1[_0].y*_2"},p:[75,15,2861]}," ",{t:2,r:"yunit",p:[75,43,2889]}," @ ",{t:2,x:{r:["size","count","item","xfactor"],s:"(_0-_2[_1].x)*_3"},p:[75,55,2901]}," ",{t:2,r:"xunit",p:[75,92,2938]}]}],n:50,x:{r:["selected","count"],s:"_0==_1"},p:[73,11,2638]}],n:52,i:"count",x:{r:["line.path"],s:"_0.points()"},p:[72,9,2592]}],n:52,i:"curve",r:"curves",p:[71,7,2560]}," ",{t:4,f:[{p:[81,9,3063],t:7,e:"g",a:{transform:["translate(",{t:2,x:{r:["width","curves.length","@index"],s:"(_0/(_1+1))*(_2+1)"},p:[81,33,3087]},", 10)"]},f:[{p:[82,11,3154],t:7,e:"circle",a:{r:"4",fill:[{t:2,rx:{r:"colors",m:[{t:30,n:"curve"}]},p:[82,31,3174]}]}}," ",{p:[83,11,3206],t:7,e:"text",a:{x:"8",y:"4",fill:"white"},f:[{t:2,rx:{r:"legend",m:[{t:30,n:"curve"}]},p:[83,42,3237]}]}]}],n:52,i:"curve",r:"curves",p:[80,7,3031]}],x:{r:["graph","points","xaccessor","yaccessor","width","height"],s:"_0({data:_1,xaccessor:_2,yaccessor:_3,width:_4,height:_5})"},p:[49,5,1371]}]}]}]},e.exports=a.extend(r.exports)},{202:202,205:205}],211:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"div",a:{"class":"notice"},f:[{t:16,p:[2,3,23]}]}]},e.exports=a.extend(r.exports)},{205:205}],212:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(299),a=t(301);e.exports={oninit:function(){var t=this,e=a.resize.bind(this),r=function(){return t.set({resize:!1,x:null,y:null})};this.observe("config.fancy",function(a,i,o){(0,n.winset)(t.get("config.window"),"can-resize",!a),a?(document.addEventListener("mousemove",e),document.addEventListener("mouseup",r)):(document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",r))}),this.on("resize",function(){return t.toggle("resize")})}}}(r),r.exports.template={v:3,t:[" ",{t:4,f:[{p:[28,3,739],t:7,e:"div",a:{"class":"resize"},v:{mousedown:"resize"}}],n:50,r:"config.fancy",p:[27,1,716]}]},e.exports=a.extend(r.exports)},{205:205,299:299,301:301}],213:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"section",a:{"class":[{t:4,f:["candystripe"],r:"candystripe",p:[1,17,16]}]},f:[{t:4,f:[{p:[3,5,82],t:7,e:"span",a:{"class":"label",style:[{t:4,f:["color:",{t:2,r:"labelcolor",p:[3,53,130]}],r:"labelcolor",p:[3,32,109]}]},f:[{t:2,r:"label",p:[3,84,161]},":"]}],n:50,r:"label",p:[2,3,64]}," ",{t:4,f:[{t:16,p:[6,5,210]}],n:50,r:"nowrap",p:[5,3,191]},{t:4,n:51,f:[{p:[8,5,235],t:7,e:"div",a:{"class":"content",style:[{t:4,f:["float:right;"],r:"right",p:[8,33,263]}]},f:[{t:16,p:[9,7,304]}]}],r:"nowrap"}]}]},e.exports=a.extend(r.exports)},{205:205}],214:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"div",a:{"class":"subdisplay"},f:[{t:4,f:[{p:[3,5,45],t:7,e:"header",f:[{p:[4,7,60],t:7,e:"h4",f:[{t:2,r:"title",p:[4,11,64]}]}," ",{t:4,f:[{t:16,n:"button",p:[5,21,99]}],n:50,r:"button",p:[5,7,85]}]}],n:50,r:"title",p:[2,3,27]}," ",{p:[8,3,149],t:7,e:"article",f:[{t:16,p:[9,5,163]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],215:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={oninit:function(){var t=this;this.set("active",this.findComponent("tab").get("name")),this.on("switch",function(e){t.set("active",e.node.textContent.trim())}),this.observe("active",function(e,n,a){for(var r=t.findAllComponents("tab"),i=Array.isArray(r),o=0,r=i?r:r[Symbol.iterator]();;){var s;if(i){if(o>=r.length)break;s=r[o++]}else{if(o=r.next(),o.done)break;s=o.value}var p=s;p.set("shown",p.get("name")===e)}})}}}(r),r.exports.template={v:3,t:[" "," ",{p:[20,1,524],t:7,e:"header",f:[{t:4,f:[{p:[22,5,556],t:7,e:"ui-button",a:{pane:[{t:2,r:".",p:[22,22,573]}]},v:{press:"switch"},f:[{t:2,r:".",p:[22,47,598]}]}],n:52,r:"tabs",p:[21,3,536]}]}," ",{p:[25,1,641],t:7,e:"ui-display",f:[{t:8,r:"content",p:[26,3,657]}]}]},r.exports.components=r.exports.components||{};var i={tab:t(216)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{205:205,216:216}],216:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{t:16,p:[2,3,17]}],n:50,r:"shown",p:[1,1,0]}]},e.exports=a.extend(r.exports)},{205:205}],217:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(300),a=t(299),r=t(301);e.exports={computed:{visualStatus:function(){switch(this.get("config.status")){case n.UI_INTERACTIVE:return"good";case n.UI_UPDATE:return"average";case n.UI_DISABLED:return"bad";default:return"bad"}}},oninit:function(){var t=this,e=r.drag.bind(this),n=function(e){return t.set({drag:!1,x:null,y:null})};this.observe("config.fancy",function(r,i,o){(0,a.winset)(t.get("config.window"),"titlebar",!r&&t.get("config.titlebar")),r?(document.addEventListener("mousemove",e),document.addEventListener("mouseup",n)):(document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",n))}),this.on({drag:function(){this.toggle("drag")},close:function(){(0,a.winset)(this.get("config.window"),"is-visible",!1),window.location.href=(0,a.href)({command:"uiclose "+this.get("config.ref")},"winset")},minimize:function(){(0,a.winset)(this.get("config.window"),"is-minimized",!0)}})}}}(r),r.exports.template={v:3,t:[" ",{t:4,f:[{p:[50,3,1391],t:7,e:"header",a:{"class":"titlebar"},v:{mousedown:"drag"},f:[{p:[51,5,1441],t:7,e:"i",a:{"class":["statusicon fa fa-eye fa-2x ",{t:2,r:"visualStatus",p:[51,42,1478]}]}}," ",{p:[52,5,1505],t:7,e:"span",a:{"class":"title"},f:[{t:16,p:[52,25,1525]}]}," ",{t:4,f:[{p:[54,7,1573],t:7,e:"i",a:{"class":"minimize fa fa-minus fa-2x"},v:{click:"minimize"}}," ",{p:[55,7,1642],t:7,e:"i",a:{"class":"close fa fa-close fa-2x"},v:{click:"close"}}],n:50,r:"config.fancy",p:[53,5,1546]}]}],n:50,r:"config.titlebar",p:[49,1,1365]}]},e.exports=a.extend(r.exports)},{205:205,299:299,300:300,301:301}],218:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";var e=[11,10,9,8];t.exports={data:{userAgent:navigator.userAgent},computed:{ie:function(){if(document.documentMode)return document.documentMode;for(var t in e){var n=document.createElement("div");if(n.innerHTML="",n.getElementsByTagName("span").length)return t}}},oninit:function(){var t=this;this.on("debug",function(){return t.toggle("debug")})}}}(r),r.exports.template={v:3,t:[" ",{t:4,f:[{p:[27,3,636],t:7,e:"ui-notice",f:[{p:[28,5,652],t:7,e:"span",f:["You have an old (IE",{t:2,r:"ie",p:[28,30,677]},"), end-of-life (click 'EOL Info' for more information) version of Internet Explorer installed."]},{p:[28,137,784],t:7,e:"br"}," ",{p:[29,5,794],t:7,e:"span",f:["To upgrade, click 'Upgrade IE' to download IE11 from Microsoft."]},{p:[29,81,870],t:7,e:"br"}," ",{p:[30,5,880],t:7,e:"span",f:["If you are unable to upgrade directly, click 'IE VMs' to download a VM with IE11 or Edge from Microsoft."]},{p:[30,122,997],t:7,e:"br"}," ",{p:[31,5,1007],t:7,e:"span",f:["Otherwise, click 'No Frills' below to disable potentially incompatible features (and this message)."]}," ",{p:[32,5,1124],t:7,e:"hr"}," ",{p:[33,5,1134],t:7,e:"ui-button",a:{icon:"close",action:"tgui:nofrills"},f:["No Frills"]}," ",{p:[34,5,1207],t:7,e:"ui-button",a:{icon:"internet-explorer",action:"tgui:link",params:'{"url": "http://windows.microsoft.com/en-us/internet-explorer/download-ie"}'},f:["Upgrade IE"]}," ",{p:[36,5,1381],t:7,e:"ui-button",a:{icon:"edge",action:"tgui:link",params:'{"url": "https://dev.windows.com/en-us/microsoft-edge/tools/vms"}'},f:["IE VMs"]}," ",{p:[38,5,1528],t:7,e:"ui-button",a:{icon:"info",action:"tgui:link",params:'{"url": "https://support.microsoft.com/en-us/lifecycle#gp/Microsoft-Internet-Explorer"}'},f:["EOL Info"]}," ",{p:[40,5,1699],t:7,e:"ui-button",a:{icon:"bug"},v:{press:"debug"},f:["Debug Info"]}," ",{t:4,f:[{p:[42,7,1785],t:7,e:"hr"}," ",{p:[43,7,1797],t:7,e:"span",f:["Detected: IE",{t:2,r:"ie",p:[43,25,1815]}]},{p:[43,38,1828],t:7,e:"br"}," ",{p:[44,7,1840],t:7,e:"span",f:["User Agent: ",{t:2,r:"userAgent",p:[44,25,1858]}]}],n:50,r:"debug",p:[41,5,1765]}]}],n:50,x:{r:["config.fancy","ie"],s:"_0&&_1&&_1<11"},p:[26,1,596]}]},e.exports=a.extend(r.exports)},{205:205}],219:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{healthState:function(){var t=this.get("data.health");return t>70?"good":t>50?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[15,1,261],t:7,e:"div",a:{style:"float: left"},f:[{p:[16,2,288],t:7,e:"div",a:{"class":"item"},f:[{p:[17,3,309],t:7,e:"table",f:[{p:[17,10,316],t:7,e:"tr",f:[{t:4,f:[{p:[19,4,381],t:7,e:"td",f:[{p:[19,8,385],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[19,18,395]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[18,3,323]}," ",{t:4,f:[{p:[22,4,494],t:7,e:"td",f:[{p:[22,8,498],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[22,11,501]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[21,3,433]}," ",{t:4,f:[{p:[25,4,573],t:7,e:"td",f:[{p:[25,8,577],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[25,18,587]}]}}]}],n:50,r:"data.PC_ntneticon",p:[24,3,544]}," ",{t:4,f:[{p:[28,4,654],t:7,e:"td",f:[{p:[28,8,658],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[28,18,668]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[27,3,623]}," ",{t:4,f:[{p:[31,4,737],t:7,e:"td",f:[{p:[31,8,741], +}),hh.unpatch=mh;var Oh,Th,Mh,Rh=hh;Oh={filter:function(t){return i(t)&&(!t._ractive||!t._ractive.setting)},wrap:function(t,e,n){return new Th(t,e,n)}},Th=function(t,e,n){this.root=t,this.value=e,this.keypath=P(n),e._ractive||(Co(e,"_ractive",{value:{wrappers:[],instances:[],setting:!1},configurable:!0}),Rh(e)),e._ractive.instances[t._guid]||(e._ractive.instances[t._guid]=0,e._ractive.instances.push(t)),e._ractive.instances[t._guid]+=1,e._ractive.wrappers.push(this)},Th.prototype={get:function(){return this.value},teardown:function(){var t,e,n,a,r;if(t=this.value,e=t._ractive,n=e.wrappers,a=e.instances,e.setting)return!1;if(r=n.indexOf(this),-1===r)throw Error(Mh);if(n.splice(r,1),n.length){if(a[this.root._guid]-=1,!a[this.root._guid]){if(r=a.indexOf(this.root),-1===r)throw Error(Mh);a.splice(r,1)}}else delete t._ractive,Rh.unpatch(this.value)}},Mh="Something went wrong in a rather interesting way";var jh,Lh,Nh=Oh,Dh=/^\s*[0-9]+\s*$/,Fh=function(t){return Dh.test(t)?[]:{}};try{Object.defineProperty({},"test",{value:0}),jh={filter:function(t,e,n){var a,r;return e?(e=P(e),(a=n.viewmodel.wrapped[e.parent.str])&&!a.magic?!1:(r=n.viewmodel.get(e.parent),i(r)&&/^[0-9]+$/.test(e.lastKey)?!1:r&&("object"==typeof r||"function"==typeof r))):!1},wrap:function(t,e,n){return new Lh(t,e,n)}},Lh=function(t,e,n){var a,r,i;return n=P(n),this.magic=!0,this.ractive=t,this.keypath=n,this.value=e,this.prop=n.lastKey,a=n.parent,this.obj=a.isRoot?t.viewmodel.data:t.viewmodel.get(a),r=this.originalDescriptor=Object.getOwnPropertyDescriptor(this.obj,this.prop),r&&r.set&&(i=r.set._ractiveWrappers)?void(-1===i.indexOf(this)&&i.push(this)):void vr(this,e,r)},Lh.prototype={get:function(){return this.value},reset:function(t){return this.updating?void 0:(this.updating=!0,this.obj[this.prop]=t,bs.addRactive(this.ractive),this.ractive.viewmodel.mark(this.keypath,{keepExistingWrapper:!0}),this.updating=!1,!0)},set:function(t,e){this.updating||(this.obj[this.prop]||(this.updating=!0,this.obj[this.prop]=Fh(t),this.updating=!1),this.obj[this.prop][t]=e)},teardown:function(){var t,e,n,a,r;return this.updating?!1:(t=Object.getOwnPropertyDescriptor(this.obj,this.prop),e=t&&t.set,void(e&&(a=e._ractiveWrappers,r=a.indexOf(this),-1!==r&&a.splice(r,1),a.length||(n=this.obj[this.prop],Object.defineProperty(this.obj,this.prop,this.originalDescriptor||{writable:!0,enumerable:!0,configurable:!0}),this.obj[this.prop]=n))))}}}catch(Ao){jh=!1}var Ih,Bh,qh=jh;qh&&(Ih={filter:function(t,e,n){return qh.filter(t,e,n)&&Nh.filter(t)},wrap:function(t,e,n){return new Bh(t,e,n)}},Bh=function(t,e,n){this.value=e,this.magic=!0,this.magicWrapper=qh.wrap(t,e,n),this.arrayWrapper=Nh.wrap(t,e,n)},Bh.prototype={get:function(){return this.value},teardown:function(){this.arrayWrapper.teardown(),this.magicWrapper.teardown()},reset:function(t){return this.magicWrapper.reset(t)}});var Gh=Ih,Uh=gr,Vh={},zh=_r,Wh=xr,Hh=Pr,Qh=Or,Kh=Tr,$h=function(t,e){this.computation=t,this.viewmodel=t.viewmodel,this.ref=e,this.root=this.viewmodel.ractive,this.parentFragment=this.root.component&&this.root.component.parentFragment};$h.prototype={resolve:function(t){this.computation.softDeps.push(t),this.computation.unresolvedDeps[t.str]=null,this.viewmodel.register(t,this.computation,"computed")}};var Yh=$h,Xh=function(t,e){this.key=t,this.getter=e.getter,this.setter=e.setter,this.hardDeps=e.deps||[],this.softDeps=[],this.unresolvedDeps={},this.depValues={},this._dirty=this._firstRun=!0};Xh.prototype={constructor:Xh,init:function(t){var e,n=this;this.viewmodel=t,this.bypass=!0,e=t.get(this.key),t.clearCache(this.key.str),this.bypass=!1,this.setter&&void 0!==e&&this.set(e),this.hardDeps&&this.hardDeps.forEach(function(e){return t.register(e,n,"computed")})},invalidate:function(){this._dirty=!0},get:function(){var t,e,n=this,a=!1;if(this.getting){var r="The "+this.key.str+" computation indirectly called itself. This probably indicates a bug in the computation. It is commonly caused by `array.sort(...)` - if that's the case, clone the array first with `array.slice().sort(...)`";return h(r),this.value}if(this.getting=!0,this._dirty){if(this._firstRun||!this.hardDeps.length&&!this.softDeps.length?a=!0:[this.hardDeps,this.softDeps].forEach(function(t){var e,r,i;if(!a)for(i=t.length;i--;)if(e=t[i],r=n.viewmodel.get(e),!s(r,n.depValues[e.str]))return n.depValues[e.str]=r,void(a=!0)}),a){this.viewmodel.capture();try{this.value=this.getter()}catch(i){m('Failed to compute "%s"',this.key.str),f(i.stack||i),this.value=void 0}t=this.viewmodel.release(),e=this.updateDependencies(t),e&&[this.hardDeps,this.softDeps].forEach(function(t){t.forEach(function(t){n.depValues[t.str]=n.viewmodel.get(t)})})}this._dirty=!1}return this.getting=this._firstRun=!1,this.value},set:function(t){if(this.setting)return void(this.value=t);if(!this.setter)throw Error("Computed properties without setters are read-only. (This may change in a future version of Ractive!)");this.setter(t)},updateDependencies:function(t){var e,n,a,r,i;for(n=this.softDeps,e=n.length;e--;)a=n[e],-1===t.indexOf(a)&&(r=!0,this.viewmodel.unregister(a,this,"computed"));for(e=t.length;e--;)a=t[e],-1!==n.indexOf(a)||this.hardDeps&&-1!==this.hardDeps.indexOf(a)||(r=!0,Mr(this.viewmodel,a)&&!this.unresolvedDeps[a.str]?(i=new Yh(this,a.str),t.splice(e,1),this.unresolvedDeps[a.str]=i,bs.addUnresolved(i)):this.viewmodel.register(a,this,"computed"));return r&&(this.softDeps=t.slice()),r}};var Jh=Xh,Zh=Rr,tm={FAILED_LOOKUP:!0},em=jr,nm={},am=Nr,rm=Dr,im=function(t,e){this.localKey=t,this.keypath=e.keypath,this.origin=e.origin,this.deps=[],this.unresolved=[],this.resolved=!1};im.prototype={forceResolution:function(){this.keypath=this.localKey,this.setup()},get:function(t,e){return this.resolved?this.origin.get(this.map(t),e):void 0},getValue:function(){return this.keypath?this.origin.get(this.keypath):void 0},initViewmodel:function(t){this.local=t,this.setup()},map:function(t){return void 0===typeof this.keypath?this.localKey:t.replace(this.localKey,this.keypath)},register:function(t,e,n){this.deps.push({keypath:t,dep:e,group:n}),this.resolved&&this.origin.register(this.map(t),e,n)},resolve:function(t){void 0!==this.keypath&&this.unbind(!0),this.keypath=t,this.setup()},set:function(t,e){this.resolved||this.forceResolution(),this.origin.set(this.map(t),e)},setup:function(){var t=this;void 0!==this.keypath&&(this.resolved=!0,this.deps.length&&(this.deps.forEach(function(e){var n=t.map(e.keypath);if(t.origin.register(n,e.dep,e.group),e.dep.setValue)e.dep.setValue(t.origin.get(n));else{if(!e.dep.invalidate)throw Error("An unexpected error occurred. Please raise an issue at https://github.com/ractivejs/ractive/issues - thanks!");e.dep.invalidate()}}),this.origin.mark(this.keypath)))},setValue:function(t){if(!this.keypath)throw Error("Mapping does not have keypath, cannot set value. Please raise an issue at https://github.com/ractivejs/ractive/issues - thanks!");this.origin.set(this.keypath,t)},unbind:function(t){var e=this;t||delete this.local.mappings[this.localKey],this.resolved&&(this.deps.forEach(function(t){e.origin.unregister(e.map(t.keypath),t.dep,t.group)}),this.tracker&&this.origin.unregister(this.keypath,this.tracker))},unregister:function(t,e,n){var a,r;if(this.resolved){for(a=this.deps,r=a.length;r--;)if(a[r].dep===e){a.splice(r,1);break}this.origin.unregister(this.map(t),e,n)}}};var om=Fr,sm=function(t,e){var n,a,r,i;return n={},a=0,r=t.map(function(t,r){var o,s,p;s=a,p=e.length;do{if(o=e.indexOf(t,s),-1===o)return i=!0,-1;s=o+1}while(n[o]&&p>s);return o===a&&(a+=1),o!==r&&(i=!0),n[o]=!0,o})},pm=Ir,um={},cm=Gr,lm=Vr,fm=zr,dm=Wr,hm=Qr,mm={implicit:!0},vm={noCascade:!0},gm=$r,bm=Yr,ym=function(t){var e,n,a=t.adapt,r=t.data,i=t.ractive,o=t.computed,s=t.mappings;this.ractive=i,this.adaptors=a,this.onchange=t.onchange,this.cache={},this.cacheMap=Po(null),this.deps={computed:Po(null),"default":Po(null)},this.depsMap={computed:Po(null),"default":Po(null)},this.patternObservers=[],this.specials=Po(null),this.wrapped=Po(null),this.computations=Po(null),this.captureGroups=[],this.unresolvedImplicitDependencies=[],this.changes=[],this.implicitChanges={},this.noCascade={},this.data=r,this.mappings=Po(null);for(e in s)this.map(P(e),s[e]);if(r)for(e in r)(n=this.mappings[e])&&void 0===n.getValue()&&n.setValue(r[e]);for(e in o)s&&e in s&&l("Cannot map to a computed property ('%s')",e),this.compute(P(e),o[e]);this.ready=!0};ym.prototype={adapt:Uh,applyChanges:Hh,capture:Qh,clearCache:Kh,compute:Zh,get:em,init:am,map:rm,mark:om,merge:pm,register:cm,release:lm,reset:fm,set:dm,smartUpdate:hm,teardown:gm,unregister:bm};var _m=ym;Jr.prototype={constructor:Jr,begin:function(t){this.inProcess[t._guid]=!0},end:function(t){var e=t.parent;e&&this.inProcess[e._guid]?Zr(this.queue,e).push(t):ti(this,t),delete this.inProcess[t._guid]}};var xm=Jr,wm=ei,km=/\$\{([^\}]+)\}/g,Pm=new is("construct"),Cm=new is("config"),Em=new xm("init"),Sm=0,Am=["adaptors","components","decorators","easing","events","interpolators","partials","transitions"],Om=ii,Tm=ci;ci.prototype={bubble:function(){this.dirty||(this.dirty=!0,bs.addView(this))},update:function(){this.callback(this.fragment.getValue()),this.dirty=!1},rebind:function(t,e){this.fragment.rebind(t,e)},unbind:function(){this.fragment.unbind()}};var Mm=function(t,e,n,r,o){var s,p,u,c,l,f,d={},h={},v={},g=[];for(p=t.parentFragment,u=t.root,o=o||{},a(d,o),o.content=r||[],d[""]=o.content,e.defaults.el&&m("The <%s/> component has a default `el` property; it has been disregarded",t.name),c=p;c;){if(c.owner.type===Ru){l=c.owner.container;break}c=c.parent}return n&&Object.keys(n).forEach(function(e){var a,r,o=n[e];if("string"==typeof o)a=fc(o),h[e]=a?a.value:o;else if(0===o)h[e]=!0;else{if(!i(o))throw Error("erm wut");fi(o)?(v[e]={origin:t.root.viewmodel,keypath:void 0},r=li(t,o[0],function(t){t.isSpecial?f?s.set(e,t.value):(h[e]=t.value,delete v[e]):f?s.viewmodel.mappings[e].resolve(t):v[e].keypath=t})):r=new Tm(t,o,function(t){f?s.set(e,t):h[e]=t}),g.push(r)}}),s=Po(e.prototype),Om(s,{el:null,append:!0,data:h,partials:o,magic:u.magic||e.defaults.magic,modifyArrays:u.modifyArrays,adapt:u.adapt},{parent:u,component:t,container:l,mappings:v,inlinePartials:d,cssIds:p.cssIds}),f=!0,t.resolvers=g,s},Rm=di,jm=function(t){var e,n;for(e=t.root;e;)(n=e._liveComponentQueries["_"+t.name])&&n.push(t.instance),e=e.parent},Lm=mi,Nm=vi,Dm=gi,Fm=bi,Im=yi,Bm=new is("teardown"),qm=xi,Gm=function(t,e){this.init(t,e)};Gm.prototype={detach:bh,find:_h,findAll:xh,findAllComponents:wh,findComponent:kh,findNextNode:Ph,firstNode:Ch,init:Lm,rebind:Nm,render:Dm,toString:Fm,unbind:Im,unrender:qm};var Um=Gm,Vm=function(t){this.type=Ou,this.value=t.template.c};Vm.prototype={detach:gc,firstNode:function(){return this.node},render:function(){return this.node||(this.node=document.createComment(this.value)),this.node},toString:function(){return""},unrender:function(t){t&&this.node.parentNode.removeChild(this.node)}};var zm=Vm,Wm=function(t){var e,n;this.type=Ru,this.container=e=t.parentFragment.root,this.component=n=e.component,this.container=e,this.containerFragment=t.parentFragment,this.parentFragment=n.parentFragment;var a=this.name=t.template.n||"",r=e._inlinePartials[a];r||(m('Could not find template for partial "'+a+'"',{ractive:t.root}),r=[]),this.fragment=new rv({owner:this,root:e.parent,template:r,pElement:this.containerFragment.pElement}),i(n.yielders[a])?n.yielders[a].push(this):n.yielders[a]=[this],bs.scheduleTask(function(){if(n.yielders[a].length>1)throw Error("A component template can only have one {{yield"+(a?" "+a:"")+"}} declaration at a time")})};Wm.prototype={detach:function(){return this.fragment.detach()},find:function(t){return this.fragment.find(t)},findAll:function(t,e){return this.fragment.findAll(t,e)},findComponent:function(t){return this.fragment.findComponent(t)},findAllComponents:function(t,e){return this.fragment.findAllComponents(t,e)},findNextNode:function(){return this.containerFragment.findNextNode(this)},firstNode:function(){return this.fragment.firstNode()},getValue:function(t){return this.fragment.getValue(t)},render:function(){return this.fragment.render()},unbind:function(){this.fragment.unbind()},unrender:function(t){this.fragment.unrender(t),D(this.component.yielders[this.name],this)},rebind:function(t,e){this.fragment.rebind(t,e)},toString:function(){return""+this.fragment}};var Hm=Wm,Qm=function(t){this.declaration=t.template.a};Qm.prototype={init:ko,render:ko,unrender:ko,teardown:ko,toString:function(){return""}};var Km=Qm,$m=wi,Ym=Pi,Xm=Ci,Jm=Ei,Zm=Oi,tv=Mi,ev=function(t){this.init(t)};ev.prototype={bubble:cu,detach:lu,find:fu,findAll:du,findAllComponents:hu,findComponent:mu,findNextNode:vu,firstNode:gu,getArgsList:hc,getNode:mc,getValue:vc,init:$m,rebind:Ym,registerIndexRef:function(t){var e=this.registeredIndexRefs;-1===e.indexOf(t)&&e.push(t)},render:Xm,toString:Jm,unbind:Zm,unregisterIndexRef:function(t){var e=this.registeredIndexRefs;e.splice(e.indexOf(t),1)},unrender:tv};var nv,av,rv=ev,iv=Ri,ov=["template","partials","components","decorators","events"],sv=new is("reset"),pv=function(t,e){function n(e,a,r){r&&r.partials[t]||e.forEach(function(e){e.type===Au&&e.getPartialName()===t&&a.push(e),e.fragment&&n(e.fragment.items,a,r),i(e.fragments)?n(e.fragments,a,r):i(e.items)?n(e.items,a,r):e.type===Mu&&e.instance&&n(e.instance.fragment.items,a,e.instance),e.type===Su&&(i(e.attributes)&&n(e.attributes,a,r),i(e.conditionalAttributes)&&n(e.conditionalAttributes,a,r))})}var a,r=[];return n(this.fragment.items,r),this.partials[t]=e,a=bs.start(this,!0),r.forEach(function(e){e.value=void 0,e.setValue(t)}),bs.end(),a},uv=ji,cv=_p("reverse"),lv=Li,fv=_p("shift"),dv=_p("sort"),hv=_p("splice"),mv=Di,vv=Fi,gv=new is("teardown"),bv=Bi,yv=qi,_v=Gi,xv=new is("unrender"),wv=_p("unshift"),kv=Ui,Pv=new is("update"),Cv=Vi,Ev={add:Zo,animate:Ps,detach:Es,find:As,findAll:Fs,findAllComponents:Is,findComponent:Bs,findContainer:qs,findParent:Gs,fire:Ws,get:Hs,insert:Ks,merge:Ys,observe:lp,observeOnce:fp,off:mp,on:vp,once:gp,pop:xp,push:wp,render:Tp,reset:iv,resetPartial:pv,resetTemplate:uv,reverse:cv,set:lv,shift:fv,sort:dv,splice:hv,subtract:mv,teardown:vv,toggle:bv,toHTML:yv,toHtml:yv,unrender:_v,unshift:wv,update:kv,updateModel:Cv},Sv=function(t,e,n){return n||Wi(t,e)?function(){var n,a="_super"in this,r=this._super;return this._super=e,n=t.apply(this,arguments),a&&(this._super=r),n}:t},Av=Hi,Ov=Yi,Tv=function(t){var e,n,a={};return t&&(e=t._ractive)?(a.ractive=e.root,a.keypath=e.keypath.str,a.index={},(n=Oc(e.proxy.parentFragment))&&(a.index=Oc.resolve(n)),a):a};nv=function(t){return this instanceof nv?void Om(this,t):new nv(t)},av={DEBUG:{writable:!0,value:!0},DEBUG_PROMISES:{writable:!0,value:!0},extend:{value:Ov},getNodeInfo:{value:Tv},parse:{value:Hp},Promise:{value:us},svg:{value:ao},magic:{value:eo},VERSION:{value:"0.7.3"},adaptors:{writable:!0,value:{}},components:{writable:!0,value:{}},decorators:{writable:!0,value:{}},easing:{writable:!0,value:po},events:{writable:!0,value:{}},interpolators:{writable:!0,value:Uo},partials:{writable:!0,value:{}},transitions:{writable:!0,value:{}}},Eo(nv,av),nv.prototype=a(Ev,so),nv.prototype.constructor=nv,nv.defaults=nv.prototype;var Mv="function";if(typeof Date.now!==Mv||typeof String.prototype.trim!==Mv||typeof Object.keys!==Mv||typeof Array.prototype.indexOf!==Mv||typeof Array.prototype.forEach!==Mv||typeof Array.prototype.map!==Mv||typeof Array.prototype.filter!==Mv||"undefined"!=typeof window&&typeof window.addEventListener!==Mv)throw Error("It looks like you're attempting to use Ractive.js in an older browser. You'll need to use one of the 'legacy builds' in order to continue - see http://docs.ractivejs.org/latest/legacy-builds for more information.");var Rv=nv;return Rv})},{}],206:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={oninit:function(){var t=this;this.observe("value",function(e,n,a){var r=t.get(),i=r.min,o=r.max,s=Math.clamp(i,o,e);t.animate("percentage",Math.round((s-i)/(o-i)*100))})}}}(r),r.exports.template={v:3,t:[" ",{p:[13,1,293],t:7,e:"div",a:{"class":"bar"},f:[{p:[14,3,313],t:7,e:"div",a:{"class":["barFill ",{t:2,r:"state",p:[14,23,333]}],style:["width: ",{t:2,r:"percentage",p:[14,48,358]},"%"]}}," ",{p:[15,3,384],t:7,e:"span",a:{"class":"barText"},f:[{t:16,p:[15,25,406]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],207:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(301),a=t(300);e.exports={computed:{clickable:function(){return!this.get("enabled")||this.get("state")&&"toggle"!=this.get("state")?!1:!0},enabled:function(){return this.get("config.status")===n.UI_INTERACTIVE?!0:!1},styles:function(){var t="";if(this.get("class")&&(t+=" "+this.get("class")),this.get("tooltip-side")&&(t=" tooltip-"+this.get("tooltip-side")),this.get("grid")&&(t+=" gridable"),this.get("enabled")){var e=this.get("state"),n=this.get("style");return e?"inactive "+e+" "+t:"active normal "+n+" "+t}return"inactive disabled "+t}},oninit:function(){var t=this;this.on("press",function(e){var n=t.get(),r=n.action,i=n.params;(0,a.act)(t.get("config.ref"),r,i),e.node.blur()})},data:{iconStackToHTML:function(t){var e="",n=t.split(",");if(n.length){e+='';for(var a=n,r=Array.isArray(a),i=0,a=r?a:a[Symbol.iterator]();;){var o;if(r){if(i>=a.length)break;o=a[i++]}else{if(i=a.next(),i.done)break;o=i.value}var s=o,p=/([\w\-]+)\s*(\dx)/g,u=p.exec(s),c=u[1],l=u[2];e+=''}}return e&&(e+=""),e}}}}(r),r.exports.template={v:3,t:[" ",{p:[70,1,1946],t:7,e:"span",a:{"class":["button ",{t:2,r:"styles",p:[70,21,1966]}],unselectable:"on","data-tooltip":[{t:2,r:"tooltip",p:[73,17,2048]}]},m:[{t:4,f:["tabindex='0'"],r:"clickable",p:[72,3,2e3]}],v:{"mouseover-mousemove":"hover",mouseleave:"unhover","click-enter":{n:[{t:4,f:["press"],r:"clickable",p:[76,19,2138]}],d:[]}},f:[{t:4,f:[{p:[78,5,2184],t:7,e:"i",a:{"class":["fa fa-",{t:2,r:"icon",p:[78,21,2200]}]}}],n:50,r:"icon",p:[77,3,2167]}," ",{t:4,f:[{t:3,x:{r:["iconStackToHTML","icon_stack"],s:"_0(_1)"},p:[81,6,2251]}],n:50,r:"icon_stack",p:[80,3,2227]}," ",{t:16,p:[83,3,2297]}]}]},e.exports=a.extend(r.exports)},{205:205,300:300,301:301}],208:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"div",a:{"class":"display"},f:[{t:4,f:[{p:[3,5,42],t:7,e:"header",f:[{p:[4,7,57],t:7,e:"h3",f:[{t:2,r:"title",p:[4,11,61]}]}," ",{t:4,f:[{p:[6,9,105],t:7,e:"div",a:{"class":"buttonRight"},f:[{t:16,n:"button",p:[6,34,130]}]}],n:50,r:"button",p:[5,7,82]}]}],n:50,r:"title",p:[2,3,24]}," ",{p:[10,3,193],t:7,e:"article",f:[{t:16,p:[11,5,207]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],209:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={oninit:function(){var t=this;this.on("clear",function(){t.set("value",""),t.find("input").focus()})}}}(r),r.exports.template={v:3,t:[" ",{p:[12,1,170],t:7,e:"input",a:{type:"text",value:[{t:2,r:"value",p:[12,27,196]}],placeholder:[{t:2,r:"placeholder",p:[12,51,220]}]}}," ",{p:[13,1,240],t:7,e:"ui-button",a:{icon:"refresh"},v:{press:"clear"}}]},e.exports=a.extend(r.exports)},{205:205}],210:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";e.exports={data:{graph:t(202),xaccessor:function(t){return t.x},yaccessor:function(t){return t.y}},computed:{size:function(){var t=this.get("points");return t[0].length},scale:function(){var t=this.get("points");return Math.max.apply(Math,Array.map(t,function(t){return Math.max.apply(Math,Array.map(t,function(t){return t.y}))}))},xaxis:function(){var t=this.get("xinc"),e=this.get("size");return Array.from(Array(e).keys()).filter(function(e){return e&&e%t==0})},yaxis:function(){var t=this.get("yinc"),e=this.get("scale");return Array.from(Array(t).keys()).map(function(t){return Math.round(e*(++t/100)*10)})}},oninit:function(){var t=this;this.on({enter:function(t){this.set("selected",t.index.count)},exit:function(t){this.set("selected")}}),window.addEventListener("resize",function(e){t.set("width",t.el.clientWidth)})},onrender:function(){this.set("width",this.el.clientWidth)}}}(r),r.exports.template={v:3,t:[" ",{p:[47,1,1269],t:7,e:"svg",a:{"class":"linegraph",width:"100%",height:[{t:2,x:{r:["height"],s:"_0+10"},p:[47,45,1313]}]},f:[{p:[48,3,1334],t:7,e:"g",a:{transform:"translate(0, 5)"},f:[{t:4,f:[{t:4,f:[{p:[51,9,1504],t:7,e:"line",a:{x1:[{t:2,x:{r:["xscale","."],s:"_0(_1)"},p:[51,19,1514]}],x2:[{t:2,x:{r:["xscale","."],s:"_0(_1)"},p:[51,38,1533]}],y1:"0",y2:[{t:2,r:"height",p:[51,64,1559]}],stroke:"darkgray"}}," ",{t:4,f:[{p:[53,11,1635],t:7,e:"text",a:{x:[{t:2,x:{r:["xscale","."],s:"_0(_1)"},p:[53,20,1644]}],y:[{t:2,x:{r:["height"],s:"_0-5"},p:[53,38,1662]}],"text-anchor":"middle",fill:"white"},f:[{t:2,x:{r:["size",".","xfactor"],s:"(_0-_1)*_2"},p:[53,88,1712]}," ",{t:2,r:"xunit",p:[53,113,1737]}]}],n:50,x:{r:["@index"],s:"_0%2==0"},p:[52,9,1600]}],n:52,r:"xaxis",p:[50,7,1479]}," ",{t:4,f:[{p:[57,9,1820],t:7,e:"line",a:{x1:"0",x2:[{t:2,r:"width",p:[57,26,1837]}],y1:[{t:2,x:{r:["yscale","."],s:"_0(_1)"},p:[57,41,1852]}],y2:[{t:2,x:{r:["yscale","."],s:"_0(_1)"},p:[57,60,1871]}],stroke:"darkgray"}}," ",{p:[58,9,1915],t:7,e:"text",a:{x:"0",y:[{t:2,x:{r:["yscale","."],s:"_0(_1)-5"},p:[58,24,1930]}],"text-anchor":"begin",fill:"white"},f:[{t:2,x:{r:[".","yfactor"],s:"_0*_1"},p:[58,76,1982]}," ",{t:2,r:"yunit",p:[58,92,1998]}]}],n:52,r:"yaxis",p:[56,7,1795]}," ",{t:4,f:[{p:[61,9,2071],t:7,e:"path",a:{d:[{t:2,x:{r:["area.path"],s:"_0.print()"},p:[61,18,2080]}],fill:[{t:2,rx:{r:"colors",m:[{t:30,n:"curve"}]},p:[61,47,2109]}],opacity:"0.1"}}],n:52,i:"curve",r:"curves",p:[60,7,2039]}," ",{t:4,f:[{p:[64,9,2200],t:7,e:"path",a:{d:[{t:2,x:{r:["line.path"],s:"_0.print()"},p:[64,18,2209]}],stroke:[{t:2,rx:{r:"colors",m:[{t:30,n:"curve"}]},p:[64,49,2240]}],fill:"none"}}],n:52,i:"curve",r:"curves",p:[63,7,2168]}," ",{t:4,f:[{t:4,f:[{p:[68,11,2375],t:7,e:"circle",a:{transform:["translate(",{t:2,r:".",p:[68,40,2404]},")"],r:[{t:2,x:{r:["selected","count"],s:"_0==_1?10:4"},p:[68,51,2415]}],fill:[{t:2,rx:{r:"colors",m:[{t:30,n:"curve"}]},p:[68,89,2453]}]},v:{mouseenter:"enter",mouseleave:"exit"}}],n:52,i:"count",x:{r:["line.path"],s:"_0.points()"},p:[67,9,2329]}],n:52,i:"curve",r:"curves",p:[66,7,2297]}," ",{t:4,f:[{t:4,f:[{t:4,f:[{p:[74,13,2678],t:7,e:"text",a:{transform:["translate(",{t:2,r:".",p:[74,40,2705]},") ",{t:2,x:{r:["count","size"],s:'_0<=_1/2?"translate(15, 4)":"translate(-15, 4)"'},p:[74,47,2712]}],"text-anchor":[{t:2,x:{r:["count","size"],s:'_0<=_1/2?"start":"end"'},p:[74,126,2791]}],fill:"white"},f:[{t:2,x:{r:["count","item","yfactor"],s:"_1[_0].y*_2"},p:[75,15,2861]}," ",{t:2,r:"yunit",p:[75,43,2889]}," @ ",{t:2,x:{r:["size","count","item","xfactor"],s:"(_0-_2[_1].x)*_3"},p:[75,55,2901]}," ",{t:2,r:"xunit",p:[75,92,2938]}]}],n:50,x:{r:["selected","count"],s:"_0==_1"},p:[73,11,2638]}],n:52,i:"count",x:{r:["line.path"],s:"_0.points()"},p:[72,9,2592]}],n:52,i:"curve",r:"curves",p:[71,7,2560]}," ",{t:4,f:[{p:[81,9,3063],t:7,e:"g",a:{transform:["translate(",{t:2,x:{r:["width","curves.length","@index"],s:"(_0/(_1+1))*(_2+1)"},p:[81,33,3087]},", 10)"]},f:[{p:[82,11,3154],t:7,e:"circle",a:{r:"4",fill:[{t:2,rx:{r:"colors",m:[{t:30,n:"curve"}]},p:[82,31,3174]}]}}," ",{p:[83,11,3206],t:7,e:"text",a:{x:"8",y:"4",fill:"white"},f:[{t:2,rx:{r:"legend",m:[{t:30,n:"curve"}]},p:[83,42,3237]}]}]}],n:52,i:"curve",r:"curves",p:[80,7,3031]}],x:{r:["graph","points","xaccessor","yaccessor","width","height"],s:"_0({data:_1,xaccessor:_2,yaccessor:_3,width:_4,height:_5})"},p:[49,5,1371]}]}]}]},e.exports=a.extend(r.exports)},{202:202,205:205}],211:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"div",a:{"class":"notice"},f:[{t:16,p:[2,3,23]}]}]},e.exports=a.extend(r.exports)},{205:205}],212:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(300),a=t(302);e.exports={oninit:function(){var t=this,e=a.resize.bind(this),r=function(){return t.set({resize:!1,x:null,y:null})};this.observe("config.fancy",function(a,i,o){(0,n.winset)(t.get("config.window"),"can-resize",!a),a?(document.addEventListener("mousemove",e),document.addEventListener("mouseup",r)):(document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",r))}),this.on("resize",function(){return t.toggle("resize")})}}}(r),r.exports.template={v:3,t:[" ",{t:4,f:[{p:[28,3,739],t:7,e:"div",a:{"class":"resize"},v:{mousedown:"resize"}}],n:50,r:"config.fancy",p:[27,1,716]}]},e.exports=a.extend(r.exports)},{205:205,300:300,302:302}],213:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"section",a:{"class":[{t:4,f:["candystripe"],r:"candystripe",p:[1,17,16]}]},f:[{t:4,f:[{p:[3,5,82],t:7,e:"span",a:{"class":"label",style:[{t:4,f:["color:",{t:2,r:"labelcolor",p:[3,53,130]}],r:"labelcolor",p:[3,32,109]}]},f:[{t:2,r:"label",p:[3,84,161]},":"]}],n:50,r:"label",p:[2,3,64]}," ",{t:4,f:[{t:16,p:[6,5,210]}],n:50,r:"nowrap",p:[5,3,191]},{t:4,n:51,f:[{p:[8,5,235],t:7,e:"div",a:{"class":"content",style:[{t:4,f:["float:right;"],r:"right",p:[8,33,263]}]},f:[{t:16,p:[9,7,304]}]}],r:"nowrap"}]}]},e.exports=a.extend(r.exports)},{205:205}],214:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"div",a:{"class":"subdisplay"},f:[{t:4,f:[{p:[3,5,45],t:7,e:"header",f:[{p:[4,7,60],t:7,e:"h4",f:[{t:2,r:"title",p:[4,11,64]}]}," ",{t:4,f:[{t:16,n:"button",p:[5,21,99]}],n:50,r:"button",p:[5,7,85]}]}],n:50,r:"title",p:[2,3,27]}," ",{p:[8,3,149],t:7,e:"article",f:[{t:16,p:[9,5,163]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],215:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={oninit:function(){var t=this;this.set("active",this.findComponent("tab").get("name")),this.on("switch",function(e){t.set("active",e.node.textContent.trim())}),this.observe("active",function(e,n,a){for(var r=t.findAllComponents("tab"),i=Array.isArray(r),o=0,r=i?r:r[Symbol.iterator]();;){var s;if(i){if(o>=r.length)break;s=r[o++]}else{if(o=r.next(),o.done)break;s=o.value}var p=s;p.set("shown",p.get("name")===e)}})}}}(r),r.exports.template={v:3,t:[" "," ",{p:[20,1,524],t:7,e:"header",f:[{t:4,f:[{p:[22,5,556],t:7,e:"ui-button",a:{pane:[{t:2,r:".",p:[22,22,573]}]},v:{press:"switch"},f:[{t:2,r:".",p:[22,47,598]}]}],n:52,r:"tabs",p:[21,3,536]}]}," ",{p:[25,1,641],t:7,e:"ui-display",f:[{t:8,r:"content",p:[26,3,657]}]}]},r.exports.components=r.exports.components||{};var i={tab:t(216)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{205:205,216:216}],216:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{t:16,p:[2,3,17]}],n:50,r:"shown",p:[1,1,0]}]},e.exports=a.extend(r.exports)},{205:205}],217:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(301),a=t(300),r=t(302);e.exports={computed:{visualStatus:function(){switch(this.get("config.status")){case n.UI_INTERACTIVE:return"good";case n.UI_UPDATE:return"average";case n.UI_DISABLED:return"bad";default:return"bad"}}},oninit:function(){var t=this,e=r.drag.bind(this),n=function(e){return t.set({drag:!1,x:null,y:null})};this.observe("config.fancy",function(r,i,o){(0,a.winset)(t.get("config.window"),"titlebar",!r&&t.get("config.titlebar")),r?(document.addEventListener("mousemove",e),document.addEventListener("mouseup",n)):(document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",n))}),this.on({drag:function(){this.toggle("drag")},close:function(){(0,a.winset)(this.get("config.window"),"is-visible",!1),window.location.href=(0,a.href)({command:"uiclose "+this.get("config.ref")},"winset")},minimize:function(){(0,a.winset)(this.get("config.window"),"is-minimized",!0)}})}}}(r),r.exports.template={v:3,t:[" ",{t:4,f:[{p:[50,3,1391],t:7,e:"header",a:{"class":"titlebar"},v:{mousedown:"drag"},f:[{p:[51,5,1441],t:7,e:"i",a:{"class":["statusicon fa fa-eye fa-2x ",{t:2,r:"visualStatus",p:[51,42,1478]}]}}," ",{p:[52,5,1505],t:7,e:"span",a:{"class":"title"},f:[{t:16,p:[52,25,1525]}]}," ",{t:4,f:[{p:[54,7,1573],t:7,e:"i",a:{"class":"minimize fa fa-minus fa-2x"},v:{click:"minimize"}}," ",{p:[55,7,1642],t:7,e:"i",a:{"class":"close fa fa-close fa-2x"},v:{click:"close"}}],n:50,r:"config.fancy",p:[53,5,1546]}]}],n:50,r:"config.titlebar",p:[49,1,1365]}]},e.exports=a.extend(r.exports)},{205:205,300:300,301:301,302:302}],218:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";var e=[11,10,9,8];t.exports={data:{userAgent:navigator.userAgent},computed:{ie:function(){if(document.documentMode)return document.documentMode;for(var t in e){var n=document.createElement("div");if(n.innerHTML="",n.getElementsByTagName("span").length)return t}}},oninit:function(){var t=this;this.on("debug",function(){return t.toggle("debug")})}}}(r),r.exports.template={v:3,t:[" ",{t:4,f:[{p:[27,3,636],t:7,e:"ui-notice",f:[{p:[28,5,652],t:7,e:"span",f:["You have an old (IE",{t:2,r:"ie",p:[28,30,677]},"), end-of-life (click 'EOL Info' for more information) version of Internet Explorer installed."]},{p:[28,137,784],t:7,e:"br"}," ",{p:[29,5,794],t:7,e:"span",f:["To upgrade, click 'Upgrade IE' to download IE11 from Microsoft."]},{p:[29,81,870],t:7,e:"br"}," ",{p:[30,5,880],t:7,e:"span",f:["If you are unable to upgrade directly, click 'IE VMs' to download a VM with IE11 or Edge from Microsoft."]},{p:[30,122,997],t:7,e:"br"}," ",{p:[31,5,1007],t:7,e:"span",f:["Otherwise, click 'No Frills' below to disable potentially incompatible features (and this message)."]}," ",{p:[32,5,1124],t:7,e:"hr"}," ",{p:[33,5,1134],t:7,e:"ui-button",a:{icon:"close",action:"tgui:nofrills"},f:["No Frills"]}," ",{p:[34,5,1207],t:7,e:"ui-button",a:{icon:"internet-explorer",action:"tgui:link",params:'{"url": "http://windows.microsoft.com/en-us/internet-explorer/download-ie"}'},f:["Upgrade IE"]}," ",{p:[36,5,1381],t:7,e:"ui-button",a:{icon:"edge",action:"tgui:link",params:'{"url": "https://dev.windows.com/en-us/microsoft-edge/tools/vms"}'},f:["IE VMs"]}," ",{p:[38,5,1528],t:7,e:"ui-button",a:{icon:"info",action:"tgui:link",params:'{"url": "https://support.microsoft.com/en-us/lifecycle#gp/Microsoft-Internet-Explorer"}'},f:["EOL Info"]}," ",{p:[40,5,1699],t:7,e:"ui-button",a:{icon:"bug"},v:{press:"debug"},f:["Debug Info"]}," ",{t:4,f:[{p:[42,7,1785],t:7,e:"hr"}," ",{p:[43,7,1797],t:7,e:"span",f:["Detected: IE",{t:2,r:"ie",p:[43,25,1815]}]},{p:[43,38,1828],t:7,e:"br"}," ",{p:[44,7,1840],t:7,e:"span",f:["User Agent: ",{t:2,r:"userAgent",p:[44,25,1858]}]}],n:50,r:"debug",p:[41,5,1765]}]}],n:50,x:{r:["config.fancy","ie"],s:"_0&&_1&&_1<11"},p:[26,1,596]}]},e.exports=a.extend(r.exports)},{205:205}],219:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{healthState:function(){var t=this.get("data.health");return t>70?"good":t>50?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[15,1,261],t:7,e:"div",a:{style:"float: left"},f:[{p:[16,2,288],t:7,e:"div",a:{"class":"item"},f:[{p:[17,3,309],t:7,e:"table",f:[{p:[17,10,316],t:7,e:"tr",f:[{t:4,f:[{p:[19,4,381],t:7,e:"td",f:[{p:[19,8,385],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[19,18,395]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[18,3,323]}," ",{t:4,f:[{p:[22,4,494],t:7,e:"td",f:[{p:[22,8,498],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[22,11,501]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[21,3,433]}," ",{t:4,f:[{p:[25,4,573],t:7,e:"td",f:[{p:[25,8,577],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[25,18,587]}]}}]}],n:50,r:"data.PC_ntneticon",p:[24,3,544]}," ",{t:4,f:[{p:[28,4,654],t:7,e:"td",f:[{p:[28,8,658],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[28,18,668]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[27,3,623]}," ",{t:4,f:[{p:[31,4,737],t:7,e:"td",f:[{p:[31,8,741], t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[31,11,744]},{p:[31,34,767],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[30,3,706]}," ",{t:4,f:[{p:[34,4,819],t:7,e:"td",f:[{p:[34,8,823],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[34,18,833]}]}}]}],n:52,r:"data.PC_programheaders",p:[33,3,783]}]}]}]}]}," ",{p:[39,1,882],t:7,e:"div",a:{style:"float: right"},f:[{p:[40,2,910],t:7,e:"table",f:[{p:[40,9,917],t:7,e:"tr",f:[{p:[41,3,924],t:7,e:"td",f:[{p:[41,7,928],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[43,4,1018],t:7,e:"td",f:[{p:[43,8,1022],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[44,4,1078],t:7,e:"td",f:[{p:[44,8,1082],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[42,3,983]}]}]}]}]}," ",{p:[48,1,1170],t:7,e:"div",a:{style:"clear: both"},f:[{t:4,f:[{p:[52,3,1223],t:7,e:"ui-notice",f:[{p:[53,5,1239],t:7,e:"span",f:["Reconstruction in progress!"]}]}],n:50,r:"data.restoring",p:[51,1,1198]},{p:[58,1,1305],t:7,e:"ui-display",f:[{p:[60,1,1319],t:7,e:"div",a:{"class":"item"},f:[{p:[61,3,1340],t:7,e:"div",a:{"class":"itemLabel"},f:["Inserted AI:"]}," ",{p:[64,3,1389],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[65,2,1416],t:7,e:"ui-button",a:{icon:"eject",action:"PRG_eject",state:[{t:2,x:{r:["data.nocard"],s:'_0?"disabled":null'},p:[65,52,1466]}]},f:[{t:2,x:{r:["data.name"],s:'_0?_0:"---"'},p:[65,89,1503]}]}]}]}," ",{t:4,f:[{p:[70,2,1586],t:7,e:"b",f:["ERROR: ",{t:2,r:"data.error",p:[70,12,1596]}]}],n:50,r:"data.error",p:[69,1,1566]},{t:4,n:51,f:[{p:[72,2,1625],t:7,e:"h2",f:["System Status"]}," ",{p:[73,2,1649],t:7,e:"div",a:{"class":"item"},f:[{p:[74,3,1670],t:7,e:"div",a:{"class":"itemLabel"},f:["Current AI:"]}," ",{p:[77,3,1720],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.name",p:[78,4,1749]}]}," ",{p:[80,3,1774],t:7,e:"div",a:{"class":"itemLabel"},f:["Status:"]}," ",{p:[83,3,1820],t:7,e:"div",a:{"class":"itemContent"},f:[{t:4,f:["Nonfunctional"],n:50,r:"data.isDead",p:[84,4,1849]},{t:4,n:51,f:["Functional"],r:"data.isDead"}]}," ",{p:[90,3,1936],t:7,e:"div",a:{"class":"itemLabel"},f:["System Integrity:"]}," ",{p:[93,3,1992],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[94,4,2021],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.health",p:[94,37,2054]}],state:[{t:2,r:"healthState",p:[95,11,2081]}]},f:[{t:2,x:{r:["adata.health"],s:"Math.round(_0)"},p:[95,28,2098]},"%"]}]}," ",{p:[97,3,2151],t:7,e:"div",a:{"class":"itemLabel"},f:["Active Laws:"]}," ",{p:[100,3,2202],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[101,4,2231],t:7,e:"table",f:[{t:4,f:[{p:[103,6,2271],t:7,e:"tr",f:[{p:[103,10,2275],t:7,e:"td",f:[{p:[103,14,2279],t:7,e:"span",a:{"class":"highlight"},f:[{t:2,r:".",p:[103,38,2303]}]}]}]}],n:52,r:"data.ai_laws",p:[102,5,2243]}]}]}," ",{p:[107,2,2352],t:7,e:"ui-section",a:{label:"Operations"},f:[{p:[108,3,2386],t:7,e:"ui-button",a:{icon:"plus",style:[{t:2,x:{r:["data.restoring"],s:'_0?"disabled":null'},p:[108,33,2416]}],action:"PRG_beginReconstruction"},f:["Begin Reconstruction"]}]}]}],r:"data.error"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],220:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[" "," "," "," "," ",{p:[7,1,261],t:7,e:"ui-notice",f:[{t:4,f:[{p:[9,5,304],t:7,e:"ui-section",a:{label:"Interface Lock"},f:[{p:[10,7,346],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.locked"],s:'_0?"lock":"unlock"'},p:[10,24,363]}],action:"lock"},f:[{t:2,x:{r:["data.locked"],s:'_0?"Engaged":"Disengaged"'},p:[10,75,414]}]}]}],n:50,r:"data.siliconUser",p:[8,3,275]},{t:4,n:51,f:[{p:[13,5,502],t:7,e:"span",f:["Swipe an ID card to ",{t:2,x:{r:["data.locked"],s:'_0?"unlock":"lock"'},p:[13,31,528]}," this interface."]}],r:"data.siliconUser"}]}," ",{p:[16,1,610],t:7,e:"status"}," ",{t:4,f:[{t:4,f:[{p:[19,7,701],t:7,e:"ui-display",a:{title:"Air Controls"},f:[{p:[20,9,743],t:7,e:"ui-section",f:[{p:[21,11,766],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.atmos_alarm"],s:'_0?"exclamation-triangle":"exclamation"'},p:[21,28,783]}],style:[{t:2,x:{r:["data.atmos_alarm"],s:'_0?"caution":null'},p:[21,98,853]}],action:[{t:2,x:{r:["data.atmos_alarm"],s:'_0?"reset":"alarm"'},p:[22,23,916]}]},f:["Area Atmosphere Alarm"]}]}," ",{p:[24,9,1022],t:7,e:"ui-section",f:[{p:[25,11,1045],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.mode"],s:'_0==3?"exclamation-triangle":"exclamation"'},p:[25,28,1062]}],style:[{t:2,x:{r:["data.mode"],s:'_0==3?"danger":null'},p:[25,96,1130]}],action:"mode",params:['{"mode": ',{t:2,x:{r:["data.mode"],s:"_0==3?1:3"},p:[26,44,1211]},"}"]},f:["Panic Siphon"]}]}," ",{p:[28,9,1295],t:7,e:"br"}," ",{p:[29,9,1309],t:7,e:"ui-section",f:[{p:[30,11,1332],t:7,e:"ui-button",a:{icon:"sign-out",action:"tgui:view",params:'{"screen": "vents"}'},f:["Vent Controls"]}]}," ",{p:[32,9,1463],t:7,e:"ui-section",f:[{p:[33,11,1486],t:7,e:"ui-button",a:{icon:"filter",action:"tgui:view",params:'{"screen": "scrubbers"}'},f:["Scrubber Controls"]}]}," ",{p:[35,9,1623],t:7,e:"ui-section",f:[{p:[36,11,1646],t:7,e:"ui-button",a:{icon:"cog",action:"tgui:view",params:'{"screen": "modes"}'},f:["Operating Mode"]}]}," ",{p:[38,9,1773],t:7,e:"ui-section",f:[{p:[39,11,1796],t:7,e:"ui-button",a:{icon:"bar-chart",action:"tgui:view",params:'{"screen": "thresholds"}'},f:["Alarm Thresholds"]}]}]}],n:50,x:{r:["config.screen"],s:'_0=="home"'},p:[18,3,663]},{t:4,n:51,f:[{t:4,n:50,x:{r:["config.screen"],s:'_0=="vents"'},f:[{p:[43,5,1990],t:7,e:"vents"}]},{t:4,n:50,x:{r:["config.screen"],s:'(!(_0=="vents"))&&(_0=="scrubbers")'},f:[" ",{p:[45,5,2045],t:7,e:"scrubbers"}]},{t:4,n:50,x:{r:["config.screen"],s:'(!(_0=="vents"))&&((!(_0=="scrubbers"))&&(_0=="modes"))'},f:[" ",{p:[47,5,2100],t:7,e:"modes"}]},{t:4,n:50,x:{r:["config.screen"],s:'(!(_0=="vents"))&&((!(_0=="scrubbers"))&&((!(_0=="modes"))&&(_0=="thresholds")))'},f:[" ",{p:[49,5,2156],t:7,e:"thresholds"}]}],x:{r:["config.screen"],s:'_0=="home"'}}],n:50,x:{r:["data.locked","data.siliconUser"],s:"!_0||_1"},p:[17,1,620]}]},r.exports.components=r.exports.components||{};var i={vents:t(226),modes:t(222),thresholds:t(225),status:t(224),scrubbers:t(223)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{205:205,222:222,223:223,224:224,225:225,226:226}],221:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-button",a:{icon:"arrow-left",action:"tgui:view",params:'{"screen": "home"}'},f:["Back"]}]},e.exports=a.extend(r.exports)},{205:205}],222:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[" ",{p:{button:[{p:[5,5,111],t:7,e:"back"}]},t:7,e:"ui-display",a:{title:"Operating Modes",button:0},f:[" ",{t:4,f:[{p:[8,5,161],t:7,e:"ui-section",f:[{p:[9,7,180],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["selected"],s:'_0?"check-square-o":"square-o"'},p:[9,24,197]}],state:[{t:2,x:{r:["selected","danger"],s:'_0?_1?"danger":"selected":null'},p:[10,16,258]}],action:"mode",params:['{"mode": ',{t:2,r:"mode",p:[11,40,351]},"}"]},f:[{t:2,r:"name",p:[11,51,362]}]}]}],n:52,r:"data.modes",p:[7,3,136]}]}]},r.exports.components=r.exports.components||{};var i={back:t(221)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{205:205,221:221}],223:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[" ",{p:{button:[{p:[5,5,113],t:7,e:"back"}]},t:7,e:"ui-display",a:{title:"Scrubber Controls",button:0},f:[" ",{t:4,f:[{p:[8,5,167],t:7,e:"ui-subdisplay",a:{title:[{t:2,r:"long_name",p:[8,27,189]}]},f:[{p:[9,7,211],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[10,9,246],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["power"],s:'_0?"power-off":"close"'},p:[10,26,263]}],style:[{t:2,x:{r:["power"],s:'_0?"selected":null'},p:[10,68,305]}],action:"power",params:['{"id_tag": "',{t:2,r:"id_tag",p:[11,46,381]},'", "val": ',{t:2,x:{r:["power"],s:"+!_0"},p:[11,66,401]},"}"]},f:[{t:2,x:{r:["power"],s:'_0?"On":"Off"'},p:[11,80,415]}]}]}," ",{p:[13,7,478],t:7,e:"ui-section",a:{label:"Mode"},f:[{p:[14,9,512],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["scrubbing"],s:'_0?"filter":"sign-in"'},p:[14,26,529]}],style:[{t:2,x:{r:["scrubbing"],s:'_0?null:"danger"'},p:[14,71,574]}],action:"scrubbing",params:['{"id_tag": "',{t:2,r:"id_tag",p:[15,50,656]},'", "val": ',{t:2,x:{r:["scrubbing"],s:"+!_0"},p:[15,70,676]},"}"]},f:[{t:2,x:{r:["scrubbing"],s:'_0?"Scrubbing":"Siphoning"'},p:[15,88,694]}]}]}," ",{p:[17,7,774],t:7,e:"ui-section",a:{label:"Range"},f:[{p:[18,9,809],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["widenet"],s:'_0?"expand":"compress"'},p:[18,26,826]}],style:[{t:2,x:{r:["widenet"],s:'_0?"selected":null'},p:[18,70,870]}],action:"widenet",params:['{"id_tag": "',{t:2,r:"id_tag",p:[19,48,950]},'", "val": ',{t:2,x:{r:["widenet"],s:"+!_0"},p:[19,68,970]},"}"]},f:[{t:2,x:{r:["widenet"],s:'_0?"Expanded":"Normal"'},p:[19,84,986]}]}]}," ",{p:[21,7,1060],t:7,e:"ui-section",a:{label:"Filters"},f:[{p:[22,9,1097],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["filter_co2"],s:'_0?"check-square-o":"square-o"'},p:[22,26,1114]}],style:[{t:2,x:{r:["filter_co2"],s:'_0?"selected":null'},p:[22,81,1169]}],action:"co2_scrub",params:['{"id_tag": "',{t:2,r:"id_tag",p:[23,50,1254]},'", "val": ',{t:2,x:{r:["filter_co2"],s:"+!_0"},p:[23,70,1274]},"}"]},f:["CO2"]}," ",{p:[24,9,1317],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["filter_n2o"],s:'_0?"check-square-o":"square-o"'},p:[24,26,1334]}],style:[{t:2,x:{r:["filter_n2o"],s:'_0?"selected":null'},p:[24,81,1389]}],action:"n2o_scrub",params:['{"id_tag": "',{t:2,r:"id_tag",p:[25,50,1474]},'", "val": ',{t:2,x:{r:["filter_n2o"],s:"+!_0"},p:[25,70,1494]},"}"]},f:["N2O"]}," ",{p:[26,9,1537],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["filter_toxins"],s:'_0?"check-square-o":"square-o"'},p:[26,26,1554]}],style:[{t:2,x:{r:["filter_toxins"],s:'_0?"selected":null'},p:[26,84,1612]}],action:"tox_scrub",params:['{"id_tag": "',{t:2,r:"id_tag",p:[27,50,1700]},'", "val": ',{t:2,x:{r:["filter_toxins"],s:"+!_0"},p:[27,70,1720]},"}"]},f:["Plasma"]}," ",{p:[28,3,1763],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["filter_bz"],s:'_0?"check-square-o":"square-o"'},p:[28,20,1780]}],style:[{t:2,x:{r:["filter_bz"],s:'_0?"selected":null'},p:[28,74,1834]}],action:"bz_scrub",params:['{"id_tag": "',{t:2,r:"id_tag",p:[29,43,1911]},'", "val": ',{t:2,x:{r:["filter_bz"],s:"+!_0"},p:[29,63,1931]},"}"]},f:["BZ"]}," ",{p:[30,3,1966],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["filter_freon"],s:'_0?"check-square-o":"square-o"'},p:[30,20,1983]}],style:[{t:2,x:{r:["filter_freon"],s:'_0?"selected":null'},p:[30,77,2040]}],action:"freon_scrub",params:['{"id_tag": "',{t:2,r:"id_tag",p:[31,46,2123]},'", "val": ',{t:2,x:{r:["filter_freon"],s:"+!_0"},p:[31,66,2143]},"}"]},f:["Freon"]}," ",{p:[32,3,2184],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["filter_water_vapor"],s:'_0?"check-square-o":"square-o"'},p:[32,20,2201]}],style:[{t:2,x:{r:["filter_water_vapor"],s:'_0?"selected":null'},p:[32,83,2264]}],action:"water_vapor_scrub",params:['{"id_tag": "',{t:2,r:"id_tag",p:[33,52,2359]},'", "val": ',{t:2,x:{r:["filter_water_vapor"],s:"+!_0"},p:[33,72,2379]},"}"]},f:["Water Vapor"]}]}]}],n:52,r:"data.scrubbers",p:[7,3,138]},{t:4,n:51,f:[{p:[37,5,2486],t:7,e:"span",a:{"class":"bad"},f:["Error: No scrubbers connected."]}],r:"data.scrubbers"}]}]},r.exports.components=r.exports.components||{};var i={back:t(221)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{205:205,221:221}],224:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Air Status"},f:[{t:4,f:[{t:4,f:[{p:[4,7,107],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[4,26,126]}]},f:[{p:[5,6,142],t:7,e:"span",a:{"class":[{t:2,x:{r:["danger_level"],s:'_0==2?"bad":_0==1?"average":"good"'},p:[5,19,155]}]},f:[{t:2,x:{r:["value"],s:"Math.fixed(_0,2)"},p:[6,5,232]},{t:2,r:"unit",p:[6,29,256]}]}]}],n:52,r:"adata.environment_data",p:[3,5,68]}," ",{p:[10,5,313],t:7,e:"ui-section",a:{label:"Local Status"},f:[{p:[11,7,353],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.danger_level"],s:'_0==2?"bad bold":_0==1?"average bold":"good"'},p:[11,20,366]}]},f:[{t:2,x:{r:["data.danger_level"],s:'_0==2?"Danger (Internals Required)":_0==1?"Caution":"Optimal"'},p:[12,6,464]}]}]}," ",{p:[15,5,605],t:7,e:"ui-section",a:{label:"Area Status"},f:[{p:[16,7,644],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.atmos_alarm","data.fire_alarm"],s:'_0||_1?"bad bold":"good"'},p:[16,20,657]}]},f:[{t:2,x:{r:["data.atmos_alarm","fire_alarm"],s:'_0?"Atmosphere Alarm":_1?"Fire Alarm":"Nominal"'},p:[17,8,728]}]}]}],n:50,r:"data.environment_data",p:[2,3,34]},{t:4,n:51,f:[{p:[21,5,856],t:7,e:"ui-section",a:{label:"Warning"},f:[{p:[22,7,891],t:7,e:"span",a:{"class":"bad bold"},f:["Cannot obtain air sample for analysis."]}]}],r:"data.environment_data"}," ",{t:4,f:[{p:[26,5,1015],t:7,e:"ui-section",a:{label:"Warning"},f:[{p:[27,7,1050],t:7,e:"span",a:{"class":"bad bold"},f:["Safety measures offline. Device may exhibit abnormal behavior."]}]}],n:50,r:"data.emagged",p:[25,3,990]}]}]},e.exports=a.extend(r.exports)},{205:205}],225:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.css=" th, td {\n padding-right: 16px;\n text-align: left;\n }",r.exports.template={v:3,t:[" ",{p:{button:[{p:[5,5,112],t:7,e:"back"}]},t:7,e:"ui-display",a:{title:"Alarm Thresholds",button:0},f:[" ",{p:[7,3,137],t:7,e:"table",f:[{p:[8,5,149],t:7,e:"thead",f:[{p:[8,12,156],t:7,e:"tr",f:[{p:[9,7,167],t:7,e:"th"}," ",{p:[10,7,183],t:7,e:"th",f:[{p:[10,11,187],t:7,e:"span",a:{"class":"bad"},f:["min2"]}]}," ",{p:[11,7,228],t:7,e:"th",f:[{p:[11,11,232],t:7,e:"span",a:{"class":"average"},f:["min1"]}]}," ",{p:[12,7,277],t:7,e:"th",f:[{p:[12,11,281],t:7,e:"span",a:{"class":"average"},f:["max1"]}]}," ",{p:[13,7,326],t:7,e:"th",f:[{p:[13,11,330],t:7,e:"span",a:{"class":"bad"},f:["max2"]}]}]}]}," ",{p:[15,5,387],t:7,e:"tbody",f:[{t:4,f:[{p:[16,32,426],t:7,e:"tr",f:[{p:[17,9,439],t:7,e:"th",f:[{t:3,r:"name",p:[17,13,443]}]}," ",{t:4,f:[{p:[18,27,485],t:7,e:"td",f:[{p:[19,11,500],t:7,e:"ui-button",a:{action:"threshold",params:['{"env": "',{t:2,r:"env",p:[19,58,547]},'", "var": "',{t:2,r:"val",p:[19,76,565]},'"}']},f:[{t:2,x:{r:["selected"],s:"Math.fixed(_0,2)"},p:[19,87,576]}]}]}],n:52,r:"settings",p:[18,9,467]}]}],n:52,r:"data.thresholds",p:[16,7,401]}]}," ",{p:[23,3,675],t:7,e:"table",f:[]}]}]}," "]},r.exports.components=r.exports.components||{};var i={back:t(221)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{205:205,221:221}],226:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[" ",{p:{button:[{p:[5,5,109],t:7,e:"back"}]},t:7,e:"ui-display",a:{title:"Vent Controls",button:0},f:[" ",{t:4,f:[{p:[8,5,159],t:7,e:"ui-subdisplay",a:{title:[{t:2,r:"long_name",p:[8,27,181]}]},f:[{p:[9,7,203],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[10,9,238],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["power"],s:'_0?"power-off":"close"'},p:[10,26,255]}],style:[{t:2,x:{r:["power"],s:'_0?"selected":null'},p:[10,68,297]}],action:"power",params:['{"id_tag": "',{t:2,r:"id_tag",p:[11,46,373]},'", "val": ',{t:2,x:{r:["power"],s:"+!_0"},p:[11,66,393]},"}"]},f:[{t:2,x:{r:["power"],s:'_0?"On":"Off"'},p:[11,80,407]}]}]}," ",{p:[13,7,470],t:7,e:"ui-section",a:{label:"Mode"},f:[{p:[14,9,504],t:7,e:"span",f:[{t:2,x:{r:["direction"],s:'_0=="release"?"Pressurizing":"Siphoning"'},p:[14,15,510]}]}]}," ",{p:[16,7,601],t:7,e:"ui-section",a:{label:"Pressure Regulator"},f:[{p:[17,9,649],t:7,e:"ui-button",a:{icon:"sign-in",style:[{t:2,x:{r:["incheck"],s:'_0?"selected":null'},p:[17,42,682]}],action:"incheck",params:['{"id_tag": "',{t:2,r:"id_tag",p:[18,48,762]},'", "val": ',{t:2,r:"checks",p:[18,68,782]},"}"]},f:["Internal"]}," ",{p:[19,9,824],t:7,e:"ui-button",a:{icon:"sign-out",style:[{t:2,x:{r:["excheck"],s:'_0?"selected":null'},p:[19,43,858]}],action:"excheck",params:['{"id_tag": "',{t:2,r:"id_tag",p:[20,48,938]},'", "val": ',{t:2,r:"checks",p:[20,68,958]},"}"]},f:["External"]}]}," ",{p:[22,7,1018],t:7,e:"ui-section",a:{label:"Target Pressure"},f:[{p:[23,9,1063],t:7,e:"ui-button",a:{icon:"pencil",action:"set_external_pressure",params:['{"id_tag": "',{t:2,r:"id_tag",p:[24,31,1149]},'"}']},f:[{t:2,x:{r:["external"],s:"Math.fixed(_0)"},p:[24,45,1163]}]}," ",{p:[25,9,1208],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["extdefault"],s:'_0?"disabled":null'},p:[25,42,1241]}],action:"reset_external_pressure",params:['{"id_tag": "',{t:2,r:"id_tag",p:[26,31,1340]},'"}']},f:["Reset"]}]}]}],n:52,r:"data.vents",p:[7,3,134]},{t:4,n:51,f:[{p:[30,5,1428],t:7,e:"span",a:{"class":"bad"},f:["Error: No vents connected."]}],r:"data.vents"}]}]},r.exports.components=r.exports.components||{};var i={back:t(221)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{205:205,221:221}],227:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.css=" table {\n width: 100%;\n border-spacing: 2px;\n }\n th {\n text-align: left;\n }\n td {\n vertical-align: top;\n }\n td .button {\n margin-top: 4px\n }",r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,3,15],t:7,e:"ui-section",f:[{p:[3,5,32],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.oneAccess"],s:'_0?"unlock":"lock"'},p:[3,22,49]}],action:"one_access"},f:[{t:2,x:{r:["data.oneAccess"],s:'_0?"One":"All"'},p:[3,82,109]}," Required"]}," ",{p:[4,5,169],t:7,e:"ui-button",a:{icon:"refresh",action:"clear"},f:["Clear"]}]}," ",{p:[6,3,246],t:7,e:"hr"}," ",{p:[7,3,254],t:7,e:"table",f:[{p:[8,3,264],t:7,e:"thead",f:[{p:[9,4,275],t:7,e:"tr",f:[{t:4,f:[{p:[10,5,306],t:7,e:"th",f:[{p:[10,9,310],t:7,e:"span",a:{"class":"highlight bold"},f:[{t:2,r:"name",p:[10,38,339]}]}]}],n:52,r:"data.regions",p:[9,8,279]}]}]}," ",{p:[13,3,391],t:7,e:"tbody",f:[{p:[14,4,402],t:7,e:"tr",f:[{t:4,f:[{p:[15,5,433],t:7,e:"td",f:[{t:4,f:[{p:[16,11,466],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["req"],s:'_0?"check-square-o":"square-o"'},p:[16,28,483]}],style:[{t:2,x:{r:["req"],s:'_0?"selected":null'},p:[16,76,531]}],action:"set",params:['{"access": "',{t:2,r:"id",p:[17,46,605]},'"}']},f:[{t:2,r:"name",p:[17,56,615]}]}," ",{p:[18,9,644],t:7,e:"br"}],n:52,r:"accesses",p:[15,9,437]}]}],n:52,r:"data.regions",p:[14,8,406]}]}]}]}]}," "]},e.exports=a.extend(r.exports)},{205:205}],228:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{powerState:function(t){switch(t){case 2:return"good";case 1:return"average";default:return"bad"}}},computed:{malfAction:function(){switch(this.get("data.malfStatus")){case 1:return"hack";case 2:return"occupy";case 3:return"deoccupy"}},malfButton:function(){switch(this.get("data.malfStatus")){case 1:return"Override Programming";case 2:case 4:return"Shunt Core Process";case 3:return"Return to Main Core"}},malfIcon:function(){switch(this.get("data.malfStatus")){case 1:return"terminal";case 2:case 4:return"caret-square-o-down";case 3:return"caret-square-o-left"}},powerCellStatusState:function(){var t=this.get("data.powerCellStatus");return t>50?"good":t>25?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{t:4,f:[{p:[46,2,1161],t:7,e:"ui-notice",f:[{p:[47,3,1175],t:7,e:"b",f:[{p:[47,6,1178],t:7,e:"h3",f:["SYSTEM FAILURE"]}]}," ",{p:[48,3,1208],t:7,e:"i",f:["I/O regulators malfunction detected! Waiting for system reboot..."]},{p:[48,75,1280],t:7,e:"br"}," Automatic reboot in ",{t:2,r:"data.failTime",p:[49,23,1307]}," seconds... ",{p:[50,3,1338],t:7,e:"ui-button",a:{icon:"refresh",action:"reboot"},f:["Reboot Now"]},{p:[50,67,1402],t:7,e:"br"},{p:[50,71,1406],t:7,e:"br"},{p:[50,75,1410],t:7,e:"br"}]}],n:50,r:"data.failTime",p:[45,1,1138]},{t:4,n:51,f:[{p:[53,2,1439],t:7,e:"ui-notice",f:[{t:4,f:[{p:[55,3,1481],t:7,e:"ui-section",a:{label:"Interface Lock"},f:[{p:[56,5,1521],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.locked"],s:'_0?"lock":"unlock"'},p:[56,22,1538]}],action:"lock"},f:[{t:2,x:{r:["data.locked"],s:'_0?"Engaged":"Disengaged"'},p:[56,73,1589]}]}]}],n:50,r:"data.siliconUser",p:[54,4,1454]},{t:4,n:51,f:[{p:[59,3,1674],t:7,e:"span",f:["Swipe an ID card to ",{t:2,x:{r:["data.locked"],s:'_0?"unlock":"lock"'},p:[59,29,1700]}," this interface."]}],r:"data.siliconUser"}]}," ",{p:[62,2,1785],t:7,e:"ui-display",a:{title:"Power Status"},f:[{p:[63,4,1822],t:7,e:"ui-section",a:{label:"Main Breaker"},f:[{t:4,f:[{p:[65,5,1903],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.isOperating"],s:'_0?"good":"bad"'},p:[65,18,1916]}]},f:[{t:2,x:{r:["data.isOperating"],s:'_0?"On":"Off"'},p:[65,57,1955]}]}],n:50,x:{r:["data.locked","data.siliconUser"],s:"_0&&!_1"},p:[64,3,1858]},{t:4,n:51,f:[{p:[67,5,2013],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.isOperating"],s:'_0?"power-off":"close"'},p:[67,22,2030]}],style:[{t:2,x:{r:["data.isOperating"],s:'_0?"selected":null'},p:[67,75,2083]}],action:"breaker"},f:[{t:2,x:{r:["data.isOperating"],s:'_0?"On":"Off"'},p:[68,21,2145]}]}],x:{r:["data.locked","data.siliconUser"],s:"_0&&!_1"}}]}," ",{p:[71,4,2223],t:7,e:"ui-section",a:{label:"External Power"},f:[{p:[72,3,2261],t:7,e:"span",a:{"class":[{t:2,x:{r:["powerState","data.externalPower"],s:"_0(_1)"},p:[72,16,2274]}]},f:[{t:2,x:{r:["data.externalPower"],s:'_0==2?"Good":_0==1?"Low":"None"'},p:[72,52,2310]}]}]}," ",{p:[74,4,2417],t:7,e:"ui-section",a:{label:"Power Cell"},f:[{t:4,f:[{p:[76,5,2492],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.powerCellStatus",p:[76,38,2525]}],state:[{t:2,r:"powerCellStatusState",p:[76,71,2558]}]},f:[{t:2,x:{r:["adata.powerCellStatus"],s:"Math.fixed(_0)"},p:[76,97,2584]},"%"]}],n:50,x:{r:["data.powerCellStatus"],s:"_0!=null"},p:[75,3,2451]},{t:4,n:51,f:[{p:[78,5,2647],t:7,e:"span",a:{"class":"bad"},f:["Removed"]}],x:{r:["data.powerCellStatus"],s:"_0!=null"}}]}," ",{t:4,f:[{p:[82,3,2749],t:7,e:"ui-section",a:{label:"Charge Mode"},f:[{t:4,f:[{p:[84,4,2830],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.chargeMode"],s:'_0?"good":"bad"'},p:[84,17,2843]}]},f:[{t:2,x:{r:["data.chargeMode"],s:'_0?"Auto":"Off"'},p:[84,55,2881]}]}],n:50,x:{r:["data.locked","data.siliconUser"],s:"_0&&!_1"},p:[83,5,2786]},{t:4,n:51,f:[{p:[86,4,2941],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.chargeMode"],s:'_0?"refresh":"close"'},p:[86,21,2958]}],style:[{t:2,x:{r:["data.chargeMode"],s:'_0?"selected":null'},p:[86,71,3008]}],action:"charge"},f:[{t:2,x:{r:["data.chargeMode"],s:'_0?"Auto":"Off"'},p:[87,22,3070]}]}],x:{r:["data.locked","data.siliconUser"],s:"_0&&!_1"}}," [",{p:[90,6,3147],t:7,e:"span",a:{"class":[{t:2,x:{r:["powerState","data.chargingStatus"],s:"_0(_1)"},p:[90,19,3160]}]},f:[{t:2,x:{r:["data.chargingStatus"],s:'_0==2?"Fully Charged":_0==1?"Charging":"Not Charging"'},p:[90,56,3197]}]},"]"]}],n:50,x:{r:["data.powerCellStatus"],s:"_0!=null"},p:[81,4,2710]}]}," ",{p:[94,2,3352],t:7,e:"ui-display",a:{title:"Power Channels"},f:[{t:4,f:[{p:[96,3,3422],t:7,e:"ui-section",a:{label:[{t:2,r:"title",p:[96,22,3441]}],nowrap:0},f:[{p:[97,5,3464],t:7,e:"div",a:{"class":"content"},f:[{t:2,x:{r:["@index","adata.powerChannels"],s:"Math.round(_1[_0].powerLoad)"},p:[97,26,3485]}," W"]}," ",{p:[98,5,3551],t:7,e:"div",a:{"class":"content"},f:[{p:[98,26,3572],t:7,e:"span",a:{"class":[{t:2,x:{r:["status"],s:'_0>=2?"good":"bad"'},p:[98,39,3585]}]},f:[{t:2,x:{r:["status"],s:'_0>=2?"On":"Off"'},p:[98,73,3619]}]}]}," ",{p:[99,5,3667],t:7,e:"div",a:{"class":"content"},f:["[",{p:[99,27,3689],t:7,e:"span",f:[{t:2,x:{r:["status"],s:'_0==1||_0==3?"Auto":"Manual"'},p:[99,33,3695]}]},"]"]}," ",{p:[100,5,3764],t:7,e:"div",a:{"class":"content",style:"float:right"},f:[{t:4,f:[{p:[102,6,3855],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["status"],s:'_0==1||_0==3?"selected":null'},p:[102,39,3888]}],action:"channel",params:[{t:2,r:"topicParams.auto",p:[103,30,3969]}]},f:["Auto"]}," ",{p:[104,6,4013],t:7,e:"ui-button",a:{icon:"power-off",state:[{t:2,x:{r:["status"],s:'_0==2?"selected":null'},p:[104,41,4048]}],action:"channel",params:[{t:2,r:"topicParams.on",p:[105,13,4114]}]},f:["On"]}," ",{p:[106,6,4154],t:7,e:"ui-button",a:{icon:"close",state:[{t:2,x:{r:["status"],s:'_0==0?"selected":null'},p:[106,37,4185]}],action:"channel",params:[{t:2,r:"topicParams.off",p:[107,13,4251]}]},f:["Off"]}],n:50,x:{r:["data.locked","data.siliconUser"],s:"!_0||_1"},p:[101,4,3809]}]}]}],n:52,r:"data.powerChannels",p:[95,4,3391]}," ",{p:[112,4,4342],t:7,e:"ui-section",a:{label:"Total Load"},f:[{p:[113,3,4376],t:7,e:"span",a:{"class":"bold"},f:[{t:2,x:{r:["adata.totalLoad"],s:"Math.round(_0)"},p:[113,22,4395]}," W"]}]}]}," ",{t:4,f:[{p:[117,4,4497],t:7,e:"ui-display",a:{title:"System Overrides"},f:[{p:[118,3,4537],t:7,e:"ui-button",a:{icon:"lightbulb-o",action:"overload"},f:["Overload"]}," ",{t:4,f:[{p:[120,5,4636],t:7,e:"ui-button",a:{icon:[{t:2,r:"malfIcon",p:[120,22,4653]}],state:[{t:2,x:{r:["data.malfStatus"],s:'_0==4?"disabled":null'},p:[120,43,4674]}],action:[{t:2,r:"malfAction",p:[120,97,4728]}]},f:[{t:2,r:"malfButton",p:[120,113,4744]}]}],n:50,r:"data.malfStatus",p:[119,3,4608]}]}],n:50,r:"data.siliconUser",p:[116,2,4469]}," ",{p:[124,2,4808],t:7,e:"ui-notice",f:[{p:[125,4,4823],t:7,e:"ui-section",a:{label:"Cover Lock"},f:[{t:4,f:[{p:[127,5,4902],t:7,e:"span",f:[{t:2,x:{r:["data.coverLocked"],s:'_0?"Engaged":"Disengaged"'},p:[127,11,4908]}]}],n:50,x:{r:["data.locked","data.siliconUser"],s:"_0&&!_1"},p:[126,3,4857]},{t:4,n:51,f:[{p:[129,5,4978],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.coverLocked"],s:'_0?"lock":"unlock"'},p:[129,22,4995]}],action:"cover"},f:[{t:2,x:{r:["data.coverLocked"],s:'_0?"Engaged":"Disengaged"'},p:[129,79,5052]}]}],x:{r:["data.locked","data.siliconUser"],s:"_0&&!_1"}}]}]}],r:"data.failTime"}]},e.exports=a.extend(r.exports)},{205:205}],229:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Alarms"},f:[{p:[2,3,31],t:7,e:"ul",f:[{t:4,f:[{p:[4,7,72],t:7,e:"li",f:[{p:[4,11,76],t:7,e:"ui-button",a:{icon:"close",style:"danger",action:"clear",params:['{"zone": "',{t:2,r:".",p:[4,83,148]},'"}']},f:[{t:2,r:".",p:[4,92,157]}]}]}],n:52,r:"data.priority",p:[3,5,41]},{t:4,n:51,f:[{p:[6,7,201],t:7,e:"li",f:[{p:[6,11,205],t:7,e:"span",a:{"class":"good"},f:["No Priority Alerts"]}]}],r:"data.priority"}," ",{t:4,f:[{p:[9,7,303],t:7,e:"li",f:[{p:[9,11,307],t:7,e:"ui-button",a:{icon:"close",style:"caution",action:"clear",params:['{"zone": "',{t:2,r:".",p:[9,84,380]},'"}']},f:[{t:2,r:".",p:[9,93,389]}]}]}],n:52,r:"data.minor",p:[8,5,275]},{t:4,n:51,f:[{p:[11,7,433],t:7,e:"li",f:[{p:[11,11,437],t:7,e:"span",a:{"class":"good"},f:["No Minor Alerts"]}]}],r:"data.minor"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],230:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:[{t:2,x:{r:["data.tank","data.sensors.0.long_name"],s:"_0?_1:null"},p:[1,20,19]}]},f:[{t:4,f:[{p:[3,5,102],t:7,e:"ui-subdisplay",a:{title:[{t:2,x:{r:["data.tank","long_name"],s:"!_0?_1:null"},p:[3,27,124]}]},f:[{p:[4,7,167],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[5,3,200],t:7,e:"span",f:[{t:2,x:{r:["pressure"],s:"Math.fixed(_0,2)"},p:[5,9,206]}," kPa"]}]}," ",{t:4,f:[{p:[8,9,302],t:7,e:"ui-section",a:{label:"Temperature"},f:[{p:[9,11,346],t:7,e:"span",f:[{t:2,x:{r:["temperature"],s:"Math.fixed(_0,2)"},p:[9,17,352]}," K"]}]}],n:50,r:"temperature",p:[7,7,273]}," ",{t:4,f:[{p:[13,9,462],t:7,e:"ui-section",a:{label:[{t:2,r:"id",p:[13,28,481]}]},f:[{p:[14,5,495],t:7,e:"span",f:[{t:2,x:{r:["."],s:"Math.fixed(_0,2)"},p:[14,11,501]},"%"]}]}],n:52,i:"id",r:"gases",p:[12,4,434]}]}],n:52,r:"adata.sensors",p:[2,3,73]}]}," ",{t:4,f:[{p:{button:[{p:[23,5,704],t:7,e:"ui-button",a:{icon:"refresh",action:"reconnect"},f:["Reconnect"]}]},t:7,e:"ui-display",a:{title:"Controls",button:0},f:[" ",{p:[25,5,792],t:7,e:"ui-section",a:{label:"Input Injector"},f:[{p:[26,7,835],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.inputting"],s:'_0?"power-off":"close"'},p:[26,24,852]}],style:[{t:2,x:{r:["data.inputting"],s:'_0?"selected":null'},p:[26,75,903]}],action:"input"},f:[{t:2,x:{r:["data.inputting"],s:'_0?"Injecting":"Off"'},p:[27,9,968]}]}]}," ",{p:[29,5,1044],t:7,e:"ui-section",a:{label:"Input Rate"},f:[{p:[30,7,1083],t:7,e:"span",f:[{t:2,x:{r:["adata.inputRate"],s:"Math.fixed(_0)"},p:[30,13,1089]}," L/s"]}]}," ",{p:[32,5,1156],t:7,e:"ui-section",a:{label:"Output Regulator"},f:[{p:[33,7,1201],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.outputting"],s:'_0?"power-off":"close"'},p:[33,24,1218]}],style:[{t:2,x:{r:["data.outputting"],s:'_0?"selected":null'},p:[33,76,1270]}],action:"output"},f:[{t:2,x:{r:["data.outputting"],s:'_0?"Open":"Closed"'},p:[34,9,1337]}]}]}," ",{p:[36,5,1412],t:7,e:"ui-section",a:{label:"Output Pressure"},f:[{p:[37,7,1456],t:7,e:"ui-button",a:{icon:"pencil",action:"pressure"},f:[{t:2,x:{r:["adata.outputPressure"],s:"Math.round(_0)"},p:[37,50,1499]}," kPa"]}]}]}],n:50,r:"data.tank",p:[20,1,618]}]},e.exports=a.extend(r.exports)},{205:205}],231:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,3,15],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[3,5,46],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[3,22,63]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":null'},p:[3,66,107]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[4,22,161]}]}]}," ",{p:[6,3,218],t:7,e:"ui-section",a:{label:"Output Pressure"},f:[{p:[7,5,259],t:7,e:"ui-button",a:{icon:"pencil",action:"pressure",params:'{"pressure": "input"}'},f:["Set"]}," ",{p:[8,5,353],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.pressure","data.max_pressure"],s:'_0==_1?"disabled":null'},p:[8,35,383]}],action:"pressure",params:'{"pressure": "max"}'},f:["Max"]}," ",{p:[9,5,510],t:7,e:"span",f:[{t:2,x:{r:["adata.pressure"],s:"Math.round(_0)"},p:[9,11,516]}," kPa"]}]}," ",{p:[11,3,576],t:7,e:"ui-section",a:{label:"Filter"},f:[{p:[12,5,608],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.filter_type"],s:'_0==""?"selected":null'},p:[12,23,626]}],action:"filter",params:'{"mode": ""}'},f:["Nothing"]}," ",{p:[14,5,742],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.filter_type"],s:'_0=="plasma"?"selected":null'},p:[14,23,760]}],action:"filter",params:'{"mode": "plasma"}'},f:["Plasma"]}," ",{p:[16,5,887],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.filter_type"],s:'_0=="o2"?"selected":null'},p:[16,23,905]}],action:"filter",params:'{"mode": "o2"}'},f:["O2"]}," ",{p:[18,5,1020],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.filter_type"],s:'_0=="n2"?"selected":null'},p:[18,23,1038]}],action:"filter",params:'{"mode": "n2"}'},f:["N2"]}," ",{p:[20,5,1153],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.filter_type"],s:'_0=="co2"?"selected":null'},p:[20,23,1171]}],action:"filter",params:'{"mode": "co2"}'},f:["CO2"]}," ",{p:[22,5,1289],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.filter_type"],s:'_0=="n2o"?"selected":null'},p:[22,23,1307]}],action:"filter",params:'{"mode": "n2o"}'},f:["N2O"]}," ",{p:[24,2,1422],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.filter_type"],s:'_0=="bz"?"selected":null'},p:[24,20,1440]}],action:"filter",params:'{"mode": "bz"}'},f:["BZ"]}," ",{p:[26,2,1553],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.filter_type"],s:'_0=="freon"?"selected":null'},p:[26,20,1571]}],action:"filter",params:'{"mode": "freon"}'},f:["Freon"]}," ",{p:[28,2,1693],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.filter_type"],s:'_0=="water_vapor"?"selected":null'},p:[28,20,1711]}],action:"filter",params:'{"mode": "water_vapor"}'},f:["Water Vapor"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],232:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,3,15],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[3,5,46],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[3,22,63]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":null'},p:[3,66,107]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[4,22,161]}]}]}," ",{p:[6,3,218],t:7,e:"ui-section",a:{label:"Output Pressure"},f:[{p:[7,5,259],t:7,e:"ui-button",a:{icon:"pencil",action:"pressure",params:'{"pressure": "input"}' },f:["Set"]}," ",{p:[8,5,353],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.set_pressure","data.max_pressure"],s:'_0==_1?"disabled":null'},p:[8,35,383]}],action:"pressure",params:'{"pressure": "max"}'},f:["Max"]}," ",{p:[9,5,514],t:7,e:"span",f:[{t:2,x:{r:["adata.set_pressure"],s:"Math.round(_0)"},p:[9,11,520]}," kPa"]}]}," ",{p:[11,3,584],t:7,e:"ui-section",a:{label:"Node 1"},f:[{p:[12,5,616],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.node1_concentration"],s:'_0==0?"disabled":null'},p:[12,44,655]}],action:"node1",params:'{"concentration": -0.1}'}}," ",{p:[14,5,770],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.node1_concentration"],s:'_0==0?"disabled":null'},p:[14,39,804]}],action:"node1",params:'{"concentration": -0.01}'}}," ",{p:[16,5,920],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.node1_concentration"],s:'_0==100?"disabled":null'},p:[16,38,953]}],action:"node1",params:'{"concentration": 0.01}'}}," ",{p:[18,5,1070],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.node1_concentration"],s:'_0==100?"disabled":null'},p:[18,43,1108]}],action:"node1",params:'{"concentration": 0.1}'}}," ",{p:[20,5,1224],t:7,e:"span",f:[{t:2,x:{r:["adata.node1_concentration"],s:"Math.round(_0)"},p:[20,11,1230]},"%"]}]}," ",{p:[22,3,1298],t:7,e:"ui-section",a:{label:"Node 2"},f:[{p:[23,5,1330],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.node2_concentration"],s:'_0==0?"disabled":null'},p:[23,44,1369]}],action:"node2",params:'{"concentration": -0.1}'}}," ",{p:[25,5,1484],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.node2_concentration"],s:'_0==0?"disabled":null'},p:[25,39,1518]}],action:"node2",params:'{"concentration": -0.01}'}}," ",{p:[27,5,1634],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.node2_concentration"],s:'_0==100?"disabled":null'},p:[27,38,1667]}],action:"node2",params:'{"concentration": 0.01}'}}," ",{p:[29,5,1784],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.node2_concentration"],s:'_0==100?"disabled":null'},p:[29,43,1822]}],action:"node2",params:'{"concentration": 0.1}'}}," ",{p:[31,5,1938],t:7,e:"span",f:[{t:2,x:{r:["adata.node2_concentration"],s:"Math.round(_0)"},p:[31,11,1944]},"%"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],233:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,3,15],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[3,5,46],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[3,22,63]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":null'},p:[3,66,107]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[4,22,161]}]}]}," ",{t:4,f:[{p:[7,5,244],t:7,e:"ui-section",a:{label:"Transfer Rate"},f:[{p:[8,7,285],t:7,e:"ui-button",a:{icon:"pencil",action:"rate",params:'{"rate": "input"}'},f:["Set"]}," ",{p:[9,7,373],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.rate","data.max_rate"],s:'_0==_1?"disabled":null'},p:[9,37,403]}],action:"transfer",params:'{"rate": "max"}'},f:["Max"]}," ",{p:[10,7,520],t:7,e:"span",f:[{t:2,x:{r:["adata.rate"],s:"Math.round(_0)"},p:[10,13,526]}," L/s"]}]}],n:50,r:"data.max_rate",p:[6,3,218]},{t:4,n:51,f:[{p:[13,5,597],t:7,e:"ui-section",a:{label:"Output Pressure"},f:[{p:[14,7,640],t:7,e:"ui-button",a:{icon:"pencil",action:"pressure",params:'{"pressure": "input"}'},f:["Set"]}," ",{p:[15,7,736],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.pressure","data.max_pressure"],s:'_0==_1?"disabled":null'},p:[15,37,766]}],action:"pressure",params:'{"pressure": "max"}'},f:["Max"]}," ",{p:[16,7,895],t:7,e:"span",f:[{t:2,x:{r:["adata.pressure"],s:"Math.round(_0)"},p:[16,13,901]}," kPa"]}]}],r:"data.max_rate"}]}]},e.exports=a.extend(r.exports)},{205:205}],234:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:{button:[{p:[3,5,65],t:7,e:"ui-button",a:{icon:"clock-o",style:[{t:2,x:{r:["data.timing"],s:'_0?"selected":null'},p:[3,38,98]}],action:[{t:2,x:{r:["data.timing"],s:'_0?"stop":"start"'},p:[3,83,143]}]},f:[{t:2,x:{r:["data.timing"],s:'_0?"Stop":"Start"'},p:[3,119,179]}]}," ",{p:[4,5,230],t:7,e:"ui-button",a:{icon:"lightbulb-o",action:"flash",style:[{t:2,x:{r:["data.flash_charging"],s:'_0?"disabled":null'},p:[4,57,282]}]},f:[{t:2,x:{r:["data.flash_charging"],s:'_0?"Recharging":"Flash"'},p:[4,102,327]}]}]},t:7,e:"ui-display",a:{title:"Cell Timer",button:0},f:[" ",{p:[6,3,405],t:7,e:"ui-section",f:[{p:[7,5,422],t:7,e:"ui-button",a:{icon:"fast-backward",action:"time",params:'{"adjust": -600}'}}," ",{p:[8,5,511],t:7,e:"ui-button",a:{icon:"backward",action:"time",params:'{"adjust": -100}'}}," ",{p:[9,5,595],t:7,e:"span",f:[{t:2,x:{r:["text","data.minutes"],s:"_0.zeroPad(_1,2)"},p:[9,11,601]},":",{t:2,x:{r:["text","data.seconds"],s:"_0.zeroPad(_1,2)"},p:[9,45,635]}]}," ",{p:[10,5,680],t:7,e:"ui-button",a:{icon:"forward",action:"time",params:'{"adjust": 100}'}}," ",{p:[11,5,762],t:7,e:"ui-button",a:{icon:"fast-forward",action:"time",params:'{"adjust": 600}'}}]}," ",{p:[13,3,863],t:7,e:"ui-section",f:[{p:[14,7,882],t:7,e:"ui-button",a:{icon:"hourglass-start",action:"preset",params:'{"preset": "short"}'},f:["Short"]}," ",{p:[15,7,985],t:7,e:"ui-button",a:{icon:"hourglass-start",action:"preset",params:'{"preset": "medium"}'},f:["Medium"]}," ",{p:[16,7,1090],t:7,e:"ui-button",a:{icon:"hourglass-start",action:"preset",params:'{"preset": "long"}'},f:["Long"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],235:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,22],t:7,e:"ui-notice",f:[{t:2,r:"data.notice",p:[3,5,38]}]}],n:50,r:"data.notice",p:[1,1,0]},{p:[6,1,77],t:7,e:"ui-display",a:{title:"Bluespace Artillery Control",button:0},f:[{t:4,f:[{p:[8,3,160],t:7,e:"ui-section",a:{label:"Target"},f:[{p:[9,5,192],t:7,e:"ui-button",a:{icon:"crosshairs",action:"recalibrate"},f:[{t:2,r:"data.target",p:[9,55,242]}]}]}," ",{p:[11,3,288],t:7,e:"ui-section",a:{label:"Controls"},f:[{p:[12,5,322],t:7,e:"ui-button",a:{icon:"warning",state:[{t:2,x:{r:["data.ready"],s:'_0?null:"disabled"'},p:[12,38,355]}],action:"fire"},f:["FIRE!"]}]}],n:50,r:"data.connected",p:[7,3,135]}," ",{t:4,f:[{p:[16,3,477],t:7,e:"ui-section",a:{label:"Maintenance"},f:[{p:[17,7,516],t:7,e:"ui-button",a:{icon:"wrench",action:"build"},f:["Complete Deployment."]}]}],n:50,x:{r:["data.connected"],s:"!_0"},p:[15,3,451]}]}]},e.exports=a.extend(r.exports)},{205:205}],236:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{p:[2,3,14],t:7,e:"span",f:["The regulator ",{t:2,x:{r:["data.hasHoldingTank"],s:'_0?"is":"is not"'},p:[2,23,34]}," connected to a tank."]}]}," ",{p:{button:[{p:[6,5,180],t:7,e:"ui-button",a:{icon:"pencil",action:"relabel"},f:["Relabel"]}]},t:7,e:"ui-display",a:{title:"Canister",button:0},f:[" ",{p:[8,3,259],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[9,5,293],t:7,e:"span",f:[{t:2,x:{r:["adata.tankPressure"],s:"Math.round(_0)"},p:[9,11,299]}," kPa"]}]}," ",{p:[11,3,363],t:7,e:"ui-section",a:{label:"Port"},f:[{p:[12,5,393],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.portConnected"],s:'_0?"good":"average"'},p:[12,18,406]}]},f:[{t:2,x:{r:["data.portConnected"],s:'_0?"Connected":"Not Connected"'},p:[12,63,451]}]}]}]}," ",{p:[15,1,543],t:7,e:"ui-display",a:{title:"Valve"},f:[{p:[16,3,572],t:7,e:"ui-section",a:{label:"Release Pressure"},f:[{p:[17,5,614],t:7,e:"ui-bar",a:{min:[{t:2,r:"data.minReleasePressure",p:[17,18,627]}],max:[{t:2,r:"data.maxReleasePressure",p:[17,52,661]}],value:[{t:2,r:"data.releasePressure",p:[18,14,703]}]},f:[{t:2,x:{r:["adata.releasePressure"],s:"Math.round(_0)"},p:[18,40,729]}," kPa"]}]}," ",{p:[20,3,798],t:7,e:"ui-section",a:{label:"Pressure Regulator"},f:[{p:[21,5,842],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.releasePressure","data.defaultReleasePressure"],s:'_0!=_1?null:"disabled"'},p:[21,38,875]}],action:"pressure",params:'{"pressure": "reset"}'},f:["Reset"]}," ",{p:[23,5,1029],t:7,e:"ui-button",a:{icon:"minus",state:[{t:2,x:{r:["data.releasePressure","data.minReleasePressure"],s:'_0>_1?null:"disabled"'},p:[23,36,1060]}],action:"pressure",params:'{"pressure": "min"}'},f:["Min"]}," ",{p:[25,5,1205],t:7,e:"ui-button",a:{icon:"pencil",action:"pressure",params:'{"pressure": "input"}'},f:["Set"]}," ",{p:[26,5,1299],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.releasePressure","data.maxReleasePressure"],s:'_0<_1?null:"disabled"'},p:[26,35,1329]}],action:"pressure",params:'{"pressure": "max"}'},f:["Max"]}]}," ",{p:[29,3,1488],t:7,e:"ui-section",a:{label:"Valve"},f:[{p:[30,5,1519],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.valveOpen"],s:'_0?"unlock":"lock"'},p:[30,22,1536]}],style:[{t:2,x:{r:["data.valveOpen","data.hasHoldingTank"],s:'_0?_1?"caution":"danger":null'},p:[31,14,1589]}],action:"valve"},f:[{t:2,x:{r:["data.valveOpen"],s:'_0?"Open":"Closed"'},p:[32,22,1682]}]}]}]}," ",{p:{button:[{t:4,f:[{p:[38,7,1864],t:7,e:"ui-button",a:{icon:"eject",style:[{t:2,x:{r:["data.valveOpen"],s:'_0?"danger":null'},p:[38,38,1895]}],action:"eject"},f:["Eject"]}],n:50,r:"data.hasHoldingTank",p:[37,5,1830]}]},t:7,e:"ui-display",a:{title:"Holding Tank",button:0},f:[" ",{t:4,f:[{p:[42,3,2025],t:7,e:"ui-section",a:{label:"Label"},f:[{t:2,r:"data.holdingTank.name",p:[43,4,2055]}]}," ",{p:[45,3,2099],t:7,e:"ui-section",a:{label:"Pressure"},f:[{t:2,x:{r:["adata.holdingTank.tankPressure"],s:"Math.round(_0)"},p:[46,4,2132]}," kPa"]}],n:50,r:"data.hasHoldingTank",p:[41,3,1995]},{t:4,n:51,f:[{p:[49,3,2211],t:7,e:"ui-section",f:[{p:[50,4,2227],t:7,e:"span",a:{"class":"average"},f:["No Holding Tank"]}]}],r:"data.hasHoldingTank"}]}]},e.exports=a.extend(r.exports)},{205:205}],237:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{tabs:function(){return Object.keys(this.get("data.supplies"))}}}}(r),r.exports.template={v:3,t:[" ",{p:[11,1,158],t:7,e:"ui-display",a:{title:"Cargo"},f:[{p:[12,3,188],t:7,e:"ui-section",a:{label:"Shuttle"},f:[{t:4,f:[{p:[14,7,270],t:7,e:"ui-button",a:{action:"send"},f:[{t:2,r:"data.location",p:[14,32,295]}]}],n:50,x:{r:["data.docked","data.requestonly"],s:"_0&&!_1"},p:[13,5,222]},{t:4,n:51,f:[{p:[16,7,346],t:7,e:"span",f:[{t:2,r:"data.location",p:[16,13,352]}]}],x:{r:["data.docked","data.requestonly"],s:"_0&&!_1"}}]}," ",{p:[19,3,410],t:7,e:"ui-section",a:{label:"Credits"},f:[{p:[20,5,444],t:7,e:"span",f:[{t:2,x:{r:["adata.points"],s:"Math.floor(_0)"},p:[20,11,450]}]}]}," ",{p:[22,3,506],t:7,e:"ui-section",a:{label:"Centcom Message"},f:[{p:[23,7,550],t:7,e:"span",f:[{t:2,r:"data.message",p:[23,13,556]}]}]}," ",{t:4,f:[{p:[26,5,644],t:7,e:"ui-section",a:{label:"Loan"},f:[{t:4,f:[{p:[28,9,716],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.away","data.docked"],s:'_0&&_1?null:"disabled"'},p:[29,17,744]}],action:"loan"},f:["Loan Shuttle"]}],n:50,x:{r:["data.loan_dispatched"],s:"!_0"},p:[27,7,677]},{t:4,n:51,f:[{p:[32,9,868],t:7,e:"span",a:{"class":"bad"},f:["Loaned to Centcom"]}],x:{r:["data.loan_dispatched"],s:"!_0"}}]}],n:50,x:{r:["data.loan","data.requestonly"],s:"_0&&!_1"},p:[25,3,600]}]}," ",{t:4,f:[{p:{button:[{p:[40,7,1066],t:7,e:"ui-button",a:{icon:"close",state:[{t:2,x:{r:["data.cart.length"],s:'_0?null:"disabled"'},p:[40,38,1097]}],action:"clear"},f:["Clear"]}]},t:7,e:"ui-display",a:{title:"Cart",button:0},f:[" ",{t:4,f:[{p:[43,7,1222],t:7,e:"ui-section",a:{candystripe:0,nowrap:0},f:[{p:[44,9,1263],t:7,e:"div",a:{"class":"content"},f:["#",{t:2,r:"id",p:[44,31,1285]}]}," ",{p:[45,9,1307],t:7,e:"div",a:{"class":"content"},f:[{t:2,r:"object",p:[45,30,1328]}]}," ",{p:[46,9,1354],t:7,e:"div",a:{"class":"content"},f:[{t:2,r:"cost",p:[46,30,1375]}," Credits"]}," ",{p:[47,9,1407],t:7,e:"div",a:{"class":"content"},f:[{p:[48,11,1440],t:7,e:"ui-button",a:{icon:"minus",action:"remove",params:['{"id": "',{t:2,r:"id",p:[48,67,1496]},'"}']}}]}]}],n:52,r:"data.cart",p:[42,5,1195]},{t:4,n:51,f:[{p:[52,7,1566],t:7,e:"span",f:["Nothing in Cart"]}],r:"data.cart"}]}],n:50,x:{r:["data.requestonly"],s:"!_0"},p:[37,1,972]},{p:{button:[{t:4,f:[{p:[59,7,1735],t:7,e:"ui-button",a:{icon:"close",state:[{t:2,x:{r:["data.requests.length"],s:'_0?null:"disabled"'},p:[59,38,1766]}],action:"denyall"},f:["Clear"]}],n:50,x:{r:["data.requestonly"],s:"!_0"},p:[58,5,1702]}]},t:7,e:"ui-display",a:{title:"Requests",button:0},f:[" ",{t:4,f:[{p:[63,5,1908],t:7,e:"ui-section",a:{candystripe:0,nowrap:0},f:[{p:[64,7,1947],t:7,e:"div",a:{"class":"content"},f:["#",{t:2,r:"id",p:[64,29,1969]}]}," ",{p:[65,7,1989],t:7,e:"div",a:{"class":"content"},f:[{t:2,r:"object",p:[65,28,2010]}]}," ",{p:[66,7,2034],t:7,e:"div",a:{"class":"content"},f:[{t:2,r:"cost",p:[66,28,2055]}," Credits"]}," ",{p:[67,7,2085],t:7,e:"div",a:{"class":"content"},f:["By ",{t:2,r:"orderer",p:[67,31,2109]}]}," ",{p:[68,7,2134],t:7,e:"div",a:{"class":"content"},f:["Comment: ",{t:2,r:"reason",p:[68,37,2164]}]}," ",{t:4,f:[{p:[70,9,2223],t:7,e:"div",a:{"class":"content"},f:[{p:[71,11,2256],t:7,e:"ui-button",a:{icon:"check",action:"approve",params:['{"id": "',{t:2,r:"id",p:[71,68,2313]},'"}']}}," ",{p:[72,11,2336],t:7,e:"ui-button",a:{icon:"close",action:"deny",params:['{"id": "',{t:2,r:"id",p:[72,65,2390]},'"}']}}]}],n:50,x:{r:["data.requestonly"],s:"!_0"},p:[69,7,2188]}]}],n:52,r:"data.requests",p:[62,3,1879]},{t:4,n:51,f:[{p:[77,7,2473],t:7,e:"span",f:["No Requests"]}],r:"data.requests"}]}," ",{p:[80,1,2529],t:7,e:"ui-tabs",a:{tabs:[{t:2,r:"tabs",p:[80,16,2544]}]},f:[{t:4,f:[{p:[82,5,2587],t:7,e:"tab",a:{name:[{t:2,r:"name",p:[82,16,2598]}]},f:[{t:4,f:[{p:[84,9,2641],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[84,28,2660]}],candystripe:0,right:0},f:[{p:[85,11,2700],t:7,e:"ui-button",a:{action:"add",params:['{"id": "',{t:2,r:"id",p:[85,51,2740]},'"}']},f:[{t:2,r:"cost",p:[85,61,2750]}," Credits"]}]}],n:52,r:"packs",p:[83,7,2616]}]}],n:52,r:"data.supplies",p:[81,3,2558]}]}]},e.exports=a.extend(r.exports)},{205:205}],238:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Cellular Emporium",button:0},f:[{p:[2,3,48],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.can_readapt"],s:'_0?null:"disabled"'},p:[2,36,81]}],action:"readapt"},f:["Readapt"]}," ",{p:[4,3,166],t:7,e:"ui-section",a:{label:"Genetic Points Remaining",right:0},f:[{t:2,r:"data.genetic_points_remaining",p:[5,5,222]}]}]}," ",{p:[8,1,286],t:7,e:"ui-display",f:[{t:4,f:[{p:[10,3,326],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[10,22,345]}],candystripe:0,right:0},f:[{p:[11,5,378],t:7,e:"span",f:[{t:2,r:"desc",p:[11,11,384]}]}," ",{p:[12,5,404],t:7,e:"span",f:[{t:2,r:"helptext",p:[12,11,410]}]}," ",{p:[13,5,434],t:7,e:"span",f:["Cost: ",{t:2,r:"dna_cost",p:[13,17,446]}]}," ",{p:[14,5,470],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["owned","can_purchase"],s:'_0?"selected":_1?null:"disabled"'},p:[15,14,494]}],action:"evolve",params:['{"name": "',{t:2,r:"name",p:[17,25,599]},'"}']},f:[{t:2,x:{r:["owned"],s:'_0?"Evolved":"Evolve"'},p:[18,7,618]}]}]}],n:52,r:"data.abilities",p:[9,1,299]},{t:4,f:[{p:[23,3,716],t:7,e:"span",a:{"class":"warning"},f:["No abilities availible."]}],n:51,r:"data.abilities",p:[22,1,694]}]}]},e.exports=a.extend(r.exports)},{205:205}],239:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Status"},f:[{p:[2,3,30],t:7,e:"ui-section",a:{label:"Energy"},f:[{p:[3,5,62],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.maxEnergy",p:[3,26,83]}],value:[{t:2,r:"data.energy",p:[3,53,110]}]},f:[{t:2,x:{r:["adata.energy"],s:"Math.fixed(_0)"},p:[3,70,127]}," Units"]}]}]}," ",{p:{button:[{t:4,f:[{p:[9,7,307],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.amount","."],s:'_0==_1?"selected":null'},p:[9,37,337]}],action:"amount",params:['{"target": ',{t:2,r:".",p:[9,114,414]},"}"]},f:[{t:2,r:".",p:[9,122,422]}]}],n:52,r:"data.beakerTransferAmounts",p:[8,5,264]}]},t:7,e:"ui-display",a:{title:"Dispense",button:0},f:[" ",{p:[12,3,471],t:7,e:"ui-section",f:[{t:4,f:[{p:[14,7,519],t:7,e:"ui-button",a:{grid:0,icon:"tint",action:"dispense",params:['{"reagent": "',{t:2,r:"id",p:[14,74,586]},'"}']},f:[{t:2,r:"title",p:[14,84,596]}]}],n:52,r:"data.chemicals",p:[13,5,488]}]}]}," ",{p:{button:[{t:4,f:[{p:[21,7,766],t:7,e:"ui-button",a:{icon:"minus",action:"remove",params:['{"amount": ',{t:2,r:".",p:[21,66,825]},"}"]},f:[{t:2,r:".",p:[21,74,833]}]}],n:52,r:"data.beakerTransferAmounts",p:[20,5,723]}," ",{p:[23,5,869],t:7,e:"ui-button",a:{icon:"eject",state:[{t:2,x:{r:["data.isBeakerLoaded"],s:'_0?null:"disabled"'},p:[23,36,900]}],action:"eject"},f:["Eject"]}]},t:7,e:"ui-display",a:{title:"Beaker",button:0},f:[" ",{p:[25,3,995],t:7,e:"ui-section",a:{label:"Contents"},f:[{t:4,f:[{p:[27,7,1063],t:7,e:"span",f:[{t:2,x:{r:["adata.beakerCurrentVolume"],s:"Math.round(_0)"},p:[27,13,1069]},"/",{t:2,r:"data.beakerMaxVolume",p:[27,55,1111]}," Units"]}," ",{p:[28,7,1155],t:7,e:"br"}," ",{t:4,f:[{p:[30,9,1206],t:7,e:"span",a:{"class":"highlight"},t0:"fade",f:[{t:2,x:{r:["volume"],s:"Math.fixed(_0,2)"},p:[30,52,1249]}," units of ",{t:2,r:"name",p:[30,87,1284]}]},{p:[30,102,1299],t:7,e:"br"}],n:52,r:"adata.beakerContents",p:[29,7,1167]},{t:4,n:51,f:[{p:[32,9,1328],t:7,e:"span",a:{"class":"bad"},f:["Beaker Empty"]}],r:"adata.beakerContents"}],n:50,r:"data.isBeakerLoaded",p:[26,5,1029]},{t:4,n:51,f:[{p:[35,7,1401],t:7,e:"span",a:{"class":"average"},f:["No Beaker"]}],r:"data.isBeakerLoaded"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],240:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Thermostat"},f:[{p:[2,3,34],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[3,5,65],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.isActive"],s:'_0?"power-off":"close"'},p:[3,22,82]}],style:[{t:2,x:{r:["data.isActive"],s:'_0?"selected":null'},p:[4,10,134]}],state:[{t:2,x:{r:["data.isBeakerLoaded"],s:'_0?null:"disabled"'},p:[5,10,182]}],action:"power"},f:[{t:2,x:{r:["data.isActive"],s:'_0?"On":"Off"'},p:[6,18,244]}]}]}," ",{p:[8,3,307],t:7,e:"ui-section",a:{label:"Target"},f:[{p:[9,4,338],t:7,e:"ui-button",a:{icon:"pencil",action:"temperature",params:'{"target": "input"}'},f:[{t:2,x:{r:["adata.targetTemp"],s:"Math.round(_0)"},p:[9,79,413]}," K"]}]}]}," ",{p:{button:[{p:[14,5,551],t:7,e:"ui-button",a:{icon:"eject",state:[{t:2,x:{r:["data.isBeakerLoaded"],s:'_0?null:"disabled"'},p:[14,36,582]}],action:"eject"},f:["Eject"]}]},t:7,e:"ui-display",a:{title:"Beaker",button:0},f:[" ",{p:[16,3,677],t:7,e:"ui-section",a:{label:"Contents"},f:[{t:4,f:[{p:[18,7,745],t:7,e:"span",f:["Temperature: ",{t:2,x:{r:["adata.currentTemp"],s:"Math.round(_0)"},p:[18,26,764]}," K"]}," ",{p:[19,7,813],t:7,e:"br"}," ",{t:4,f:[{p:[21,9,865],t:7,e:"span",a:{"class":"highlight"},t0:"fade",f:[{t:2,x:{r:["volume"],s:"Math.fixed(_0,2)"},p:[21,52,908]}," units of ",{t:2,r:"name",p:[21,87,943]}]},{p:[21,102,958],t:7,e:"br"}],n:52,r:"adata.beakerContents",p:[20,7,826]},{t:4,n:51,f:[{p:[23,9,987],t:7,e:"span",a:{"class":"bad"},f:["Beaker Empty"]}],r:"adata.beakerContents"}],n:50,r:"data.isBeakerLoaded",p:[17,5,711]},{t:4,n:51,f:[{p:[26,7,1060],t:7,e:"span",a:{"class":"average"},f:["No Beaker"]}],r:"data.isBeakerLoaded"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],241:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,2,31],t:7,e:"ui-display",a:{title:"Beaker",button:0},f:[{p:[3,3,68],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.isBeakerLoaded"],s:'_0?"Eject":"close"'},p:[3,20,85]}],style:[{t:2,x:{r:["data.isBeakerLoaded"],s:'_0?"selected":null'},p:[4,11,140]}],state:[{t:2,x:{r:["data.isBeakerLoaded"],s:'_0?null:"disabled"'},p:[5,11,195]}],action:"eject"},f:[{t:2,x:{r:["data.isBeakerLoaded"],s:'_0?"Eject and Clear Buffer":"No beaker"'},p:[7,5,262]}]}," ",{p:[10,3,348],t:7,e:"ui-section",f:[{t:4,f:[{t:4,f:[{p:[13,6,431],t:7,e:"ui-section",a:{label:[{t:2,x:{r:["volume"],s:"Math.fixed(_0,2)"},p:[13,25,450]}," units of ",{t:2,r:"name",p:[13,60,485]}],nowrap:0},f:[{p:[14,7,509],t:7,e:"div",a:{"class":"content",style:"float:right"},f:[{p:[15,8,558],t:7,e:"ui-button",a:{action:"transferToBuffer",params:['{"id": "',{t:2,r:"id",p:[15,61,611]},'", "amount": 1}']},f:["1"]}," ",{p:[16,8,655],t:7,e:"ui-button",a:{action:"transferToBuffer",params:['{"id": "',{t:2,r:"id",p:[16,61,708]},'", "amount": 5}']},f:["5"]}," ",{p:[17,8,752],t:7,e:"ui-button",a:{action:"transferToBuffer",params:['{"id": "',{t:2,r:"id",p:[17,61,805]},'", "amount": 10}']},f:["10"]}," ",{p:[18,8,851],t:7,e:"ui-button",a:{action:"transferToBuffer",params:['{"id": "',{t:2,r:"id",p:[18,61,904]},'", "amount": 1000}']},f:["All"]}," ",{p:[19,8,953],t:7,e:"ui-button",a:{action:"transferToBuffer",params:['{"id": "',{t:2,r:"id",p:[19,61,1006]},'", "amount": -1}']},f:["Custom"]}," ",{p:[20,8,1056],t:7,e:"ui-button",a:{action:"analyze",params:['{"id": "',{t:2,r:"id",p:[20,52,1100]},'"}']},f:["Analyze"]}]}]}],n:52,r:"data.beakerContents",p:[12,5,396]},{t:4,n:51,f:[{p:[24,5,1178],t:7,e:"span",a:{"class":"bad"},f:["Beaker Empty"]}],r:"data.beakerContents"}],n:50,r:"data.isBeakerLoaded",p:[11,4,364]},{t:4,n:51,f:[{p:[27,5,1246],t:7,e:"span",a:{"class":"average"},f:["No Beaker"]}],r:"data.isBeakerLoaded"}]}]}," ",{p:[32,2,1329],t:7,e:"ui-display",a:{title:"Buffer"},f:[{p:[33,3,1359],t:7,e:"ui-button",a:{action:"toggleMode",state:[{t:2,x:{r:["data.mode"],s:'_0?null:"selected"'},p:[33,41,1397]}]},f:["Destroy"]}," ",{p:[34,3,1454],t:7,e:"ui-button",a:{action:"toggleMode",state:[{t:2,x:{r:["data.mode"],s:'_0?"selected":null'},p:[34,41,1492]}]},f:["Transfer to Beaker"]}," ",{p:[35,3,1560],t:7,e:"ui-section",f:[{t:4,f:[{p:[37,5,1610],t:7,e:"ui-section",a:{label:[{t:2,x:{r:["volume"],s:"Math.fixed(_0,2)"},p:[37,24,1629]}," units of ",{t:2,r:"name",p:[37,59,1664]}],nowrap:0},f:[{p:[38,6,1687],t:7,e:"div",a:{"class":"content",style:"float:right"},f:[{p:[39,7,1735],t:7,e:"ui-button",a:{action:"transferFromBuffer",params:['{"id": "',{t:2,r:"id",p:[39,62,1790]},'", "amount": 1}']},f:["1"]}," ",{p:[40,7,1833],t:7,e:"ui-button",a:{action:"transferFromBuffer",params:['{"id": "',{t:2,r:"id",p:[40,62,1888]},'", "amount": 5}']},f:["5"]}," ",{p:[41,7,1931],t:7,e:"ui-button",a:{action:"transferFromBuffer",params:['{"id": "',{t:2,r:"id",p:[41,62,1986]},'", "amount": 10}']},f:["10"]}," ",{p:[42,7,2031],t:7,e:"ui-button",a:{action:"transferFromBuffer",params:['{"id": "',{t:2,r:"id",p:[42,62,2086]},'", "amount": 1000}']},f:["All"]}," ",{p:[43,7,2134],t:7,e:"ui-button",a:{action:"transferFromBuffer",params:['{"id": "',{t:2,r:"id",p:[43,62,2189]},'", "amount": -1}']},f:["Custom"]}," ",{p:[44,7,2238],t:7,e:"ui-button",a:{action:"analyze",params:['{"id": "',{t:2,r:"id",p:[44,51,2282]},'"}']},f:["Analyze"]}]}]}],n:52,r:"data.bufferContents",p:[36,4,1576]}]}]}," ",{t:4,f:[{p:[52,3,2410],t:7,e:"ui-display",a:{title:"Pills, Bottles and Patches"},f:[{t:4,f:[{p:[54,5,2498],t:7,e:"ui-button",a:{action:"ejectp",state:[{t:2,x:{r:["data.isPillBottleLoaded"],s:'_0?null:"disabled"'},p:[54,39,2532]}]},f:[{t:2,x:{r:["data.isPillBottleLoaded"],s:'_0?"Eject":"No Pill bottle loaded"'},p:[54,88,2581]}]}," ",{p:[55,5,2661],t:7,e:"span",a:{"class":"content"},f:[{t:2,r:"data.pillBotContent",p:[55,27,2683]},"/",{t:2,r:"data.pillBotMaxContent",p:[55,51,2707]}]}],n:50,r:"data.isPillBottleLoaded",p:[53,4,2462]},{t:4,n:51,f:[{p:[57,5,2757],t:7,e:"span",a:{"class":"average"},f:["No Pillbottle"]}],r:"data.isPillBottleLoaded"}," ",{p:[60,4,2818],t:7,e:"br"}," ",{p:[61,4,2827],t:7,e:"br"}," ",{p:[62,4,2836],t:7,e:"ui-button",a:{action:"createPill",params:'{"many": 0}',state:[{t:2,x:{r:["data.bufferContents"],s:'_0?null:"disabled"'},p:[62,63,2895]}]},f:["Create Pill (max 50µ)"]}," ",{p:[63,4,2978],t:7,e:"br"}," ",{p:[64,4,2987],t:7,e:"ui-button",a:{action:"createPill",params:'{"many": 1}',state:[{t:2,x:{r:["data.bufferContents"],s:'_0?null:"disabled"'},p:[64,63,3046]}]},f:["Create Multiple Pills"]}," ",{p:[65,4,3129],t:7,e:"br"}," ",{p:[66,4,3138],t:7,e:"br"}," ",{p:[67,4,3147],t:7,e:"ui-button",a:{action:"createPatch",params:'{"many": 0}',state:[{t:2,x:{r:["data.bufferContents"],s:'_0?null:"disabled"'},p:[67,64,3207]}]},f:["Create Patch (max 40µ)"]}," ",{p:[68,4,3291],t:7,e:"br"}," ",{p:[69,4,3300],t:7,e:"ui-button",a:{action:"createPatch",params:'{"many": 1}',state:[{t:2,x:{r:["data.bufferContents"],s:'_0?null:"disabled"'},p:[69,64,3360]}]},f:["Create Multiple Patches"]}," ",{p:[70,4,3445],t:7,e:"br"}," ",{p:[71,4,3454],t:7,e:"br"}," ",{p:[72,4,3463],t:7,e:"ui-button",a:{action:"createBottle",params:'{"many": 0}',state:[{t:2,x:{r:["data.bufferContents"],s:'_0?null:"disabled"'},p:[72,65,3524]}]},f:["Create Bottle (max 30µ)"]}," ",{p:[73,4,3609],t:7,e:"br"}," ",{p:[74,4,3618],t:7,e:"ui-button",a:{action:"createBottle",params:'{"many": 1}',state:[{t:2,x:{r:["data.bufferContents"],s:'_0?null:"disabled"'},p:[74,65,3679]}]},f:["Dispense Buffer to Bottles"]}]}],n:50,x:{r:["data.condi"],s:"!_0"},p:[51,2,2388]},{t:4,n:51,f:[{p:[79,3,3796],t:7,e:"ui-display",a:{title:"Condiments bottles and packs"},f:[{p:[80,4,3850],t:7,e:"ui-button",a:{action:"createPill",params:'{"many": 0}',state:[{t:2,x:{r:["data.bufferContents"],s:'_0?null:"disabled"'},p:[80,63,3909]}]},f:["Create Pack (max 10µ)"]}," ",{p:[81,4,3992],t:7,e:"br"}," ",{p:[82,4,4001],t:7,e:"br"}," ",{p:[83,4,4010],t:7,e:"ui-button",a:{action:"createBottle",params:'{"many": 0}',state:[{t:2,x:{r:["data.bufferContents"],s:'_0?null:"disabled"'},p:[83,65,4071]}]},f:["Create Bottle (max 50µ)"]}]}],x:{r:["data.condi"],s:"!_0"}}],n:50,x:{r:["data.screen"],s:'_0=="home"'},p:[1,1,0]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.screen"],s:'_0=="analyze"'},f:[{p:[87,2,4215],t:7,e:"ui-display",a:{title:[{t:2,r:"data.analyzeVars.name",p:[87,20,4233]}]},f:[{p:[88,3,4263],t:7,e:"span",a:{"class":"highlight"},f:["Description:"]}," ",{p:[89,3,4310],t:7,e:"span",a:{"class":"content",style:"float:center"},f:[{t:2,r:"data.analyzeVars.description",p:[89,46,4353]}]}," ",{p:[90,3,4395],t:7,e:"br"}," ",{p:[91,3,4403],t:7,e:"span",a:{"class":"highlight"},f:["Color:"]}," ",{p:[92,3,4444],t:7,e:"span",a:{style:["color: ",{t:2,r:"data.analyzeVars.color",p:[92,23,4464]},"; background-color: ",{t:2,r:"data.analyzeVars.color",p:[92,69,4510]}]},f:[{t:2,r:"data.analyzeVars.color",p:[92,97,4538]}]}," ",{p:[93,3,4574],t:7,e:"br"}," ",{p:[94,3,4582],t:7,e:"span",a:{"class":"highlight"},f:["State:"]}," ",{p:[95,3,4623],t:7,e:"span",a:{"class":"content"},f:[{t:2,r:"data.analyzeVars.state",p:[95,25,4645]}]}," ",{p:[96,3,4681],t:7,e:"br"}," ",{p:[97,3,4689],t:7,e:"span",a:{"class":"highlight"},f:["Metabolization Rate:"]}," ",{p:[98,3,4744],t:7,e:"span",a:{"class":"content"},f:[{t:2,r:"data.analyzeVars.metaRate",p:[98,25,4766]},"µ/minute"]}," ",{p:[99,3,4813],t:7,e:"br"}," ",{p:[100,3,4821],t:7,e:"span",a:{"class":"highlight"},f:["Overdose Threshold:"]}," ",{p:[101,3,4875],t:7,e:"span",a:{"class":"content"},f:[{t:2,r:"data.analyzeVars.overD",p:[101,25,4897]}]}," ",{p:[102,3,4933],t:7,e:"br"}," ",{p:[103,3,4941],t:7,e:"span",a:{"class":"highlight"},f:["Addiction Threshold:"]}," ",{p:[104,3,4996],t:7,e:"span",a:{"class":"content"},f:[{t:2,r:"data.analyzeVars.addicD",p:[104,25,5018]}]}," ",{p:[105,3,5055],t:7,e:"br"}," ",{p:[106,3,5063],t:7,e:"br"}," ",{p:[107,3,5071],t:7,e:"ui-button",a:{action:"goScreen",params:'{"screen": "home"}'},f:["Back"]}]}]}],x:{r:["data.screen"],s:'_0=="home"'}}]},e.exports=a.extend(r.exports)},{205:205}],242:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,3,15],t:7,e:"ui-button",a:{action:"toggle"},f:[{t:2,x:{r:["data.recollection"],s:'_0?"Recital":"Recollection"'},p:[2,30,42]}]}," ",{p:[3,3,105],t:7,e:"ui-button",a:{action:"component"},f:["Target Component: ",{t:3,r:"data.target_comp",p:[3,51,153]}]}]}," ",{t:4,f:[{p:[6,3,230],t:7,e:"ui-display",f:[{t:3,r:"data.rec_text",p:[7,3,245]}]}],n:50,r:"data.recollection",p:[5,1,202]},{t:4,n:51,f:[{p:[10,2,292],t:7,e:"ui-display",a:{title:"Components (with Global Cache)",button:0},f:[{p:[11,4,354],t:7,e:"ui-section",f:[{t:3,r:"data.components",p:[12,6,372]}]}]}," ",{p:[15,2,427],t:7,e:"ui-display",f:[{p:[16,3,442],t:7,e:"ui-section",f:[{p:[17,4,458],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.selected"],s:'_0=="Driver"?"selected":null'},p:[17,22,476]}],action:"select",params:'{"category": "Driver"}'},f:["Driver"]}," ",{p:[18,4,598],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.selected"],s:'_0=="Script"?"selected":null'},p:[18,22,616]}],action:"select",params:'{"category": "Script"}'},f:["Scripts"]}," ",{p:[19,4,739],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.selected"],s:'_0=="Application"?"selected":null'},p:[19,22,757]}],action:"select",params:'{"category": "Application"}'},f:["Applications"]}," ",{p:[20,4,895],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.selected"],s:'_0=="Revenant"?"selected":null'},p:[20,22,913]}],action:"select",params:'{"category": "Revenant"}'},f:["Revenant"]}," ",{p:[21,4,1041],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.selected"],s:'_0=="Judgement"?"selected":null'},p:[21,22,1059]}],action:"select",params:'{"category": "Judgement"}'},f:["Judgement"]}," ",{p:[22,4,1189],t:7,e:"br"},{t:3,r:"data.tier_info",p:[22,8,1193]}]},{p:[23,16,1229],t:7,e:"hr"}," ",{p:[24,3,1236],t:7,e:"ui-section",f:[{t:4,f:[{p:[26,4,1279],t:7,e:"div",f:[{p:[26,9,1284],t:7,e:"ui-button",a:{tooltip:[{t:3,r:"tip",p:[26,29,1304]}],"tooltip-side":"right",action:"recite",params:['{"category": "',{t:2,r:"type",p:[26,99,1374]},'"}']},f:["Recite",{t:3,r:"required",p:[26,117,1392]}]}," ",{t:4,f:[{t:4,f:[{p:[29,6,1465],t:7,e:"ui-button",a:{action:"bind",params:['{"category": "',{t:2,r:"type",p:[29,53,1512]},'"}']},f:["Unbind ",{t:3,r:"bound",p:[29,72,1531]}]}],n:50,r:"bound",p:[28,5,1446]},{t:4,n:51,f:[{p:[31,6,1573],t:7,e:"ui-button",a:{action:"bind",params:['{"category": "',{t:2,r:"type",p:[31,53,1620]},'"}']},f:["Quickbind"]}],r:"bound"}],n:50,r:"quickbind",p:[27,6,1424]}," ",{t:3,r:"name",p:[34,6,1684]}," ",{t:3,r:"descname",p:[34,17,1695]}," ",{t:3,r:"invokers",p:[34,32,1710]}]}],n:52,r:"data.scripture",p:[25,3,1251]}]}]}],r:"data.recollection"}]},e.exports=a.extend(r.exports)},{205:205}],243:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"ui-button",a:{icon:"circle",action:"clean_order"},f:["Clear Order"]},{p:[2,70,70],t:7,e:"br"},{p:[2,74,74],t:7,e:"br"}," ",{p:[3,1,79],t:7,e:"i",f:["Your new computer device you always dreamed of is just four steps away..."]},{p:[3,81,159],t:7,e:"hr"}," ",{t:4,f:[" ",{p:[5,1,219],t:7,e:"div",a:{"class":"item"},f:[{p:[6,2,239],t:7,e:"h2",f:["Step 1: Select your device type"]}," ",{p:[7,2,281],t:7,e:"ui-button",a:{icon:"calc",action:"pick_device",params:'{"pick" : "1"}'},f:["Laptop"]}," ",{p:[8,2,370],t:7,e:"ui-button",a:{icon:"calc",action:"pick_device",params:'{"pick" : "2"}'},f:["LTablet"]}]}],n:50,x:{r:["data.state"],s:"_0==0"},p:[4,1,164]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.state"],s:"_0==1"},f:[{p:[11,1,492],t:7,e:"div",a:{"class":"item"},f:[{p:[12,2,512],t:7,e:"h2",f:["Step 2: Personalise your device"]}," ",{p:[13,2,554],t:7,e:"table",f:[{p:[14,3,564],t:7,e:"tr",f:[{p:[15,4,572],t:7,e:"td",f:[{p:[15,8,576],t:7,e:"b",f:["Current Price:"]}]},{p:[16,4,601],t:7,e:"td",f:[{t:2,r:"data.totalprice",p:[16,8,605]},"C"]}]}," ",{p:[18,3,636],t:7,e:"tr",f:[{p:[19,4,645],t:7,e:"td",f:[{p:[19,8,649],t:7,e:"b",f:["Battery:"]}]},{p:[20,4,668],t:7,e:"td",f:[{p:[20,8,672],t:7,e:"ui-button",a:{action:"hw_battery",params:'{"battery" : "1"}',state:[{t:2,x:{r:["data.hw_battery"],s:'_0==1?"selected":null'},p:[20,73,737]}]},f:["Standard"]}]},{p:[21,4,807],t:7,e:"td",f:[{p:[21,8,811],t:7,e:"ui-button",a:{action:"hw_battery",params:'{"battery" : "2"}',state:[{t:2,x:{r:["data.hw_battery"],s:'_0==2?"selected":null'},p:[21,73,876]}]},f:["Upgraded"]}]},{p:[22,4,946],t:7,e:"td",f:[{p:[22,8,950],t:7,e:"ui-button",a:{action:"hw_battery",params:'{"battery" : "3"}',state:[{t:2,x:{r:["data.hw_battery"],s:'_0==3?"selected":null'},p:[22,73,1015]}]},f:["Advanced"]}]}]}," ",{p:[24,3,1092], -t:7,e:"tr",f:[{p:[25,4,1100],t:7,e:"td",f:[{p:[25,8,1104],t:7,e:"b",f:["Hard Drive:"]}]},{p:[26,4,1126],t:7,e:"td",f:[{p:[26,8,1130],t:7,e:"ui-button",a:{action:"hw_disk",params:'{"disk" : "1"}',state:[{t:2,x:{r:["data.hw_disk"],s:'_0==1?"selected":null'},p:[26,67,1189]}]},f:["Standard"]}]},{p:[27,4,1256],t:7,e:"td",f:[{p:[27,8,1260],t:7,e:"ui-button",a:{action:"hw_disk",params:'{"disk" : "2"}',state:[{t:2,x:{r:["data.hw_disk"],s:'_0==2?"selected":null'},p:[27,67,1319]}]},f:["Upgraded"]}]},{p:[28,4,1386],t:7,e:"td",f:[{p:[28,8,1390],t:7,e:"ui-button",a:{action:"hw_disk",params:'{"disk" : "3"}',state:[{t:2,x:{r:["data.hw_disk"],s:'_0==3?"selected":null'},p:[28,67,1449]}]},f:["Advanced"]}]}]}," ",{p:[30,3,1523],t:7,e:"tr",f:[{p:[31,4,1531],t:7,e:"td",f:[{p:[31,8,1535],t:7,e:"b",f:["Network Card:"]}]},{p:[32,4,1559],t:7,e:"td",f:[{p:[32,8,1563],t:7,e:"ui-button",a:{action:"hw_netcard",params:'{"netcard" : "0"}',state:[{t:2,x:{r:["data.hw_netcard"],s:'_0==0?"selected":null'},p:[32,73,1628]}]},f:["None"]}]},{p:[33,4,1694],t:7,e:"td",f:[{p:[33,8,1698],t:7,e:"ui-button",a:{action:"hw_netcard",params:'{"netcard" : "1"}',state:[{t:2,x:{r:["data.hw_netcard"],s:'_0==1?"selected":null'},p:[33,73,1763]}]},f:["Standard"]}]},{p:[34,4,1833],t:7,e:"td",f:[{p:[34,8,1837],t:7,e:"ui-button",a:{action:"hw_netcard",params:'{"netcard" : "2"}',state:[{t:2,x:{r:["data.hw_netcard"],s:'_0==2?"selected":null'},p:[34,73,1902]}]},f:["Advanced"]}]}]}," ",{p:[36,3,1979],t:7,e:"tr",f:[{p:[37,4,1987],t:7,e:"td",f:[{p:[37,8,1991],t:7,e:"b",f:["Nano Printer:"]}]},{p:[38,4,2015],t:7,e:"td",f:[{p:[38,8,2019],t:7,e:"ui-button",a:{action:"hw_nanoprint",params:'{"print" : "0"}',state:[{t:2,x:{r:["data.hw_nanoprint"],s:'_0==0?"selected":null'},p:[38,73,2084]}]},f:["None"]}]},{p:[39,4,2152],t:7,e:"td",f:[{p:[39,8,2156],t:7,e:"ui-button",a:{action:"hw_nanoprint",params:'{"print" : "1"}',state:[{t:2,x:{r:["data.hw_nanoprint"],s:'_0==1?"selected":null'},p:[39,73,2221]}]},f:["Standard"]}]}]}," ",{p:[41,3,2300],t:7,e:"tr",f:[{p:[42,4,2308],t:7,e:"td",f:[{p:[42,8,2312],t:7,e:"b",f:["Card Reader:"]}]},{p:[43,4,2335],t:7,e:"td",f:[{p:[43,8,2339],t:7,e:"ui-button",a:{action:"hw_card",params:'{"card" : "0"}',state:[{t:2,x:{r:["data.hw_card"],s:'_0==0?"selected":null'},p:[43,67,2398]}]},f:["None"]}]},{p:[44,4,2461],t:7,e:"td",f:[{p:[44,8,2465],t:7,e:"ui-button",a:{action:"hw_card",params:'{"card" : "1"}',state:[{t:2,x:{r:["data.hw_card"],s:'_0==1?"selected":null'},p:[44,67,2524]}]},f:["Standard"]}]}]}]}," ",{t:4,f:[" ",{p:[49,4,2658],t:7,e:"table",f:[{p:[50,5,2670],t:7,e:"tr",f:[{p:[51,6,2680],t:7,e:"td",f:[{p:[51,10,2684],t:7,e:"b",f:["Processor Unit:"]}]},{p:[52,6,2712],t:7,e:"td",f:[{p:[52,10,2716],t:7,e:"ui-button",a:{action:"hw_cpu",params:'{"cpu" : "1"}',state:[{t:2,x:{r:["data.hw_cpu"],s:'_0==1?"selected":null'},p:[52,67,2773]}]},f:["Standard"]}]},{p:[53,6,2841],t:7,e:"td",f:[{p:[53,10,2845],t:7,e:"ui-button",a:{action:"hw_cpu",params:'{"cpu" : "2"}',state:[{t:2,x:{r:["data.hw_cpu"],s:'_0==2?"selected":null'},p:[53,67,2902]}]},f:["Advanced"]}]}]}," ",{p:[55,5,2979],t:7,e:"tr",f:[{p:[56,6,2989],t:7,e:"td",f:[{p:[56,10,2993],t:7,e:"b",f:["Tesla Relay:"]}]},{p:[57,6,3018],t:7,e:"td",f:[{p:[57,10,3022],t:7,e:"ui-button",a:{action:"hw_tesla",params:'{"tesla" : "0"}',state:[{t:2,x:{r:["data.hw_tesla"],s:'_0==0?"selected":null'},p:[57,71,3083]}]},f:["None"]}]},{p:[58,6,3149],t:7,e:"td",f:[{p:[58,10,3153],t:7,e:"ui-button",a:{action:"hw_tesla",params:'{"tesla" : "1"}',state:[{t:2,x:{r:["data.hw_tesla"],s:'_0==1?"selected":null'},p:[58,71,3214]}]},f:["Standard"]}]}]}]}],n:50,x:{r:["data.devtype"],s:"_0!=2"},p:[48,3,2612]}," ",{p:[62,3,3313],t:7,e:"table",f:[{p:[63,4,3324],t:7,e:"tr",f:[{p:[64,5,3333],t:7,e:"td",f:[{p:[64,9,3337],t:7,e:"b",f:["Confirm Order:"]}]},{p:[65,5,3363],t:7,e:"td",f:[{p:[65,9,3367],t:7,e:"ui-button",a:{action:"confirm_order"},f:["CONFIRM"]}]}]}]}," ",{p:[69,2,3444],t:7,e:"hr"}," ",{p:[70,2,3450],t:7,e:"b",f:["Battery"]}," allows your device to operate without external utility power source. Advanced batteries increase battery life.",{p:[70,127,3575],t:7,e:"br"}," ",{p:[71,2,3581],t:7,e:"b",f:["Hard Drive"]}," stores file on your device. Advanced drives can store more files, but use more power, shortening battery life.",{p:[71,130,3709],t:7,e:"br"}," ",{p:[72,2,3715],t:7,e:"b",f:["Network Card"]}," allows your device to wirelessly connect to stationwide NTNet network. Basic cards are limited to on-station use, while advanced cards can operate anywhere near the station, which includes the asteroid outposts.",{p:[72,233,3946],t:7,e:"br"}," ",{p:[73,2,3952],t:7,e:"b",f:["Processor Unit"]}," is critical for your device's functionality. It allows you to run programs from your hard drive. Advanced CPUs use more power, but allow you to run more programs on background at once.",{p:[73,208,4158],t:7,e:"br"}," ",{p:[74,2,4164],t:7,e:"b",f:["Tesla Relay"]}," is an advanced wireless power relay that allows your device to connect to nearby area power controller to provide alternative power source. This component is currently unavailable on tablet computers due to size restrictions.",{p:[74,246,4408],t:7,e:"br"}," ",{p:[75,2,4414],t:7,e:"b",f:["Nano Printer"]}," is device that allows for various paperwork manipulations, such as, scanning of documents or printing new ones. This device was certified EcoFriendlyPlus and is capable of recycling existing paper for printing purposes.",{p:[75,241,4653],t:7,e:"br"}," ",{p:[76,2,4659],t:7,e:"b",f:["Card Reader"]}," adds a slot that allows you to manipulate RFID cards. Please note that this is not necessary to allow the device to read your identification, it is just necessary to manipulate other cards."]}]},{t:4,n:50,x:{r:["data.state"],s:"(!(_0==1))&&(_0==2)"},f:[" ",{p:[79,2,4903],t:7,e:"h2",f:["Step 3: Payment"]}," ",{p:[80,2,4929],t:7,e:"b",f:["Your device is now ready for fabrication.."]},{p:[80,51,4978],t:7,e:"br"}," ",{p:[81,2,4984],t:7,e:"i",f:["Please ensure the required amount of credits are in the machine, then press purchase."]},{p:[81,94,5076],t:7,e:"br"}," ",{p:[82,2,5082],t:7,e:"i",f:["Current credits: ",{p:[82,22,5102],t:7,e:"b",f:[{t:2,r:"data.credits",p:[82,25,5105]},"C"]}]},{p:[82,50,5130],t:7,e:"br"}," ",{p:[83,2,5136],t:7,e:"i",f:["Total price: ",{p:[83,18,5152],t:7,e:"b",f:[{t:2,r:"data.totalprice",p:[83,21,5155]},"C"]}]},{p:[83,49,5183],t:7,e:"br"},{p:[83,53,5187],t:7,e:"br"}," ",{p:[84,2,5193],t:7,e:"ui-button",a:{action:"purchase",state:[{t:2,x:{r:["data.credits","data.totalprice"],s:'_0>=_1?null:"disabled"'},p:[84,38,5229]}]},f:["PURCHASE"]}]},{t:4,n:50,x:{r:["data.state"],s:"(!(_0==1))&&((!(_0==2))&&(_0==3))"},f:[" ",{p:[87,2,5337],t:7,e:"h2",f:["Step 4: Thank you for your purchase"]},{p:[87,46,5381],t:7,e:"br"}," ",{p:[88,2,5387],t:7,e:"b",f:["Should you experience any issues with your new device, contact your local network admin for assistance."]}]}],x:{r:["data.state"],s:"_0==0"}}]},e.exports=a.extend(r.exports)},{205:205}],244:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[37,1,938],t:7,e:"ui-display",f:[{p:[38,2,952],t:7,e:"i",f:["No program loaded. Please select program from list below."]}," ",{p:[39,2,1018],t:7,e:"table",f:[{t:4,f:[{p:[41,4,1055],t:7,e:"tr",f:[{p:[41,8,1059],t:7,e:"td",f:[{p:[41,12,1063],t:7,e:"ui-button",a:{action:"PC_runprogram",params:['{"name": "',{t:2,r:"name",p:[41,64,1115]},'"}']},f:[{t:2,r:"desc",p:[42,5,1132]}]}]},{p:[44,4,1160],t:7,e:"td",f:[{p:[44,8,1164],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["running"],s:'_0?null:"disabled"'},p:[44,26,1182]}],icon:"close",action:"PC_killprogram",params:['{"name": "',{t:2,r:"name",p:[44,114,1270]},'"}']}}]}]}],n:52,r:"data.programs",p:[40,3,1028]}]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],245:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,1,21],t:7,e:"ui-display",f:[{p:[3,2,35],t:7,e:"ui-section",a:{label:"Cap"},f:[{p:[4,3,62],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.is_capped"],s:'_0?"power-off":"close"'},p:[4,20,79]}],style:[{t:2,x:{r:["data.is_capped"],s:'_0?null:"selected"'},p:[4,71,130]}],action:"toggle_cap"},f:[{t:2,x:{r:["data.is_capped"],s:'_0?"On":"Off"'},p:[6,4,197]}]}]}]}],n:50,r:"data.has_cap",p:[1,1,0]},{p:[10,1,279],t:7,e:"ui-display",f:[{t:4,f:[{p:[14,2,406],t:7,e:"ui-section",f:[{p:[15,3,421],t:7,e:"ui-button",a:{action:"select_colour"},f:["Select New Colour"]}]}],n:50,r:"data.can_change_colour",p:[13,1,374]}]}," ",{p:[19,1,522],t:7,e:"ui-display",a:{title:"Stencil"},f:[{t:4,f:[{p:[21,2,579],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[21,21,598]}]},f:[{t:4,f:[{p:[23,7,633],t:7,e:"ui-button",a:{action:"select_stencil",params:['{"item":"',{t:2,r:"item",p:[23,59,685]},'"}'],style:[{t:2,x:{r:["item","data.selected_stencil"],s:'_0==_1?"selected":null'},p:[24,12,708]}]},f:[{t:2,r:"item",p:[25,4,767]}]}],n:52,r:"items",p:[22,3,611]}]}],n:52,r:"data.drawables",p:[20,3,553]}]}," ",{p:[31,1,844],t:7,e:"ui-display",a:{title:"Text Mode"},f:[{p:[32,2,876],t:7,e:"ui-section",a:{label:"Current Buffer"},f:[{t:2,r:"text_buffer",p:[32,37,911]}]}," ",{p:[34,2,943],t:7,e:"ui-section",f:[{p:[34,14,955],t:7,e:"ui-button",a:{action:"enter_text"},f:["New Text"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],246:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{temperatureStatus:function(t){return 225>t?"good":273.15>t?"average":"bad"}},computed:{occupantStatState:function(){switch(this.get("data.occupant.stat")){case 0:return"good";case 1:return"average";default:return"bad"}}}}}(r),r.exports.template={v:3,t:[" ",{p:[22,1,445],t:7,e:"ui-display",a:{title:"Occupant"},f:[{p:[23,3,477],t:7,e:"ui-section",a:{label:"Occupant"},f:[{p:[24,3,509],t:7,e:"span",f:[{t:2,x:{r:["data.occupant.name"],s:'_0?_0:"No Occupant"'},p:[24,9,515]}]}]}," ",{t:4,f:[{p:[27,5,629],t:7,e:"ui-section",a:{label:"State"},f:[{p:[28,7,662],t:7,e:"span",a:{"class":[{t:2,r:"occupantStatState",p:[28,20,675]}]},f:[{t:2,x:{r:["data.occupant.stat"],s:'_0==0?"Conscious":_0==1?"Unconcious":"Dead"'},p:[28,43,698]}]}]}," ",{p:[30,4,817],t:7,e:"ui-section",a:{label:"Temperature"},f:[{p:[31,6,855],t:7,e:"span",a:{"class":[{t:2,x:{r:["temperatureStatus","adata.occupant.bodyTemperature"],s:"_0(_1)"},p:[31,19,868]}]},f:[{t:2,x:{r:["adata.occupant.bodyTemperature"],s:"Math.round(_0)"},p:[31,74,923]}," K"]}]}," ",{p:[33,5,1e3],t:7,e:"ui-section",a:{label:"Health"},f:[{p:[34,7,1034],t:7,e:"ui-bar",a:{min:[{t:2,r:"data.occupant.minHealth",p:[34,20,1047]}],max:[{t:2,r:"data.occupant.maxHealth",p:[34,54,1081]}],value:[{t:2,r:"data.occupant.health",p:[34,90,1117]}],state:[{t:2,x:{r:["data.occupant.health"],s:'_0>=0?"good":"average"'},p:[35,16,1158]}]},f:[{t:2,x:{r:["adata.occupant.health"],s:"Math.round(_0)"},p:[35,68,1210]}]}]}," ",{t:4,f:[{p:[38,7,1444],t:7,e:"ui-section",a:{label:[{t:2,r:"label",p:[38,26,1463]}]},f:[{p:[39,9,1483],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.occupant.maxHealth",p:[39,30,1504]}],value:[{t:2,rx:{r:"data.occupant",m:[{t:30,n:"type"}]},p:[39,66,1540]}],state:"bad"},f:[{t:2,x:{r:["type","adata.occupant"],s:"Math.round(_1[_0])"},p:[39,103,1577]}]}]}],n:52,x:{r:[],s:'[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}]'},p:[37,5,1279]}],n:50,r:"data.hasOccupant",p:[26,3,600]}]}," ",{p:[44,1,1681],t:7,e:"ui-display",a:{title:"Cell"},f:[{p:[45,3,1709],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[46,5,1740],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.isOperating"],s:'_0?"power-off":"close"'},p:[46,22,1757]}],style:[{t:2,x:{r:["data.isOperating"],s:'_0?"selected":null'},p:[47,14,1816]}],state:[{t:2,x:{r:["data.isOpen"],s:'_0?"disabled":null'},p:[48,14,1871]}],action:"power"},f:[{t:2,x:{r:["data.isOperating"],s:'_0?"On":"Off"'},p:[49,22,1929]}]}]}," ",{p:[51,3,1995],t:7,e:"ui-section",a:{label:"Temperature"},f:[{p:[52,3,2030],t:7,e:"span",a:{"class":[{t:2,x:{r:["temperatureStatus","adata.cellTemperature"],s:"_0(_1)"},p:[52,16,2043]}]},f:[{t:2,x:{r:["adata.cellTemperature"],s:"Math.round(_0)"},p:[52,62,2089]}," K"]}]}," ",{p:[54,2,2152],t:7,e:"ui-section",a:{label:"Door"},f:[{p:[55,5,2182],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.isOpen"],s:'_0?"unlock":"lock"'},p:[55,22,2199]}],action:"door"},f:[{t:2,x:{r:["data.isOpen"],s:'_0?"Open":"Closed"'},p:[55,73,2250]}]}," ",{p:[56,5,2302],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.autoEject"],s:'_0?"sign-out":"sign-in"'},p:[56,22,2319]}],action:"autoeject"},f:[{t:2,x:{r:["data.autoEject"],s:'_0?"Auto":"Manual"'},p:[56,86,2383]}]}]}]}," ",{p:{button:[{p:[61,5,2524],t:7,e:"ui-button",a:{icon:"eject",state:[{t:2,x:{r:["data.isBeakerLoaded"],s:'_0?null:"disabled"'},p:[61,36,2555]}],action:"ejectbeaker"},f:["Eject"]}]},t:7,e:"ui-display",a:{title:"Beaker",button:0},f:[" ",{p:[63,3,2656],t:7,e:"ui-section",a:{label:"Contents"},f:[{t:4,f:[{t:4,f:[{p:[66,9,2763],t:7,e:"span",a:{"class":"highlight"},t0:"fade",f:[{t:2,x:{r:["volume"],s:"Math.fixed(_0,2)"},p:[66,52,2806]}," units of ",{t:2,r:"name",p:[66,87,2841]}]},{p:[66,102,2856],t:7,e:"br"}],n:52,r:"adata.beakerContents",p:[65,7,2724]},{t:4,n:51,f:[{p:[68,9,2885],t:7,e:"span",a:{"class":"bad"},f:["Beaker Empty"]}],r:"adata.beakerContents"}],n:50,r:"data.isBeakerLoaded",p:[64,5,2690]},{t:4,n:51,f:[{p:[71,7,2958],t:7,e:"span",a:{"class":"average"},f:["No Beaker"]}],r:"data.isBeakerLoaded"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],247:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,2,14],t:7,e:"ui-section",a:{label:"State"},f:[{t:4,f:[{p:[4,4,69],t:7,e:"span",a:{"class":"bad"},f:["Off"]}],n:50,x:{r:["data.mode"],s:"_0==0"},p:[3,3,43]},{t:4,n:51,f:[{t:4,f:[{p:[7,5,140],t:7,e:"span",a:{"class":"bad"},f:["Power Disabled"]}],n:50,x:{r:["data.mode"],s:"_0==-1"},p:[6,4,112]},{t:4,n:51,f:[{t:4,f:[{p:[11,6,225],t:7,e:"span",a:{"class":"average"},f:["Pressurizing"]}],n:50,x:{r:["data.mode"],s:"_0==1"},p:[10,5,197]},{t:4,n:51,f:[{p:[13,6,285],t:7,e:"span",a:{"class":"good"},f:["Ready"]}],x:{r:["data.mode"],s:"_0==1"}}],x:{r:["data.mode"],s:"_0==-1"}}],x:{r:["data.mode"],s:"_0==0"}}]}," ",{p:[18,2,366],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[19,3,398],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.per",p:[19,36,431]}],state:"good"},f:[{t:2,r:"data.per",p:[19,63,458]},"%"]}]}," ",{p:[21,5,500],t:7,e:"ui-section",a:{label:"Handle"},f:[{p:[22,9,536],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.flush"],s:'_0?"toggle-on":"toggle-off"'},p:[23,10,557]}],state:[{t:2,x:{r:["data.isai","data.mode"],s:'_0||_1==-1?"disabled":null'},p:[24,11,614]}],action:[{t:2,x:{r:["data.flush"],s:'_0?"handle-0":"handle-1"'},p:[25,12,680]}]},f:[{t:2,x:{r:["data.flush"],s:'_0?"Disengage":"Engage"'},p:[26,5,728]}]}]}," ",{p:[28,2,800],t:7,e:"ui-section",a:{label:"Eject"},f:[{p:[29,3,829],t:7,e:"ui-button",a:{icon:"sign-out",state:[{t:2,x:{r:["data.isai"],s:'_0?"disabled":null'},p:[29,37,863]}],action:"eject"},f:["Eject Contents"]},{p:[29,114,940],t:7,e:"br"}]}," ",{p:[31,2,962],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[32,3,991],t:7,e:"ui-button",a:{icon:"power-off",state:[{t:2,x:{r:["data.mode"],s:'_0==-1?"disabled":null'},p:[32,38,1026]}],action:[{t:2,x:{r:["data.mode"],s:'_0?"pump-0":"pump-1"'},p:[32,87,1075]}],style:[{t:2,x:{r:["data.mode"],s:'_0?"selected":null'},p:[32,132,1120]}]}},{p:[32,180,1168],t:7,e:"br"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],248:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"DNA Vault Database"},f:[{p:[2,3,42],t:7,e:"ui-section",a:{label:"Human DNA"},f:[{p:[3,7,79],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.dna_max",p:[3,28,100]}],value:[{t:2,r:"data.dna",p:[3,53,125]}]},f:[{t:2,r:"data.dna",p:[3,67,139]},"/",{t:2,r:"data.dna_max",p:[3,80,152]}," Samples"]}]}," ",{p:[5,3,204],t:7,e:"ui-section",a:{label:"Plant Data"},f:[{p:[6,5,240],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.plants_max",p:[6,26,261]}],value:[{t:2,r:"data.plants",p:[6,54,289]}]},f:[{t:2,r:"data.plants",p:[6,71,306]},"/",{t:2,r:"data.plants_max",p:[6,87,322]}," Samples"]}]}," ",{p:[8,3,377],t:7,e:"ui-section",a:{label:"Animal Data"},f:[{p:[9,5,414],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.animals_max",p:[9,26,435]}],value:[{t:2,r:"data.animals",p:[9,55,464]}]},f:[{t:2,r:"data.animals",p:[9,73,482]},"/",{t:2,r:"data.animals_max",p:[9,90,499]}," Samples"]}]}]}," ",{t:4,f:[{p:[13,1,604],t:7,e:"ui-display",a:{title:"Personal Gene Therapy"},f:[{p:[14,3,650],t:7,e:"ui-section",f:[{p:[15,2,664],t:7,e:"span",f:["Applicable gene therapy treatments:"]}]}," ",{p:[17,3,731],t:7,e:"ui-section",f:[{p:[18,2,745],t:7,e:"ui-button",a:{action:"gene",params:['{"choice": "',{t:2,r:"data.choiceA",p:[18,47,790]},'"}']},f:[{t:2,r:"data.choiceA",p:[18,67,810]}]}," ",{p:[19,2,840],t:7,e:"ui-button",a:{action:"gene",params:['{"choice": "',{t:2,r:"data.choiceB",p:[19,47,885]},'"}']},f:[{t:2,r:"data.choiceB",p:[19,67,905]}]}]}]}],n:50,x:{r:["data.completed","data.used"],s:"_0&&!_1"},p:[12,1,567]}]},e.exports=a.extend(r.exports)},{205:205}],249:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{p:[2,5,16],t:7,e:"span",f:["Time Until Launch: ",{t:2,r:"data.timer_str",p:[2,30,41]}]}]}," ",{p:[4,1,80],t:7,e:"ui-notice",f:[{p:[5,3,94],t:7,e:"span",f:["Engines: ",{t:2,x:{r:["data.engines_started"],s:'_0?"Online":"Idle"'},p:[5,18,109]}]}]}," ",{p:[7,1,174],t:7,e:"ui-display",a:{title:"Early Launch"},f:[{p:[8,2,209],t:7,e:"span",f:["Authorizations Remaining: ",{t:2,x:{r:["data.emagged","data.authorizations_remaining"],s:'_0?"ERROR":_1'},p:[9,2,242]}]}," ",{p:[10,2,309],t:7,e:"ui-button",a:{icon:"exclamation-triangle",action:"authorize",style:"danger",state:[{t:2,x:{r:["data.enabled"],s:'_0?null:"disabled"'},p:[12,10,393]}]},f:["AUTHORIZE"]}," ",{p:[15,2,459],t:7,e:"ui-button",a:{icon:"minus",action:"repeal",state:[{t:2,x:{r:["data.enabled"],s:'_0?null:"disabled"'},p:[16,10,508]}]},f:["Repeal"]}," ",{p:[19,2,571],t:7,e:"ui-button",a:{icon:"close",action:"abort",state:[{t:2,x:{r:["data.enabled"],s:'_0?null:"disabled"'},p:[20,10,619]}]},f:["Repeal All"]}]}," ",{p:[24,1,699],t:7,e:"ui-display",a:{title:"Authorizations"},f:[{t:4,f:[{p:[26,3,768],t:7,e:"ui-section",a:{candystripe:0,nowrap:0},f:[{t:2,r:"name",p:[26,34,799]}," (",{t:2,r:"job",p:[26,44,809]},")"]}],n:52,r:"data.authorizations",p:[25,2,736]},{t:4,n:51,f:[{p:[28,3,843],t:7,e:"ui-section",a:{candystripe:0,nowrap:0},f:["No authorizations."]}],r:"data.authorizations"}]}]},e.exports=a.extend(r.exports)},{205:205}],250:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,3,15],t:7,e:"ui-section",a:{label:"Message"},f:[{t:2,r:"data.hidden_message",p:[3,5,48]}]}," ",{p:[5,3,90],t:7,e:"ui-section",a:{label:"Created On"},f:[{t:2,r:"data.realdate",p:[6,5,126]}]}," ",{p:[8,3,162],t:7,e:"ui-section",a:{label:"Approval"},f:[{p:[9,5,196],t:7,e:"ui-button",a:{icon:"arrow-up",state:[{t:2,x:{r:["data.is_creator","data.has_liked"],s:'_0?"disabled":_1?"selected":null'},p:[11,14,242]}],action:"like"},f:[{t:2,r:"data.num_likes",p:[12,21,333]}]}," ",{p:[13,5,368],t:7,e:"ui-button",a:{icon:"circle",state:[{t:2,x:{r:["data.is_creator","data.has_liked","data.has_disliked"],s:'_0?"disabled":!_1&&!_2?"selected":null'},p:[15,14,412]}],action:"neutral"}}," ",{p:[17,5,546],t:7,e:"ui-button",a:{icon:"arrow-down",state:[{t:2,x:{r:["data.is_creator","data.has_disliked"],s:'_0?"disabled":_1?"selected":null'},p:[19,14,594]}],action:"dislike"},f:[{t:2,r:"data.num_dislikes",p:[20,24,691]}]}]}]}," ",{t:4,f:[{p:[24,3,782],t:7,e:"ui-display",a:{title:"Admin Panel"},f:[{p:[25,5,819],t:7,e:"ui-section",a:{label:"Creator Ckey"},f:[{t:2,r:"data.creator_key",p:[25,38,852]}]}," ",{p:[26,5,890],t:7,e:"ui-section",a:{label:"Creator Character Name"},f:[{t:2,r:"data.creator_name",p:[26,48,933]}]}," ",{p:[27,5,972],t:7,e:"ui-button",a:{icon:"remove",action:"delete",style:"danger"},f:["Delete"]}]}],n:50,r:"data.admin_mode",p:[23,1,756]}]},e.exports=a.extend(r.exports)},{205:205}],251:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{p:[2,3,14],t:7,e:"span",f:["The requested interface (",{t:2,r:"config.interface",p:[2,34,45]},") was not found. Does it exist?"]}]}]},e.exports=a.extend(r.exports)},{205:205}],252:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"ui-display",f:[{p:[4,2,16],t:7,e:"div",a:{style:"float: left"},f:[{p:[5,3,44],t:7,e:"div",a:{"class":"item"},f:[{p:[6,4,66],t:7,e:"table",f:[{p:[6,11,73],t:7,e:"tr",f:[{t:4,f:[{p:[8,5,140],t:7,e:"td",f:[{p:[8,9,144],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[8,19,154]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[7,4,81]}," ",{t:4,f:[{p:[11,5,256],t:7,e:"td",f:[{p:[11,9,260],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[11,12,263]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[10,4,194]}," ",{t:4,f:[{p:[14,5,338],t:7,e:"td",f:[{p:[14,9,342],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[14,19,352]}]}}]}],n:50,r:"data.PC_ntneticon",p:[13,4,308]}," ",{t:4,f:[{p:[17,5,422],t:7,e:"td",f:[{p:[17,9,426],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[17,19,436]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[16,4,390]}," ",{t:4,f:[{p:[20,5,508],t:7,e:"td",f:[{p:[20,9,512],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[20,12,515]},{p:[20,35,538],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[19,4,476]}," ",{t:4,f:[{p:[23,5,593],t:7,e:"td",f:[{p:[23,9,597],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[23,19,607]}]}}]}],n:52,r:"data.PC_programheaders",p:[22,4,556]}]}]}]}]}," ",{p:[28,2,661],t:7,e:"div",a:{style:"float: right"},f:[{p:[29,3,690],t:7,e:"table",f:[{p:[29,10,697],t:7,e:"tr",f:[{p:[30,4,705],t:7,e:"td",f:[{p:[30,8,709],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[32,5,801],t:7,e:"td",f:[{p:[32,9,805],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[33,5,862],t:7,e:"td",f:[{p:[33,9,866],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[31,4,765]}]}]}]}]}," ",{p:[37,2,958],t:7,e:"div",a:{style:"clear: both"},f:[{t:4,f:[{p:[40,3,1007],t:7,e:"h2",f:["An error has occurred and this program can not continue."]}," Additional information: ",{t:2,r:"data.error",p:[41,27,1099]},{p:[41,41,1113],t:7,e:"br"}," ",{p:[42,3,1120],t:7,e:"i",f:["Please try again. If the problem persists contact your system administrator for assistance."]}," ",{p:[43,3,1221],t:7,e:"ui-button",a:{action:"PRG_closefile"},f:["Restart program"]}],n:50,r:"data.error",p:[39,2,986]},{t:4,n:51,f:[{t:4,f:[{p:[46,4,1320],t:7,e:"h2",f:["Viewing file ",{t:2,r:"data.filename",p:[46,21,1337]}]}," ",{p:[47,4,1363],t:7,e:"div",a:{"class":"item"},f:[{p:[48,4,1385],t:7,e:"ui-button",a:{action:"PRG_closefile"},f:["CLOSE"]}," ",{p:[49,4,1440],t:7,e:"ui-button",a:{action:"PRG_edit"},f:["EDIT"]}," ",{p:[50,4,1489],t:7,e:"ui-button",a:{action:"PRG_printfile"},f:["PRINT"]}," "]},{p:[51,10,1550],t:7,e:"hr"}," ",{t:3,r:"data.filedata",p:[52,4,1558]}],n:50,r:"data.filename",p:[45,3,1295]},{t:4,n:51,f:[{p:[54,4,1592],t:7,e:"h2",f:["Available files (local):"]}," ",{p:[55,4,1629],t:7,e:"table",f:[{p:[56,5,1641],t:7,e:"tr",f:[{p:[57,6,1651],t:7,e:"th",f:["File name"]}," ",{p:[58,6,1675],t:7,e:"th",f:["File type"]}," ",{p:[59,6,1699],t:7,e:"th",f:["File size (GQ)"]}," ",{p:[60,6,1728],t:7,e:"th",f:["Operations"]}]}," ",{t:4,f:[{p:[63,6,1788],t:7,e:"tr",f:[{p:[64,7,1799],t:7,e:"td",f:[{t:2,r:"name",p:[64,11,1803]}]}," ",{p:[65,7,1823],t:7,e:"td",f:[".",{t:2,r:"type",p:[65,12,1828]}]}," ",{p:[66,7,1848],t:7,e:"td",f:[{t:2,r:"size",p:[66,11,1852]},"GQ"]}," ",{p:[67,7,1874],t:7,e:"td",f:[{p:[68,8,1886],t:7,e:"ui-button",a:{action:"PRG_openfile",params:['{"name": "',{t:2,r:"name",p:[68,59,1937]},'"}']},f:["VIEW"]}," ",{p:[69,8,1973],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[69,26,1991]}],action:"PRG_deletefile",params:['{"name": "',{t:2,r:"name",p:[69,105,2070]},'"}']},f:["DELETE"]}," ",{p:[70,8,2108],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[70,26,2126]}],action:"PRG_rename",params:['{"name": "',{t:2,r:"name",p:[70,101,2201]},'"}']},f:["RENAME"]}," ",{p:[71,8,2239],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[71,26,2257]}],action:"PRG_clone",params:['{"name": "',{t:2,r:"name",p:[71,100,2331]},'"}']},f:["CLONE"]}," ",{t:4,f:[{p:[73,9,2402],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[73,27,2420]}],action:"PRG_copytousb",params:['{"name": "',{t:2,r:"name",p:[73,105,2498]},'"}']},f:["EXPORT"]}],n:50,r:"data.usbconnected",p:[72,8,2368]}]}]}],n:52,r:"data.files",p:[62,5,1762]}]}," ",{t:4,f:[{p:[80,4,2625],t:7,e:"h2",f:["Available files (portable device):"]}," ",{p:[81,4,2672],t:7,e:"table",f:[{p:[82,5,2684],t:7,e:"tr",f:[{p:[83,6,2694],t:7,e:"th",f:["File name"]}," ",{p:[84,6,2718],t:7,e:"th",f:["File type"]}," ",{p:[85,6,2742],t:7,e:"th",f:["File size (GQ)"]}," ",{p:[86,6,2771],t:7,e:"th",f:["Operations"]}]}," ",{t:4,f:[{p:[89,6,2834],t:7,e:"tr",f:[{p:[90,7,2845],t:7,e:"td",f:[{t:2,r:"name",p:[90,11,2849]}]}," ",{p:[91,7,2869],t:7,e:"td",f:[".",{t:2,r:"type",p:[91,12,2874]}]}," ",{p:[92,7,2894],t:7,e:"td",f:[{t:2,r:"size",p:[92,11,2898]},"GQ"]}," ",{p:[93,7,2920],t:7,e:"td",f:[{p:[94,8,2932],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[94,26,2950]}],action:"PRG_usbdeletefile",params:['{"name": "',{t:2,r:"name",p:[94,108,3032]},'"}']},f:["DELETE"]}," ",{t:4,f:[{p:[96,9,3104],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[96,27,3122]}],action:"PRG_copyfromusb",params:['{"name": "',{t:2,r:"name",p:[96,107,3202]},'"}']},f:["IMPORT"]}],n:50,r:"data.usbconnected",p:[95,8,3070]}]}]}],n:52,r:"data.usbfiles",p:[88,5,2805]}]}],n:50,r:"data.usbconnected",p:[79,4,2596]}," ",{p:[103,4,3311],t:7,e:"ui-button",a:{action:"PRG_newtextfile"},f:["NEW DATA FILE"]}],r:"data.filename"}],r:"data.error"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],253:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{seclevelState:function(){switch(this.get("data.seclevel")){case"blue":return"average";case"red":return"bad";case"delta":return"bad bold";default:return"good"}}}}}(r),r.exports.template={v:3,t:[" ",{p:[16,1,323],t:7,e:"ui-display",f:[{p:[17,5,341],t:7,e:"ui-section",a:{label:"Alert Level"},f:[{p:[18,9,383],t:7,e:"span",a:{"class":[{t:2,r:"seclevelState",p:[18,22,396]}]},f:[{t:2,x:{r:["text","data.seclevel"],s:"_0.titleCase(_1)"},p:[18,41,415]}]}]}," ",{p:[20,5,480],t:7,e:"ui-section",a:{label:"Controls"},f:[{p:[21,9,519],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.alarm"],s:'_0?"close":"bell-o"'},p:[21,26,536]}],action:[{t:2,x:{r:["data.alarm"],s:'_0?"reset":"alarm"'},p:[21,71,581]}]},f:[{t:2,x:{r:["data.alarm"],s:'_0?"Reset":"Activate"'},p:[22,13,631]}]}]}," ",{t:4,f:[{p:[25,7,733],t:7,e:"ui-section",a:{label:"Warning"},f:[{p:[26,9,771],t:7,e:"span",a:{"class":"bad bold"},f:["Safety measures offline. Device may exhibit abnormal behavior."]}]}],n:50,r:"data.emagged",p:[24,5,705]}]}]},e.exports=a.extend(r.exports)},{205:205}],254:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Labor Camp Teleporter"},f:[{p:[2,2,44],t:7,e:"ui-section",a:{label:"Teleporter Status"},f:[{p:[3,3,85],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.teleporter"],s:'_0?"good":"bad"'},p:[3,16,98]}]},f:[{t:2,x:{r:["data.teleporter"],s:'_0?"Connected":"Not connected"'},p:[3,54,136]}]}]}," ",{t:4,f:[{p:[6,4,239],t:7,e:"ui-section",a:{label:"Location"},f:[{p:[7,5,273],t:7,e:"span",f:[{t:2,r:"data.teleporter_location",p:[7,11,279]}]}]}," ",{p:[9,4,335],t:7,e:"ui-section",a:{label:"Locked status"},f:[{p:[10,5,374],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.teleporter_lock"],s:'_0?"lock":"unlock"'},p:[10,22,391]}],action:"teleporter_lock"},f:[{t:2,x:{r:["data.teleporter_lock"],s:'_0?"Locked":"Unlocked"'},p:[10,93,462]}]}," ",{p:[11,5,527],t:7,e:"ui-button",a:{action:"toggle_open"},f:[{t:2,x:{r:["data.teleporter_state_open"],s:'_0?"Open":"Closed"'},p:[11,37,559]}]}]}],n:50,r:"data.teleporter",p:[5,3,212]},{t:4,n:51,f:[{p:[14,4,653],t:7,e:"span",f:[{p:[14,10,659],t:7,e:"ui-button",a:{action:"scan_teleporter"},f:["Scan Teleporter"]}]}],r:"data.teleporter"}]}," ",{p:[17,1,754],t:7,e:"ui-display",a:{title:"Labor Camp Beacon"},f:[{p:[18,2,794],t:7,e:"ui-section",a:{label:"Beacon Status"},f:[{p:[19,3,831],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.beacon"],s:'_0?"good":"bad"'},p:[19,16,844]}]},f:[{t:2,x:{r:["data.beacon"],s:'_0?"Connected":"Not connected"'},p:[19,50,878]}]}]}," ",{t:4,f:[{p:[22,3,971],t:7,e:"ui-section",a:{label:"Location"},f:[{p:[23,4,1004],t:7,e:"span",f:[{t:2,r:"data.beacon_location",p:[23,10,1010]}]}]}],n:50,r:"data.beacon",p:[21,2,949]},{t:4,n:51,f:[{p:[26,4,1072],t:7,e:"span",f:[{p:[26,10,1078],t:7,e:"ui-button",a:{action:"scan_beacon"},f:["Scan Beacon"]}]}],r:"data.beacon"}]}," ",{p:[29,1,1165],t:7,e:"ui-display",a:{title:"Prisoner details"},f:[{p:[30,2,1204],t:7,e:"ui-section",a:{label:"Prisoner ID"},f:[{p:[31,3,1239],t:7,e:"ui-button",a:{action:"handle_id"},f:[{t:2,x:{r:["data.id","data.id_name"],s:'_0?_1:"-------------"'},p:[31,33,1269]}]}]}," ",{t:4,f:[{p:[34,2,1359],t:7,e:"ui-section",a:{label:"Set ID goal"},f:[{p:[35,4,1395],t:7,e:"ui-button",a:{action:"set_goal"},f:[{t:2,r:"data.goal",p:[35,33,1424]}]}]}],n:50,r:"data.id",p:[33,2,1342]}," ",{p:[38,2,1475],t:7,e:"ui-section",a:{label:"Occupant"},f:[{p:[39,3,1507],t:7,e:"span",f:[{t:2,x:{r:["data.prisoner.name"],s:'_0?_0:"No Occupant"'},p:[39,9,1513]}]}]}," ",{t:4,f:[{p:[42,3,1620],t:7,e:"ui-section",a:{label:"Criminal Status"},f:[{p:[43,4,1660],t:7,e:"span",f:[{t:2,r:"data.prisoner.crimstat",p:[43,10,1666]}]}]}],n:50,r:"data.prisoner",p:[41,2,1596]}]}," ",{p:[47,1,1739],t:7,e:"ui-display",f:[{p:[48,2,1753],t:7,e:"center",f:[{p:[48,10,1761],t:7,e:"ui-button",a:{action:"teleport",state:[{t:2,x:{r:["data.can_teleport"], -s:'_0?null:"disabled"'},p:[48,45,1796]}]},f:["Process Prisoner"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],255:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,2,14],t:7,e:"center",f:[{p:[2,10,22],t:7,e:"ui-button",a:{action:"handle_id"},f:[{t:2,x:{r:["data.id","data.id_name"],s:'_0?_1:"-------------"'},p:[2,40,52]}]}]}]}," ",{p:[4,1,132],t:7,e:"ui-display",a:{title:"Stored Items"},f:[{t:4,f:[{p:[6,3,189],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[6,22,208]}]},f:[{p:[7,4,222],t:7,e:"ui-button",a:{action:"release_items",params:['{"mobref":',{t:2,r:"mob",p:[7,56,274]},"}"],state:[{t:2,x:{r:["data.can_reclaim"],s:'_0?null:"disabled"'},p:[7,72,290]}]},f:["Drop Items"]}]}],n:52,r:"data.mobs",p:[5,2,167]}]}]},e.exports=a.extend(r.exports)},{205:205}],256:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"div",a:{style:"float: left"},f:[{p:[2,2,27],t:7,e:"div",a:{"class":"item"},f:[{p:[3,3,48],t:7,e:"table",f:[{p:[3,10,55],t:7,e:"tr",f:[{t:4,f:[{p:[5,4,120],t:7,e:"td",f:[{p:[5,8,124],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[5,18,134]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[4,3,62]}," ",{t:4,f:[{p:[8,4,233],t:7,e:"td",f:[{p:[8,8,237],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[8,11,240]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[7,3,172]}," ",{t:4,f:[{p:[11,4,312],t:7,e:"td",f:[{p:[11,8,316],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[11,18,326]}]}}]}],n:50,r:"data.PC_ntneticon",p:[10,3,283]}," ",{t:4,f:[{p:[14,4,393],t:7,e:"td",f:[{p:[14,8,397],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[14,18,407]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[13,3,362]}," ",{t:4,f:[{p:[17,4,476],t:7,e:"td",f:[{p:[17,8,480],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[17,11,483]},{p:[17,34,506],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[16,3,445]}," ",{t:4,f:[{p:[20,4,558],t:7,e:"td",f:[{p:[20,8,562],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[20,18,572]}]}}]}],n:52,r:"data.PC_programheaders",p:[19,3,522]}]}]}]}]}," ",{p:[25,1,621],t:7,e:"div",a:{style:"float: right"},f:[{p:[26,2,649],t:7,e:"table",f:[{p:[26,9,656],t:7,e:"tr",f:[{p:[27,3,663],t:7,e:"td",f:[{p:[27,7,667],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[29,4,757],t:7,e:"td",f:[{p:[29,8,761],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[30,4,817],t:7,e:"td",f:[{p:[30,8,821],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[28,3,722]}]}]}]}]}," ",{p:[34,1,909],t:7,e:"div",a:{style:"clear: both"},f:[{t:4,f:[{p:[37,1,962],t:7,e:"ui-button",a:{action:"PRG_switchm",icon:"home",params:'{"target" : "mod"}',state:[{t:2,x:{r:["data.mmode"],s:'_0==1?"disabled":null'},p:[37,80,1041]}]},f:["Access Modification"]}],n:50,r:"data.have_id_slot",p:[36,1,936]},{p:[39,1,1122],t:7,e:"ui-button",a:{action:"PRG_switchm",icon:"folder-open",params:'{"target" : "manage"}',state:[{t:2,x:{r:["data.mmode"],s:'_0==2?"disabled":null'},p:[39,90,1211]}]},f:["Job Management"]}," ",{p:[40,1,1279],t:7,e:"ui-button",a:{action:"PRG_switchm",icon:"folder-open",params:'{"target" : "manifest"}',state:[{t:2,x:{r:["data.mmode"],s:'!_0?"disabled":null'},p:[40,92,1370]}]},f:["Crew Manifest"]}," ",{t:4,f:[{p:[42,1,1459],t:7,e:"ui-button",a:{action:"PRG_print",icon:"print",state:[{t:2,x:{r:["data.has_id","data.mmode"],s:'!_1||_0&&_1==1?null:"disabled"'},p:[42,51,1509]}]},f:["Print"]}],n:50,r:"data.have_printer",p:[41,1,1433]},{t:4,f:[{p:[46,1,1628],t:7,e:"div",a:{"class":"item"},f:[{p:[47,3,1649],t:7,e:"h2",f:["Crew Manifest"]}," ",{p:[48,3,1674],t:7,e:"br"},"Please use security record computer to modify entries.",{p:[48,61,1732],t:7,e:"br"},{p:[48,65,1736],t:7,e:"br"}]}," ",{t:4,f:[{p:[51,2,1773],t:7,e:"div",a:{"class":"item"},f:[{t:2,r:"name",p:[52,2,1793]}," - ",{t:2,r:"rank",p:[52,13,1804]}]}],n:52,r:"data.manifest",p:[50,1,1748]}],n:50,x:{r:["data.mmode"],s:"!_0"},p:[45,1,1608]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.mmode"],s:"_0==2"},f:[{p:[57,1,1859],t:7,e:"div",a:{"class":"item"},f:[{p:[58,3,1880],t:7,e:"h2",f:["Job Management"]}]}," ",{p:[60,1,1911],t:7,e:"table",f:[{p:[61,1,1919],t:7,e:"tr",f:[{p:[61,5,1923],t:7,e:"td",a:{style:"width:25%"},f:[{p:[61,27,1945],t:7,e:"b",f:["Job"]}]},{p:[61,42,1960],t:7,e:"td",a:{style:"width:25%"},f:[{p:[61,64,1982],t:7,e:"b",f:["Slots"]}]},{p:[61,81,1999],t:7,e:"td",a:{style:"width:25%"},f:[{p:[61,103,2021],t:7,e:"b",f:["Open job"]}]},{p:[61,123,2041],t:7,e:"td",a:{style:"width:25%"},f:[{p:[61,145,2063],t:7,e:"b",f:["Close job"]}]}]}," ",{t:4,f:[{p:[64,2,2113],t:7,e:"tr",f:[{p:[64,6,2117],t:7,e:"td",f:[{t:2,r:"title",p:[64,10,2121]}]},{p:[64,24,2135],t:7,e:"td",f:[{t:2,r:"current",p:[64,28,2139]},"/",{t:2,r:"total",p:[64,40,2151]}]},{p:[64,54,2165],t:7,e:"td",f:[{p:[64,58,2169],t:7,e:"ui-button",a:{action:"PRG_open_job",params:['{"target" : "',{t:2,r:"title",p:[64,112,2223]},'"}'],state:[{t:2,x:{r:["status_open"],s:'_0?null:"disabled"'},p:[64,132,2243]}]},f:[{t:2,r:"desc_open",p:[64,169,2280]}]},{p:[64,194,2305],t:7,e:"br"}]},{p:[64,203,2314],t:7,e:"td",f:[{p:[64,207,2318],t:7,e:"ui-button",a:{action:"PRG_close_job",params:['{"target" : "',{t:2,r:"title",p:[64,262,2373]},'"}'],state:[{t:2,x:{r:["status_close"],s:'_0?null:"disabled"'},p:[64,282,2393]}]},f:[{t:2,r:"desc_close",p:[64,320,2431]}]}]}]}],n:52,r:"data.slots",p:[62,1,2090]}]}]},{t:4,n:50,x:{r:["data.mmode"],s:"!(_0==2)"},f:[" ",{p:[72,1,2501],t:7,e:"div",a:{"class":"item"},f:[{p:[73,3,2522],t:7,e:"h2",f:["Access Modification"]}]}," ",{t:4,f:[{p:[77,3,2582],t:7,e:"span",a:{"class":"alert"},f:[{p:[77,23,2602],t:7,e:"i",f:["Please insert the ID into the terminal to proceed."]}]},{p:[77,87,2666],t:7,e:"br"}],n:50,x:{r:["data.has_id"],s:"!_0"},p:[76,1,2559]},{p:[80,1,2680],t:7,e:"div",a:{"class":"item"},f:[{p:[81,3,2701],t:7,e:"div",a:{"class":"itemLabel"},f:["Target Identity:"]}," ",{p:[84,3,2754],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[85,2,2781],t:7,e:"ui-button",a:{icon:"eject",action:"PRG_eject",params:'{"target" : "id"}'},f:[{t:2,r:"data.id_name",p:[85,72,2851]}]}]}]}," ",{p:[88,1,2896],t:7,e:"div",a:{"class":"item"},f:[{p:[89,3,2917],t:7,e:"div",a:{"class":"itemLabel"},f:["Auth Identity:"]}," ",{p:[92,3,2968],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[93,2,2995],t:7,e:"ui-button",a:{icon:"eject",action:"PRG_eject",params:'{"target" : "auth"}'},f:[{t:2,r:"data.auth_name",p:[93,74,3067]}]}]}]}," ",{p:[96,1,3114],t:7,e:"hr"}," ",{t:4,f:[{t:4,f:[{p:[100,2,3170],t:7,e:"div",a:{"class":"item"},f:[{p:[101,4,3192],t:7,e:"h2",f:["Details"]}]}," ",{t:4,f:[{p:[105,2,3239],t:7,e:"div",a:{"class":"item"},f:[{p:[106,4,3261],t:7,e:"div",a:{"class":"itemLabel"},f:["Registered Name:"]}," ",{p:[109,4,3317],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.id_owner",p:[110,3,3345]}]}]}," ",{p:[113,2,3382],t:7,e:"div",a:{"class":"item"},f:[{p:[114,4,3404],t:7,e:"div",a:{"class":"itemLabel"},f:["Rank:"]}," ",{p:[117,4,3449],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.id_rank",p:[118,3,3477]}]}]}," ",{p:[121,2,3513],t:7,e:"div",a:{"class":"item"},f:[{p:[122,4,3535],t:7,e:"div",a:{"class":"itemLabel"},f:["Demote:"]}," ",{p:[125,4,3582],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[126,3,3610],t:7,e:"ui-button",a:{action:"PRG_terminate",icon:"gear",state:[{t:2,x:{r:["data.id_rank"],s:'_0=="Unassigned"?"disabled":null'},p:[126,56,3663]}]},f:["Demote ",{t:2,r:"data.id_owner",p:[126,117,3724]}]}]}]}],n:50,r:"data.minor",p:[104,2,3219]},{t:4,n:51,f:[{p:[131,2,3784],t:7,e:"div",a:{"class":"item"},f:[{p:[132,4,3806],t:7,e:"div",a:{"class":"itemLabel"},f:["Registered Name:"]}," ",{p:[135,4,3862],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[136,3,3890],t:7,e:"ui-button",a:{action:"PRG_edit",icon:"pencil",params:'{"name" : "1"}'},f:[{t:2,r:"data.id_owner",p:[136,70,3957]}]}]}]}," ",{p:[140,2,4007],t:7,e:"div",a:{"class":"item"},f:[{p:[141,4,4029],t:7,e:"h2",f:["Assignment"]}]}," ",{p:[143,3,4059],t:7,e:"ui-button",a:{action:"PRG_togglea",icon:"gear"},f:[{t:2,x:{r:["data.assignments"],s:'_0?"Hide assignments":"Show assignments"'},p:[143,47,4103]}]}," ",{p:[144,2,4179],t:7,e:"div",a:{"class":"item"},f:[{p:[145,4,4201],t:7,e:"span",a:{id:"allvalue.jobsslot"},f:[]}]}," ",{p:[149,2,4254],t:7,e:"div",a:{"class":"item"},f:[{t:4,f:[{p:[151,4,4304],t:7,e:"div",a:{id:"all-value.jobs"},f:[{p:[152,3,4332],t:7,e:"table",f:[{p:[153,5,4344],t:7,e:"tr",f:[{p:[154,4,4352],t:7,e:"th"},{p:[154,13,4361],t:7,e:"th",f:["Command"]}]}," ",{p:[156,5,4392],t:7,e:"tr",f:[{p:[157,4,4400],t:7,e:"th",f:["Special"]}," ",{p:[158,4,4420],t:7,e:"td",f:[{p:[159,6,4430],t:7,e:"ui-button",a:{action:"PRG_assign",params:'{"assign_target" : "Captain"}',state:[{t:2,x:{r:["data.id_rank"],s:'_0=="Captain"?"selected":null'},p:[159,83,4507]}]},f:["Captain"]}," ",{p:[160,6,4583],t:7,e:"ui-button",a:{action:"PRG_assign",params:'{"assign_target" : "Custom"}'},f:["Custom"]}]}]}," ",{p:[163,5,4694],t:7,e:"tr",f:[{p:[164,4,4702],t:7,e:"th",a:{style:"color: '#FFA500';"},f:["Engineering"]}," ",{p:[165,4,4752],t:7,e:"td",f:[{t:4,f:[{p:[167,5,4798],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[167,64,4857]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[167,82,4875]}]},f:[{t:2,r:"display_name",p:[167,127,4920]}]}],n:52,r:"data.engineering_jobs",p:[166,6,4762]}]}]}," ",{p:[171,5,4987],t:7,e:"tr",f:[{p:[172,4,4995],t:7,e:"th",a:{style:"color: '#008000';"},f:["Medical"]}," ",{p:[173,4,5041],t:7,e:"td",f:[{t:4,f:[{p:[175,5,5083],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[175,64,5142]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[175,82,5160]}]},f:[{t:2,r:"display_name",p:[175,127,5205]}]}],n:52,r:"data.medical_jobs",p:[174,6,5051]}]}]}," ",{p:[179,5,5272],t:7,e:"tr",f:[{p:[180,4,5280],t:7,e:"th",a:{style:"color: '#800080';"},f:["Science"]}," ",{p:[181,4,5326],t:7,e:"td",f:[{t:4,f:[{p:[183,5,5368],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[183,64,5427]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[183,82,5445]}]},f:[{t:2,r:"display_name",p:[183,127,5490]}]}],n:52,r:"data.science_jobs",p:[182,6,5336]}]}]}," ",{p:[187,5,5557],t:7,e:"tr",f:[{p:[188,4,5565],t:7,e:"th",a:{style:"color: '#DD0000';"},f:["Security"]}," ",{p:[189,4,5612],t:7,e:"td",f:[{t:4,f:[{p:[191,5,5655],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[191,64,5714]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[191,82,5732]}]},f:[{t:2,r:"display_name",p:[191,127,5777]}]}],n:52,r:"data.security_jobs",p:[190,6,5622]}]}]}," ",{p:[195,5,5844],t:7,e:"tr",f:[{p:[196,4,5852],t:7,e:"th",a:{style:"color: '#cc6600';"},f:["Cargo"]}," ",{p:[197,4,5896],t:7,e:"td",f:[{t:4,f:[{p:[199,5,5936],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[199,64,5995]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[199,82,6013]}]},f:[{t:2,r:"display_name",p:[199,127,6058]}]}],n:52,r:"data.cargo_jobs",p:[198,6,5906]}]}]}," ",{p:[203,5,6125],t:7,e:"tr",f:[{p:[204,4,6133],t:7,e:"th",a:{style:"color: '#808080';"},f:["Civilian"]}," ",{p:[205,4,6180],t:7,e:"td",f:[{t:4,f:[{p:[207,5,6223],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[207,64,6282]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[207,82,6300]}]},f:[{t:2,r:"display_name",p:[207,127,6345]}]}],n:52,r:"data.civilian_jobs",p:[206,6,6190]}]}]}," ",{t:4,f:[{p:[212,4,6443],t:7,e:"tr",f:[{p:[213,6,6453],t:7,e:"th",a:{style:"color: '#A52A2A';"},f:["CentCom"]}," ",{p:[214,6,6501],t:7,e:"td",f:[{t:4,f:[{p:[217,7,6545],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[217,66,6604]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[217,84,6622]}]},f:[{t:2,r:"display_name",p:[217,129,6667]}]}],n:52,r:"data.centcom_jobs",p:[215,5,6510]}]}]}],n:50,r:"data.centcom_access",p:[211,5,6412]}]}]}],n:50,r:"data.assignments",p:[150,4,4276]}]}],r:"data.minor"}," ",{t:4,f:[{p:[229,4,6824],t:7,e:"div",a:{"class":"item"},f:[{p:[230,3,6845],t:7,e:"h2",f:["Central Command"]}]}," ",{p:[232,4,6883],t:7,e:"div",a:{"class":"item",style:"width: 100%"},f:[{t:4,f:[{p:[234,5,6962],t:7,e:"div",a:{"class":"itemContentWide"},f:[{p:[235,5,6996],t:7,e:"ui-button",a:{action:"PRG_access",params:['{"access_target" : "',{t:2,r:"ref",p:[235,64,7055]},'", "allowed" : "',{t:2,r:"allowed",p:[235,87,7078]},'"}'],state:[{t:2,x:{r:["allowed"],s:'_0?"toggle":null'},p:[235,109,7100]}]},f:[{t:2,r:"desc",p:[235,140,7131]}]}]}],n:52,r:"data.all_centcom_access",p:[233,3,6924]}]}],n:50,r:"data.centcom_access",p:[228,2,6793]},{t:4,n:51,f:[{p:[240,4,7198],t:7,e:"div",a:{"class":"item"},f:[{p:[241,3,7219],t:7,e:"h2",f:[{t:2,r:"data.station_name",p:[241,7,7223]}]}]}," ",{p:[243,4,7263],t:7,e:"div",a:{"class":"item",style:"width: 100%"},f:[{t:4,f:[{p:[245,5,7331],t:7,e:"div",a:{style:"float: left; width: 175px; min-height: 250px"},f:[{p:[246,4,7393],t:7,e:"div",a:{"class":"average"},f:[{p:[246,25,7414],t:7,e:"ui-button",a:{action:"PRG_regsel",state:[{t:2,x:{r:["selected"],s:'_0?"toggle":null'},p:[246,63,7452]}],params:['{"region" : "',{t:2,r:"regid",p:[246,116,7505]},'"}']},f:[{p:[246,129,7518],t:7,e:"b",f:[{t:2,r:"name",p:[246,132,7521]}]}]}]}," ",{p:[247,4,7555],t:7,e:"br"}," ",{t:4,f:[{p:[249,6,7589],t:7,e:"div",a:{"class":"itemContentWide"},f:[{p:[250,5,7623],t:7,e:"ui-button",a:{action:"PRG_access",params:['{"access_target" : "',{t:2,r:"ref",p:[250,64,7682]},'", "allowed" : "',{t:2,r:"allowed",p:[250,87,7705]},'"}'],state:[{t:2,x:{r:["allowed"],s:'_0?"toggle":null'},p:[250,109,7727]}]},f:[{t:2,r:"desc",p:[250,140,7758]}]}]}],n:52,r:"accesses",p:[248,6,7565]}]}],n:52,r:"data.regions",p:[244,3,7304]}]}],r:"data.centcom_access"}],n:50,r:"data.has_id",p:[99,3,3149]}],n:50,r:"data.authenticated",p:[98,1,3120]}]}],x:{r:["data.mmode"],s:"!_0"}}]}]},e.exports=a.extend(r.exports)},{205:205}],257:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{occupantStatState:function(){switch(this.get("data.occupant.stat")){case 0:return"good";case 1:return"average";default:return"bad"}}}}}(r),r.exports.template={v:3,t:[" ",{p:[15,1,266],t:7,e:"ui-display",a:{title:"Occupant"},f:[{p:[16,3,298],t:7,e:"ui-section",a:{label:"Occupant"},f:[{p:[17,3,330],t:7,e:"span",f:[{t:2,x:{r:["data.occupant.name"],s:'_0?_0:"No Occupant"'},p:[17,9,336]}]}]}," ",{t:4,f:[{p:[20,5,447],t:7,e:"ui-section",a:{label:"State"},f:[{p:[21,7,480],t:7,e:"span",a:{"class":[{t:2,r:"occupantStatState",p:[21,20,493]}]},f:[{t:2,x:{r:["data.occupant.stat"],s:'_0==0?"Conscious":_0==1?"Unconcious":"Dead"'},p:[21,43,516]}]}]}],n:50,r:"data.occupied",p:[19,3,421]}]}," ",{p:[25,1,656],t:7,e:"ui-display",a:{title:"Controls"},f:[{p:[26,2,687],t:7,e:"ui-section",a:{label:"Door"},f:[{p:[27,5,717],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.open"],s:'_0?"unlock":"lock"'},p:[27,22,734]}],action:"door"},f:[{t:2,x:{r:["data.open"],s:'_0?"Open":"Closed"'},p:[27,71,783]}]}]}," ",{p:[29,3,846],t:7,e:"ui-section",a:{label:"Uses"},f:[{t:2,r:"data.ready_implants",p:[30,5,876]}," ",{t:4,f:[{p:[32,7,938],t:7,e:"span",a:{"class":"fa fa-cog fa-spin"}}],n:50,r:"data.replenishing",p:[31,5,906]}]}," ",{p:[35,3,1002],t:7,e:"ui-section",a:{label:"Activate"},f:[{p:[36,7,1038],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.occupied","data.ready_implants","data.ready"],s:'_0&&_1>0&&_2?null:"disabled"'},p:[36,25,1056]}],action:"implant"},f:[{t:2,x:{r:["data.ready","data.special_name"],s:'_0?(_1?_1:"Implant"):"Recharging"'},p:[37,9,1162]}," "]},{p:[38,19,1265],t:7,e:"br"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],258:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{healthState:function(){var t=this.get("data.health");return t>70?"good":t>50?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{t:4,f:[{p:[15,3,282],t:7,e:"ui-notice",f:[{p:[16,5,298],t:7,e:"span",f:["Wipe in progress!"]}]}],n:50,r:"data.wiping",p:[14,1,260]},{p:{button:[{t:4,f:[{p:[22,7,458],t:7,e:"ui-button",a:{icon:"trash",state:[{t:2,x:{r:["data.isDead"],s:'_0?"disabled":null'},p:[22,38,489]}],action:"wipe"},f:[{t:2,x:{r:["data.wiping"],s:'_0?"Stop Wiping":"Wipe"'},p:[22,89,540]}," AI"]}],n:50,r:"data.name",p:[21,5,434]}]},t:7,e:"ui-display",a:{title:[{t:2,x:{r:["data.name"],s:'_0||"Empty Card"'},p:[19,19,370]}],button:0},f:[" ",{t:4,f:[{p:[26,5,647],t:7,e:"ui-section",a:{label:"Status"},f:[{p:[27,9,683],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.isDead","data.isBraindead"],s:'_0||_1?"bad":"good"'},p:[27,22,696]}]},f:[{t:2,x:{r:["data.isDead","data.isBraindead"],s:'_0||_1?"Offline":"Operational"'},p:[27,76,750]}]}]}," ",{p:[29,5,843],t:7,e:"ui-section",a:{label:"Software Integrity"},f:[{p:[30,7,889],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.health",p:[30,40,922]}],state:[{t:2,r:"healthState",p:[30,64,946]}]},f:[{t:2,x:{r:["adata.health"],s:"Math.round(_0)"},p:[30,81,963]},"%"]}]}," ",{p:[32,5,1024],t:7,e:"ui-section",a:{label:"Laws"},f:[{t:4,f:[{p:[34,9,1084],t:7,e:"span",a:{"class":"highlight"},f:[{t:2,r:".",p:[34,33,1108]}]},{p:[34,45,1120],t:7,e:"br"}],n:52,r:"data.laws",p:[33,7,1056]}]}," ",{p:[37,5,1164],t:7,e:"ui-section",a:{label:"Settings"},f:[{p:[38,7,1200],t:7,e:"ui-button",a:{icon:"signal",style:[{t:2,x:{r:["data.wireless"],s:'_0?"selected":null'},p:[38,39,1232]}],action:"wireless"},f:["Wireless Activity"]}," ",{p:[39,7,1325],t:7,e:"ui-button",a:{icon:"microphone",style:[{t:2,x:{r:["data.radio"],s:'_0?"selected":null'},p:[39,43,1361]}],action:"radio"},f:["Subspace Radio"]}]}],n:50,r:"data.name",p:[25,3,625]}]}]},e.exports=a.extend(r.exports)},{205:205}],259:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,2,22],t:7,e:"ui-notice",f:[{p:[3,3,36],t:7,e:"span",f:["Waiting for another device to confirm your request..."]}]}],n:50,r:"data.waiting",p:[1,1,0]},{t:4,n:51,f:[{p:[6,2,127],t:7,e:"ui-display",f:[{p:[7,3,142],t:7,e:"ui-section",f:[{t:4,f:[{p:[9,5,189],t:7,e:"ui-button",a:{icon:"check",action:"auth_swipe"},f:["Authorize ",{t:2,r:"data.auth_required",p:[9,59,243]}]}],n:50,r:"data.auth_required",p:[8,4,158]},{t:4,n:51,f:[{p:[11,5,294],t:7,e:"ui-button",a:{icon:"warning",state:[{t:2,x:{r:["data.red_alert"],s:'_0?"disabled":null'},p:[11,38,327]}],action:"red_alert"},f:["Red Alert"]}," ",{p:[12,5,412],t:7,e:"ui-button",a:{icon:"wrench",state:[{t:2,x:{r:["data.emergency_maint"],s:'_0?"disabled":null'},p:[12,37,444]}],action:"emergency_maint"},f:["Emergency Maintenance Access"]}],r:"data.auth_required"}]}]}],r:"data.waiting"}]},e.exports=a.extend(r.exports)},{205:205}],260:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Ore values"},f:[{t:4,f:[{p:[3,3,55],t:7,e:"ui-section",a:{label:[{t:2,r:"ore",p:[3,22,74]}]},f:[{p:[4,4,87],t:7,e:"span",f:[{t:2,r:"value",p:[4,10,93]}]}]}],n:52,r:"data.ores",p:[2,2,33]}]}," ",{p:[8,1,151],t:7,e:"ui-display",a:{title:"Points"},f:[{p:[9,2,180],t:7,e:"ui-section",a:{label:"ID"},f:[{p:[10,3,206],t:7,e:"ui-button",a:{action:"handle_id"},f:[{t:2,x:{r:["data.id","data.id_name"],s:'_0?_1:"-------------"'},p:[10,33,236]}]}]}," ",{t:4,f:[{p:[13,3,327],t:7,e:"ui-section",a:{label:"Points collected"},f:[{p:[14,4,368],t:7,e:"span",f:[{t:2,r:"data.points",p:[14,10,374]}]}]}," ",{p:[16,3,415],t:7,e:"ui-section",a:{label:"Goal"},f:[{p:[17,4,444],t:7,e:"span",f:[{t:2,r:"data.goal",p:[17,10,450]}]}]}," ",{p:[19,3,489],t:7,e:"ui-section",a:{label:"Unclaimed points"},f:[{p:[20,4,530],t:7,e:"span",f:[{t:2,r:"data.unclaimed_points",p:[20,10,536]}]}," ",{p:[21,4,572],t:7,e:"ui-button",a:{action:"claim_points",state:[{t:2,x:{r:["data.unclaimed_points"],s:'_0?null:"disabled"'},p:[21,43,611]}]},f:["Claim points"]}]}],n:50,r:"data.id",p:[12,2,309]}]}," ",{p:[25,1,721],t:7,e:"ui-display",f:[{p:[26,2,735],t:7,e:"center",f:[{p:[27,3,746],t:7,e:"ui-button",a:{action:"move_shuttle",state:[{t:2,x:{r:["data.can_go_home"],s:'_0?null:"disabled"'},p:[27,42,785]}]},f:["Move shuttle"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],261:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{chargeState:function(t){var e=this.get("data.battery.max");return t>e/2?"good":t>e/4?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[15,1,252],t:7,e:"div",a:{style:"float: left"},f:[{p:[16,2,279],t:7,e:"div",a:{"class":"item"},f:[{p:[17,3,300],t:7,e:"table",f:[{p:[17,10,307],t:7,e:"tr",f:[{t:4,f:[{p:[19,4,372],t:7,e:"td",f:[{p:[19,8,376],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[19,18,386]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[18,3,314]}," ",{t:4,f:[{p:[22,4,485],t:7,e:"td",f:[{p:[22,8,489],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[22,11,492]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[21,3,424]}," ",{t:4,f:[{p:[25,4,564],t:7,e:"td",f:[{p:[25,8,568],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[25,18,578]}]}}]}],n:50,r:"data.PC_ntneticon",p:[24,3,535]}," ",{t:4,f:[{p:[28,4,645],t:7,e:"td",f:[{p:[28,8,649],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[28,18,659]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[27,3,614]}," ",{t:4,f:[{p:[31,4,728],t:7,e:"td",f:[{p:[31,8,732],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[31,11,735]},{p:[31,34,758],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[30,3,697]}," ",{t:4,f:[{p:[34,4,810],t:7,e:"td",f:[{p:[34,8,814],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[34,18,824]}]}}]}],n:52,r:"data.PC_programheaders",p:[33,3,774]}]}]}]}]}," ",{p:[39,1,873],t:7,e:"div",a:{style:"float: right"},f:[{p:[40,2,901],t:7,e:"table",f:[{p:[40,9,908],t:7,e:"tr",f:[{p:[41,3,915],t:7,e:"td",f:[{p:[41,7,919],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[43,4,1009],t:7,e:"td",f:[{p:[43,8,1013],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[44,4,1069],t:7,e:"td",f:[{p:[44,8,1073],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[42,3,974]}]}]}]}]}," ",{p:[48,1,1161],t:7,e:"div",a:{style:"clear: both"},f:[{p:[49,1,1187],t:7,e:"ui-display",f:[{p:[50,2,1201],t:7,e:"i",f:["Welcome to computer configuration utility. Please consult your system administrator if you have any questions about your device."]},{p:[50,137,1336],t:7,e:"hr"}," ",{p:[51,2,1342],t:7,e:"ui-display",a:{title:"Power Supply"},f:[{t:4,f:[{p:[53,4,1402],t:7,e:"ui-section",a:{label:"Battery Status"},f:["Active"]}," ",{p:[56,4,1470],t:7,e:"ui-section",a:{label:"Battery Rating"},f:[{t:2,r:"data.battery.max",p:[57,5,1510]}]}," ",{p:[59,4,1551],t:7,e:"ui-section",a:{label:"Battery Charge"},f:[{p:[60,5,1591],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.battery.max",p:[60,26,1612]}],value:[{t:2,r:"adata.battery.charge",p:[60,56,1642]}],state:[{t:2,x:{r:["chargeState","adata.battery.charge"],s:"_0(_1)"},p:[60,89,1675]}]},f:[{t:2,x:{r:["adata.battery.charge"],s:"Math.round(_0)"},p:[60,128,1714]},"/",{t:2,r:"adata.battery.max",p:[60,165,1751]}]}]}],n:50,r:"data.battery",p:[52,3,1378]},{t:4,n:51,f:[{p:[63,4,1813],t:7,e:"ui-section",a:{label:"Battery Status"},f:["Not Available"]}],r:"data.battery"}," ",{p:[68,3,1897],t:7,e:"ui-section",a:{label:"Power Usage"},f:[{t:2,r:"data.power_usage",p:[69,4,1933]},"W"]}]}," ",{p:[73,2,1989],t:7,e:"ui-display",a:{title:"File System"},f:[{p:[74,3,2024],t:7,e:"ui-section",a:{label:"Used Capacity"},f:[{p:[75,4,2062],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.disk_size",p:[75,25,2083]}],value:[{t:2,r:"adata.disk_used",p:[75,53,2111]}],state:"good"},f:[{t:2,x:{r:["adata.disk_used"],s:"Math.round(_0)"},p:[75,87,2145]},"GQ/",{t:2,r:"adata.disk_size",p:[75,121,2179]},"GQ"]}]}]}," ",{p:[79,2,2244],t:7,e:"ui-display",a:{title:"Computer Components"},f:[{t:4,f:[{p:[82,4,2315],t:7,e:"ui-subdisplay",a:{title:[{t:2,r:"name",p:[82,26,2337]}]},f:[{p:[84,5,2353],t:7,e:"i",f:[{t:2,r:"desc",p:[84,8,2356]}]},{p:[84,20,2368],t:7,e:"br"}," ",{p:[85,5,2377],t:7,e:"ui-section",a:{label:"State"},f:[{t:2,x:{r:["enabled"],s:'_0?"Enabled":"Disabled"'},p:[88,6,2415]}]}," ",{p:[91,5,2478],t:7,e:"ui-section",a:{Label:"Power Usage"},f:[{t:2,r:"powerusage",p:[92,6,2516]},"W"]}," ",{t:4,f:[{p:[95,6,2577],t:7,e:"ui-section",a:{label:"Toggle Component"},f:[{p:[96,7,2621],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["enabled"],s:'_0?"power-off":"close"'},p:[96,24,2638]}],action:"PC_toggle_component",params:['{"name": "',{t:2,r:"name",p:[96,108,2722]},'"}']},f:[{t:2,x:{r:["enabled"],s:'_0?"On":"Off"'},p:[97,8,2742]}]}]}],n:50,x:{r:["critical"],s:"!_0"},p:[94,5,2554]}," ",{p:[101,4,2822],t:7,e:"br"},{p:[101,8,2826],t:7,e:"br"}]}],n:52,r:"data.hardware",p:[81,3,2288]}]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],262:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{mechChargeState:function(t){var e=this.get("data.recharge_port.mech.cell.maxcharge");return t>=e/1.5?"good":t>=e/3?"average":"bad"},mechHealthState:function(t){var e=this.get("data.recharge_port.mech.maxhealth");return t>e/1.5?"good":t>e/3?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[20,1,526],t:7,e:"ui-display",a:{title:"Mech Status"},f:[{t:4,f:[{t:4,f:[{p:[23,4,624],t:7,e:"ui-section",a:{label:"Integrity"},f:[{p:[24,6,660],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.recharge_port.mech.maxhealth",p:[24,27,681]}],value:[{t:2,r:"adata.recharge_port.mech.health",p:[24,74,728]}],state:[{t:2,x:{r:["mechHealthState","adata.recharge_port.mech.health"],s:"_0(_1)"},p:[24,117,771]}]},f:[{t:2,x:{r:["adata.recharge_port.mech.health"],s:"Math.round(_0)"},p:[24,171,825]},"/",{t:2,r:"adata.recharge_port.mech.maxhealth",p:[24,219,873]}]}]}," ",{t:4,f:[{t:4,f:[{p:[28,5,1034],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[28,31,1060],t:7,e:"span",a:{"class":"bad"},f:["Cell Critical Failure"]}]}],n:50,r:"data.recharge_port.mech.cell.critfail",p:[27,3,984]},{t:4,n:51,f:[{p:[30,11,1141],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[31,13,1180],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.recharge_port.mech.cell.maxcharge",p:[31,34,1201]}],value:[{t:2,r:"adata.recharge_port.mech.cell.charge",p:[31,86,1253]}],state:[{t:2,x:{r:["mechChargeState","adata.recharge_port.mech.cell.charge"],s:"_0(_1)"},p:[31,134,1301]}]},f:[{t:2,x:{r:["adata.recharge_port.mech.cell.charge"],s:"Math.round(_0)"},p:[31,193,1360]},"/",{t:2,x:{r:["adata.recharge_port.mech.cell.maxcharge"],s:"Math.round(_0)"},p:[31,246,1413]}]}]}],r:"data.recharge_port.mech.cell.critfail"}],n:50,r:"data.recharge_port.mech.cell",p:[26,4,945]},{t:4,n:51,f:[{p:[35,3,1524],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[35,29,1550],t:7,e:"span",a:{"class":"bad"},f:["Cell Missing"]}]}],r:"data.recharge_port.mech.cell"}],n:50,r:"data.recharge_port.mech",p:[22,2,589]},{t:4,n:51,f:[{p:[38,4,1625],t:7,e:"ui-section",f:["Mech Not Found"]}],r:"data.recharge_port.mech"}],n:50,r:"data.recharge_port",p:[21,3,561]},{t:4,n:51,f:[{p:[41,5,1689],t:7,e:"ui-section",f:["Recharging Port Not Found"]}," ",{p:[42,2,1741],t:7,e:"ui-button",a:{icon:"refresh",action:"reconnect"},f:["Reconnect"]}],r:"data.recharge_port"}]}]},e.exports=a.extend(r.exports)},{205:205}],263:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{t:4,f:[{p:[3,5,45],t:7,e:"ui-section",a:{label:"Interface Lock"},f:[{p:[4,7,88],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.locked"],s:'_0?"lock":"unlock"'},p:[4,24,105]}],action:"lock"},f:[{t:2,x:{r:["data.locked"],s:'_0?"Engaged":"Disengaged"'},p:[4,75,156]}]}]}],n:50,r:"data.siliconUser",p:[2,3,15]},{t:4,n:51,f:[{p:[7,5,247],t:7,e:"span",f:["Swipe an ID card to ",{t:2,x:{r:["data.locked"],s:'_0?"unlock":"lock"'},p:[7,31,273]}," this interface."]}],r:"data.siliconUser"}]}," ",{p:[10,1,358],t:7,e:"ui-display",a:{title:"Status"},f:[{p:[11,3,389],t:7,e:"ui-section",a:{label:"Power"},f:[{t:4,f:[{p:[13,7,470],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[13,24,487]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":null'},p:[13,68,531]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[13,116,579]}]}],n:50,x:{r:["data.locked","data.siliconUser"],s:"!_0||_1"},p:[12,5,421]},{t:4,n:51,f:[{p:[15,7,639],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.on"],s:'_0?"good":"bad"'},p:[15,20,652]}],state:[{t:2,x:{r:["data.cell"],s:'_0?null:"disabled"'},p:[15,57,689]}]},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[15,92,724]}]}],x:{r:["data.locked","data.siliconUser"],s:"!_0||_1"}}]}," ",{p:[18,3,791],t:7,e:"ui-section",a:{label:"Cell"},f:[{p:[19,5,822],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.cell"],s:'_0?null:"bad"'},p:[19,18,835]}]},f:[{t:2,x:{r:["data.cell","data.cellPercent"],s:'_0?_1+"%":"No Cell"'},p:[19,48,865]}]}]}," ",{p:[21,3,943],t:7,e:"ui-section",a:{label:"Mode"},f:[{p:[22,5,974],t:7,e:"span",a:{"class":[{t:2,r:"data.modeStatus",p:[22,18,987]}]},f:[{t:2,r:"data.mode",p:[22,39,1008]}]}]}," ",{p:[24,3,1049],t:7,e:"ui-section",a:{label:"Load"},f:[{p:[25,5,1080],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.load"],s:'_0?"good":"average"'},p:[25,18,1093]}]},f:[{t:2,x:{r:["data.load"],s:'_0?_0:"None"'},p:[25,54,1129]}]}]}," ",{p:[27,3,1191],t:7,e:"ui-section",a:{label:"Destination"},f:[{p:[28,5,1229],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.destination"],s:'_0?"good":"average"'},p:[28,18,1242]}]},f:[{t:2,x:{r:["data.destination"],s:'_0?_0:"None"'},p:[28,60,1284]}]}]}]}," ",{t:4,f:[{p:{button:[{t:4,f:[{p:[35,9,1513],t:7,e:"ui-button",a:{icon:"eject",action:"unload"},f:["Unload"]}],n:50,r:"data.load",p:[34,7,1486]}," ",{t:4,f:[{p:[38,9,1623],t:7,e:"ui-button",a:{icon:"eject",action:"ejectpai"},f:["Eject PAI"]}],n:50,r:"data.haspai",p:[37,7,1594]}," ",{p:[40,7,1709],t:7,e:"ui-button",a:{icon:"pencil",action:"setid"},f:["Set ID"]}]},t:7,e:"ui-display",a:{title:"Controls",button:0},f:[" ",{p:[42,5,1791],t:7,e:"ui-section",a:{label:"Destination"},f:[{p:[43,7,1831],t:7,e:"ui-button",a:{icon:"pencil",action:"destination"},f:["Set Destination"]}," ",{p:[44,7,1912],t:7,e:"ui-button",a:{icon:"stop",action:"stop"},f:["Stop"]}," ",{p:[45,7,1973],t:7,e:"ui-button",a:{icon:"play",action:"go"},f:["Go"]}]}," ",{p:[47,5,2047],t:7,e:"ui-section",a:{label:"Home"},f:[{p:[48,7,2080],t:7,e:"ui-button",a:{icon:"home",action:"home"},f:["Go Home"]}," ",{p:[49,7,2144],t:7,e:"ui-button",a:{icon:"pencil",action:"sethome"},f:["Set Home"]}]}," ",{p:[51,5,2231],t:7,e:"ui-section",a:{label:"Settings"},f:[{p:[52,7,2268],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.autoReturn"],s:'_0?"check-square-o":"square-o"'},p:[52,24,2285]}],style:[{t:2,x:{r:["data.autoReturn"],s:'_0?"selected":null'},p:[52,84,2345]}],action:"autoret"},f:["Auto-Return Home"]}," ",{p:[54,7,2449],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.autoPickup"],s:'_0?"check-square-o":"square-o"'},p:[54,24,2466]}],style:[{t:2,x:{r:["data.autoPickup"],s:'_0?"selected":null'},p:[54,84,2526]}],action:"autopick"},f:["Auto-Pickup Crate"]}," ",{p:[56,7,2632],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.reportDelivery"],s:'_0?"check-square-o":"square-o"'},p:[56,24,2649]}],style:[{t:2,x:{r:["data.reportDelivery"],s:'_0?"selected":null'},p:[56,88,2713]}],action:"report"},f:["Report Deliveries"]}]}]}],n:50,x:{r:["data.locked","data.siliconUser"],s:"!_0||_1"},p:[31,1,1373]}]},e.exports=a.extend(r.exports)},{205:205}],264:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63] -}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[36,1,936],t:7,e:"ui-display",f:[{t:4,f:[{p:[38,3,975],t:7,e:"h1",f:["ADMINISTRATIVE MODE"]}],n:50,r:"data.adminmode",p:[37,2,950]}," ",{t:4,f:[{p:[42,3,1036],t:7,e:"div",a:{"class":"itemLabel"},f:["Current channel:"]}," ",{p:[45,3,1092],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.title",p:[46,4,1121]}]}," ",{p:[48,3,1147],t:7,e:"div",a:{"class":"itemLabel"},f:["Operator access:"]}," ",{p:[51,3,1203],t:7,e:"div",a:{"class":"itemContent"},f:[{t:4,f:[{p:[53,5,1261],t:7,e:"b",f:["Enabled"]}],n:50,r:"data.is_operator",p:[52,4,1232]},{t:4,n:51,f:[{p:[55,5,1292],t:7,e:"b",f:["Disabled"]}],r:"data.is_operator"}]}," ",{p:[58,3,1330],t:7,e:"div",a:{"class":"itemLabel"},f:["Controls:"]}," ",{p:[61,3,1379],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[62,4,1408],t:7,e:"table",f:[{p:[63,5,1420],t:7,e:"tr",f:[{p:[63,9,1424],t:7,e:"td",f:[{p:[63,13,1428],t:7,e:"ui-button",a:{action:"PRG_speak"},f:["Send message"]}]}]},{p:[64,5,1487],t:7,e:"tr",f:[{p:[64,9,1491],t:7,e:"td",f:[{p:[64,13,1495],t:7,e:"ui-button",a:{action:"PRG_changename"},f:["Change nickname"]}]}]},{p:[65,5,1562],t:7,e:"tr",f:[{p:[65,9,1566],t:7,e:"td",f:[{p:[65,13,1570],t:7,e:"ui-button",a:{action:"PRG_toggleadmin"},f:["Toggle administration mode"]}]}]},{p:[66,5,1649],t:7,e:"tr",f:[{p:[66,9,1653],t:7,e:"td",f:[{p:[66,13,1657],t:7,e:"ui-button",a:{action:"PRG_leavechannel"},f:["Leave channel"]}]}]},{p:[67,5,1724],t:7,e:"tr",f:[{p:[67,9,1728],t:7,e:"td",f:[{p:[67,13,1732],t:7,e:"ui-button",a:{action:"PRG_savelog"},f:["Save log to local drive"]}," ",{t:4,f:[{p:[69,6,1834],t:7,e:"tr",f:[{p:[69,10,1838],t:7,e:"td",f:[{p:[69,14,1842],t:7,e:"ui-button",a:{action:"PRG_renamechannel"},f:["Rename channel"]}]}]},{p:[70,6,1912],t:7,e:"tr",f:[{p:[70,10,1916],t:7,e:"td",f:[{p:[70,14,1920],t:7,e:"ui-button",a:{action:"PRG_setpassword"},f:["Set password"]}]}]},{p:[71,6,1986],t:7,e:"tr",f:[{p:[71,10,1990],t:7,e:"td",f:[{p:[71,14,1994],t:7,e:"ui-button",a:{action:"PRG_deletechannel"},f:["Delete channel"]}]}]}],n:50,r:"data.is_operator",p:[68,5,1804]}]}]}]}]}," ",{p:[75,3,2096],t:7,e:"b",f:["Chat Window"]}," ",{p:[76,4,2118],t:7,e:"div",a:{"class":"statusDisplay",style:"overflow: auto;"},f:[{p:[77,4,2173],t:7,e:"div",a:{"class":"item"},f:[{p:[78,5,2196],t:7,e:"div",a:{"class":"itemContent",style:"width: 100%;"},f:[{t:4,f:[{t:2,r:"msg",p:[80,7,2278]},{p:[80,14,2285],t:7,e:"br"}],n:52,r:"data.messages",p:[79,6,2248]}]}]}]}," ",{p:[85,3,2339],t:7,e:"b",f:["Connected Users"]},{p:[85,25,2361],t:7,e:"br"}," ",{t:4,f:[{t:2,r:"name",p:[87,4,2394]},{p:[87,12,2402],t:7,e:"br"}],n:52,r:"data.clients",p:[86,3,2368]}],n:50,r:"data.title",p:[41,2,1015]},{t:4,n:51,f:[{p:[90,3,2431],t:7,e:"b",f:["Controls:"]}," ",{p:[91,3,2450],t:7,e:"table",f:[{p:[92,4,2461],t:7,e:"tr",f:[{p:[92,8,2465],t:7,e:"td",f:[{p:[92,12,2469],t:7,e:"ui-button",a:{action:"PRG_changename"},f:["Change nickname"]}]}]},{p:[93,4,2535],t:7,e:"tr",f:[{p:[93,8,2539],t:7,e:"td",f:[{p:[93,12,2543],t:7,e:"ui-button",a:{action:"PRG_newchannel"},f:["New Channel"]}]}]},{p:[94,4,2605],t:7,e:"tr",f:[{p:[94,8,2609],t:7,e:"td",f:[{p:[94,12,2613],t:7,e:"ui-button",a:{action:"PRG_toggleadmin"},f:["Toggle administration mode"]}]}]}]}," ",{p:[96,3,2701],t:7,e:"b",f:["Available channels:"]}," ",{p:[97,3,2730],t:7,e:"table",f:[{t:4,f:[{p:[99,4,2773],t:7,e:"tr",f:[{p:[99,8,2777],t:7,e:"td",f:[{p:[99,12,2781],t:7,e:"ui-button",a:{action:"PRG_joinchannel",params:['{"id": "',{t:2,r:"id",p:[99,64,2833]},'"}']},f:[{t:2,r:"chan",p:[99,74,2843]}]},{p:[99,94,2863],t:7,e:"br"}]}]}],n:52,r:"data.all_channels",p:[98,3,2740]}]}],r:"data.title"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],265:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[36,1,936],t:7,e:"ui-display",f:[{t:4,f:["##SYSTEM ERROR: ",{t:2,r:"data.error",p:[38,19,987]},{p:[38,33,1001],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["RESET"]}],n:50,r:"data.error",p:[37,2,950]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.target"],s:"_0"},f:["##DoS traffic generator active. Tx: ",{t:2,r:"data.speed",p:[40,39,1111]},"GQ/s",{p:[40,57,1129],t:7,e:"br"}," ",{t:4,f:[{t:2,r:"nums",p:[42,4,1166]},{p:[42,12,1174],t:7,e:"br"}],n:52,r:"data.dos_strings",p:[41,3,1136]}," ",{p:[44,3,1193],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["ABORT"]}]},{t:4,n:50,x:{r:["data.target"],s:"!(_0)"},f:[" ##DoS traffic generator ready. Select target device.",{p:[46,55,1305],t:7,e:"br"}," ",{t:4,f:["Targeted device ID: ",{t:2,r:"data.focus",p:[48,24,1354]}],n:50,r:"data.focus",p:[47,3,1312]},{t:4,n:51,f:["Targeted device ID: None"],r:"data.focus"}," ",{p:[52,3,1420],t:7,e:"ui-button",a:{action:"PRG_execute"},f:["EXECUTE"]},{p:[52,54,1471],t:7,e:"div",a:{style:"clear:both"}}," Detected devices on network:",{p:[53,31,1532],t:7,e:"br"}," ",{t:4,f:[{p:[55,4,1564],t:7,e:"ui-button",a:{action:"PRG_target_relay",params:['{"targid": "',{t:2,r:"id",p:[55,61,1621]},'"}']},f:[{t:2,r:"id",p:[55,71,1631]}]}],n:52,r:"data.relays",p:[54,3,1539]}]}],r:"data.error"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],266:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[37,1,937],t:7,e:"ui-display",f:[{p:[38,2,951],t:7,e:"i",f:["Welcome to software download utility. Please select which software you wish to download."]},{p:[38,97,1046],t:7,e:"hr"}," ",{t:4,f:[{p:[40,3,1073],t:7,e:"ui-display",a:{title:"Download Error"},f:[{p:[41,4,1112],t:7,e:"ui-section",a:{label:"Information"},f:[{t:2,r:"data.error",p:[42,5,1149]}]}," ",{p:[44,4,1184],t:7,e:"ui-section",a:{label:"Reset Program"},f:[{p:[45,5,1223],t:7,e:"ui-button",a:{icon:"times",action:"PRG_reseterror"},f:["RESET"]}]}]}],n:50,r:"data.error",p:[39,2,1052]},{t:4,n:51,f:[{t:4,f:[{p:[52,4,1374],t:7,e:"ui-display",a:{title:"Download Running"},f:[{p:[53,5,1416],t:7,e:"i",f:["Please wait..."]}," ",{p:[54,5,1442],t:7,e:"ui-section",a:{label:"File name"},f:[{t:2,r:"data.downloadname",p:[55,6,1478]}]}," ",{p:[57,5,1522],t:7,e:"ui-section",a:{label:"File description"},f:[{t:2,r:"data.downloaddesc",p:[58,6,1565]}]}," ",{p:[60,5,1609],t:7,e:"ui-section",a:{label:"File size"},f:[{t:2,r:"data.downloadcompletion",p:[61,6,1645]},"GQ / ",{t:2,r:"data.downloadsize",p:[61,38,1677]},"GQ"]}," ",{p:[63,5,1723],t:7,e:"ui-section",a:{label:"Transfer Rate"},f:[{t:2,r:"data.downloadspeed",p:[64,6,1763]}," GQ/s"]}," ",{p:[66,5,1813],t:7,e:"ui-section",a:{label:"Download progress"},f:[{p:[67,6,1857],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.downloadsize",p:[67,27,1878]}],value:[{t:2,r:"adata.downloadcompletion",p:[67,58,1909]}],state:"good"},f:[{t:2,x:{r:["adata.downloadcompletion"],s:"Math.round(_0)"},p:[67,101,1952]},"/",{t:2,r:"adata.downloadsize",p:[67,142,1993]}]}]}]}],n:50,r:"data.downloadname",p:[51,3,1345]}],r:"data.error"}," ",{t:4,f:[{t:4,f:[{p:[74,4,2132],t:7,e:"ui-display",a:{title:"Primary software repository"},f:[{p:[75,5,2185],t:7,e:"ui-section",a:{label:"Hard drive"},f:[{p:[76,6,2222],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.disk_size",p:[76,27,2243]}],value:[{t:2,r:"adata.disk_used",p:[76,55,2271]}],state:"good"},f:[{t:2,x:{r:["adata.disk_used"],s:"Math.round(_0)"},p:[76,89,2305]},"GQ/",{t:2,r:"adata.disk_size",p:[76,123,2339]},"GQ"]}]}," ",{t:4,f:[{p:[79,6,2434],t:7,e:"ui-section",a:{label:"File name"},f:[{t:2,r:"filename",p:[80,7,2471]}," (",{t:2,r:"size",p:[80,21,2485]}," GQ)"]}," ",{p:[82,6,2522],t:7,e:"ui-section",a:{label:"Program name"},f:[{t:2,r:"filedesc",p:[83,7,2562]}]}," ",{p:[85,6,2600],t:7,e:"ui-section",a:{label:"Description"},f:[{t:2,r:"fileinfo",p:[86,7,2639]}]}," ",{p:[88,6,2676],t:7,e:"ui-section",a:{label:"Compatibility"},f:[{t:2,r:"compatibility",p:[89,7,2717]}]}," ",{p:[91,6,2759],t:7,e:"ui-section",a:{label:"File controls"},f:[{p:[92,7,2800],t:7,e:"ui-button",a:{icon:"signal",action:"PRG_downloadfile",params:['{"filename": "',{t:2,r:"filename",p:[92,80,2873]},'"}']},f:["DOWNLOAD"]}]}],n:52,r:"data.downloadable_programs",p:[78,5,2392]}]}," ",{t:4,f:[{p:[99,5,3011],t:7,e:"ui-display",a:{title:"UNKNOWN software repository"},f:[{p:[100,6,3065],t:7,e:"i",f:["Please note that NanoTrasen does not recommend download of software from non-official servers."]}," ",{t:4,f:[{p:[102,7,3209],t:7,e:"ui-section",a:{label:"File name"},f:[{t:2,r:"filename",p:[103,8,3247]}," (",{t:2,r:"size",p:[103,22,3261]}," GQ)"]}," ",{p:[105,7,3300],t:7,e:"ui-section",a:{label:"Program name"},f:[{t:2,r:"filedesc",p:[106,8,3341]}]}," ",{p:[108,7,3381],t:7,e:"ui-section",a:{label:"Description"},f:[{t:2,r:"fileinfo",p:[109,8,3421]}]}," ",{p:[111,7,3460],t:7,e:"ui-section",a:{label:"File controls"},f:[{p:[112,8,3502],t:7,e:"ui-button",a:{icon:"signal",action:"PRG_downloadfile",params:['{"filename": "',{t:2,r:"filename",p:[112,81,3575]},'"}']},f:["DOWNLOAD"]}]}],n:52,r:"data.hacked_programs",p:[101,6,3172]}]}],n:50,r:"data.hackedavailable",p:[98,4,2978]}],n:50,x:{r:["data.error"],s:"!_0"},p:[73,3,2109]}],n:50,x:{r:["data.downloadname"],s:"!_0"},p:[72,2,2080]}," ",{p:[121,2,3714],t:7,e:"br"},{p:[121,6,3718],t:7,e:"br"},{p:[121,10,3722],t:7,e:"hr"},{p:[121,14,3726],t:7,e:"i",f:["NTOS v2.0.4b Copyright NanoTrasen 2557 - 2559"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],267:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[3,1,2],t:7,e:"ui-display",f:[{p:[4,2,16],t:7,e:"div",a:{style:"float: left"},f:[{p:[5,3,44],t:7,e:"div",a:{"class":"item"},f:[{p:[6,4,66],t:7,e:"table",f:[{p:[6,11,73],t:7,e:"tr",f:[{t:4,f:[{p:[8,5,140],t:7,e:"td",f:[{p:[8,9,144],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[8,19,154]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[7,4,81]}," ",{t:4,f:[{p:[11,5,256],t:7,e:"td",f:[{p:[11,9,260],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[11,12,263]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[10,4,194]}," ",{t:4,f:[{p:[14,5,338],t:7,e:"td",f:[{p:[14,9,342],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[14,19,352]}]}}]}],n:50,r:"data.PC_ntneticon",p:[13,4,308]}," ",{t:4,f:[{p:[17,5,422],t:7,e:"td",f:[{p:[17,9,426],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[17,19,436]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[16,4,390]}," ",{t:4,f:[{p:[20,5,508],t:7,e:"td",f:[{p:[20,9,512],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[20,12,515]},{p:[20,35,538],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[19,4,476]}," ",{t:4,f:[{p:[23,5,593],t:7,e:"td",f:[{p:[23,9,597],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[23,19,607]}]}}]}],n:52,r:"data.PC_programheaders",p:[22,4,556]}]}]}]}]}," ",{p:[28,2,661],t:7,e:"div",a:{style:"float: right"},f:[{p:[29,3,690],t:7,e:"table",f:[{p:[29,10,697],t:7,e:"tr",f:[{p:[30,4,705],t:7,e:"td",f:[{p:[30,8,709],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[32,5,801],t:7,e:"td",f:[{p:[32,9,805],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[33,5,862],t:7,e:"td",f:[{p:[33,9,866],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[31,4,765]}]}]}]}]}," ",{p:[37,2,958],t:7,e:"div",a:{style:"clear: both"},f:[{p:[39,2,986],t:7,e:"ui-display",a:{title:"WIRELESS CONNECTIVITY"},f:[{p:[41,3,1032],t:7,e:"ui-section",a:{label:"Active NTNetRelays"},f:[{p:[42,4,1075],t:7,e:"b",f:[{t:2,r:"data.ntnetrelays",p:[42,7,1078]}]}]}," ",{t:4,f:[{p:[45,4,1149],t:7,e:"ui-section",a:{label:"System status"},f:[{p:[46,6,1189],t:7,e:"b",f:[{t:2,x:{r:["data.ntnetstatus"],s:'_0?"ENABLED":"DISABLED"'},p:[46,9,1192]}]}]}," ",{p:[48,4,1262],t:7,e:"ui-section",a:{label:"Control"},f:[{p:[50,4,1295],t:7,e:"ui-button",a:{icon:"plus",action:"toggleWireless"},f:["TOGGLE"]}]}," ",{p:[54,4,1390],t:7,e:"br"},{p:[54,8,1394],t:7,e:"br"}," ",{p:[55,4,1402],t:7,e:"i",f:["Caution - Disabling wireless transmitters when using wireless device may prevent you from re-enabling them again!"]}],n:50,r:"data.ntnetrelays",p:[44,3,1121]},{t:4,n:51,f:[{p:[57,4,1537],t:7,e:"br"},{p:[57,8,1541],t:7,e:"p",f:["Wireless coverage unavailable, no relays are connected."]}],r:"data.ntnetrelays"}]}," ",{p:[62,2,1632],t:7,e:"ui-display",a:{title:"FIREWALL CONFIGURATION"},f:[{p:[64,2,1678],t:7,e:"table",f:[{p:[65,3,1688],t:7,e:"tr",f:[{p:[66,4,1696],t:7,e:"th",f:["PROTOCOL"]},{p:[67,4,1712],t:7,e:"th",f:["STATUS"]},{p:[68,4,1726],t:7,e:"th",f:["CONTROL"]}]},{p:[69,3,1740],t:7,e:"tr",f:[" ",{p:[70,4,1748],t:7,e:"td",f:["Software Downloads"]},{p:[71,4,1774],t:7,e:"td",f:[{t:2,x:{r:["data.config_softwaredownload"],s:'_0?"ENABLED":"DISABLED"'},p:[71,8,1778]}]},{p:[72,4,1839],t:7,e:"td",f:[" ",{p:[72,9,1844],t:7,e:"ui-button",a:{action:"toggle_function",params:'{"id": "1"}'},f:["TOGGLE"]}]}]},{p:[73,3,1922],t:7,e:"tr",f:[" ",{p:[74,4,1930],t:7,e:"td",f:["Peer to Peer Traffic"]},{p:[75,4,1958],t:7,e:"td",f:[{t:2,x:{r:["data.config_peertopeer"],s:'_0?"ENABLED":"DISABLED"'},p:[75,8,1962]}]},{p:[76,4,2017],t:7,e:"td",f:[{p:[76,8,2021],t:7,e:"ui-button",a:{action:"toggle_function",params:'{"id": "2"}'},f:["TOGGLE"]}]}]},{p:[77,3,2099],t:7,e:"tr",f:[" ",{p:[78,4,2107],t:7,e:"td",f:["Communication Systems"]},{p:[79,4,2136],t:7,e:"td",f:[{t:2,x:{r:["data.config_communication"],s:'_0?"ENABLED":"DISABLED"'},p:[79,8,2140]}]},{p:[80,4,2198],t:7,e:"td",f:[{p:[80,8,2202],t:7,e:"ui-button",a:{action:"toggle_function",params:'{"id": "3"}'},f:["TOGGLE"]}]}]},{p:[81,3,2280],t:7,e:"tr",f:[" ",{p:[82,4,2288],t:7,e:"td",f:["Remote System Control"]},{p:[83,4,2317],t:7,e:"td",f:[{t:2,x:{r:["data.config_systemcontrol"],s:'_0?"ENABLED":"DISABLED"'},p:[83,8,2321]}]},{p:[84,4,2379],t:7,e:"td",f:[{p:[84,8,2383],t:7,e:"ui-button",a:{action:"toggle_function",params:'{"id": "4"}'},f:["TOGGLE"]}]}]}]}]}," ",{p:[88,2,2486],t:7,e:"ui-display",a:{title:"SECURITY SYSTEMS"},f:[{t:4,f:[{p:[91,4,2552],t:7,e:"ui-notice",f:[{p:[92,5,2568],t:7,e:"h1",f:["NETWORK INCURSION DETECTED"]}]}," ",{p:[94,5,2624],t:7,e:"i",f:["An abnormal activity has been detected in the network. Please verify system logs for more information"]}],n:50,r:"data.idsalarm",p:[90,3,2527]}," ",{p:[97,3,2749],t:7,e:"ui-section",a:{label:"Intrusion Detection System"},f:[{p:[98,4,2800],t:7,e:"b",f:[{t:2,x:{r:["data.idsstatus"],s:'_0?"ENABLED":"DISABLED"'},p:[98,7,2803]}]}]}," ",{p:[101,3,2872],t:7,e:"ui-section",a:{label:"Maximal Log Count"},f:[{p:[102,4,2914],t:7,e:"b",f:[{t:2,r:"data.ntnetmaxlogs",p:[102,7,2917]}]}]}," ",{p:[105,3,2964],t:7,e:"ui-section",a:{label:"Controls"},f:[]}," ",{p:[107,4,3013],t:7,e:"table",f:[{p:[108,4,3024],t:7,e:"tr",f:[{p:[108,8,3028],t:7,e:"td",f:[{p:[108,12,3032],t:7,e:"ui-button",a:{action:"resetIDS"},f:["RESET IDS"]}]}]},{p:[109,4,3086],t:7,e:"tr",f:[{p:[109,8,3090],t:7,e:"td",f:[{p:[109,12,3094],t:7,e:"ui-button",a:{action:"toggleIDS"},f:["TOGGLE IDS"]}]}]},{p:[110,4,3150],t:7,e:"tr",f:[{p:[110,8,3154],t:7,e:"td",f:[{p:[110,12,3158],t:7,e:"ui-button",a:{action:"updatemaxlogs"},f:["SET LOG LIMIT"]}]}]},{p:[111,4,3221],t:7,e:"tr",f:[{p:[111,8,3225],t:7,e:"td",f:[{p:[111,12,3229],t:7,e:"ui-button",a:{action:"purgelogs"},f:["PURGE LOGS"]}]}]}]}," ",{p:[114,3,3297],t:7,e:"ui-subdisplay",a:{title:"System Logs"},f:[{p:[115,3,3335],t:7,e:"div",a:{"class":"statusDisplay",style:"overflow: auto;"},f:[{p:[116,3,3389],t:7,e:"div",a:{"class":"item"},f:[{p:[117,4,3411],t:7,e:"div",a:{"class":"itemContent",style:"width: 100%;"},f:[{t:4,f:[{t:2,r:"entry",p:[119,6,3492]},{p:[119,15,3501],t:7,e:"br"}],n:52,r:"data.ntnetlogs",p:[118,5,3462]}]}]}]}]}]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],268:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Relay"},f:[{t:4,f:[{p:[3,3,55],t:7,e:"h2",f:["NETWORK BUFFERS OVERLOADED"]}," ",{p:[4,3,93],t:7,e:"h3",f:["Overload Recovery Mode"]}," ",{p:[5,3,127],t:7,e:"i",f:["This system is suffering temporary outage due to overflow of traffic buffers. Until buffered traffic is processed, all further requests will be dropped. Frequent occurences of this error may indicate insufficient hardware capacity of your network. Please contact your network planning department for instructions on how to resolve this issue."]}," ",{p:[6,3,479],t:7,e:"h3",f:["ADMINISTRATIVE OVERRIDE"]}," ",{p:[7,3,514],t:7,e:"b",f:["CAUTION - Data loss may occur"]}," ",{p:[8,3,555],t:7,e:"ui-button",a:{icon:"signal",action:"restart"},f:["Purge buffered traffic"]}],n:50,r:"data.dos_crashed",p:[2,2,28]},{t:4,n:51,f:[{p:[12,3,652],t:7,e:"ui-section",a:{label:"Relay status"},f:[{p:[13,4,689],t:7,e:"ui-button",a:{icon:"power-off",action:"toggle"},f:[{t:2,x:{r:["data.enabled"],s:'_0?"ENABLED":"DISABLED"'},p:[14,6,739]}]}]}," ",{p:[18,3,819],t:7,e:"ui-section",a:{label:"Network buffer status"},f:[{t:2,r:"data.dos_overload",p:[19,4,865]}," / ",{t:2,r:"data.dos_capacity",p:[19,28,889]}," GQ"]}],r:"data.dos_crashed"}]}]},e.exports=a.extend(r.exports)},{205:205}],269:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"ui-display",f:[{p:[4,2,16],t:7,e:"div",a:{style:"float: left"},f:[{p:[5,3,44],t:7,e:"div",a:{"class":"item"},f:[{p:[6,4,66],t:7,e:"table",f:[{p:[6,11,73],t:7,e:"tr",f:[{t:4,f:[{p:[8,5,140],t:7,e:"td",f:[{p:[8,9,144],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[8,19,154]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[7,4,81]}," ",{t:4,f:[{p:[11,5,256],t:7,e:"td",f:[{p:[11,9,260],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[11,12,263]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[10,4,194]}," ",{t:4,f:[{p:[14,5,338],t:7,e:"td",f:[{p:[14,9,342],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[14,19,352]}]}}]}],n:50,r:"data.PC_ntneticon",p:[13,4,308]}," ",{t:4,f:[{p:[17,5,422],t:7,e:"td",f:[{p:[17,9,426],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[17,19,436]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[16,4,390]}," ",{t:4,f:[{p:[20,5,508],t:7,e:"td",f:[{p:[20,9,512],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[20,12,515]},{p:[20,35,538],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[19,4,476]}," ",{t:4,f:[{p:[23,5,593],t:7,e:"td",f:[{p:[23,9,597],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[23,19,607]}]}}]}],n:52,r:"data.PC_programheaders",p:[22,4,556]}]}]}]}]}," ",{p:[28,2,661],t:7,e:"div",a:{style:"float: right"},f:[{p:[29,3,690],t:7,e:"table",f:[{p:[29,10,697],t:7,e:"tr",f:[{p:[30,4,705],t:7,e:"td",f:[{p:[30,8,709],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[32,5,801],t:7,e:"td",f:[{p:[32,9,805],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[33,5,862],t:7,e:"td",f:[{p:[33,9,866],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[31,4,765]}]}]}]}]}," ",{p:[37,2,958],t:7,e:"div",a:{style:"clear: both"},f:[{t:4,f:[{p:[40,2,1006],t:7,e:"div",a:{"class":"item"},f:[{p:[41,3,1027],t:7,e:"h2",f:["An error has occurred during operation..."]}," ",{p:[42,3,1080],t:7,e:"b",f:["Additional information:"]},{t:2,r:"data.error",p:[42,34,1111]},{p:[42,48,1125],t:7,e:"br"}," ",{p:[43,3,1132],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["Clear"]}]}],n:50,r:"data.error",p:[39,2,986]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.downloading"],s:"_0"},f:[{p:[46,3,1219],t:7,e:"h2",f:["Download in progress..."]}," ",{p:[47,3,1254],t:7,e:"div",a:{"class":"itemLabel"},f:["Downloaded file:"]}," ",{p:[50,3,1310],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.download_name",p:[51,4,1339]}]}," ",{p:[53,3,1374],t:7,e:"div",a:{"class":"itemLabel"},f:["Download progress:"]}," ",{p:[56,3,1432],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.download_progress",p:[57,4,1461]}," / ",{t:2,r:"data.download_size",p:[57,33,1490]}," GQ"]}," ",{p:[59,3,1527],t:7,e:"div",a:{"class":"itemLabel"},f:["Transfer speed:"]}," ",{p:[62,3,1582],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.download_netspeed",p:[63,4,1611]},"GQ/s"]}," ",{p:[65,3,1653],t:7,e:"div",a:{"class":"itemLabel"},f:["Controls:"]}," ",{p:[68,3,1702],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[69,4,1731],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["Abort download"]}]}]},{t:4,n:50,x:{r:["data.downloading","data.uploading"],s:"(!(_0))&&(_1)"},f:[" ",{p:[72,3,1826],t:7,e:"h2",f:["Server enabled"]}," ",{p:[73,3,1852],t:7,e:"div",a:{"class":"itemLabel"},f:["Connected clients:"]}," ",{p:[76,3,1910],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.upload_clients",p:[77,4,1939]}]}," ",{p:[79,3,1974],t:7,e:"div",a:{"class":"itemLabel"},f:["Provided file:"]}," ",{p:[82,3,2028],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.upload_filename",p:[83,4,2057]}]}," ",{p:[85,3,2093],t:7,e:"div",a:{"class":"itemLabel"},f:["Server password:"]}," ",{p:[88,3,2149],t:7,e:"div",a:{"class":"itemContent"},f:[{t:4,f:["ENABLED"],n:50,r:"data.upload_haspassword",p:[89,4,2178]},{t:4,n:51,f:["DISABLED"],r:"data.upload_haspassword"}]}," ",{p:[95,3,2269],t:7,e:"div",a:{"class":"itemLabel"},f:["Commands:"]}," ",{p:[98,3,2318],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[99,4,2347],t:7,e:"ui-button",a:{action:"PRG_setpassword"},f:["Set password"]}," ",{p:[100,4,2411],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["Exit server"]}]}]},{t:4,n:50,x:{r:["data.downloading","data.uploading","data.upload_filelist"],s:"(!(_0))&&((!(_1))&&(_2))"},f:[" ",{p:[103,3,2509],t:7,e:"h2",f:["File transfer server ready. Select file to upload:"]}," ",{p:[104,3,2572],t:7,e:"table",f:[{p:[105,3,2582],t:7,e:"tr",f:[{p:[105,7,2586],t:7,e:"th",f:["File name"]},{p:[105,20,2599],t:7,e:"th",f:["File size"]},{p:[105,33,2612],t:7,e:"th",f:["Controls ",{t:4,f:[{p:[107,4,2661],t:7,e:"tr",f:[{p:[107,8,2665],t:7,e:"td",f:[{t:2,r:"filename",p:[107,12,2669]}]},{p:[108,4,2685],t:7,e:"td",f:[{t:2,r:"size",p:[108,8,2689]},"GQ"]},{p:[109,4,2703],t:7,e:"td",f:[{p:[109,8,2707],t:7,e:"ui-button",a:{action:"PRG_uploadfile",params:['{"id": "',{t:2,r:"uid",p:[109,59,2758]},'"}']},f:["Select"]}]}]}],n:52,r:"data.upload_filelist",p:[106,3,2627]}]}]}]}," ",{p:[112,3,2813],t:7,e:"hr"}," ",{p:[113,3,2820],t:7,e:"ui-button",a:{action:"PRG_setpassword"},f:["Set password"]}," ",{p:[114,3,2883],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["Return"]}]},{t:4,n:50,x:{r:["data.downloading","data.uploading","data.upload_filelist"],s:"(!(_0))&&((!(_1))&&(!(_2)))"},f:[" ",{p:[116,3,2944],t:7,e:"h2",f:["Available files:"]}," ",{p:[117,3,2972],t:7,e:"table",a:{border:"1",style:"border-collapse: collapse"},f:[{p:[117,55,3024],t:7,e:"tr",f:[{p:[117,59,3028],t:7,e:"th",f:["Server UID"]},{p:[117,73,3042],t:7,e:"th",f:["File Name"]},{p:[117,86,3055],t:7,e:"th",f:["File Size"]},{p:[117,99,3068],t:7,e:"th",f:["Password Protection"]},{p:[117,122,3091],t:7,e:"th",f:["Operations ",{t:4,f:[{p:[119,5,3136],t:7,e:"tr",f:[{p:[119,9,3140],t:7,e:"td",f:[{t:2,r:"uid",p:[119,13,3144]}]},{p:[120,5,3156],t:7,e:"td",f:[{t:2,r:"filename",p:[120,9,3160]}]},{p:[121,5,3177],t:7,e:"td",f:[{t:2,r:"size",p:[121,9,3181]},"GQ ",{t:4,f:[{p:[123,6,3221],t:7,e:"td",f:["Enabled"]}],n:50,r:"haspassword",p:[122,5,3196]}," ",{t:4,f:[{p:[126,6,3275],t:7,e:"td",f:["Disabled"]}],n:50,x:{r:["haspassword"],s:"!_0"},p:[125,5,3249]}]},{p:[129,5,3309],t:7,e:"td",f:[{p:[129,9,3313],t:7,e:"ui-button",a:{action:"PRG_downloadfile",params:['{"id": "',{t:2,r:"uid",p:[129,62,3366]},'"}']},f:["Download"]}]}]}],n:52,r:"data.servers",p:[118,4,3109]}]}]}]}," ",{p:[132,3,3424],t:7,e:"hr"}," ",{p:[133,3,3431],t:7,e:"ui-button",a:{action:"PRG_uploadmenu"},f:["Send file"]}]}],r:"data.error"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],270:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Auth. Disk:"},f:[{t:4,f:[{p:[3,7,67],t:7,e:"ui-button",a:{icon:"eject",style:"selected",action:"eject_disk"},f:["++++++++++"]}],n:50,r:"data.disk_present",p:[2,3,35]},{t:4,n:51,f:[{p:[5,7,168],t:7,e:"ui-button",a:{icon:"plus",action:"insert_disk"},f:["----------"]}],r:"data.disk_present"}]}," ",{p:[8,1,259],t:7,e:"ui-display",a:{title:"Status"},f:[{p:[9,3,289],t:7,e:"span",f:[{t:2,r:"data.status1",p:[9,9,295]},"-",{t:2,r:"data.status2",p:[9,26,312]}]}]}," ",{p:[11,1,350],t:7,e:"ui-display",a:{title:"Timer"},f:[{p:[12,3,379],t:7,e:"ui-section",a:{label:"Time to Detonation"},f:[{p:[13,5,423],t:7,e:"span",f:[{t:2,x:{r:["data.timing","data.time_left","data.timer_set"],s:"_0?_1:_2"},p:[13,11,429]}]}]}," ",{t:4,f:[{p:[16,5,525],t:7,e:"ui-section",a:{label:"Adjust Timer"},f:[{p:[17,7,565],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.disk_present","data.code_approved","data.timer_is_not_default"],s:'_0&&_1&&_2?null:"disabled"'},p:[17,40,598]}],action:"timer",params:'{"change": "reset"}'},f:["Reset"]}," ",{p:[19,7,768],t:7,e:"ui-button",a:{icon:"minus",state:[{t:2,x:{r:["data.disk_present","data.code_approved","data.timer_is_not_min"],s:'_0&&_1&&_2?null:"disabled"'},p:[19,38,799]}],action:"timer",params:'{"change": "decrease"}'},f:["Decrease"]}," ",{p:[21,7,971],t:7,e:"ui-button",a:{icon:"pencil",state:[{t:2,x:{r:["data.disk_present","data.code_approved"],s:'_0&&_1?null:"disabled"'},p:[21,39,1003]}],action:"timer",params:'{"change": "input"}'},f:["Set"]}," ",{p:[22,7,1134],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.disk_present","data.code_approved","data.timer_is_not_max"],s:'_0&&_1&&_2?null:"disabled"'},p:[22,37,1164]}],action:"timer",params:'{"change": "increase"}'},f:["Increase"]}]}],n:51,r:"data.timing",p:[15,3,504]}," ",{p:[26,3,1369],t:7,e:"ui-section",a:{label:"Timer"},f:[{p:[27,5,1400],t:7,e:"ui-button",a:{icon:"clock-o",style:[{t:2,x:{r:["data.timing"],s:'_0?"danger":"caution"'},p:[27,38,1433]}],action:"toggle_timer",state:[{t:2,x:{r:["data.disk_present","data.code_approved","data.safety"],s:'_0&&_1&&!_2?null:"disabled"'},p:[29,14,1514]}]},f:[{t:2,x:{r:["data.timing"],s:'_0?"On":"Off"'},p:[30,7,1602]}]}]}]}," ",{p:[34,1,1680],t:7,e:"ui-display",a:{title:"Anchoring"},f:[{p:[35,3,1713],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.disk_present","data.code_approved"],s:'_0&&_1?null:"disabled"'},p:[36,12,1735]}],icon:[{t:2,x:{r:["data.anchored"],s:'_0?"lock":"unlock"'},p:[37,11,1810]}],style:[{t:2,x:{r:["data.anchored"],s:'_0?null:"caution"'},p:[38,12,1860]}],action:"anchor"},f:[{t:2,x:{r:["data.anchored"],s:'_0?"Engaged":"Off"'},p:[39,21,1918]}]}]}," ",{p:[41,1,1982],t:7,e:"ui-display",a:{title:"Safety"},f:[{p:[42,3,2012],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.disk_present","data.code_approved"],s:'_0&&_1?null:"disabled"'},p:[43,12,2034]}],icon:[{t:2,x:{r:["data.safety"],s:'_0?"lock":"unlock"'},p:[44,11,2109]}],action:"safety",style:[{t:2,x:{r:["data.safety"],s:'_0?"caution":"danger"'},p:[45,12,2173]}]},f:[{p:[46,7,2220],t:7,e:"span",f:[{t:2,x:{r:["data.safety"],s:'_0?"On":"Off"'},p:[46,13,2226]}]}]}]}," ",{p:[49,1,2293],t:7,e:"ui-display",a:{title:"Code"},f:[{p:[50,3,2321],t:7,e:"ui-section",a:{label:"Message"},f:[{t:2,r:"data.message",p:[50,31,2349]}]}," ",{p:[51,3,2381],t:7,e:"ui-section",a:{label:"Keypad"},f:[{p:[52,5,2413],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[52,39,2447]}],params:'{"digit":"1"}'},f:["1"]}," ",{p:[53,5,2531],t:7,e:"ui-button",a:{action:"keypad", -state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[53,39,2565]}],params:'{"digit":"2"}'},f:["2"]}," ",{p:[54,5,2649],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[54,39,2683]}],params:'{"digit":"3"}'},f:["3"]}," ",{p:[55,5,2767],t:7,e:"br"}," ",{p:[56,5,2776],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[56,39,2810]}],params:'{"digit":"4"}'},f:["4"]}," ",{p:[57,5,2894],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[57,39,2928]}],params:'{"digit":"5"}'},f:["5"]}," ",{p:[58,5,3012],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[58,39,3046]}],params:'{"digit":"6"}'},f:["6"]}," ",{p:[59,5,3130],t:7,e:"br"}," ",{p:[60,5,3139],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[60,39,3173]}],params:'{"digit":"7"}'},f:["7"]}," ",{p:[61,5,3257],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[61,39,3291]}],params:'{"digit":"8"}'},f:["8"]}," ",{p:[62,5,3375],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[62,39,3409]}],params:'{"digit":"9"}'},f:["9"]}," ",{p:[63,5,3493],t:7,e:"br"}," ",{p:[64,5,3502],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[64,39,3536]}],params:'{"digit":"R"}'},f:["R"]}," ",{p:[65,5,3620],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[65,39,3654]}],params:'{"digit":"0"}'},f:["0"]}," ",{p:[66,5,3738],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[66,39,3772]}],params:'{"digit":"E"}'},f:["E"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],271:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(302);e.exports={data:{filter:"",tooltiptext:function(t,e,n){var a="";return t&&(a+="REQUIREMENTS: "+t+" "),e&&(a+="CATALYSTS: "+e+" "),n&&(a+="TOOLS: "+n),a}},oninit:function(){var t=this;this.on({hover:function(t){this.set("hovered",t.context.params)},unhover:function(t){this.set("hovered")}}),this.observe("filter",function(e,a,r){var i=null;i=t.get("data.display_compact")?t.findAll(".section"):t.findAll(".display:not(:first-child)"),(0,n.filterMulti)(i,t.get("filter").toLowerCase())},{init:!1})}}}(r),r.exports.template={v:3,t:[" ",{p:[48,1,1295],t:7,e:"ui-display",a:{title:[{t:2,r:"data.category",p:[48,20,1314]}]},f:[{t:4,f:[{p:[50,3,1355],t:7,e:"ui-section",f:["Crafting... ",{p:[51,16,1383],t:7,e:"i",a:{"class":"fa-spin fa fa-spinner"}}]}],n:50,r:"data.busy",p:[49,2,1335]},{t:4,n:51,f:[{p:[54,3,1449],t:7,e:"ui-section",f:[{p:[55,4,1465],t:7,e:"ui-button",a:{icon:"arrow-left",action:"backwardCat"},f:[{t:2,r:"data.prev_cat",p:[56,5,1520]}]}," ",{p:[58,4,1557],t:7,e:"ui-button",a:{icon:"arrow-right",action:"forwardCat"},f:[{t:2,r:"data.next_cat",p:[59,5,1612]}]}," ",{t:4,f:[{p:[62,5,1689],t:7,e:"ui-button",a:{icon:"lock",action:"toggle_recipes"},f:["Showing Craftable Recipes"]}],n:50,r:"data.display_craftable_only",p:[61,4,1649]},{t:4,n:51,f:[{p:[66,5,1801],t:7,e:"ui-button",a:{icon:"unlock",action:"toggle_recipes"},f:["Showing All Recipes"]}],r:"data.display_craftable_only"}," ",{p:[70,4,1907],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.display_compact"],s:'_0?"check-square-o":"square-o"'},p:[70,21,1924]}],action:"toggle_compact"},f:["Compact"]}," ",{t:4,f:[{t:4,f:[" ",{p:[75,6,2152],t:7,e:"ui-input",a:{value:[{t:2,r:"filter",p:[75,23,2169]}],placeholder:"Filter.."}}],n:51,r:"data.display_compact",p:[74,5,2063]}],n:50,r:"config.fancy",p:[73,4,2038]}]}," ",{t:4,f:[{p:[80,5,2299],t:7,e:"ui-display",f:[{t:4,f:[{p:[82,6,2346],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[82,25,2365]}]},f:[{p:[83,7,2382],t:7,e:"ui-button",a:{tooltip:[{t:2,x:{r:["tooltiptext","req_text","catalyst_text","tool_text"],s:"_0(_1,_2,_3)"},p:[83,27,2402]}],"tooltip-side":"right",action:"make",params:['{"recipe": "',{t:2,r:"ref",p:[83,135,2510]},'"}'],icon:"gears"},v:{hover:"hover",unhover:"unhover"},f:["Craft"]}]}],n:52,r:"data.can_craft",p:[81,5,2316]}," ",{t:4,f:[{t:4,f:[{p:[90,7,2712],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[90,26,2731]}]},f:[{p:[91,8,2749],t:7,e:"ui-button",a:{tooltip:[{t:2,x:{r:["tooltiptext","req_text","catalyst_text","tool_text"],s:"_0(_1,_2,_3)"},p:[91,28,2769]}],"tooltip-side":"right",state:"disabled",icon:"gears"},v:{hover:"hover",unhover:"unhover"},f:["Craft"]}]}],n:52,r:"data.cant_craft",p:[89,6,2680]}],n:51,r:"data.display_craftable_only",p:[88,5,2642]}]}],n:50,r:"data.display_compact",p:[79,4,2266]},{t:4,n:51,f:[{t:4,f:[{p:[100,6,3082],t:7,e:"ui-display",a:{title:[{t:2,r:"name",p:[100,25,3101]}]},f:[{t:4,f:[{p:[102,8,3142],t:7,e:"ui-section",a:{label:"Requirements"},f:[{t:2,r:"req_text",p:[103,9,3184]}]}],n:50,r:"req_text",p:[101,7,3118]}," ",{t:4,f:[{p:[107,8,3267],t:7,e:"ui-section",a:{label:"Catalysts"},f:[{t:2,r:"catalyst_text",p:[108,9,3306]}]}],n:50,r:"catalyst_text",p:[106,7,3238]}," ",{t:4,f:[{p:[112,8,3390],t:7,e:"ui-section",a:{label:"Tools"},f:[{t:2,r:"tool_text",p:[113,9,3425]}]}],n:50,r:"tool_text",p:[111,7,3365]}," ",{p:[116,7,3480],t:7,e:"ui-section",f:[{p:[117,8,3500],t:7,e:"ui-button",a:{icon:"gears",action:"make",params:['{"recipe": "',{t:2,r:"ref",p:[117,66,3558]},'"}']},f:["Craft"]}]}]}],n:52,r:"data.can_craft",p:[99,5,3052]}," ",{t:4,f:[{t:4,f:[{p:[125,7,3731],t:7,e:"ui-display",a:{title:[{t:2,r:"name",p:[125,26,3750]}]},f:[{t:4,f:[{p:[127,9,3793],t:7,e:"ui-section",a:{label:"Requirements"},f:[{t:2,r:"req_text",p:[128,10,3836]}]}],n:50,r:"req_text",p:[126,8,3768]}," ",{t:4,f:[{p:[132,9,3923],t:7,e:"ui-section",a:{label:"Catalysts"},f:[{t:2,r:"catalyst_text",p:[133,10,3963]}]}],n:50,r:"catalyst_text",p:[131,8,3893]}," ",{t:4,f:[{p:[137,9,4051],t:7,e:"ui-section",a:{label:"Tools"},f:[{t:2,r:"tool_text",p:[138,10,4087]}]}],n:50,r:"tool_text",p:[136,8,4025]}]}],n:52,r:"data.cant_craft",p:[124,6,3699]}],n:51,r:"data.display_craftable_only",p:[123,5,3661]}],r:"data.display_compact"}],r:"data.busy"}]}]},e.exports=a.extend(r.exports)},{205:205,302:302}],272:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{p:[2,3,15],t:7,e:"span",f:["The regulator ",{t:2,x:{r:["data.holding"],s:'_0?"is":"is not"'},p:[2,23,35]}," connected to a tank."]}]}," ",{p:[4,1,113],t:7,e:"ui-display",a:{title:"Status",button:0},f:[{p:[5,3,151],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[6,5,186],t:7,e:"span",f:[{t:2,x:{r:["adata.pressure"],s:"Math.round(_0)"},p:[6,11,192]}," kPa"]}]}," ",{p:[8,3,254],t:7,e:"ui-section",a:{label:"Port"},f:[{p:[9,5,285],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.connected"],s:'_0?"good":"average"'},p:[9,18,298]}]},f:[{t:2,x:{r:["data.connected"],s:'_0?"Connected":"Not Connected"'},p:[9,59,339]}]}]}]}," ",{p:[12,1,430],t:7,e:"ui-display",a:{title:"Pump"},f:[{p:[13,3,459],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[14,5,491],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[14,22,508]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":"null"'},p:[15,14,559]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[16,22,616]}]}]}," ",{p:[18,3,675],t:7,e:"ui-section",a:{label:"Direction"},f:[{p:[19,5,711],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.direction"],s:'_0=="out"?"sign-out":"sign-in"'},p:[19,22,728]}],action:"direction"},f:[{t:2,x:{r:["data.direction"],s:'_0=="out"?"Out":"In"'},p:[20,26,808]}]}]}," ",{p:[22,3,883],t:7,e:"ui-section",a:{label:"Target Pressure"},f:[{p:[23,5,925],t:7,e:"ui-bar",a:{min:[{t:2,r:"data.min_pressure",p:[23,18,938]}],max:[{t:2,r:"data.max_pressure",p:[23,46,966]}],value:[{t:2,r:"data.target_pressure",p:[24,14,1003]}]},f:[{t:2,x:{r:["adata.target_pressure"],s:"Math.round(_0)"},p:[24,40,1029]}," kPa"]}]}," ",{p:[26,3,1100],t:7,e:"ui-section",a:{label:"Pressure Regulator"},f:[{p:[27,5,1145],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.target_pressure","data.default_pressure"],s:'_0!=_1?null:"disabled"'},p:[27,38,1178]}],action:"pressure",params:'{"pressure": "reset"}'},f:["Reset"]}," ",{p:[29,5,1328],t:7,e:"ui-button",a:{icon:"minus",state:[{t:2,x:{r:["data.target_pressure","data.min_pressure"],s:'_0>_1?null:"disabled"'},p:[29,36,1359]}],action:"pressure",params:'{"pressure": "min"}'},f:["Min"]}," ",{p:[31,5,1500],t:7,e:"ui-button",a:{icon:"pencil",action:"pressure",params:'{"pressure": "input"}'},f:["Set"]}," ",{p:[32,5,1595],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.target_pressure","data.max_pressure"],s:'_0<_1?null:"disabled"'},p:[32,35,1625]}],action:"pressure",params:'{"pressure": "max"}'},f:["Max"]}]}]}," ",{p:{button:[{t:4,f:[{p:[39,7,1891],t:7,e:"ui-button",a:{icon:"eject",style:[{t:2,x:{r:["data.on"],s:'_0?"danger":null'},p:[39,38,1922]}],action:"eject"},f:["Eject"]}],n:50,r:"data.holding",p:[38,5,1863]}]},t:7,e:"ui-display",a:{title:"Holding Tank",button:0},f:[" ",{t:4,f:[{p:[43,3,2042],t:7,e:"ui-section",a:{label:"Label"},f:[{t:2,r:"data.holding.name",p:[44,4,2073]}]}," ",{p:[46,3,2115],t:7,e:"ui-section",a:{label:"Pressure"},f:[{t:2,x:{r:["adata.holding.pressure"],s:"Math.round(_0)"},p:[47,4,2149]}," kPa"]}],n:50,r:"data.holding",p:[42,3,2018]},{t:4,n:51,f:[{p:[50,3,2223],t:7,e:"ui-section",f:[{p:[51,4,2240],t:7,e:"span",a:{"class":"average"},f:["No Holding Tank"]}]}],r:"data.holding"}]}]},e.exports=a.extend(r.exports)},{205:205}],273:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{p:[2,3,15],t:7,e:"span",f:["The regulator ",{t:2,x:{r:["data.holding"],s:'_0?"is":"is not"'},p:[2,23,35]}," connected to a tank."]}]}," ",{p:[4,1,113],t:7,e:"ui-display",a:{title:"Status",button:0},f:[{p:[5,3,151],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[6,5,186],t:7,e:"span",f:[{t:2,x:{r:["adata.pressure"],s:"Math.round(_0)"},p:[6,11,192]}," kPa"]}]}," ",{p:[8,3,254],t:7,e:"ui-section",a:{label:"Port"},f:[{p:[9,5,285],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.connected"],s:'_0?"good":"average"'},p:[9,18,298]}]},f:[{t:2,x:{r:["data.connected"],s:'_0?"Connected":"Not Connected"'},p:[9,59,339]}]}]}]}," ",{p:[12,1,430],t:7,e:"ui-display",a:{title:"Filter"},f:[{p:[13,3,461],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[14,5,493],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[14,22,510]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":"null"'},p:[15,14,561]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[16,22,618]}]}]}]}," ",{p:{button:[{t:4,f:[{p:[22,7,787],t:7,e:"ui-button",a:{icon:"eject",style:[{t:2,x:{r:["data.on"],s:'_0?"danger":null'},p:[22,38,818]}],action:"eject"},f:["Eject"]}],n:50,r:"data.holding",p:[21,5,759]}]},t:7,e:"ui-display",a:{title:"Holding Tank",button:0},f:[" ",{t:4,f:[{p:[26,3,938],t:7,e:"ui-section",a:{label:"Label"},f:[{t:2,r:"data.holding.name",p:[27,4,969]}]}," ",{p:[29,3,1011],t:7,e:"ui-section",a:{label:"Pressure"},f:[{t:2,x:{r:["adata.holding.pressure"],s:"Math.round(_0)"},p:[30,4,1045]}," kPa"]}],n:50,r:"data.holding",p:[25,3,914]},{t:4,n:51,f:[{p:[33,3,1119],t:7,e:"ui-section",f:[{p:[34,4,1136],t:7,e:"span",a:{"class":"average"},f:["No Holding Tank"]}]}],r:"data.holding"}]}]},e.exports=a.extend(r.exports)},{205:205}],274:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{chargingState:function(t){switch(t){case 2:return"good";case 1:return"average";default:return"bad"}},chargingMode:function(t){return 2==t?"Full":1==t?"Charging":"Draining"},channelState:function(t){return t>=2?"good":"bad"},channelPower:function(t){return t>=2?"On":"Off"},channelMode:function(t){return 1==t||3==t?"Auto":"Manual"}},computed:{graphData:function(){var t=this.get("data.history");return Object.keys(t).map(function(e){return t[e].map(function(t,e){return{x:e,y:t}})})}}}}(r),r.exports.template={v:3,t:[" ",{p:[42,1,1035],t:7,e:"ui-display",a:{title:"Network"},f:[{t:4,f:[{p:[44,5,1093],t:7,e:"ui-linegraph",a:{points:[{t:2,r:"graphData",p:[44,27,1115]}],height:"500",legend:'["Available", "Load"]',colors:'["rgb(0, 102, 0)", "rgb(153, 0, 0)"]',xunit:"seconds ago",xfactor:[{t:2,r:"data.interval",p:[46,38,1267]}],yunit:"W",yfactor:"1",xinc:[{t:2,x:{r:["data.stored"],s:"_0/10"},p:[47,15,1323]}],yinc:"9"}}],n:50,r:"config.fancy",p:[43,3,1067]},{t:4,n:51,f:[{p:[49,5,1373],t:7,e:"ui-section",a:{label:"Available"},f:[{p:[50,7,1411],t:7,e:"span",f:[{t:2,r:"data.supply",p:[50,13,1417]}," W"]}]}," ",{p:[52,5,1466],t:7,e:"ui-section",a:{label:"Load"},f:[{p:[53,9,1501],t:7,e:"span",f:[{t:2,r:"data.demand",p:[53,15,1507]}," W"]}]}],r:"config.fancy"}]}," ",{p:[57,1,1578],t:7,e:"ui-display",a:{title:"Areas"},f:[{p:[58,3,1608],t:7,e:"ui-section",a:{nowrap:0},f:[{p:[59,5,1633],t:7,e:"div",a:{"class":"content"},f:["Area"]}," ",{p:[60,5,1670],t:7,e:"div",a:{"class":"content"},f:["Charge"]}," ",{p:[61,5,1709],t:7,e:"div",a:{"class":"content"},f:["Load"]}," ",{p:[62,5,1746],t:7,e:"div",a:{"class":"content"},f:["Status"]}," ",{p:[63,5,1785],t:7,e:"div",a:{"class":"content"},f:["Equipment"]}," ",{p:[64,5,1827],t:7,e:"div",a:{"class":"content"},f:["Lighting"]}," ",{p:[65,5,1868],t:7,e:"div",a:{"class":"content"},f:["Environment"]}]}," ",{t:4,f:[{p:[68,5,1953],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[68,24,1972]}],nowrap:0},f:[{p:[69,7,1997],t:7,e:"div",a:{"class":"content"},f:[{t:2,x:{r:["@index","adata.areas"],s:"Math.round(_1[_0].charge)"},p:[69,28,2018]}," %"]}," ",{p:[70,7,2076],t:7,e:"div",a:{"class":"content"},f:[{t:2,x:{r:["@index","adata.areas"],s:"Math.round(_1[_0].load)"},p:[70,28,2097]}," W"]}," ",{p:[71,7,2153],t:7,e:"div",a:{"class":"content"},f:[{p:[71,28,2174],t:7,e:"span",a:{"class":[{t:2,x:{r:["chargingState","charging"],s:"_0(_1)"},p:[71,41,2187]}]},f:[{t:2,x:{r:["chargingMode","charging"],s:"_0(_1)"},p:[71,70,2216]}]}]}," ",{p:[72,7,2263],t:7,e:"div",a:{"class":"content"},f:[{p:[72,28,2284],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","eqp"],s:"_0(_1)"},p:[72,41,2297]}]},f:[{t:2,x:{r:["channelPower","eqp"],s:"_0(_1)"},p:[72,64,2320]}," [",{p:[72,87,2343],t:7,e:"span",f:[{t:2,x:{r:["channelMode","eqp"],s:"_0(_1)"},p:[72,93,2349]}]},"]"]}]}," ",{p:[73,7,2398],t:7,e:"div",a:{"class":"content"},f:[{p:[73,28,2419],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","lgt"],s:"_0(_1)"},p:[73,41,2432]}]},f:[{t:2,x:{r:["channelPower","lgt"],s:"_0(_1)"},p:[73,64,2455]}," [",{p:[73,87,2478],t:7,e:"span",f:[{t:2,x:{r:["channelMode","lgt"],s:"_0(_1)"},p:[73,93,2484]}]},"]"]}]}," ",{p:[74,7,2533],t:7,e:"div",a:{"class":"content"},f:[{p:[74,28,2554],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","env"],s:"_0(_1)"},p:[74,41,2567]}]},f:[{t:2,x:{r:["channelPower","env"],s:"_0(_1)"},p:[74,64,2590]}," [",{p:[74,87,2613],t:7,e:"span",f:[{t:2,x:{r:["channelMode","env"],s:"_0(_1)"},p:[74,93,2619]}]},"]"]}]}]}],n:52,r:"data.areas",p:[67,3,1927]}]}]},e.exports=a.extend(r.exports)},{205:205}],275:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{chargingState:function(t){switch(t){case 2:return"good";case 1:return"average";default:return"bad"}},chargingMode:function(t){return 2==t?"Full":1==t?"Charging":"Draining"},channelState:function(t){return t>=2?"good":"bad"},channelPower:function(t){return t>=2?"On":"Off"},channelMode:function(t){return 1==t||3==t?"Auto":"Manual"}},computed:{graphData:function(){var t=this.get("data.history");return Object.keys(t).map(function(e){return t[e].map(function(t,e){return{x:e,y:t}})})}}}}(r),r.exports.template={v:3,t:[" ",{p:[42,1,994],t:7,e:"div",a:{style:"float: left"},f:[{p:[43,2,1021],t:7,e:"div",a:{"class":"item"},f:[{p:[44,3,1042],t:7,e:"table",f:[{p:[44,10,1049],t:7,e:"tr",f:[{t:4,f:[{p:[46,4,1114],t:7,e:"td",f:[{p:[46,8,1118],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[46,18,1128]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[45,3,1056]}," ",{t:4,f:[{p:[49,4,1227],t:7,e:"td",f:[{p:[49,8,1231],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[49,11,1234]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[48,3,1166]}," ",{t:4,f:[{p:[52,4,1306],t:7,e:"td",f:[{p:[52,8,1310],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[52,18,1320]}]}}]}],n:50,r:"data.PC_ntneticon",p:[51,3,1277]}," ",{t:4,f:[{p:[55,4,1387],t:7,e:"td",f:[{p:[55,8,1391],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[55,18,1401]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[54,3,1356]}," ",{t:4,f:[{p:[58,4,1470],t:7,e:"td",f:[{p:[58,8,1474],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[58,11,1477]},{p:[58,34,1500],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[57,3,1439]}," ",{t:4,f:[{p:[61,4,1552],t:7,e:"td",f:[{p:[61,8,1556],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[61,18,1566]}]}}]}],n:52,r:"data.PC_programheaders",p:[60,3,1516]}]}]}]}]}," ",{p:[66,1,1615],t:7,e:"div",a:{style:"float: right"},f:[{p:[67,2,1643],t:7,e:"table",f:[{p:[67,9,1650],t:7,e:"tr",f:[{p:[68,3,1657],t:7,e:"td",f:[{p:[68,7,1661],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[70,4,1751],t:7,e:"td",f:[{p:[70,8,1755],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[71,4,1811],t:7,e:"td",f:[{p:[71,8,1815],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[69,3,1716]}]}]}]}]}," ",{p:[75,1,1903],t:7,e:"div",a:{style:"clear: both"},f:[{p:[77,1,1930],t:7,e:"ui-display",a:{title:"Network"},f:[{t:4,f:[{p:[79,5,1986],t:7,e:"ui-linegraph",a:{points:[{t:2,r:"graphData",p:[79,27,2008]}],height:"500",legend:'["Available", "Load"]',colors:'["rgb(0, 102, 0)", "rgb(153, 0, 0)"]',xunit:"seconds ago",xfactor:[{t:2,r:"data.interval",p:[81,38,2158]}],yunit:"W",yfactor:"1",xinc:[{t:2,x:{r:["data.stored"],s:"_0/10"},p:[82,15,2213]}],yinc:"9"}}],n:50,r:"config.fancy",p:[78,3,1961]},{t:4,n:51,f:[{p:[84,5,2261],t:7,e:"ui-section",a:{label:"Available"},f:[{p:[85,7,2298],t:7,e:"span",f:[{t:2,r:"data.supply",p:[85,13,2304]}," W"]}]}," ",{p:[87,5,2351],t:7,e:"ui-section",a:{label:"Load"},f:[{p:[88,9,2385],t:7,e:"span",f:[{t:2,r:"data.demand",p:[88,15,2391]}," W"]}]}],r:"config.fancy"}]}," ",{p:[92,1,2458],t:7,e:"ui-display",a:{title:"Areas"},f:[{p:[93,3,2487],t:7,e:"ui-section",a:{nowrap:0},f:[{p:[94,5,2511],t:7,e:"div",a:{"class":"content"},f:["Area"]}," ",{p:[95,5,2547],t:7,e:"div",a:{"class":"content"},f:["Charge"]}," ",{p:[96,5,2585],t:7,e:"div",a:{"class":"content"},f:["Load"]}," ",{p:[97,5,2621],t:7,e:"div",a:{"class":"content"},f:["Status"]}," ",{p:[98,5,2659],t:7,e:"div",a:{"class":"content"},f:["Equipment"]}," ",{p:[99,5,2700],t:7,e:"div",a:{"class":"content"},f:["Lighting"]}," ",{p:[100,5,2740],t:7,e:"div",a:{"class":"content"},f:["Environment"]}]}," ",{t:4,f:[{p:[103,5,2822],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[103,24,2841]}],nowrap:0},f:[{p:[104,7,2865],t:7,e:"div",a:{"class":"content"},f:[{t:2,x:{r:["@index","adata.areas"],s:"Math.round(_1[_0].charge)"},p:[104,28,2886]}," %"]}," ",{p:[105,7,2943],t:7,e:"div",a:{"class":"content"},f:[{t:2,x:{r:["@index","adata.areas"],s:"Math.round(_1[_0].load)"},p:[105,28,2964]}," W"]}," ",{p:[106,7,3019],t:7,e:"div",a:{"class":"content"},f:[{p:[106,28,3040],t:7,e:"span",a:{"class":[{t:2,x:{r:["chargingState","charging"],s:"_0(_1)"},p:[106,41,3053]}]},f:[{t:2,x:{r:["chargingMode","charging"],s:"_0(_1)"},p:[106,70,3082]}]}]}," ",{p:[107,7,3128],t:7,e:"div",a:{"class":"content"},f:[{p:[107,28,3149],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","eqp"],s:"_0(_1)"},p:[107,41,3162]}]},f:[{t:2,x:{r:["channelPower","eqp"],s:"_0(_1)"},p:[107,64,3185]}," [",{p:[107,87,3208],t:7,e:"span",f:[{t:2,x:{r:["channelMode","eqp"],s:"_0(_1)"},p:[107,93,3214]}]},"]"]}]}," ",{p:[108,7,3262],t:7,e:"div",a:{"class":"content"},f:[{p:[108,28,3283],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","lgt"],s:"_0(_1)"},p:[108,41,3296]}]},f:[{t:2,x:{r:["channelPower","lgt"],s:"_0(_1)"},p:[108,64,3319]}," [",{p:[108,87,3342],t:7,e:"span",f:[{t:2,x:{r:["channelMode","lgt"],s:"_0(_1)"},p:[108,93,3348]}]},"]"]}]}," ",{p:[109,7,3396],t:7,e:"div",a:{"class":"content"},f:[{p:[109,28,3417],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","env"],s:"_0(_1)"},p:[109,41,3430]}]},f:[{t:2,x:{r:["channelPower","env"],s:"_0(_1)"},p:[109,64,3453]}," [",{p:[109,87,3476],t:7,e:"span",f:[{t:2,x:{r:["channelMode","env"],s:"_0(_1)"},p:[109,93,3482]}]},"]"]}]}]}],n:52,r:"data.areas",p:[102,3,2797]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],276:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{readableFrequency:function(){return Math.round(this.get("adata.frequency"))/10}}}}(r),r.exports.template={v:3,t:[" ",{p:[11,1,167],t:7,e:"ui-display",a:{title:"Settings"},f:[{t:4,f:[{p:[13,5,224],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[14,7,257],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.listening"],s:'_0?"power-off":"close"'},p:[14,24,274]}],style:[{t:2,x:{r:["data.listening"],s:'_0?"selected":null'},p:[14,75,325]}],action:"listen"},f:[{t:2,x:{r:["data.listening"],s:'_0?"On":"Off"'},p:[16,9,398]}]}]}],n:50,r:"data.headset",p:[12,3,199]},{t:4,n:51,f:[{p:[19,5,476],t:7,e:"ui-section",a:{label:"Microphone"},f:[{p:[20,7,514],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.broadcasting"],s:'_0?"power-off":"close"'},p:[20,24,531]}],style:[{t:2,x:{r:["data.broadcasting"],s:'_0?"selected":null'},p:[20,78,585]}],action:"broadcast"},f:[{t:2,x:{r:["data.broadcasting"],s:'_0?"Engaged":"Disengaged"'},p:[22,9,664]}]}]}," ",{p:[24,5,746],t:7,e:"ui-section",a:{label:"Speaker"},f:[{p:[25,7,781],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.listening"],s:'_0?"power-off":"close"'},p:[25,24,798]}],style:[{t:2,x:{r:["data.listening"],s:'_0?"selected":null'},p:[25,75,849]}],action:"listen"},f:[{t:2,x:{r:["data.listening"],s:'_0?"Engaged":"Disengaged"'},p:[27,9,922]}]}]}],r:"data.headset"}," ",{t:4,f:[{p:[31,5,1034],t:7,e:"ui-section",a:{label:"High Volume"},f:[{p:[32,7,1073],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.useCommand"],s:'_0?"power-off":"close"'},p:[32,24,1090]}],style:[{t:2,x:{r:["data.useCommand"],s:'_0?"selected":null'},p:[32,76,1142]}],action:"command"},f:[{t:2,x:{r:["data.useCommand"],s:'_0?"On":"Off"'},p:[34,9,1217]}]}]}],n:50,r:"data.command",p:[30,3,1009]}]}," ",{p:[38,1,1305],t:7,e:"ui-display",a:{title:"Channel"},f:[{p:[39,3,1336],t:7,e:"ui-section",a:{label:"Frequency"},f:[{t:4,f:[{p:[41,7,1399],t:7,e:"span",f:[{t:2,r:"readableFrequency",p:[41,13,1405]}]}],n:50,r:"data.freqlock",p:[40,5,1371]},{t:4,n:51,f:[{p:[43,7,1453],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.frequency","data.minFrequency"],s:'_0==_1?"disabled":null'},p:[43,46,1492]}],action:"frequency",params:'{"adjust": -1}'}}," ",{p:[44,7,1603],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.frequency","data.minFrequency"],s:'_0==_1?"disabled":null'},p:[44,41,1637]}],action:"frequency",params:'{"adjust": -.2}'}}," ",{p:[45,7,1749],t:7,e:"ui-button",a:{icon:"pencil",action:"frequency",params:'{"tune": "input"}'},f:[{t:2,r:"readableFrequency",p:[45,78,1820]}]}," ",{p:[46,7,1860],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.frequency","data.maxFrequency"],s:'_0==_1?"disabled":null'},p:[46,40,1893]}],action:"frequency",params:'{"adjust": .2}'}}," ",{p:[47,7,2004],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.frequency","data.maxFrequency"],s:'_0==_1?"disabled":null'},p:[47,45,2042]}],action:"frequency",params:'{"adjust": 1}'}}],r:"data.freqlock"}]}," ",{t:4,f:[{p:[51,5,2212],t:7,e:"ui-section",a:{label:"Subspace Transmission"},f:[{p:[52,7,2261],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.subspace"],s:'_0?"power-off":"close"'},p:[52,24,2278]}],style:[{t:2,x:{r:["data.subspace"],s:'_0?"selected":null'},p:[52,74,2328]}],action:"subspace"},f:[{t:2,x:{r:["data.subspace"],s:'_0?"Active":"Inactive"'},p:[53,29,2395]}]}]}],n:50,r:"data.subspaceSwitchable",p:[50,3,2176]}," ",{t:4,f:[{p:[57,5,2522],t:7,e:"ui-section",a:{label:"Channels"},f:[{t:4,f:[{p:[59,9,2598],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["."],s:'_0?"check-square-o":"square-o"'},p:[59,26,2615]}],style:[{t:2,x:{r:["."],s:'_0?"selected":null'},p:[60,18,2671]}],action:"channel",params:['{"channel": "',{t:2,r:"channel",p:[61,49,2746]},'"}']},f:[{t:2,r:"channel",p:[62,11,2772]}]},{p:[62,34,2795],t:7,e:"br"}],n:52,i:"channel",r:"data.channels",p:[58,7,2558]}]}],n:50,x:{r:["data.subspace","data.channels"],s:"_0&&_1"},p:[56,3,2479]}]}]},e.exports=a.extend(r.exports)},{205:205}],277:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[37,1,937],t:7,e:"ui-display",f:[{p:[38,2,951],t:7,e:"div",a:{"class":"item"},f:[{p:[39,3,972],t:7,e:"div",a:{"class":"itemLabel"},f:["Payload status:"]}," ",{p:[42,3,1026],t:7,e:"div",a:{"class":"itemContent"},f:[{t:4,f:["ARMED"],n:50,r:"data.armed",p:[43,4,1055]},{t:4,n:51,f:["DISARMED"],r:"data.armed"}]}," ",{p:[49,3,1131],t:7,e:"div",a:{"class":"itemLabel"},f:["Controls:"]}," ",{p:[52,3,1179],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[53,4,1208],t:7,e:"table",f:[{p:[54,4,1219],t:7,e:"tr",f:[{p:[54,8,1223],t:7,e:"td",f:[{p:[54,12,1227],t:7,e:"ui-button",a:{action:"PRG_obfuscate"},f:["OBFUSCATE PROGRAM NAME"]}]}]},{p:[55,4,1299],t:7,e:"tr",f:[{p:[55,8,1303],t:7,e:"td",f:[{p:[55,12,1307],t:7,e:"ui-button",a:{action:"PRG_arm",state:[{t:2,x:{r:["data.armed"],s:'_0?"danger":null'},p:[55,47,1342]}]},f:[{t:2,x:{r:["data.armed"],s:'_0?"DISARM":"ARM"'},p:[55,81,1376]}]}," ",{p:[56,4,1425],t:7,e:"ui-button",a:{icon:"radiation",state:[{t:2,x:{r:["data.armed"],s:'_0?null:"disabled"'},p:[56,39,1460]}],action:"PRG_activate"},f:["ACTIVATE"]}]}]}]}]}]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],278:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,22],t:7,e:"ui-notice",f:[{t:2,r:"data.notice",p:[3,5,38]}]}],n:50,r:"data.notice",p:[1,1,0]},{p:[6,1,77],t:7,e:"ui-display",a:{title:"Satellite Network Control",button:0},f:[{t:4,f:[{p:[8,4,161],t:7,e:"ui-section",a:{candystripe:0,nowrap:0},f:[{p:[9,9,201],t:7,e:"div",a:{"class":"content"},f:["#",{t:2,r:"id",p:[9,31,223]}]}," ",{p:[10,9,244],t:7,e:"div",a:{"class":"content"},f:[{t:2,r:"mode",p:[10,30,265]}]}," ",{p:[11,9,288],t:7,e:"div",a:{"class":"content"},f:[{p:[12,11,320],t:7,e:"ui-button",a:{action:"toggle",params:['{"id": "',{t:2,r:"id",p:[12,54,363]},'"}']},f:[{t:2,x:{r:["active"],s:'_0?"Deactivate":"Activate"'},p:[12,64,373]}]}]}]}],n:52,r:"data.satellites",p:[7,2,132]}]}," ",{t:4,f:[{p:[18,1,511],t:7,e:"ui-display",a:{title:"Station Shield Coverage"},f:[{p:[19,3,558],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.meteor_shield_coverage_max",p:[19,24,579]}],value:[{t:2,r:"data.meteor_shield_coverage",p:[19,68,623]}]},f:[{t:2,x:{r:["data.meteor_shield_coverage","data.meteor_shield_coverage_max"],s:"100*_0/_1"},p:[19,101,656]}," %"]}," ",{p:[20,1,739],t:7,e:"ui-display",f:[]}]}],n:50,r:"data.meteor_shield",p:[17,1,484]}]},e.exports=a.extend(r.exports)},{205:205}],279:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[" "," "," ",{p:[5,1,196],t:7,e:"ui-tabs",a:{tabs:[{t:2,r:"data.tabs",p:[5,16,211]}]},f:[{p:[6,2,228],t:7,e:"tab",a:{name:"Status"},f:[{p:[7,3,250],t:7,e:"status"}]}," ",{p:[9,2,269],t:7,e:"tab",a:{name:"Templates"},f:[{p:[10,3,294],t:7,e:"templates"}]}," ",{p:[12,2,316],t:7,e:"tab",a:{name:"Modification"},f:[{t:4,f:[{p:[14,3,368],t:7,e:"modification"}],n:50,r:"data.selected",p:[13,3,344]}," ",{t:4,f:[{p:[17,3,421],t:7,e:"span",a:{"class":"bad"},f:["No shuttle selected."]}],n:50,x:{r:["data.selected"],s:"!_0"},p:[16,3,396]}]}]}]},r.exports.components=r.exports.components||{};var i={modification:t(280),templates:t(282),status:t(281)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{205:205,280:280,281:281,282:282}],280:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:["Selected: ",{t:2,r:"data.selected.name",p:[1,30,29]}]},f:[{t:4,f:[{p:[3,5,94],t:7,e:"ui-section",a:{label:"Description"},f:[{t:2,r:"data.selected.description",p:[3,37,126]}]}],n:50,r:"data.selected.description",p:[2,3,56]}," ",{t:4,f:[{p:[6,5,219],t:7,e:"ui-section",a:{label:"Admin Notes"},f:[{t:2,r:"data.selected.admin_notes",p:[6,37,251]}]}],n:50,r:"data.selected.admin_notes",p:[5,3,181]}]}," ",{t:4,f:[{p:[11,3,351],t:7,e:"ui-display",a:{title:["Existing Shuttle: ",{t:2,r:"data.existing_shuttle.name",p:[11,40,388]}]},f:["Status: ",{t:2,r:"data.existing_shuttle.status",p:[12,13,433]}," ",{t:4,f:["(",{t:2,r:"data.existing_shuttle.timeleft",p:[14,8,513]},")"],n:50,r:"data.existing_shuttle.timer",p:[13,5,470]}," ",{p:[16,5,565],t:7,e:"ui-button",a:{action:"jump_to",params:['{"type": "mobile", "id": "',{t:2,r:"data.existing_shuttle.id",p:[17,41,633]},'"}']},f:["Jump To"]}]}],n:50,r:"data.existing_shuttle",p:[10,1,319]},{t:4,f:[{p:[24,3,755],t:7,e:"ui-display",a:{title:"Existing Shuttle: None"}}],n:50,x:{r:["data.existing_shuttle"],s:"!_0"},p:[23,1,722]},{p:[27,1,821],t:7,e:"ui-button",a:{action:"preview",params:['{"shuttle_id": "',{t:2,r:"data.selected.shuttle_id",p:[28,27,875]},'"}']},f:["Preview"]}," ",{p:[31,1,931],t:7,e:"ui-button",a:{action:"load",params:['{"shuttle_id": "',{t:2,r:"data.selected.shuttle_id",p:[32,27,982]},'"}'],style:"danger"},f:["Load"]}," ",{p:[37,1,1053],t:7,e:"ui-display",a:{title:"Status"},f:[]}]},e.exports=a.extend(r.exports)},{205:205}],281:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,26],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[2,22,45]}," (",{t:2,r:"id",p:[2,32,55]},")"]},f:[{t:2,r:"status",p:[3,5,69]}," ",{t:4,f:["(",{t:2,r:"timeleft",p:[5,8,105]},")"],n:50,r:"timer",p:[4,5,84]}," ",{p:[7,5,135],t:7,e:"ui-button",a:{action:"jump_to",params:['{"type": "mobile", "id": "',{t:2,r:"id",p:[7,67,197]},'"}']},f:["Jump To"]}," ",{p:[10,5,243],t:7,e:"ui-button",a:{action:"fast_travel",params:['{"id": "',{t:2,r:"id",p:[10,53,291]},'"}'],state:[{t:2,x:{r:["can_fast_travel"],s:'_0?null:"disabled"'},p:[10,70,308]}]},f:["Fast Travel"]}]}],n:52,r:"data.shuttles",p:[1,1,0]}]},e.exports=a.extend(r.exports); -},{205:205}],282:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-tabs",a:{tabs:[{t:2,r:"data.templates_tabs",p:[1,16,15]}]},f:[{t:4,f:[{p:[3,5,72],t:7,e:"tab",a:{name:[{t:2,r:"port_id",p:[3,16,83]}]},f:[{t:4,f:[{p:[5,9,131],t:7,e:"ui-display",a:{title:[{t:2,r:"name",p:[5,28,150]}]},f:[{t:4,f:[{p:[7,13,203],t:7,e:"ui-section",a:{label:"Description"},f:[{t:2,r:"description",p:[7,45,235]}]}],n:50,r:"description",p:[6,11,171]}," ",{t:4,f:[{p:[10,13,324],t:7,e:"ui-section",a:{label:"Admin Notes"},f:[{t:2,r:"admin_notes",p:[10,45,356]}]}],n:50,r:"admin_notes",p:[9,11,292]}," ",{p:[13,11,414],t:7,e:"ui-button",a:{action:"select_template",params:['{"shuttle_id": "',{t:2,r:"shuttle_id",p:[14,37,486]},'"}'],state:[{t:2,x:{r:["data.selected.shuttle_id","shuttle_id"],s:'_0==_1?"selected":null'},p:[15,20,523]}]},f:[{t:2,x:{r:["data.selected.shuttle_id","shuttle_id"],s:'_0==_1?"Selected":"Select"'},p:[17,13,614]}]}]}],n:52,r:"templates",p:[4,7,103]}]}],n:52,r:"data.templates",p:[2,3,43]}]}]},e.exports=a.extend(r.exports)},{205:205}],283:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{occupantStatState:function(){switch(this.get("data.occupant.stat")){case 0:return"good";case 1:return"average";default:return"bad"}}}}}(r),r.exports.template={v:3,t:[" ",{p:[15,1,280],t:7,e:"ui-display",a:{title:"Occupant"},f:[{p:[16,3,313],t:7,e:"ui-section",a:{label:"Occupant"},f:[{p:[17,3,346],t:7,e:"span",f:[{t:2,x:{r:["data.occupant.name"],s:'_0?_0:"No Occupant"'},p:[17,9,352]}]}]}," ",{t:4,f:[{p:[20,5,466],t:7,e:"ui-section",a:{label:"State"},f:[{p:[21,7,500],t:7,e:"span",a:{"class":[{t:2,r:"occupantStatState",p:[21,20,513]}]},f:[{t:2,x:{r:["data.occupant.stat"],s:'_0==0?"Conscious":_0==1?"Unconcious":"Dead"'},p:[21,43,536]}]}]}," ",{p:[23,5,658],t:7,e:"ui-section",a:{label:"Health"},f:[{p:[24,7,693],t:7,e:"ui-bar",a:{min:[{t:2,r:"data.occupant.minHealth",p:[24,20,706]}],max:[{t:2,r:"data.occupant.maxHealth",p:[24,54,740]}],value:[{t:2,r:"data.occupant.health",p:[24,90,776]}],state:[{t:2,x:{r:["data.occupant.health"],s:'_0>=0?"good":"average"'},p:[25,16,818]}]},f:[{t:2,x:{r:["adata.occupant.health"],s:"Math.round(_0)"},p:[25,68,870]}]}]}," ",{t:4,f:[{p:[28,7,1107],t:7,e:"ui-section",a:{label:[{t:2,r:"label",p:[28,26,1126]}]},f:[{p:[29,9,1147],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.occupant.maxHealth",p:[29,30,1168]}],value:[{t:2,rx:{r:"data.occupant",m:[{t:30,n:"type"}]},p:[29,66,1204]}],state:"bad"},f:[{t:2,x:{r:["type","adata.occupant"],s:"Math.round(_1[_0])"},p:[29,103,1241]}]}]}],n:52,x:{r:[],s:'[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}]'},p:[27,5,941]}," ",{p:[32,5,1328],t:7,e:"ui-section",a:{label:"Cells"},f:[{p:[33,9,1364],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.occupant.cloneLoss"],s:'_0?"bad":"good"'},p:[33,22,1377]}]},f:[{t:2,x:{r:["data.occupant.cloneLoss"],s:'_0?"Damaged":"Healthy"'},p:[33,68,1423]}]}]}," ",{p:[35,5,1506],t:7,e:"ui-section",a:{label:"Brain"},f:[{p:[36,9,1542],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.occupant.brainLoss"],s:'_0?"bad":"good"'},p:[36,22,1555]}]},f:[{t:2,x:{r:["data.occupant.brainLoss"],s:'_0?"Abnormal":"Healthy"'},p:[36,68,1601]}]}]}," ",{p:[38,5,1685],t:7,e:"ui-section",a:{label:"Bloodstream"},f:[{t:4,f:[{p:[40,11,1772],t:7,e:"span",a:{"class":"highlight"},t0:"fade",f:[{t:2,x:{r:["volume"],s:"Math.fixed(_0,1)"},p:[40,54,1815]}," units of ",{t:2,r:"name",p:[40,89,1850]}]},{p:[40,104,1865],t:7,e:"br"}],n:52,r:"adata.occupant.reagents",p:[39,9,1727]},{t:4,n:51,f:[{p:[42,11,1900],t:7,e:"span",a:{"class":"good"},f:["Pure"]}],r:"adata.occupant.reagents"}]}],n:50,r:"data.occupied",p:[19,3,439]}]}," ",{p:[47,1,1996],t:7,e:"ui-display",a:{title:"Controls"},f:[{p:[48,2,2028],t:7,e:"ui-section",a:{label:"Door"},f:[{p:[49,5,2059],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.open"],s:'_0?"unlock":"lock"'},p:[49,22,2076]}],action:"door"},f:[{t:2,x:{r:["data.open"],s:'_0?"Open":"Closed"'},p:[49,71,2125]}]}]}," ",{p:[51,3,2190],t:7,e:"ui-section",a:{label:"Inject"},f:[{t:4,f:[{p:[53,7,2251],t:7,e:"ui-button",a:{icon:"flask",state:[{t:2,x:{r:["data.occupied","allowed"],s:'_0&&_1?null:"disabled"'},p:[53,38,2282]}],action:"inject",params:['{"chem": "',{t:2,r:"id",p:[53,122,2366]},'"}']},f:[{t:2,r:"name",p:[53,132,2376]}]},{p:[53,152,2396],t:7,e:"br"}],n:52,r:"data.chems",p:[52,5,2223]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],284:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,24],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[2,22,43]}],labelcolor:[{t:2,r:"htmlcolor",p:[2,44,65]}],candystripe:0,right:0},f:[{p:[3,5,103],t:7,e:"ui-section",a:{label:"Status"},f:[{p:[3,32,130],t:7,e:"span",a:{"class":[{t:2,x:{r:["status"],s:'_0=="Dead"?"bad bold":_0=="Unconscious"?"average bold":"good"'},p:[3,45,143]}]},f:[{t:2,r:"status",p:[3,132,230]}]}]}," ",{p:[4,5,265],t:7,e:"ui-section",a:{label:"Jelly"},f:[{t:2,r:"exoticblood",p:[4,31,291]}]}," ",{p:[5,5,324],t:7,e:"ui-section",a:{label:"Location"},f:[{t:2,r:"area",p:[5,34,353]}]}," ",{p:[7,5,380],t:7,e:"ui-button",a:{state:[{t:2,r:"swap_button_state",p:[8,14,404]}],action:"swap",params:['{"ref": "',{t:2,r:"ref",p:[9,38,464]},'"}']},f:[{t:2,x:{r:["is_current"],s:'_0?"You Are Here":"Swap"'},p:[10,7,482]}]}]}],n:52,r:"data.bodies",p:[1,1,0]}]},e.exports=a.extend(r.exports)},{205:205}],285:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{capacityPercentState:function(){var t=this.get("data.capacityPercent");return t>50?"good":t>15?"average":"bad"},inputState:function(){return this.get("data.capacityPercent")>=100?"good":this.get("data.inputting")?"average":"bad"},outputState:function(){return this.get("data.outputting")?"good":this.get("data.charge")>0?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[24,1,640],t:7,e:"ui-display",a:{title:"Storage"},f:[{p:[25,3,671],t:7,e:"ui-section",a:{label:"Stored Energy"},f:[{p:[26,5,710],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.capacityPercent",p:[26,38,743]}],state:[{t:2,r:"capacityPercentState",p:[26,71,776]}]},f:[{t:2,x:{r:["adata.capacityPercent"],s:"Math.fixed(_0)"},p:[26,97,802]},"%"]}]}]}," ",{p:[29,1,880],t:7,e:"ui-display",a:{title:"Input"},f:[{p:[30,3,909],t:7,e:"ui-section",a:{label:"Charge Mode"},f:[{p:[31,5,946],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.inputAttempt"],s:'_0?"refresh":"close"'},p:[31,22,963]}],style:[{t:2,x:{r:["data.inputAttempt"],s:'_0?"selected":null'},p:[31,74,1015]}],action:"tryinput"},f:[{t:2,x:{r:["data.inputAttempt"],s:'_0?"Auto":"Off"'},p:[32,25,1082]}]},"   [",{p:[34,6,1149],t:7,e:"span",a:{"class":[{t:2,r:"inputState",p:[34,19,1162]}]},f:[{t:2,x:{r:["data.capacityPercent","data.inputting"],s:'_0>=100?"Fully Charged":_1?"Charging":"Not Charging"'},p:[34,35,1178]}]},"]"]}," ",{p:[36,3,1300],t:7,e:"ui-section",a:{label:"Target Input"},f:[{p:[37,5,1338],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.inputLevelMax",p:[37,26,1359]}],value:[{t:2,r:"data.inputLevel",p:[37,57,1390]}]},f:[{t:2,x:{r:["adata.inputLevel"],s:"Math.round(_0)"},p:[37,78,1411]},"W"]}]}," ",{p:[39,3,1471],t:7,e:"ui-section",a:{label:"Adjust Input"},f:[{p:[40,5,1509],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.inputLevel"],s:'_0==0?"disabled":null'},p:[40,44,1548]}],action:"input",params:'{"target": "min"}'}}," ",{p:[41,5,1642],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.inputLevel"],s:'_0==0?"disabled":null'},p:[41,39,1676]}],action:"input",params:'{"adjust": -10000}'}}," ",{p:[42,5,1771],t:7,e:"ui-button",a:{icon:"pencil",action:"input",params:'{"target": "input"}'},f:["Set"]}," ",{p:[43,5,1860],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.inputLevel","data.inputLevelMax"],s:'_0==_1?"disabled":null'},p:[43,38,1893]}],action:"input",params:'{"adjust": 10000}'}}," ",{p:[44,5,2004],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.inputLevel","data.inputLevelMax"],s:'_0==_1?"disabled":null'},p:[44,43,2042]}],action:"input",params:'{"target": "max"}'}}]}," ",{p:[46,3,2167],t:7,e:"ui-section",a:{label:"Available"},f:[{p:[47,3,2200],t:7,e:"span",f:[{t:2,x:{r:["adata.inputAvailable"],s:"Math.round(_0)"},p:[47,9,2206]},"W"]}]}]}," ",{p:[50,1,2280],t:7,e:"ui-display",a:{title:"Output"},f:[{p:[51,3,2310],t:7,e:"ui-section",a:{label:"Output Mode"},f:[{p:[52,5,2347],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.outputAttempt"],s:'_0?"power-off":"close"'},p:[52,22,2364]}],style:[{t:2,x:{r:["data.outputAttempt"],s:'_0?"selected":null'},p:[52,77,2419]}],action:"tryoutput"},f:[{t:2,x:{r:["data.outputAttempt"],s:'_0?"On":"Off"'},p:[53,26,2488]}]},"   [",{p:[55,6,2554],t:7,e:"span",a:{"class":[{t:2,r:"outputState",p:[55,19,2567]}]},f:[{t:2,x:{r:["data.outputting","data.charge"],s:'_0?"Sending":_1>0?"Not Sending":"No Charge"'},p:[55,36,2584]}]},"]"]}," ",{p:[57,3,2689],t:7,e:"ui-section",a:{label:"Target Output"},f:[{p:[58,5,2728],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.outputLevelMax",p:[58,26,2749]}],value:[{t:2,r:"data.outputLevel",p:[58,58,2781]}]},f:[{t:2,x:{r:["adata.outputLevel"],s:"Math.round(_0)"},p:[58,80,2803]},"W"]}]}," ",{p:[60,3,2864],t:7,e:"ui-section",a:{label:"Adjust Output"},f:[{p:[61,5,2903],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.outputLevel"],s:'_0==0?"disabled":null'},p:[61,44,2942]}],action:"output",params:'{"target": "min"}'}}," ",{p:[62,5,3038],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.outputLevel"],s:'_0==0?"disabled":null'},p:[62,39,3072]}],action:"output",params:'{"adjust": -10000}'}}," ",{p:[63,5,3169],t:7,e:"ui-button",a:{icon:"pencil",action:"output",params:'{"target": "input"}'},f:["Set"]}," ",{p:[64,5,3259],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.outputLevel","data.outputLevelMax"],s:'_0==_1?"disabled":null'},p:[64,38,3292]}],action:"output",params:'{"adjust": 10000}'}}," ",{p:[65,5,3406],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.outputLevel","data.outputLevelMax"],s:'_0==_1?"disabled":null'},p:[65,43,3444]}],action:"output",params:'{"target": "max"}'}}]}," ",{p:[67,3,3572],t:7,e:"ui-section",a:{label:"Outputting"},f:[{p:[68,3,3606],t:7,e:"span",f:[{t:2,x:{r:["adata.outputUsed"],s:"Math.round(_0)"},p:[68,9,3612]},"W"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],286:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Status"},f:[{p:[2,3,30],t:7,e:"ui-section",a:{label:"Generated Power"},f:[{t:2,x:{r:["adata.generated"],s:"Math.round(_0)"},p:[3,5,71]},"W"]}," ",{p:[5,3,122],t:7,e:"ui-section",a:{label:"Orientation"},f:[{p:[6,5,159],t:7,e:"span",f:[{t:2,x:{r:["adata.angle"],s:"Math.round(_0)"},p:[6,11,165]},"° (",{t:2,r:"data.direction",p:[6,45,199]},")"]}]}," ",{p:[8,3,244],t:7,e:"ui-section",a:{label:"Adjust Angle"},f:[{p:[9,5,282],t:7,e:"ui-button",a:{icon:"step-backward",action:"angle",params:'{"adjust": -15}'},f:["15°"]}," ",{p:[10,5,378],t:7,e:"ui-button",a:{icon:"backward",action:"angle",params:'{"adjust": -5}'},f:["5°"]}," ",{p:[11,5,467],t:7,e:"ui-button",a:{icon:"forward",action:"angle",params:'{"adjust": 5}'},f:["5°"]}," ",{p:[12,5,554],t:7,e:"ui-button",a:{icon:"step-forward",action:"angle",params:'{"adjust": 15}'},f:["15°"]}]}]}," ",{p:[15,1,673],t:7,e:"ui-display",a:{title:"Tracking"},f:[{p:[16,3,705],t:7,e:"ui-section",a:{label:"Tracker Mode"},f:[{p:[17,5,743],t:7,e:"ui-button",a:{icon:"close",state:[{t:2,x:{r:["data.tracking_state"],s:'_0==0?"selected":null'},p:[17,36,774]}],action:"tracking",params:'{"mode": 0}'},f:["Off"]}," ",{p:[19,5,889],t:7,e:"ui-button",a:{icon:"clock-o",state:[{t:2,x:{r:["data.tracking_state"],s:'_0==1?"selected":null'},p:[19,38,922]}],action:"tracking",params:'{"mode": 1}'},f:["Timed"]}," ",{p:[21,5,1039],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.connected_tracker","data.tracking_state"],s:'_0?_1==2?"selected":null:"disabled"'},p:[21,38,1072]}],action:"tracking",params:'{"mode": 2}'},f:["Auto"]}]}," ",{p:[24,3,1239],t:7,e:"ui-section",a:{label:"Tracking Rate"},f:[{p:[25,3,1276],t:7,e:"span",f:[{t:2,x:{r:["adata.tracking_rate"],s:"Math.round(_0)"},p:[25,9,1282]},"°/h (",{t:2,r:"data.rotating_way",p:[25,53,1326]},")"]}]}," ",{p:[27,3,1373],t:7,e:"ui-section",a:{label:"Adjust Rate"},f:[{p:[28,5,1410],t:7,e:"ui-button",a:{icon:"fast-backward",action:"rate",params:'{"adjust": -180}'},f:["180°"]}," ",{p:[29,5,1507],t:7,e:"ui-button",a:{icon:"step-backward",action:"rate",params:'{"adjust": -30}'},f:["30°"]}," ",{p:[30,5,1602],t:7,e:"ui-button",a:{icon:"backward",action:"rate",params:'{"adjust": -5}'},f:["5°"]}," ",{p:[31,5,1690],t:7,e:"ui-button",a:{icon:"forward",action:"rate",params:'{"adjust": 5}'},f:["5°"]}," ",{p:[32,5,1776],t:7,e:"ui-button",a:{icon:"step-forward",action:"rate",params:'{"adjust": 30}'},f:["30°"]}," ",{p:[33,5,1869],t:7,e:"ui-button",a:{icon:"fast-forward",action:"rate",params:'{"adjust": 180}'},f:["180°"]}]}]}," ",{p:{button:[{p:[38,5,2051],t:7,e:"ui-button",a:{icon:"refresh",action:"refresh"},f:["Refresh"]}]},t:7,e:"ui-display",a:{title:"Devices",button:0},f:[" ",{p:[40,2,2130],t:7,e:"ui-section",a:{label:"Solar Tracker"},f:[{p:[41,5,2169],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.connected_tracker"],s:'_0?"good":"bad"'},p:[41,18,2182]}]},f:[{t:2,x:{r:["data.connected_tracker"],s:'_0?"":"Not "'},p:[41,63,2227]},"Found"]}]}," ",{p:[43,2,2296],t:7,e:"ui-section",a:{label:"Solar Panels"},f:[{p:[44,3,2332],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.connected_panels"],s:'_0?"good":"bad"'},p:[44,16,2345]}]},f:[{t:2,x:{r:["adata.connected_panels"],s:"Math.round(_0)"},p:[44,60,2389]}," Panels Connected"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],287:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:{button:[{t:4,f:[{p:[4,7,84],t:7,e:"ui-button",a:{icon:"eject",state:[{t:2,x:{r:["data.hasPowercell"],s:'_0?null:"disabled"'},p:[4,38,115]}],action:"eject"},f:["Eject"]}],n:50,r:"data.open",p:[3,5,60]}]},t:7,e:"ui-display",a:{title:"Power",button:0},f:[" ",{p:[7,3,220],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[8,5,251],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[8,22,268]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":null'},p:[9,14,318]}],state:[{t:2,x:{r:["data.hasPowercell"],s:'_0?null:"disabled"'},p:[9,54,358]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[10,22,422]}]}]}," ",{p:[12,3,479],t:7,e:"ui-section",a:{label:"Cell"},f:[{t:4,f:[{p:[14,7,541],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.powerLevel",p:[14,40,574]}]},f:[{t:2,x:{r:["adata.powerLevel"],s:"Math.fixed(_0)"},p:[14,61,595]},"%"]}],n:50,r:"data.hasPowercell",p:[13,5,509]},{t:4,n:51,f:[{p:[16,4,652],t:7,e:"span",a:{"class":"bad"},f:["No Cell"]}],r:"data.hasPowercell"}]}]}," ",{p:[20,1,725],t:7,e:"ui-display",a:{title:"Thermostat"},f:[{p:[21,3,759],t:7,e:"ui-section",a:{label:"Current Temperature"},f:[{p:[22,3,802],t:7,e:"span",f:[{t:2,x:{r:["adata.currentTemp"],s:"Math.round(_0)"},p:[22,9,808]},"°C"]}]}," ",{p:[24,2,871],t:7,e:"ui-section",a:{label:"Target Temperature"},f:[{p:[25,3,913],t:7,e:"span",f:[{t:2,x:{r:["adata.targetTemp"],s:"Math.round(_0)"},p:[25,9,919]},"°C"]}]}," ",{t:4,f:[{p:[28,5,1004],t:7,e:"ui-section",a:{label:"Adjust Target"},f:[{p:[29,7,1045],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.targetTemp","data.minTemp"],s:'_0>_1?null:"disabled"'},p:[29,46,1084]}],action:"target",params:'{"adjust": -20}'}}," ",{p:[30,7,1189],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.targetTemp","data.minTemp"],s:'_0>_1?null:"disabled"'},p:[30,41,1223]}],action:"target",params:'{"adjust": -5}'}}," ",{p:[31,7,1327],t:7,e:"ui-button",a:{icon:"pencil",action:"target",params:'{"target": "input"}'},f:["Set"]}," ",{p:[32,7,1419],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.targetTemp","data.maxTemp"],s:'_0<_1?null:"disabled"'},p:[32,40,1452]}],action:"target",params:'{"adjust": 5}'}}," ",{p:[33,7,1555],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.targetTemp","data.maxTemp"],s:'_0<_1?null:"disabled"'},p:[33,45,1593]}],action:"target",params:'{"adjust": 20}'}}]}],n:50,r:"data.open",p:[27,3,982]}," ",{p:[36,3,1719],t:7,e:"ui-section",a:{label:"Mode"},f:[{t:4,f:[{p:[38,7,1771],t:7,e:"ui-button",a:{icon:"long-arrow-up",state:[{t:2,x:{r:["data.mode"],s:'_0=="heat"?"selected":null'},p:[38,46,1810]}],action:"mode",params:'{"mode": "heat"}'},f:["Heat"]}," ",{p:[39,7,1918],t:7,e:"ui-button",a:{icon:"long-arrow-down",state:[{t:2,x:{r:["data.mode"],s:'_0=="cool"?"selected":null'},p:[39,48,1959]}],action:"mode",params:'{"mode": "cool"}'},f:["Cool"]}," ",{p:[40,7,2067],t:7,e:"ui-button",a:{icon:"arrows-v",state:[{t:2,x:{r:["data.mode"],s:'_0=="auto"?"selected":null'},p:[40,41,2101]}],action:"mode",params:'{"mode": "auto"}'},f:["Auto"]}],n:50,r:"data.open",p:[37,3,1747]},{t:4,n:51,f:[{p:[42,4,2217],t:7,e:"span",f:[{t:2,x:{r:["text","data.mode"],s:"_0.titleCase(_1)"},p:[42,10,2223]}]}],r:"data.open"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],288:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,31],t:7,e:"ui-display",a:{title:[{t:2,r:"class",p:[2,22,50]}," Alarms"]},f:[{p:[3,5,74],t:7,e:"ul",f:[{t:4,f:[{p:[5,9,107],t:7,e:"li",f:[{t:2,r:".",p:[5,13,111]}]}],n:52,r:".",p:[4,7,86]},{t:4,n:51,f:[{p:[7,9,147],t:7,e:"li",f:["System Nominal"]}],r:"."}]}]}],n:52,i:"class",r:"data.alarms",p:[1,1,0]}]},e.exports=a.extend(r.exports)},{205:205}],289:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{t:4,f:[{p:[38,3,967],t:7,e:"ui-display",a:{title:[{t:2,r:"class",p:[38,22,986]}," Alarms"]},f:[{p:[39,5,1009],t:7,e:"ul",f:[{t:4,f:[{p:[41,9,1040],t:7,e:"li",f:[{t:2,r:".",p:[41,13,1044]}]}],n:52,r:".",p:[40,7,1020]},{t:4,n:51,f:[{p:[43,9,1078],t:7,e:"li",f:["System Nominal"]}],r:"."}]}]}],n:52,i:"class",r:"data.alarms",p:[37,1,937]}]}]},e.exports=a.extend(r.exports)},{205:205}],290:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,41],t:7,e:"ui-notice",f:[{p:[3,5,57],t:7,e:"span",f:["Biological entity detected in contents. Please remove."]}]}],n:50,x:{r:["data.occupied","data.safeties"],s:"_0&&_1"},p:[1,1,0]},{t:4,f:[{p:[7,3,173],t:7,e:"ui-notice",f:[{p:[8,5,189],t:7,e:"span",f:["Contents are being disinfected. Please wait."]}]}],n:50,r:"data.uv_active",p:[6,1,148]},{t:4,n:51,f:[{p:{button:[{t:4,f:[{p:[13,25,357],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.locked"],s:'_0?"unlock":"lock"'},p:[13,42,374]}],action:"lock"},f:[{t:2,x:{r:["data.locked"],s:'_0?"Unlock":"Lock"'},p:[13,93,425]}]}],n:50,x:{r:["data.open"],s:"!_0"},p:[13,7,339]}," ",{t:4,f:[{p:[14,27,506],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.open"],s:'_0?"sign-out":"sign-in"'},p:[14,44,523]}],action:"door"},f:[{t:2,x:{r:["data.open"],s:'_0?"Close":"Open"'},p:[14,98,577]}]}],n:50,x:{r:["data.locked"],s:"!_0"},p:[14,7,486]}]},t:7,e:"ui-display",a:{title:"Storage",button:0},f:[" ",{t:4,f:[{p:[17,7,676],t:7,e:"ui-notice",f:[{p:[18,9,696],t:7,e:"span",f:["Unit Locked"]}]}],n:50,r:"data.locked",p:[16,5,650]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.open"],s:"_0"},f:[{p:[21,9,773],t:7,e:"ui-section",a:{label:"Helmet"},f:[{p:[22,11,811],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.helmet"],s:'_0?"square":"square-o"'},p:[22,28,828]}],state:[{t:2,x:{r:["data.helmet"],s:'_0?null:"disabled"'},p:[22,75,875]}],action:"dispense",params:'{"item": "helmet"}'},f:[{t:2,x:{r:["data.helmet"],s:'_0||"Empty"'},p:[23,59,970]}]}]}," ",{p:[25,9,1039],t:7,e:"ui-section",a:{label:"Suit"},f:[{p:[26,11,1075],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.suit"],s:'_0?"square":"square-o"'},p:[26,28,1092]}],state:[{t:2,x:{r:["data.suit"],s:'_0?null:"disabled"'},p:[26,74,1138]}],action:"dispense",params:'{"item": "suit"}'},f:[{t:2,x:{r:["data.suit"],s:'_0||"Empty"'},p:[27,57,1229]}]}]}," ",{p:[29,9,1296],t:7,e:"ui-section",a:{label:"Mask"},f:[{p:[30,11,1332],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.mask"],s:'_0?"square":"square-o"'},p:[30,28,1349]}],state:[{t:2,x:{r:["data.mask"],s:'_0?null:"disabled"'},p:[30,74,1395]}],action:"dispense",params:'{"item": "mask"}'},f:[{t:2,x:{r:["data.mask"],s:'_0||"Empty"'},p:[31,57,1486]}]}]}," ",{p:[33,9,1553],t:7,e:"ui-section",a:{label:"Storage"},f:[{p:[34,11,1592],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.storage"],s:'_0?"square":"square-o"'},p:[34,28,1609]}],state:[{t:2,x:{r:["data.storage"],s:'_0?null:"disabled"'},p:[34,77,1658]}],action:"dispense",params:'{"item": "storage"}'},f:[{t:2,x:{r:["data.storage"],s:'_0||"Empty"'},p:[35,60,1755]}]}]}]},{t:4,n:50,x:{r:["data.open"],s:"!(_0)"},f:[" ",{p:[38,7,1836],t:7,e:"ui-button",a:{icon:"recycle",state:[{t:2,x:{r:["data.occupied","data.safeties"],s:'_0&&_1?"disabled":null'},p:[38,40,1869]}],action:"uv"},f:["Disinfect"]}]}],r:"data.locked"}]}],r:"data.uv_active"}]},e.exports=a.extend(r.exports)},{205:205}],291:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,5,18],t:7,e:"ui-section",a:{label:"Dispense"},f:[{p:[3,9,57],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.plasma"],s:'_0?"square":"square-o"'},p:[3,26,74]}],state:[{t:2,x:{r:["data.plasma"],s:'_0?null:"disabled"'},p:[3,74,122]}],action:"plasma"},f:["Plasma (",{t:2,x:{r:["adata.plasma"],s:"Math.round(_0)"},p:[4,37,196]},")"]}," ",{p:[5,9,247],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.oxygen"],s:'_0?"square":"square-o"'},p:[5,26,264]}],state:[{t:2,x:{r:["data.oxygen"],s:'_0?null:"disabled"'},p:[5,74,312]}],action:"oxygen"},f:["Oxygen (",{t:2,x:{r:["adata.oxygen"],s:"Math.round(_0)"},p:[6,37,386]},")"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],292:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{tankPressureState:function(){var t=this.get("data.tankPressure");return t>=200?"good":t>=100?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[14,1,282],t:7,e:"ui-notice",f:[{p:[15,3,296],t:7,e:"span",f:["The regulator ",{t:2,x:{r:["data.connected"],s:'_0?"is":"is not"'},p:[15,23,316]}," connected to a mask."]}]}," ",{p:[17,1,393],t:7,e:"ui-display",f:[{p:[18,3,408],t:7,e:"ui-section",a:{label:"Tank Pressure"},f:[{p:[19,7,449],t:7,e:"ui-bar",a:{min:"0",max:"1013",value:[{t:2,r:"data.tankPressure",p:[19,41,483]}],state:[{t:2,r:"tankPressureState",p:[20,16,521]}]},f:[{t:2,x:{r:["adata.tankPressure"],s:"Math.round(_0)"},p:[20,39,544]}," kPa"]}]}," ",{p:[22,3,610],t:7,e:"ui-section",a:{label:"Release Pressure"},f:[{p:[23,5,652],t:7,e:"ui-bar",a:{min:[{t:2,r:"data.minReleasePressure",p:[23,18,665]}],max:[{t:2,r:"data.maxReleasePressure",p:[23,52,699]}],value:[{t:2,r:"data.releasePressure",p:[24,14,741]}]},f:[{t:2,x:{r:["adata.releasePressure"],s:"Math.round(_0)"},p:[24,40,767]}," kPa"]}]}," ",{p:[26,3,836],t:7,e:"ui-section",a:{label:"Pressure Regulator"},f:[{p:[27,5,880],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.releasePressure","data.defaultReleasePressure"],s:'_0!=_1?null:"disabled"'},p:[27,38,913]}],action:"pressure",params:'{"pressure": "reset"}'},f:["Reset"]}," ",{p:[29,5,1067],t:7,e:"ui-button",a:{icon:"minus",state:[{t:2,x:{r:["data.releasePressure","data.minReleasePressure"],s:'_0>_1?null:"disabled"'},p:[29,36,1098]}],action:"pressure",params:'{"pressure": "min"}'},f:["Min"]}," ",{p:[31,5,1243],t:7,e:"ui-button",a:{icon:"pencil",action:"pressure",params:'{"pressure": "input"}'},f:["Set"]}," ",{p:[32,5,1337],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.releasePressure","data.maxReleasePressure"],s:'_0<_1?null:"disabled"'},p:[32,35,1367]}],action:"pressure",params:'{"pressure": "max"}'},f:["Max"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],293:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Status"},f:[{p:[2,5,33],t:7,e:"ui-section",a:{label:"Temperature"},f:[{p:[3,9,75],t:7,e:"span",f:[{t:2,x:{r:["adata.temperature"],s:"Math.fixed(_0,2)"},p:[3,15,81]}," K"]}]}," ",{p:[5,5,151],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[6,9,190],t:7,e:"span",f:[{t:2,x:{r:["adata.pressure"],s:"Math.fixed(_0,2)"},p:[6,15,196]}," kPa"]}]}]}," ",{p:[9,1,276],t:7,e:"ui-display",a:{title:"Controls"},f:[{p:[10,5,311],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[11,9,347],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[11,26,364]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":null'},p:[11,70,408]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[12,28,469]}]}]}," ",{p:[14,5,531],t:7,e:"ui-section",a:{label:"Target Temperature"},f:[{p:[15,9,580],t:7,e:"ui-button",a:{icon:"fast-backward",style:[{t:2,x:{r:["data.target","data.min"],s:'_0==_1?"disabled":null'},p:[15,48,619]}],action:"target",params:'{"adjust": -20}'}}," ",{p:[17,9,733],t:7,e:"ui-button",a:{icon:"backward",style:[{t:2,x:{r:["data.target","data.min"],s:'_0==_1?"disabled":null'},p:[17,43,767]}],action:"target",params:'{"adjust": -5}'}}," ",{p:[19,9,880],t:7,e:"ui-button",a:{icon:"pencil",action:"target",params:'{"target": "input"}'},f:[{t:2,x:{r:["adata.target"],s:"Math.fixed(_0,2)"},p:[19,79,950]}]}," ",{p:[20,9,1003],t:7,e:"ui-button",a:{icon:"forward",style:[{t:2,x:{r:["data.target","data.max"],s:'_0==_1?"disabled":null'},p:[20,42,1036]}],action:"target",params:'{"adjust": 5}'}}," ",{p:[22,9,1148],t:7,e:"ui-button",a:{icon:"fast-forward",style:[{t:2,x:{r:["data.target","data.max"],s:'_0==_1?"disabled":null'},p:[22,47,1186]}],action:"target",params:'{"adjust": 20}'}}]}]}]},e.exports=a.extend(r.exports)},{205:205}],294:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{},oninit:function(){this.on({hover:function(t){var e=this.get("data.telecrystals");e>=t.context.params.cost&&this.set("hovered",t.context.params)},unhover:function(t){this.set("hovered")}})}}}(r),r.exports.template={v:3,t:[" ",{p:{button:[{t:4,f:[{p:[23,7,482],t:7,e:"ui-button",a:{icon:"lock",action:"lock"},f:["Lock"]}],n:50,r:"data.lockable",p:[22,5,453]}]},t:7,e:"ui-display",a:{title:"Uplink",button:0},f:[" ",{p:[26,3,568],t:7,e:"ui-section",a:{label:"Telecrystals",right:0},f:[{p:[27,5,613],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.telecrystals"],s:'_0>0?"good":"bad"'},p:[27,18,626]}]},f:[{t:2,r:"data.telecrystals",p:[27,62,670]}," TC"]}]}]}," ",{t:4,f:[{p:[31,3,764],t:7,e:"ui-display",f:[{p:[32,2,779],t:7,e:"ui-button",a:{action:"select",params:['{"category": "',{t:2,r:"name",p:[32,51,828]},'"}']},f:[{t:2,r:"name",p:[32,63,840]}]}," ",{t:4,f:[{p:[34,4,883],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[34,23,902]}],candystripe:0,right:0},f:[{p:[35,3,934],t:7,e:"ui-button",a:{tooltip:[{t:2,r:"name",p:[35,23,954]},": ",{t:2,r:"desc",p:[35,33,964]}],"tooltip-side":"left",state:[{t:2,x:{r:["data.telecrystals","hovered.cost","cost","hovered.item","name"],s:'_0<_2||(_0-_1<_2&&_3!=_4)?"disabled":null'},p:[36,12,1006]}],action:"buy",params:['{"category": "',{t:2,r:"category",p:[37,40,1165]},'", "item": ',{t:2,r:"name",p:[37,63,1188]},', "cost": ',{t:2,r:"cost",p:[37,81,1206]},"}"]},v:{hover:"hover",unhover:"unhover"},f:[{t:2,r:"cost",p:[38,43,1260]}," TC"]}]}],n:52,r:"items",p:[33,2,863]}]}],n:52,r:"data.categories",p:[30,1,735]}]},e.exports=a.extend(r.exports)},{205:205}],295:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{healthState:function(t){var e=this.get("data.vr_avatar.maxhealth");return t>e/1.5?"good":t>e/3?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[14,1,279],t:7,e:"ui-display",f:[{t:4,f:[{p:[16,3,318],t:7,e:"ui-display",a:{title:"Virtual Avatar"},f:[{p:[17,4,357],t:7,e:"ui-section",a:{label:"Name"},f:[{t:2,r:"data.vr_avatar.name",p:[18,5,387]}]}," ",{p:[20,4,431],t:7,e:"ui-section",a:{label:"Status"},f:[{t:2,r:"data.vr_avatar.status",p:[21,5,463]}]}," ",{p:[23,4,509],t:7,e:"ui-section",a:{label:"Health"},f:[{p:[24,5,541],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.vr_avatar.maxhealth",p:[24,26,562]}],value:[{t:2,r:"adata.vr_avatar.health",p:[24,64,600]}],state:[{t:2,x:{r:["healthState","adata.vr_avatar.health"],s:"_0(_1)"},p:[24,99,635]}]},f:[{t:2,x:{r:["adata.vr_avatar.health"],s:"Math.round(_0)"},p:[24,140,676]},"/",{t:2,r:"adata.vr_avatar.maxhealth",p:[24,179,715]}]}]}]}],n:50,r:"data.vr_avatar",p:[15,2,293]},{t:4,n:51,f:[{p:[28,3,799],t:7,e:"ui-display",a:{title:"Virtual Avatar"},f:["No Virtual Avatar detected"]}],r:"data.vr_avatar"}," ",{p:[32,2,891],t:7,e:"ui-display",a:{title:"VR Commands"},f:[{p:[33,3,926],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.toggle_open"],s:'_0?"times":"plus"'},p:[33,20,943]}],action:"toggle_open"},f:[{t:2,x:{r:["data.toggle_open"],s:'_0?"Close":"Open"'},p:[34,4,1009]}," the VR Sleeper"]}," ",{t:4,f:[{p:[37,4,1108],t:7,e:"ui-button",a:{icon:"signal",action:"vr_connect"},f:["Connect to VR"]}],n:50,r:"data.isoccupant",p:[36,3,1081]}," ",{t:4,f:[{p:[42,4,1226],t:7,e:"ui-button",a:{icon:"ban",action:"delete_avatar"},f:["Delete Virtual Avatar"]}],n:50,r:"data.vr_avatar",p:[41,3,1200]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],296:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{t:4,f:[{p:[3,5,40],t:7,e:"ui-section",a:{label:[{t:2,r:"color",p:[3,24,59]},{t:2,x:{r:["wire"],s:'_0?" ("+_0+")":""'},p:[3,33,68]}],labelcolor:[{t:2,r:"color",p:[3,80,115]}],candystripe:0,right:0},f:[{p:[4,7,151],t:7,e:"ui-button",a:{action:"cut",params:['{"wire":"',{t:2,r:"color",p:[4,48,192]},'"}']},f:[{t:2,x:{r:["cut"],s:'_0?"Mend":"Cut"'},p:[4,61,205]}]}," ",{p:[5,7,248],t:7,e:"ui-button",a:{action:"pulse",params:['{"wire":"',{t:2,r:"color",p:[5,50,291]},'"}']},f:["Pulse"]}," ",{p:[6,7,328],t:7,e:"ui-button",a:{action:"attach",params:['{"wire":"',{t:2,r:"color",p:[6,51,372]},'"}']},f:[{t:2,x:{r:["attached"],s:'_0?"Detach":"Attach"'},p:[6,64,385]}]}]}],n:52,r:"data.wires",p:[2,3,15]}]}," ",{t:4,f:[{p:[11,3,498],t:7,e:"ui-display",f:[{t:4,f:[{p:[13,7,543],t:7,e:"ui-section",f:[{t:2,r:".",p:[13,19,555]}]}],n:52,r:"data.status",p:[12,5,515]}]}],n:50,r:"data.status",p:[10,1,476]}]},e.exports=a.extend(r.exports)},{205:205}],297:[function(t,e,n){(function(e){"use strict";var n=t(205),a=e.interopRequireDefault(n); -t(195),t(1),t(191),t(194);var r=t(298),i=e.interopRequireDefault(r),o=t(299),s=t(192),p=t(193),u=e.interopRequireDefault(p);a["default"].DEBUG=/minified/.test(function(){}),Object.assign(Math,t(303)),window.initialize=function(e){window.tgui||(window.tgui=new i["default"]({el:"#container",data:function(){var n=JSON.parse(e);return{constants:t(300),text:t(304),config:n.config,data:n.data,adata:n.data}}}))};var c=document.getElementById("data"),l=c.textContent,f=c.getAttribute("data-ref");"{}"!==l&&(window.initialize(l),c.remove()),(0,o.act)(f,"tgui:initialize"),(0,s.loadCSS)("font-awesome.min.css");var d=new u["default"]("FontAwesome");d.check("").then(function(){return document.body.classList.add("icons")})["catch"](function(){return document.body.classList.add("no-icons")})}).call(this,t("babel/external-helpers"))},{1:1,191:191,192:192,193:193,194:194,195:195,205:205,298:298,299:299,300:300,303:303,304:304,"babel/external-helpers":"babel/external-helpers"}],298:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(299),a=t(301);e.exports={components:{"ui-bar":t(206),"ui-button":t(207),"ui-display":t(208),"ui-input":t(209),"ui-linegraph":t(210),"ui-notice":t(211),"ui-section":t(213),"ui-subdisplay":t(214),"ui-tabs":t(215)},events:{enter:t(203).enter,space:t(203).space},transitions:{fade:t(204)},onconfig:function(){var e=this.get("config.interface"),n={ai_restorer:t(219),airalarm:t(220),"airalarm/back":t(221),"airalarm/modes":t(222),"airalarm/scrubbers":t(223),"airalarm/status":t(224),"airalarm/thresholds":t(225),"airalarm/vents":t(226),airlock_electronics:t(227),apc:t(228),atmos_alert:t(229),atmos_control:t(230),atmos_filter:t(231),atmos_mixer:t(232),atmos_pump:t(233),brig_timer:t(234),bsa:t(235),canister:t(236),cargo:t(237),cellular_emporium:t(238),chem_dispenser:t(239),chem_heater:t(240),chem_master:t(241),clockwork_slab:t(242),computer_fabricator:t(243),computer_main:t(244),crayon:t(245),cryo:t(246),disposal_unit:t(247),dna_vault:t(248),emergency_shuttle_console:t(249),engraved_message:t(250),error:t(251),file_manager:t(252),firealarm:t(253),gulag_console:t(254),gulag_item_reclaimer:t(255),identification_computer:t(256),implantchair:t(257),intellicard:t(258),keycard_auth:t(259),labor_claim_console:t(260),laptop_configuration:t(261),mech_bay_power_console:t(262),mulebot:t(263),ntnet_chat:t(264),ntnet_dos:t(265),ntnet_downloader:t(266),ntnet_monitor:t(267),ntnet_relay:t(268),ntnet_transfer:t(269),nuclear_bomb:t(270),personal_crafting:t(271),portable_pump:t(272),portable_scrubber:t(273),power_monitor:t(274),power_monitor_prog:t(275),radio:t(276),revelation:t(277),sat_control:t(278),shuttle_manipulator:t(279),"shuttle_manipulator/modification":t(280),"shuttle_manipulator/status":t(281),"shuttle_manipulator/templates":t(282),sleeper:t(283),slime_swap_body:t(284),smes:t(285),solar_control:t(286),space_heater:t(287),station_alert:t(288),station_alert_prog:t(289),suit_storage_unit:t(290),tank_dispenser:t(291),tanks:t(292),thermomachine:t(293),uplink:t(294),vr_sleeper:t(295),wires:t(296)};e in n?this.components["interface"]=n[e]:this.components["interface"]=n.error},oninit:function(){this.observe("config.style",function(t,e,n){t&&document.body.classList.add(t),e&&document.body.classList.remove(e)})},oncomplete:function(){if(this.get("config.locked")){var t=(0,a.lock)(window.screenLeft,window.screenTop),e=t.x,r=t.y;(0,n.winset)(this.get("config.window"),"pos",e+","+r)}(0,n.winset)("mapwindow.map","focus",!0)}}}(r),r.exports.template={v:3,t:[" "," "," "," ",{p:[56,1,1819],t:7,e:"titlebar",f:[{t:3,r:"config.title",p:[56,11,1829]}]}," ",{p:[57,1,1859],t:7,e:"main",f:[{p:[58,3,1868],t:7,e:"warnings"}," ",{p:[59,3,1882],t:7,e:"interface"}]}," ",{t:4,f:[{p:[62,3,1929],t:7,e:"resize"}],n:50,r:"config.titlebar",p:[61,1,1903]}]},r.exports.components=r.exports.components||{};var i={warnings:t(218),titlebar:t(217),resize:t(212)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{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,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,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,299:299,301:301}],299:[function(t,e,n){"use strict";function a(){var t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],e=arguments.length<=1||void 0===arguments[1]?"":arguments[1];return"byond://"+e+"?"+Object.keys(t).map(function(e){return o(e)+"="+o(t[e])}).join("&")}function r(t,e){var n=arguments.length<=2||void 0===arguments[2]?{}:arguments[2];window.location.href=a(Object.assign({src:t,action:e},n))}function i(t,e,n){var r;window.location.href=a((r={},r[t+"."+e]=n,r),"winset")}n.__esModule=!0,n.href=a,n.act=r,n.winset=i;var o=encodeURIComponent},{}],300:[function(t,e,n){"use strict";n.__esModule=!0;n.UI_INTERACTIVE=2,n.UI_UPDATE=1,n.UI_DISABLED=0,n.UI_CLOSE=-1},{}],301:[function(t,e,n){"use strict";function a(t,e){return 0>t?t=0:t+window.innerWidth>window.screen.availWidth&&(t=window.screen.availWidth-window.innerWidth),0>e?e=0:e+window.innerHeight>window.screen.availHeight&&(e=window.screen.availHeight-window.innerHeight),{x:t,y:e}}function r(t){if(t.preventDefault(),this.get("drag")){if(this.get("x")){var e=t.screenX-this.get("x")+window.screenLeft,n=t.screenY-this.get("y")+window.screenTop;if(this.get("config.locked")){var r=a(e,n);e=r.x,n=r.y}(0,s.winset)(this.get("config.window"),"pos",e+","+n)}this.set({x:t.screenX,y:t.screenY})}}function i(t,e){return t=Math.clamp(100,window.screen.width,t),e=Math.clamp(100,window.screen.height,e),{x:t,y:e}}function o(t){if(t.preventDefault(),this.get("resize")){if(this.get("x")){var e=t.screenX-this.get("x")+window.innerWidth,n=t.screenY-this.get("y")+window.innerHeight,a=i(e,n);e=a.x,n=a.y,(0,s.winset)(this.get("config.window"),"size",e+","+n)}this.set({x:t.screenX,y:t.screenY})}}n.__esModule=!0,n.lock=a,n.drag=r,n.sane=i,n.resize=o;var s=t(299)},{299:299}],302:[function(t,e,n){"use strict";function a(t,e){for(var n=t,a=Array.isArray(n),i=0,n=a?n:n[Symbol.iterator]();;){var o;if(a){if(i>=n.length)break;o=n[i++]}else{if(i=n.next(),i.done)break;o=i.value}var s=o;s.textContent.toLowerCase().includes(e)?(s.style.display="",r(s,e)):s.style.display="none"}}function r(t,e){for(var n=t.queryAll("section"),a=t.query("header").textContent.toLowerCase().includes(e),r=n,i=Array.isArray(r),o=0,r=i?r:r[Symbol.iterator]();;){var s;if(i){if(o>=r.length)break;s=r[o++]}else{if(o=r.next(),o.done)break;s=o.value}var p=s;a||p.textContent.toLowerCase().includes(e)?p.style.display="":p.style.display="none"}}n.__esModule=!0,n.filterMulti=a,n.filter=r},{}],303:[function(t,e,n){"use strict";function a(t,e,n){return Math.max(t,Math.min(n,e))}function r(t){var e=arguments.length<=1||void 0===arguments[1]?1:arguments[1];return+(Math.round(t+"e"+e)+"e-"+e)}n.__esModule=!0,n.clamp=a,n.fixed=r},{}],304:[function(t,e,n){"use strict";function a(t){return t[0].toUpperCase()+t.slice(1).toLowerCase()}function r(t){return t.replace(/\w\S*/g,a)}function i(t,e){for(t=""+t;t.length1){for(var p=Array(o),u=0;o>u;u++)p[u]=arguments[u+3];n.children=p}return{$$typeof:t,type:e,key:void 0===a?null:""+a,ref:null,props:n,_owner:null}}}(),e.asyncToGenerator=function(t){return function(){var e=t.apply(this,arguments);return new Promise(function(t,n){function a(r,i){try{var o=e[r](i),s=o.value}catch(p){return void n(p)}return o.done?void t(s):Promise.resolve(s).then(function(t){return a("next",t)},function(t){return a("throw",t)})}return a("next")})}},e.classCallCheck=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},e.createClass=function(){function t(t,e){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(t,a)&&(n[a]=t[a]);return n},e.possibleConstructorReturn=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e},e.selfGlobal=void 0===t?self:t,e.set=function a(t,e,n,r){var i=Object.getOwnPropertyDescriptor(t,e);if(void 0===i){var o=Object.getPrototypeOf(t);null!==o&&a(o,e,n,r)}else if("value"in i&&i.writable)i.value=n;else{var s=i.set;void 0!==s&&s.call(r,n)}return n},e.slicedToArray=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")}}(),e.slicedToArrayLoose=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){for(var n,a=[],r=t[Symbol.iterator]();!(n=r.next()).done&&(a.push(n.value),!e||a.length!==e););return a}throw new TypeError("Invalid attempt to destructure non-iterable instance")},e.taggedTemplateLiteral=function(t,e){return Object.freeze(Object.defineProperties(t,{raw:{value:Object.freeze(e)}}))},e.taggedTemplateLiteralLoose=function(t,e){return t.raw=e,t},e.temporalRef=function(t,e,n){if(t===n)throw new ReferenceError(e+" is not defined - temporal dead zone");return t},e.temporalUndefined={},e.toArray=function(t){return Array.isArray(t)?t:Array.from(t)},e.toConsumableArray=function(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e=_1?null:"disabled"'},p:[84,38,5229]}]},f:["PURCHASE"]}]},{t:4,n:50,x:{r:["data.state"],s:"(!(_0==1))&&((!(_0==2))&&(_0==3))"},f:[" ",{p:[87,2,5337],t:7,e:"h2",f:["Step 4: Thank you for your purchase"]},{p:[87,46,5381],t:7,e:"br"}," ",{p:[88,2,5387],t:7,e:"b",f:["Should you experience any issues with your new device, contact your local network admin for assistance."]}]}],x:{r:["data.state"],s:"_0==0"}}]},e.exports=a.extend(r.exports)},{205:205}],244:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[37,1,938],t:7,e:"ui-display",f:[{p:[38,2,952],t:7,e:"i",f:["No program loaded. Please select program from list below."]}," ",{p:[39,2,1018],t:7,e:"table",f:[{t:4,f:[{p:[41,4,1055],t:7,e:"tr",f:[{p:[41,8,1059],t:7,e:"td",f:[{p:[41,12,1063],t:7,e:"ui-button",a:{action:"PC_runprogram",params:['{"name": "',{t:2,r:"name",p:[41,64,1115]},'"}']},f:[{t:2,r:"desc",p:[42,5,1132]}]}]},{p:[44,4,1160],t:7,e:"td",f:[{p:[44,8,1164],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["running"],s:'_0?null:"disabled"'},p:[44,26,1182]}],icon:"close",action:"PC_killprogram",params:['{"name": "',{t:2,r:"name",p:[44,114,1270]},'"}']}}]}]}],n:52,r:"data.programs",p:[40,3,1028]}]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],245:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,1,21],t:7,e:"ui-display",f:[{p:[3,2,35],t:7,e:"ui-section",a:{label:"Cap"},f:[{p:[4,3,62],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.is_capped"],s:'_0?"power-off":"close"'},p:[4,20,79]}],style:[{t:2,x:{r:["data.is_capped"],s:'_0?null:"selected"'},p:[4,71,130]}],action:"toggle_cap"},f:[{t:2,x:{r:["data.is_capped"],s:'_0?"On":"Off"'},p:[6,4,197]}]}]}]}],n:50,r:"data.has_cap",p:[1,1,0]},{p:[10,1,279],t:7,e:"ui-display",f:[{t:4,f:[{p:[14,2,406],t:7,e:"ui-section",f:[{p:[15,3,421],t:7,e:"ui-button",a:{action:"select_colour"},f:["Select New Colour"]}]}],n:50,r:"data.can_change_colour",p:[13,1,374]}]}," ",{p:[19,1,522],t:7,e:"ui-display",a:{title:"Stencil"},f:[{t:4,f:[{p:[21,2,579],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[21,21,598]}]},f:[{t:4,f:[{p:[23,7,633],t:7,e:"ui-button",a:{action:"select_stencil",params:['{"item":"',{t:2,r:"item",p:[23,59,685]},'"}'],style:[{t:2,x:{r:["item","data.selected_stencil"],s:'_0==_1?"selected":null'},p:[24,12,708]}]},f:[{t:2,r:"item",p:[25,4,767]}]}],n:52,r:"items",p:[22,3,611]}]}],n:52,r:"data.drawables",p:[20,3,553]}]}," ",{p:[31,1,844],t:7,e:"ui-display",a:{title:"Text Mode"},f:[{p:[32,2,876],t:7,e:"ui-section",a:{label:"Current Buffer"},f:[{t:2,r:"text_buffer",p:[32,37,911]}]}," ",{p:[34,2,943],t:7,e:"ui-section",f:[{p:[34,14,955],t:7,e:"ui-button",a:{action:"enter_text"},f:["New Text"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],246:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{temperatureStatus:function(t){return 225>t?"good":273.15>t?"average":"bad"}},computed:{occupantStatState:function(){switch(this.get("data.occupant.stat")){case 0:return"good";case 1:return"average";default:return"bad"}}}}}(r),r.exports.template={v:3,t:[" ",{p:[22,1,445],t:7,e:"ui-display",a:{title:"Occupant"},f:[{p:[23,3,477],t:7,e:"ui-section",a:{label:"Occupant"},f:[{p:[24,3,509],t:7,e:"span",f:[{t:2,x:{r:["data.occupant.name"],s:'_0?_0:"No Occupant"'},p:[24,9,515]}]}]}," ",{t:4,f:[{p:[27,5,629],t:7,e:"ui-section",a:{label:"State"},f:[{p:[28,7,662],t:7,e:"span",a:{"class":[{t:2,r:"occupantStatState",p:[28,20,675]}]},f:[{t:2,x:{r:["data.occupant.stat"],s:'_0==0?"Conscious":_0==1?"Unconcious":"Dead"'},p:[28,43,698]}]}]}," ",{p:[30,4,817],t:7,e:"ui-section",a:{label:"Temperature"},f:[{p:[31,6,855],t:7,e:"span",a:{"class":[{t:2,x:{r:["temperatureStatus","adata.occupant.bodyTemperature"],s:"_0(_1)"},p:[31,19,868]}]},f:[{t:2,x:{r:["adata.occupant.bodyTemperature"],s:"Math.round(_0)"},p:[31,74,923]}," K"]}]}," ",{p:[33,5,1e3],t:7,e:"ui-section",a:{label:"Health"},f:[{p:[34,7,1034],t:7,e:"ui-bar",a:{min:[{t:2,r:"data.occupant.minHealth",p:[34,20,1047]}],max:[{t:2,r:"data.occupant.maxHealth",p:[34,54,1081]}],value:[{t:2,r:"data.occupant.health",p:[34,90,1117]}],state:[{t:2,x:{r:["data.occupant.health"],s:'_0>=0?"good":"average"'},p:[35,16,1158]}]},f:[{t:2,x:{r:["adata.occupant.health"],s:"Math.round(_0)"},p:[35,68,1210]}]}]}," ",{t:4,f:[{p:[38,7,1444],t:7,e:"ui-section",a:{label:[{t:2,r:"label",p:[38,26,1463]}]},f:[{p:[39,9,1483],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.occupant.maxHealth",p:[39,30,1504]}],value:[{t:2,rx:{r:"data.occupant",m:[{t:30,n:"type"}]},p:[39,66,1540]}],state:"bad"},f:[{t:2,x:{r:["type","adata.occupant"],s:"Math.round(_1[_0])"},p:[39,103,1577]}]}]}],n:52,x:{r:[],s:'[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}]'},p:[37,5,1279]}],n:50,r:"data.hasOccupant",p:[26,3,600]}]}," ",{p:[44,1,1681],t:7,e:"ui-display",a:{title:"Cell"},f:[{p:[45,3,1709],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[46,5,1740],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.isOperating"],s:'_0?"power-off":"close"'},p:[46,22,1757]}],style:[{t:2,x:{r:["data.isOperating"],s:'_0?"selected":null'},p:[47,14,1816]}],state:[{t:2,x:{r:["data.isOpen"],s:'_0?"disabled":null'},p:[48,14,1871]}],action:"power"},f:[{t:2,x:{r:["data.isOperating"],s:'_0?"On":"Off"'},p:[49,22,1929]}]}]}," ",{p:[51,3,1995],t:7,e:"ui-section",a:{label:"Temperature"},f:[{p:[52,3,2030],t:7,e:"span",a:{"class":[{t:2,x:{r:["temperatureStatus","adata.cellTemperature"],s:"_0(_1)"},p:[52,16,2043]}]},f:[{t:2,x:{r:["adata.cellTemperature"],s:"Math.round(_0)"},p:[52,62,2089]}," K"]}]}," ",{p:[54,2,2152],t:7,e:"ui-section",a:{label:"Door"},f:[{p:[55,5,2182],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.isOpen"],s:'_0?"unlock":"lock"'},p:[55,22,2199]}],action:"door"},f:[{t:2,x:{r:["data.isOpen"],s:'_0?"Open":"Closed"'},p:[55,73,2250]}]}," ",{p:[56,5,2302],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.autoEject"],s:'_0?"sign-out":"sign-in"'},p:[56,22,2319]}],action:"autoeject"},f:[{t:2,x:{r:["data.autoEject"],s:'_0?"Auto":"Manual"'},p:[56,86,2383]}]}]}]}," ",{p:{button:[{p:[61,5,2524],t:7,e:"ui-button",a:{icon:"eject",state:[{t:2,x:{r:["data.isBeakerLoaded"],s:'_0?null:"disabled"'},p:[61,36,2555]}],action:"ejectbeaker"},f:["Eject"]}]},t:7,e:"ui-display",a:{title:"Beaker",button:0},f:[" ",{p:[63,3,2656],t:7,e:"ui-section",a:{label:"Contents"},f:[{t:4,f:[{t:4,f:[{p:[66,9,2763],t:7,e:"span",a:{"class":"highlight"},t0:"fade",f:[{t:2,x:{r:["volume"],s:"Math.fixed(_0,2)"},p:[66,52,2806]}," units of ",{t:2,r:"name",p:[66,87,2841]}]},{p:[66,102,2856],t:7,e:"br"}],n:52,r:"adata.beakerContents",p:[65,7,2724]},{t:4,n:51,f:[{p:[68,9,2885],t:7,e:"span",a:{"class":"bad"},f:["Beaker Empty"]}],r:"adata.beakerContents"}],n:50,r:"data.isBeakerLoaded",p:[64,5,2690]},{t:4,n:51,f:[{p:[71,7,2958],t:7,e:"span",a:{"class":"average"},f:["No Beaker"]}],r:"data.isBeakerLoaded"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],247:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,2,14],t:7,e:"ui-section",a:{label:"State"},f:[{t:4,f:[{p:[4,4,69],t:7,e:"span",a:{"class":"bad"},f:["Off"]}],n:50,x:{r:["data.mode"],s:"_0==0"},p:[3,3,43]},{t:4,n:51,f:[{t:4,f:[{p:[7,5,140],t:7,e:"span",a:{"class":"bad"},f:["Power Disabled"]}],n:50,x:{r:["data.mode"],s:"_0==-1"},p:[6,4,112]},{t:4,n:51,f:[{t:4,f:[{p:[11,6,225],t:7,e:"span",a:{"class":"average"},f:["Pressurizing"]}],n:50,x:{r:["data.mode"],s:"_0==1"},p:[10,5,197]},{t:4,n:51,f:[{p:[13,6,285],t:7,e:"span",a:{"class":"good"},f:["Ready"]}],x:{r:["data.mode"],s:"_0==1"}}],x:{r:["data.mode"],s:"_0==-1"}}],x:{r:["data.mode"],s:"_0==0"}}]}," ",{p:[18,2,366],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[19,3,398],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.per",p:[19,36,431]}],state:"good"},f:[{t:2,r:"data.per",p:[19,63,458]},"%"]}]}," ",{p:[21,5,500],t:7,e:"ui-section",a:{label:"Handle"},f:[{p:[22,9,536],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.flush"],s:'_0?"toggle-on":"toggle-off"'},p:[23,10,557]}],state:[{t:2,x:{r:["data.isai","data.mode"],s:'_0||_1==-1?"disabled":null'},p:[24,11,614]}],action:[{t:2,x:{r:["data.flush"],s:'_0?"handle-0":"handle-1"'},p:[25,12,680]}]},f:[{t:2,x:{r:["data.flush"],s:'_0?"Disengage":"Engage"'},p:[26,5,728]}]}]}," ",{p:[28,2,800],t:7,e:"ui-section",a:{label:"Eject"},f:[{p:[29,3,829],t:7,e:"ui-button",a:{icon:"sign-out",state:[{t:2,x:{r:["data.isai"],s:'_0?"disabled":null'},p:[29,37,863]}],action:"eject"},f:["Eject Contents"]},{p:[29,114,940],t:7,e:"br"}]}," ",{p:[31,2,962],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[32,3,991],t:7,e:"ui-button",a:{icon:"power-off",state:[{t:2,x:{r:["data.mode"],s:'_0==-1?"disabled":null'},p:[32,38,1026]}],action:[{t:2,x:{r:["data.mode"],s:'_0?"pump-0":"pump-1"'},p:[32,87,1075]}],style:[{t:2,x:{r:["data.mode"],s:'_0?"selected":null'},p:[32,132,1120]}]}},{p:[32,180,1168],t:7,e:"br"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],248:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"DNA Vault Database"},f:[{p:[2,3,42],t:7,e:"ui-section",a:{label:"Human DNA"},f:[{p:[3,7,79],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.dna_max",p:[3,28,100]}],value:[{t:2,r:"data.dna",p:[3,53,125]}]},f:[{t:2,r:"data.dna",p:[3,67,139]},"/",{t:2,r:"data.dna_max",p:[3,80,152]}," Samples"]}]}," ",{p:[5,3,204],t:7,e:"ui-section",a:{label:"Plant Data"},f:[{p:[6,5,240],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.plants_max",p:[6,26,261]}],value:[{t:2,r:"data.plants",p:[6,54,289]}]},f:[{t:2,r:"data.plants",p:[6,71,306]},"/",{t:2,r:"data.plants_max",p:[6,87,322]}," Samples"]}]}," ",{p:[8,3,377],t:7,e:"ui-section",a:{label:"Animal Data"},f:[{p:[9,5,414],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.animals_max",p:[9,26,435]}],value:[{t:2,r:"data.animals",p:[9,55,464]}]},f:[{t:2,r:"data.animals",p:[9,73,482]},"/",{t:2,r:"data.animals_max",p:[9,90,499]}," Samples"]}]}]}," ",{t:4,f:[{p:[13,1,604],t:7,e:"ui-display",a:{title:"Personal Gene Therapy"},f:[{p:[14,3,650],t:7,e:"ui-section",f:[{p:[15,2,664],t:7,e:"span",f:["Applicable gene therapy treatments:"]}]}," ",{p:[17,3,731],t:7,e:"ui-section",f:[{p:[18,2,745],t:7,e:"ui-button",a:{action:"gene",params:['{"choice": "',{t:2,r:"data.choiceA",p:[18,47,790]},'"}']},f:[{t:2,r:"data.choiceA",p:[18,67,810]}]}," ",{p:[19,2,840],t:7,e:"ui-button",a:{action:"gene",params:['{"choice": "',{t:2,r:"data.choiceB",p:[19,47,885]},'"}']},f:[{t:2,r:"data.choiceB",p:[19,67,905]}]}]}]}],n:50,x:{r:["data.completed","data.used"],s:"_0&&!_1"},p:[12,1,567]}]},e.exports=a.extend(r.exports)},{205:205}],249:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,23],t:7,e:"ui-display",a:{title:[{t:2,r:"data.question",p:[2,21,41]}]},f:[{p:[3,5,64],t:7,e:"ui-section",f:[{t:4,f:[{p:[5,9,114],t:7,e:"ui-button",a:{action:"vote",params:['{"answer": "',{t:2,r:"answer",p:[6,45,169]},'"}'],style:[{t:2,x:{r:["selected"],s:'_0?"selected":null'},p:[7,18,200]}]},f:[{t:2,r:"answer",p:[7,53,235]}," (",{t:2,r:"amount",p:[7,65,247]},")"]}],n:52,r:"data.answers",p:[4,7,83]}]}]}],n:50,r:"data.shaking",p:[1,1,0]},{t:4,n:51,f:[{p:[13,3,341],t:7,e:"ui-notice",f:["The eightball is not currently being shaken."]}],r:"data.shaking"}]},e.exports=a.extend(r.exports)},{205:205}],250:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{p:[2,5,16],t:7,e:"span",f:["Time Until Launch: ",{t:2,r:"data.timer_str",p:[2,30,41]}]}]}," ",{p:[4,1,80],t:7,e:"ui-notice",f:[{p:[5,3,94],t:7,e:"span",f:["Engines: ",{t:2,x:{r:["data.engines_started"],s:'_0?"Online":"Idle"'},p:[5,18,109]}]}]}," ",{p:[7,1,174],t:7,e:"ui-display",a:{title:"Early Launch"},f:[{p:[8,2,209],t:7,e:"span",f:["Authorizations Remaining: ",{t:2,x:{r:["data.emagged","data.authorizations_remaining"],s:'_0?"ERROR":_1'},p:[9,2,242]}]}," ",{p:[10,2,309],t:7,e:"ui-button",a:{icon:"exclamation-triangle",action:"authorize",style:"danger",state:[{t:2,x:{r:["data.enabled"],s:'_0?null:"disabled"'},p:[12,10,393]}]},f:["AUTHORIZE"]}," ",{p:[15,2,459],t:7,e:"ui-button",a:{icon:"minus",action:"repeal",state:[{t:2,x:{r:["data.enabled"],s:'_0?null:"disabled"'},p:[16,10,508]}]},f:["Repeal"]}," ",{p:[19,2,571],t:7,e:"ui-button",a:{icon:"close",action:"abort",state:[{t:2,x:{r:["data.enabled"],s:'_0?null:"disabled"'},p:[20,10,619]}]},f:["Repeal All"]}]}," ",{p:[24,1,699],t:7,e:"ui-display",a:{title:"Authorizations"},f:[{t:4,f:[{p:[26,3,768],t:7,e:"ui-section",a:{candystripe:0,nowrap:0},f:[{t:2,r:"name",p:[26,34,799]}," (",{t:2,r:"job",p:[26,44,809]},")"]}],n:52,r:"data.authorizations",p:[25,2,736]},{t:4,n:51,f:[{p:[28,3,843],t:7,e:"ui-section",a:{candystripe:0,nowrap:0},f:["No authorizations."]}],r:"data.authorizations"}]}]},e.exports=a.extend(r.exports)},{205:205}],251:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,3,15],t:7,e:"ui-section",a:{label:"Message"},f:[{t:2,r:"data.hidden_message",p:[3,5,48]}]}," ",{p:[5,3,90],t:7,e:"ui-section",a:{label:"Created On"},f:[{t:2,r:"data.realdate",p:[6,5,126]}]}," ",{p:[8,3,162],t:7,e:"ui-section",a:{label:"Approval"},f:[{p:[9,5,196],t:7,e:"ui-button",a:{icon:"arrow-up",state:[{t:2,x:{r:["data.is_creator","data.has_liked"],s:'_0?"disabled":_1?"selected":null'},p:[11,14,242]}],action:"like"},f:[{t:2,r:"data.num_likes",p:[12,21,333]}]}," ",{p:[13,5,368],t:7,e:"ui-button",a:{icon:"circle",state:[{t:2,x:{r:["data.is_creator","data.has_liked","data.has_disliked"],s:'_0?"disabled":!_1&&!_2?"selected":null'},p:[15,14,412]}],action:"neutral"}}," ",{p:[17,5,546],t:7,e:"ui-button",a:{icon:"arrow-down",state:[{t:2,x:{r:["data.is_creator","data.has_disliked"],s:'_0?"disabled":_1?"selected":null'},p:[19,14,594]}],action:"dislike"},f:[{t:2,r:"data.num_dislikes",p:[20,24,691]}]}]}]}," ",{t:4,f:[{p:[24,3,782],t:7,e:"ui-display",a:{title:"Admin Panel"},f:[{p:[25,5,819],t:7,e:"ui-section",a:{label:"Creator Ckey"},f:[{t:2,r:"data.creator_key",p:[25,38,852]}]}," ",{p:[26,5,890],t:7,e:"ui-section",a:{label:"Creator Character Name"},f:[{t:2,r:"data.creator_name",p:[26,48,933]}]}," ",{p:[27,5,972],t:7,e:"ui-button",a:{icon:"remove",action:"delete",style:"danger"},f:["Delete"]}]}],n:50,r:"data.admin_mode",p:[23,1,756]}]},e.exports=a.extend(r.exports)},{205:205}],252:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{p:[2,3,14],t:7,e:"span",f:["The requested interface (",{t:2,r:"config.interface",p:[2,34,45]},") was not found. Does it exist?"]}]}]},e.exports=a.extend(r.exports)},{205:205}],253:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"ui-display",f:[{p:[4,2,16],t:7,e:"div",a:{style:"float: left"},f:[{p:[5,3,44],t:7,e:"div",a:{"class":"item"},f:[{p:[6,4,66],t:7,e:"table",f:[{p:[6,11,73],t:7,e:"tr",f:[{t:4,f:[{p:[8,5,140],t:7,e:"td",f:[{p:[8,9,144],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[8,19,154]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[7,4,81]}," ",{t:4,f:[{p:[11,5,256],t:7,e:"td",f:[{p:[11,9,260],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[11,12,263]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[10,4,194]}," ",{t:4,f:[{p:[14,5,338],t:7,e:"td",f:[{p:[14,9,342],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[14,19,352]}]}}]}],n:50,r:"data.PC_ntneticon",p:[13,4,308]}," ",{t:4,f:[{p:[17,5,422],t:7,e:"td",f:[{p:[17,9,426],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[17,19,436]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[16,4,390]}," ",{t:4,f:[{p:[20,5,508],t:7,e:"td",f:[{p:[20,9,512],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[20,12,515]},{p:[20,35,538],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[19,4,476]}," ",{t:4,f:[{p:[23,5,593],t:7,e:"td",f:[{p:[23,9,597],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[23,19,607]}]}}]}],n:52,r:"data.PC_programheaders",p:[22,4,556]}]}]}]}]}," ",{p:[28,2,661],t:7,e:"div",a:{style:"float: right"},f:[{p:[29,3,690],t:7,e:"table",f:[{p:[29,10,697],t:7,e:"tr",f:[{p:[30,4,705],t:7,e:"td",f:[{p:[30,8,709],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[32,5,801],t:7,e:"td",f:[{p:[32,9,805],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[33,5,862],t:7,e:"td",f:[{p:[33,9,866],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[31,4,765]}]}]}]}]}," ",{p:[37,2,958],t:7,e:"div",a:{style:"clear: both"},f:[{t:4,f:[{p:[40,3,1007],t:7,e:"h2",f:["An error has occurred and this program can not continue."]}," Additional information: ",{t:2,r:"data.error",p:[41,27,1099]},{p:[41,41,1113],t:7,e:"br"}," ",{p:[42,3,1120],t:7,e:"i",f:["Please try again. If the problem persists contact your system administrator for assistance."]}," ",{p:[43,3,1221],t:7,e:"ui-button",a:{action:"PRG_closefile"},f:["Restart program"]}],n:50,r:"data.error",p:[39,2,986]},{t:4,n:51,f:[{t:4,f:[{p:[46,4,1320],t:7,e:"h2",f:["Viewing file ",{t:2,r:"data.filename",p:[46,21,1337]}]}," ",{p:[47,4,1363],t:7,e:"div",a:{"class":"item"},f:[{p:[48,4,1385],t:7,e:"ui-button",a:{action:"PRG_closefile"},f:["CLOSE"]}," ",{p:[49,4,1440],t:7,e:"ui-button",a:{action:"PRG_edit"},f:["EDIT"]}," ",{p:[50,4,1489],t:7,e:"ui-button",a:{action:"PRG_printfile"},f:["PRINT"]}," "]},{p:[51,10,1550],t:7,e:"hr"}," ",{t:3,r:"data.filedata",p:[52,4,1558]}],n:50,r:"data.filename",p:[45,3,1295]},{t:4,n:51,f:[{p:[54,4,1592],t:7,e:"h2",f:["Available files (local):"]}," ",{p:[55,4,1629],t:7,e:"table",f:[{p:[56,5,1641],t:7,e:"tr",f:[{p:[57,6,1651],t:7,e:"th",f:["File name"]}," ",{p:[58,6,1675],t:7,e:"th",f:["File type"]}," ",{p:[59,6,1699],t:7,e:"th",f:["File size (GQ)"]}," ",{p:[60,6,1728],t:7,e:"th",f:["Operations"]}]}," ",{t:4,f:[{p:[63,6,1788],t:7,e:"tr",f:[{p:[64,7,1799],t:7,e:"td",f:[{t:2,r:"name",p:[64,11,1803]}]}," ",{p:[65,7,1823],t:7,e:"td",f:[".",{t:2,r:"type",p:[65,12,1828]}]}," ",{p:[66,7,1848],t:7,e:"td",f:[{t:2,r:"size",p:[66,11,1852]},"GQ"]}," ",{p:[67,7,1874],t:7,e:"td",f:[{p:[68,8,1886],t:7,e:"ui-button",a:{action:"PRG_openfile",params:['{"name": "',{t:2,r:"name",p:[68,59,1937]},'"}']},f:["VIEW"]}," ",{p:[69,8,1973],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[69,26,1991]}],action:"PRG_deletefile",params:['{"name": "',{t:2,r:"name",p:[69,105,2070]},'"}']},f:["DELETE"]}," ",{p:[70,8,2108],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[70,26,2126]}],action:"PRG_rename",params:['{"name": "',{t:2,r:"name",p:[70,101,2201]},'"}']},f:["RENAME"]}," ",{p:[71,8,2239],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[71,26,2257]}],action:"PRG_clone",params:['{"name": "',{t:2,r:"name",p:[71,100,2331]},'"}']},f:["CLONE"]}," ",{t:4,f:[{p:[73,9,2402],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[73,27,2420]}],action:"PRG_copytousb",params:['{"name": "',{t:2,r:"name",p:[73,105,2498]},'"}']},f:["EXPORT"]}],n:50,r:"data.usbconnected",p:[72,8,2368]}]}]}],n:52,r:"data.files",p:[62,5,1762]}]}," ",{t:4,f:[{p:[80,4,2625],t:7,e:"h2",f:["Available files (portable device):"]}," ",{p:[81,4,2672],t:7,e:"table",f:[{p:[82,5,2684],t:7,e:"tr",f:[{p:[83,6,2694],t:7,e:"th",f:["File name"]}," ",{p:[84,6,2718],t:7,e:"th",f:["File type"]}," ",{p:[85,6,2742],t:7,e:"th",f:["File size (GQ)"]}," ",{p:[86,6,2771],t:7,e:"th",f:["Operations"]}]}," ",{t:4,f:[{p:[89,6,2834],t:7,e:"tr",f:[{p:[90,7,2845],t:7,e:"td",f:[{t:2,r:"name",p:[90,11,2849]}]}," ",{p:[91,7,2869],t:7,e:"td",f:[".",{t:2,r:"type",p:[91,12,2874]}]}," ",{p:[92,7,2894],t:7,e:"td",f:[{t:2,r:"size",p:[92,11,2898]},"GQ"]}," ",{p:[93,7,2920],t:7,e:"td",f:[{p:[94,8,2932],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[94,26,2950]}],action:"PRG_usbdeletefile",params:['{"name": "',{t:2,r:"name",p:[94,108,3032]},'"}']},f:["DELETE"]}," ",{t:4,f:[{p:[96,9,3104],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["undeletable"],s:'_0?"disabled":null'},p:[96,27,3122]}],action:"PRG_copyfromusb",params:['{"name": "',{t:2,r:"name",p:[96,107,3202]},'"}']},f:["IMPORT"]}],n:50,r:"data.usbconnected",p:[95,8,3070]}]}]}],n:52,r:"data.usbfiles",p:[88,5,2805]}]}],n:50,r:"data.usbconnected",p:[79,4,2596]}," ",{p:[103,4,3311],t:7,e:"ui-button",a:{action:"PRG_newtextfile"},f:["NEW DATA FILE"]}],r:"data.filename"}],r:"data.error"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],254:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{seclevelState:function(){switch(this.get("data.seclevel")){case"blue":return"average";case"red":return"bad";case"delta":return"bad bold";default:return"good"}}}}}(r),r.exports.template={v:3,t:[" ",{p:[16,1,323],t:7,e:"ui-display",f:[{p:[17,5,341],t:7,e:"ui-section",a:{label:"Alert Level"},f:[{p:[18,9,383],t:7,e:"span",a:{"class":[{t:2,r:"seclevelState",p:[18,22,396]}]},f:[{t:2,x:{r:["text","data.seclevel"],s:"_0.titleCase(_1)"},p:[18,41,415]}]}]}," ",{p:[20,5,480],t:7,e:"ui-section",a:{label:"Controls"},f:[{p:[21,9,519],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.alarm"],s:'_0?"close":"bell-o"'},p:[21,26,536]}],action:[{t:2,x:{r:["data.alarm"],s:'_0?"reset":"alarm"'},p:[21,71,581]}]},f:[{t:2,x:{r:["data.alarm"],s:'_0?"Reset":"Activate"'},p:[22,13,631]}]}]}," ",{t:4,f:[{p:[25,7,733],t:7,e:"ui-section",a:{label:"Warning"},f:[{p:[26,9,771],t:7,e:"span",a:{"class":"bad bold"},f:["Safety measures offline. Device may exhibit abnormal behavior."]}]}],n:50,r:"data.emagged",p:[24,5,705]}]}]},e.exports=a.extend(r.exports)},{205:205}],255:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Labor Camp Teleporter"},f:[{p:[2,2,44],t:7,e:"ui-section",a:{label:"Teleporter Status"},f:[{p:[3,3,85],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.teleporter"],s:'_0?"good":"bad"'},p:[3,16,98]}]},f:[{t:2,x:{r:["data.teleporter"],s:'_0?"Connected":"Not connected"'},p:[3,54,136]}]}]}," ",{t:4,f:[{p:[6,4,239],t:7,e:"ui-section",a:{label:"Location"},f:[{p:[7,5,273],t:7,e:"span",f:[{t:2,r:"data.teleporter_location",p:[7,11,279]}]}]}," ",{p:[9,4,335],t:7,e:"ui-section",a:{label:"Locked status"},f:[{p:[10,5,374],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.teleporter_lock"],s:'_0?"lock":"unlock"'},p:[10,22,391]}],action:"teleporter_lock"},f:[{t:2,x:{r:["data.teleporter_lock"],s:'_0?"Locked":"Unlocked"'},p:[10,93,462]}]}," ",{p:[11,5,527],t:7,e:"ui-button",a:{action:"toggle_open"},f:[{t:2,x:{r:["data.teleporter_state_open"],s:'_0?"Open":"Closed"'},p:[11,37,559]}]}]}],n:50,r:"data.teleporter",p:[5,3,212]},{t:4,n:51,f:[{p:[14,4,653],t:7,e:"span",f:[{p:[14,10,659],t:7,e:"ui-button",a:{action:"scan_teleporter"},f:["Scan Teleporter"]}]}],r:"data.teleporter"}]}," ",{p:[17,1,754],t:7,e:"ui-display",a:{title:"Labor Camp Beacon"},f:[{p:[18,2,794],t:7,e:"ui-section",a:{label:"Beacon Status"},f:[{p:[19,3,831],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.beacon"],s:'_0?"good":"bad"'},p:[19,16,844]}]},f:[{t:2,x:{r:["data.beacon"],s:'_0?"Connected":"Not connected"'},p:[19,50,878]}]}]}," ",{t:4,f:[{p:[22,3,971],t:7,e:"ui-section",a:{label:"Location"},f:[{p:[23,4,1004],t:7,e:"span",f:[{t:2,r:"data.beacon_location",p:[23,10,1010]}]}]}],n:50,r:"data.beacon",p:[21,2,949]},{t:4,n:51,f:[{p:[26,4,1072],t:7,e:"span",f:[{p:[26,10,1078],t:7,e:"ui-button",a:{action:"scan_beacon"},f:["Scan Beacon"]}]}],r:"data.beacon"}]}," ",{p:[29,1,1165],t:7,e:"ui-display",a:{title:"Prisoner details"},f:[{p:[30,2,1204],t:7,e:"ui-section",a:{label:"Prisoner ID"},f:[{p:[31,3,1239],t:7,e:"ui-button",a:{action:"handle_id"},f:[{t:2,x:{r:["data.id","data.id_name"],s:'_0?_1:"-------------"'},p:[31,33,1269]}]}]}," ",{t:4,f:[{p:[34,2,1359],t:7,e:"ui-section", +a:{label:"Set ID goal"},f:[{p:[35,4,1395],t:7,e:"ui-button",a:{action:"set_goal"},f:[{t:2,r:"data.goal",p:[35,33,1424]}]}]}],n:50,r:"data.id",p:[33,2,1342]}," ",{p:[38,2,1475],t:7,e:"ui-section",a:{label:"Occupant"},f:[{p:[39,3,1507],t:7,e:"span",f:[{t:2,x:{r:["data.prisoner.name"],s:'_0?_0:"No Occupant"'},p:[39,9,1513]}]}]}," ",{t:4,f:[{p:[42,3,1620],t:7,e:"ui-section",a:{label:"Criminal Status"},f:[{p:[43,4,1660],t:7,e:"span",f:[{t:2,r:"data.prisoner.crimstat",p:[43,10,1666]}]}]}],n:50,r:"data.prisoner",p:[41,2,1596]}]}," ",{p:[47,1,1739],t:7,e:"ui-display",f:[{p:[48,2,1753],t:7,e:"center",f:[{p:[48,10,1761],t:7,e:"ui-button",a:{action:"teleport",state:[{t:2,x:{r:["data.can_teleport"],s:'_0?null:"disabled"'},p:[48,45,1796]}]},f:["Process Prisoner"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],256:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,2,14],t:7,e:"center",f:[{p:[2,10,22],t:7,e:"ui-button",a:{action:"handle_id"},f:[{t:2,x:{r:["data.id","data.id_name"],s:'_0?_1:"-------------"'},p:[2,40,52]}]}]}]}," ",{p:[4,1,132],t:7,e:"ui-display",a:{title:"Stored Items"},f:[{t:4,f:[{p:[6,3,189],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[6,22,208]}]},f:[{p:[7,4,222],t:7,e:"ui-button",a:{action:"release_items",params:['{"mobref":',{t:2,r:"mob",p:[7,56,274]},"}"],state:[{t:2,x:{r:["data.can_reclaim"],s:'_0?null:"disabled"'},p:[7,72,290]}]},f:["Drop Items"]}]}],n:52,r:"data.mobs",p:[5,2,167]}]}]},e.exports=a.extend(r.exports)},{205:205}],257:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"div",a:{style:"float: left"},f:[{p:[2,2,27],t:7,e:"div",a:{"class":"item"},f:[{p:[3,3,48],t:7,e:"table",f:[{p:[3,10,55],t:7,e:"tr",f:[{t:4,f:[{p:[5,4,120],t:7,e:"td",f:[{p:[5,8,124],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[5,18,134]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[4,3,62]}," ",{t:4,f:[{p:[8,4,233],t:7,e:"td",f:[{p:[8,8,237],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[8,11,240]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[7,3,172]}," ",{t:4,f:[{p:[11,4,312],t:7,e:"td",f:[{p:[11,8,316],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[11,18,326]}]}}]}],n:50,r:"data.PC_ntneticon",p:[10,3,283]}," ",{t:4,f:[{p:[14,4,393],t:7,e:"td",f:[{p:[14,8,397],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[14,18,407]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[13,3,362]}," ",{t:4,f:[{p:[17,4,476],t:7,e:"td",f:[{p:[17,8,480],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[17,11,483]},{p:[17,34,506],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[16,3,445]}," ",{t:4,f:[{p:[20,4,558],t:7,e:"td",f:[{p:[20,8,562],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[20,18,572]}]}}]}],n:52,r:"data.PC_programheaders",p:[19,3,522]}]}]}]}]}," ",{p:[25,1,621],t:7,e:"div",a:{style:"float: right"},f:[{p:[26,2,649],t:7,e:"table",f:[{p:[26,9,656],t:7,e:"tr",f:[{p:[27,3,663],t:7,e:"td",f:[{p:[27,7,667],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[29,4,757],t:7,e:"td",f:[{p:[29,8,761],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[30,4,817],t:7,e:"td",f:[{p:[30,8,821],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[28,3,722]}]}]}]}]}," ",{p:[34,1,909],t:7,e:"div",a:{style:"clear: both"},f:[{t:4,f:[{p:[37,1,962],t:7,e:"ui-button",a:{action:"PRG_switchm",icon:"home",params:'{"target" : "mod"}',state:[{t:2,x:{r:["data.mmode"],s:'_0==1?"disabled":null'},p:[37,80,1041]}]},f:["Access Modification"]}],n:50,r:"data.have_id_slot",p:[36,1,936]},{p:[39,1,1122],t:7,e:"ui-button",a:{action:"PRG_switchm",icon:"folder-open",params:'{"target" : "manage"}',state:[{t:2,x:{r:["data.mmode"],s:'_0==2?"disabled":null'},p:[39,90,1211]}]},f:["Job Management"]}," ",{p:[40,1,1279],t:7,e:"ui-button",a:{action:"PRG_switchm",icon:"folder-open",params:'{"target" : "manifest"}',state:[{t:2,x:{r:["data.mmode"],s:'!_0?"disabled":null'},p:[40,92,1370]}]},f:["Crew Manifest"]}," ",{t:4,f:[{p:[42,1,1459],t:7,e:"ui-button",a:{action:"PRG_print",icon:"print",state:[{t:2,x:{r:["data.has_id","data.mmode"],s:'!_1||_0&&_1==1?null:"disabled"'},p:[42,51,1509]}]},f:["Print"]}],n:50,r:"data.have_printer",p:[41,1,1433]},{t:4,f:[{p:[46,1,1628],t:7,e:"div",a:{"class":"item"},f:[{p:[47,3,1649],t:7,e:"h2",f:["Crew Manifest"]}," ",{p:[48,3,1674],t:7,e:"br"},"Please use security record computer to modify entries.",{p:[48,61,1732],t:7,e:"br"},{p:[48,65,1736],t:7,e:"br"}]}," ",{t:4,f:[{p:[51,2,1773],t:7,e:"div",a:{"class":"item"},f:[{t:2,r:"name",p:[52,2,1793]}," - ",{t:2,r:"rank",p:[52,13,1804]}]}],n:52,r:"data.manifest",p:[50,1,1748]}],n:50,x:{r:["data.mmode"],s:"!_0"},p:[45,1,1608]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.mmode"],s:"_0==2"},f:[{p:[57,1,1859],t:7,e:"div",a:{"class":"item"},f:[{p:[58,3,1880],t:7,e:"h2",f:["Job Management"]}]}," ",{p:[60,1,1911],t:7,e:"table",f:[{p:[61,1,1919],t:7,e:"tr",f:[{p:[61,5,1923],t:7,e:"td",a:{style:"width:25%"},f:[{p:[61,27,1945],t:7,e:"b",f:["Job"]}]},{p:[61,42,1960],t:7,e:"td",a:{style:"width:25%"},f:[{p:[61,64,1982],t:7,e:"b",f:["Slots"]}]},{p:[61,81,1999],t:7,e:"td",a:{style:"width:25%"},f:[{p:[61,103,2021],t:7,e:"b",f:["Open job"]}]},{p:[61,123,2041],t:7,e:"td",a:{style:"width:25%"},f:[{p:[61,145,2063],t:7,e:"b",f:["Close job"]}]}]}," ",{t:4,f:[{p:[64,2,2113],t:7,e:"tr",f:[{p:[64,6,2117],t:7,e:"td",f:[{t:2,r:"title",p:[64,10,2121]}]},{p:[64,24,2135],t:7,e:"td",f:[{t:2,r:"current",p:[64,28,2139]},"/",{t:2,r:"total",p:[64,40,2151]}]},{p:[64,54,2165],t:7,e:"td",f:[{p:[64,58,2169],t:7,e:"ui-button",a:{action:"PRG_open_job",params:['{"target" : "',{t:2,r:"title",p:[64,112,2223]},'"}'],state:[{t:2,x:{r:["status_open"],s:'_0?null:"disabled"'},p:[64,132,2243]}]},f:[{t:2,r:"desc_open",p:[64,169,2280]}]},{p:[64,194,2305],t:7,e:"br"}]},{p:[64,203,2314],t:7,e:"td",f:[{p:[64,207,2318],t:7,e:"ui-button",a:{action:"PRG_close_job",params:['{"target" : "',{t:2,r:"title",p:[64,262,2373]},'"}'],state:[{t:2,x:{r:["status_close"],s:'_0?null:"disabled"'},p:[64,282,2393]}]},f:[{t:2,r:"desc_close",p:[64,320,2431]}]}]}]}],n:52,r:"data.slots",p:[62,1,2090]}]}]},{t:4,n:50,x:{r:["data.mmode"],s:"!(_0==2)"},f:[" ",{p:[72,1,2501],t:7,e:"div",a:{"class":"item"},f:[{p:[73,3,2522],t:7,e:"h2",f:["Access Modification"]}]}," ",{t:4,f:[{p:[77,3,2582],t:7,e:"span",a:{"class":"alert"},f:[{p:[77,23,2602],t:7,e:"i",f:["Please insert the ID into the terminal to proceed."]}]},{p:[77,87,2666],t:7,e:"br"}],n:50,x:{r:["data.has_id"],s:"!_0"},p:[76,1,2559]},{p:[80,1,2680],t:7,e:"div",a:{"class":"item"},f:[{p:[81,3,2701],t:7,e:"div",a:{"class":"itemLabel"},f:["Target Identity:"]}," ",{p:[84,3,2754],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[85,2,2781],t:7,e:"ui-button",a:{icon:"eject",action:"PRG_eject",params:'{"target" : "id"}'},f:[{t:2,r:"data.id_name",p:[85,72,2851]}]}]}]}," ",{p:[88,1,2896],t:7,e:"div",a:{"class":"item"},f:[{p:[89,3,2917],t:7,e:"div",a:{"class":"itemLabel"},f:["Auth Identity:"]}," ",{p:[92,3,2968],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[93,2,2995],t:7,e:"ui-button",a:{icon:"eject",action:"PRG_eject",params:'{"target" : "auth"}'},f:[{t:2,r:"data.auth_name",p:[93,74,3067]}]}]}]}," ",{p:[96,1,3114],t:7,e:"hr"}," ",{t:4,f:[{t:4,f:[{p:[100,2,3170],t:7,e:"div",a:{"class":"item"},f:[{p:[101,4,3192],t:7,e:"h2",f:["Details"]}]}," ",{t:4,f:[{p:[105,2,3239],t:7,e:"div",a:{"class":"item"},f:[{p:[106,4,3261],t:7,e:"div",a:{"class":"itemLabel"},f:["Registered Name:"]}," ",{p:[109,4,3317],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.id_owner",p:[110,3,3345]}]}]}," ",{p:[113,2,3382],t:7,e:"div",a:{"class":"item"},f:[{p:[114,4,3404],t:7,e:"div",a:{"class":"itemLabel"},f:["Rank:"]}," ",{p:[117,4,3449],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.id_rank",p:[118,3,3477]}]}]}," ",{p:[121,2,3513],t:7,e:"div",a:{"class":"item"},f:[{p:[122,4,3535],t:7,e:"div",a:{"class":"itemLabel"},f:["Demote:"]}," ",{p:[125,4,3582],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[126,3,3610],t:7,e:"ui-button",a:{action:"PRG_terminate",icon:"gear",state:[{t:2,x:{r:["data.id_rank"],s:'_0=="Unassigned"?"disabled":null'},p:[126,56,3663]}]},f:["Demote ",{t:2,r:"data.id_owner",p:[126,117,3724]}]}]}]}],n:50,r:"data.minor",p:[104,2,3219]},{t:4,n:51,f:[{p:[131,2,3784],t:7,e:"div",a:{"class":"item"},f:[{p:[132,4,3806],t:7,e:"div",a:{"class":"itemLabel"},f:["Registered Name:"]}," ",{p:[135,4,3862],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[136,3,3890],t:7,e:"ui-button",a:{action:"PRG_edit",icon:"pencil",params:'{"name" : "1"}'},f:[{t:2,r:"data.id_owner",p:[136,70,3957]}]}]}]}," ",{p:[140,2,4007],t:7,e:"div",a:{"class":"item"},f:[{p:[141,4,4029],t:7,e:"h2",f:["Assignment"]}]}," ",{p:[143,3,4059],t:7,e:"ui-button",a:{action:"PRG_togglea",icon:"gear"},f:[{t:2,x:{r:["data.assignments"],s:'_0?"Hide assignments":"Show assignments"'},p:[143,47,4103]}]}," ",{p:[144,2,4179],t:7,e:"div",a:{"class":"item"},f:[{p:[145,4,4201],t:7,e:"span",a:{id:"allvalue.jobsslot"},f:[]}]}," ",{p:[149,2,4254],t:7,e:"div",a:{"class":"item"},f:[{t:4,f:[{p:[151,4,4304],t:7,e:"div",a:{id:"all-value.jobs"},f:[{p:[152,3,4332],t:7,e:"table",f:[{p:[153,5,4344],t:7,e:"tr",f:[{p:[154,4,4352],t:7,e:"th"},{p:[154,13,4361],t:7,e:"th",f:["Command"]}]}," ",{p:[156,5,4392],t:7,e:"tr",f:[{p:[157,4,4400],t:7,e:"th",f:["Special"]}," ",{p:[158,4,4420],t:7,e:"td",f:[{p:[159,6,4430],t:7,e:"ui-button",a:{action:"PRG_assign",params:'{"assign_target" : "Captain"}',state:[{t:2,x:{r:["data.id_rank"],s:'_0=="Captain"?"selected":null'},p:[159,83,4507]}]},f:["Captain"]}," ",{p:[160,6,4583],t:7,e:"ui-button",a:{action:"PRG_assign",params:'{"assign_target" : "Custom"}'},f:["Custom"]}]}]}," ",{p:[163,5,4694],t:7,e:"tr",f:[{p:[164,4,4702],t:7,e:"th",a:{style:"color: '#FFA500';"},f:["Engineering"]}," ",{p:[165,4,4752],t:7,e:"td",f:[{t:4,f:[{p:[167,5,4798],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[167,64,4857]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[167,82,4875]}]},f:[{t:2,r:"display_name",p:[167,127,4920]}]}],n:52,r:"data.engineering_jobs",p:[166,6,4762]}]}]}," ",{p:[171,5,4987],t:7,e:"tr",f:[{p:[172,4,4995],t:7,e:"th",a:{style:"color: '#008000';"},f:["Medical"]}," ",{p:[173,4,5041],t:7,e:"td",f:[{t:4,f:[{p:[175,5,5083],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[175,64,5142]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[175,82,5160]}]},f:[{t:2,r:"display_name",p:[175,127,5205]}]}],n:52,r:"data.medical_jobs",p:[174,6,5051]}]}]}," ",{p:[179,5,5272],t:7,e:"tr",f:[{p:[180,4,5280],t:7,e:"th",a:{style:"color: '#800080';"},f:["Science"]}," ",{p:[181,4,5326],t:7,e:"td",f:[{t:4,f:[{p:[183,5,5368],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[183,64,5427]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[183,82,5445]}]},f:[{t:2,r:"display_name",p:[183,127,5490]}]}],n:52,r:"data.science_jobs",p:[182,6,5336]}]}]}," ",{p:[187,5,5557],t:7,e:"tr",f:[{p:[188,4,5565],t:7,e:"th",a:{style:"color: '#DD0000';"},f:["Security"]}," ",{p:[189,4,5612],t:7,e:"td",f:[{t:4,f:[{p:[191,5,5655],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[191,64,5714]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[191,82,5732]}]},f:[{t:2,r:"display_name",p:[191,127,5777]}]}],n:52,r:"data.security_jobs",p:[190,6,5622]}]}]}," ",{p:[195,5,5844],t:7,e:"tr",f:[{p:[196,4,5852],t:7,e:"th",a:{style:"color: '#cc6600';"},f:["Cargo"]}," ",{p:[197,4,5896],t:7,e:"td",f:[{t:4,f:[{p:[199,5,5936],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[199,64,5995]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[199,82,6013]}]},f:[{t:2,r:"display_name",p:[199,127,6058]}]}],n:52,r:"data.cargo_jobs",p:[198,6,5906]}]}]}," ",{p:[203,5,6125],t:7,e:"tr",f:[{p:[204,4,6133],t:7,e:"th",a:{style:"color: '#808080';"},f:["Civilian"]}," ",{p:[205,4,6180],t:7,e:"td",f:[{t:4,f:[{p:[207,5,6223],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[207,64,6282]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[207,82,6300]}]},f:[{t:2,r:"display_name",p:[207,127,6345]}]}],n:52,r:"data.civilian_jobs",p:[206,6,6190]}]}]}," ",{t:4,f:[{p:[212,4,6443],t:7,e:"tr",f:[{p:[213,6,6453],t:7,e:"th",a:{style:"color: '#A52A2A';"},f:["CentCom"]}," ",{p:[214,6,6501],t:7,e:"td",f:[{t:4,f:[{p:[217,7,6545],t:7,e:"ui-button",a:{action:"PRG_assign",params:['{"assign_target" : "',{t:2,r:"job",p:[217,66,6604]},'"}'],state:[{t:2,x:{r:["data.id_rank","job"],s:'_0==_1?"selected":null'},p:[217,84,6622]}]},f:[{t:2,r:"display_name",p:[217,129,6667]}]}],n:52,r:"data.centcom_jobs",p:[215,5,6510]}]}]}],n:50,r:"data.centcom_access",p:[211,5,6412]}]}]}],n:50,r:"data.assignments",p:[150,4,4276]}]}],r:"data.minor"}," ",{t:4,f:[{p:[229,4,6824],t:7,e:"div",a:{"class":"item"},f:[{p:[230,3,6845],t:7,e:"h2",f:["Central Command"]}]}," ",{p:[232,4,6883],t:7,e:"div",a:{"class":"item",style:"width: 100%"},f:[{t:4,f:[{p:[234,5,6962],t:7,e:"div",a:{"class":"itemContentWide"},f:[{p:[235,5,6996],t:7,e:"ui-button",a:{action:"PRG_access",params:['{"access_target" : "',{t:2,r:"ref",p:[235,64,7055]},'", "allowed" : "',{t:2,r:"allowed",p:[235,87,7078]},'"}'],state:[{t:2,x:{r:["allowed"],s:'_0?"toggle":null'},p:[235,109,7100]}]},f:[{t:2,r:"desc",p:[235,140,7131]}]}]}],n:52,r:"data.all_centcom_access",p:[233,3,6924]}]}],n:50,r:"data.centcom_access",p:[228,2,6793]},{t:4,n:51,f:[{p:[240,4,7198],t:7,e:"div",a:{"class":"item"},f:[{p:[241,3,7219],t:7,e:"h2",f:[{t:2,r:"data.station_name",p:[241,7,7223]}]}]}," ",{p:[243,4,7263],t:7,e:"div",a:{"class":"item",style:"width: 100%"},f:[{t:4,f:[{p:[245,5,7331],t:7,e:"div",a:{style:"float: left; width: 175px; min-height: 250px"},f:[{p:[246,4,7393],t:7,e:"div",a:{"class":"average"},f:[{p:[246,25,7414],t:7,e:"ui-button",a:{action:"PRG_regsel",state:[{t:2,x:{r:["selected"],s:'_0?"toggle":null'},p:[246,63,7452]}],params:['{"region" : "',{t:2,r:"regid",p:[246,116,7505]},'"}']},f:[{p:[246,129,7518],t:7,e:"b",f:[{t:2,r:"name",p:[246,132,7521]}]}]}]}," ",{p:[247,4,7555],t:7,e:"br"}," ",{t:4,f:[{p:[249,6,7589],t:7,e:"div",a:{"class":"itemContentWide"},f:[{p:[250,5,7623],t:7,e:"ui-button",a:{action:"PRG_access",params:['{"access_target" : "',{t:2,r:"ref",p:[250,64,7682]},'", "allowed" : "',{t:2,r:"allowed",p:[250,87,7705]},'"}'],state:[{t:2,x:{r:["allowed"],s:'_0?"toggle":null'},p:[250,109,7727]}]},f:[{t:2,r:"desc",p:[250,140,7758]}]}]}],n:52,r:"accesses",p:[248,6,7565]}]}],n:52,r:"data.regions",p:[244,3,7304]}]}],r:"data.centcom_access"}],n:50,r:"data.has_id",p:[99,3,3149]}],n:50,r:"data.authenticated",p:[98,1,3120]}]}],x:{r:["data.mmode"],s:"!_0"}}]}]},e.exports=a.extend(r.exports)},{205:205}],258:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{occupantStatState:function(){switch(this.get("data.occupant.stat")){case 0:return"good";case 1:return"average";default:return"bad"}}}}}(r),r.exports.template={v:3,t:[" ",{p:[15,1,266],t:7,e:"ui-display",a:{title:"Occupant"},f:[{p:[16,3,298],t:7,e:"ui-section",a:{label:"Occupant"},f:[{p:[17,3,330],t:7,e:"span",f:[{t:2,x:{r:["data.occupant.name"],s:'_0?_0:"No Occupant"'},p:[17,9,336]}]}]}," ",{t:4,f:[{p:[20,5,447],t:7,e:"ui-section",a:{label:"State"},f:[{p:[21,7,480],t:7,e:"span",a:{"class":[{t:2,r:"occupantStatState",p:[21,20,493]}]},f:[{t:2,x:{r:["data.occupant.stat"],s:'_0==0?"Conscious":_0==1?"Unconcious":"Dead"'},p:[21,43,516]}]}]}],n:50,r:"data.occupied",p:[19,3,421]}]}," ",{p:[25,1,656],t:7,e:"ui-display",a:{title:"Controls"},f:[{p:[26,2,687],t:7,e:"ui-section",a:{label:"Door"},f:[{p:[27,5,717],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.open"],s:'_0?"unlock":"lock"'},p:[27,22,734]}],action:"door"},f:[{t:2,x:{r:["data.open"],s:'_0?"Open":"Closed"'},p:[27,71,783]}]}]}," ",{p:[29,3,846],t:7,e:"ui-section",a:{label:"Uses"},f:[{t:2,r:"data.ready_implants",p:[30,5,876]}," ",{t:4,f:[{p:[32,7,938],t:7,e:"span",a:{"class":"fa fa-cog fa-spin"}}],n:50,r:"data.replenishing",p:[31,5,906]}]}," ",{p:[35,3,1002],t:7,e:"ui-section",a:{label:"Activate"},f:[{p:[36,7,1038],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.occupied","data.ready_implants","data.ready"],s:'_0&&_1>0&&_2?null:"disabled"'},p:[36,25,1056]}],action:"implant"},f:[{t:2,x:{r:["data.ready","data.special_name"],s:'_0?(_1?_1:"Implant"):"Recharging"'},p:[37,9,1162]}," "]},{p:[38,19,1265],t:7,e:"br"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],259:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{healthState:function(){var t=this.get("data.health");return t>70?"good":t>50?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{t:4,f:[{p:[15,3,282],t:7,e:"ui-notice",f:[{p:[16,5,298],t:7,e:"span",f:["Wipe in progress!"]}]}],n:50,r:"data.wiping",p:[14,1,260]},{p:{button:[{t:4,f:[{p:[22,7,458],t:7,e:"ui-button",a:{icon:"trash",state:[{t:2,x:{r:["data.isDead"],s:'_0?"disabled":null'},p:[22,38,489]}],action:"wipe"},f:[{t:2,x:{r:["data.wiping"],s:'_0?"Stop Wiping":"Wipe"'},p:[22,89,540]}," AI"]}],n:50,r:"data.name",p:[21,5,434]}]},t:7,e:"ui-display",a:{title:[{t:2,x:{r:["data.name"],s:'_0||"Empty Card"'},p:[19,19,370]}],button:0},f:[" ",{t:4,f:[{p:[26,5,647],t:7,e:"ui-section",a:{label:"Status"},f:[{p:[27,9,683],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.isDead","data.isBraindead"],s:'_0||_1?"bad":"good"'},p:[27,22,696]}]},f:[{t:2,x:{r:["data.isDead","data.isBraindead"],s:'_0||_1?"Offline":"Operational"'},p:[27,76,750]}]}]}," ",{p:[29,5,843],t:7,e:"ui-section",a:{label:"Software Integrity"},f:[{p:[30,7,889],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.health",p:[30,40,922]}],state:[{t:2,r:"healthState",p:[30,64,946]}]},f:[{t:2,x:{r:["adata.health"],s:"Math.round(_0)"},p:[30,81,963]},"%"]}]}," ",{p:[32,5,1024],t:7,e:"ui-section",a:{label:"Laws"},f:[{t:4,f:[{p:[34,9,1084],t:7,e:"span",a:{"class":"highlight"},f:[{t:2,r:".",p:[34,33,1108]}]},{p:[34,45,1120],t:7,e:"br"}],n:52,r:"data.laws",p:[33,7,1056]}]}," ",{p:[37,5,1164],t:7,e:"ui-section",a:{label:"Settings"},f:[{p:[38,7,1200],t:7,e:"ui-button",a:{icon:"signal",style:[{t:2,x:{r:["data.wireless"],s:'_0?"selected":null'},p:[38,39,1232]}],action:"wireless"},f:["Wireless Activity"]}," ",{p:[39,7,1325],t:7,e:"ui-button",a:{icon:"microphone",style:[{t:2,x:{r:["data.radio"],s:'_0?"selected":null'},p:[39,43,1361]}],action:"radio"},f:["Subspace Radio"]}]}],n:50,r:"data.name",p:[25,3,625]}]}]},e.exports=a.extend(r.exports)},{205:205}],260:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,2,22],t:7,e:"ui-notice",f:[{p:[3,3,36],t:7,e:"span",f:["Waiting for another device to confirm your request..."]}]}],n:50,r:"data.waiting",p:[1,1,0]},{t:4,n:51,f:[{p:[6,2,127],t:7,e:"ui-display",f:[{p:[7,3,142],t:7,e:"ui-section",f:[{t:4,f:[{p:[9,5,189],t:7,e:"ui-button",a:{icon:"check",action:"auth_swipe"},f:["Authorize ",{t:2,r:"data.auth_required",p:[9,59,243]}]}],n:50,r:"data.auth_required",p:[8,4,158]},{t:4,n:51,f:[{p:[11,5,294],t:7,e:"ui-button",a:{icon:"warning",state:[{t:2,x:{r:["data.red_alert"],s:'_0?"disabled":null'},p:[11,38,327]}],action:"red_alert"},f:["Red Alert"]}," ",{p:[12,5,412],t:7,e:"ui-button",a:{icon:"wrench",state:[{t:2,x:{r:["data.emergency_maint"],s:'_0?"disabled":null'},p:[12,37,444]}],action:"emergency_maint"},f:["Emergency Maintenance Access"]}],r:"data.auth_required"}]}]}],r:"data.waiting"}]},e.exports=a.extend(r.exports)},{205:205}],261:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Ore values"},f:[{t:4,f:[{p:[3,3,55],t:7,e:"ui-section",a:{label:[{t:2,r:"ore",p:[3,22,74]}]},f:[{p:[4,4,87],t:7,e:"span",f:[{t:2,r:"value",p:[4,10,93]}]}]}],n:52,r:"data.ores",p:[2,2,33]}]}," ",{p:[8,1,151],t:7,e:"ui-display",a:{title:"Points"},f:[{p:[9,2,180],t:7,e:"ui-section",a:{label:"ID"},f:[{p:[10,3,206],t:7,e:"ui-button",a:{action:"handle_id"},f:[{t:2,x:{r:["data.id","data.id_name"],s:'_0?_1:"-------------"'},p:[10,33,236]}]}]}," ",{t:4,f:[{p:[13,3,327],t:7,e:"ui-section",a:{label:"Points collected"},f:[{p:[14,4,368],t:7,e:"span",f:[{t:2,r:"data.points",p:[14,10,374]}]}]}," ",{p:[16,3,415],t:7,e:"ui-section",a:{label:"Goal"},f:[{p:[17,4,444],t:7,e:"span",f:[{t:2,r:"data.goal",p:[17,10,450]}]}]}," ",{p:[19,3,489],t:7,e:"ui-section",a:{label:"Unclaimed points"},f:[{p:[20,4,530],t:7,e:"span",f:[{t:2,r:"data.unclaimed_points",p:[20,10,536]}]}," ",{p:[21,4,572],t:7,e:"ui-button",a:{action:"claim_points",state:[{t:2,x:{r:["data.unclaimed_points"],s:'_0?null:"disabled"'},p:[21,43,611]}]},f:["Claim points"]}]}],n:50,r:"data.id",p:[12,2,309]}]}," ",{p:[25,1,721],t:7,e:"ui-display",f:[{p:[26,2,735],t:7,e:"center",f:[{p:[27,3,746],t:7,e:"ui-button",a:{action:"move_shuttle",state:[{t:2,x:{r:["data.can_go_home"],s:'_0?null:"disabled"'},p:[27,42,785]}]},f:["Move shuttle"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],262:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{chargeState:function(t){var e=this.get("data.battery.max");return t>e/2?"good":t>e/4?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[15,1,252],t:7,e:"div",a:{style:"float: left"},f:[{p:[16,2,279],t:7,e:"div",a:{"class":"item"},f:[{p:[17,3,300],t:7,e:"table",f:[{p:[17,10,307],t:7,e:"tr",f:[{t:4,f:[{p:[19,4,372],t:7,e:"td",f:[{p:[19,8,376],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[19,18,386]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[18,3,314]}," ",{t:4,f:[{p:[22,4,485],t:7,e:"td",f:[{p:[22,8,489],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[22,11,492]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[21,3,424]}," ",{t:4,f:[{p:[25,4,564],t:7,e:"td",f:[{p:[25,8,568],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[25,18,578]}]}}]}],n:50,r:"data.PC_ntneticon",p:[24,3,535]}," ",{t:4,f:[{p:[28,4,645],t:7,e:"td",f:[{p:[28,8,649],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[28,18,659]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[27,3,614]}," ",{t:4,f:[{p:[31,4,728],t:7,e:"td",f:[{p:[31,8,732],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[31,11,735]},{p:[31,34,758],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[30,3,697]}," ",{t:4,f:[{p:[34,4,810],t:7,e:"td",f:[{p:[34,8,814],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[34,18,824]}]}}]}],n:52,r:"data.PC_programheaders",p:[33,3,774]}]}]}]}]}," ",{p:[39,1,873],t:7,e:"div",a:{style:"float: right"},f:[{p:[40,2,901],t:7,e:"table",f:[{p:[40,9,908],t:7,e:"tr",f:[{p:[41,3,915],t:7,e:"td",f:[{p:[41,7,919],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[43,4,1009],t:7,e:"td",f:[{p:[43,8,1013],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[44,4,1069],t:7,e:"td",f:[{p:[44,8,1073],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[42,3,974]}]}]}]}]}," ",{p:[48,1,1161],t:7,e:"div",a:{style:"clear: both"},f:[{p:[49,1,1187],t:7,e:"ui-display",f:[{p:[50,2,1201],t:7,e:"i",f:["Welcome to computer configuration utility. Please consult your system administrator if you have any questions about your device."]},{p:[50,137,1336],t:7,e:"hr"}," ",{p:[51,2,1342],t:7,e:"ui-display",a:{title:"Power Supply"},f:[{t:4,f:[{p:[53,4,1402],t:7,e:"ui-section",a:{label:"Battery Status"},f:["Active"]}," ",{p:[56,4,1470],t:7,e:"ui-section",a:{label:"Battery Rating"},f:[{t:2,r:"data.battery.max",p:[57,5,1510]}]}," ",{p:[59,4,1551],t:7,e:"ui-section",a:{label:"Battery Charge"},f:[{p:[60,5,1591],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.battery.max",p:[60,26,1612]}],value:[{t:2,r:"adata.battery.charge",p:[60,56,1642]}],state:[{t:2,x:{r:["chargeState","adata.battery.charge"],s:"_0(_1)"},p:[60,89,1675]}]},f:[{t:2,x:{r:["adata.battery.charge"],s:"Math.round(_0)"},p:[60,128,1714]},"/",{t:2,r:"adata.battery.max",p:[60,165,1751]}]}]}],n:50,r:"data.battery",p:[52,3,1378]},{t:4,n:51,f:[{p:[63,4,1813],t:7,e:"ui-section",a:{label:"Battery Status"},f:["Not Available"]}],r:"data.battery"}," ",{p:[68,3,1897],t:7,e:"ui-section",a:{label:"Power Usage"},f:[{t:2,r:"data.power_usage",p:[69,4,1933]},"W"]}]}," ",{p:[73,2,1989],t:7,e:"ui-display",a:{title:"File System"},f:[{p:[74,3,2024],t:7,e:"ui-section",a:{label:"Used Capacity"},f:[{p:[75,4,2062],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.disk_size",p:[75,25,2083]}],value:[{t:2,r:"adata.disk_used",p:[75,53,2111]}],state:"good"},f:[{t:2,x:{r:["adata.disk_used"],s:"Math.round(_0)"},p:[75,87,2145]},"GQ/",{t:2,r:"adata.disk_size",p:[75,121,2179]},"GQ"]}]}]}," ",{p:[79,2,2244],t:7,e:"ui-display",a:{title:"Computer Components"},f:[{t:4,f:[{p:[82,4,2315],t:7,e:"ui-subdisplay",a:{title:[{t:2,r:"name",p:[82,26,2337]}]},f:[{p:[84,5,2353],t:7,e:"i",f:[{t:2,r:"desc",p:[84,8,2356]}]},{p:[84,20,2368],t:7,e:"br"}," ",{p:[85,5,2377],t:7,e:"ui-section",a:{label:"State"},f:[{t:2,x:{r:["enabled"],s:'_0?"Enabled":"Disabled"'},p:[88,6,2415]}]}," ",{p:[91,5,2478],t:7,e:"ui-section",a:{Label:"Power Usage"},f:[{t:2,r:"powerusage",p:[92,6,2516]},"W"]}," ",{t:4,f:[{p:[95,6,2577],t:7,e:"ui-section",a:{label:"Toggle Component"},f:[{p:[96,7,2621],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["enabled"],s:'_0?"power-off":"close"'},p:[96,24,2638]}],action:"PC_toggle_component",params:['{"name": "',{t:2,r:"name",p:[96,108,2722]},'"}']},f:[{t:2,x:{r:["enabled"],s:'_0?"On":"Off"'},p:[97,8,2742]}]}]}],n:50,x:{r:["critical"],s:"!_0"},p:[94,5,2554]}," ",{p:[101,4,2822],t:7,e:"br"},{p:[101,8,2826],t:7,e:"br"}]}],n:52,r:"data.hardware",p:[81,3,2288]}]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],263:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{mechChargeState:function(t){var e=this.get("data.recharge_port.mech.cell.maxcharge");return t>=e/1.5?"good":t>=e/3?"average":"bad"},mechHealthState:function(t){var e=this.get("data.recharge_port.mech.maxhealth");return t>e/1.5?"good":t>e/3?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[20,1,526],t:7,e:"ui-display",a:{title:"Mech Status"},f:[{t:4,f:[{t:4,f:[{p:[23,4,624],t:7,e:"ui-section",a:{label:"Integrity"},f:[{p:[24,6,660],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.recharge_port.mech.maxhealth",p:[24,27,681]}],value:[{t:2,r:"adata.recharge_port.mech.health",p:[24,74,728]}],state:[{t:2,x:{r:["mechHealthState","adata.recharge_port.mech.health"],s:"_0(_1)"},p:[24,117,771]}]},f:[{t:2,x:{r:["adata.recharge_port.mech.health"],s:"Math.round(_0)"},p:[24,171,825]},"/",{t:2,r:"adata.recharge_port.mech.maxhealth",p:[24,219,873]}]}]}," ",{t:4,f:[{t:4,f:[{p:[28,5,1034],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[28,31,1060],t:7,e:"span",a:{"class":"bad"},f:["Cell Critical Failure"]}]}],n:50,r:"data.recharge_port.mech.cell.critfail",p:[27,3,984]},{t:4,n:51,f:[{p:[30,11,1141],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[31,13,1180],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.recharge_port.mech.cell.maxcharge",p:[31,34,1201]}],value:[{t:2,r:"adata.recharge_port.mech.cell.charge",p:[31,86,1253]}],state:[{t:2,x:{r:["mechChargeState","adata.recharge_port.mech.cell.charge"],s:"_0(_1)"},p:[31,134,1301]}]},f:[{t:2,x:{r:["adata.recharge_port.mech.cell.charge"],s:"Math.round(_0)"},p:[31,193,1360]},"/",{t:2,x:{r:["adata.recharge_port.mech.cell.maxcharge"],s:"Math.round(_0)"},p:[31,246,1413]}]}]}],r:"data.recharge_port.mech.cell.critfail"}],n:50,r:"data.recharge_port.mech.cell",p:[26,4,945]},{t:4,n:51,f:[{p:[35,3,1524],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[35,29,1550],t:7,e:"span",a:{"class":"bad"},f:["Cell Missing"]}]}],r:"data.recharge_port.mech.cell"}],n:50,r:"data.recharge_port.mech",p:[22,2,589]},{t:4,n:51,f:[{p:[38,4,1625],t:7,e:"ui-section",f:["Mech Not Found"]}],r:"data.recharge_port.mech"}],n:50,r:"data.recharge_port",p:[21,3,561]},{t:4,n:51,f:[{p:[41,5,1689],t:7,e:"ui-section",f:["Recharging Port Not Found"]}," ",{p:[42,2,1741],t:7,e:"ui-button",a:{icon:"refresh",action:"reconnect"},f:["Reconnect"]}],r:"data.recharge_port"}]}]},e.exports=a.extend(r.exports)},{205:205}],264:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{t:4,f:[{p:[3,5,45],t:7,e:"ui-section",a:{label:"Interface Lock"},f:[{p:[4,7,88],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.locked"],s:'_0?"lock":"unlock"'},p:[4,24,105]}],action:"lock"},f:[{t:2,x:{r:["data.locked"],s:'_0?"Engaged":"Disengaged"'},p:[4,75,156]}]}]}],n:50,r:"data.siliconUser",p:[2,3,15]},{t:4,n:51,f:[{p:[7,5,247],t:7,e:"span",f:["Swipe an ID card to ",{t:2,x:{r:["data.locked"],s:'_0?"unlock":"lock"'},p:[7,31,273]}," this interface."]}],r:"data.siliconUser"}]}," ",{p:[10,1,358],t:7,e:"ui-display",a:{title:"Status"},f:[{p:[11,3,389],t:7,e:"ui-section",a:{label:"Power"},f:[{t:4,f:[{p:[13,7,470],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[13,24,487]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":null'},p:[13,68,531]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[13,116,579]}]}],n:50,x:{r:["data.locked","data.siliconUser"],s:"!_0||_1"},p:[12,5,421]},{t:4,n:51,f:[{p:[15,7,639],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.on"],s:'_0?"good":"bad"'},p:[15,20,652]}],state:[{t:2,x:{r:["data.cell"],s:'_0?null:"disabled"'},p:[15,57,689]}]},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[15,92,724]}]}],x:{r:["data.locked","data.siliconUser"],s:"!_0||_1"}}]}," ",{p:[18,3,791],t:7,e:"ui-section",a:{label:"Cell"},f:[{p:[19,5,822],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.cell"],s:'_0?null:"bad"'},p:[19,18,835]}]},f:[{t:2,x:{r:["data.cell","data.cellPercent"],s:'_0?_1+"%":"No Cell"'},p:[19,48,865]}]}]}," ",{p:[21,3,943],t:7,e:"ui-section",a:{label:"Mode"},f:[{p:[22,5,974],t:7,e:"span",a:{"class":[{t:2,r:"data.modeStatus",p:[22,18,987]}]},f:[{t:2,r:"data.mode",p:[22,39,1008]}]}]}," ",{p:[24,3,1049],t:7,e:"ui-section",a:{label:"Load"},f:[{p:[25,5,1080],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.load"],s:'_0?"good":"average"'},p:[25,18,1093]}]},f:[{t:2,x:{r:["data.load"],s:'_0?_0:"None"'},p:[25,54,1129]}]}]}," ",{p:[27,3,1191],t:7,e:"ui-section",a:{label:"Destination"},f:[{p:[28,5,1229],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.destination"],s:'_0?"good":"average"'},p:[28,18,1242]}]},f:[{t:2,x:{r:["data.destination"],s:'_0?_0:"None"'},p:[28,60,1284]}]}]}]}," ",{t:4,f:[{p:{button:[{t:4,f:[{p:[35,9,1513],t:7,e:"ui-button",a:{icon:"eject",action:"unload"},f:["Unload"]}],n:50,r:"data.load",p:[34,7,1486]}," ",{t:4,f:[{p:[38,9,1623],t:7,e:"ui-button",a:{icon:"eject",action:"ejectpai"},f:["Eject PAI"]}],n:50,r:"data.haspai",p:[37,7,1594]}," ",{p:[40,7,1709],t:7,e:"ui-button",a:{icon:"pencil",action:"setid"},f:["Set ID"]}]},t:7,e:"ui-display",a:{title:"Controls",button:0},f:[" ",{p:[42,5,1791],t:7,e:"ui-section",a:{label:"Destination"},f:[{p:[43,7,1831],t:7,e:"ui-button",a:{icon:"pencil",action:"destination"},f:["Set Destination"]}," ",{p:[44,7,1912],t:7,e:"ui-button",a:{icon:"stop",action:"stop"},f:["Stop"]}," ",{p:[45,7,1973],t:7,e:"ui-button",a:{icon:"play",action:"go"},f:["Go"]}]}," ",{p:[47,5,2047],t:7,e:"ui-section",a:{label:"Home"},f:[{p:[48,7,2080],t:7,e:"ui-button",a:{icon:"home",action:"home"},f:["Go Home"]}," ",{p:[49,7,2144],t:7,e:"ui-button",a:{icon:"pencil",action:"sethome"},f:["Set Home"]}]}," ",{p:[51,5,2231],t:7,e:"ui-section",a:{label:"Settings"},f:[{p:[52,7,2268],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.autoReturn"],s:'_0?"check-square-o":"square-o"'},p:[52,24,2285]}],style:[{t:2,x:{r:["data.autoReturn"],s:'_0?"selected":null'},p:[52,84,2345]}],action:"autoret"},f:["Auto-Return Home"]}," ",{p:[54,7,2449],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.autoPickup"],s:'_0?"check-square-o":"square-o"'},p:[54,24,2466]}],style:[{t:2,x:{r:["data.autoPickup"],s:'_0?"selected":null'},p:[54,84,2526]}],action:"autopick"},f:["Auto-Pickup Crate"]}," ",{p:[56,7,2632],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.reportDelivery"],s:'_0?"check-square-o":"square-o"' +},p:[56,24,2649]}],style:[{t:2,x:{r:["data.reportDelivery"],s:'_0?"selected":null'},p:[56,88,2713]}],action:"report"},f:["Report Deliveries"]}]}]}],n:50,x:{r:["data.locked","data.siliconUser"],s:"!_0||_1"},p:[31,1,1373]}]},e.exports=a.extend(r.exports)},{205:205}],265:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[36,1,936],t:7,e:"ui-display",f:[{t:4,f:[{p:[38,3,975],t:7,e:"h1",f:["ADMINISTRATIVE MODE"]}],n:50,r:"data.adminmode",p:[37,2,950]}," ",{t:4,f:[{p:[42,3,1036],t:7,e:"div",a:{"class":"itemLabel"},f:["Current channel:"]}," ",{p:[45,3,1092],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.title",p:[46,4,1121]}]}," ",{p:[48,3,1147],t:7,e:"div",a:{"class":"itemLabel"},f:["Operator access:"]}," ",{p:[51,3,1203],t:7,e:"div",a:{"class":"itemContent"},f:[{t:4,f:[{p:[53,5,1261],t:7,e:"b",f:["Enabled"]}],n:50,r:"data.is_operator",p:[52,4,1232]},{t:4,n:51,f:[{p:[55,5,1292],t:7,e:"b",f:["Disabled"]}],r:"data.is_operator"}]}," ",{p:[58,3,1330],t:7,e:"div",a:{"class":"itemLabel"},f:["Controls:"]}," ",{p:[61,3,1379],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[62,4,1408],t:7,e:"table",f:[{p:[63,5,1420],t:7,e:"tr",f:[{p:[63,9,1424],t:7,e:"td",f:[{p:[63,13,1428],t:7,e:"ui-button",a:{action:"PRG_speak"},f:["Send message"]}]}]},{p:[64,5,1487],t:7,e:"tr",f:[{p:[64,9,1491],t:7,e:"td",f:[{p:[64,13,1495],t:7,e:"ui-button",a:{action:"PRG_changename"},f:["Change nickname"]}]}]},{p:[65,5,1562],t:7,e:"tr",f:[{p:[65,9,1566],t:7,e:"td",f:[{p:[65,13,1570],t:7,e:"ui-button",a:{action:"PRG_toggleadmin"},f:["Toggle administration mode"]}]}]},{p:[66,5,1649],t:7,e:"tr",f:[{p:[66,9,1653],t:7,e:"td",f:[{p:[66,13,1657],t:7,e:"ui-button",a:{action:"PRG_leavechannel"},f:["Leave channel"]}]}]},{p:[67,5,1724],t:7,e:"tr",f:[{p:[67,9,1728],t:7,e:"td",f:[{p:[67,13,1732],t:7,e:"ui-button",a:{action:"PRG_savelog"},f:["Save log to local drive"]}," ",{t:4,f:[{p:[69,6,1834],t:7,e:"tr",f:[{p:[69,10,1838],t:7,e:"td",f:[{p:[69,14,1842],t:7,e:"ui-button",a:{action:"PRG_renamechannel"},f:["Rename channel"]}]}]},{p:[70,6,1912],t:7,e:"tr",f:[{p:[70,10,1916],t:7,e:"td",f:[{p:[70,14,1920],t:7,e:"ui-button",a:{action:"PRG_setpassword"},f:["Set password"]}]}]},{p:[71,6,1986],t:7,e:"tr",f:[{p:[71,10,1990],t:7,e:"td",f:[{p:[71,14,1994],t:7,e:"ui-button",a:{action:"PRG_deletechannel"},f:["Delete channel"]}]}]}],n:50,r:"data.is_operator",p:[68,5,1804]}]}]}]}]}," ",{p:[75,3,2096],t:7,e:"b",f:["Chat Window"]}," ",{p:[76,4,2118],t:7,e:"div",a:{"class":"statusDisplay",style:"overflow: auto;"},f:[{p:[77,4,2173],t:7,e:"div",a:{"class":"item"},f:[{p:[78,5,2196],t:7,e:"div",a:{"class":"itemContent",style:"width: 100%;"},f:[{t:4,f:[{t:2,r:"msg",p:[80,7,2278]},{p:[80,14,2285],t:7,e:"br"}],n:52,r:"data.messages",p:[79,6,2248]}]}]}]}," ",{p:[85,3,2339],t:7,e:"b",f:["Connected Users"]},{p:[85,25,2361],t:7,e:"br"}," ",{t:4,f:[{t:2,r:"name",p:[87,4,2394]},{p:[87,12,2402],t:7,e:"br"}],n:52,r:"data.clients",p:[86,3,2368]}],n:50,r:"data.title",p:[41,2,1015]},{t:4,n:51,f:[{p:[90,3,2431],t:7,e:"b",f:["Controls:"]}," ",{p:[91,3,2450],t:7,e:"table",f:[{p:[92,4,2461],t:7,e:"tr",f:[{p:[92,8,2465],t:7,e:"td",f:[{p:[92,12,2469],t:7,e:"ui-button",a:{action:"PRG_changename"},f:["Change nickname"]}]}]},{p:[93,4,2535],t:7,e:"tr",f:[{p:[93,8,2539],t:7,e:"td",f:[{p:[93,12,2543],t:7,e:"ui-button",a:{action:"PRG_newchannel"},f:["New Channel"]}]}]},{p:[94,4,2605],t:7,e:"tr",f:[{p:[94,8,2609],t:7,e:"td",f:[{p:[94,12,2613],t:7,e:"ui-button",a:{action:"PRG_toggleadmin"},f:["Toggle administration mode"]}]}]}]}," ",{p:[96,3,2701],t:7,e:"b",f:["Available channels:"]}," ",{p:[97,3,2730],t:7,e:"table",f:[{t:4,f:[{p:[99,4,2773],t:7,e:"tr",f:[{p:[99,8,2777],t:7,e:"td",f:[{p:[99,12,2781],t:7,e:"ui-button",a:{action:"PRG_joinchannel",params:['{"id": "',{t:2,r:"id",p:[99,64,2833]},'"}']},f:[{t:2,r:"chan",p:[99,74,2843]}]},{p:[99,94,2863],t:7,e:"br"}]}]}],n:52,r:"data.all_channels",p:[98,3,2740]}]}],r:"data.title"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],266:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[36,1,936],t:7,e:"ui-display",f:[{t:4,f:["##SYSTEM ERROR: ",{t:2,r:"data.error",p:[38,19,987]},{p:[38,33,1001],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["RESET"]}],n:50,r:"data.error",p:[37,2,950]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.target"],s:"_0"},f:["##DoS traffic generator active. Tx: ",{t:2,r:"data.speed",p:[40,39,1111]},"GQ/s",{p:[40,57,1129],t:7,e:"br"}," ",{t:4,f:[{t:2,r:"nums",p:[42,4,1166]},{p:[42,12,1174],t:7,e:"br"}],n:52,r:"data.dos_strings",p:[41,3,1136]}," ",{p:[44,3,1193],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["ABORT"]}]},{t:4,n:50,x:{r:["data.target"],s:"!(_0)"},f:[" ##DoS traffic generator ready. Select target device.",{p:[46,55,1305],t:7,e:"br"}," ",{t:4,f:["Targeted device ID: ",{t:2,r:"data.focus",p:[48,24,1354]}],n:50,r:"data.focus",p:[47,3,1312]},{t:4,n:51,f:["Targeted device ID: None"],r:"data.focus"}," ",{p:[52,3,1420],t:7,e:"ui-button",a:{action:"PRG_execute"},f:["EXECUTE"]},{p:[52,54,1471],t:7,e:"div",a:{style:"clear:both"}}," Detected devices on network:",{p:[53,31,1532],t:7,e:"br"}," ",{t:4,f:[{p:[55,4,1564],t:7,e:"ui-button",a:{action:"PRG_target_relay",params:['{"targid": "',{t:2,r:"id",p:[55,61,1621]},'"}']},f:[{t:2,r:"id",p:[55,71,1631]}]}],n:52,r:"data.relays",p:[54,3,1539]}]}],r:"data.error"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],267:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[37,1,937],t:7,e:"ui-display",f:[{p:[38,2,951],t:7,e:"i",f:["Welcome to software download utility. Please select which software you wish to download."]},{p:[38,97,1046],t:7,e:"hr"}," ",{t:4,f:[{p:[40,3,1073],t:7,e:"ui-display",a:{title:"Download Error"},f:[{p:[41,4,1112],t:7,e:"ui-section",a:{label:"Information"},f:[{t:2,r:"data.error",p:[42,5,1149]}]}," ",{p:[44,4,1184],t:7,e:"ui-section",a:{label:"Reset Program"},f:[{p:[45,5,1223],t:7,e:"ui-button",a:{icon:"times",action:"PRG_reseterror"},f:["RESET"]}]}]}],n:50,r:"data.error",p:[39,2,1052]},{t:4,n:51,f:[{t:4,f:[{p:[52,4,1374],t:7,e:"ui-display",a:{title:"Download Running"},f:[{p:[53,5,1416],t:7,e:"i",f:["Please wait..."]}," ",{p:[54,5,1442],t:7,e:"ui-section",a:{label:"File name"},f:[{t:2,r:"data.downloadname",p:[55,6,1478]}]}," ",{p:[57,5,1522],t:7,e:"ui-section",a:{label:"File description"},f:[{t:2,r:"data.downloaddesc",p:[58,6,1565]}]}," ",{p:[60,5,1609],t:7,e:"ui-section",a:{label:"File size"},f:[{t:2,r:"data.downloadcompletion",p:[61,6,1645]},"GQ / ",{t:2,r:"data.downloadsize",p:[61,38,1677]},"GQ"]}," ",{p:[63,5,1723],t:7,e:"ui-section",a:{label:"Transfer Rate"},f:[{t:2,r:"data.downloadspeed",p:[64,6,1763]}," GQ/s"]}," ",{p:[66,5,1813],t:7,e:"ui-section",a:{label:"Download progress"},f:[{p:[67,6,1857],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.downloadsize",p:[67,27,1878]}],value:[{t:2,r:"adata.downloadcompletion",p:[67,58,1909]}],state:"good"},f:[{t:2,x:{r:["adata.downloadcompletion"],s:"Math.round(_0)"},p:[67,101,1952]},"/",{t:2,r:"adata.downloadsize",p:[67,142,1993]}]}]}]}],n:50,r:"data.downloadname",p:[51,3,1345]}],r:"data.error"}," ",{t:4,f:[{t:4,f:[{p:[74,4,2132],t:7,e:"ui-display",a:{title:"Primary software repository"},f:[{p:[75,5,2185],t:7,e:"ui-section",a:{label:"Hard drive"},f:[{p:[76,6,2222],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.disk_size",p:[76,27,2243]}],value:[{t:2,r:"adata.disk_used",p:[76,55,2271]}],state:"good"},f:[{t:2,x:{r:["adata.disk_used"],s:"Math.round(_0)"},p:[76,89,2305]},"GQ/",{t:2,r:"adata.disk_size",p:[76,123,2339]},"GQ"]}]}," ",{t:4,f:[{p:[79,6,2434],t:7,e:"ui-section",a:{label:"File name"},f:[{t:2,r:"filename",p:[80,7,2471]}," (",{t:2,r:"size",p:[80,21,2485]}," GQ)"]}," ",{p:[82,6,2522],t:7,e:"ui-section",a:{label:"Program name"},f:[{t:2,r:"filedesc",p:[83,7,2562]}]}," ",{p:[85,6,2600],t:7,e:"ui-section",a:{label:"Description"},f:[{t:2,r:"fileinfo",p:[86,7,2639]}]}," ",{p:[88,6,2676],t:7,e:"ui-section",a:{label:"Compatibility"},f:[{t:2,r:"compatibility",p:[89,7,2717]}]}," ",{p:[91,6,2759],t:7,e:"ui-section",a:{label:"File controls"},f:[{p:[92,7,2800],t:7,e:"ui-button",a:{icon:"signal",action:"PRG_downloadfile",params:['{"filename": "',{t:2,r:"filename",p:[92,80,2873]},'"}']},f:["DOWNLOAD"]}]}],n:52,r:"data.downloadable_programs",p:[78,5,2392]}]}," ",{t:4,f:[{p:[99,5,3011],t:7,e:"ui-display",a:{title:"UNKNOWN software repository"},f:[{p:[100,6,3065],t:7,e:"i",f:["Please note that NanoTrasen does not recommend download of software from non-official servers."]}," ",{t:4,f:[{p:[102,7,3209],t:7,e:"ui-section",a:{label:"File name"},f:[{t:2,r:"filename",p:[103,8,3247]}," (",{t:2,r:"size",p:[103,22,3261]}," GQ)"]}," ",{p:[105,7,3300],t:7,e:"ui-section",a:{label:"Program name"},f:[{t:2,r:"filedesc",p:[106,8,3341]}]}," ",{p:[108,7,3381],t:7,e:"ui-section",a:{label:"Description"},f:[{t:2,r:"fileinfo",p:[109,8,3421]}]}," ",{p:[111,7,3460],t:7,e:"ui-section",a:{label:"File controls"},f:[{p:[112,8,3502],t:7,e:"ui-button",a:{icon:"signal",action:"PRG_downloadfile",params:['{"filename": "',{t:2,r:"filename",p:[112,81,3575]},'"}']},f:["DOWNLOAD"]}]}],n:52,r:"data.hacked_programs",p:[101,6,3172]}]}],n:50,r:"data.hackedavailable",p:[98,4,2978]}],n:50,x:{r:["data.error"],s:"!_0"},p:[73,3,2109]}],n:50,x:{r:["data.downloadname"],s:"!_0"},p:[72,2,2080]}," ",{p:[121,2,3714],t:7,e:"br"},{p:[121,6,3718],t:7,e:"br"},{p:[121,10,3722],t:7,e:"hr"},{p:[121,14,3726],t:7,e:"i",f:["NTOS v2.0.4b Copyright NanoTrasen 2557 - 2559"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],268:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[3,1,2],t:7,e:"ui-display",f:[{p:[4,2,16],t:7,e:"div",a:{style:"float: left"},f:[{p:[5,3,44],t:7,e:"div",a:{"class":"item"},f:[{p:[6,4,66],t:7,e:"table",f:[{p:[6,11,73],t:7,e:"tr",f:[{t:4,f:[{p:[8,5,140],t:7,e:"td",f:[{p:[8,9,144],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[8,19,154]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[7,4,81]}," ",{t:4,f:[{p:[11,5,256],t:7,e:"td",f:[{p:[11,9,260],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[11,12,263]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[10,4,194]}," ",{t:4,f:[{p:[14,5,338],t:7,e:"td",f:[{p:[14,9,342],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[14,19,352]}]}}]}],n:50,r:"data.PC_ntneticon",p:[13,4,308]}," ",{t:4,f:[{p:[17,5,422],t:7,e:"td",f:[{p:[17,9,426],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[17,19,436]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[16,4,390]}," ",{t:4,f:[{p:[20,5,508],t:7,e:"td",f:[{p:[20,9,512],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[20,12,515]},{p:[20,35,538],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[19,4,476]}," ",{t:4,f:[{p:[23,5,593],t:7,e:"td",f:[{p:[23,9,597],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[23,19,607]}]}}]}],n:52,r:"data.PC_programheaders",p:[22,4,556]}]}]}]}]}," ",{p:[28,2,661],t:7,e:"div",a:{style:"float: right"},f:[{p:[29,3,690],t:7,e:"table",f:[{p:[29,10,697],t:7,e:"tr",f:[{p:[30,4,705],t:7,e:"td",f:[{p:[30,8,709],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[32,5,801],t:7,e:"td",f:[{p:[32,9,805],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[33,5,862],t:7,e:"td",f:[{p:[33,9,866],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[31,4,765]}]}]}]}]}," ",{p:[37,2,958],t:7,e:"div",a:{style:"clear: both"},f:[{p:[39,2,986],t:7,e:"ui-display",a:{title:"WIRELESS CONNECTIVITY"},f:[{p:[41,3,1032],t:7,e:"ui-section",a:{label:"Active NTNetRelays"},f:[{p:[42,4,1075],t:7,e:"b",f:[{t:2,r:"data.ntnetrelays",p:[42,7,1078]}]}]}," ",{t:4,f:[{p:[45,4,1149],t:7,e:"ui-section",a:{label:"System status"},f:[{p:[46,6,1189],t:7,e:"b",f:[{t:2,x:{r:["data.ntnetstatus"],s:'_0?"ENABLED":"DISABLED"'},p:[46,9,1192]}]}]}," ",{p:[48,4,1262],t:7,e:"ui-section",a:{label:"Control"},f:[{p:[50,4,1295],t:7,e:"ui-button",a:{icon:"plus",action:"toggleWireless"},f:["TOGGLE"]}]}," ",{p:[54,4,1390],t:7,e:"br"},{p:[54,8,1394],t:7,e:"br"}," ",{p:[55,4,1402],t:7,e:"i",f:["Caution - Disabling wireless transmitters when using wireless device may prevent you from re-enabling them again!"]}],n:50,r:"data.ntnetrelays",p:[44,3,1121]},{t:4,n:51,f:[{p:[57,4,1537],t:7,e:"br"},{p:[57,8,1541],t:7,e:"p",f:["Wireless coverage unavailable, no relays are connected."]}],r:"data.ntnetrelays"}]}," ",{p:[62,2,1632],t:7,e:"ui-display",a:{title:"FIREWALL CONFIGURATION"},f:[{p:[64,2,1678],t:7,e:"table",f:[{p:[65,3,1688],t:7,e:"tr",f:[{p:[66,4,1696],t:7,e:"th",f:["PROTOCOL"]},{p:[67,4,1712],t:7,e:"th",f:["STATUS"]},{p:[68,4,1726],t:7,e:"th",f:["CONTROL"]}]},{p:[69,3,1740],t:7,e:"tr",f:[" ",{p:[70,4,1748],t:7,e:"td",f:["Software Downloads"]},{p:[71,4,1774],t:7,e:"td",f:[{t:2,x:{r:["data.config_softwaredownload"],s:'_0?"ENABLED":"DISABLED"'},p:[71,8,1778]}]},{p:[72,4,1839],t:7,e:"td",f:[" ",{p:[72,9,1844],t:7,e:"ui-button",a:{action:"toggle_function",params:'{"id": "1"}'},f:["TOGGLE"]}]}]},{p:[73,3,1922],t:7,e:"tr",f:[" ",{p:[74,4,1930],t:7,e:"td",f:["Peer to Peer Traffic"]},{p:[75,4,1958],t:7,e:"td",f:[{t:2,x:{r:["data.config_peertopeer"],s:'_0?"ENABLED":"DISABLED"'},p:[75,8,1962]}]},{p:[76,4,2017],t:7,e:"td",f:[{p:[76,8,2021],t:7,e:"ui-button",a:{action:"toggle_function",params:'{"id": "2"}'},f:["TOGGLE"]}]}]},{p:[77,3,2099],t:7,e:"tr",f:[" ",{p:[78,4,2107],t:7,e:"td",f:["Communication Systems"]},{p:[79,4,2136],t:7,e:"td",f:[{t:2,x:{r:["data.config_communication"],s:'_0?"ENABLED":"DISABLED"'},p:[79,8,2140]}]},{p:[80,4,2198],t:7,e:"td",f:[{p:[80,8,2202],t:7,e:"ui-button",a:{action:"toggle_function",params:'{"id": "3"}'},f:["TOGGLE"]}]}]},{p:[81,3,2280],t:7,e:"tr",f:[" ",{p:[82,4,2288],t:7,e:"td",f:["Remote System Control"]},{p:[83,4,2317],t:7,e:"td",f:[{t:2,x:{r:["data.config_systemcontrol"],s:'_0?"ENABLED":"DISABLED"'},p:[83,8,2321]}]},{p:[84,4,2379],t:7,e:"td",f:[{p:[84,8,2383],t:7,e:"ui-button",a:{action:"toggle_function",params:'{"id": "4"}'},f:["TOGGLE"]}]}]}]}]}," ",{p:[88,2,2486],t:7,e:"ui-display",a:{title:"SECURITY SYSTEMS"},f:[{t:4,f:[{p:[91,4,2552],t:7,e:"ui-notice",f:[{p:[92,5,2568],t:7,e:"h1",f:["NETWORK INCURSION DETECTED"]}]}," ",{p:[94,5,2624],t:7,e:"i",f:["An abnormal activity has been detected in the network. Please verify system logs for more information"]}],n:50,r:"data.idsalarm",p:[90,3,2527]}," ",{p:[97,3,2749],t:7,e:"ui-section",a:{label:"Intrusion Detection System"},f:[{p:[98,4,2800],t:7,e:"b",f:[{t:2,x:{r:["data.idsstatus"],s:'_0?"ENABLED":"DISABLED"'},p:[98,7,2803]}]}]}," ",{p:[101,3,2872],t:7,e:"ui-section",a:{label:"Maximal Log Count"},f:[{p:[102,4,2914],t:7,e:"b",f:[{t:2,r:"data.ntnetmaxlogs",p:[102,7,2917]}]}]}," ",{p:[105,3,2964],t:7,e:"ui-section",a:{label:"Controls"},f:[]}," ",{p:[107,4,3013],t:7,e:"table",f:[{p:[108,4,3024],t:7,e:"tr",f:[{p:[108,8,3028],t:7,e:"td",f:[{p:[108,12,3032],t:7,e:"ui-button",a:{action:"resetIDS"},f:["RESET IDS"]}]}]},{p:[109,4,3086],t:7,e:"tr",f:[{p:[109,8,3090],t:7,e:"td",f:[{p:[109,12,3094],t:7,e:"ui-button",a:{action:"toggleIDS"},f:["TOGGLE IDS"]}]}]},{p:[110,4,3150],t:7,e:"tr",f:[{p:[110,8,3154],t:7,e:"td",f:[{p:[110,12,3158],t:7,e:"ui-button",a:{action:"updatemaxlogs"},f:["SET LOG LIMIT"]}]}]},{p:[111,4,3221],t:7,e:"tr",f:[{p:[111,8,3225],t:7,e:"td",f:[{p:[111,12,3229],t:7,e:"ui-button",a:{action:"purgelogs"},f:["PURGE LOGS"]}]}]}]}," ",{p:[114,3,3297],t:7,e:"ui-subdisplay",a:{title:"System Logs"},f:[{p:[115,3,3335],t:7,e:"div",a:{"class":"statusDisplay",style:"overflow: auto;"},f:[{p:[116,3,3389],t:7,e:"div",a:{"class":"item"},f:[{p:[117,4,3411],t:7,e:"div",a:{"class":"itemContent",style:"width: 100%;"},f:[{t:4,f:[{t:2,r:"entry",p:[119,6,3492]},{p:[119,15,3501],t:7,e:"br"}],n:52,r:"data.ntnetlogs",p:[118,5,3462]}]}]}]}]}]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],269:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Relay"},f:[{t:4,f:[{p:[3,3,55],t:7,e:"h2",f:["NETWORK BUFFERS OVERLOADED"]}," ",{p:[4,3,93],t:7,e:"h3",f:["Overload Recovery Mode"]}," ",{p:[5,3,127],t:7,e:"i",f:["This system is suffering temporary outage due to overflow of traffic buffers. Until buffered traffic is processed, all further requests will be dropped. Frequent occurences of this error may indicate insufficient hardware capacity of your network. Please contact your network planning department for instructions on how to resolve this issue."]}," ",{p:[6,3,479],t:7,e:"h3",f:["ADMINISTRATIVE OVERRIDE"]}," ",{p:[7,3,514],t:7,e:"b",f:["CAUTION - Data loss may occur"]}," ",{p:[8,3,555],t:7,e:"ui-button",a:{icon:"signal",action:"restart"},f:["Purge buffered traffic"]}],n:50,r:"data.dos_crashed",p:[2,2,28]},{t:4,n:51,f:[{p:[12,3,652],t:7,e:"ui-section",a:{label:"Relay status"},f:[{p:[13,4,689],t:7,e:"ui-button",a:{icon:"power-off",action:"toggle"},f:[{t:2,x:{r:["data.enabled"],s:'_0?"ENABLED":"DISABLED"'},p:[14,6,739]}]}]}," ",{p:[18,3,819],t:7,e:"ui-section",a:{label:"Network buffer status"},f:[{t:2,r:"data.dos_overload",p:[19,4,865]}," / ",{t:2,r:"data.dos_capacity",p:[19,28,889]}," GQ"]}],r:"data.dos_crashed"}]}]},e.exports=a.extend(r.exports)},{205:205}],270:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"ui-display",f:[{p:[4,2,16],t:7,e:"div",a:{style:"float: left"},f:[{p:[5,3,44],t:7,e:"div",a:{"class":"item"},f:[{p:[6,4,66],t:7,e:"table",f:[{p:[6,11,73],t:7,e:"tr",f:[{t:4,f:[{p:[8,5,140],t:7,e:"td",f:[{p:[8,9,144],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[8,19,154]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[7,4,81]}," ",{t:4,f:[{p:[11,5,256],t:7,e:"td",f:[{p:[11,9,260],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[11,12,263]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[10,4,194]}," ",{t:4,f:[{p:[14,5,338],t:7,e:"td",f:[{p:[14,9,342],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[14,19,352]}]}}]}],n:50,r:"data.PC_ntneticon",p:[13,4,308]}," ",{t:4,f:[{p:[17,5,422],t:7,e:"td",f:[{p:[17,9,426],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[17,19,436]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[16,4,390]}," ",{t:4,f:[{p:[20,5,508],t:7,e:"td",f:[{p:[20,9,512],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[20,12,515]},{p:[20,35,538],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[19,4,476]}," ",{t:4,f:[{p:[23,5,593],t:7,e:"td",f:[{p:[23,9,597],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[23,19,607]}]}}]}],n:52,r:"data.PC_programheaders",p:[22,4,556]}]}]}]}]}," ",{p:[28,2,661],t:7,e:"div",a:{style:"float: right"},f:[{p:[29,3,690],t:7,e:"table",f:[{p:[29,10,697],t:7,e:"tr",f:[{p:[30,4,705],t:7,e:"td",f:[{p:[30,8,709],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[32,5,801],t:7,e:"td",f:[{p:[32,9,805],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[33,5,862],t:7,e:"td",f:[{p:[33,9,866],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[31,4,765]}]}]}]}]}," ",{p:[37,2,958],t:7,e:"div",a:{style:"clear: both"},f:[{t:4,f:[{p:[40,2,1006],t:7,e:"div",a:{"class":"item"},f:[{p:[41,3,1027],t:7,e:"h2",f:["An error has occurred during operation..."]}," ",{p:[42,3,1080],t:7,e:"b",f:["Additional information:"]},{t:2,r:"data.error",p:[42,34,1111]},{p:[42,48,1125],t:7,e:"br"}," ",{p:[43,3,1132],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["Clear"]}]}],n:50,r:"data.error",p:[39,2,986]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.downloading"],s:"_0"},f:[{p:[46,3,1219],t:7,e:"h2",f:["Download in progress..."]}," ",{p:[47,3,1254],t:7,e:"div",a:{"class":"itemLabel"},f:["Downloaded file:"]}," ",{p:[50,3,1310],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.download_name",p:[51,4,1339]}]}," ",{p:[53,3,1374],t:7,e:"div",a:{"class":"itemLabel"},f:["Download progress:"]}," ",{p:[56,3,1432],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.download_progress",p:[57,4,1461]}," / ",{t:2,r:"data.download_size",p:[57,33,1490]}," GQ"]}," ",{p:[59,3,1527],t:7,e:"div",a:{"class":"itemLabel"},f:["Transfer speed:"]}," ",{p:[62,3,1582],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.download_netspeed",p:[63,4,1611]},"GQ/s"]}," ",{p:[65,3,1653],t:7,e:"div",a:{"class":"itemLabel"},f:["Controls:"]}," ",{p:[68,3,1702],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[69,4,1731],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["Abort download"]}]}]},{t:4,n:50,x:{r:["data.downloading","data.uploading"],s:"(!(_0))&&(_1)"},f:[" ",{p:[72,3,1826],t:7,e:"h2",f:["Server enabled"]}," ",{p:[73,3,1852],t:7,e:"div",a:{"class":"itemLabel"},f:["Connected clients:"]}," ",{p:[76,3,1910],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.upload_clients",p:[77,4,1939]}]}," ",{p:[79,3,1974],t:7,e:"div",a:{"class":"itemLabel"},f:["Provided file:"]}," ",{p:[82,3,2028],t:7,e:"div",a:{"class":"itemContent"},f:[{t:2,r:"data.upload_filename",p:[83,4,2057]}]}," ",{p:[85,3,2093],t:7,e:"div",a:{"class":"itemLabel"},f:["Server password:"]}," ",{p:[88,3,2149],t:7,e:"div",a:{"class":"itemContent"},f:[{t:4,f:["ENABLED"],n:50,r:"data.upload_haspassword",p:[89,4,2178]},{t:4,n:51,f:["DISABLED"],r:"data.upload_haspassword"}]}," ",{p:[95,3,2269],t:7,e:"div",a:{"class":"itemLabel"},f:["Commands:"]}," ",{p:[98,3,2318],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[99,4,2347],t:7,e:"ui-button",a:{action:"PRG_setpassword"},f:["Set password"]}," ",{p:[100,4,2411],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["Exit server"]}]}]},{t:4,n:50,x:{r:["data.downloading","data.uploading","data.upload_filelist"],s:"(!(_0))&&((!(_1))&&(_2))"},f:[" ",{p:[103,3,2509],t:7,e:"h2",f:["File transfer server ready. Select file to upload:"]}," ",{p:[104,3,2572],t:7,e:"table",f:[{p:[105,3,2582],t:7,e:"tr",f:[{p:[105,7,2586],t:7,e:"th",f:["File name"]},{p:[105,20,2599],t:7,e:"th",f:["File size"]},{p:[105,33,2612],t:7,e:"th",f:["Controls ",{t:4,f:[{p:[107,4,2661],t:7,e:"tr",f:[{p:[107,8,2665],t:7,e:"td",f:[{t:2,r:"filename",p:[107,12,2669]}]},{p:[108,4,2685],t:7,e:"td",f:[{t:2,r:"size",p:[108,8,2689]},"GQ"]},{p:[109,4,2703],t:7,e:"td",f:[{p:[109,8,2707],t:7,e:"ui-button",a:{action:"PRG_uploadfile",params:['{"id": "',{t:2,r:"uid",p:[109,59,2758]},'"}']},f:["Select"]}]}]}],n:52,r:"data.upload_filelist",p:[106,3,2627]}]}]}]}," ",{p:[112,3,2813],t:7,e:"hr"}," ",{p:[113,3,2820],t:7,e:"ui-button",a:{action:"PRG_setpassword"},f:["Set password"]}," ",{p:[114,3,2883],t:7,e:"ui-button",a:{action:"PRG_reset"},f:["Return"]}]},{t:4,n:50,x:{r:["data.downloading","data.uploading","data.upload_filelist"],s:"(!(_0))&&((!(_1))&&(!(_2)))"},f:[" ",{p:[116,3,2944],t:7,e:"h2",f:["Available files:"]}," ",{p:[117,3,2972],t:7,e:"table",a:{border:"1",style:"border-collapse: collapse"},f:[{p:[117,55,3024],t:7,e:"tr",f:[{p:[117,59,3028],t:7,e:"th",f:["Server UID"]},{p:[117,73,3042],t:7,e:"th",f:["File Name"]},{p:[117,86,3055],t:7,e:"th",f:["File Size"]},{p:[117,99,3068],t:7,e:"th",f:["Password Protection"]},{p:[117,122,3091],t:7,e:"th",f:["Operations ",{t:4,f:[{p:[119,5,3136],t:7,e:"tr",f:[{p:[119,9,3140],t:7,e:"td",f:[{t:2,r:"uid",p:[119,13,3144]}]},{p:[120,5,3156],t:7,e:"td",f:[{t:2,r:"filename",p:[120,9,3160]}]},{p:[121,5,3177],t:7,e:"td",f:[{t:2,r:"size",p:[121,9,3181]},"GQ ",{t:4,f:[{p:[123,6,3221],t:7,e:"td",f:["Enabled"]}],n:50,r:"haspassword",p:[122,5,3196]}," ",{t:4,f:[{p:[126,6,3275],t:7,e:"td",f:["Disabled"]}],n:50,x:{r:["haspassword"],s:"!_0"},p:[125,5,3249]}]},{p:[129,5,3309],t:7,e:"td",f:[{p:[129,9,3313],t:7,e:"ui-button",a:{action:"PRG_downloadfile",params:['{"id": "',{t:2,r:"uid",p:[129,62,3366]},'"}']},f:["Download"]}]}]}],n:52,r:"data.servers",p:[118,4,3109]}]}]}]}," ",{p:[132,3,3424],t:7,e:"hr"}," ",{p:[133,3,3431],t:7,e:"ui-button",a:{action:"PRG_uploadmenu"},f:["Send file"]}]}],r:"data.error"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],271:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Auth. Disk:"},f:[{t:4,f:[{p:[3,7,67],t:7,e:"ui-button",a:{icon:"eject",style:"selected",action:"eject_disk"},f:["++++++++++"]}],n:50,r:"data.disk_present",p:[2,3,35]},{t:4,n:51,f:[{p:[5,7,168],t:7,e:"ui-button",a:{icon:"plus",action:"insert_disk"},f:["----------"]}],r:"data.disk_present"}]}," ",{p:[8,1,259],t:7,e:"ui-display",a:{title:"Status"},f:[{p:[9,3,289],t:7,e:"span",f:[{t:2,r:"data.status1",p:[9,9,295]},"-",{t:2,r:"data.status2",p:[9,26,312]}]}]}," ",{p:[11,1,350],t:7,e:"ui-display",a:{title:"Timer"},f:[{p:[12,3,379],t:7,e:"ui-section",a:{label:"Time to Detonation"},f:[{p:[13,5,423],t:7,e:"span",f:[{t:2,x:{r:["data.timing","data.time_left","data.timer_set"],s:"_0?_1:_2"},p:[13,11,429]}]}]}," ",{t:4,f:[{p:[16,5,525],t:7,e:"ui-section",a:{label:"Adjust Timer"},f:[{p:[17,7,565],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.disk_present","data.code_approved","data.timer_is_not_default"],s:'_0&&_1&&_2?null:"disabled"'},p:[17,40,598]}],action:"timer",params:'{"change": "reset"}'},f:["Reset"]}," ",{p:[19,7,768],t:7,e:"ui-button",a:{icon:"minus",state:[{t:2,x:{r:["data.disk_present","data.code_approved","data.timer_is_not_min"],s:'_0&&_1&&_2?null:"disabled"'},p:[19,38,799]}],action:"timer",params:'{"change": "decrease"}'},f:["Decrease"]}," ",{p:[21,7,971],t:7,e:"ui-button",a:{icon:"pencil",state:[{t:2,x:{r:["data.disk_present","data.code_approved"],s:'_0&&_1?null:"disabled"'},p:[21,39,1003]}],action:"timer",params:'{"change": "input"}'},f:["Set"]}," ",{p:[22,7,1134],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.disk_present","data.code_approved","data.timer_is_not_max"],s:'_0&&_1&&_2?null:"disabled"'},p:[22,37,1164]}],action:"timer",params:'{"change": "increase"}'},f:["Increase"]}]}],n:51,r:"data.timing",p:[15,3,504]}," ",{p:[26,3,1369],t:7,e:"ui-section",a:{label:"Timer"},f:[{p:[27,5,1400],t:7,e:"ui-button",a:{icon:"clock-o",style:[{t:2,x:{r:["data.timing"],s:'_0?"danger":"caution"'},p:[27,38,1433]}],action:"toggle_timer",state:[{t:2,x:{r:["data.disk_present","data.code_approved","data.safety"],s:'_0&&_1&&!_2?null:"disabled"'},p:[29,14,1514]}]},f:[{t:2,x:{r:["data.timing"],s:'_0?"On":"Off"'},p:[30,7,1602]}]}]}]}," ",{p:[34,1,1680],t:7,e:"ui-display",a:{title:"Anchoring"},f:[{p:[35,3,1713],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.disk_present","data.code_approved"],s:'_0&&_1?null:"disabled"'},p:[36,12,1735]}],icon:[{t:2,x:{r:["data.anchored"],s:'_0?"lock":"unlock"'},p:[37,11,1810]}],style:[{t:2,x:{r:["data.anchored"],s:'_0?null:"caution"'},p:[38,12,1860]}],action:"anchor"},f:[{t:2,x:{r:["data.anchored"],s:'_0?"Engaged":"Off"'},p:[39,21,1918]}]}]}," ",{p:[41,1,1982],t:7,e:"ui-display",a:{title:"Safety"},f:[{p:[42,3,2012],t:7,e:"ui-button",a:{state:[{t:2,x:{r:["data.disk_present","data.code_approved"],s:'_0&&_1?null:"disabled"'},p:[43,12,2034]}],icon:[{ +t:2,x:{r:["data.safety"],s:'_0?"lock":"unlock"'},p:[44,11,2109]}],action:"safety",style:[{t:2,x:{r:["data.safety"],s:'_0?"caution":"danger"'},p:[45,12,2173]}]},f:[{p:[46,7,2220],t:7,e:"span",f:[{t:2,x:{r:["data.safety"],s:'_0?"On":"Off"'},p:[46,13,2226]}]}]}]}," ",{p:[49,1,2293],t:7,e:"ui-display",a:{title:"Code"},f:[{p:[50,3,2321],t:7,e:"ui-section",a:{label:"Message"},f:[{t:2,r:"data.message",p:[50,31,2349]}]}," ",{p:[51,3,2381],t:7,e:"ui-section",a:{label:"Keypad"},f:[{p:[52,5,2413],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[52,39,2447]}],params:'{"digit":"1"}'},f:["1"]}," ",{p:[53,5,2531],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[53,39,2565]}],params:'{"digit":"2"}'},f:["2"]}," ",{p:[54,5,2649],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[54,39,2683]}],params:'{"digit":"3"}'},f:["3"]}," ",{p:[55,5,2767],t:7,e:"br"}," ",{p:[56,5,2776],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[56,39,2810]}],params:'{"digit":"4"}'},f:["4"]}," ",{p:[57,5,2894],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[57,39,2928]}],params:'{"digit":"5"}'},f:["5"]}," ",{p:[58,5,3012],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[58,39,3046]}],params:'{"digit":"6"}'},f:["6"]}," ",{p:[59,5,3130],t:7,e:"br"}," ",{p:[60,5,3139],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[60,39,3173]}],params:'{"digit":"7"}'},f:["7"]}," ",{p:[61,5,3257],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[61,39,3291]}],params:'{"digit":"8"}'},f:["8"]}," ",{p:[62,5,3375],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[62,39,3409]}],params:'{"digit":"9"}'},f:["9"]}," ",{p:[63,5,3493],t:7,e:"br"}," ",{p:[64,5,3502],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[64,39,3536]}],params:'{"digit":"R"}'},f:["R"]}," ",{p:[65,5,3620],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[65,39,3654]}],params:'{"digit":"0"}'},f:["0"]}," ",{p:[66,5,3738],t:7,e:"ui-button",a:{action:"keypad",state:[{t:2,x:{r:["data.disk_present"],s:'_0?null:"disabled"'},p:[66,39,3772]}],params:'{"digit":"E"}'},f:["E"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],272:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(303);e.exports={data:{filter:"",tooltiptext:function(t,e,n){var a="";return t&&(a+="REQUIREMENTS: "+t+" "),e&&(a+="CATALYSTS: "+e+" "),n&&(a+="TOOLS: "+n),a}},oninit:function(){var t=this;this.on({hover:function(t){this.set("hovered",t.context.params)},unhover:function(t){this.set("hovered")}}),this.observe("filter",function(e,a,r){var i=null;i=t.get("data.display_compact")?t.findAll(".section"):t.findAll(".display:not(:first-child)"),(0,n.filterMulti)(i,t.get("filter").toLowerCase())},{init:!1})}}}(r),r.exports.template={v:3,t:[" ",{p:[48,1,1295],t:7,e:"ui-display",a:{title:[{t:2,r:"data.category",p:[48,20,1314]}]},f:[{t:4,f:[{p:[50,3,1355],t:7,e:"ui-section",f:["Crafting... ",{p:[51,16,1383],t:7,e:"i",a:{"class":"fa-spin fa fa-spinner"}}]}],n:50,r:"data.busy",p:[49,2,1335]},{t:4,n:51,f:[{p:[54,3,1449],t:7,e:"ui-section",f:[{p:[55,4,1465],t:7,e:"ui-button",a:{icon:"arrow-left",action:"backwardCat"},f:[{t:2,r:"data.prev_cat",p:[56,5,1520]}]}," ",{p:[58,4,1557],t:7,e:"ui-button",a:{icon:"arrow-right",action:"forwardCat"},f:[{t:2,r:"data.next_cat",p:[59,5,1612]}]}," ",{t:4,f:[{p:[62,5,1689],t:7,e:"ui-button",a:{icon:"lock",action:"toggle_recipes"},f:["Showing Craftable Recipes"]}],n:50,r:"data.display_craftable_only",p:[61,4,1649]},{t:4,n:51,f:[{p:[66,5,1801],t:7,e:"ui-button",a:{icon:"unlock",action:"toggle_recipes"},f:["Showing All Recipes"]}],r:"data.display_craftable_only"}," ",{p:[70,4,1907],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.display_compact"],s:'_0?"check-square-o":"square-o"'},p:[70,21,1924]}],action:"toggle_compact"},f:["Compact"]}," ",{t:4,f:[{t:4,f:[" ",{p:[75,6,2152],t:7,e:"ui-input",a:{value:[{t:2,r:"filter",p:[75,23,2169]}],placeholder:"Filter.."}}],n:51,r:"data.display_compact",p:[74,5,2063]}],n:50,r:"config.fancy",p:[73,4,2038]}]}," ",{t:4,f:[{p:[80,5,2299],t:7,e:"ui-display",f:[{t:4,f:[{p:[82,6,2346],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[82,25,2365]}]},f:[{p:[83,7,2382],t:7,e:"ui-button",a:{tooltip:[{t:2,x:{r:["tooltiptext","req_text","catalyst_text","tool_text"],s:"_0(_1,_2,_3)"},p:[83,27,2402]}],"tooltip-side":"right",action:"make",params:['{"recipe": "',{t:2,r:"ref",p:[83,135,2510]},'"}'],icon:"gears"},v:{hover:"hover",unhover:"unhover"},f:["Craft"]}]}],n:52,r:"data.can_craft",p:[81,5,2316]}," ",{t:4,f:[{t:4,f:[{p:[90,7,2712],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[90,26,2731]}]},f:[{p:[91,8,2749],t:7,e:"ui-button",a:{tooltip:[{t:2,x:{r:["tooltiptext","req_text","catalyst_text","tool_text"],s:"_0(_1,_2,_3)"},p:[91,28,2769]}],"tooltip-side":"right",state:"disabled",icon:"gears"},v:{hover:"hover",unhover:"unhover"},f:["Craft"]}]}],n:52,r:"data.cant_craft",p:[89,6,2680]}],n:51,r:"data.display_craftable_only",p:[88,5,2642]}]}],n:50,r:"data.display_compact",p:[79,4,2266]},{t:4,n:51,f:[{t:4,f:[{p:[100,6,3082],t:7,e:"ui-display",a:{title:[{t:2,r:"name",p:[100,25,3101]}]},f:[{t:4,f:[{p:[102,8,3142],t:7,e:"ui-section",a:{label:"Requirements"},f:[{t:2,r:"req_text",p:[103,9,3184]}]}],n:50,r:"req_text",p:[101,7,3118]}," ",{t:4,f:[{p:[107,8,3267],t:7,e:"ui-section",a:{label:"Catalysts"},f:[{t:2,r:"catalyst_text",p:[108,9,3306]}]}],n:50,r:"catalyst_text",p:[106,7,3238]}," ",{t:4,f:[{p:[112,8,3390],t:7,e:"ui-section",a:{label:"Tools"},f:[{t:2,r:"tool_text",p:[113,9,3425]}]}],n:50,r:"tool_text",p:[111,7,3365]}," ",{p:[116,7,3480],t:7,e:"ui-section",f:[{p:[117,8,3500],t:7,e:"ui-button",a:{icon:"gears",action:"make",params:['{"recipe": "',{t:2,r:"ref",p:[117,66,3558]},'"}']},f:["Craft"]}]}]}],n:52,r:"data.can_craft",p:[99,5,3052]}," ",{t:4,f:[{t:4,f:[{p:[125,7,3731],t:7,e:"ui-display",a:{title:[{t:2,r:"name",p:[125,26,3750]}]},f:[{t:4,f:[{p:[127,9,3793],t:7,e:"ui-section",a:{label:"Requirements"},f:[{t:2,r:"req_text",p:[128,10,3836]}]}],n:50,r:"req_text",p:[126,8,3768]}," ",{t:4,f:[{p:[132,9,3923],t:7,e:"ui-section",a:{label:"Catalysts"},f:[{t:2,r:"catalyst_text",p:[133,10,3963]}]}],n:50,r:"catalyst_text",p:[131,8,3893]}," ",{t:4,f:[{p:[137,9,4051],t:7,e:"ui-section",a:{label:"Tools"},f:[{t:2,r:"tool_text",p:[138,10,4087]}]}],n:50,r:"tool_text",p:[136,8,4025]}]}],n:52,r:"data.cant_craft",p:[124,6,3699]}],n:51,r:"data.display_craftable_only",p:[123,5,3661]}],r:"data.display_compact"}],r:"data.busy"}]}]},e.exports=a.extend(r.exports)},{205:205,303:303}],273:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{p:[2,3,15],t:7,e:"span",f:["The regulator ",{t:2,x:{r:["data.holding"],s:'_0?"is":"is not"'},p:[2,23,35]}," connected to a tank."]}]}," ",{p:[4,1,113],t:7,e:"ui-display",a:{title:"Status",button:0},f:[{p:[5,3,151],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[6,5,186],t:7,e:"span",f:[{t:2,x:{r:["adata.pressure"],s:"Math.round(_0)"},p:[6,11,192]}," kPa"]}]}," ",{p:[8,3,254],t:7,e:"ui-section",a:{label:"Port"},f:[{p:[9,5,285],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.connected"],s:'_0?"good":"average"'},p:[9,18,298]}]},f:[{t:2,x:{r:["data.connected"],s:'_0?"Connected":"Not Connected"'},p:[9,59,339]}]}]}]}," ",{p:[12,1,430],t:7,e:"ui-display",a:{title:"Pump"},f:[{p:[13,3,459],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[14,5,491],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[14,22,508]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":"null"'},p:[15,14,559]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[16,22,616]}]}]}," ",{p:[18,3,675],t:7,e:"ui-section",a:{label:"Direction"},f:[{p:[19,5,711],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.direction"],s:'_0=="out"?"sign-out":"sign-in"'},p:[19,22,728]}],action:"direction"},f:[{t:2,x:{r:["data.direction"],s:'_0=="out"?"Out":"In"'},p:[20,26,808]}]}]}," ",{p:[22,3,883],t:7,e:"ui-section",a:{label:"Target Pressure"},f:[{p:[23,5,925],t:7,e:"ui-bar",a:{min:[{t:2,r:"data.min_pressure",p:[23,18,938]}],max:[{t:2,r:"data.max_pressure",p:[23,46,966]}],value:[{t:2,r:"data.target_pressure",p:[24,14,1003]}]},f:[{t:2,x:{r:["adata.target_pressure"],s:"Math.round(_0)"},p:[24,40,1029]}," kPa"]}]}," ",{p:[26,3,1100],t:7,e:"ui-section",a:{label:"Pressure Regulator"},f:[{p:[27,5,1145],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.target_pressure","data.default_pressure"],s:'_0!=_1?null:"disabled"'},p:[27,38,1178]}],action:"pressure",params:'{"pressure": "reset"}'},f:["Reset"]}," ",{p:[29,5,1328],t:7,e:"ui-button",a:{icon:"minus",state:[{t:2,x:{r:["data.target_pressure","data.min_pressure"],s:'_0>_1?null:"disabled"'},p:[29,36,1359]}],action:"pressure",params:'{"pressure": "min"}'},f:["Min"]}," ",{p:[31,5,1500],t:7,e:"ui-button",a:{icon:"pencil",action:"pressure",params:'{"pressure": "input"}'},f:["Set"]}," ",{p:[32,5,1595],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.target_pressure","data.max_pressure"],s:'_0<_1?null:"disabled"'},p:[32,35,1625]}],action:"pressure",params:'{"pressure": "max"}'},f:["Max"]}]}]}," ",{p:{button:[{t:4,f:[{p:[39,7,1891],t:7,e:"ui-button",a:{icon:"eject",style:[{t:2,x:{r:["data.on"],s:'_0?"danger":null'},p:[39,38,1922]}],action:"eject"},f:["Eject"]}],n:50,r:"data.holding",p:[38,5,1863]}]},t:7,e:"ui-display",a:{title:"Holding Tank",button:0},f:[" ",{t:4,f:[{p:[43,3,2042],t:7,e:"ui-section",a:{label:"Label"},f:[{t:2,r:"data.holding.name",p:[44,4,2073]}]}," ",{p:[46,3,2115],t:7,e:"ui-section",a:{label:"Pressure"},f:[{t:2,x:{r:["adata.holding.pressure"],s:"Math.round(_0)"},p:[47,4,2149]}," kPa"]}],n:50,r:"data.holding",p:[42,3,2018]},{t:4,n:51,f:[{p:[50,3,2223],t:7,e:"ui-section",f:[{p:[51,4,2240],t:7,e:"span",a:{"class":"average"},f:["No Holding Tank"]}]}],r:"data.holding"}]}]},e.exports=a.extend(r.exports)},{205:205}],274:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-notice",f:[{p:[2,3,15],t:7,e:"span",f:["The regulator ",{t:2,x:{r:["data.holding"],s:'_0?"is":"is not"'},p:[2,23,35]}," connected to a tank."]}]}," ",{p:[4,1,113],t:7,e:"ui-display",a:{title:"Status",button:0},f:[{p:[5,3,151],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[6,5,186],t:7,e:"span",f:[{t:2,x:{r:["adata.pressure"],s:"Math.round(_0)"},p:[6,11,192]}," kPa"]}]}," ",{p:[8,3,254],t:7,e:"ui-section",a:{label:"Port"},f:[{p:[9,5,285],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.connected"],s:'_0?"good":"average"'},p:[9,18,298]}]},f:[{t:2,x:{r:["data.connected"],s:'_0?"Connected":"Not Connected"'},p:[9,59,339]}]}]}]}," ",{p:[12,1,430],t:7,e:"ui-display",a:{title:"Filter"},f:[{p:[13,3,461],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[14,5,493],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[14,22,510]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":"null"'},p:[15,14,561]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[16,22,618]}]}]}]}," ",{p:{button:[{t:4,f:[{p:[22,7,787],t:7,e:"ui-button",a:{icon:"eject",style:[{t:2,x:{r:["data.on"],s:'_0?"danger":null'},p:[22,38,818]}],action:"eject"},f:["Eject"]}],n:50,r:"data.holding",p:[21,5,759]}]},t:7,e:"ui-display",a:{title:"Holding Tank",button:0},f:[" ",{t:4,f:[{p:[26,3,938],t:7,e:"ui-section",a:{label:"Label"},f:[{t:2,r:"data.holding.name",p:[27,4,969]}]}," ",{p:[29,3,1011],t:7,e:"ui-section",a:{label:"Pressure"},f:[{t:2,x:{r:["adata.holding.pressure"],s:"Math.round(_0)"},p:[30,4,1045]}," kPa"]}],n:50,r:"data.holding",p:[25,3,914]},{t:4,n:51,f:[{p:[33,3,1119],t:7,e:"ui-section",f:[{p:[34,4,1136],t:7,e:"span",a:{"class":"average"},f:["No Holding Tank"]}]}],r:"data.holding"}]}]},e.exports=a.extend(r.exports)},{205:205}],275:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{chargingState:function(t){switch(t){case 2:return"good";case 1:return"average";default:return"bad"}},chargingMode:function(t){return 2==t?"Full":1==t?"Charging":"Draining"},channelState:function(t){return t>=2?"good":"bad"},channelPower:function(t){return t>=2?"On":"Off"},channelMode:function(t){return 1==t||3==t?"Auto":"Manual"}},computed:{graphData:function(){var t=this.get("data.history");return Object.keys(t).map(function(e){return t[e].map(function(t,e){return{x:e,y:t}})})}}}}(r),r.exports.template={v:3,t:[" ",{p:[42,1,1035],t:7,e:"ui-display",a:{title:"Network"},f:[{t:4,f:[{p:[44,5,1093],t:7,e:"ui-linegraph",a:{points:[{t:2,r:"graphData",p:[44,27,1115]}],height:"500",legend:'["Available", "Load"]',colors:'["rgb(0, 102, 0)", "rgb(153, 0, 0)"]',xunit:"seconds ago",xfactor:[{t:2,r:"data.interval",p:[46,38,1267]}],yunit:"W",yfactor:"1",xinc:[{t:2,x:{r:["data.stored"],s:"_0/10"},p:[47,15,1323]}],yinc:"9"}}],n:50,r:"config.fancy",p:[43,3,1067]},{t:4,n:51,f:[{p:[49,5,1373],t:7,e:"ui-section",a:{label:"Available"},f:[{p:[50,7,1411],t:7,e:"span",f:[{t:2,r:"data.supply",p:[50,13,1417]}," W"]}]}," ",{p:[52,5,1466],t:7,e:"ui-section",a:{label:"Load"},f:[{p:[53,9,1501],t:7,e:"span",f:[{t:2,r:"data.demand",p:[53,15,1507]}," W"]}]}],r:"config.fancy"}]}," ",{p:[57,1,1578],t:7,e:"ui-display",a:{title:"Areas"},f:[{p:[58,3,1608],t:7,e:"ui-section",a:{nowrap:0},f:[{p:[59,5,1633],t:7,e:"div",a:{"class":"content"},f:["Area"]}," ",{p:[60,5,1670],t:7,e:"div",a:{"class":"content"},f:["Charge"]}," ",{p:[61,5,1709],t:7,e:"div",a:{"class":"content"},f:["Load"]}," ",{p:[62,5,1746],t:7,e:"div",a:{"class":"content"},f:["Status"]}," ",{p:[63,5,1785],t:7,e:"div",a:{"class":"content"},f:["Equipment"]}," ",{p:[64,5,1827],t:7,e:"div",a:{"class":"content"},f:["Lighting"]}," ",{p:[65,5,1868],t:7,e:"div",a:{"class":"content"},f:["Environment"]}]}," ",{t:4,f:[{p:[68,5,1953],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[68,24,1972]}],nowrap:0},f:[{p:[69,7,1997],t:7,e:"div",a:{"class":"content"},f:[{t:2,x:{r:["@index","adata.areas"],s:"Math.round(_1[_0].charge)"},p:[69,28,2018]}," %"]}," ",{p:[70,7,2076],t:7,e:"div",a:{"class":"content"},f:[{t:2,x:{r:["@index","adata.areas"],s:"Math.round(_1[_0].load)"},p:[70,28,2097]}," W"]}," ",{p:[71,7,2153],t:7,e:"div",a:{"class":"content"},f:[{p:[71,28,2174],t:7,e:"span",a:{"class":[{t:2,x:{r:["chargingState","charging"],s:"_0(_1)"},p:[71,41,2187]}]},f:[{t:2,x:{r:["chargingMode","charging"],s:"_0(_1)"},p:[71,70,2216]}]}]}," ",{p:[72,7,2263],t:7,e:"div",a:{"class":"content"},f:[{p:[72,28,2284],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","eqp"],s:"_0(_1)"},p:[72,41,2297]}]},f:[{t:2,x:{r:["channelPower","eqp"],s:"_0(_1)"},p:[72,64,2320]}," [",{p:[72,87,2343],t:7,e:"span",f:[{t:2,x:{r:["channelMode","eqp"],s:"_0(_1)"},p:[72,93,2349]}]},"]"]}]}," ",{p:[73,7,2398],t:7,e:"div",a:{"class":"content"},f:[{p:[73,28,2419],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","lgt"],s:"_0(_1)"},p:[73,41,2432]}]},f:[{t:2,x:{r:["channelPower","lgt"],s:"_0(_1)"},p:[73,64,2455]}," [",{p:[73,87,2478],t:7,e:"span",f:[{t:2,x:{r:["channelMode","lgt"],s:"_0(_1)"},p:[73,93,2484]}]},"]"]}]}," ",{p:[74,7,2533],t:7,e:"div",a:{"class":"content"},f:[{p:[74,28,2554],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","env"],s:"_0(_1)"},p:[74,41,2567]}]},f:[{t:2,x:{r:["channelPower","env"],s:"_0(_1)"},p:[74,64,2590]}," [",{p:[74,87,2613],t:7,e:"span",f:[{t:2,x:{r:["channelMode","env"],s:"_0(_1)"},p:[74,93,2619]}]},"]"]}]}]}],n:52,r:"data.areas",p:[67,3,1927]}]}]},e.exports=a.extend(r.exports)},{205:205}],276:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{chargingState:function(t){switch(t){case 2:return"good";case 1:return"average";default:return"bad"}},chargingMode:function(t){return 2==t?"Full":1==t?"Charging":"Draining"},channelState:function(t){return t>=2?"good":"bad"},channelPower:function(t){return t>=2?"On":"Off"},channelMode:function(t){return 1==t||3==t?"Auto":"Manual"}},computed:{graphData:function(){var t=this.get("data.history");return Object.keys(t).map(function(e){return t[e].map(function(t,e){return{x:e,y:t}})})}}}}(r),r.exports.template={v:3,t:[" ",{p:[42,1,994],t:7,e:"div",a:{style:"float: left"},f:[{p:[43,2,1021],t:7,e:"div",a:{"class":"item"},f:[{p:[44,3,1042],t:7,e:"table",f:[{p:[44,10,1049],t:7,e:"tr",f:[{t:4,f:[{p:[46,4,1114],t:7,e:"td",f:[{p:[46,8,1118],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[46,18,1128]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[45,3,1056]}," ",{t:4,f:[{p:[49,4,1227],t:7,e:"td",f:[{p:[49,8,1231],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[49,11,1234]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[48,3,1166]}," ",{t:4,f:[{p:[52,4,1306],t:7,e:"td",f:[{p:[52,8,1310],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[52,18,1320]}]}}]}],n:50,r:"data.PC_ntneticon",p:[51,3,1277]}," ",{t:4,f:[{p:[55,4,1387],t:7,e:"td",f:[{p:[55,8,1391],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[55,18,1401]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[54,3,1356]}," ",{t:4,f:[{p:[58,4,1470],t:7,e:"td",f:[{p:[58,8,1474],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[58,11,1477]},{p:[58,34,1500],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[57,3,1439]}," ",{t:4,f:[{p:[61,4,1552],t:7,e:"td",f:[{p:[61,8,1556],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[61,18,1566]}]}}]}],n:52,r:"data.PC_programheaders",p:[60,3,1516]}]}]}]}]}," ",{p:[66,1,1615],t:7,e:"div",a:{style:"float: right"},f:[{p:[67,2,1643],t:7,e:"table",f:[{p:[67,9,1650],t:7,e:"tr",f:[{p:[68,3,1657],t:7,e:"td",f:[{p:[68,7,1661],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[70,4,1751],t:7,e:"td",f:[{p:[70,8,1755],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[71,4,1811],t:7,e:"td",f:[{p:[71,8,1815],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[69,3,1716]}]}]}]}]}," ",{p:[75,1,1903],t:7,e:"div",a:{style:"clear: both"},f:[{p:[77,1,1930],t:7,e:"ui-display",a:{title:"Network"},f:[{t:4,f:[{p:[79,5,1986],t:7,e:"ui-linegraph",a:{points:[{t:2,r:"graphData",p:[79,27,2008]}],height:"500",legend:'["Available", "Load"]',colors:'["rgb(0, 102, 0)", "rgb(153, 0, 0)"]',xunit:"seconds ago",xfactor:[{t:2,r:"data.interval",p:[81,38,2158]}],yunit:"W",yfactor:"1",xinc:[{t:2,x:{r:["data.stored"],s:"_0/10"},p:[82,15,2213]}],yinc:"9"}}],n:50,r:"config.fancy",p:[78,3,1961]},{t:4,n:51,f:[{p:[84,5,2261],t:7,e:"ui-section",a:{label:"Available"},f:[{p:[85,7,2298],t:7,e:"span",f:[{t:2,r:"data.supply",p:[85,13,2304]}," W"]}]}," ",{p:[87,5,2351],t:7,e:"ui-section",a:{label:"Load"},f:[{p:[88,9,2385],t:7,e:"span",f:[{t:2,r:"data.demand",p:[88,15,2391]}," W"]}]}],r:"config.fancy"}]}," ",{p:[92,1,2458],t:7,e:"ui-display",a:{title:"Areas"},f:[{p:[93,3,2487],t:7,e:"ui-section",a:{nowrap:0},f:[{p:[94,5,2511],t:7,e:"div",a:{"class":"content"},f:["Area"]}," ",{p:[95,5,2547],t:7,e:"div",a:{"class":"content"},f:["Charge"]}," ",{p:[96,5,2585],t:7,e:"div",a:{"class":"content"},f:["Load"]}," ",{p:[97,5,2621],t:7,e:"div",a:{"class":"content"},f:["Status"]}," ",{p:[98,5,2659],t:7,e:"div",a:{"class":"content"},f:["Equipment"]}," ",{p:[99,5,2700],t:7,e:"div",a:{"class":"content"},f:["Lighting"]}," ",{p:[100,5,2740],t:7,e:"div",a:{"class":"content"},f:["Environment"]}]}," ",{t:4,f:[{p:[103,5,2822],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[103,24,2841]}],nowrap:0},f:[{p:[104,7,2865],t:7,e:"div",a:{"class":"content"},f:[{t:2,x:{r:["@index","adata.areas"],s:"Math.round(_1[_0].charge)"},p:[104,28,2886]}," %"]}," ",{p:[105,7,2943],t:7,e:"div",a:{"class":"content"},f:[{t:2,x:{r:["@index","adata.areas"],s:"Math.round(_1[_0].load)"},p:[105,28,2964]}," W"]}," ",{p:[106,7,3019],t:7,e:"div",a:{"class":"content"},f:[{p:[106,28,3040],t:7,e:"span",a:{"class":[{t:2,x:{r:["chargingState","charging"],s:"_0(_1)"},p:[106,41,3053]}]},f:[{t:2,x:{r:["chargingMode","charging"],s:"_0(_1)"},p:[106,70,3082]}]}]}," ",{p:[107,7,3128],t:7,e:"div",a:{"class":"content"},f:[{p:[107,28,3149],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","eqp"],s:"_0(_1)"},p:[107,41,3162]}]},f:[{t:2,x:{r:["channelPower","eqp"],s:"_0(_1)"},p:[107,64,3185]}," [",{p:[107,87,3208],t:7,e:"span",f:[{t:2,x:{r:["channelMode","eqp"],s:"_0(_1)"},p:[107,93,3214]}]},"]"]}]}," ",{p:[108,7,3262],t:7,e:"div",a:{"class":"content"},f:[{p:[108,28,3283],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","lgt"],s:"_0(_1)"},p:[108,41,3296]}]},f:[{t:2,x:{r:["channelPower","lgt"],s:"_0(_1)"},p:[108,64,3319]}," [",{p:[108,87,3342],t:7,e:"span",f:[{t:2,x:{r:["channelMode","lgt"],s:"_0(_1)"},p:[108,93,3348]}]},"]"]}]}," ",{p:[109,7,3396],t:7,e:"div",a:{"class":"content"},f:[{p:[109,28,3417],t:7,e:"span",a:{"class":[{t:2,x:{r:["channelState","env"],s:"_0(_1)"},p:[109,41,3430]}]},f:[{t:2,x:{r:["channelPower","env"],s:"_0(_1)"},p:[109,64,3453]}," [",{p:[109,87,3476],t:7,e:"span",f:[{t:2,x:{r:["channelMode","env"],s:"_0(_1)"},p:[109,93,3482]}]},"]"]}]}]}],n:52,r:"data.areas",p:[102,3,2797]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],277:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{readableFrequency:function(){return Math.round(this.get("adata.frequency"))/10}}}}(r),r.exports.template={v:3,t:[" ",{p:[11,1,167],t:7,e:"ui-display",a:{title:"Settings"},f:[{t:4,f:[{p:[13,5,224],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[14,7,257],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.listening"],s:'_0?"power-off":"close"'},p:[14,24,274]}],style:[{t:2,x:{r:["data.listening"],s:'_0?"selected":null'},p:[14,75,325]}],action:"listen"},f:[{t:2,x:{r:["data.listening"],s:'_0?"On":"Off"'},p:[16,9,398]}]}]}],n:50,r:"data.headset",p:[12,3,199]},{t:4,n:51,f:[{p:[19,5,476],t:7,e:"ui-section",a:{label:"Microphone"},f:[{p:[20,7,514],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.broadcasting"],s:'_0?"power-off":"close"'},p:[20,24,531]}],style:[{t:2,x:{r:["data.broadcasting"],s:'_0?"selected":null'},p:[20,78,585]}],action:"broadcast"},f:[{t:2,x:{r:["data.broadcasting"],s:'_0?"Engaged":"Disengaged"'},p:[22,9,664]}]}]}," ",{p:[24,5,746],t:7,e:"ui-section",a:{label:"Speaker"},f:[{p:[25,7,781],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.listening"],s:'_0?"power-off":"close"'},p:[25,24,798]}],style:[{t:2,x:{r:["data.listening"],s:'_0?"selected":null'},p:[25,75,849]}],action:"listen"},f:[{t:2,x:{r:["data.listening"],s:'_0?"Engaged":"Disengaged"'},p:[27,9,922]}]}]}],r:"data.headset"}," ",{t:4,f:[{p:[31,5,1034],t:7,e:"ui-section",a:{label:"High Volume"},f:[{p:[32,7,1073],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.useCommand"],s:'_0?"power-off":"close"'},p:[32,24,1090]}],style:[{t:2,x:{r:["data.useCommand"],s:'_0?"selected":null'},p:[32,76,1142]}],action:"command"},f:[{t:2,x:{r:["data.useCommand"],s:'_0?"On":"Off"'},p:[34,9,1217]}]}]}],n:50,r:"data.command",p:[30,3,1009]}]}," ",{p:[38,1,1305],t:7,e:"ui-display",a:{title:"Channel"},f:[{p:[39,3,1336],t:7,e:"ui-section",a:{label:"Frequency"},f:[{t:4,f:[{p:[41,7,1399],t:7,e:"span",f:[{t:2,r:"readableFrequency",p:[41,13,1405]}]}],n:50,r:"data.freqlock",p:[40,5,1371]},{t:4,n:51,f:[{p:[43,7,1453],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.frequency","data.minFrequency"],s:'_0==_1?"disabled":null'},p:[43,46,1492]}],action:"frequency",params:'{"adjust": -1}'}}," ",{p:[44,7,1603],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.frequency","data.minFrequency"],s:'_0==_1?"disabled":null'},p:[44,41,1637]}],action:"frequency",params:'{"adjust": -.2}'}}," ",{p:[45,7,1749],t:7,e:"ui-button",a:{icon:"pencil",action:"frequency",params:'{"tune": "input"}'},f:[{t:2,r:"readableFrequency",p:[45,78,1820]}]}," ",{p:[46,7,1860],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.frequency","data.maxFrequency"],s:'_0==_1?"disabled":null'},p:[46,40,1893]}],action:"frequency",params:'{"adjust": .2}'}}," ",{p:[47,7,2004],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.frequency","data.maxFrequency"],s:'_0==_1?"disabled":null'},p:[47,45,2042]}],action:"frequency",params:'{"adjust": 1}'}}],r:"data.freqlock"}]}," ",{t:4,f:[{p:[51,5,2212],t:7,e:"ui-section",a:{label:"Subspace Transmission"},f:[{p:[52,7,2261],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.subspace"],s:'_0?"power-off":"close"'},p:[52,24,2278]}],style:[{t:2,x:{r:["data.subspace"],s:'_0?"selected":null'},p:[52,74,2328]}],action:"subspace"},f:[{t:2,x:{r:["data.subspace"],s:'_0?"Active":"Inactive"'},p:[53,29,2395]}]}]}],n:50,r:"data.subspaceSwitchable",p:[50,3,2176]}," ",{t:4,f:[{p:[57,5,2522],t:7,e:"ui-section",a:{label:"Channels"},f:[{t:4,f:[{p:[59,9,2598],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["."],s:'_0?"check-square-o":"square-o"'},p:[59,26,2615]}],style:[{t:2,x:{r:["."],s:'_0?"selected":null'},p:[60,18,2671]}],action:"channel",params:['{"channel": "',{t:2,r:"channel",p:[61,49,2746]},'"}']},f:[{t:2,r:"channel",p:[62,11,2772]}]},{p:[62,34,2795],t:7,e:"br"}],n:52,i:"channel",r:"data.channels",p:[58,7,2558]}]}],n:50,x:{r:["data.subspace","data.channels"],s:"_0&&_1"},p:[56,3,2479]}]}]},e.exports=a.extend(r.exports)},{205:205}],278:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{p:[37,1,937],t:7,e:"ui-display",f:[{p:[38,2,951],t:7,e:"div",a:{"class":"item"},f:[{p:[39,3,972],t:7,e:"div",a:{"class":"itemLabel"},f:["Payload status:"]}," ",{p:[42,3,1026],t:7,e:"div",a:{"class":"itemContent"},f:[{t:4,f:["ARMED"],n:50,r:"data.armed",p:[43,4,1055]},{t:4,n:51,f:["DISARMED"],r:"data.armed"}]}," ",{p:[49,3,1131],t:7,e:"div",a:{"class":"itemLabel"},f:["Controls:"]}," ",{p:[52,3,1179],t:7,e:"div",a:{"class":"itemContent"},f:[{p:[53,4,1208],t:7,e:"table",f:[{p:[54,4,1219],t:7,e:"tr",f:[{p:[54,8,1223],t:7,e:"td",f:[{p:[54,12,1227],t:7,e:"ui-button",a:{action:"PRG_obfuscate"},f:["OBFUSCATE PROGRAM NAME"]}]}]},{p:[55,4,1299],t:7,e:"tr",f:[{p:[55,8,1303],t:7,e:"td",f:[{p:[55,12,1307],t:7,e:"ui-button",a:{action:"PRG_arm",state:[{t:2,x:{r:["data.armed"],s:'_0?"danger":null'},p:[55,47,1342]}]},f:[{t:2,x:{r:["data.armed"],s:'_0?"DISARM":"ARM"'},p:[55,81,1376]}]}," ",{p:[56,4,1425],t:7,e:"ui-button",a:{icon:"radiation",state:[{t:2,x:{r:["data.armed"],s:'_0?null:"disabled"'},p:[56,39,1460]}],action:"PRG_activate"},f:["ACTIVATE"]}]}]}]}]}]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],279:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,22],t:7,e:"ui-notice",f:[{t:2,r:"data.notice",p:[3,5,38]}]}],n:50,r:"data.notice",p:[1,1,0]},{p:[6,1,77],t:7,e:"ui-display",a:{title:"Satellite Network Control",button:0},f:[{t:4,f:[{p:[8,4,161],t:7,e:"ui-section",a:{candystripe:0,nowrap:0},f:[{p:[9,9,201],t:7,e:"div",a:{"class":"content"},f:["#",{t:2,r:"id",p:[9,31,223]}]}," ",{p:[10,9,244],t:7,e:"div",a:{"class":"content"},f:[{t:2,r:"mode",p:[10,30,265]}]}," ",{p:[11,9,288],t:7,e:"div",a:{"class":"content"},f:[{p:[12,11,320],t:7,e:"ui-button",a:{action:"toggle",params:['{"id": "',{t:2,r:"id",p:[12,54,363]},'"}']},f:[{t:2,x:{r:["active"],s:'_0?"Deactivate":"Activate"'},p:[12,64,373]}]}]}]}],n:52,r:"data.satellites",p:[7,2,132]}]}," ",{t:4,f:[{p:[18,1,511],t:7,e:"ui-display",a:{title:"Station Shield Coverage"},f:[{p:[19,3,558],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.meteor_shield_coverage_max",p:[19,24,579]}],value:[{t:2,r:"data.meteor_shield_coverage",p:[19,68,623]}]},f:[{t:2,x:{r:["data.meteor_shield_coverage","data.meteor_shield_coverage_max"],s:"100*_0/_1"},p:[19,101,656]}," %"]}," ",{p:[20,1,739],t:7,e:"ui-display",f:[]}]}],n:50,r:"data.meteor_shield",p:[17,1,484]}]},e.exports=a.extend(r.exports)},{205:205}],280:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[" "," "," ",{p:[5,1,196],t:7,e:"ui-tabs",a:{tabs:[{t:2,r:"data.tabs",p:[5,16,211]}]},f:[{p:[6,2,228],t:7,e:"tab",a:{name:"Status"},f:[{p:[7,3,250],t:7,e:"status"}]}," ",{p:[9,2,269],t:7,e:"tab",a:{name:"Templates"},f:[{p:[10,3,294],t:7,e:"templates"}]}," ",{p:[12,2,316],t:7,e:"tab",a:{name:"Modification"},f:[{t:4,f:[{p:[14,3,368],t:7,e:"modification"}],n:50,r:"data.selected",p:[13,3,344]}," ",{t:4,f:[{p:[17,3,421],t:7,e:"span",a:{"class":"bad"},f:["No shuttle selected."]}],n:50,x:{r:["data.selected"],s:"!_0"},p:[16,3,396]}]}]}]},r.exports.components=r.exports.components||{};var i={modification:t(281),templates:t(283),status:t(282)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{205:205,281:281,282:282,283:283}],281:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:["Selected: ",{t:2,r:"data.selected.name",p:[1,30,29]}]},f:[{t:4,f:[{p:[3,5,94],t:7,e:"ui-section",a:{label:"Description"},f:[{t:2,r:"data.selected.description",p:[3,37,126]}]}],n:50,r:"data.selected.description",p:[2,3,56]}," ",{t:4,f:[{p:[6,5,219],t:7,e:"ui-section",a:{label:"Admin Notes"},f:[{t:2,r:"data.selected.admin_notes",p:[6,37,251]}]}],n:50,r:"data.selected.admin_notes",p:[5,3,181]}]}," ",{t:4,f:[{p:[11,3,351],t:7,e:"ui-display",a:{title:["Existing Shuttle: ",{t:2,r:"data.existing_shuttle.name",p:[11,40,388]}]},f:["Status: ",{t:2,r:"data.existing_shuttle.status",p:[12,13,433]}," ",{t:4,f:["(",{t:2,r:"data.existing_shuttle.timeleft",p:[14,8,513]},")"],n:50,r:"data.existing_shuttle.timer",p:[13,5,470]}," ",{p:[16,5,565],t:7,e:"ui-button",a:{action:"jump_to",params:['{"type": "mobile", "id": "',{t:2,r:"data.existing_shuttle.id",p:[17,41,633]},'"}']},f:["Jump To"]}]}],n:50,r:"data.existing_shuttle",p:[10,1,319]},{t:4,f:[{p:[24,3,755],t:7,e:"ui-display",a:{title:"Existing Shuttle: None"}}],n:50,x:{r:["data.existing_shuttle"],s:"!_0"},p:[23,1,722]},{p:[27,1,821],t:7,e:"ui-button",a:{action:"preview",params:['{"shuttle_id": "',{t:2,r:"data.selected.shuttle_id",p:[28,27,875]},'"}']},f:["Preview"]}," ",{p:[31,1,931],t:7,e:"ui-button",a:{action:"load",params:['{"shuttle_id": "',{t:2,r:"data.selected.shuttle_id",p:[32,27,982]},'"}'],style:"danger"},f:["Load"]}," ",{p:[37,1,1053],t:7,e:"ui-display",a:{title:"Status"},f:[]}]},e.exports=a.extend(r.exports)},{205:205 +}],282:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,26],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[2,22,45]}," (",{t:2,r:"id",p:[2,32,55]},")"]},f:[{t:2,r:"status",p:[3,5,69]}," ",{t:4,f:["(",{t:2,r:"timeleft",p:[5,8,105]},")"],n:50,r:"timer",p:[4,5,84]}," ",{p:[7,5,135],t:7,e:"ui-button",a:{action:"jump_to",params:['{"type": "mobile", "id": "',{t:2,r:"id",p:[7,67,197]},'"}']},f:["Jump To"]}," ",{p:[10,5,243],t:7,e:"ui-button",a:{action:"fast_travel",params:['{"id": "',{t:2,r:"id",p:[10,53,291]},'"}'],state:[{t:2,x:{r:["can_fast_travel"],s:'_0?null:"disabled"'},p:[10,70,308]}]},f:["Fast Travel"]}]}],n:52,r:"data.shuttles",p:[1,1,0]}]},e.exports=a.extend(r.exports)},{205:205}],283:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-tabs",a:{tabs:[{t:2,r:"data.templates_tabs",p:[1,16,15]}]},f:[{t:4,f:[{p:[3,5,72],t:7,e:"tab",a:{name:[{t:2,r:"port_id",p:[3,16,83]}]},f:[{t:4,f:[{p:[5,9,131],t:7,e:"ui-display",a:{title:[{t:2,r:"name",p:[5,28,150]}]},f:[{t:4,f:[{p:[7,13,203],t:7,e:"ui-section",a:{label:"Description"},f:[{t:2,r:"description",p:[7,45,235]}]}],n:50,r:"description",p:[6,11,171]}," ",{t:4,f:[{p:[10,13,324],t:7,e:"ui-section",a:{label:"Admin Notes"},f:[{t:2,r:"admin_notes",p:[10,45,356]}]}],n:50,r:"admin_notes",p:[9,11,292]}," ",{p:[13,11,414],t:7,e:"ui-button",a:{action:"select_template",params:['{"shuttle_id": "',{t:2,r:"shuttle_id",p:[14,37,486]},'"}'],state:[{t:2,x:{r:["data.selected.shuttle_id","shuttle_id"],s:'_0==_1?"selected":null'},p:[15,20,523]}]},f:[{t:2,x:{r:["data.selected.shuttle_id","shuttle_id"],s:'_0==_1?"Selected":"Select"'},p:[17,13,614]}]}]}],n:52,r:"templates",p:[4,7,103]}]}],n:52,r:"data.templates",p:[2,3,43]}]}]},e.exports=a.extend(r.exports)},{205:205}],284:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{occupantStatState:function(){switch(this.get("data.occupant.stat")){case 0:return"good";case 1:return"average";default:return"bad"}}}}}(r),r.exports.template={v:3,t:[" ",{p:[15,1,280],t:7,e:"ui-display",a:{title:"Occupant"},f:[{p:[16,3,313],t:7,e:"ui-section",a:{label:"Occupant"},f:[{p:[17,3,346],t:7,e:"span",f:[{t:2,x:{r:["data.occupant.name"],s:'_0?_0:"No Occupant"'},p:[17,9,352]}]}]}," ",{t:4,f:[{p:[20,5,466],t:7,e:"ui-section",a:{label:"State"},f:[{p:[21,7,500],t:7,e:"span",a:{"class":[{t:2,r:"occupantStatState",p:[21,20,513]}]},f:[{t:2,x:{r:["data.occupant.stat"],s:'_0==0?"Conscious":_0==1?"Unconcious":"Dead"'},p:[21,43,536]}]}]}," ",{p:[23,5,658],t:7,e:"ui-section",a:{label:"Health"},f:[{p:[24,7,693],t:7,e:"ui-bar",a:{min:[{t:2,r:"data.occupant.minHealth",p:[24,20,706]}],max:[{t:2,r:"data.occupant.maxHealth",p:[24,54,740]}],value:[{t:2,r:"data.occupant.health",p:[24,90,776]}],state:[{t:2,x:{r:["data.occupant.health"],s:'_0>=0?"good":"average"'},p:[25,16,818]}]},f:[{t:2,x:{r:["adata.occupant.health"],s:"Math.round(_0)"},p:[25,68,870]}]}]}," ",{t:4,f:[{p:[28,7,1107],t:7,e:"ui-section",a:{label:[{t:2,r:"label",p:[28,26,1126]}]},f:[{p:[29,9,1147],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.occupant.maxHealth",p:[29,30,1168]}],value:[{t:2,rx:{r:"data.occupant",m:[{t:30,n:"type"}]},p:[29,66,1204]}],state:"bad"},f:[{t:2,x:{r:["type","adata.occupant"],s:"Math.round(_1[_0])"},p:[29,103,1241]}]}]}],n:52,x:{r:[],s:'[{label:"Brute",type:"bruteLoss"},{label:"Respiratory",type:"oxyLoss"},{label:"Toxin",type:"toxLoss"},{label:"Burn",type:"fireLoss"}]'},p:[27,5,941]}," ",{p:[32,5,1328],t:7,e:"ui-section",a:{label:"Cells"},f:[{p:[33,9,1364],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.occupant.cloneLoss"],s:'_0?"bad":"good"'},p:[33,22,1377]}]},f:[{t:2,x:{r:["data.occupant.cloneLoss"],s:'_0?"Damaged":"Healthy"'},p:[33,68,1423]}]}]}," ",{p:[35,5,1506],t:7,e:"ui-section",a:{label:"Brain"},f:[{p:[36,9,1542],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.occupant.brainLoss"],s:'_0?"bad":"good"'},p:[36,22,1555]}]},f:[{t:2,x:{r:["data.occupant.brainLoss"],s:'_0?"Abnormal":"Healthy"'},p:[36,68,1601]}]}]}," ",{p:[38,5,1685],t:7,e:"ui-section",a:{label:"Bloodstream"},f:[{t:4,f:[{p:[40,11,1772],t:7,e:"span",a:{"class":"highlight"},t0:"fade",f:[{t:2,x:{r:["volume"],s:"Math.fixed(_0,1)"},p:[40,54,1815]}," units of ",{t:2,r:"name",p:[40,89,1850]}]},{p:[40,104,1865],t:7,e:"br"}],n:52,r:"adata.occupant.reagents",p:[39,9,1727]},{t:4,n:51,f:[{p:[42,11,1900],t:7,e:"span",a:{"class":"good"},f:["Pure"]}],r:"adata.occupant.reagents"}]}],n:50,r:"data.occupied",p:[19,3,439]}]}," ",{p:[47,1,1996],t:7,e:"ui-display",a:{title:"Controls"},f:[{p:[48,2,2028],t:7,e:"ui-section",a:{label:"Door"},f:[{p:[49,5,2059],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.open"],s:'_0?"unlock":"lock"'},p:[49,22,2076]}],action:"door"},f:[{t:2,x:{r:["data.open"],s:'_0?"Open":"Closed"'},p:[49,71,2125]}]}]}," ",{p:[51,3,2190],t:7,e:"ui-section",a:{label:"Inject"},f:[{t:4,f:[{p:[53,7,2251],t:7,e:"ui-button",a:{icon:"flask",state:[{t:2,x:{r:["data.occupied","allowed"],s:'_0&&_1?null:"disabled"'},p:[53,38,2282]}],action:"inject",params:['{"chem": "',{t:2,r:"id",p:[53,122,2366]},'"}']},f:[{t:2,r:"name",p:[53,132,2376]}]},{p:[53,152,2396],t:7,e:"br"}],n:52,r:"data.chems",p:[52,5,2223]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],285:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,24],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[2,22,43]}],labelcolor:[{t:2,r:"htmlcolor",p:[2,44,65]}],candystripe:0,right:0},f:[{p:[3,5,103],t:7,e:"ui-section",a:{label:"Status"},f:[{p:[3,32,130],t:7,e:"span",a:{"class":[{t:2,x:{r:["status"],s:'_0=="Dead"?"bad bold":_0=="Unconscious"?"average bold":"good"'},p:[3,45,143]}]},f:[{t:2,r:"status",p:[3,132,230]}]}]}," ",{p:[4,5,265],t:7,e:"ui-section",a:{label:"Jelly"},f:[{t:2,r:"exoticblood",p:[4,31,291]}]}," ",{p:[5,5,324],t:7,e:"ui-section",a:{label:"Location"},f:[{t:2,r:"area",p:[5,34,353]}]}," ",{p:[7,5,380],t:7,e:"ui-button",a:{state:[{t:2,r:"swap_button_state",p:[8,14,404]}],action:"swap",params:['{"ref": "',{t:2,r:"ref",p:[9,38,464]},'"}']},f:[{t:2,x:{r:["is_current"],s:'_0?"You Are Here":"Swap"'},p:[10,7,482]}]}]}],n:52,r:"data.bodies",p:[1,1,0]}]},e.exports=a.extend(r.exports)},{205:205}],286:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{capacityPercentState:function(){var t=this.get("data.capacityPercent");return t>50?"good":t>15?"average":"bad"},inputState:function(){return this.get("data.capacityPercent")>=100?"good":this.get("data.inputting")?"average":"bad"},outputState:function(){return this.get("data.outputting")?"good":this.get("data.charge")>0?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[24,1,640],t:7,e:"ui-display",a:{title:"Storage"},f:[{p:[25,3,671],t:7,e:"ui-section",a:{label:"Stored Energy"},f:[{p:[26,5,710],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.capacityPercent",p:[26,38,743]}],state:[{t:2,r:"capacityPercentState",p:[26,71,776]}]},f:[{t:2,x:{r:["adata.capacityPercent"],s:"Math.fixed(_0)"},p:[26,97,802]},"%"]}]}]}," ",{p:[29,1,880],t:7,e:"ui-display",a:{title:"Input"},f:[{p:[30,3,909],t:7,e:"ui-section",a:{label:"Charge Mode"},f:[{p:[31,5,946],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.inputAttempt"],s:'_0?"refresh":"close"'},p:[31,22,963]}],style:[{t:2,x:{r:["data.inputAttempt"],s:'_0?"selected":null'},p:[31,74,1015]}],action:"tryinput"},f:[{t:2,x:{r:["data.inputAttempt"],s:'_0?"Auto":"Off"'},p:[32,25,1082]}]},"   [",{p:[34,6,1149],t:7,e:"span",a:{"class":[{t:2,r:"inputState",p:[34,19,1162]}]},f:[{t:2,x:{r:["data.capacityPercent","data.inputting"],s:'_0>=100?"Fully Charged":_1?"Charging":"Not Charging"'},p:[34,35,1178]}]},"]"]}," ",{p:[36,3,1300],t:7,e:"ui-section",a:{label:"Target Input"},f:[{p:[37,5,1338],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.inputLevelMax",p:[37,26,1359]}],value:[{t:2,r:"data.inputLevel",p:[37,57,1390]}]},f:[{t:2,x:{r:["adata.inputLevel"],s:"Math.round(_0)"},p:[37,78,1411]},"W"]}]}," ",{p:[39,3,1471],t:7,e:"ui-section",a:{label:"Adjust Input"},f:[{p:[40,5,1509],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.inputLevel"],s:'_0==0?"disabled":null'},p:[40,44,1548]}],action:"input",params:'{"target": "min"}'}}," ",{p:[41,5,1642],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.inputLevel"],s:'_0==0?"disabled":null'},p:[41,39,1676]}],action:"input",params:'{"adjust": -10000}'}}," ",{p:[42,5,1771],t:7,e:"ui-button",a:{icon:"pencil",action:"input",params:'{"target": "input"}'},f:["Set"]}," ",{p:[43,5,1860],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.inputLevel","data.inputLevelMax"],s:'_0==_1?"disabled":null'},p:[43,38,1893]}],action:"input",params:'{"adjust": 10000}'}}," ",{p:[44,5,2004],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.inputLevel","data.inputLevelMax"],s:'_0==_1?"disabled":null'},p:[44,43,2042]}],action:"input",params:'{"target": "max"}'}}]}," ",{p:[46,3,2167],t:7,e:"ui-section",a:{label:"Available"},f:[{p:[47,3,2200],t:7,e:"span",f:[{t:2,x:{r:["adata.inputAvailable"],s:"Math.round(_0)"},p:[47,9,2206]},"W"]}]}]}," ",{p:[50,1,2280],t:7,e:"ui-display",a:{title:"Output"},f:[{p:[51,3,2310],t:7,e:"ui-section",a:{label:"Output Mode"},f:[{p:[52,5,2347],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.outputAttempt"],s:'_0?"power-off":"close"'},p:[52,22,2364]}],style:[{t:2,x:{r:["data.outputAttempt"],s:'_0?"selected":null'},p:[52,77,2419]}],action:"tryoutput"},f:[{t:2,x:{r:["data.outputAttempt"],s:'_0?"On":"Off"'},p:[53,26,2488]}]},"   [",{p:[55,6,2554],t:7,e:"span",a:{"class":[{t:2,r:"outputState",p:[55,19,2567]}]},f:[{t:2,x:{r:["data.outputting","data.charge"],s:'_0?"Sending":_1>0?"Not Sending":"No Charge"'},p:[55,36,2584]}]},"]"]}," ",{p:[57,3,2689],t:7,e:"ui-section",a:{label:"Target Output"},f:[{p:[58,5,2728],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"data.outputLevelMax",p:[58,26,2749]}],value:[{t:2,r:"data.outputLevel",p:[58,58,2781]}]},f:[{t:2,x:{r:["adata.outputLevel"],s:"Math.round(_0)"},p:[58,80,2803]},"W"]}]}," ",{p:[60,3,2864],t:7,e:"ui-section",a:{label:"Adjust Output"},f:[{p:[61,5,2903],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.outputLevel"],s:'_0==0?"disabled":null'},p:[61,44,2942]}],action:"output",params:'{"target": "min"}'}}," ",{p:[62,5,3038],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.outputLevel"],s:'_0==0?"disabled":null'},p:[62,39,3072]}],action:"output",params:'{"adjust": -10000}'}}," ",{p:[63,5,3169],t:7,e:"ui-button",a:{icon:"pencil",action:"output",params:'{"target": "input"}'},f:["Set"]}," ",{p:[64,5,3259],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.outputLevel","data.outputLevelMax"],s:'_0==_1?"disabled":null'},p:[64,38,3292]}],action:"output",params:'{"adjust": 10000}'}}," ",{p:[65,5,3406],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.outputLevel","data.outputLevelMax"],s:'_0==_1?"disabled":null'},p:[65,43,3444]}],action:"output",params:'{"target": "max"}'}}]}," ",{p:[67,3,3572],t:7,e:"ui-section",a:{label:"Outputting"},f:[{p:[68,3,3606],t:7,e:"span",f:[{t:2,x:{r:["adata.outputUsed"],s:"Math.round(_0)"},p:[68,9,3612]},"W"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],287:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Status"},f:[{p:[2,3,30],t:7,e:"ui-section",a:{label:"Generated Power"},f:[{t:2,x:{r:["adata.generated"],s:"Math.round(_0)"},p:[3,5,71]},"W"]}," ",{p:[5,3,122],t:7,e:"ui-section",a:{label:"Orientation"},f:[{p:[6,5,159],t:7,e:"span",f:[{t:2,x:{r:["adata.angle"],s:"Math.round(_0)"},p:[6,11,165]},"° (",{t:2,r:"data.direction",p:[6,45,199]},")"]}]}," ",{p:[8,3,244],t:7,e:"ui-section",a:{label:"Adjust Angle"},f:[{p:[9,5,282],t:7,e:"ui-button",a:{icon:"step-backward",action:"angle",params:'{"adjust": -15}'},f:["15°"]}," ",{p:[10,5,378],t:7,e:"ui-button",a:{icon:"backward",action:"angle",params:'{"adjust": -5}'},f:["5°"]}," ",{p:[11,5,467],t:7,e:"ui-button",a:{icon:"forward",action:"angle",params:'{"adjust": 5}'},f:["5°"]}," ",{p:[12,5,554],t:7,e:"ui-button",a:{icon:"step-forward",action:"angle",params:'{"adjust": 15}'},f:["15°"]}]}]}," ",{p:[15,1,673],t:7,e:"ui-display",a:{title:"Tracking"},f:[{p:[16,3,705],t:7,e:"ui-section",a:{label:"Tracker Mode"},f:[{p:[17,5,743],t:7,e:"ui-button",a:{icon:"close",state:[{t:2,x:{r:["data.tracking_state"],s:'_0==0?"selected":null'},p:[17,36,774]}],action:"tracking",params:'{"mode": 0}'},f:["Off"]}," ",{p:[19,5,889],t:7,e:"ui-button",a:{icon:"clock-o",state:[{t:2,x:{r:["data.tracking_state"],s:'_0==1?"selected":null'},p:[19,38,922]}],action:"tracking",params:'{"mode": 1}'},f:["Timed"]}," ",{p:[21,5,1039],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.connected_tracker","data.tracking_state"],s:'_0?_1==2?"selected":null:"disabled"'},p:[21,38,1072]}],action:"tracking",params:'{"mode": 2}'},f:["Auto"]}]}," ",{p:[24,3,1239],t:7,e:"ui-section",a:{label:"Tracking Rate"},f:[{p:[25,3,1276],t:7,e:"span",f:[{t:2,x:{r:["adata.tracking_rate"],s:"Math.round(_0)"},p:[25,9,1282]},"°/h (",{t:2,r:"data.rotating_way",p:[25,53,1326]},")"]}]}," ",{p:[27,3,1373],t:7,e:"ui-section",a:{label:"Adjust Rate"},f:[{p:[28,5,1410],t:7,e:"ui-button",a:{icon:"fast-backward",action:"rate",params:'{"adjust": -180}'},f:["180°"]}," ",{p:[29,5,1507],t:7,e:"ui-button",a:{icon:"step-backward",action:"rate",params:'{"adjust": -30}'},f:["30°"]}," ",{p:[30,5,1602],t:7,e:"ui-button",a:{icon:"backward",action:"rate",params:'{"adjust": -5}'},f:["5°"]}," ",{p:[31,5,1690],t:7,e:"ui-button",a:{icon:"forward",action:"rate",params:'{"adjust": 5}'},f:["5°"]}," ",{p:[32,5,1776],t:7,e:"ui-button",a:{icon:"step-forward",action:"rate",params:'{"adjust": 30}'},f:["30°"]}," ",{p:[33,5,1869],t:7,e:"ui-button",a:{icon:"fast-forward",action:"rate",params:'{"adjust": 180}'},f:["180°"]}]}]}," ",{p:{button:[{p:[38,5,2051],t:7,e:"ui-button",a:{icon:"refresh",action:"refresh"},f:["Refresh"]}]},t:7,e:"ui-display",a:{title:"Devices",button:0},f:[" ",{p:[40,2,2130],t:7,e:"ui-section",a:{label:"Solar Tracker"},f:[{p:[41,5,2169],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.connected_tracker"],s:'_0?"good":"bad"'},p:[41,18,2182]}]},f:[{t:2,x:{r:["data.connected_tracker"],s:'_0?"":"Not "'},p:[41,63,2227]},"Found"]}]}," ",{p:[43,2,2296],t:7,e:"ui-section",a:{label:"Solar Panels"},f:[{p:[44,3,2332],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.connected_panels"],s:'_0?"good":"bad"'},p:[44,16,2345]}]},f:[{t:2,x:{r:["adata.connected_panels"],s:"Math.round(_0)"},p:[44,60,2389]}," Panels Connected"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],288:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:{button:[{t:4,f:[{p:[4,7,84],t:7,e:"ui-button",a:{icon:"eject",state:[{t:2,x:{r:["data.hasPowercell"],s:'_0?null:"disabled"'},p:[4,38,115]}],action:"eject"},f:["Eject"]}],n:50,r:"data.open",p:[3,5,60]}]},t:7,e:"ui-display",a:{title:"Power",button:0},f:[" ",{p:[7,3,220],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[8,5,251],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[8,22,268]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":null'},p:[9,14,318]}],state:[{t:2,x:{r:["data.hasPowercell"],s:'_0?null:"disabled"'},p:[9,54,358]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[10,22,422]}]}]}," ",{p:[12,3,479],t:7,e:"ui-section",a:{label:"Cell"},f:[{t:4,f:[{p:[14,7,541],t:7,e:"ui-bar",a:{min:"0",max:"100",value:[{t:2,r:"data.powerLevel",p:[14,40,574]}]},f:[{t:2,x:{r:["adata.powerLevel"],s:"Math.fixed(_0)"},p:[14,61,595]},"%"]}],n:50,r:"data.hasPowercell",p:[13,5,509]},{t:4,n:51,f:[{p:[16,4,652],t:7,e:"span",a:{"class":"bad"},f:["No Cell"]}],r:"data.hasPowercell"}]}]}," ",{p:[20,1,725],t:7,e:"ui-display",a:{title:"Thermostat"},f:[{p:[21,3,759],t:7,e:"ui-section",a:{label:"Current Temperature"},f:[{p:[22,3,802],t:7,e:"span",f:[{t:2,x:{r:["adata.currentTemp"],s:"Math.round(_0)"},p:[22,9,808]},"°C"]}]}," ",{p:[24,2,871],t:7,e:"ui-section",a:{label:"Target Temperature"},f:[{p:[25,3,913],t:7,e:"span",f:[{t:2,x:{r:["adata.targetTemp"],s:"Math.round(_0)"},p:[25,9,919]},"°C"]}]}," ",{t:4,f:[{p:[28,5,1004],t:7,e:"ui-section",a:{label:"Adjust Target"},f:[{p:[29,7,1045],t:7,e:"ui-button",a:{icon:"fast-backward",state:[{t:2,x:{r:["data.targetTemp","data.minTemp"],s:'_0>_1?null:"disabled"'},p:[29,46,1084]}],action:"target",params:'{"adjust": -20}'}}," ",{p:[30,7,1189],t:7,e:"ui-button",a:{icon:"backward",state:[{t:2,x:{r:["data.targetTemp","data.minTemp"],s:'_0>_1?null:"disabled"'},p:[30,41,1223]}],action:"target",params:'{"adjust": -5}'}}," ",{p:[31,7,1327],t:7,e:"ui-button",a:{icon:"pencil",action:"target",params:'{"target": "input"}'},f:["Set"]}," ",{p:[32,7,1419],t:7,e:"ui-button",a:{icon:"forward",state:[{t:2,x:{r:["data.targetTemp","data.maxTemp"],s:'_0<_1?null:"disabled"'},p:[32,40,1452]}],action:"target",params:'{"adjust": 5}'}}," ",{p:[33,7,1555],t:7,e:"ui-button",a:{icon:"fast-forward",state:[{t:2,x:{r:["data.targetTemp","data.maxTemp"],s:'_0<_1?null:"disabled"'},p:[33,45,1593]}],action:"target",params:'{"adjust": 20}'}}]}],n:50,r:"data.open",p:[27,3,982]}," ",{p:[36,3,1719],t:7,e:"ui-section",a:{label:"Mode"},f:[{t:4,f:[{p:[38,7,1771],t:7,e:"ui-button",a:{icon:"long-arrow-up",state:[{t:2,x:{r:["data.mode"],s:'_0=="heat"?"selected":null'},p:[38,46,1810]}],action:"mode",params:'{"mode": "heat"}'},f:["Heat"]}," ",{p:[39,7,1918],t:7,e:"ui-button",a:{icon:"long-arrow-down",state:[{t:2,x:{r:["data.mode"],s:'_0=="cool"?"selected":null'},p:[39,48,1959]}],action:"mode",params:'{"mode": "cool"}'},f:["Cool"]}," ",{p:[40,7,2067],t:7,e:"ui-button",a:{icon:"arrows-v",state:[{t:2,x:{r:["data.mode"],s:'_0=="auto"?"selected":null'},p:[40,41,2101]}],action:"mode",params:'{"mode": "auto"}'},f:["Auto"]}],n:50,r:"data.open",p:[37,3,1747]},{t:4,n:51,f:[{p:[42,4,2217],t:7,e:"span",f:[{t:2,x:{r:["text","data.mode"],s:"_0.titleCase(_1)"},p:[42,10,2223]}]}],r:"data.open"}]}]}]},e.exports=a.extend(r.exports)},{205:205}],289:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,31],t:7,e:"ui-display",a:{title:[{t:2,r:"class",p:[2,22,50]}," Alarms"]},f:[{p:[3,5,74],t:7,e:"ul",f:[{t:4,f:[{p:[5,9,107],t:7,e:"li",f:[{t:2,r:".",p:[5,13,111]}]}],n:52,r:".",p:[4,7,86]},{t:4,n:51,f:[{p:[7,9,147],t:7,e:"li",f:["System Nominal"]}],r:"."}]}]}],n:52,i:"class",r:"data.alarms",p:[1,1,0]}]},e.exports=a.extend(r.exports)},{205:205}],290:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[2,1,1],t:7,e:"div",a:{style:"float: left"},f:[{p:[3,2,28],t:7,e:"div",a:{"class":"item"},f:[{p:[4,3,49],t:7,e:"table",f:[{p:[4,10,56],t:7,e:"tr",f:[{t:4,f:[{p:[6,4,121],t:7,e:"td",f:[{p:[6,8,125],t:7,e:"img",a:{src:[{t:2,r:"data.PC_batteryicon",p:[6,18,135]}]}}]}],n:50,x:{r:["data.PC_batteryicon","data.PC_showbatteryicon"],s:"_0&&_1"},p:[5,3,63]}," ",{t:4,f:[{p:[9,4,234],t:7,e:"td",f:[{p:[9,8,238],t:7,e:"b",f:[{t:2,r:"data.PC_batterypercent",p:[9,11,241]}]}]}],n:50,x:{r:["data.PC_batterypercent","data.PC_showbatteryicon"],s:"_0&&_1"},p:[8,3,173]}," ",{t:4,f:[{p:[12,4,313],t:7,e:"td",f:[{p:[12,8,317],t:7,e:"img",a:{src:[{t:2,r:"data.PC_ntneticon",p:[12,18,327]}]}}]}],n:50,r:"data.PC_ntneticon",p:[11,3,284]}," ",{t:4,f:[{p:[15,4,394],t:7,e:"td",f:[{p:[15,8,398],t:7,e:"img",a:{src:[{t:2,r:"data.PC_apclinkicon",p:[15,18,408]}]}}]}],n:50,r:"data.PC_apclinkicon",p:[14,3,363]}," ",{t:4,f:[{p:[18,4,477],t:7,e:"td",f:[{p:[18,8,481],t:7,e:"b",f:[{t:2,r:"data.PC_stationtime",p:[18,11,484]},{p:[18,34,507],t:7,e:"b",f:[]}]}]}],n:50,r:"data.PC_stationtime",p:[17,3,446]}," ",{t:4,f:[{p:[21,4,559],t:7,e:"td",f:[{p:[21,8,563],t:7,e:"img",a:{src:[{t:2,r:"icon",p:[21,18,573]}]}}]}],n:52,r:"data.PC_programheaders",p:[20,3,523]}]}]}]}]}," ",{p:[26,1,622],t:7,e:"div",a:{style:"float: right"},f:[{p:[27,2,650],t:7,e:"table",f:[{p:[27,9,657],t:7,e:"tr",f:[{p:[28,3,664],t:7,e:"td",f:[{p:[28,7,668],t:7,e:"ui-button",a:{action:"PC_shutdown"},f:["Shutdown"]}," ",{t:4,f:[{p:[30,4,758],t:7,e:"td",f:[{p:[30,8,762],t:7,e:"ui-button",a:{action:"PC_exit"},f:["EXIT PROGRAM"]}]},{p:[31,4,818],t:7,e:"td",f:[{p:[31,8,822],t:7,e:"ui-button",a:{action:"PC_minimize"},f:["Minimize Program"]}]}],n:50,r:"data.PC_showexitprogram",p:[29,3,723]}]}]}]}]}," ",{p:[35,1,910],t:7,e:"div",a:{style:"clear: both"},f:[{t:4,f:[{p:[38,3,967],t:7,e:"ui-display",a:{title:[{t:2,r:"class",p:[38,22,986]}," Alarms"]},f:[{p:[39,5,1009],t:7,e:"ul",f:[{t:4,f:[{p:[41,9,1040],t:7,e:"li",f:[{t:2,r:".",p:[41,13,1044]}]}],n:52,r:".",p:[40,7,1020]},{t:4,n:51,f:[{p:[43,9,1078],t:7,e:"li",f:["System Nominal"]}],r:"."}]}]}],n:52,i:"class",r:"data.alarms",p:[37,1,937]}]}]},e.exports=a.extend(r.exports)},{205:205}],291:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{t:4,f:[{p:[2,3,41],t:7,e:"ui-notice",f:[{p:[3,5,57],t:7,e:"span",f:["Biological entity detected in contents. Please remove."]}]}],n:50,x:{r:["data.occupied","data.safeties"],s:"_0&&_1"},p:[1,1,0]},{t:4,f:[{p:[7,3,173],t:7,e:"ui-notice",f:[{p:[8,5,189],t:7,e:"span",f:["Contents are being disinfected. Please wait."]}]}],n:50,r:"data.uv_active",p:[6,1,148]},{t:4,n:51,f:[{p:{button:[{t:4,f:[{p:[13,25,357],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.locked"],s:'_0?"unlock":"lock"'},p:[13,42,374]}],action:"lock"},f:[{t:2,x:{r:["data.locked"],s:'_0?"Unlock":"Lock"'},p:[13,93,425]}]}],n:50,x:{r:["data.open"],s:"!_0"},p:[13,7,339]}," ",{t:4,f:[{p:[14,27,506],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.open"],s:'_0?"sign-out":"sign-in"'},p:[14,44,523]}],action:"door"},f:[{t:2,x:{r:["data.open"],s:'_0?"Close":"Open"'},p:[14,98,577]}]}],n:50,x:{r:["data.locked"],s:"!_0"},p:[14,7,486]}]},t:7,e:"ui-display",a:{title:"Storage",button:0},f:[" ",{t:4,f:[{p:[17,7,676],t:7,e:"ui-notice",f:[{p:[18,9,696],t:7,e:"span",f:["Unit Locked"]}]}],n:50,r:"data.locked",p:[16,5,650]},{t:4,n:51,f:[{t:4,n:50,x:{r:["data.open"],s:"_0"},f:[{p:[21,9,773],t:7,e:"ui-section",a:{label:"Helmet"},f:[{p:[22,11,811],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.helmet"],s:'_0?"square":"square-o"'},p:[22,28,828]}],state:[{t:2,x:{r:["data.helmet"],s:'_0?null:"disabled"'},p:[22,75,875]}],action:"dispense",params:'{"item": "helmet"}'},f:[{t:2,x:{r:["data.helmet"],s:'_0||"Empty"'},p:[23,59,970]}]}]}," ",{p:[25,9,1039],t:7,e:"ui-section",a:{label:"Suit"},f:[{p:[26,11,1075],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.suit"],s:'_0?"square":"square-o"'},p:[26,28,1092]}],state:[{t:2,x:{r:["data.suit"],s:'_0?null:"disabled"'},p:[26,74,1138]}],action:"dispense",params:'{"item": "suit"}'},f:[{t:2,x:{r:["data.suit"],s:'_0||"Empty"'},p:[27,57,1229]}]}]}," ",{p:[29,9,1296],t:7,e:"ui-section",a:{label:"Mask"},f:[{p:[30,11,1332],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.mask"],s:'_0?"square":"square-o"'},p:[30,28,1349]}],state:[{t:2,x:{r:["data.mask"],s:'_0?null:"disabled"'},p:[30,74,1395]}],action:"dispense",params:'{"item": "mask"}'},f:[{t:2,x:{r:["data.mask"],s:'_0||"Empty"'},p:[31,57,1486]}]}]}," ",{p:[33,9,1553],t:7,e:"ui-section",a:{label:"Storage"},f:[{p:[34,11,1592],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.storage"],s:'_0?"square":"square-o"'},p:[34,28,1609]}],state:[{t:2,x:{r:["data.storage"],s:'_0?null:"disabled"'},p:[34,77,1658]}],action:"dispense",params:'{"item": "storage"}'},f:[{t:2,x:{r:["data.storage"],s:'_0||"Empty"'},p:[35,60,1755]}]}]}]},{t:4,n:50,x:{r:["data.open"],s:"!(_0)"},f:[" ",{p:[38,7,1836],t:7,e:"ui-button",a:{icon:"recycle",state:[{t:2,x:{r:["data.occupied","data.safeties"],s:'_0&&_1?"disabled":null'},p:[38,40,1869]}],action:"uv"},f:["Disinfect"]}]}],r:"data.locked"}]}],r:"data.uv_active"}]},e.exports=a.extend(r.exports)},{205:205}],292:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{p:[2,5,18],t:7,e:"ui-section",a:{label:"Dispense"},f:[{p:[3,9,57],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.plasma"],s:'_0?"square":"square-o"'},p:[3,26,74]}],state:[{t:2,x:{r:["data.plasma"],s:'_0?null:"disabled"'},p:[3,74,122]}],action:"plasma"},f:["Plasma (",{t:2,x:{r:["adata.plasma"],s:"Math.round(_0)"},p:[4,37,196]},")"]}," ",{p:[5,9,247],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.oxygen"],s:'_0?"square":"square-o"'},p:[5,26,264]}],state:[{t:2,x:{r:["data.oxygen"],s:'_0?null:"disabled"'},p:[5,74,312]}],action:"oxygen"},f:["Oxygen (",{t:2,x:{r:["adata.oxygen"],s:"Math.round(_0)"},p:[6,37,386]},")"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],293:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={computed:{tankPressureState:function(){var t=this.get("data.tankPressure");return t>=200?"good":t>=100?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[14,1,282],t:7,e:"ui-notice",f:[{p:[15,3,296],t:7,e:"span",f:["The regulator ",{t:2,x:{r:["data.connected"],s:'_0?"is":"is not"'},p:[15,23,316]}," connected to a mask."]}]}," ",{p:[17,1,393],t:7,e:"ui-display",f:[{p:[18,3,408],t:7,e:"ui-section",a:{label:"Tank Pressure"},f:[{p:[19,7,449],t:7,e:"ui-bar",a:{min:"0",max:"1013",value:[{t:2,r:"data.tankPressure",p:[19,41,483]}],state:[{t:2,r:"tankPressureState",p:[20,16,521]}]},f:[{t:2,x:{r:["adata.tankPressure"],s:"Math.round(_0)"},p:[20,39,544]}," kPa"]}]}," ",{p:[22,3,610],t:7,e:"ui-section",a:{label:"Release Pressure"},f:[{p:[23,5,652],t:7,e:"ui-bar",a:{min:[{t:2,r:"data.minReleasePressure",p:[23,18,665]}],max:[{t:2,r:"data.maxReleasePressure",p:[23,52,699]}],value:[{t:2,r:"data.releasePressure",p:[24,14,741]}]},f:[{t:2,x:{r:["adata.releasePressure"],s:"Math.round(_0)"},p:[24,40,767]}," kPa"]}]}," ",{p:[26,3,836],t:7,e:"ui-section",a:{label:"Pressure Regulator"},f:[{p:[27,5,880],t:7,e:"ui-button",a:{icon:"refresh",state:[{t:2,x:{r:["data.releasePressure","data.defaultReleasePressure"],s:'_0!=_1?null:"disabled"'},p:[27,38,913]}],action:"pressure",params:'{"pressure": "reset"}'},f:["Reset"]}," ",{p:[29,5,1067],t:7,e:"ui-button",a:{icon:"minus",state:[{t:2,x:{r:["data.releasePressure","data.minReleasePressure"],s:'_0>_1?null:"disabled"'},p:[29,36,1098]}],action:"pressure",params:'{"pressure": "min"}'},f:["Min"]}," ",{p:[31,5,1243],t:7,e:"ui-button",a:{icon:"pencil",action:"pressure",params:'{"pressure": "input"}'},f:["Set"]}," ",{p:[32,5,1337],t:7,e:"ui-button",a:{icon:"plus",state:[{t:2,x:{r:["data.releasePressure","data.maxReleasePressure"],s:'_0<_1?null:"disabled"'},p:[32,35,1367]}],action:"pressure",params:'{"pressure": "max"}'},f:["Max"]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],294:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",a:{title:"Status"},f:[{p:[2,5,33],t:7,e:"ui-section",a:{label:"Temperature"},f:[{p:[3,9,75],t:7,e:"span",f:[{t:2,x:{r:["adata.temperature"],s:"Math.fixed(_0,2)"},p:[3,15,81]}," K"]}]}," ",{p:[5,5,151],t:7,e:"ui-section",a:{label:"Pressure"},f:[{p:[6,9,190],t:7,e:"span",f:[{t:2,x:{r:["adata.pressure"],s:"Math.fixed(_0,2)"},p:[6,15,196]}," kPa"]}]}]}," ",{p:[9,1,276],t:7,e:"ui-display",a:{title:"Controls"},f:[{p:[10,5,311],t:7,e:"ui-section",a:{label:"Power"},f:[{p:[11,9,347],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.on"],s:'_0?"power-off":"close"'},p:[11,26,364]}],style:[{t:2,x:{r:["data.on"],s:'_0?"selected":null'},p:[11,70,408]}],action:"power"},f:[{t:2,x:{r:["data.on"],s:'_0?"On":"Off"'},p:[12,28,469]}]}]}," ",{p:[14,5,531],t:7,e:"ui-section",a:{label:"Target Temperature"},f:[{p:[15,9,580],t:7,e:"ui-button",a:{icon:"fast-backward",style:[{t:2,x:{r:["data.target","data.min"],s:'_0==_1?"disabled":null'},p:[15,48,619]}],action:"target",params:'{"adjust": -20}'}}," ",{p:[17,9,733],t:7,e:"ui-button",a:{icon:"backward",style:[{t:2,x:{r:["data.target","data.min"],s:'_0==_1?"disabled":null'},p:[17,43,767]}],action:"target",params:'{"adjust": -5}'}}," ",{p:[19,9,880],t:7,e:"ui-button",a:{icon:"pencil",action:"target",params:'{"target": "input"}'},f:[{t:2,x:{r:["adata.target"],s:"Math.fixed(_0,2)"},p:[19,79,950]}]}," ",{p:[20,9,1003],t:7,e:"ui-button",a:{icon:"forward",style:[{t:2,x:{r:["data.target","data.max"],s:'_0==_1?"disabled":null'},p:[20,42,1036]}],action:"target",params:'{"adjust": 5}'}}," ",{p:[22,9,1148],t:7,e:"ui-button",a:{icon:"fast-forward",style:[{t:2,x:{r:["data.target","data.max"],s:'_0==_1?"disabled":null'},p:[22,47,1186]}],action:"target",params:'{"adjust": 20}'}}]}]}]},e.exports=a.extend(r.exports)},{205:205}],295:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{},oninit:function(){this.on({hover:function(t){var e=this.get("data.telecrystals");e>=t.context.params.cost&&this.set("hovered",t.context.params)},unhover:function(t){this.set("hovered")}})}}}(r),r.exports.template={v:3,t:[" ",{p:{button:[{t:4,f:[{p:[23,7,482],t:7,e:"ui-button",a:{icon:"lock",action:"lock"},f:["Lock"]}],n:50,r:"data.lockable",p:[22,5,453]}]},t:7,e:"ui-display",a:{title:"Uplink",button:0},f:[" ",{p:[26,3,568],t:7,e:"ui-section",a:{label:"Telecrystals",right:0},f:[{p:[27,5,613],t:7,e:"span",a:{"class":[{t:2,x:{r:["data.telecrystals"],s:'_0>0?"good":"bad"'},p:[27,18,626]}]},f:[{t:2,r:"data.telecrystals",p:[27,62,670]}," TC"]}]}]}," ",{t:4,f:[{p:[31,3,764],t:7,e:"ui-display",f:[{p:[32,2,779],t:7,e:"ui-button",a:{action:"select",params:['{"category": "',{t:2,r:"name",p:[32,51,828]},'"}']},f:[{t:2,r:"name",p:[32,63,840]}]}," ",{t:4,f:[{p:[34,4,883],t:7,e:"ui-section",a:{label:[{t:2,r:"name",p:[34,23,902]}],candystripe:0,right:0},f:[{p:[35,3,934],t:7,e:"ui-button",a:{tooltip:[{t:2,r:"name",p:[35,23,954]},": ",{t:2,r:"desc",p:[35,33,964]}],"tooltip-side":"left",state:[{t:2,x:{r:["data.telecrystals","hovered.cost","cost","hovered.item","name"],s:'_0<_2||(_0-_1<_2&&_3!=_4)?"disabled":null'},p:[36,12,1006]}],action:"buy",params:['{"category": "',{t:2,r:"category",p:[37,40,1165]},'", "item": ',{t:2,r:"name",p:[37,63,1188]},', "cost": ',{t:2,r:"cost",p:[37,81,1206]},"}"]},v:{hover:"hover",unhover:"unhover"},f:[{t:2,r:"cost",p:[38,43,1260]}," TC"]}]}],n:52,r:"items",p:[33,2,863]}]}],n:52,r:"data.categories",p:[30,1,735]}]},e.exports=a.extend(r.exports)},{205:205}],296:[function(t,e,n){var a=t(205),r={exports:{}};!function(t){"use strict";t.exports={data:{healthState:function(t){var e=this.get("data.vr_avatar.maxhealth");return t>e/1.5?"good":t>e/3?"average":"bad"}}}}(r),r.exports.template={v:3,t:[" ",{p:[14,1,279],t:7,e:"ui-display",f:[{t:4,f:[{p:[16,3,318],t:7,e:"ui-display",a:{title:"Virtual Avatar"},f:[{p:[17,4,357],t:7,e:"ui-section",a:{label:"Name"},f:[{t:2,r:"data.vr_avatar.name",p:[18,5,387]}]}," ",{p:[20,4,431],t:7,e:"ui-section",a:{label:"Status"},f:[{t:2,r:"data.vr_avatar.status",p:[21,5,463]}]}," ",{p:[23,4,509],t:7,e:"ui-section",a:{label:"Health"},f:[{p:[24,5,541],t:7,e:"ui-bar",a:{min:"0",max:[{t:2,r:"adata.vr_avatar.maxhealth",p:[24,26,562]}],value:[{t:2,r:"adata.vr_avatar.health",p:[24,64,600]}],state:[{t:2,x:{r:["healthState","adata.vr_avatar.health"],s:"_0(_1)"},p:[24,99,635]}]},f:[{t:2,x:{r:["adata.vr_avatar.health"],s:"Math.round(_0)"},p:[24,140,676]},"/",{t:2,r:"adata.vr_avatar.maxhealth",p:[24,179,715]}]}]}]}],n:50,r:"data.vr_avatar",p:[15,2,293]},{t:4,n:51,f:[{p:[28,3,799],t:7,e:"ui-display",a:{title:"Virtual Avatar"},f:["No Virtual Avatar detected"]}],r:"data.vr_avatar"}," ",{p:[32,2,891],t:7,e:"ui-display",a:{title:"VR Commands"},f:[{p:[33,3,926],t:7,e:"ui-button",a:{icon:[{t:2,x:{r:["data.toggle_open"],s:'_0?"times":"plus"'},p:[33,20,943]}],action:"toggle_open"},f:[{t:2,x:{r:["data.toggle_open"],s:'_0?"Close":"Open"'},p:[34,4,1009]}," the VR Sleeper"]}," ",{t:4,f:[{p:[37,4,1108],t:7,e:"ui-button",a:{icon:"signal",action:"vr_connect"},f:["Connect to VR"]}],n:50,r:"data.isoccupant",p:[36,3,1081]}," ",{t:4,f:[{p:[42,4,1226],t:7,e:"ui-button",a:{icon:"ban",action:"delete_avatar"},f:["Delete Virtual Avatar"]}],n:50,r:"data.vr_avatar",p:[41,3,1200]}]}]}]},e.exports=a.extend(r.exports)},{205:205}],297:[function(t,e,n){var a=t(205),r={exports:{}};r.exports.template={v:3,t:[{p:[1,1,0],t:7,e:"ui-display",f:[{t:4,f:[{p:[3,5,40],t:7,e:"ui-section",a:{label:[{t:2,r:"color",p:[3,24,59]},{t:2,x:{r:["wire"],s:'_0?" ("+_0+")":""'},p:[3,33,68]}],labelcolor:[{t:2,r:"color",p:[3,80,115]}],candystripe:0,right:0},f:[{p:[4,7,151],t:7,e:"ui-button",a:{action:"cut",params:['{"wire":"',{t:2,r:"color", +p:[4,48,192]},'"}']},f:[{t:2,x:{r:["cut"],s:'_0?"Mend":"Cut"'},p:[4,61,205]}]}," ",{p:[5,7,248],t:7,e:"ui-button",a:{action:"pulse",params:['{"wire":"',{t:2,r:"color",p:[5,50,291]},'"}']},f:["Pulse"]}," ",{p:[6,7,328],t:7,e:"ui-button",a:{action:"attach",params:['{"wire":"',{t:2,r:"color",p:[6,51,372]},'"}']},f:[{t:2,x:{r:["attached"],s:'_0?"Detach":"Attach"'},p:[6,64,385]}]}]}],n:52,r:"data.wires",p:[2,3,15]}]}," ",{t:4,f:[{p:[11,3,498],t:7,e:"ui-display",f:[{t:4,f:[{p:[13,7,543],t:7,e:"ui-section",f:[{t:2,r:".",p:[13,19,555]}]}],n:52,r:"data.status",p:[12,5,515]}]}],n:50,r:"data.status",p:[10,1,476]}]},e.exports=a.extend(r.exports)},{205:205}],298:[function(t,e,n){(function(e){"use strict";var n=t(205),a=e.interopRequireDefault(n);t(195),t(1),t(191),t(194);var r=t(299),i=e.interopRequireDefault(r),o=t(300),s=t(192),p=t(193),u=e.interopRequireDefault(p);a["default"].DEBUG=/minified/.test(function(){}),Object.assign(Math,t(304)),window.initialize=function(e){window.tgui||(window.tgui=new i["default"]({el:"#container",data:function(){var n=JSON.parse(e);return{constants:t(301),text:t(305),config:n.config,data:n.data,adata:n.data}}}))};var c=document.getElementById("data"),l=c.textContent,f=c.getAttribute("data-ref");"{}"!==l&&(window.initialize(l),c.remove()),(0,o.act)(f,"tgui:initialize"),(0,s.loadCSS)("font-awesome.min.css");var d=new u["default"]("FontAwesome");d.check("").then(function(){return document.body.classList.add("icons")})["catch"](function(){return document.body.classList.add("no-icons")})}).call(this,t("babel/external-helpers"))},{1:1,191:191,192:192,193:193,194:194,195:195,205:205,299:299,300:300,301:301,304:304,305:305,"babel/external-helpers":"babel/external-helpers"}],299:[function(t,e,n){var a=t(205),r={exports:{}};!function(e){"use strict";var n=t(300),a=t(302);e.exports={components:{"ui-bar":t(206),"ui-button":t(207),"ui-display":t(208),"ui-input":t(209),"ui-linegraph":t(210),"ui-notice":t(211),"ui-section":t(213),"ui-subdisplay":t(214),"ui-tabs":t(215)},events:{enter:t(203).enter,space:t(203).space},transitions:{fade:t(204)},onconfig:function(){var e=this.get("config.interface"),n={ai_restorer:t(219),airalarm:t(220),"airalarm/back":t(221),"airalarm/modes":t(222),"airalarm/scrubbers":t(223),"airalarm/status":t(224),"airalarm/thresholds":t(225),"airalarm/vents":t(226),airlock_electronics:t(227),apc:t(228),atmos_alert:t(229),atmos_control:t(230),atmos_filter:t(231),atmos_mixer:t(232),atmos_pump:t(233),brig_timer:t(234),bsa:t(235),canister:t(236),cargo:t(237),cellular_emporium:t(238),chem_dispenser:t(239),chem_heater:t(240),chem_master:t(241),clockwork_slab:t(242),computer_fabricator:t(243),computer_main:t(244),crayon:t(245),cryo:t(246),disposal_unit:t(247),dna_vault:t(248),eightball:t(249),emergency_shuttle_console:t(250),engraved_message:t(251),error:t(252),file_manager:t(253),firealarm:t(254),gulag_console:t(255),gulag_item_reclaimer:t(256),identification_computer:t(257),implantchair:t(258),intellicard:t(259),keycard_auth:t(260),labor_claim_console:t(261),laptop_configuration:t(262),mech_bay_power_console:t(263),mulebot:t(264),ntnet_chat:t(265),ntnet_dos:t(266),ntnet_downloader:t(267),ntnet_monitor:t(268),ntnet_relay:t(269),ntnet_transfer:t(270),nuclear_bomb:t(271),personal_crafting:t(272),portable_pump:t(273),portable_scrubber:t(274),power_monitor:t(275),power_monitor_prog:t(276),radio:t(277),revelation:t(278),sat_control:t(279),shuttle_manipulator:t(280),"shuttle_manipulator/modification":t(281),"shuttle_manipulator/status":t(282),"shuttle_manipulator/templates":t(283),sleeper:t(284),slime_swap_body:t(285),smes:t(286),solar_control:t(287),space_heater:t(288),station_alert:t(289),station_alert_prog:t(290),suit_storage_unit:t(291),tank_dispenser:t(292),tanks:t(293),thermomachine:t(294),uplink:t(295),vr_sleeper:t(296),wires:t(297)};e in n?this.components["interface"]=n[e]:this.components["interface"]=n.error},oninit:function(){this.observe("config.style",function(t,e,n){t&&document.body.classList.add(t),e&&document.body.classList.remove(e)})},oncomplete:function(){if(this.get("config.locked")){var t=(0,a.lock)(window.screenLeft,window.screenTop),e=t.x,r=t.y;(0,n.winset)(this.get("config.window"),"pos",e+","+r)}(0,n.winset)("mapwindow.map","focus",!0)}}}(r),r.exports.template={v:3,t:[" "," "," "," ",{p:[56,1,1819],t:7,e:"titlebar",f:[{t:3,r:"config.title",p:[56,11,1829]}]}," ",{p:[57,1,1859],t:7,e:"main",f:[{p:[58,3,1868],t:7,e:"warnings"}," ",{p:[59,3,1882],t:7,e:"interface"}]}," ",{t:4,f:[{p:[62,3,1929],t:7,e:"resize"}],n:50,r:"config.titlebar",p:[61,1,1903]}]},r.exports.components=r.exports.components||{};var i={warnings:t(218),titlebar:t(217),resize:t(212)};for(var o in i)i.hasOwnProperty(o)&&(r.exports.components[o]=i[o]);e.exports=a.extend(r.exports)},{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,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,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,300:300,302:302}],300:[function(t,e,n){"use strict";function a(){var t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],e=arguments.length<=1||void 0===arguments[1]?"":arguments[1];return"byond://"+e+"?"+Object.keys(t).map(function(e){return o(e)+"="+o(t[e])}).join("&")}function r(t,e){var n=arguments.length<=2||void 0===arguments[2]?{}:arguments[2];window.location.href=a(Object.assign({src:t,action:e},n))}function i(t,e,n){var r;window.location.href=a((r={},r[t+"."+e]=n,r),"winset")}n.__esModule=!0,n.href=a,n.act=r,n.winset=i;var o=encodeURIComponent},{}],301:[function(t,e,n){"use strict";n.__esModule=!0;n.UI_INTERACTIVE=2,n.UI_UPDATE=1,n.UI_DISABLED=0,n.UI_CLOSE=-1},{}],302:[function(t,e,n){"use strict";function a(t,e){return 0>t?t=0:t+window.innerWidth>window.screen.availWidth&&(t=window.screen.availWidth-window.innerWidth),0>e?e=0:e+window.innerHeight>window.screen.availHeight&&(e=window.screen.availHeight-window.innerHeight),{x:t,y:e}}function r(t){if(t.preventDefault(),this.get("drag")){if(this.get("x")){var e=t.screenX-this.get("x")+window.screenLeft,n=t.screenY-this.get("y")+window.screenTop;if(this.get("config.locked")){var r=a(e,n);e=r.x,n=r.y}(0,s.winset)(this.get("config.window"),"pos",e+","+n)}this.set({x:t.screenX,y:t.screenY})}}function i(t,e){return t=Math.clamp(100,window.screen.width,t),e=Math.clamp(100,window.screen.height,e),{x:t,y:e}}function o(t){if(t.preventDefault(),this.get("resize")){if(this.get("x")){var e=t.screenX-this.get("x")+window.innerWidth,n=t.screenY-this.get("y")+window.innerHeight,a=i(e,n);e=a.x,n=a.y,(0,s.winset)(this.get("config.window"),"size",e+","+n)}this.set({x:t.screenX,y:t.screenY})}}n.__esModule=!0,n.lock=a,n.drag=r,n.sane=i,n.resize=o;var s=t(300)},{300:300}],303:[function(t,e,n){"use strict";function a(t,e){for(var n=t,a=Array.isArray(n),i=0,n=a?n:n[Symbol.iterator]();;){var o;if(a){if(i>=n.length)break;o=n[i++]}else{if(i=n.next(),i.done)break;o=i.value}var s=o;s.textContent.toLowerCase().includes(e)?(s.style.display="",r(s,e)):s.style.display="none"}}function r(t,e){for(var n=t.queryAll("section"),a=t.query("header").textContent.toLowerCase().includes(e),r=n,i=Array.isArray(r),o=0,r=i?r:r[Symbol.iterator]();;){var s;if(i){if(o>=r.length)break;s=r[o++]}else{if(o=r.next(),o.done)break;s=o.value}var p=s;a||p.textContent.toLowerCase().includes(e)?p.style.display="":p.style.display="none"}}n.__esModule=!0,n.filterMulti=a,n.filter=r},{}],304:[function(t,e,n){"use strict";function a(t,e,n){return Math.max(t,Math.min(n,e))}function r(t){var e=arguments.length<=1||void 0===arguments[1]?1:arguments[1];return+(Math.round(t+"e"+e)+"e-"+e)}n.__esModule=!0,n.clamp=a,n.fixed=r},{}],305:[function(t,e,n){"use strict";function a(t){return t[0].toUpperCase()+t.slice(1).toLowerCase()}function r(t){return t.replace(/\w\S*/g,a)}function i(t,e){for(t=""+t;t.length1){for(var p=Array(o),u=0;o>u;u++)p[u]=arguments[u+3];n.children=p}return{$$typeof:t,type:e,key:void 0===a?null:""+a,ref:null,props:n,_owner:null}}}(),e.asyncToGenerator=function(t){return function(){var e=t.apply(this,arguments);return new Promise(function(t,n){function a(r,i){try{var o=e[r](i),s=o.value}catch(p){return void n(p)}return o.done?void t(s):Promise.resolve(s).then(function(t){return a("next",t)},function(t){return a("throw",t)})}return a("next")})}},e.classCallCheck=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},e.createClass=function(){function t(t,e){for(var n=0;n=0||Object.prototype.hasOwnProperty.call(t,a)&&(n[a]=t[a]);return n},e.possibleConstructorReturn=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e},e.selfGlobal=void 0===t?self:t,e.set=function a(t,e,n,r){var i=Object.getOwnPropertyDescriptor(t,e);if(void 0===i){var o=Object.getPrototypeOf(t);null!==o&&a(o,e,n,r)}else if("value"in i&&i.writable)i.value=n;else{var s=i.set;void 0!==s&&s.call(r,n)}return n},e.slicedToArray=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")}}(),e.slicedToArrayLoose=function(t,e){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t)){for(var n,a=[],r=t[Symbol.iterator]();!(n=r.next()).done&&(a.push(n.value),!e||a.length!==e););return a}throw new TypeError("Invalid attempt to destructure non-iterable instance")},e.taggedTemplateLiteral=function(t,e){return Object.freeze(Object.defineProperties(t,{raw:{value:Object.freeze(e)}}))},e.taggedTemplateLiteralLoose=function(t,e){return t.raw=e,t},e.temporalRef=function(t,e,n){if(t===n)throw new ReferenceError(e+" is not defined - temporal dead zone");return t},e.temporalUndefined={},e.toArray=function(t){return Array.isArray(t)?t:Array.from(t)},e.toConsumableArray=function(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e {{Math.round(adata.cellTemperature)}} K - - {{data.isOpen ? "Open" : "Closed"}} - {{data.autoEject ? "Auto" : "Manual"}} - + + {{data.isOpen ? "Open" : "Closed"}} + {{data.autoEject ? "Auto" : "Manual"}} + {{#partial button}} diff --git a/tgui/src/interfaces/eightball.ract b/tgui/src/interfaces/eightball.ract new file mode 100644 index 0000000000..f324919f15 --- /dev/null +++ b/tgui/src/interfaces/eightball.ract @@ -0,0 +1,14 @@ +{{#if data.shaking}} + + + {{#each data.answers}} + {{answer}} ({{amount}}) + + {{/each}} + + +{{else}} + The eightball is not currently being shaken. +{{/if}} diff --git a/tools/tgstation-server/Update Server.bat b/tools/tgstation-server/Update Server.bat index 5d88a972a5..f7e48f5fe8 100644 --- a/tools/tgstation-server/Update Server.bat +++ b/tools/tgstation-server/Update Server.bat @@ -12,13 +12,6 @@ if exist updating.lk ( echo Please be double sure that an update script is not currently running, if you think one might be, close this window. otherwise: pause ) -if exist rotating.lk ( - echo ERROR! A current map rotation operation has been detected running. IT IS STRONGLY RECOMMENDED YOU DO NOT UPDATE RIGHT NOW. if you know this is a mistake, and that the game server is not currently rotating the map: - pause - echo IT IS STRONGLY RECOMMENDED YOU DO NOT UPDATE RIGHT NOW. If a map rotation script runs at the same time as an update script the server will generally break in ways not trivial to recover from. Are you REALLY sure? Please close this window if you are not, otherwise: - pause -) -@del /F /Q rotating.lk >nul 2>nul echo lock>updating.lk rem if the first arg to nudge.py is not a channel, it is treated as the "source" diff --git a/tools/tgstation-server/bin/build.bat b/tools/tgstation-server/bin/build.bat index ecd67d6133..6b9163fe86 100644 --- a/tools/tgstation-server/bin/build.bat +++ b/tools/tgstation-server/bin/build.bat @@ -7,13 +7,6 @@ if defined AB set DME_FOLDER=gamecode\%AB%\ set DME_LOCATION=%DME_FOLDER%%PROJECTNAME%.dme set MDME_LOCATION=%DME_FOLDER%%PROJECTNAME%.mdme -@del %MDME_LOCATION% >nul 2>nul -if defined MAPROTATE set MAPFILE=%MAPROTATE% -if not defined MAPFILE goto BUILD - -echo #define MAP_OVERRIDE >>%MDME_LOCATION% -echo #include "_maps\%MAPFILE%.dm" >>%MDME_LOCATION% - :BUILD echo #define SERVERTOOLS 1 >>%MDME_LOCATION% type %DME_LOCATION% >>%MDME_LOCATION% diff --git a/tools/travis/build_byond.sh b/tools/travis/build_byond.sh index ac50562db7..27c9c71569 100755 --- a/tools/travis/build_byond.sh +++ b/tools/travis/build_byond.sh @@ -5,11 +5,18 @@ set -e shopt -s globstar if [ "$BUILD_TOOLS" = false ]; then - (! grep 'step_[xy]' _maps/**/*.dmm) + if grep 'step_[xy]' _maps/**/*.dmm; then + echo "step_[xy] variables detected in maps, please remove them." + exit 1 + fi; + if grep '/turf\s*[,\){]' _maps/**/*.dmm; then + echo "base /turf path use detected in maps, please replace with proper paths." + exit 1 + fi; source $HOME/BYOND-${BYOND_MAJOR}.${BYOND_MINOR}/byond/bin/byondsetup if [ "$BUILD_TESTING" = true ]; then - tools/travis/dm.sh -DTRAVISBUILDING -M${DM_MAPFILE} tgstation.dme + tools/travis/dm.sh -DTRAVISBUILDING tgstation.dme else - tools/travis/dm.sh -DTRAVISBUILDING -DTRAVISTESTING -Mruntimestation tgstation.dme + tools/travis/dm.sh -DTRAVISBUILDING -DTRAVISTESTING -DALL_MAPS tgstation.dme fi; fi; diff --git a/tools/travis/dm.sh b/tools/travis/dm.sh index 8b3fb38011..924c4515ac 100755 --- a/tools/travis/dm.sh +++ b/tools/travis/dm.sh @@ -38,12 +38,6 @@ do sed -i '1s/^/#define '$arg'\n/' $dmepath.mdme continue fi - if [[ $var == -M* ]] - then - sed -i '1s/^/#define MAP_OVERRIDE\n/' $dmepath.mdme - sed -i 's!// BEGIN_INCLUDE!// BEGIN_INCLUDE\n#include "_maps\\'$arg'.dm"!' $dmepath.mdme - continue - fi done #windows